Пример #1
0
class RegisterForm(FlaskBBForm):
    username = StringField(_("Username"), validators=[
        DataRequired(message=_("A valid username is required")),
        is_valid_username])

    email = StringField(_("Email address"), validators=[
        DataRequired(message=_("A valid email address is required.")),
        Email(message=_("Invalid email address."))])

    password = PasswordField(_('Password'), validators=[
        InputRequired(),
        EqualTo('confirm_password', message=_('Passwords must match.'))])

    confirm_password = PasswordField(_('Confirm password'))

    recaptcha = RecaptchaField(_("Captcha"))

    language = SelectField(_('Language'))

    accept_tos = BooleanField(_("I accept the Terms of Service"), validators=[
        DataRequired(message=_("Please accept the TOS."))], default=True)

    submit = SubmitField(_("Register"))

    def save(self):
        user = User(username=self.username.data,
                    email=self.email.data,
                    password=self.password.data,
                    date_joined=time_utcnow(),
                    primary_group_id=4,
                    language=self.language.data)
        return user.save()
Пример #2
0
class ForgotPasswordForm(FlaskForm):
    email = StringField(_('Email address'), validators=[
        DataRequired(message=_("A valid email address is required.")),
        Email()])

    recaptcha = RecaptchaField(_("Captcha"))

    submit = SubmitField(_("Request Password"))
Пример #3
0
class RegisterForm(FlaskForm):
    username = StringField(_("Username"), validators=[
        DataRequired(message=_("A valid username is required")),
        is_valid_username])

    email = StringField(_("Email address"), validators=[
        DataRequired(message=_("A valid email address is required.")),
        Email(message=_("Invalid email address."))])

    password = PasswordField(_('Password'), validators=[
        InputRequired(),
        EqualTo('confirm_password', message=_('Passwords must match.'))])

    confirm_password = PasswordField(_('Confirm password'))

    recaptcha = RecaptchaField(_("Captcha"))

    language = SelectField(_('Language'))

    accept_tos = BooleanField(_("I accept the Terms of Service"), validators=[
        DataRequired(message=_("Please accept the TOS."))], default=True)

    submit = SubmitField(_("Register"))

    def validate_username(self, field):
        # would through an out of context error if used with validators.Length
        min_length = flaskbb_config["AUTH_USERNAME_MIN_LENGTH"]
        max_length = flaskbb_config["AUTH_USERNAME_MAX_LENGTH"]
        blacklist = [w.strip() for w in
                     flaskbb_config["AUTH_USERNAME_BLACKLIST"].split(",")]

        if len(field.data) < min_length or len(field.data) > max_length:
            raise ValidationError(_(
                "Username must be between %(min)s and %(max)s "
                "characters long.",
                min=min_length, max=max_length)
            )
        if field.data.lower() in blacklist:
            raise ValidationError(_(
                "This is a system reserved name. Choose a different one.")
            )
        user = User.query.filter_by(username=field.data.lower()).first()
        if user:
            raise ValidationError(_("This username is already taken."))

    def validate_email(self, field):
        email = User.query.filter_by(email=field.data.lower()).first()
        if email:
            raise ValidationError(_("This email address is already taken."))

    def save(self):
        user = User(username=self.username.data,
                    email=self.email.data,
                    password=self.password.data,
                    date_joined=time_utcnow(),
                    primary_group_id=4,
                    language=self.language.data)
        return user.save()
Пример #4
0
class RegisterForm(FlaskBBForm):
    username = StringField(
        _("Username"),
        validators=[
            DataRequired(message=_("A valid username is required")),
            is_valid_username
        ]
    )

    email = StringField(
        _("Email address"),
        validators=[
            DataRequired(message=_("A valid email address is required.")),
            Email(message=_("Invalid email address."))
        ]
    )

    password = PasswordField(
        _('Password'),
        validators=[
            InputRequired(),
            EqualTo('confirm_password', message=_('Passwords must match.'))
        ]
    )

    confirm_password = PasswordField(_('Confirm password'))

    recaptcha = RecaptchaField(_("Captcha"))

    language = SelectField(_('Language'))

    accept_tos = BooleanField(
        _("I accept the Terms of Service"),
        validators=[DataRequired(message=_("Please accept the TOS."))],
        default=True
    )

    submit = SubmitField(_("Register"))
Пример #5
0
class LoginRecaptchaForm(LoginForm):
    recaptcha = RecaptchaField(_("Captcha"))