class ClassForm(FlaskForm): name = fields.StringField( 'Name', validators=[validators.InputRequired(), validators.Length(min=3)]) description = fields.StringField('Description', validators=[validators.InputRequired()], widget=widgets.TextArea()) code = fields.StringField('Code') course = fields.SelectField('Course', validators=[validators.InputRequired()]) limited = fields.BooleanField('Limited Class', default=True) limited_enrollment = fields.FormField(LimitedEnrollmentForm) started_date = fields.DateField( 'Started Date', format='%Y-%m-%d', widget=widgets.TextInput() ) ended_date = fields.DateField( 'Ended Data', format='%Y-%m-%d', widget=widgets.TextInput(), ) # owner = fields.SelectMultipleField('Owner') # contributors = fields.SelectMultipleField('Contributors') tags = TagListField('Tags', validators=[validators.InputRequired(), validators.Length(min=3)])
class AddPageForm(Form): date_added = fields.DateField('Publish On:',format="%m-%d-%Y",widget=DateWidget()) date_end = fields.DateField('Expire On:',format="%m-%d-%Y",validators=[validators.Optional()],widget=DateWidget()) name = fields.StringField('Page Name',validators=[validators.InputRequired()]) description = fields.TextAreaField('Description',validators=[validators.Optional()]) slug = fields.StringField('Page Slug',validators=[validators.InputRequired()]) short_url = fields.StringField('Url',validators=[validators.Optional()]) title = fields.StringField('Page Title',validators=[validators.InputRequired()]) add_to_nav = fields.BooleanField('Add to Navbar') add_sidebar = fields.BooleanField('Add Sidebar') visible = fields.SelectField(choices=((1,'Publish'),(0,'Draft'))) meta_title = fields.StringField('Meta Title',validators=[validators.InputRequired()]) content = CodeMirrorField('Content',language='xml',config={'lineNumbers':'true'}) template = fields.FormField(BaseTemplateForm,label="Template",separator='_') blocks = fields.SelectMultipleField(label="blocks",choices=[('a','a'),('b','b'),('c','c')]) category = QuerySelectField('category') tags = TagField('Tags') use_base_template = fields.BooleanField('Use Base Template') base_template = fields.SelectField( 'base template',validators=[ validators.InputRequired() ],choices=[ (x,x) for x in sorted(get_page_templates()) \ if not x.startswith('_') and not \ x.startswith('.') and x.endswith('.html') ] ) submit = fields.SubmitField('Save')
class MasterDataForm(BaseForm): pg_name = fields.StringField(('Name'), [validators.Required(), validators.Length(max=FIELD_MAXLENGTH, message=( "Field cannot be longer than %(max)d characters."))]) sport = fields.SelectField(u'Sport', choices=[(key, value) for key, value in constants.SPORTS_LIST.items()], default='others') locality_id = fields.HiddenField() business_id = fields.HiddenField() address = fields.FormField(Address) contact_pg = fields.FormField(BasicContact) public = fields.SelectField(u'Open for Public?', choices=[(key, value) for key, value in constants.OPEN_DICT.items()], default=0) booking_days = fields.SelectField(u'Public Booking Day(s)', choices=[(key, value) for key, value in constants.DAYS_LIST.items()], default='sunday') regular_time = fields.StringField('Regular Timings') ground_type = fields.SelectField(u'Ground Type', choices=[(key, value) for key, value in constants.GROUND_TYPE.items()], default='both') surface_type = fields.StringField('Types of Surfaces') tot_fields = fields.IntegerField(('No.of Courts'), [validators.Optional()]) ground_rules = fields.TextAreaField('Ground Rules') tc_name = fields.StringField(('Club Name'), [validators.Optional(), validators.Length(max=FIELD_MAXLENGTH, message=( "Field cannot be longer than %(max)d characters."))]) tc_open_days = fields.SelectField(u'Club Open Day(s)', choices=[(key, value) for key, value in constants.DAYS_LIST.items()], default='sunday') age_limit = fields.StringField('Age Limits') tc_participants = fields.IntegerField(('No.of Participants'), [validators.Optional()]) contact_tc = fields.FormField(BasicContact) se_name = fields.StringField(('Event Name'), [validators.Length(max=FIELD_MAXLENGTH, message=( "Field cannot be longer than %(max)d characters."))]) start_datetime = fields.DateField(('Start Date'), [validators.Optional()]) end_datetime = fields.DateField(('End Date'), [validators.Optional()]) contact_se = fields.FormField(BasicContact) pass
class SearchForm(Form): date_choice = fields.SelectField(u"Quelle date", default="received", choices=(('sent', u"Date d'envoi"), ('received', u"Date de réception") ) ) start_date = fields.DateField(u"Du : ", format='%d/%m/%Y', #widget=BootstrapDatePickerWidget(), validators=[validators.Optional()]) end_date = fields.DateField(u"Au : ", format='%d/%m/%Y', #widget=BootstrapDatePickerWidget(), validators=[validators.Optional()]) sender = fields.StringField(label=u"Expéditeur") rcpt = fields.StringField(label=u"Destinataire") subject = fields.StringField(label=u"Sujet") client_address = fields.StringField(label=u"Adresse IP") country = fields.SelectMultipleField(label=u"Pays", #choices=[('',u"Choisissez un pays")] + list(countries.COUNTRIES), choices=countries.COUNTRIES, validators=[validators.Optional()]) queue = fields.SelectField(label=u"Queue", coerce=int, choices=constants.MESSAGE_QUEUE_CHOICES, validators=[validators.Optional()])
class ProjectForm(FlaskForm): project_name = fields.StringField('project name', validators=[DataRequired()], render_kw={ 'class': 'form-control mt-2', 'placeholder': 'Project name', }) start_date = fields.DateField( 'start date', validators=[DataRequired("Please check your format.")], render_kw={ 'class': 'form-control mt-2', 'placeholder': 'Start date (yyyy-mm-dd)', }) expected_end_date = fields.DateField( 'expected end date', validators=[DataRequired("Please check your format.")], render_kw={ 'class': 'form-control mt-2', 'placeholder': 'Expected end date (yyyy-mm-dd)', }) project_description = fields.StringField('Description', render_kw={ 'class': 'form-control mt-2', 'placeholder': 'Project description', }) submit = fields.SubmitField('Create', render_kw={'class': 'form-control mt-2'})
def get_edit_form(self): form_ = super().get_edit_form() form_.due_date = fields.DateField('* due date', [], widget=DatePickerWidget(), render_kw={}) form_.start_date = fields.DateField('* start date', [], widget=DatePickerWidget(), render_kw={}) return form_
class RequestForm(FlaskForm): # object data obj_name = fields.StringField('Object Name', [validators.input_required()]) obj_ra = fields.StringField('RA', [validators.Optional()]) obj_dec = fields.StringField('DEC', [validators.Optional()]) typedesig = fields.SelectField('object type', [validators.input_required()], coerce=str, choices=[('f', 'fixed'), ('v', 'periodic fixed'), ('e', 'heliocentric elliptical'), ('h', 'heliocentric hyperbolic'), ('p', 'heliocentric parabolic'), ('E', 'geocentric elliptical')]) # required and optional fields for requests allocation = fields.SelectField('allocation', [validators.data_required()], coerce=int, choices=[]) priority = fields.FloatField('priority', [validators.input_required()]) filters_op = fields.SelectField('filters', [validators.input_required()], coerce=str, choices=[(' 1, 1, 1, 1}', 'u-g-r-i'), (' 0, 1, 1, 1}', "g-r-i")]) seq_repeats = fields.IntegerField('# of repeats', default=1) ifu = fields.BooleanField('IFU image', [validators.Optional()]) ab = fields.BooleanField('A B pair', [validators.Optional()]) cadence = fields.FloatField('cadence', default=None, validators=(validators.Optional(), )) min_moon_dist = fields.FloatField( 'minimum moon distance (degrees)', validators=(validators.Optional(), validators.number_range(0., 180.))) max_moon_illum = fields.FloatField( 'maximum moon illumination (fractional)', validators=(validators.Optional(), validators.number_range(0., 1.))) max_cloud_cover = fields.FloatField( 'maximum cloud cover (fractional)', validators=(validators.Optional(), validators.number_range(0., 1.))) phasesamples = fields.FloatField('samples per period', default=None, validators=(validators.Optional(), )) inidate = fields.DateField('start date (Y-m-d)', validators=[validators.input_required()], format='%Y-%m-%d') enddate = fields.DateField('end date (Y-m-d)', validators=[validators.input_required()], format='%Y-%m-%d') #elliptical = fields.FormField(HeliocentricEllipticalForm, validators=(validators.Optional(),)) #hyperbolic = fields.FormField(HeliocentricHyperbolicForm, validators=(validators.Optional(),)) #parabolic = fields.FormField(HeliocentricParabolicForm, validators=(validators.Optional(),)) #satellite = fields.FormField(EarthSatelliteForm, validators=(validators.Optional(),)) submit_req = fields.SubmitField('submit request')
class oldadminForm(Form): texto = fields.TextField('Username', [validators.Length(max=40)]) addedDate = fields.DateField('%Y-%m-%d') updatedDate = fields.DateField('%Y-%m-%d') link = fields.TextField('Link') title = fields.TextField('Title') description = fields.TextField('Description') #videos = db.StringListProperty() # a string list to save videos videos = fields.TextField('Videos') details = fields.TextField('Details') picture = fields.TextField('Picture') update_picture = fields.SubmitField("update_picture")
class ObservationForm(FlaskForm): observation_date = fields.DateField(default=date.today) people_available = fields.IntegerField( validators=[ validators.NumberRange(min=0), ] )
def convert_DateProperty(model, prop, kwargs): """Returns a form field for a ``db.DateProperty``.""" if prop._auto_now or prop._auto_now_add: return None kwargs.setdefault('description', 'In YYYY-MM-DD format.') return f.DateField(format='%Y-%m-%d', **kwargs)
class PostSurveyDetailsForm(FlaskForm): recaptcha = RecaptchaField() lead_surveyor = \ fields.StringField('Lead surveyor*', validators=[DataRequired(), Length(max=50)]) assistant_surveyor = \ fields.StringField('Assistant surveyor*', validators=[DataRequired(), Length(max=50)]) survey_date = \ fields.DateField('Survey date (dd/mm/yyyy)*', format='%d/%m/%Y', validators=[DataRequired(), validate_date], widget=DatePickerWidget()) external_temperature = \ fields.DecimalField('External temperature (C)', validators=[Optional()]) camera_kit_number = \ fields.TextField('Camera kit number*', validators=[DataRequired(), Length(max=25)]) faults_identified = \ fields.TextAreaField('Faults identified', validators=[Optional()]) recommendations = \ fields.TextAreaField('Recommendations', validators=[Optional()]) notes = \ fields.TextAreaField('Notes (any other relevant information)', validators=[Optional()])
class VisitForm(Form): browser = fields.StringField() date = fields.DateField(default=dt.now) event = fields.StringField() url = fields.StringField(validators=[Required()]) ip_address = fields.StringField() site = QuerySelectField(validators=[Required()], query_factory=lambda: Site.query.all())
class SearchPatientForm(Form): search_patient_first_name = fields.TextField(_('First Name')) search_patient_last_name = fields.TextField(_('Last Name')) search_patient_dob = fields.DateField(_('Date of birth'), [Optional()]) search_patient_ssn = fields.TextField( _('Social security number'), [Optional(), validators.Length(max=11), validate_ssn])
class HeliocentricEllipticalForm(FlaskForm): class Meta: csrf = False i = fields.FloatField('inclination (degrees)', validators=[validators.input_required()]) O = fields.FloatField('longitude of ascending node (degrees)', validators=[validators.input_required()]) o = fields.FloatField('argument of perihelion (degrees)', validators=[validators.input_required()]) a = fields.FloatField('mean distance (AU)', validators=[validators.input_required()]) n = fields.FloatField('mean daily motion (degrees/day)', validators=[validators.input_required()]) e = fields.FloatField('eccentricity', validators=[validators.input_required()]) M = fields.FloatField('mean anomaly', validators=[validators.input_required()]) E = fields.DateField('epoch date (time of mean anomaly) (Y-m-d)', validators=[validators.input_required()], format='%Y-%m-%d') D = fields.FloatField('equinox year', validators=[validators.input_required()]) M1 = fields.FloatField('magnitude model first component', validators=[validators.input_required()]) M2 = fields.FloatField('magnitude model second component', validators=[validators.input_required()])
class VisitForm(Form): browser = fields.StringField() date = fields.DateField() event = fields.StringField() url = fields.StringField() ip_address = fields.StringField("IP Address") site = QuerySelectField(query_factory=lambda: Site.query.all())
def convert_DateProperty(model, prop, kwargs): """Returns a form field for a ``db.DateProperty``.""" if prop.auto_now or prop.auto_now_add: return None kwargs.setdefault('format', '%Y-%m-%d') return f.DateField(**kwargs)
class bs_khach_hangForm(form.Form): ten_khach_hang = fields.StringField(validators=[validators.required()]) phai = fields.BooleanField() ngay_sinh = fields.DateField() dia_chi = fields.StringField(validators=[validators.required()]) dien_thoai = fields.StringField(validators=[validators.required()]) email = fields.StringField(validators=[validators.required()]) ngay_mua = datetime.now() ghi_chu = CKEditorField(validators=[validators.required()])
class EventForm(BaseForm): name = fields.StringField(('Name'), [validators.Required(), validators.Length(max=FIELD_MAXLENGTH, message=( "Field cannot be longer than %(max)d characters."))]) sport = fields.SelectField(u'Sport', choices=[(key, value) for key, value in constants.SPORTS_LIST.items()], default='others') caption = fields.TextAreaField('Caption') city = fields.StringField(('City'), [validators.Required(), validators.Length(max=FIELD_MAXLENGTH, message=( "Field cannot be longer than %(max)d characters."))]) description = fields.TextAreaField('Description') featured = fields.BooleanField('Featured') media = fields.FieldList(fields.FormField(MediaForm), min_entries=1) business_id = fields.HiddenField() start_datetime = fields.DateField('Start Date', [validators.Required()]) end_datetime = fields.DateField('End Date', [validators.Required()]) address = fields.FormField(EventAddress) contact_info = fields.FormField(ContactInfo) locality_id = fields.HiddenField() #custom_info = fields.FieldList(fields.FormField(CustomInfo), min_entries=2) pass
def conv_DateField(self, model, field, kwargs): def time_only(obj): try: return obj.date() except AttributeError: return obj kwargs['filters'].append(time_only) return f.DateField(widget=form.DatePickerWidget(), **kwargs)
class HouseholdMemberForm(NoCsrfForm): full_name = fields.TextField( _('Full name'), [Optional(), validators.Length(max=64)]) dob = fields.DateField(_('Date of birth'), validators=[Optional()]) ssn = fields.TextField( _('Social security number'), [Optional(), validators.Length(max=11), validate_ssn]) relationship = fields.TextField( _('Relationship to patient'), [Optional(), validators.Length(max=32)])
class EmployerForm(NoCsrfForm): employer_name = fields.TextField( _('Employer name'), [Optional(), validators.Length(max=64)]) phone_number = fields.TextField( _('Phone number'), [Optional(), validators.Length(max=32), validate_phone_number]) employee = fields.SelectField(_('Whose job?'), choices=CONSTANTS.EMPLOYEE_CHOICES, default=_('Patient')) start_date = fields.DateField(_('Start date'), validators=[Optional()])
class TaskFrom(FlaskForm): start_date = fields.DateField('Start date', validators=[DataRequired()], render_kw={ 'class': 'form-control mt-2', 'placeholder': 'Start date', }) end_date = fields.DateField('End date', validators=[DataRequired()], render_kw={ 'class': 'form-control mt-2', 'placeholder': 'End date', }) description = fields.StringField('Description', render_kw={ 'class': 'form-control mt-2', 'placeholder': 'Project description', }) submit = fields.SubmitField('Add', render_kw={'class': 'form-control mt-2'})
class EditProfileForm(Form): first_name = fields.StringField('First Name') last_name = fields.StringField('Last Name') email = fields.StringField( 'Email Address', validators=[validators.Required(), validators.Email()]) phone_number = fields.StringField('phone number') birth_date = fields.DateField('Birth Date', format="%m-%d-%Y", validators=[validators.Optional()], widget=DateWidget())
class Form_hoa_don(FlaskForm): ma_don_hang = fields.StringField('Mã đơn hàng:') kenh_ban = fields.SelectField( choices=[('Sendo', 'Sendo'), ('Shopee', 'Shopee'), ( 'Lazada', 'Lazada'), ('Khác', 'Khác'), ('Người quen', 'Người quen'), ('Facebook', 'Facebook'), ('Zalo', 'Zalo')]) ho_ten = fields.StringField('Tên khách hàng:') ngay_tao = fields.DateField('Ngày:', widget=DateInput()) dia_chi = fields.StringField('Địa chỉ:') so_dien_thoai = fields.StringField('Số điện thoại:') giam_gia = fields.FloatField('Giảm giá:') nha_van_chuyen = fields.SelectField('Hãng ship:', choices=[('GHN', 'GHN'), ('Viettel', 'Viettel Post'), ('VNC', 'VNC'), ('NJV', 'Ninja Van'), ('LEX', 'Lazada Express'), ('VNPost', 'VN Post'), ('Others', 'Khác')]) ma_van_don = fields.StringField('Mã vận đơn:') phi_van_chuyen = fields.FloatField('Phí ship:') ghi_chu = fields.TextField('Ghi chú:') submit = fields.SubmitField('Kế tiếp') def tao_khach_hang(self): khach_hang = Khach_hang() khach_hang.ten_khach_hang = self.ho_ten.data.strip().lower() khach_hang.dia_chi = self.dia_chi.data.strip().lower() khach_hang.dien_thoai = self.so_dien_thoai.data.strip() db.session.add(khach_hang) db.session.commit() return khach_hang.get_id() def tao_hoa_don(self, ngay_tao, ma_kh): hoa_don = Hoa_don() hoa_don.ma_hoa_don_kenh_ban = self.ma_don_hang.data.strip() hoa_don.ngay_tao_hoa_don = ngay_tao hoa_don.ma_khach_hang = ma_kh hoa_don.tong_tien = 0 hoa_don.kenh_ban = self.kenh_ban.data hoa_don.nha_van_chuyen = self.nha_van_chuyen.data hoa_don.ma_van_don = self.ma_van_don.data.strip() hoa_don.phi_van_chuyen = self.phi_van_chuyen.data hoa_don.ghi_chu = self.ghi_chu.data hoa_don.giam_gia = self.giam_gia.data db.session.add(hoa_don) db.session.commit() return hoa_don.get_id()
class UserProfileForm(BaseForm): name = fields.StringField(('Name'), [validators.Required(), validators.Length(max=FIELD_MAXLENGTH, message=( "Field cannot be longer than %(max)d characters."))]) email = fields.StringField(('Email'), [validators.Required(), validators.Length(max=FIELD_MAXLENGTH*2, message=( "Field cannot be longer than %(max)d characters."))]) image = fields.FileField('Image') dob = fields.DateField('Date of Birth', [validators.Required()]) gender = fields.SelectField(u'Gender', choices=[(key, value) for key, value in constants.GENDER_DICT.items()], default='male') profession = fields.SelectField(u'Profession', choices=[(key, value) for key, value in constants.PROFESSION_DICT.items()], default='') phone = fields.StringField(('Phone'), [validators.Length(max=FIELD_MAXLENGTH, message=( "Field cannot be longer than %(max)d characters."))]) locality = fields.StringField(('Area/Locality'), [validators.Length(max=NAME_FILED_MAXLENGTH, message=( "Field cannot be longer than %(max)d characters."))]) locality_id = fields.HiddenField() i_want = fields.SelectField(u'I want to', choices=[(key, value) for key, value in constants.WANT_DICT.items()], default='train') sport = fields.SelectField(u'Favorite Sport', choices=[(key, value) for key, value in constants.SPORTS_LIST.items()], default='cricket') #sport = fields.StringField(('Favorite Sport'), [validators.Optional()]) pass
class PictureForm(Form): upload = FileField('Picture', validators=[ FileRequired(), FileAllowed(imagefiles, 'Images only') ]) title = fields.StringField('Title (optional)') picture_description = fields.TextAreaField( 'Picture description (shows before picture)', validators=[DataRequired()] ) date_taken = fields.DateField( 'Date picture taken (optional)', format='%m/%d/%Y', validators=[Optional()] ) place_taken = fields.TextAreaField( 'Where was this taken? (optional)', validators=[Optional()] )
class BaseProductForm(Form): product_id = fields.StringField(_name='id') active = fields.BooleanField() attributes = fields.FieldList(fields.StringField(), min_entries=1, max_entries=5) caption = fields.StringField() deactivate_on = fields.DateField() description = fields.TextAreaField() images = fields.MultipleFileField() livemode = fields.BooleanField() product_metadata = fields.TextAreaField(_name='metadata') name = fields.StringField() package_dimensions = fields.FormField(PackageDimensionsForm) shippable = fields.BooleanField() product_type = MyRadioField(choices=[('service', 'service'), ('good', 'good')]) url = fields.StringField()
class HeliocentricParabolicForm(FlaskForm): class Meta: csrf = False T = fields.DateField('date of ephoch of perihelion (Y-m-d)', validators=[validators.input_required()], format='%Y-%m-%d') i = fields.FloatField('inclination (degrees)', validators=[validators.input_required()]) o = fields.FloatField('argument of perihelion (degrees)', validators=[validators.input_required()]) q = fields.FloatField('perihelion distance (AU)', validators=[validators.input_required()]) O = fields.FloatField('longitude of ascending node (degrees)', validators=[validators.input_required()]) D = fields.FloatField('equinox year', validators=[validators.input_required()]) M1 = fields.FloatField('magnitude model first component', validators=[validators.input_required()]) M2 = fields.FloatField('magnitude model second component', validators=[validators.input_required()])
class SelectDate(FlaskForm): """ Pick a date for service timetable. """ class Meta(object): """ Disable CSRF as this form uses GET. """ csrf = False date = fields.DateField("date") _start = None _end = None @property def date_long_form(self): if self.date.data is not None: return _date_long_form(self.date.data) else: return None def set_dates(self, service): """ Sets starting and ending dates from a service's patterns for validation. """ self._start = min(p.date_start for p in service.patterns) if all(p.date_end is not None for p in service.patterns): self._end = max(p.date_end for p in service.patterns) else: self._end = None def validate_date(self, field): """ Validates date based on starting and ending dates given. """ if field.data is None: return if self._start is not None and field.data < self._start: raise validators.ValidationError( f"Timetable data for this service is available from " f"{_date_long_form(self._start)}.") if self._end is not None and field.data > self._end: raise validators.ValidationError( f"Timetable data for this service is available up to " f"{_date_long_form(self._end)}.")
class SalesOrder(Form): subdomain = fields.StringField( 'Sub Domain', [validators.InputRequired(), validators.Length(max=100)]) volume = fields.IntegerField('Volume') ret_days = fields.IntegerField('Retaining Days') plan_type = fields.StringField('Plan Type') tier_name = fields.StringField('Tier Name') billing_channel = fields.StringField('Billing Channel') effective_date = fields.DateField('Effective Date', [validators.InputRequired()]) order_id = fields.HiddenField(' ') stateind = fields.HiddenField(' ') def validate(self): rv = Form.validate(self) if not rv: raise ValidationError('Did not pass edits') # if not validate(self.effective_date.data): # raise ValidationError('Date is not in the right format') return True