context_processors.py 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  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 misago.users.social.utils import get_enabled_social_auth_sites_list
  5. from .gateway import settings as misago_settings # noqa
  6. from .gateway import db_settings
  7. LOGO_URL = static(misago_settings.MISAGO_LOGO)
  8. BLANK_AVATAR_URL = static(misago_settings.MISAGO_BLANK_AVATAR)
  9. STYLE = misago_settings._MISAGO_STYLE_DEFAULT.copy()
  10. if misago_settings.MISAGO_STYLE:
  11. STYLE.update(misago_settings.MISAGO_STYLE)
  12. def settings(request):
  13. return {
  14. 'MISAGO_STYLE': STYLE,
  15. 'DEBUG': misago_settings.DEBUG,
  16. 'LANGUAGE_CODE_SHORT': get_language()[:2],
  17. 'misago_settings': db_settings,
  18. 'LOGO_URL': LOGO_URL,
  19. 'BLANK_AVATAR_URL': BLANK_AVATAR_URL,
  20. 'THREADS_ON_INDEX': misago_settings.MISAGO_THREADS_ON_INDEX,
  21. 'LOGIN_REDIRECT_URL': misago_settings.LOGIN_REDIRECT_URL,
  22. 'LOGIN_URL': misago_settings.LOGIN_URL,
  23. 'LOGOUT_URL': misago_settings.LOGOUT_URL,
  24. }
  25. def preload_settings_json(request):
  26. request.frontend_context['conf'].update(db_settings.get_public_settings())
  27. request.frontend_context['conf'].update({
  28. 'csrf_cookie_name': misago_settings.CSRF_COOKIE_NAME,
  29. 'threads_on_index': misago_settings.MISAGO_THREADS_ON_INDEX,
  30. 'enable_delete_own_account': misago_settings.MISAGO_ENABLE_DELETE_OWN_ACCOUNT,
  31. 'social_auth_sites': get_enabled_social_auth_sites_list(),
  32. 'style': STYLE,
  33. })
  34. request.frontend_context['url'].update({
  35. 'index': reverse('misago:index'),
  36. 'blank_avatar': BLANK_AVATAR_URL,
  37. 'logo': LOGO_URL,
  38. 'login_redirect': reverse(misago_settings.LOGIN_REDIRECT_URL),
  39. 'login': reverse(misago_settings.LOGIN_URL),
  40. 'logout': reverse(misago_settings.LOGOUT_URL),
  41. 'static': misago_settings.STATIC_URL,
  42. })
  43. return {}