]> git.openstreetmap.org Git - osqa.git/blobdiff - forum/registry.py
Remove footer link to squatted domain
[osqa.git] / forum / registry.py
index 43f11a7ac613e84e4c36a74b122579adfba966f2..7fb8292fd882bb35dc99b5920f9f5d99e8e69164 100644 (file)
@@ -1,8 +1,10 @@
 from forum.modules import ui, get_modules_script
 from django.utils.translation import ugettext as _
+from django.utils.encoding import smart_unicode
 from django.core.urlresolvers import reverse
 from django.template.defaultfilters import slugify
 
+from forum.models import User
 from forum.templatetags.extra_tags import get_score_badge
 from forum.utils.html import cleanup_urls
 from forum import settings
@@ -23,13 +25,18 @@ ui.register(ui.HEADER_LINKS,
             ui.Link(_('about'), ui.Url('about'), weight=300, name='ABOUT'),
 
             ui.Link(
-                    text=lambda u, c: u.is_authenticated() and _('logout') or _('login'),
-                    url=lambda u, c: u.is_authenticated() and reverse('logout') or reverse('auth_signin'),
-                    weight=200, name='LOGIN/OUT'),
-
+                    visibility=ui.Visibility.ANONYMOUS,
+                    text=_('login'),
+                    url=lambda u, c: reverse('auth_signin'),
+                    weight=200, name='LOGIN'),
+            ui.Link(
+                    visibility=ui.Visibility.AUTHENTICATED,
+                    text=_('logout'),
+                    url=lambda u, c: reverse('logout'),
+                    weight=200, name='LOGOUT'),
             ui.Link(
                     visibility=ui.Visibility.AUTHENTICATED,
-                    text=lambda u, c: u.username,
+                    text=lambda u, c: smart_unicode(u.username),
                     url=lambda u, c: u.get_profile_url(),
                     post_code=lambda u, c: get_score_badge(u),
                     weight=100, name='ACCOUNT'),
@@ -69,7 +76,10 @@ class SuperUserSwitchMenuItem(ui.UserMenuItem):
 ui.register(ui.USER_MENU,
             ui.UserMenuItem(
                 label=_("edit profile"),
-                url=lambda u, c: reverse('edit_user', kwargs={'id': c['user'].id}),
+                url=lambda u, c: reverse('edit_user', kwargs={
+                    'id': c['user'].id,
+                    'slug' : slugify(c['user'].username)
+                }),
                 span_attrs={'class': 'user-edit'},
                 weight=0,
                 name='EDIT_PROFILE'
@@ -83,7 +93,7 @@ ui.register(ui.USER_MENU,
             ),
             ui.UserMenuItem(
                 label=_("email notification settings"),
-                url=lambda u, c: reverse('user_subscriptions', kwargs={'id': c['user'].id, 'slug': slugify(c['user'].username)}),
+                url=lambda u, c: User.objects.get(id=int(c['user'].id)).get_user_subscriptions_url(),
                 span_attrs={'class': 'user-subscriptions'},
                 weight=200,
                 name='EMAIL_SETTINGS'