]> git.openstreetmap.org Git - osqa.git/blobdiff - forum/views/users.py
OSQA-617, better Unicode support for the User Profile and User Links. Using the Djang...
[osqa.git] / forum / views / users.py
index 1d12b4eb186053715998691d760d65ef9f9cbba7..8766851c31faa021833881ebd3f2f463ff7be8da 100644 (file)
@@ -11,11 +11,12 @@ from forum.http_responses import HttpResponseUnauthorized
 from django.utils.translation import ugettext as _\r
 from django.utils.http import urlquote_plus\r
 from django.utils.html import strip_tags\r
 from django.utils.translation import ugettext as _\r
 from django.utils.http import urlquote_plus\r
 from django.utils.html import strip_tags\r
+from django.utils.encoding import smart_unicode\r
 from django.utils import simplejson\r
 from django.core.urlresolvers import reverse, NoReverseMatch\r
 from forum.forms import *\r
 from forum.utils.html import sanitize_html\r
 from django.utils import simplejson\r
 from django.core.urlresolvers import reverse, NoReverseMatch\r
 from forum.forms import *\r
 from forum.utils.html import sanitize_html\r
-from forum.modules import decorate\r
+from forum.modules import decorate, ReturnImediatelyException\r
 from datetime import datetime, date\r
 from forum.actions import EditProfileAction, FavoriteAction, BonusRepAction, SuspendAction\r
 from forum.modules import ui\r
 from datetime import datetime, date\r
 from forum.actions import EditProfileAction, FavoriteAction, BonusRepAction, SuspendAction\r
 from forum.modules import ui\r
@@ -70,7 +71,7 @@ def users(request):
     })\r
 \r
 \r
     })\r
 \r
 \r
-@decorators.render('users/online_users.html', 'online_users', _('Online Users'), weight=200)\r
+@decorators.render('users/online_users.html', 'online_users', _('Online Users'), weight=200, tabbed=False)\r
 def online_users(request):\r
     suser = request.REQUEST.get('q', "")\r
 \r
 def online_users(request):\r
     suser = request.REQUEST.get('q', "")\r
 \r
@@ -259,17 +260,17 @@ def user_view(template, tab_name, tab_title, tab_description, private=False, tab
         def params(request, id, slug=None):\r
             user = get_object_or_404(User, id=id)\r
             if private and not (user == request.user or request.user.is_superuser):\r
         def params(request, id, slug=None):\r
             user = get_object_or_404(User, id=id)\r
             if private and not (user == request.user or request.user.is_superuser):\r
-                return HttpResponseUnauthorized(request)\r
+                raise ReturnImediatelyException(HttpResponseUnauthorized(request))\r
 \r
             if render_to and (not render_to(user)):\r
 \r
             if render_to and (not render_to(user)):\r
-                return HttpResponseRedirect(user.get_profile_url())\r
+                raise ReturnImediatelyException(HttpResponseRedirect(user.get_profile_url()))\r
 \r
             return [request, user], {}\r
 \r
         decorated = decorate.params.withfn(params)(fn)\r
 \r
         def result(context, request, user):\r
 \r
             return [request, user], {}\r
 \r
         decorated = decorate.params.withfn(params)(fn)\r
 \r
         def result(context, request, user):\r
-            rev_page_title = user.username + " - " + tab_description\r
+            rev_page_title = smart_unicode(user.username) + " - " + tab_description\r
 \r
             context.update({\r
                 "tab": "users",\r
 \r
             context.update({\r
                 "tab": "users",\r
@@ -338,7 +339,7 @@ def user_recent(request, user):
     return {"view_user" : user, "activities" : activities}\r
 \r
 \r
     return {"view_user" : user, "activities" : activities}\r
 \r
 \r
-@user_view('users/reputation.html', 'reputation', _('karma history'), _('graph of user karma'))\r
+@user_view('users/reputation.html', 'reputation', _('reputation history'), _('graph of user karma'))\r
 def user_reputation(request, user):\r
     rep = list(user.reputes.order_by('date'))\r
     values = [r.value for r in rep]\r
 def user_reputation(request, user):\r
     rep = list(user.reputes.order_by('date'))\r
     values = [r.value for r in rep]\r
@@ -368,7 +369,7 @@ def user_favorites(request, user):
 \r
 @user_view('users/subscriptions.html', 'subscriptions', _('subscription'), _('subscriptions'), True, tabbed=False)\r
 def user_subscriptions(request, user):\r
 \r
 @user_view('users/subscriptions.html', 'subscriptions', _('subscription'), _('subscriptions'), True, tabbed=False)\r
 def user_subscriptions(request, user):\r
-    enabled = user.subscription_settings.enable_notifications\r
+    enabled = True\r
 \r
     tab = request.GET.get('tab', "settings")\r
 \r
 \r
     tab = request.GET.get('tab', "settings")\r
 \r
@@ -382,14 +383,6 @@ def user_subscriptions(request, user):
                 form.save()\r
                 message = _('New subscription settings are now saved')\r
 \r
                 form.save()\r
                 message = _('New subscription settings are now saved')\r
 \r
-                if 'notswitch' in request.POST:\r
-                    enabled = not enabled\r
-\r
-                    if enabled:\r
-                        message = _('Notifications are now enabled')\r
-                    else:\r
-                        message = _('Notifications are now disabled')\r
-\r
                 user.subscription_settings.enable_notifications = enabled\r
                 user.subscription_settings.save()\r
 \r
                 user.subscription_settings.enable_notifications = enabled\r
                 user.subscription_settings.save()\r
 \r