Пример #1
0
class ResetMailForm(RedirectForm):
    """docstring for ResetMailForm"""
    email = TextField('email', validators=[Required(), Email()])

    def validate_email(self, field):
        if not current_app.db.get('select * from account where email=%s',
                                  field.data):
            raise ValueError('No account asociate with the email!!')
Пример #2
0
class ContentForm(Form):
    name = TextField(u'名称',[Required(u'请输入名称')])
    type = SelectField(u"类型", [AnyOf([str(val) for val in AD_CONTENT_TYPES.keys()])],choices=[(str(val), label) for val, label in AD_CONTENT_TYPES.items()])
    mode = SelectField(u"广告展示形式", [AnyOf([str(val) for val in AD_CONTENT_MODES.keys()])],choices=[(str(val), label) for val, label in AD_CONTENT_MODES.items()])
    img = TextField(u'图片链接地址',[Optional()],default='http://')
    txt = TextField(u'关键字')
    to_url = TextField(u'目标链接地址',default='http://')
    remark = TextAreaField(u'备注',[Optional()])
Пример #3
0
class UserForm(Form):
    user_id = HiddenField(default=0)
    name = TextField(u'姓名', [Required(u'请输入姓名')])
    gender = SelectField(u"性别", [AnyOf([u'保密',u'男',u'女'])],choices=[(label, label) for label in (u'保密',u'男',u'女')])
    phone = TextField(u'手机号码',[Required(u'请输入电话号码')])
    email = TextField(u'邮箱地址',[Email(u'邮箱格式不正确')])
    origin = SelectField(u"客户来源", [AnyOf([str(val) for val in USER_ORIGINS.keys()])],choices=[(str(val), label) for val, label in USER_ORIGINS.items()])
    status = SelectField(u"状态", [AnyOf([str(val) for val in USER_STATUS.keys()])],choices=[(str(val), label) for val, label in USER_STATUS.items()])

    def validate_phone(self, field):
        _user_id = int(self.user_id.data)
        if not _user_id:
            if User.query.filter(User.phone==field.data).first() is not None:
                raise ValidationError(u'电话号码已存在')
        else:
            if User.query.filter(db.and_(User.phone==field.data,User.user_id!=_user_id)).first() is not None:
                raise ValidationError(u'电话号码已存在')
Пример #4
0
class ChangePasswordForm(Form):
    old_password = PasswordField('Old Password', validators=[Required()])
    new_password = PasswordField('New Password', validators=[Required()])
    repeat_new_password = PasswordField(
        'Repeat New Password',
        validators=[
            Required(),
            EqualTo('new_password', message="Your passwords don't match")
        ])

    def __init__(self, **kwargs):
        super(ChangePasswordForm, self).__init__(**kwargs)
        self.user = kwargs['user']

    def validate_old_password(self, field):
        if not self.user.check_password(field.data):
            raise ValidationError('Incorrect old password')
Пример #5
0
class ItemForm(Form):
    name = TextField(u'商品名称',[Required(u'输入商品名称')])
    category_id = SelectField(u"类型", [AnyOf([str(val) for val in ITEM_CATEGORYS.keys()])],choices=[(str(val), label) for val, label in ITEM_CATEGORYS.items()])
    desc = TextField(u'描述')

    def validate_name(self, field):
        if Item.query.filter_by(name=field.data).first() is not None:
            raise ValidationError(u'商品已存在')
Пример #6
0
class IDCForm(Form):
    name = TextField(u'名称',
                     validators=[
                         Required(message=u"名称不能为空"),
                         length(max=20, message=u"名称最大长度20字节")
                     ])
    chinese_name = TextField(
        u'中文名称', validators=[length(max=20, message=u"中文名最大长度20字节")])
Пример #7
0
class GroupForm(Form):

    next_page = HiddenField()
    id = IntegerField(widget=HiddenInput())

    name = TextField(u'Name',
                     description=u'Unique',
                     validators=[
                         Required(message=u'Name is required'),
                         Unique(Group,
                                Group.name,
                                message=u'The current name is already in use')
                     ])
    desc = TextField(u'Description',
                     validators=[Required(message=u'Description is required')])

    submit = SubmitField(u'Submit', id='submit')
Пример #8
0
class PasswordForm(Form):
    next = HiddenField()
    password = PasswordField(_('Current password'), [Required()])
    new_password = PasswordField(
        _('New password'),
        [Required(), Length(PASSWORD_LEN_MIN, PASSWORD_LEN_MAX)])
    password_again = PasswordField(_('Password again'), [
        Required(),
        Length(PASSWORD_LEN_MIN, PASSWORD_LEN_MAX),
        EqualTo('new_password')
    ])
    submit = SubmitField(_(u'Save'))

    def validate_password(form, field):
        user = User.get_by_id(current_user.id)
        if not user.check_password(field.data):
            raise ValidationError(_("Password is wrong."))
Пример #9
0
class EditForm(Form):
    name = TextField('Full Name', [Required(), Length(min=2)])
    username = TextField('Username', [Required(), Length(min=2)])
    submit = SubmitField("Save changes")

    def validate(self):
        if not Form.validate(self):
            return False
        if g.user.username != self.username.data.lower():
            user = User.query.filter_by(
                username=self.username.data.lower()).first()
            if user:
                self.username.errors.append("The Username is already taken")
                return False
            else:
                return True
        else:
            return True
Пример #10
0
class SkuForm(Form):
    name = TextField(u'SKU名称',[Required(u'输入SKU名称')])
    item = QuerySelectField(u'商品',query_factory=lambda :Item.query.filter(Item.status==True), get_label='name')
    p1 = TextField(SKU_PROPERTIES_NAME['p1'])
    p2 = TextField(SKU_PROPERTIES_NAME['p2'])
    p3 = TextField(SKU_PROPERTIES_NAME['p3'])
    code = TextField(u'商品条码',[Required(u'商品条码不允许为空')])
    # price = FloatField(u'零售价',[validate_gte_0])
    # market_price = FloatField(u'市场价',[validate_gte_0])
    # discount_price = FloatField(u'活动价',[validate_gte_0],default=0)
    price = FloatField(u'零售价')
    market_price = FloatField(u'市场价')
    discount_price = FloatField(u'活动价')
    allowed_gift = BooleanField(u'是否允许为赠品')
    unit = SelectField(u"单位", [AnyOf(SKU_UNITS)],choices=[(u, u) for u in SKU_UNITS])
    threshold = IntegerField(u'阀值',[validate_gte_0],default=200)
    warning_threshold = IntegerField(u'警戒值',[validate_gte_0],default=500)
    status = BooleanField(u'是否启用',default=True)
Пример #11
0
class UploadForm(Form):
    """Form used for uploading files. This form
       is intended only for validation purposes.
    """
    upload = FileField("Upload your image", validators=[Required()])

    def save_file(self, path):
        filename = secure_filename(self.upload.data.filename)
        self.upload.data.save(os.path.join(path, filename))
Пример #12
0
class AddAuthorForm(Form):
    new = TextField('new_value',
                    validators=[
                        Required(),
                        Length(
                            min=2,
                            max=20,
                            message='Invalid length (allowed 2-150 symbols)')
                    ])
Пример #13
0
class ExampleForm(Form):
    field1 = TextField('First Field', description='This is field one.')
    field2 = TextField('Second Field',
                       description='This is field two.',
                       validators=[Required()])
    hidden_field = HiddenField('You cannot see this', description='Nope')

    def validate_hidden_field(form, field):
        raise ValidationError('Always wrong')
Пример #14
0
	def get_validators(self, table, field):
		result = self.get(table)
		values = [x[field] for x in result]
		values = sorted(values)

		return [
			Required(), AnyOf(
				values, message=u'Invalid value, must be one of:'
				'%(values)s')]
Пример #15
0
class SearchForm(Form):
    """Provides the search form at the top of every page"""
    function_name = TextField('function_name', validators=[Required()])
    searchby = SelectField('searchby',
                           choices=[('name', 'Name'), ('file', 'File'),
                                    ('provides', 'Provides'),
                                    ('requires', 'Requires'),
                                    ('description', 'Description'),
                                    ('summary', 'Summary')])
Пример #16
0
class ProfileForm(Form):
    next = HiddenField()
    name = TextField(
            label = _("Username"),
            validators = [
                Required(),
                Length(USERNAME_LEN_MIN, USERNAME_LEN_MAX),
                ],
            description = u"Combination of letters/digits/underscore, at least %s characters." % USERNAME_LEN_MIN,
            )
    email = EmailField(
            label = _('Email'), 
            validators = [Email()],
            )
    created_time = DateField(
            label = _('Created time'),
            )
    role_id = RadioField(
            label = "Role",
            validators = [AnyOf([str(val) for val in USER_ROLE.keys()])],
            choices = [(str(val), label) for val, label in USER_ROLE.items()],
            )
    status_id = RadioField(
            label = "Status",
            validators = [AnyOf([str(val) for val in USER_STATUS.keys()])],
            choices = [(str(val), label) for val, label in USER_STATUS.items()],
            )
    real_name = TextField(
            label = _('Real name'),
            validators = [
                Length(REALNAME_LEN_MIN, REALNAME_LEN_MAX),
                ]
            )
    age = IntegerField(
            label = _('Age'), 
            validators = [NumberRange(AGE_MIN, AGE_MAX)],
            )
    phone = TelField(
            label = _('Phone'), 
            )
    url = URLField(
            label = _('URL'), 
            validators = [URL()],
            )
    deposit = DecimalField(
            label = _('Deposit'), 
            validators = [NumberRange(DEPOSIT_MIN, DEPOSIT_MAX)],
            )
    location = TextField(
            label = _('Location'), 
            validators = [Length(max=50)]
            )
    bio = TextAreaField(
            label = _('Bio'), 
            validators = [Length(max=1024)]
            )
    submit = SubmitField(_('Save'))
Пример #17
0
class courseSubmissionForm(Form):
    course = TextField('course',
                       validators=[Required("Please enter a course name")])
    professor = TextField(
        'professor', validators=[Required("Please enter a professor name")])
    rating = SelectField(
        'rating',
        choices=[('', ''), ('1', '1'), ('2', '2'), ('3', '3'), ('4', '4'),
                 ('5', '5')],
        validators=[
            Required('Please select a rating out of 5 for the course quality.')
        ])
    comment = TextAreaField(
        'comment',
        validators=[
            Required('Please write a review.'),
            Length(min=100, message="Please write at least 100 characters.")
        ])
Пример #18
0
class LoginForm(Form):
    user = TextField('Username', validators=[Required()])
    password = PasswordField('Password', validators=[Required()])

    def validate(self):
        rv = Form.validate(self)
        if not rv:
            return False
        user = db.select_one('users', {'name': self.user.data})
        print user
        if user is None:
            self.user.errors.append('Unknown User')
            return False
        if self.password.data != user['password']:
            self.password.errors.append('Invalid Password')
            return False
        self.user = User(user)
        return True
Пример #19
0
class ProfileForm(RegisterForm):
    first_name = TextField('First Name',
                           validators=[Required()],
                           description="Your first name")
    last_name = TextField('Last Name',
                          validators=[Required()],
                          description="Your last name")
    email = TextField('Email address',
                      validators=[Required(), Email()],
                      description="Your email address")
    phone = TextField('Phone number',
                      validators=[Required()],
                      description="Your phone number")

    def __init__(self, *args, **kwargs):
        super(ProfileForm, self).__init__(*args, **kwargs)
        del self.confirm
        del self.password
Пример #20
0
class URLForm(Form):
    url = TextField('', [Required()])

    def validate_url(form, field):
        if wiki.exists(field.data):
            raise ValidationError('The URL "%s" exists already.' % field.data)

    def clean_url(self, url):
        return urlify(url)
Пример #21
0
class URLForm(Form):
    url = TextField(
        'URL',
        [Required(), Length(max=255), URL()], widget=XXLargeTextInput())
    slug = TextField('Slug',
                     [Optional(), Length(max=30),
                      Regexp(RE_SLUG)],
                     widget=TextInput())
    submit = SubmitField('shorten')
Пример #22
0
class UserRegistrationForm(Form):
    username = TextField("Create a Username...", validators=[
        Required(message='Username required'),
        Regexp('^[a-zA-Z0-9_.-]+$', 
               message="Username contains invalid characters"), 
        Length(min=2, max=18, 
               message="Username must be between 2 and 18 characters"),
        does_not_have_bad_words])
    
    email = TextField("Email Address:", validators=[
        Required(message='Email required'),
        Email(message="Invalid email address"),
        email_is_unique])
    
    password = PasswordField("Password", validators=[
        Required(message='Password required')])
    
    """
Пример #23
0
class RoomClassForm(Form):

    name = TextField("Name", validators=[Required()])
    is_always_authorized = BooleanField("Can Always Boot")

    printer_configuration_id = SelectField("Printer Configuration")

    billing_enabled = BooleanField("Billing Enabled", default=True)
    screensaver_enabled = BooleanField("Idle Screen Enabled", default=True)
Пример #24
0
class SignUpForm(Form):
    fname = TextField('fname', validators=[Required()])
    lname = TextField('lname', validators=[Required()])
    mobile_number = TextField('mobile_number')
    email = TextField('email',
                      validators=[
                          Required(),
                          v.Email(),
                          v.EqualTo('confirm_email',
                                    message="Emails must match")
                      ])
    confirm_email = TextField('Repeat Email')
    password = PasswordField('first_password',
                             validators=[
                                 Required(),
                                 v.EqualTo('confirm_password',
                                           message='Passwords must match')
                             ])
    confirm_password = PasswordField('Repeat Password')
Пример #25
0
class TeamPlayerForm(Form):
    user_id = HiddenIntegerField(u'User ID', validators=[NumberRange(min=1),
            Required()])
    status = SelectField(u'Status', coerce=int,
            choices=TeamPlayer.StatusChoices)
    delete = BooleanField(u'Delete')

    def __init__(self, *args, **kwargs):
        kwargs.setdefault('csrf_enabled', False)
        super(TeamPlayerForm, self).__init__(*args, **kwargs)
Пример #26
0
class ChangePasswordForm(Form):
    activation_key = HiddenField()
    password = PasswordField(
        'Password',
        [Required()],
    )
    password_again = PasswordField(
        'Password again',
        [EqualTo('password', message="Passwords don't match")])
    submit = SubmitField('Save')
Пример #27
0
class LeaseForm(Form):
    official_id = TextField('Public Record #', validators=[Required()])
    official_name = TextField('Public Name', validators=[Required()])
    nick_name = TextField('Code Name', validators=[Length(min=0, max=16)])
    contract = TextAreaField('Details', validators=[Length(min=0, max=140)])

    def __init__(self, lease, *args, **kwargs):
        Form.__init__(self, *args, **kwargs)
        if lease is not None:
            self.the_official_id = lease.official_id

    def validate(self):
        if not self.official_id.data:
            self.official_id.data = self.the_official_id
        if not Form.validate(self):
            print ' + + + Nope'
            return False
        print ' + + + Yup'
        return True
Пример #28
0
class SignupForm(Form):
    next = HiddenField()
    email = EmailField(u'Email', [Required(), Email()],
            description=u"What's your email address?")
    password = PasswordField(u'Password', [Required(), Length(PASSWORD_LEN_MIN, PASSWORD_LEN_MAX)],
            description=u'%s characters or more! Be tricky.' % PASSWORD_LEN_MIN)
    name = TextField(u'Choose your username', [Required(), Length(USERNAME_LEN_MIN, USERNAME_LEN_MAX)],
            description=u"Don't worry. you can change it later.")
    agree = BooleanField(u'Agree to the ' +
        Markup('<a target="blank" href="/terms">Terms of Service</a>'), [Required()])
    submit = SubmitField('Sign up')

    def validate_name(self, field):
        if User.query.filter_by(name=field.data).first() is not None:
            raise ValidationError(u'This username is taken')

    def validate_email(self, field):
        if User.query.filter_by(email=field.data).first() is not None:
            raise ValidationError(u'This email is taken')
Пример #29
0
class SettingsForm(Form):
    # nickname = TextField(u'Name')
    email = TextField(u'Email', validators=[Required()])
    bio = TextAreaField(u'Bio')
    photo = FileField(
        u'Photo',
        validators=[
            validators.regexp(
                ur'^[^/\\]\.(jpg|jpeg|png|gif|JPG|JPEG|PNG|GIF)$')
        ])
Пример #30
0
class AddHostForm(Form):
    next = HiddenField()
    address = TextField(_(u'The IP address or hostname of target host'),
                        [Required()])
    type_code = RadioField(_(u"Hypervisor Type"),
                           [AnyOf([str(val) for val in HOST_TYPE.keys()])],
                           choices=[(str(val), label)
                                    for val, label in HOST_TYPE.items()],
                           default=HOST_KVM)

    username = TextField(_(u'The Username used by libvirt+ssh connection'),
                         [Required()],
                         default="simplecloud")

    submit = SubmitField(_(u'Save'))

    def validate_address(self, field):
        if Host.query.filter_by(address=field.data).first() is not None:
            raise ValidationError(_(u'This host is added'))