Use key_name instead of link_id
Some entities do not have a link_id, but all entities are guaranteed
to have a key_name (or an id).
"""
Code used in a couple of places to work with the current thread's environment.
Current users include i18n and request prefix handling.
"""
try:
import threading
currentThread = threading.currentThread
except ImportError:
def currentThread():
return "no threading"