Browse Source

Changed avatar/siggy bans to locks

Rafał Pitoń 11 years ago
parent
commit
0a24076089

+ 6 - 6
misago/templates/misago/admin/users/edit.html

@@ -54,18 +54,18 @@ class="form-horizontal"
   <fieldset>
     <legend>{% trans "Avatar" %}</legend>
 
-    {% form_row form.is_avatar_banned label_class field_class %}
-    {% form_row form.avatar_ban_user_message label_class field_class %}
-    {% form_row form.avatar_ban_staff_message label_class field_class %}
+    {% form_row form.is_avatar_locked label_class field_class %}
+    {% form_row form.avatar_lock_user_message label_class field_class %}
+    {% form_row form.avatar_lock_staff_message label_class field_class %}
 
   </fieldset>
   <fieldset>
     <legend>{% trans "Signature" %}</legend>
 
     {% form_row form.signature label_class field_class %}
-    {% form_row form.is_signature_banned label_class field_class %}
-    {% form_row form.signature_ban_user_message label_class field_class %}
-    {% form_row form.signature_ban_staff_message label_class field_class %}
+    {% form_row form.is_signature_locked label_class field_class %}
+    {% form_row form.signature_lock_user_message label_class field_class %}
+    {% form_row form.signature_lock_staff_message label_class field_class %}
 
   </fieldset>
   {% endwith %}

+ 10 - 10
misago/templates/misago/modusers/avatar.html

@@ -31,9 +31,9 @@
         {% with label_class="col-md-3" input_class="col-md-9" %}
         <div class="form-body no-fieldsets">
 
-          {% form_row form.is_avatar_banned label_class input_class %}
-          {% form_row form.avatar_ban_user_message label_class input_class %}
-          {% form_row form.avatar_ban_staff_message label_class input_class %}
+          {% form_row form.is_avatar_locked label_class input_class %}
+          {% form_row form.avatar_lock_user_message label_class input_class %}
+          {% form_row form.avatar_lock_staff_message label_class input_class %}
 
         </div>
 
@@ -59,10 +59,10 @@
   </div>
   <div class="col-md-4">
 
-    {% if profile.is_avatar_banned %}
+    {% if profile.is_avatar_locked %}
     <p class="lead">
-      <span class="fa fa-ban"></span>
-      {% trans "Avatar locked" %}
+      <span class="fa fa-lock"></span>
+      {% trans "Avatar is locked" %}
     </p>
     {% else %}
     <p class="lead">
@@ -71,7 +71,7 @@
     </p>
     {% endif %}
 
-    {% if profile.avatar_ban_user_message %}
+    {% if profile.avatar_lock_user_message %}
     <div class="panel panel-default">
       <div class="panel-heading">
         <h3 class="panel-title">
@@ -80,13 +80,13 @@
       </div>
       <div class="panel-body">
 
-        {{ profile.avatar_ban_user_message|escape|urlize|linebreaksbr }}
+        {{ profile.avatar_lock_user_message|escape|urlize|linebreaksbr }}
 
       </div>
     </div>
     {% endif %}
 
-    {% if profile.avatar_ban_staff_message %}
+    {% if profile.avatar_lock_staff_message %}
     <div class="panel panel-default">
       <div class="panel-heading">
         <h3 class="panel-title">
@@ -95,7 +95,7 @@
       </div>
       <div class="panel-body">
 
-        {{ profile.avatar_ban_staff_message|escape|urlize|linebreaksbr }}
+        {{ profile.avatar_lock_staff_message|escape|urlize|linebreaksbr }}
 
       </div>
     </div>

+ 10 - 10
misago/templates/misago/modusers/signature.html

@@ -53,11 +53,11 @@
           {% editor_body editor %}
 
           <fieldset>
-            <legend>{% trans "Signature ban" %}</legend>
+            <legend>{% trans "Signature lock" %}</legend>
 
-              {% form_row form.is_signature_banned label_class input_class %}
-              {% form_row form.signature_ban_user_message label_class input_class %}
-              {% form_row form.signature_ban_staff_message label_class input_class %}
+              {% form_row form.is_signature_locked label_class input_class %}
+              {% form_row form.signature_lock_user_message label_class input_class %}
+              {% form_row form.signature_lock_staff_message label_class input_class %}
 
           <fieldset>
 
@@ -85,9 +85,9 @@
   </div>
   <div class="col-md-4">
 
-    {% if profile.is_signature_banned %}
+    {% if profile.is_signature_locked %}
     <p class="lead">
-      <span class="fa fa-ban"></span>
+      <span class="fa fa-lock"></span>
       {% trans "Signature is locked" %}
     </p>
     {% else %}
@@ -97,7 +97,7 @@
     </p>
     {% endif %}
 
-    {% if profile.signature_ban_user_message %}
+    {% if profile.signature_lock_user_message %}
     <div class="panel panel-default">
       <div class="panel-heading">
         <h3 class="panel-title">
@@ -106,13 +106,13 @@
       </div>
       <div class="panel-body">
 
-        {{ profile.signature_ban_user_message|escape|urlize|linebreaksbr }}
+        {{ profile.signature_lock_user_message|escape|urlize|linebreaksbr }}
 
       </div>
     </div>
     {% endif %}
 
-    {% if profile.signature_ban_staff_message %}
+    {% if profile.signature_lock_staff_message %}
     <div class="panel panel-default">
       <div class="panel-heading">
         <h3 class="panel-title">
@@ -121,7 +121,7 @@
       </div>
       <div class="panel-body">
 
-        {{ profile.signature_ban_staff_message|escape|urlize|linebreaksbr }}
+        {{ profile.signature_lock_staff_message|escape|urlize|linebreaksbr }}
 
       </div>
     </div>

+ 4 - 4
misago/templates/misago/usercp/change_avatar.html

@@ -21,13 +21,13 @@
           <img class="media-object img-rounded img-responsive avatar-preview" src="{{ user|avatar:avatar_size }}" width="{{ avatar_size }}" height="{{ avatar_size }}" alt="{% trans "Your current avatar" %}">
         </span>
         <div class="media-body usercp-avatar-options">
-          {% if user.is_avatar_banned %}
+          {% if user.is_avatar_locked %}
           <h4 class="media-heading">{% trans "Change avatar:" %}</h4>
           <div class="lead">
-            {% if user.avatar_ban_user_message %}
-            {{ user.avatar_ban_user_message|escape|urlize|linebreaks }}
+            {% if user.avatar_lock_user_message %}
+            {{ user.avatar_lock_user_message|escape|urlize|linebreaks }}
             {% else %}
-            <p>{% trans "You have been banned from changing your avatar." %}</p>
+            <p>{% trans "Your avatar is locked. You can't change it." %}</p>
             {% endif %}
           </div>
           {% else %}

+ 4 - 4
misago/templates/misago/usercp/edit_signature.html

@@ -31,13 +31,13 @@
     </div>
     {% endif %}
 
-    {% if user.is_signature_banned %}
+    {% if user.is_signature_locked %}
     <div class="form-body form-text">
       <div class="lead">
-        {% if user.signature_ban_user_message %}
-        {{ user.signature_ban_user_message|escape|urlize|linebreaks }}
+        {% if user.signature_lock_user_message %}
+        {{ user.signature_lock_user_message|escape|urlize|linebreaks }}
         {% else %}
-        <p>{% trans "You have been banned from editing your signature." %}</p>
+        <p>{% trans "Your signature is locked. You can't change it." %}</p>
         {% endif %}
       </div>
     </div>

+ 30 - 22
misago/users/forms/admin.py

@@ -71,19 +71,19 @@ class EditUserForm(UserBaseForm):
         widget=forms.PasswordInput,
         required=False)
 
-    is_avatar_banned = forms.YesNoSwitch(
-        label=_("Ban avatar changes"),
-        help_text=_("Setting this to yes will ban user from "
+    is_avatar_locked = forms.YesNoSwitch(
+        label=_("Lock avatar"),
+        help_text=_("Setting this to yes will stop user from "
                     "changing his/her avatar, and will reset "
                     "his/her avatar to procedurally generated one."))
-    avatar_ban_user_message = forms.CharField(
-        label=_("User ban message"),
+    avatar_lock_user_message = forms.CharField(
+        label=_("User message"),
         help_text=_("Optional message for user explaining "
                     "why he/she is banned form changing avatar."),
         widget=forms.Textarea(attrs={'rows': 3}),
         required=False)
-    avatar_ban_staff_message = forms.CharField(
-        label=_("Staff ban message"),
+    avatar_lock_staff_message = forms.CharField(
+        label=_("Staff message"),
         help_text=_("Optional message for forum team members explaining "
                     "why user is banned form changing avatar."),
         widget=forms.Textarea(attrs={'rows': 3}),
@@ -93,29 +93,37 @@ class EditUserForm(UserBaseForm):
         label=_("Signature contents"),
         widget=forms.Textarea(attrs={'rows': 3}),
         required=False)
-    is_signature_banned = forms.YesNoSwitch(
-        label=_("Ban signature changes"),
-        help_text=_("Setting this to yes will ban user from "
+    is_signature_locked = forms.YesNoSwitch(
+        label=_("Lock signature"),
+        help_text=_("Setting this to yes will stop user from "
                     "making changes to his/her signature."))
-    signature_ban_user_message = forms.CharField(
-        label=_("User ban message"),
-        help_text=_("Optional message for user explaining "
-                    "why he/she is banned form editing signature."),
+    signature_lock_user_message = forms.CharField(
+        label=_("User message"),
+        help_text=_("Optional message to user explaining "
+                    "why his/hers signature is locked."),
         widget=forms.Textarea(attrs={'rows': 3}),
         required=False)
-    signature_ban_staff_message = forms.CharField(
-        label=_("Staff ban message"),
-        help_text=_("Optional message for forum team members explaining "
-                    "why user is banned form editing signature."),
+    signature_lock_staff_message = forms.CharField(
+        label=_("Staff message"),
+        help_text=_("Optional message to team members explaining "
+                    "why user signature is locked."),
         widget=forms.Textarea(attrs={'rows': 3}),
         required=False)
 
     class Meta:
         model = get_user_model()
-        fields = ['username', 'email', 'title', 'is_avatar_banned',
-                  'avatar_ban_user_message', 'avatar_ban_staff_message',
-                  'signature', 'is_signature_banned',
-                  'signature_ban_user_message', 'signature_ban_staff_message']
+        fields = [
+            'username',
+            'email',
+            'title',
+            'is_avatar_locked',
+            'avatar_lock_user_message',
+            'avatar_lock_staff_message',
+            'signature',
+            'is_signature_locked',
+            'signature_lock_user_message',
+            'signature_lock_staff_message'
+        ]
 
     def clean_signature(self):
         data = self.cleaned_data['signature']

+ 29 - 22
misago/users/forms/modusers.py

@@ -52,19 +52,19 @@ class BanForm(BanUsersForm):
 
 
 class ModerateAvatarForm(forms.ModelForm):
-    is_avatar_banned = forms.YesNoSwitch(
-        label=_("Ban avatar changes"),
-        help_text=_("Setting this to yes will ban user from "
+    is_avatar_locked = forms.YesNoSwitch(
+        label=_("Lock avatar"),
+        help_text=_("Setting this to yes will stop user from "
                     "changing his/her avatar, and will reset "
                     "his/her avatar to procedurally generated one."))
-    avatar_ban_user_message = forms.CharField(
-        label=_("User ban message"),
+    avatar_lock_user_message = forms.CharField(
+        label=_("User message"),
         help_text=_("Optional message for user explaining "
                     "why he/she is banned form changing avatar."),
         widget=forms.Textarea(attrs={'rows': 3}),
         required=False)
-    avatar_ban_staff_message = forms.CharField(
-        label=_("Staff ban message"),
+    avatar_lock_staff_message = forms.CharField(
+        label=_("Staff message"),
         help_text=_("Optional message for forum team members explaining "
                     "why user is banned form changing avatar."),
         widget=forms.Textarea(attrs={'rows': 3}),
@@ -72,8 +72,11 @@ class ModerateAvatarForm(forms.ModelForm):
 
     class Meta:
         model = get_user_model()
-        fields = ['is_avatar_banned', 'avatar_ban_user_message',
-                  'avatar_ban_staff_message']
+        fields = [
+            'is_avatar_locked',
+            'avatar_lock_user_message',
+            'avatar_lock_staff_message',
+        ]
 
 
 class ModerateSignatureForm(forms.ModelForm):
@@ -81,27 +84,31 @@ class ModerateSignatureForm(forms.ModelForm):
         label=_("Signature contents"),
         widget=forms.Textarea(attrs={'rows': 3}),
         required=False)
-    is_signature_banned = forms.YesNoSwitch(
-        label=_("Ban signature changes"),
-        help_text=_("Setting this to yes will ban user from "
+    is_signature_locked = forms.YesNoSwitch(
+        label=_("Lock signature"),
+        help_text=_("Setting this to yes will stop user from "
                     "making changes to his/her signature."))
-    signature_ban_user_message = forms.CharField(
-        label=_("User ban message"),
-        help_text=_("Optional message for user explaining "
-                    "why he/she is banned form editing signature."),
+    signature_lock_user_message = forms.CharField(
+        label=_("User message"),
+        help_text=_("Optional message to user explaining "
+                    "why his/hers signature is locked."),
         widget=forms.Textarea(attrs={'rows': 3}),
         required=False)
-    signature_ban_staff_message = forms.CharField(
-        label=_("Staff ban message"),
-        help_text=_("Optional message for forum team members explaining "
-                    "why user is banned form editing signature."),
+    signature_lock_staff_message = forms.CharField(
+        label=_("Staff message"),
+        help_text=_("Optional message to team members explaining "
+                    "why user signature is locked."),
         widget=forms.Textarea(attrs={'rows': 3}),
         required=False)
 
     class Meta:
         model = get_user_model()
-        fields = ['signature', 'is_signature_banned',
-                  'signature_ban_user_message', 'signature_ban_staff_message']
+        fields = [
+            'signature',
+            'is_signature_locked',
+            'signature_lock_user_message',
+            'signature_lock_staff_message'
+        ]
 
     def clean_signature(self):
         data = self.cleaned_data['signature']

+ 6 - 6
misago/users/migrations/0001_initial.py

@@ -40,16 +40,16 @@ class Migration(migrations.Migration):
                 ('groups', models.ManyToManyField(to='auth.Group', verbose_name='groups', blank=True)),
                 ('roles', models.ManyToManyField(to='misago_acl.Role')),
                 ('user_permissions', models.ManyToManyField(to='auth.Permission', verbose_name='user permissions', blank=True)),
-                ('is_avatar_banned', models.BooleanField(default=False)),
+                ('is_avatar_locked', models.BooleanField(default=False)),
                 ('avatar_crop', models.CharField(max_length=255, null=True, blank=True)),
-                ('avatar_ban_user_message', models.TextField(null=True, blank=True)),
-                ('avatar_ban_staff_message', models.TextField(null=True, blank=True)),
-                ('is_signature_banned', models.BooleanField(default=False)),
+                ('avatar_lock_user_message', models.TextField(null=True, blank=True)),
+                ('avatar_lock_staff_message', models.TextField(null=True, blank=True)),
+                ('is_signature_locked', models.BooleanField(default=False)),
                 ('signature', models.TextField(null=True, blank=True)),
                 ('signature_parsed', models.TextField(null=True, blank=True)),
                 ('signature_checksum', models.CharField(max_length=64, null=True, blank=True)),
-                ('signature_ban_user_message', models.TextField(null=True, blank=True)),
-                ('signature_ban_staff_message', models.TextField(null=True, blank=True)),
+                ('signature_lock_user_message', models.TextField(null=True, blank=True)),
+                ('signature_lock_staff_message', models.TextField(null=True, blank=True)),
                 ('warning_level', models.PositiveIntegerField(default=0)),
                 ('warning_level_update_on', models.DateTimeField(null=True, blank=True)),
                 ('following', models.PositiveIntegerField(default=0)),

+ 6 - 6
misago/users/models/user.py

@@ -175,17 +175,17 @@ class User(AbstractBaseUser, PermissionsMixin):
     roles = models.ManyToManyField('misago_acl.Role')
     acl_key = models.CharField(max_length=12, null=True, blank=True)
 
-    is_avatar_banned = models.BooleanField(default=False)
+    is_avatar_locked = models.BooleanField(default=False)
     avatar_crop = models.CharField(max_length=255, null=True, blank=True)
-    avatar_ban_user_message = models.TextField(null=True, blank=True)
-    avatar_ban_staff_message = models.TextField(null=True, blank=True)
+    avatar_lock_user_message = models.TextField(null=True, blank=True)
+    avatar_lock_staff_message = models.TextField(null=True, blank=True)
 
-    is_signature_banned = models.BooleanField(default=False)
+    is_signature_locked = models.BooleanField(default=False)
     signature = models.TextField(null=True, blank=True)
     signature_parsed = models.TextField(null=True, blank=True)
     signature_checksum = models.CharField(max_length=64, null=True, blank=True)
-    signature_ban_user_message = models.TextField(null=True, blank=True)
-    signature_ban_staff_message = models.TextField(null=True, blank=True)
+    signature_lock_user_message = models.TextField(null=True, blank=True)
+    signature_lock_staff_message = models.TextField(null=True, blank=True)
 
     warning_level = models.PositiveIntegerField(default=0)
     warning_level_update_on = models.DateTimeField(null=True, blank=True)

+ 12 - 12
misago/users/tests/test_moderation_views.py

@@ -83,19 +83,19 @@ class ModerateAvatarTests(UserModerationTestCase):
         response = self.client.post(
             reverse('misago:moderate_avatar', kwargs=self.link_kwargs),
             data={
-                'is_avatar_banned': '1',
-                'avatar_ban_user_message': 'Test us3r message',
-                'avatar_ban_staff_message': 'Test st4ff message'
+                'is_avatar_locked': '1',
+                'avatar_lock_user_message': 'Test us3r message',
+                'avatar_lock_staff_message': 'Test st4ff message'
             })
         self.assertEqual(response.status_code, 302)
 
         User = get_user_model()
         updated_user = User.objects.get(id=self.test_user.pk)
 
-        self.assertTrue(updated_user.is_avatar_banned)
-        self.assertEqual(updated_user.avatar_ban_user_message,
+        self.assertTrue(updated_user.is_avatar_locked)
+        self.assertEqual(updated_user.avatar_lock_user_message,
                          'Test us3r message')
-        self.assertEqual(updated_user.avatar_ban_staff_message,
+        self.assertEqual(updated_user.avatar_lock_staff_message,
                          'Test st4ff message')
 
         response = self.client.get(
@@ -136,20 +136,20 @@ class ModerateSignatureTests(UserModerationTestCase):
             reverse('misago:moderate_signature', kwargs=self.link_kwargs),
             data={
                 'signature': 'kittens!',
-                'is_signature_banned': '1',
-                'signature_ban_user_message': 'Test us3r message',
-                'signature_ban_staff_message': 'Test st4ff message'
+                'is_signature_locked': '1',
+                'signature_lock_user_message': 'Test us3r message',
+                'signature_lock_staff_message': 'Test st4ff message'
             })
         self.assertEqual(response.status_code, 302)
 
         User = get_user_model()
         updated_user = User.objects.get(id=self.test_user.pk)
 
-        self.assertTrue(updated_user.is_signature_banned)
+        self.assertTrue(updated_user.is_signature_locked)
         self.assertEqual(updated_user.signature_parsed, '<p>kittens!</p>')
-        self.assertEqual(updated_user.signature_ban_user_message,
+        self.assertEqual(updated_user.signature_lock_user_message,
                          'Test us3r message')
-        self.assertEqual(updated_user.signature_ban_staff_message,
+        self.assertEqual(updated_user.signature_lock_staff_message,
                          'Test st4ff message')
 
         response = self.client.get(

+ 3 - 3
misago/users/tests/test_useradmin_views.py

@@ -181,9 +181,9 @@ class UserAdminViewsTests(AdminTestCase):
                 'new_password': 'pass123',
                 'staff_level': '0',
                 'signature': 'Hello world!',
-                'is_signature_banned': '1',
-                'signature_ban_staff_message': 'Staff message',
-                'signature_ban_user_message': 'User message',
+                'is_signature_locked': '1',
+                'signature_lock_staff_message': 'Staff message',
+                'signature_lock_user_message': 'User message',
             })
         self.assertEqual(response.status_code, 302)
 

+ 9 - 7
misago/users/tests/test_usercp_views.py

@@ -51,8 +51,10 @@ class ChangeAvatarTests(AdminTestCase):
         response = self.client.get(self.view_link)
         self.assertEqual(response.status_code, 200)
 
-        self.test_admin.is_avatar_banned = True
-        self.test_admin.avatar_ban_user_message = 'Your avatar is banned.'
+    def test_avatar_locked(self):
+        """usercp locked change avatar view returns 200"""
+        self.test_admin.is_avatar_locked = True
+        self.test_admin.avatar_lock_user_message = 'Your avatar is banned.'
         self.test_admin.save()
 
         response = self.client.get(self.view_link)
@@ -199,16 +201,16 @@ class EditSignatureTests(AdminTestCase):
         response = self.client.get(self.view_link)
         self.assertEqual(response.status_code, 404)
 
-    def test_signature_banned(self):
-        """GET to usercp change options view returns 200"""
+    def test_signature_locked(self):
+        """locked edit signature view returns 200"""
         override_acl(self.test_admin, {
             'misago.users.permissions.account': {
                 'can_have_signature': 1,
             }
         })
 
-        self.test_admin.is_signature_banned = True
-        self.test_admin.signature_ban_user_message = 'Your siggy is banned.'
+        self.test_admin.is_signature_locked = True
+        self.test_admin.signature_lock_user_message = 'Your siggy is banned.'
         self.test_admin.save()
 
         response = self.client.get(self.view_link)
@@ -223,7 +225,7 @@ class EditSignatureTests(AdminTestCase):
             }
         })
 
-        self.test_admin.is_signature_banned = False
+        self.test_admin.is_signature_locked = False
         self.test_admin.save()
 
         response = self.client.post(self.view_link,

+ 4 - 2
misago/users/views/admin/users.py

@@ -203,6 +203,7 @@ class EditUser(UserAdmin, generic.ModelFormView):
 
     def real_dispatch(self, request, target):
         target.old_username = target.username
+        target.old_is_avatar_locked = target.is_avatar_locked
         return super(EditUser, self).real_dispatch(request, target)
 
     def handle_form(self, form, request, target):
@@ -224,8 +225,9 @@ class EditUser(UserAdmin, generic.ModelFormView):
             if target.pk == request.user.pk:
                 start_admin_session(request, target)
 
-        if form.cleaned_data.get('is_avatar_banned'):
-            set_dynamic_avatar(target)
+        if form.cleaned_data.get('is_avatar_locked'):
+            if not target.old_is_avatar_locked:
+                set_dynamic_avatar(target)
 
         if 'staff_level' in form.cleaned_data:
             target.staff_level = form.cleaned_data['staff_level']

+ 8 - 8
misago/users/views/moderation.py

@@ -71,19 +71,19 @@ def rename(request, user):
 
 @user_moderation_view(allow_moderate_avatar)
 def moderate_avatar(request, user):
-    avatar_banned = user.is_avatar_banned
+    avatar_locked = user.is_avatar_locked
     form = ModerateAvatarForm(instance=user)
 
     if request.method == 'POST':
         form = ModerateAvatarForm(request.POST, instance=user)
         if form.is_valid():
-            if not avatar_banned and form.cleaned_data['is_avatar_banned']:
+            if not avatar_locked and form.cleaned_data['is_avatar_locked']:
                 set_dynamic_avatar(user)
 
             user.save(update_fields=(
-                'is_avatar_banned',
-                'avatar_ban_user_message',
-                'avatar_ban_staff_message'
+                'is_avatar_locked',
+                'avatar_lock_user_message',
+                'avatar_lock_staff_message'
             ))
 
             message = _("%(username)s's avatar has been moderated.")
@@ -110,9 +110,9 @@ def moderate_signature(request, user):
                 'signature',
                 'signature_parsed',
                 'signature_checksum',
-                'is_signature_banned',
-                'signature_ban_user_message',
-                'signature_ban_staff_message'
+                'is_signature_locked',
+                'signature_lock_user_message',
+                'signature_lock_staff_message'
             ))
 
             message = _("%(username)s's signature has been moderated.")

+ 9 - 9
misago/users/views/usercp.py

@@ -60,7 +60,7 @@ def change_forum_options(request):
 def change_avatar(request):
     avatar_size = max(settings.MISAGO_AVATARS_SIZES)
 
-    if not request.user.is_avatar_banned and request.method == 'POST':
+    if not request.user.is_avatar_locked and request.method == 'POST':
         if 'dl-gravatar' in request.POST and settings.allow_custom_avatars:
             try:
                 avatars.gravatar.set_avatar(request.user)
@@ -86,10 +86,10 @@ def change_avatar(request):
     })
 
 
-def avatar_not_banned(f):
+def avatar_not_locked(f):
     def decorator(request, *args, **kwargs):
-        if request.user.is_avatar_banned:
-            message = _("You don't have permission to change your avatar.")
+        if request.user.is_avatar_locked:
+            message = _("Your avatar is locked and can't be changed.")
             messages.info(request, message)
             return redirect('misago:usercp_change_avatar')
         else:
@@ -98,7 +98,7 @@ def avatar_not_banned(f):
 
 
 @deny_guests
-@avatar_not_banned
+@avatar_not_locked
 def upload_avatar(request):
     if not settings.allow_custom_avatars:
         messages.info(request, _("Avatar uploads are currently disabled."))
@@ -115,7 +115,7 @@ def upload_avatar(request):
 @ajax_only
 @deny_guests
 @require_POST
-@avatar_not_banned
+@avatar_not_locked
 def upload_avatar_handler(request):
     if not settings.allow_custom_avatars:
         raise AjaxError(_("Avatar uploads are currently disabled."))
@@ -133,7 +133,7 @@ def upload_avatar_handler(request):
 
 
 @deny_guests
-@avatar_not_banned
+@avatar_not_locked
 def crop_avatar(request, use_tmp_avatar):
     if use_tmp_avatar:
         if not avatars.uploaded.has_temporary_avatar(request.user):
@@ -192,7 +192,7 @@ def crop_avatar(request, use_tmp_avatar):
 
 
 @deny_guests
-@avatar_not_banned
+@avatar_not_locked
 def avatar_galleries(request):
     if not avatars.gallery.galleries_exist():
         messages.info(request, _("No avatars galleries exist."))
@@ -219,7 +219,7 @@ def edit_signature(request):
         raise Http404()
 
     form = EditSignatureForm(instance=request.user)
-    if not request.user.is_signature_banned and request.method == 'POST':
+    if not request.user.is_signature_locked and request.method == 'POST':
         form = EditSignatureForm(request.POST, instance=request.user)
         if form.is_valid():
             set_user_signature(request.user, form.cleaned_data['signature'])