From 3e1a43e100bf464ed31d1447cbbcdf1839a1db2e Mon Sep 17 00:00:00 2001 From: Aurélien Bompard Date: Thu, 30 May 2013 10:32:09 +0200 Subject: Timezones can be specified in the user's profile --- hyperkitty/middleware.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'hyperkitty/middleware.py') 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) -- cgit