Exemple #1
0
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
Exemple #3
0
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