views.py 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. from django.conf import settings
  2. from django.http import HttpResponse, Http404
  3. from django.shortcuts import redirect, render
  4. from django.utils import timezone
  5. from django.utils.translation import get_language
  6. from django.views import i18n
  7. from django.views.decorators.http import last_modified
  8. from django.views.decorators.cache import cache_page, never_cache
  9. from misago.forums.lists import get_forums_list
  10. from misago.users.online.ranks import get_ranks_online
  11. from misago.core import momentjs
  12. def forum_index(request):
  13. return render(request, 'misago/index.html', {
  14. 'categories': get_forums_list(request.user),
  15. 'ranks_online': get_ranks_online(request.user),
  16. })
  17. def home_redirect(*args, **kwargs):
  18. return redirect('misago:index')
  19. @cache_page(86400, key_prefix='misagojsi18n')
  20. @last_modified(lambda req, **kw: timezone.now())
  21. def javascript_catalog(request):
  22. return i18n.javascript_catalog(request, 'djangojs', None)
  23. @cache_page(86400, key_prefix='momentjsi18n')
  24. @last_modified(lambda req, **kw: timezone.now())
  25. def momentjs_catalog(request):
  26. locale_path = momentjs.get_locale_path(get_language())
  27. if locale_path:
  28. with open (locale_path, "r") as locale_file:
  29. locale = locale_file.read()
  30. else:
  31. locale = "";
  32. return HttpResponse(locale,
  33. content_type='application/javascript; charset=utf-8')