def _test_syntax(self, column, expected_dict):
        class MyForm(ModelForm):
            name = TextField()
            email = TextField()

        validator = Unique(column, get_session=lambda: self.session)
        form = MyForm()
        if not hasattr(form, 'Meta'):
            form.Meta = lambda: None
        form.Meta.model = User
        result = validator._syntaxes_as_tuples(form, form.name, column)
        assert result == expected_dict
    def _test_syntax(self, column, expected_dict):
        class MyForm(ModelForm):
            name = TextField()
            email = TextField()

        validator = Unique(
            column,
            get_session=lambda: self.session
        )
        form = MyForm()
        if not hasattr(form, 'Meta'):
            form.Meta = lambda: None
        form.Meta.model = User
        result = validator._syntaxes_as_tuples(form, form.name, column)
        assert result == expected_dict
Example #3
0
 class MyForm(ModelForm):
     name = TextField(
         validators=[Unique(
             self.User.name,
             get_session=lambda: self.session
         )]
     )
Example #4
0
class UserForm(ModelForm):
    username_message = 'Letters, numbers and underscores only please.'

    username = StringField(validators=[
        Unique(User.username, get_session=lambda: db.session),
        DataRequired(),
        Length(1, 16),
        Regexp('^\w+$', message=username_message)
    ])

    role = SelectField('Privileges', [DataRequired()],
                       choices=choices_from_dict(User.ROLE,
                                                 prepend_blank=False))
    category = SelectField('Category', [DataRequired()],
                           choices=choices_from_dict(User.TYPE,
                                                     prepend_blank=False))
    region = SelectField('Region', [DataRequired()],
                         choices=choices_from_dict(User.REGION,
                                                   prepend_blank=False))
    telephone = StringField('Telephone number', [DataRequired(), Length(12)])
    telephone_2 = StringField('Telephone number 2', [Optional(), Length(12)])
    telephone_3 = StringField('Telephone number 3', [Optional(), Length(12)])
    description = TextAreaField('Description (EN)',
                                [Optional(), Length(max=200)])
    description_ru = TextAreaField('Description (RU)',
                                   [Optional(), Length(max=200)])
    company_name = StringField('Company name or First Name (EN)',
                               [DataRequired()])
    company_name_ru = StringField('Company name or First Name (RU)')
    active = BooleanField('Yes, allow this user to sign in')
    confirmed = BooleanField('Confirm this Account')
Example #5
0
 def unique_validator(self, column):
     """
     Returns unique validator for given column if column has a unique index
     """
     if column.unique:
         return Unique(getattr(self.model_class, column.name),
                       get_session=self.form_class.get_session)
Example #6
0
class SignupForm(ModelForm):
    email = EmailField(validators=[
        DataRequired(),
        Email(),
        Unique(User.email, get_session=lambda: db.session)
    ])
    password = PasswordField('Password', [DataRequired(), Length(8, 128)])
Example #7
0
class NewUserForm(ModelForm):
    from core.model.user import Role, User
    first_name = StringField('Ime', [DataRequired("Ime ne moze biti prazno")])
    last_name = StringField('Prezime',
                            [DataRequired("Prezime ne moze biti prazno")])

    all_roles = Role.query.all()
    roles_dict = OrderedDict()
    for r in all_roles:
        roles_dict[r.name] = r.description
    role = SelectField('Privilegije', [DataRequired()],
                       choices=choices_from_dict(roles_dict,
                                                 prepend_blank=False),
                       default=all_roles[0].name)

    active = BooleanField('Korisnik je aktivan', default=True)

    email = EmailField('E-mail adresa',
                       validators=[
                           Unique(User.email, get_session=lambda: db.session),
                           DataRequired("E-mail ne moze biti prazan"),
                           Email("Neispravan e-mail")
                       ])

    password_ = PasswordField(
        'Lozinka', [EqualTo('confirm', message='Lozinke se moraju poklapati')])
    confirm = PasswordField('Ponovite lozinku')
Example #8
0
class UpdateCredentials(ModelForm):
    email = EmailField(validators=[
        Email(), Unique(User.email, get_session=lambda: db.session)
    ])
    current_password = PasswordField(
        _('Current password'),
        [DataRequired(),
         Length(8, 128), ensure_existing_password_matches])
    password = PasswordField(_('Password'), [Optional(), Length(8, 128)])
 class MyForm(ModelForm):
     name = TextField(validators=[
         Unique([User.name, User.favorite_color],
                get_session=lambda: self.session)
     ])
     email = TextField()
     favorite_color = QuerySelectField(
         query_factory=lambda: self.session.query(Color).all(),
         allow_blank=True)
Example #10
0
class SignupForm2(ModelForm):
    email = EmailField(validators=[
        DataRequired(),
        Email(),
        Unique(User2.email, get_session=lambda: db.session)
    ])
    password = PasswordField('Password', [DataRequired(), Length(8, 128)])
    skills = StringField('Skills', [DataRequired(), Length(3, 254)])
    train = StringField('Recent Trainings', [DataRequired(), Length(3, 254)])
Example #11
0
class WelcomeForm(ModelForm):
    username_message = 'Letters, numbers and underscores only please.'

    username = StringField(validators=[
        Unique(User.username, get_session=lambda: db.session),
        DataRequired(),
        Length(1, 16),
        Regexp('^\w+$', message=username_message)
    ])
Example #12
0
class WelcomeForm(ModelForm):
    username_message = '문자와 숫자만 입력해주세요.'

    username = StringField(validators=[
        Unique(User.username, get_session=lambda: db.session),
        DataRequired(),
        Length(1, 16),
        Regexp('^\w+$', message=username_message)
    ])
Example #13
0
class WelcomeForm(ModelForm):
    username_message = 'Letters, numbers and underscores only please.'

    username = StringField(validators=[
        Unique(User.username, get_session=lambda: db.session),
        DataRequired(),
        Length(1, 16),
        # Part of the Python 3.7.x update included updating flake8 which means
        # we need to explicitly define our regex pattern with r'xxx'.
        Regexp(r'^\w+$', message=username_message)
    ])
Example #14
0
class UpdateCredentials(ModelForm):
    current_password = PasswordField(
        'Senha atual',
        [DataRequired(),
         Length(8, 128), ensure_existing_password_matches])

    email = EmailField(validators=[
        Email(),
        Unique(Usuario.email, get_session=lambda: db.session)
    ])
    senha = PasswordField('Senha', [Optional(), Length(8, 128)])
Example #15
0
class UpdateCredentials(ModelForm):
    current_password = PasswordField(
        'Current password',
        [DataRequired(),
         Length(8, 128), ensure_existing_password_matches])

    email = EmailField(validators=[
        Email(), Unique(User.email, get_session=lambda: db.session)
    ])
    password = PasswordField('New Password', [Optional(), Length(8, 128)])
    confirm = PasswordField(
        "Repeat New Password",
        [EqualTo("password", message="Passwords don't match")])
Example #16
0
class UserForm(ModelForm):
    username_message = 'Letters, numbers and underscores only please.'

    username = StringField(validators=[
        Unique(User.username, get_session=lambda: db.session),
        Optional(),
        Length(1, 16),
        Regexp('^\w+$', message=username_message)
    ])

    role = SelectField('Privileges', [DataRequired()],
                       choices=choices_from_dict(User.ROLE,
                                                 prepend_blank=False))
    active = BooleanField('Yes, allow this user to sign in')

    email = EmailField(validators=[
        Optional(),
        Email(),
        Unique(User.email, get_session=lambda: db.session)
    ])
    acct_type = SelectField('Account Type', [DataRequired(), ensure_acct],
                            choices=choices_from_dict(User.ACCT_TYPE,
                                                      prepend_blank=True))
Example #17
0
class NewSiteForm(EditSiteForm):
    class Meta:
        model = Site
        exclude = []

    subdomain = StringField(
        u'Subdomain',
        description=u'is.my.novelty.domain',
        validators=[
            InputRequired(),
            Length(min=1,
                   max=255 - len('.' + (app.config['SERVER_NAME'] or ''))),
            Unique(Site.subdomain, get_session=lambda: db.session),
        ])
Example #18
0
class UserForm(ModelForm):
    username_message = '仅限字母,数字,中文和下划线组合'

    username = StringField(validators=[
        Unique(User.username, get_session=lambda: db.session),
        DataRequired(),
        Length(1, 16),
        Regexp('^\w+$', message=username_message)
    ])

    role = SelectField('角色', [DataRequired()],
                       choices=choices_from_dict(User.ROLE,
                                                 prepend_blank=False))

    email = StringField('E-mail', [DataRequired()])
    phone = StringField('手机', [DataRequired()])
Example #19
0
class UserForm(ModelForm):
    username_message = 'Letters, numbers and underscores only please.'

    username = StringField(validators=[
        Unique(User.username, get_session=lambda: db.session),
        Optional(),
        Length(1, 16),
        # Part of the Python 3.7.x update included updating flake8 which means
        # we need to explicitly define our regex pattern with r'xxx'.
        Regexp(r'^\w+$', message=username_message)
    ])

    role = SelectField('Privileges', [DataRequired()],
                       choices=choices_from_dict(User.ROLE,
                                                 prepend_blank=False))
    active = BooleanField('Yes, allow this user to sign in')
Example #20
0
class UserForm(ModelForm):
    username_message = _('Letters, numbers and underscores only please.')

    username = StringField(validators=[
        Unique(User.username, get_session=lambda: db.session),
        Optional(),
        Length(1, 16),
        Regexp('^\w+$', message=username_message)
    ])
    name = StringField(_('Full name'), [Optional(), Length(1, 128)])
    role = SelectField(_('Privileges'), [DataRequired()],
                       choices=choices_from_dict(User.ROLE,
                                                 prepend_blank=False))
    active = BooleanField(_('Yes, allow this user to sign in'))
    locale = SelectField(_('Language preference'), [DataRequired()],
                         choices=choices_from_dict(LANGUAGES))
Example #21
0
class SignupForm(ModelForm):
    email = EmailField(validators=[
        DataRequired(),
        Email(),
        Unique(User.email, get_session=lambda: db.session)
    ])

    password = PasswordField('Password', [
        DataRequired(),
        EqualTo("confirm", message="Passwords must match"),
        Length(8, 128)
    ])
    confirm = PasswordField("Repeat Password", [
        DataRequired(),
        EqualTo("password", message="Passwords don't match"),
        Length(8, 128)
    ])
Example #22
0
class UserForm(ModelForm):
    username_message = 'Letters, numbers and underscores only please.'

    coins = IntegerField(
        'Coins',
        [DataRequired(), NumberRange(min=1, max=2147483647)])

    username = StringField(validators=[
        Unique(User.username, get_session=lambda: db.session),
        Optional(),
        Length(1, 16),
        Regexp('^\w+$', message=username_message)
    ])

    role = SelectField('Privileges', [DataRequired()],
                       choices=choices_from_dict(User.ROLE,
                                                 prepend_blank=False))
    active = BooleanField('Yes, allow this user to sign in')
Example #23
0
class SignupForm(ModelForm):
    company_name = StringField(_('Company Name or Firstname'),
                               [DataRequired(), Length(2, 50)])
    email = EmailField(validators=[
        DataRequired(),
        Email(),
        Unique(User.email, get_session=lambda: db.session)
    ])
    password = PasswordField(_('Password'), [DataRequired(), Length(8, 128)])
    confirm_password = PasswordField(
        _('Confirm Password'),
        [DataRequired(), EqualTo('password'),
         Length(8, 128)])
    telephone = StringField(_('Telephone number'),
                            [DataRequired(), Length(12)])
    category = SelectField(_('Category'), [DataRequired()],
                           choices=choices_from_dict(User.TYPE,
                                                     prepend_blank=False))
    region = SelectField(_('Region'), [DataRequired()],
                         choices=choices_from_dict(User.REGION,
                                                   prepend_blank=False))
Example #24
0
class MeterForm(ModelForm):
    sequence_number_message = 'Sequence number is required and must be unique.'
    serial_number_message = 'Serial number is required and must be unique.'
    phone_number_message = 'Phone number is required and must be unique.'

    sequence_number = StringField(validators=[
        Unique(Meter.sequence_number, get_session=lambda: db.session),
        DataRequired(),
        Length(1, 16),
        Regexp('^\w+$', message=sequence_number_message)
    ])
    serial_number = QuerySelectField(query_factory=serial_query)
    phone_number = QuerySelectField(query_factory=phone_query)

    customer_name = StringField('Customer Name', [Optional(), Length(1, 256)])
    branch = StringField('Branch', [Optional(), Length(1, 256)])
    zone = StringField('Zone', [Optional(), Length(1, 256)])
    initial_reading = StringField('Initial Reading',
                                  [Optional(), Length(1, 256)])
    lat_long = StringField('Lat Long', [Optional(), Length(1, 256)])
    hes = SelectField('HES APP', [DataRequired()],
                      choices=choices_from_dict(Meter.ROLE,
                                                prepend_blank=False))
    active = BooleanField('Yes, allow to collect data from this meter')
 class MyForm(ModelForm):
     name = TextField(validators=[
         Unique([User.name, User.email],
                get_session=lambda: self.session)
     ])
     email = TextField()
 class MyForm(ModelForm):
     name = TextField(validators=[Unique(('name', 'email'), )])
 class MyForm(ModelForm):
     name = TextField(validators=[Unique(column, )])
 class MyForm(ModelForm):
     name = TextField(validators=[Unique(User.name, )])