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()
class ForgotPasswordForm(FlaskForm): email = StringField(_('Email address'), validators=[ DataRequired(message=_("A valid email address is required.")), Email()]) recaptcha = RecaptchaField(_("Captcha")) submit = SubmitField(_("Request Password"))
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()
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"))
class LoginRecaptchaForm(LoginForm): recaptcha = RecaptchaField(_("Captcha"))