summaryrefslogtreecommitdiffstats
path: root/hyperkitty/middleware.py
diff options
context:
space:
mode:
authorAurélien Bompard <aurelien@bompard.org>2013-05-30 10:32:09 +0200
committerAurélien Bompard <aurelien@bompard.org>2013-05-30 10:40:48 +0200
commit3e1a43e100bf464ed31d1447cbbcdf1839a1db2e (patch)
treef8a994e4ea1352842f5e99b86062484311a03d27 /hyperkitty/middleware.py
parent460cc18cc7803dd857754bff0462092ca1fe7f39 (diff)
downloadhyperkitty-3e1a43e100bf464ed31d1447cbbcdf1839a1db2e.tar.gz
hyperkitty-3e1a43e100bf464ed31d1447cbbcdf1839a1db2e.tar.xz
hyperkitty-3e1a43e100bf464ed31d1447cbbcdf1839a1db2e.zip
Timezones can be specified in the user's profile
Diffstat (limited to 'hyperkitty/middleware.py')
-rw-r--r--hyperkitty/middleware.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/hyperkitty/middleware.py b/hyperkitty/middleware.py
index a52aba2..e026fb1 100644
--- a/hyperkitty/middleware.py
+++ b/hyperkitty/middleware.py
@@ -69,3 +69,23 @@ class SSLRedirect(object):
"""Django can't perform a SSL redirect while maintaining POST data.
Please structure your views so that redirects only occur during GETs."""
return HttpResponsePermanentRedirect(newurl)
+
+
+
+# https://docs.djangoproject.com/en/dev/topics/i18n/timezones/
+
+from django.utils import timezone
+from django.core.exceptions import ObjectDoesNotExist
+from hyperkitty.models import UserProfile
+
+class TimezoneMiddleware(object):
+
+ def process_request(self, request):
+ if not request.user.is_authenticated():
+ return
+ try:
+ user_profile = request.user.get_profile()
+ except ObjectDoesNotExist:
+ return
+ if user_profile.timezone:
+ timezone.activate(user_profile.timezone)