Пример #1
0
class ChangeEmailPasswordForm(forms.Form):
    current_password = forms.CharField(label=_("Current password"),
                                       max_length=200,
                                       required=False,
                                       widget=forms.PasswordInput())

    new_email = forms.CharField(label=_("New e-mail"),
                                max_length=200,
                                required=False)

    new_password = forms.CharField(label=_("New password"),
                                   max_length=200,
                                   required=False,
                                   widget=forms.PasswordInput())

    def __init__(self, *args, **kwargs):
        self.user = kwargs.pop('user', None)
        super(ChangeEmailPasswordForm, self).__init__(*args, **kwargs)

    def clean(self):
        data = super(ChangeEmailPasswordForm, self).clean()

        current_password = data.get('current_password')
        new_email = data.get('new_email')
        new_password = data.get('new_password')

        if not data.get('current_password'):
            message = _("You have to enter your current password.")
            raise forms.ValidationError(message)

        if not self.user.check_password(current_password):
            raise forms.ValidationError(_("Entered password is invalid."))

        if not (new_email or new_password):
            message = _("You have to enter new e-mail or password.")
            raise forms.ValidationError(message)

        if new_email:
            if new_email.lower() == self.user.email.lower():
                message = _("New e-mail is same as current one.")
                raise forms.ValidationError(message)
            validate_email(new_email)

        if new_password:
            validate_password(new_password)

        return data
Пример #2
0
class RegisterForm(forms.Form):
    username = forms.CharField(validators=[validators.validate_username])
    email = forms.CharField(validators=[validators.validate_email])
    password = forms.CharField(validators=[validators.validate_password],
                               widget=forms.PasswordInput(render_value=True))

    # placeholder field for setting captcha errors on form
    captcha = forms.CharField(required=False)
Пример #3
0
class RegisterForm(forms.Form):
    username = forms.CharField(label=_("Username"),
                               validators=[validators.validate_username])
    email = forms.CharField(label=_("Email"),
                            validators=[validators.validate_email])
    password = forms.CharField(label=_("Password"),
                               validators=[validators.validate_password],
                               widget=forms.PasswordInput(render_value=True))

    def __init__(self, *args, **kwargs):
        super(RegisterForm, self).__init__(*args, **kwargs)

        self.api_fields = (
            (self['username'], 'misago:api_validate_username'),
            (self['email'], 'misago:api_validate_email'),
            (self['password'], 'misago:api_validate_password'),
        )
Пример #4
0
class RegisterForm(forms.Form):
    username = forms.CharField(validators=[validators.validate_username])
    email = forms.CharField(validators=[validators.validate_email])
    password = forms.CharField(validators=[validators.validate_password],
                               widget=forms.PasswordInput(render_value=True))

    # placeholder field for setting captcha errors on form
    captcha = forms.CharField(required=False)

    def __init__(self, *args, **kwargs):
        self.request = kwargs.pop('request')
        super(RegisterForm, self).__init__(*args, **kwargs)

    def clean(self):
        cleaned_data = super(RegisterForm, self).clean()

        validators.validate_new_registration(self.request, self, cleaned_data)

        return cleaned_data