Exemple #1
0
 def scaffold_form(self):
     form_class = super(SafeModelView, self).scaffold_form()
     form_class.plaintext_password = fields.PasswordField(
         'Password', [
             validators.EqualTo('confirm', message='Passwords must match'),
         ])
     form_class.confirm = fields.PasswordField('Confirm')
     return form_class
Exemple #2
0
class registerForm(FlaskForm):
    # for checking if password is varied enough
    def PasswordCheck(form, field):
        pswSet = set(field.data)
        if not (pswSet.intersection(set(string.digits))
                and pswSet.intersection(set(string.ascii_uppercase))
                and pswSet.intersection(set(string.ascii_lowercase))):
            raise ValidationError(
                'Password is not varied enough. Try mixing cases and adding numbers.'
            )

    # for checking if email is taken
    def emailTakenCheck(form, field):
        db.cur.execute('SELECT verified FROM users WHERE email_addr=%s;',
                       (field.data, ))
        for verification in db.cur.fetchall():
            if verification['verified']:
                raise ValidationError(
                    'An account with that email address has already been verified.'
                )

    # for checking if username is wack or taken
    def usernameStuffCheck(form, field):
        db.cur.execute('SELECT verified FROM users WHERE username=%s;',
                       (field.data, ))
        for verification in db.cur.fetchall():
            if verification['verified']:
                raise ValidationError('The username "{}" is taken.'.format(
                    field.data))

        for char in field.data:
            if char not in urlValidChars:
                raise ValidationError(
                    'Usernames can only contain letters, numbers, and the symbols . _ - +'
                )

    email = f5.EmailField('Email address', [
        v.InputRequired(r('email address')),
        v.Email('Must be a valid email address'),
        v.Length(5, 250, 'Must be a complete email address'), emailTakenCheck
    ])
    name = f.StringField(
        'Name', [v.InputRequired(r('name')),
                 v.Length(2, 250, r('name'))])
    username = f.StringField('Username', [
        v.InputRequired(r('username')),
        v.Length(3, 100, 'Username must be between 3 and 100 characters long'),
        usernameStuffCheck
    ])
    password = f.PasswordField('Password', [
        v.InputRequired(r('password')),
        v.Length(8, 250, 'Password must be at least 8 characters long'),
        PasswordCheck
    ])
    confirm = f.PasswordField('Confirm password', [
        v.InputRequired(r('password confirmation')),
        v.EqualTo('password', 'Confirmation password does not match')
    ])
class FormUserAdd(Form):
    username = fields.TextField(
        label='Username',
        description=u'Enter username',
        validators=[
            validators.Required(message=u'Required field'),
            validators.Length(
                min=2,
                max=80,
                message=
                u'Username must be a minimum of %d and maximum of %d characters'
                % (2, 80)),
            validators.Regexp(
                regex=r'^[\w_\.]+$',
                message=
                u'The user name can contain only letters, numbers, and character _ and .'
            )
        ])

    password = fields.PasswordField(
        label='Password',
        validators=[
            validators.Required(message=u'Required field'),
            validators.EqualTo('repassword',
                               message=u'Passwords must be identical')
        ])

    repassword = fields.PasswordField('Repeat Password')

    email = fields.TextField(
        label='Email',
        description=u'Enter the user\'s email',
        validators=[
            validators.Required(message=u'Required field'),
            validators.Length(
                min=7,
                max=120,
                message=
                u'E-mail must be a minimum of %d and maximum of %d characters'
                % (7, 120)),
            validators.Email(message=u'Invalid e-mail address')
        ])

    perm = fields.SelectField(
        label='User Roles',
        choices=[(u'user', u'User'), (u'admin', u'Admin')],
        validators=[validators.Required(message=u'Required field')])

    def validate_username(self, field):
        if not uq.is_unique_user(field.data):
            raise validators.ValidationError(
                'This username: %s is not unique in system.' % field.data)

    def validate_email(self, field):
        if not uq.is_unique_email(field.data):
            raise validators.ValidationError(
                'This e-mail: %s is not unique in system.' % field.data)
class BaseFormUserChangePassword(Form):
    password = fields.PasswordField(
        label='Password',
        validators=[
            validators.EqualTo('repassword',
                               message=u'Passwords must be identical')
        ])

    repassword = fields.PasswordField('Repeat Password')
Exemple #5
0
class ChangePassWordForm(FlaskForm):
    nowpassword = fields.StringField(
        validators=[DataRequired(code_msg.NOW_PASSWORD_EMPTY.get_msg())])
    password = fields.PasswordField(validators=[
        Length(min=6, max=16, message=code_msg.PASSWORD_LENGTH_ERROR.get_msg())
    ])
    repassword = fields.PasswordField(validators=[
        EqualTo('password', code_msg.PASSWORD_REPEAT_ERROR.get_msg())
    ])
Exemple #6
0
class ChangePasswordForm(form.Form):
    current_password = fields.PasswordField(
        validators=[validators.DataRequired()])
    new_password = fields.PasswordField(validators=[validators.DataRequired()])
    confirm_new_password = fields.PasswordField(validators=[
        validators.DataRequired(),
        validators.EqualTo("new_password",
                           message="The passwords do not match."),
    ])
Exemple #7
0
class UserSignupForm(flask_wtf.FlaskForm):
    localpart = fields.StringField(
        _('Email address'),
        [validators.DataRequired(),
         validators.Regexp(LOCALPART_REGEX)])
    pw = fields.PasswordField(_('Password'), [validators.DataRequired()])
    pw2 = fields.PasswordField(_('Confirm password'),
                               [validators.EqualTo('pw')])
    submit = fields.SubmitField(_('Sign up'))
Exemple #8
0
class UserForm(Form):
    localpart = fields.StringField('E-mail', [validators.DataRequired()])
    pw = fields.PasswordField('Password', [validators.DataRequired()])
    pw2 = fields.PasswordField('Confirm password', [validators.EqualTo('pw')])
    quota_bytes = fields_.IntegerSliderField('Quota', default=1000000000)
    enable_imap = fields.BooleanField('Allow IMAP access', default=True)
    enable_pop = fields.BooleanField('Allow POP3 access', default=True)
    comment = fields.StringField('Comment')
    submit = fields.SubmitField('Save')
Exemple #9
0
class RegisterForm(Form):
    email = fields.StringField('Email', [validators.InputRequired(), validators.Email()])
    password = fields.PasswordField('Password', [validators.Length(min=6, max=16), validators.EqualTo('confirm', 'Passwords do not match')])
    confirm = fields.PasswordField('Re-type Password')
    image_upload = fields.FileField('Image File')

    def validate_email(form, field):
        if RegisteredUsers.select(fn.Count(RegisteredUsers.email)).where(RegisteredUsers.email==field.data).scalar() > 0:
            raise validators.ValidationError('User Already Exists')
Exemple #10
0
class DomainSignupForm(flask_wtf.FlaskForm):
    name = fields.StringField(_('Domain name'), [validators.DataRequired()])
    localpart = fields.StringField(_('Initial admin'),
                                   [validators.DataRequired()])
    pw = fields.PasswordField(_('Admin password'), [validators.DataRequired()])
    pw2 = fields.PasswordField(_('Confirm password'),
                               [validators.EqualTo('pw')])
    captcha = flask_wtf.RecaptchaField()
    submit = fields.SubmitField(_('Create'))
Exemple #11
0
class UserSignupForm(flask_wtf.FlaskForm):
    localpart = fields.StringField(_('Email address'), [
        validators.DataRequired(),
        validators.Regexp("^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+$")
    ])
    pw = fields.PasswordField(_('Password'), [validators.DataRequired()])
    pw2 = fields.PasswordField(_('Confirm password'),
                               [validators.EqualTo('pw')])
    submit = fields.SubmitField(_('Sign up'))
Exemple #12
0
class RegisterForm(Form):
    telephone = fields.StringField(
        label='用户名',
        validators=[
            validators.DataRequired(message='电话号码不能为空'),
            validators.length(min=6, max=11, message='电话号长度不满足条件')
        ],
        widget=widgets.TextInput(),  # 表示是一个文本控件
        render_kw={
            'class': 'form-control',
            'placeholder': '请输入用户名',
            'required': '',
            'autofocus': ''
        }
    )
    username = fields.StringField(
        label='用户名',
        validators=[
            validators.DataRequired(message='用户名不能为空'),
        ],
        widget=widgets.TextInput(),
        render_kw={
            'class': 'form-control',
            'placeholder': '请输入用户名字',
            'required': '',
            'autofocus': ''
        }
    )
    password1 = fields.PasswordField(
        label='密码',
        validators=[
            validators.DataRequired(message='密码不能为空'),
            validators.length(min=6, message='密码必须大于%(min)d位')
        ],
        widget=widgets.PasswordInput(),
        render_kw={
            'class': 'form-control',
            'placeholder': '请确认密码',
            'required': '',
            'autofocus': ''
        }
    )

    password2 = fields.PasswordField(
        label='确认密码',
        validators=[
            validators.DataRequired(message='密码不能为空'),
            validators.length(min=6, message='密码必须大于%(min)d位')
        ],
        widget=widgets.PasswordInput(),
        render_kw={
            'class': 'form-control',
            'placeholder': '请确认密码',
            'required': '',
            'autofocus': ''
        }
    )
Exemple #13
0
class UserForm(flask_wtf.FlaskForm):
    localpart = fields.StringField(_('E-mail'), [validators.DataRequired(), validators.Regexp(LOCALPART_REGEX)])
    pw = fields.PasswordField(_('Password'), [validators.DataRequired()])
    pw2 = fields.PasswordField(_('Confirm password'), [validators.EqualTo('pw')])
    quota_bytes = fields_.IntegerSliderField(_('Quota'), default=1000000000)
    enable_imap = fields.BooleanField(_('Allow IMAP access'), default=True)
    enable_pop = fields.BooleanField(_('Allow POP3 access'), default=True)
    comment = fields.StringField(_('Comment'))
    enabled = fields.BooleanField(_('Enabled'), default=True)
    submit = fields.SubmitField(_('Save'))
Exemple #14
0
class UserCreateForm(UserBaseForm):
    password = fields.PasswordField(validators=[validators.InputRequired()],
                                    widget=widgets.PasswordInput())
    confirm_password = fields.PasswordField(
        validators=[
            validators.InputRequired(),
            validators.EqualTo("password",
                               message="The passwords do not match."),
        ],
        widget=widgets.PasswordInput(),
    )
Exemple #15
0
class ResetForm(form.Form):
    yo_handle = fields.HiddenField('', [
        validators.Required(),
    ])
    newpassword = fields.PasswordField('New Password', [
        validators.Required(),
    ])
    confirmpassword = fields.PasswordField('Confirm New Password', [
        validators.Required(),
        validators.EqualTo('newpassword', message='Password Must Match')
    ])
Exemple #16
0
class PassChangeForm(FlaskForm):
    password = fields.PasswordField('Old Password',
                                    validators=[validators.input_required()])
    pass_new = fields.PasswordField('New Password',
                                    validators=[
                                        validators.input_required(),
                                        validators.EqualTo(
                                            'pass_conf',
                                            message='Passwords must match')
                                    ])
    pass_conf = fields.PasswordField('Confirm New Password',
                                     validators=[validators.input_required()])
Exemple #17
0
    def get_create_form(self):
        create_form = super().get_create_form()

        create_form.email = fields.StringField(
            'Email', validators=[
                validators.DataRequired(), validators.Email()])
        create_form.password = fields.PasswordField(
            'Password', validators=[validators.DataRequired()])
        create_form.password_confirm = fields.PasswordField(
            'Confirm Password', validators=[
                validators.DataRequired(), validators.EqualTo('password')])

        return create_form
Exemple #18
0
class FormSignUp(Form):
    email = html5.EmailField(validators=[
        validators.InputRequired(),
        validators.Email(message="Email is required")
    ])
    password = fields.PasswordField(validators=[
        validators.InputRequired(message="Password is required"),
        validators.EqualTo("password_confirmation",
                           message="Passwords must match")
    ])
    password_confirmation = fields.PasswordField(validators=[
        validators.InputRequired(message="Password confirmation is required")
    ])
Exemple #19
0
class ChangePasswordForm(form.Form):
    password = fields.PasswordField(
        validators=[validators.required(),
                    validators.Length(min=1, max=256)])
    confirm = fields.PasswordField()

    def validate(self):
        if not form.Form.validate(self):
            return False
        if self.password.data != self.confirm.data:
            self.confirm.errors.append('Passwords do not match')
            return False
        return True
Exemple #20
0
class SignUpForm(Form):
    username = fields.TextField('Username')
    password = fields.PasswordField('Password', [validators.Required()])
    confirm = fields.PasswordField('Confirm', [validators.Required()])

    def validate_username(form, field):
        used = User.query.filter_by(username=form.data['username']).first()
        if used:
            raise ValidationError('Username is in use already.')

    def validate_confirm(form, field):
        if not form.data['password'] == form.data['confirm']:
            raise ValidationError('The password do not match.')
Exemple #21
0
class PasswordEditForm(FlaskForm):
    old_password = fields.PasswordField('原密码',
                                        validators=[validators.DataRequired()])
    password = fields.PasswordField('新密码',
                                    validators=[
                                        validators.DataRequired(),
                                        validators.EqualTo('password2',
                                                           message='两次密码不一致')
                                    ])
    # 表单中完成密码与确认密码一致性的验证
    password2 = fields.PasswordField('确认密码',
                                     validators=[validators.DataRequired()])
    submit = fields.SubmitField('更新密码')
Exemple #22
0
class ForgetPasswordForm(FlaskForm):
    email = fields.StringField(
        validators=[DataRequired(code_msg.EMAIL_EMPTY.get_msg())])
    code = fields.StringField(
        validators=[DataRequired(code_msg.VERIFY_CODE_ERROR.get_msg())])
    vercode = fields.StringField(
        validators=[InputRequired(code_msg.VERIFY_CODE_ERROR.get_msg())])
    password = fields.PasswordField(validators=[
        Length(min=6, max=16, message=code_msg.PASSWORD_LENGTH_ERROR.get_msg())
    ])
    repassword = fields.PasswordField(validators=[
        EqualTo('password', code_msg.PASSWORD_REPEAT_ERROR.get_msg())
    ])
Exemple #23
0
class RegistrationForm(Form):
    first_name = fields.TextField(validators=[InputRequired()])
    last_name = fields.TextField(validators=[InputRequired()])
    email = fields.TextField(validators=[InputRequired(),
                                         Length(min=5, max=120),
                                         Email()])
    password = fields.PasswordField(validators=[InputRequired()])
    confirm = fields.PasswordField(
        validators=[EqualTo('password', 'Passwords must match')])
    accept_tos = fields.BooleanField(validators=[InputRequired()])

    def validate_email(form, field):
        if User.query.filter_by(email=field.data).count() > 0:
            raise ValidationError('This email is already in use.')
Exemple #24
0
class SignupForm(Form):
    username = fields.StringField("Username",
                                  [va.DataRequired(), va.length(min=1)])
    fullname = fields.StringField("Full Name",
                                  [va.DataRequired(), va.length(min=1)])
    password = fields.PasswordField("Password",
                                    [va.DataRequired(),
                                     va.length(
                                         min=PASSWORD_MIN_LENGTH
                                     ),  # TODO
                                     va.EqualTo("confirm",
                                                message="Passwords must match")
                                     ])
    confirm = fields.PasswordField("Repeat Password", [va.DataRequired()])
class ChangePasswordForm(Form):
    password = f.PasswordField("当前密码",
                               validators=[
                                   validators.DataRequired(message="必填项"),
                                   validators.Length(5, 32, message="长度不能少于5位")
                               ])

    newPassword = f.PasswordField("新密码",
                                  validators=[
                                      validators.DataRequired(message="必填项"),
                                      validators.Length(5,
                                                        32,
                                                        message="长度不能少于5位")
                                  ])
Exemple #26
0
class ChangePasswordForm(SecureForm):

    password = fields.PasswordField("Password",
                                    validators=(
                                        validators.DataRequired(),
                                        validators.Length(max=1000),
                                    ))
    password_repeated = fields.PasswordField(
        "Repeat password",
        validators=(
            validators.DataRequired(),
            validators.Length(max=1000),
            validators.EqualTo('password'),
        ))
Exemple #27
0
class AccountEditForm(Form):
    """
    Edit user account information
    """
    change_password = fields.BooleanField('Update Password')
    password = fields.PasswordField('New Password', [
        validators.required(),
        validators.EqualTo('verify_password', 'Passwords do not match.'),
        Password('username'),
    ])
    verify_password = fields.PasswordField('Verify Password')
    change_email = fields.BooleanField('Update Email')
    email = fields.StringField('Email')
    regenerate = fields.BooleanField('Regenereate API tokens')
class modifyInfoForm(BaseForm):
    userName = fields.StringField('user name')
    email = fields.StringField(
        'email',
        validators=[
            validators.Email(message='you  must submit a valid emil address')
        ])
    # oldPassword = fields.PasswordField('Old Password', [
    #     validators.InputRequired()])
    newPassword = fields.PasswordField(
        'New Password',
        [validators.EqualTo('confirm', message='Passwords must match')])
    confirmNewPassword = fields.PasswordField('Repeat Password')
    #submit = fields.SubmitField('Done')
    pass
Exemple #29
0
class UserSignup(Form):
    email_id = fields.StringField('Email', [
        validators.email('Email invalid'),
        validators.DataRequired('Email Required')
    ])

    password = fields.PasswordField('Password', [
        validators.Regexp(pwd_regex, message="Password invalid"),
        validators.DataRequired('Passowrd Required')
    ])

    confirm_password = fields.PasswordField('Confirm Password', [
        validators.EqualTo('password', message='password must match'),
        validators.DataRequired('Please Confirm your password!')
    ])
Exemple #30
0
class LoginForm(FlaskForm):
    email = fields.StringField(
        validators=[DataRequired(code_msg.EMAIL_EMPTY.get_msg())])
    vercode = fields.StringField(
        validators=[InputRequired(code_msg.VERIFY_CODE_ERROR.get_msg())])
    password = fields.PasswordField(
        validators=[DataRequired(code_msg.PASSWORD_LENGTH_ERROR.get_msg())])