context_processors.py 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. from django.contrib.staticfiles.templatetags.staticfiles import static
  2. from django.urls import reverse
  3. from django.utils.translation import get_language
  4. from .gateway import settings as misago_settings # noqa
  5. from .gateway import db_settings
  6. LOGO_URL = static(misago_settings.MISAGO_LOGO)
  7. BLANK_AVATAR_URL = static(misago_settings.MISAGO_BLANK_AVATAR)
  8. STYLE = misago_settings._MISAGO_STYLE_DEFAULT.copy()
  9. if misago_settings.MISAGO_STYLE:
  10. STYLE.update(MISAGO_STYLE)
  11. def settings(request):
  12. return {
  13. 'MISAGO_STYLE': STYLE,
  14. 'DEBUG': misago_settings.DEBUG,
  15. 'LANGUAGE_CODE_SHORT': get_language()[:2],
  16. 'misago_settings': db_settings,
  17. 'LOGO_URL': LOGO_URL,
  18. 'BLANK_AVATAR_URL': BLANK_AVATAR_URL,
  19. 'THREADS_ON_INDEX': misago_settings.MISAGO_THREADS_ON_INDEX,
  20. 'LOGIN_REDIRECT_URL': misago_settings.LOGIN_REDIRECT_URL,
  21. 'LOGIN_URL': misago_settings.LOGIN_URL,
  22. 'LOGOUT_URL': misago_settings.LOGOUT_URL,
  23. }
  24. def preload_settings_json(request):
  25. request.frontend_context['conf'].update(db_settings.get_public_settings())
  26. request.frontend_context['conf'].update({
  27. 'csrf_cookie_name': misago_settings.CSRF_COOKIE_NAME,
  28. 'threads_on_index': misago_settings.MISAGO_THREADS_ON_INDEX,
  29. 'style': STYLE,
  30. })
  31. request.frontend_context['url'].update({
  32. 'index': reverse('misago:index'),
  33. 'blank_avatar': BLANK_AVATAR_URL,
  34. 'logo': LOGO_URL,
  35. 'login_redirect': reverse(misago_settings.LOGIN_REDIRECT_URL),
  36. 'login': reverse(misago_settings.LOGIN_URL),
  37. 'logout': reverse(misago_settings.LOGOUT_URL),
  38. 'static': misago_settings.STATIC_URL,
  39. })
  40. return {}