class ExtendedRegisterForm(RegisterForm): first_name = StringField('Nombre', [Required()]) last_name = StringField('Apellidos', [Required()]) telegram = StringField('Telegram', [ validators.Optional(), validators.Regexp( '[a-zA-Z0-9_-]{5,}', message=u'Introduzca un usuario válido de Telegram sin @') ]) year = SelectField('Curso', [Required()], choices=[('1', 'Primero'), ('2', 'Segundo'), ('3', 'Tercero'), ('4', 'Cuarto')]) school = SelectField( 'Escuela', choices=json_choices_centros('./static/json/centros.json'), id='select_school', default=59) degree = SelectField( 'Plan de Estudios', choices=json_choices_planes('./static/json/planes.json'), id='select_degree', default='59EC') dni = StringField( 'DNI o NIE', validators=[ unique_user_dni, validators.Regexp( '[0-9A-Z][0-9]{7}[A-Z]', message=u'Introduzca un DNI o NIE válido en mayúsculas.'), Required() ]) self_edit = HiddenField()
class ExtendedConfirmRegisterForm(ConfirmRegisterForm): username = StringField('username', [validators.Regexp("['\w']+"), Required()]) email = StringField('email', [ validators.Regexp('^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$') ]) if globalvars.recaptchaEnabled is True: recaptcha = RecaptchaField() def validate(self): success = True if not super(ExtendedConfirmRegisterForm, self).validate(): success = False if db.session.query(User).filter( User.username == self.username.data.strip()).first(): self.username.errors.append("Username already taken") success = False if db.session.query(User).filter( User.email == self.email.data.strip()).first(): self.email.errors.append("Email address already taken") success = False return success
class ExtendedRegisterForm(RegisterForm): username = StringField('username', [validators.Regexp("[^' ']+"), Required()]) email = StringField('email', [Required()]) def validate(self): success = True if not super(ExtendedRegisterForm, self).validate(): success = False if db.session.query(User).filter( User.username == self.username.data.strip()).first(): self.username.errors.append("Username already taken") success = False if db.session.query(User).filter( User.email == self.email.data.strip()).first(): self.email.errors.append("Email address already taken") success = False return success