From: jordan Date: Sat, 7 Apr 2012 14:47:53 +0000 (+0000) Subject: make user decorated name decoratable through OSQA modules, allow superusers to edit... X-Git-Tag: live~72 X-Git-Url: https://git.openstreetmap.org./osqa.git/commitdiff_plain/e28770970915d09e68ad5fc2d83d6ca007faf2ae make user decorated name decoratable through OSQA modules, allow superusers to edit screen name git-svn-id: http://svn.osqa.net/svnroot/osqa/trunk@1245 0cfe37f9-358a-4d5e-be75-b63607b5c754 --- diff --git a/forum/forms/qanda.py b/forum/forms/qanda.py index e356f07..3679602 100644 --- a/forum/forms/qanda.py +++ b/forum/forms/qanda.py @@ -7,7 +7,7 @@ from django.utils.translation import ugettext as _ from django.utils.encoding import smart_unicode from general import NextUrlField, UserNameField -from forum import settings +from forum import settings, REQUEST_HOLDER from forum.modules import call_all_handlers @@ -307,7 +307,7 @@ class EditUserForm(forms.Form): def __init__(self, user, *args, **kwargs): super(EditUserForm, self).__init__(*args, **kwargs) - if settings.EDITABLE_SCREEN_NAME: + if settings.EDITABLE_SCREEN_NAME or (REQUEST_HOLDER.request.user.is_authenticated() and REQUEST_HOLDER.request.user.is_superuser): self.fields['username'] = UserNameField(label=_('Screen name')) self.fields['username'].initial = user.username self.fields['username'].user_instance = user diff --git a/forum/models/user.py b/forum/models/user.py index 695501f..cf47c66 100644 --- a/forum/models/user.py +++ b/forum/models/user.py @@ -165,8 +165,8 @@ class User(BaseModel, DjangoUser): #todo: temporary thing, for now lets just assume that the site owner will always be the first user of the application return self.id == 1 - @property - def decorated_name(self): + + def _decorated_name(self): username = smart_unicode(self.username) if len(username) > TRUNCATE_USERNAMES_LONGER_THAN and TRUNCATE_LONG_USERNAMES: @@ -181,6 +181,10 @@ class User(BaseModel, DjangoUser): return username + @property + def decorated_name(self): + return self._decorated_name() + @property def last_activity(self): try: