Ejemplo n.º 1
0
class HelloParams(Form):
    name = wtforms.StringField(default='world',
                               validators=[wtforms.validators.Length(max=50)])
    repeat = wtforms.IntegerField(
        default=1,
        render_kw={'type': 'number'},
        validators=[wtforms.validators.NumberRange(min=1, max=1000)])
    capitalize = wtforms.BooleanField(default=False)
Ejemplo n.º 2
0
class SignupForm(flask_wtf.FlaskForm):

    name = wtforms.StringField("Name")
    age  = wtforms.IntegerField("Age")
    pwd  = wtforms.PasswordField("Password")
    pwd_confirm = wtforms.PasswordField("Confirm password", 
                                        validators=[EqualToCI('pwd', message="PLEASE PUT THE SAME PASSWORD IN THE TWO FIELDS")])
    submit = wtforms.SubmitField("Signup")
Ejemplo n.º 3
0
 def handle_integer_types(self, column: "sa.Column", field_args,
                          **extra) -> "Field":
     field_args = self._apply_require_validators(column, field_args)
     unsigned = getattr(column.type, "unsigned", False)
     if unsigned:
         field_args["validators"].append(
             wtforms.validators.NumberRange(min=0))
     return wtforms.IntegerField(**field_args)
Ejemplo n.º 4
0
class AdminEventForm(flask_wtf.FlaskForm):
    id = wtforms.IntegerField('id', validators=[validators.DataRequired()])
    name = wtforms.StringField('name', validators=[validators.DataRequired()])
    teams = wtforms.BooleanField('teams')
    active = wtforms.BooleanField('active')
    add = wtforms.SubmitField(label='Add')
    update = wtforms.SubmitField(label='Update')
    delete = wtforms.SubmitField(label='Delete')
Ejemplo n.º 5
0
 class FieldForm(Form):
     name = wtforms.StringField(validators=[
         wtforms.validators.InputRequired(),
         wtforms.validators.Length(min=2, max=100),
         wtforms.validators.Regexp(RE_VALID_NAME,
                                   message=_(u'Not a valid variable name')),
         wtforms.validators.NoneOf(
             RESERVED_WORDS,
             message=_(u'Can\'t use reserved programming word')),
         unique_variable
     ])
     title = wtforms.StringField(validators=[wtforms.validators.Optional()])
     description = wtforms.StringField(
         widget=wtforms.widgets.TextInput(),
         validators=[wtforms.validators.Optional()])
     type = wtforms.StringField(validators=[
         wtforms.validators.InputRequired(),
         wtforms.validators.AnyOf(set(t['name'] for t in types))
     ])
     is_required = wtforms.BooleanField(
         validators=[wtforms.validators.Optional()])
     is_private = wtforms.BooleanField(
         validators=[wtforms.validators.Optional()])
     is_system = wtforms.BooleanField(
         validators=[wtforms.validators.Optional()])
     is_readonly = wtforms.BooleanField(
         validators=[wtforms.validators.Optional()])
     # Choice
     is_collection = wtforms.BooleanField(
         validators=[wtforms.validators.Optional()])
     # Choice
     is_shuffled = wtforms.BooleanField(
         validators=[wtforms.validators.Optional()])
     # Numbers
     decimal_places = wtforms.IntegerField(
         validators=[wtforms.validators.Optional()])
     # Number/String/Multichoice
     value_min = wtforms.IntegerField(
         validators=[wtforms.validators.Optional()])
     # Number/String/Multichoice
     value_max = wtforms.IntegerField(
         validators=[wtforms.validators.Optional()])
     # String
     pattern = wtforms.StringField(
         validators=[wtforms.validators.Optional()])
     choices = wtforms.FieldList(wtforms.FormField(ChoiceForm))
Ejemplo n.º 6
0
class VoteTagForm(flask_wtf.Form):
    """ Form used to add a rating to a package. """
    pkgname = wtf.TextField('Package name',
                            [wtf.validators.Required(), validate_package]
                            )
    tag = wtf.TextField('Tag', [wtf.validators.Required()])
    vote = wtf.IntegerField('vote', [wtf.validators.Required(),
                            validate_boolean])
Ejemplo n.º 7
0
class AdminFlagForm(flask_wtf.FlaskForm):
    flag = wtforms.StringField('flag', validators=[validators.DataRequired()])
    value = wtforms.IntegerField('value', validators=[validators.NumberRange(min=0, max=50)])
    event_id = wtforms.SelectField('event_id', choices=('', 'None'), coerce=special_int, validators=[validators.Optional()])
    notes = wtforms.StringField('notes', widget=wtforms.widgets.TextArea())
    add = wtforms.SubmitField(label='Add')
    update = wtforms.SubmitField(label='Update')
    delete = wtforms.SubmitField(label='Delete')
Ejemplo n.º 8
0
 class CycleForm(Form):
     title = wtforms.StringField(
         validators=[
             wtforms.validators.InputRequired(),
             wtforms.validators.Length(min=3, max=32),
             check_unique_url])
     week = wtforms.IntegerField()
     is_interim = wtforms.BooleanField()
Ejemplo n.º 9
0
 class FilterForm(Form):
     page = wtforms.IntegerField()
     status = wtforms.StringField(
         validators=[
             wtforms.validators.Optional(),
             wtforms.validators.AnyOf(statuses)])
     start = DateField()
     end = DateField()
Ejemplo n.º 10
0
class CoinQueryForm(Form):
    """
    消耗元宝查询
    """

    date_beg = wtforms.DateField(u'开始日期', format='%Y-%m-%d')
    date_end = wtforms.DateField(u'结束日期', format='%Y-%m-%d')
    filter_coins_gt = wtforms.SelectField(u'数目大于',
                                          choices=[(0, '全部元宝'), (1, u'真元宝'),
                                                   (2, u'绑元宝')],
                                          coerce=int)
    coins_num = wtforms.IntegerField()
    pid = wtforms.IntegerField(u'角色id')
    filter_coins_type = wtforms.SelectField(u'流转类型',
                                            choices=[(1, '消耗元宝'), (2, '添加元宝')],
                                            coerce=int)
    submit = wtforms.SubmitField(u'查询')
Ejemplo n.º 11
0
 class SearchForm(Form):
     query = wtforms.StringField(
         validators=[wtforms.validators.Optional()],
         filters=[lambda v: v.strip()[:100] if v else None])
     page = wtforms.IntegerField(
         validators=[wtforms.validators.Optional()],
         filters=[lambda v: 1 if not v or v < 1 else v],
         default=1)
Ejemplo n.º 12
0
class DatasetForm(Form):
    """
    A form used to create an image gradient dataset
    """

    train_image_count = utils.forms.IntegerField(
        'Train Image count',
        validators=[
            validators.DataRequired(),
            validators.NumberRange(min=1),
        ],
        default=1000,
        tooltip="Number of images to create in training set"
    )

    val_image_count = utils.forms.IntegerField(
        'Validation Image count',
        validators=[
            validators.Optional(),
            validators.NumberRange(min=0),
        ],
        default=250,
        tooltip="Number of images to create in validation set"
    )

    test_image_count = utils.forms.IntegerField(
        'Test Image count',
        validators=[
            validators.Optional(),
            validators.NumberRange(min=0),
        ],
        default=0,
        tooltip="Number of images to create in validation set"
    )

    image_width = wtforms.IntegerField(
        u'Image Width',
        default=50,
        validators=[validators.DataRequired()]
    )

    image_height = wtforms.IntegerField(
        u'Image Height',
        default=50,
        validators=[validators.DataRequired()]
    )
Ejemplo n.º 13
0
class TableForm(Form):
    """Subform.

    CSRF is disabled for this subform (using `Form` as parent class) because
    it is never used by itself.
    """
    table_name = f.StringField('Name', validators=[DataRequired()])
    capacity = f.IntegerField('Capacity', validators=[DataRequired(), NumberRange(min=1)])
Ejemplo n.º 14
0
        class F(wtf.Form):
            @property
            def selected_chroots(self):
                selected = []
                for ch in self.chroots_list:
                    if getattr(self, ch).data:
                        selected.append(ch)
                return selected

            git_url = wtforms.StringField(
                "Git URL",
                validators=[
                    wtforms.validators.DataRequired(),
                    wtforms.validators.URL()
                ])

            git_directory = wtforms.StringField(
                "Git Directory", validators=[wtforms.validators.Optional()])

            git_branch = wtforms.StringField(
                "Git Branch", validators=[wtforms.validators.Optional()])

            tito_test = wtforms.BooleanField(default=False)

            memory_reqs = wtforms.IntegerField(
                "Memory requirements",
                validators=[
                    wtforms.validators.Optional(),
                    wtforms.validators.NumberRange(
                        min=constants.MIN_BUILD_MEMORY,
                        max=constants.MAX_BUILD_MEMORY)
                ],
                default=constants.DEFAULT_BUILD_MEMORY)

            timeout = wtforms.IntegerField(
                "Timeout",
                validators=[
                    wtforms.validators.Optional(),
                    wtforms.validators.NumberRange(
                        min=constants.MIN_BUILD_TIMEOUT,
                        max=constants.MAX_BUILD_TIMEOUT)
                ],
                default=constants.DEFAULT_BUILD_TIMEOUT)

            enable_net = wtforms.BooleanField()
Ejemplo n.º 15
0
class HeroForm(w.Form):
  hero_name = f.StringField('Hero Name', validators=[
    v.InputRequired('Hero name required'),
  ])
  player_name = f.StringField('Player Name', validators=[
    v.InputRequired('Player name required'),
  ])
  level = f.IntegerField('Level', validators=[
    v.InputRequired('Level required'),
  ])
  max_hp = f.IntegerField('Max Hit Points', validators=[
    v.InputRequired('Max hit hoints required'),
  ])
  initiative_modifier = f.IntegerField('Initiative Modifier', validators=[
    v.InputRequired('Initiative Modifier required'),
  ])

  save = f.SubmitField('Save Hero')
Ejemplo n.º 16
0
def build_questionnaire(form, data=None):
    fields = {'groups': []}
    fields['participant'] = wtforms.StringField(
        'Participant',
        filters=[partial(filter_participants, form)],
        validators=[wtforms.validators.required()])

    for group in form.data['groups']:
        groupspec = (group['name'], [])

        for field in group['fields']:
            # if the field has options, create a list of choices
            field_type = field.get('type')
            if field_type in ('select', 'multiselect', 'category'):
                choices = [(v, k) for k, v in field.get('options').items()]

                if field['type'] == 'multiselect':
                    fields[field['tag']] = IntegerSplitterField(
                        field['tag'],
                        choices=choices,
                        description=field['description'],
                        validators=[wtforms.validators.optional()],
                    )
                else:
                    fields[field['tag']] = wtforms.SelectField(
                        field['tag'],
                        choices=choices,
                        coerce=int,
                        description=field['description'],
                        validators=[wtforms.validators.optional()],
                        widget=wtforms.widgets.TextInput())
            elif field_type in ('comment', 'string'):
                fields[field['tag']] = wtforms.StringField(
                    field['tag'],
                    description=field['description'],
                    validators=[wtforms.validators.optional()])
            elif field_type in ('boolean', 'integer'):
                if field_type == 'boolean':
                    field_validators = [wtforms.validators.optional()]
                else:
                    field_validators = [
                        wtforms.validators.optional(),
                        wtforms.validators.NumberRange(min=field.get('min', 0),
                                                       max=field.get(
                                                           'max', 9999))
                    ]

                fields[field['tag']] = wtforms.IntegerField(
                    field['tag'],
                    description=field['description'],
                    validators=field_validators)

        fields['groups'].append(groupspec)

    form_class = type('QuestionnaireForm', (BaseQuestionnaireForm, ), fields)

    return form_class(data)
Ejemplo n.º 17
0
class DonorForm(wtforms.Form):
    user_email = wtforms.TextField(label='User email',
                                   validators=[wtforms.validators.Optional()])
    confirmation = wtforms.TextField(
        label='Confirmation', validators=[wtforms.validators.Optional()])
    amount_choice = wtforms.RadioField(
        label='Donation amount',
        validators=[wtforms.validators.Optional()],
        coerce=int,
        choices=AMOUNT_CHOICES)
    customize_amount = wtforms.IntegerField(
        label='Customize your donation amount',
        validators=[
            wtforms.validators.Optional(),
            wtforms.validators.NumberRange(1, 1000000)
        ])
    first_name = wtforms.TextField(label='Name',
                                   validators=[wtforms.validators.Required()])
    last_name = wtforms.TextField(label='Name',
                                  validators=[wtforms.validators.Optional()])
    address = wtforms.TextField(label='Address',
                                validators=[
                                    wtforms.validators.Required(),
                                    wtforms.validators.Length(max=500)
                                ],
                                default=u'')
    city = wtforms.TextField(label='City',
                             validators=[wtforms.validators.Required()])
    state = wtforms.SelectField(
        label='Please select any one state in the list', choices=STATES)
    pin = wtforms.TextField(label='Pin Code',
                            validators=[wtforms.validators.Required()])
    phone_number = wtforms.TextField(
        label='Phone Number', validators=[wtforms.validators.Required()])
    email = wtforms.TextField(label='Email',
                              validators=[wtforms.validators.Required()])

    pan_number = wtforms.TextField(label='Pan Number',
                                   validators=[wtforms.validators.Required()])
    tax_exemption_certificate = wtforms.RadioField(
        label='Would you like us to send you a Tax Exemption Certificate?',
        default='False',
        choices=[('True', 'Yes'), ('False', 'No')])
    ann_choice = wtforms.RadioField(label='Would you like to be anonymous?',
                                    default='False',
                                    choices=[('True', 'Yes'), ('False', 'No')])

    def set_data(self, user):
        self.first_name.data = user.first_name
        self.last_name.data = user.last_name
        self.address.data = user.address
        self.state.data = user.state
        self.city.data = user.city
        self.pin.data = user.pin
        self.phone_number.data = user.contact_number
        self.email.data = user.email
        self.pan_number.data = user.pan_number
Ejemplo n.º 18
0
class UserForm(FlaskForm):
    email = EmailField(
        'Email', validators=[DataRequired(),
                             Email(),
                             UniqueMailValidator()])
    firstname = f.StringField('Firstname', validators=[DataRequired()])
    lastname = f.StringField('Lastname', validators=[DataRequired()])
    password = f.PasswordField('Password', validators=[DataRequired()])
    age = f.IntegerField('Age', validators=[DataRequired()])
    weight = f.FloatField('Weight', validators=[DataRequired()])
    max_hr = f.IntegerField('Max Heartrate', validators=[DataRequired()])
    rest_hr = f.IntegerField('Rest Heartrate', validators=[DataRequired()])
    vo2max = f.FloatField('VO2 Max', validators=[DataRequired()])

    display = [
        'email', 'firstname', 'lastname', 'password', 'age', 'weight',
        'max_hr', 'rest_hr', 'vo2max'
    ]
Ejemplo n.º 19
0
class CMSHighlightForm(BaseForm):
    post_id = wtforms.IntegerField(
        validators=[wtforms.validators.InputRequired()])

    def validate_post_id(self, field):
        post_id = field.data
        post = PostModel.query.filter_by(id=post_id).first()
        if not post:
            return wtforms.ValidationError(u'该帖子不存在!')
Ejemplo n.º 20
0
class GammaForm(wtf.Form):
    a = HTML5FloatField(default=0.5,
                        validators=[wtf.validators.InputRequired()])
    h = HTML5FloatField(default=2.0,
                        validators=[wtf.validators.InputRequired()])
    A = HTML5FloatField(default=1.41421356237,
                        validators=[wtf.validators.InputRequired()])
    resolution = wtf.IntegerField(default=500,
                                  validators=[wtf.validators.InputRequired()])
Ejemplo n.º 21
0
 class MoveForm(Form):
     target = wtforms.StringField(validators=[
         wtforms.validators.Optional(),
         wtforms.validators.AnyOf(schema.attributes,
                                  message=_(u'Does not exist')), not_self,
         not_section
     ])
     index = wtforms.IntegerField(
         validators=[wtforms.validators.NumberRange(min=0)])
Ejemplo n.º 22
0
class CreateSessionForm(wtforms.Form):
    session_configs = SESSION_CONFIGS_DICT.values()
    session_config_choices = [(s['name'], s['display_name'])
                              for s in session_configs]

    session_config = wtforms.SelectField(
        choices=session_config_choices,
        validators=validators_required,
        render_kw=dict({'class': 'form-select'}),
    )

    num_participants = wtforms.IntegerField(
        validators=[
            wtvalidators.DataRequired(),
            wtvalidators.NumberRange(min=1)
        ],
        render_kw={
            'autofocus': True,
            'class': 'form-control w-auto'
        },
    )

    # too much weirdness with BooleanField and 'y'
    # so we render manually
    # it's a booleanfield so its default value will be 'y',
    # but it's a hidden widget that we are passing to the server
    # through .serializeArray, so we need to filter out
    is_mturk = wtforms.BooleanField()
    room_name = wtforms.StringField(widget=wtwidgets.HiddenInput())

    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        if self.is_mturk.object_data:
            label = "Number of MTurk workers (assignments)"
            description = (
                'Since workers can return an assignment or drop out, '
                'some "spare" participants will be created: '
                f'the oTree session will have {settings.MTURK_NUM_PARTICIPANTS_MULTIPLE} '
                'times more participant objects than the number you enter here.'
            )
        else:
            label = "Number of participants"
            description = ''

        self.num_participants.label = label
        self.num_participants.description = description

    def validate(self):
        if not super().validate():
            return False

        config = SESSION_CONFIGS_DICT[self.session_config.data]
        lcm = config.get_lcm()
        if self.num_participants.data % lcm:
            self.num_participants.errors.append(
                'Please enter a valid number of participants.')
        return not bool(self.errors)
Ejemplo n.º 23
0
class TeacherForm(FlaskForm):
    """
    form字段的参数
    label=None, 表单的标签
    validators=None, 校验,传入校验的方法
    filters=tuple(), 过滤
    description='',  描述
    id=None, html id
    default=None, 默认值
    widget=None, 样式
    render_kw=None, 属性 参数
    """

    name = wtforms.StringField(
        label="教师姓名",
        validators=[
            validators.DataRequired('姓名不可以为空')
        ],
        render_kw={
            "class": "form-control",
            "placeholder": "教师姓名"
        }
    )
    age = wtforms.IntegerField(
        label="教师年龄",
        validators=[
            validators.DataRequired("年龄不可以为空"),
        ],
        render_kw={
            "class": "form-control",
            "placeholder": "教师年龄",
        }
    )
    gender = wtforms.SelectField(
        label="教师性别",
        choices=[
            ("1","男"),
            ("2","女")
        ],
        render_kw={
            "class": "form-control",
        }
    )
    course = wtforms.SelectField(
        label="学科",
        choices=course_list,
        render_kw={
            "class": "form-control",
        }
    )
    submit = wtforms.SubmitField(
        label="提交",
        render_kw={
            "class": "btn btn-primary btn-block",
        },
    )
Ejemplo n.º 24
0
class AddProduct(flask_wtf.FlaskForm):

    name = wtforms.StringField("Name",
                               validators=[vid.DataRequired()],
                               render_kw={"placeholder": "Name of product"})
    price = wtforms.IntegerField("price",
                                 validators=[vid.DataRequired()],
                                 render_kw={"placeholder": "Price of product"})
    des = wtforms.StringField(
        "Description", render_kw={"placeholder": "Description of product"})
    image = wtforms.StringField(
        "url_image",
        validators=[vid.DataRequired()],
        render_kw={"placeholder": "URl image for product"})
    kind = wtforms.IntegerField(
        "kind",
        validators=[vid.DataRequired()],
        render_kw={"placeholder": "1-ice,2-hot,3-fruit"})
    Sumbmit = wtforms.SubmitField("Sign up")
Ejemplo n.º 25
0
class AdminClassVideo(FlaskForm):
    name = wtforms.SelectField("Add Videos to This Virtual Class")

    video = FileField("New Presentation Video",
                      validators=[
                          FileAllowed(videos, 'Videos only!'),
                          FileRequired('File was empty!')
                      ])
    sequ_nb = wtforms.IntegerField("Enter the Video Sequence Number")
    submit = wtforms.SubmitField("Add Video")
Ejemplo n.º 26
0
class NewWeightEntry(FlaskForm):
    # nouvelle_entree_poids.html
    titre = lazy_gettext("Nouvelle mesure de poids")
    # date_heure = DateTimeLocalField("Date et heure", default=datetime.datetime.now())
    masse = wtforms.IntegerField(lazy_gettext("Masse : "), validators=[DataRequired(
        lazy_gettext("Ce champ est obligatoire."))])
    unite_masse = sex = wtforms.RadioField(lazy_gettext("Unité de masse"), validators=[], choices=[
        (UniteMasse.kg.name, UniteMasse.kg.name, ),
    ], default=UniteMasse.kg.name)
    enregistrement_poids = wtforms.SubmitField(lazy_gettext("Enregistrer poids"))
class ReservationForm(FlaskForm):
    reservation_date = f.DateField(
        'date',
        validators=[DataRequired(),
                    DateRange(min=datetime.now().date())],
        format='%Y-%m-%d',
        render_kw={"type": "date"})
    reservation_time = f.TimeField('time', validators=[DataRequired()])
    seats = f.IntegerField('seats', validators=[DataRequired()])
    display = ['reservation_date', 'reservation_time', 'seats']
Ejemplo n.º 28
0
class PreWTFormsBase(djburger.validators.bases.WTForms):
    name = wtforms.StringField('Name', [
        wtforms.validators.DataRequired(),
    ])
    mail = wtforms.StringField('E-Mail', [
        wtforms.validators.DataRequired(), wtforms.validators.Email(),
    ])
    count = wtforms.IntegerField('Count', [
        wtforms.validators.DataRequired(), wtforms.validators.NumberRange(min=0),
    ])
Ejemplo n.º 29
0
class PreWTFormsWrapped(wtforms.Form):
    name = wtforms.StringField('Name', [
        wtforms.validators.DataRequired(),
    ])
    mail = wtforms.StringField('E-Mail', [
        wtforms.validators.DataRequired(), wtforms.validators.Email(),
    ])
    count = wtforms.IntegerField('Count', [
        wtforms.validators.DataRequired(), wtforms.validators.NumberRange(min=0),
    ])
Ejemplo n.º 30
0
class ItemsForm(FlaskForm):
    name = wtf.StringField("Nome", [wtf.validators.DataRequired()])
    image = wtf.FileField("Image", [wtf.validators.DataRequired()])
    price = wtf.FloatField("Preço", [wtf.validators.DataRequired()])
    quantity = wtf.IntegerField("Quantidade", [wtf.validators.DataRequired()])
    description = wtf.TextAreaField("Descrição",
                                    [wtf.validators.DataRequired()])
    store_id = QuerySelectField('ID da loja',
                                query_factory=lambda: Store.query.all())
    available = wtf.BooleanField("Disponivel", default=True)