from django.utils.translation import get_language from .. import __version__ from ..hooks import context_processors as context_processors_hooks from .momentjs import get_locale_url def misago_version(request): return {"MISAGO_VERSION": __version__} def request_path(request): return {"request_path": request.path} def current_link(request): if not request.resolver_match or request.frontend_context.get("CURRENT_LINK"): return {} url_name = request.resolver_match.url_name if request.resolver_match.namespaces: namespaces = ":".join(request.resolver_match.namespaces) link_name = "%s:%s" % (namespaces, url_name) else: link_name = url_name request.frontend_context.update({"CURRENT_LINK": link_name}) return {} def momentjs_locale(request): return {"MOMENTJS_LOCALE_URL": get_locale_url(get_language())} def frontend_context(request): if request.include_frontend_context: return {"frontend_context": request.frontend_context} return {} def hooks(request): context = {} for hook in context_processors_hooks: context.update(hook(request)) return context