123456789101112131415161718192021222324252627282930 |
- from django import forms
- from django.core.exceptions import ValidationError
- from django.utils.translation import ugettext_lazy as _
- from misago.forms import Form
- class UsernameChangeForm(Form):
- username = forms.CharField(max_length=255)
- error_source = 'username'
-
- layout = [
- [
- None,
- [
- ('username', {'label': _("Change Username to"), 'help_text': _("Enter new desired username.")}),
- ],
- ],
- ]
-
- def clean_username(self):
- org_username = self.request.user.username
-
- self.request.user.set_username(self.cleaned_data['username'])
- if org_username == self.request.user.username:
- raise ValidationError(_("Your new username is same as current one."))
-
- try:
- self.request.user.full_clean()
- except ValidationError as e:
- self.request.user.is_username_valid(e)
- return self.cleaned_data['username']
|