class RegioForm(FlaskForm): regio_sel = SelectField("Regio") dat_vanaf = DateField("Vanaf", format="%Y-%m-%d") dat_tm = DateField("Tot en Met", format="%Y-%m-%d") submit = SubmitField('Laat gegevens zien')
class DateForm(FlaskForm): """Allows a user to change the date of the visible to do list""" datepicker = DateField(validators=[DataRequired()], format="%d-%m-%Y") submit = SubmitField("Change Date")
class NamespaceEdits(Metric): """ This class implements namespace edits logic. An instance of the class is callable and will compute the number of edits for each user in a passed-in list. This sql query was used as a starting point for the sqlalchemy query: select r.rev_user, r.count(*) from revision r inner join page p on p.page_id = r.rev_page where r.rev_timestamp between [start] and [end] and r.rev_user in ([parameterized]) and p.page_namespace in ([parameterized]) group by rev_user """ show_in_ui = True id = 'edits' label = 'Edits' description = ( 'Compute the number of edits in a specific' 'namespace of a mediawiki project' ) start_date = DateField(default=thirty_days_ago) end_date = DateField(default=today) namespaces = CommaSeparatedIntegerListField( None, [Required()], default='0', description='0, 2, 4, etc.', ) def __call__(self, user_ids, session): """ Parameters: user_ids : list of mediawiki user ids to find edit for session : sqlalchemy session open on a mediawiki database Returns: dictionary from user ids to the number of edit found. """ # get the dates to act properly in any environment start_date = self.start_date.data end_date = self.end_date.data if session.bind.name == 'mysql': start_date = mediawiki_date(self.start_date) end_date = mediawiki_date(self.end_date) # directly construct dict from query results revisions_by_user = dict( session .query(Revision.rev_user, func.count(Revision.rev_id)) .join(Page) .filter(Page.page_namespace.in_(self.namespaces.data)) .filter(Revision.rev_user.in_(user_ids)) .filter(Revision.rev_timestamp >= start_date) .filter(Revision.rev_timestamp <= end_date) .group_by(Revision.rev_user) .all() ) return { user_id: {'edits': revisions_by_user.get(user_id, 0)} for user_id in user_ids }
class Edit_article(Form): id = HiddenField('id') title = StringField('Title') author = StringField('Author') date = DateField('Date')
class AddMeetingForm(FlaskForm): date = DateField('Date of Meeting', validators=[DataRequired()], format='%Y-%m-%d') description = TextAreaField('Meeting', validators=[DataRequired()]) submit = SubmitField('Add')
class ProductGroupForm(Form): name = StringField('Name') type = StringField('Type') capacity_max = IntegerField('Maximum to sell (Optional)', [Optional()]) expires = DateField('Expiry Date (Optional)', [Optional()])
class DobForm(Form): # dateofbirth = StringField('Dob', [validators.Length(min=9, max=20)]) dateofbirth = DateField('Dob', format='%Y-%m-%d')
class CreateForm(FlaskForm): first_name = StringField('Имя', validators=[]) last_name = StringField('Фамилия', validators=[]) patronymic = StringField('Отчество', validators=[]) date_of_birth = DateField('Дата рождения', validators=[]) photo = StringField('Фотография', validators=[])
class NAndTwoDatesForm(FlaskForm): n = DecimalField(validators=[InputRequired()]) date1 = DateField(validators=[DataRequired()]) date2 = DateField(validators=[DataRequired()]) submit = SubmitField('Show')
class RedigerForestilling(FlaskForm): forestilling_navn = StringField('<strong>Forestillingens navn</strong>', validators=[DataRequired()]) premiere = DateField('<b>premieredato </b> <small>årår-mm-dd</small>') prod_nr = IntegerField('<b>prod.nr</b>') submit = SubmitField('Oppdater!')
class GenerateForm(FlaskForm): excels = SelectMultipleField('File(s) to Generate', choices=[('1', '资金期限表'), ('2', 'G25'), ('3', 'Q02')], validators=[DataRequired()], coerce=int) generatedate = DateField(u'生成日期', validators=[DataRequired()], format='%Y-%m-%d') submit = SubmitField('Generate')
class CommentForm(Form): date_reported = DateField('Date Reported', format="%Y-%m-%d") body = TextAreaField('Message') submit = SubmitField('Submit Comment')
class SystemSetupForm(SystemSetupTournamentForm): def __init__(self, **kwargs): super().__init__(**kwargs) self.first_time_ask.label.text = f"Will you ask dancers if this is their first time attending " \ f"an {g.sc.tournament}?" number_of_teamcaptains = SelectField( "What is number of teamcaptains that a team can have? " "(Remember, teamcaptains are guaranteed entry to the tournament)", choices=[(x, x) for x in [1, 2]], default=1, coerce=int) additional_teamcaptain_large_teams = SelectField( "Do you wish to let large teams have an additional teamcaptain?", choices=[(k, v) for k, v in YN.items()]) additional_teamcaptain_large_teams_cutoff = IntegerField( "How many dancers does a team need at least to get an " "additional teamcaptain?", validators=[NumberRange(0)], default=20) beginners_level = SelectField(ASK_LEVEL.format(level=BEGINNERS), choices=[(k, v) for k, v in YN.items()]) closed_level = SelectField(ASK_LEVEL.format(level=CLOSED), choices=[(k, v) for k, v in YN.items()]) breitensport_obliged_blind_date = SelectField( f"Is there a cutoff where {BREITENSPORT} dancers must Blind Date?", choices=[(k, v) for k, v in YN.items()]) salsa_competition = SelectField(ASK_COMPETITION.format(comp=SALSA), choices=[(k, v) for k, v in YN.items()]) polka_competition = SelectField(ASK_COMPETITION.format(comp=POLKA), choices=[(k, v) for k, v in YN.items()]) student_price = IntegerField( f"What is the admission fee price for a {STUDENT}? (in Euro cents)", validators=[NumberRange(0)], default=DEFAULT_STUDENT_PRICE) non_student_price = IntegerField( f"What is the admission fee price for a {NON_STUDENT}? (in Euro cents)", validators=[NumberRange(0)], default=DEFAULT_NON_STUDENT_PRICE) phd_student_category = SelectField( f"Will there be a separate pricing category for PhD students?", choices=[(k, v) for k, v in YN.items()]) phd_student_price = IntegerField( f"What is the admission fee price for a {PHD_STUDENT}? (in Euro cents)", validators=[NumberRange(0)], default=DEFAULT_PHD_STUDENT_PRICE) first_time_ask = SelectField("", choices=[(k, v) for k, v in YN.items()]) ask_adult = SelectField( f"Will you ask dancers if they are at least 18 years old at the time of the tournament?", choices=[(k, v) for k, v in YN.items()]) ask_diet_allergies = SelectField( "Will you ask dancers about their allergies and dietary restrictions?", choices=[(k, v) for k, v in YN.items()]) ask_volunteer = SelectField( "Will you ask dancers if they want to volunteer in general?", choices=[(k, v) for k, v in YN.items()]) ask_first_aid = SelectField( "Will you ask dancers if they want to volunteer as a First Aid Officer?", choices=[(k, v) for k, v in YN.items()]) ask_emergency_response_officer = SelectField( "Will you ask dancers if they want to volunteer as an Emergency " "Response Officer?", choices=[(k, v) for k, v in YN.items()]) ask_adjudicator_highest_achieved_level = SelectField( "Will you ask volunteers that wish to be an adjudicator " "what their highest achieved level is?", choices=[(k, v) for k, v in YN.items()]) ask_adjudicator_certification = SelectField( "Will you ask volunteers that wish to be an adjudicator " "if they have a certification to adjudicate?", choices=[(k, v) for k, v in YN.items()]) finances_refund = SelectField( "Will you be giving refunds to dancers that cancel their registration?", choices=[(k, v) for k, v in YN.items()]) finances_refund_percentage = IntegerField( f"What is the refund percentage?", validators=[NumberRange(0, 100)], default=70) finances_refund_date = DateField( "What is the date past which there will not be any more refunds?", validators=[DataRequired()], default=datetime.datetime.now().date(), render_kw={ "type": "date", "max": "2099-12-30", "min": "2018-03-02" }) main_page_link = StringField(f"What is the main domain of your website?", render_kw=WEB_PAGE_PLACEHOLDER) terms_and_conditions_link = StringField( f"What is the web page that the terms and conditions for the tournament?", render_kw=WEB_PAGE_PLACEHOLDER) merchandise_link = StringField( f"What is the web page that shows the merchandise (if any)?", render_kw=WEB_PAGE_PLACEHOLDER)
class EventForm(Form): start_date = DateField('start_date') end_date = DateField('end_date') event_name = StringField('event_name') event_type = StringField('event_type') event_description = StringField('event_description')
class Fields(object): notnull = u'该项输入不能为空' def get_len_str(min=None, max=None): if min and not max: return u"该项输入的最小长度必须是%d" % min elif max and not min: return u"该项输入的最大长度必须是%d" % max else: return u'该输入的长度必须大于%d,小于%d' % (min, max) username = StringField(label=u'请输入您的用户名', validators=[ DataRequired(message=notnull), Length(min=0, max=15, message=get_len_str(0, 16)), ]) password = PasswordField(label=u'请输入密码', description=u'请输入密码', validators=[ DataRequired(message=notnull), Length(min=0, max=60, message=get_len_str(min=0, max=61)), ]) confirm_password = PasswordField(label=u'请确认密码', description=u'请确认密码', validators=[ DataRequired(message=notnull), Length(min=5, max=60, message=get_len_str(min=4, max=61)), EqualTo(u'confirm_password', message=u'两次输入的密码不一致'), ]) student_amount = StringField(label=u'请输入您指导的学生数量', validators=[Regexp(re.compile(r"\d"))]) is_active = RadioField(label=u'是否激活账户', coerce=int, choices=[(0, u'否'), (1, u'是')], default=0, widget=BSListWidget()) notice = TextAreaField(label=u'请填写对学生的通知') attachment = StringField( label=u'添加附加', validators=[Length(min=0, max=32, message=get_len_str(min=0, max=33))], ) is_comment_teacher = RadioField(label=u'是否有评价功能', coerce=int, choices=[(0, u'否'), (1, u'是')], default=0, widget=BSListWidget()) student_name = StringField(label=u'请输入您的姓名', description='', validators=[ DataRequired(message=notnull), Length(min=0, max=15, message=get_len_str(0, 16)), ]) sex = RadioField(label=u'您的性别', coerce=int, choices=[(0, u'男'), (1, u'女')], default=0, widget=BSListWidget()) user_type = RadioField(label=u'您是', coerce=str, choices=[(u'student', u'学生'), (u'teacher', u'老师'), (u'admin', u'管理员')], default=u'student', widget=BSListWidget()) mark = StringField(label=u'您的分数', default=0, validators=[ DataRequired(message=notnull), Length(min=0, max=100, message=get_len_str(0, 101)), ]) comment = TextAreaField(label=u'请填写您对学生的评语', validators=[ Length(min=0, max=128, message=get_len_str(0, 129)), ]) title = StringField(label=u'请填写毕业设计的题目', validators=[ Length(min=0, max=128, message=get_len_str(0, 129)), ]) description = TextAreaField(label=u'请填写毕业设计的描述') task_start_date = DateField(label=u'开始时间') task_end_date = DateField(label=u'结束时间') comment_start_date = DateField(label=u'开始时间') comment_end_date = DateField(label=u'结束时间')
class TwoDatesForm(FlaskForm): date1 = DateField(validators=[DataRequired()]) date2 = DateField(validators=[DataRequired()]) submit = SubmitField('Show')
class ApplicationForm(FlaskForm): Emaila = StringField("Email yawe", validators=[DataRequired()], render_kw={"placeholder": "Injizamo Izina ribanza"}) firstNamea = StringField( "Izina ribanza", validators=[DataRequired()], render_kw={"placeholder": "Injizamo Izina ribanza"}) secondNamea = StringField( "Izina rikurikira", validators=[DataRequired()], render_kw={"placeholder": "Injizamo Izina rikurikira"}) othersa = StringField("Ayandi (Singombwa)", render_kw={"placeholder": "Ayandi (Singombwa)"}) Districta = StringField("Akarere", validators=[DataRequired()], render_kw={"placeholder": "Injizamo Akarere"}) Sectora = StringField("Umurenge", validators=[DataRequired()], render_kw={"placeholder": "Injizamo Umurenge"}) Cella = StringField("Akagari", validators=[DataRequired()], render_kw={"placeholder": "Injizamo akagari"}) nIda = StringField( "Nimero ndangamuntu", validators=[DataRequired()], render_kw={"placeholder": "Injiza Nimero y'indangamuntu"}) entryDatea = DateField("Tariki yinjiriyemo", format='%Y-%m-%d', validators=[DataRequired()]) sharea = StringField("Umugabane", validators=[DataRequired()], render_kw={"placeholder": "Injizamo Umugabane"}) exitDatea = DateField("Tariki yasohokeyemo", format='%Y-%m-%d', validators=[DataRequired()]) umuzunguraa = StringField("Umuzungura", validators=[DataRequired()], render_kw={"placeholder": "Injizamo Umuzungura"}) umukonoa = StringField("Umukono", validators=[DataRequired()], render_kw={"placeholder": "Injizamo Umukono"}) gendera = SelectField('Igitsina', choices=[('Igitsina', 'Igitsina'), ('Gabo', 'Gabo'), ('Gole', 'Gole'), ('Ibindi', 'Ibindi')]) doba = DateField("Tariki y'amavuko", format='%Y-%m-%d', validators=[DataRequired()]) phonea = StringField( "Nimero ya telephone", validators=[DataRequired()], render_kw={"placeholder": "Shyiramo numero ya telephone"}) amashuria = SelectField('Amashuri', choices=[('Amashuri', 'Amashuri'), ('Abatarize', 'Abatarize'), ('Abanza', 'Abanza'), ('Ayisumbuye', 'Ayisumbuye'), ('Kaminuza', 'Kaminuza'), ('Imyuga', 'Imyuga')]) ubumugaa = SelectField('Ubumuga', choices=[('Ubumuga', 'Ubumuga'), ('Amaguru', 'Amaguru'), ('Amaboko', 'Amaboko'), ('Kutabona', 'Kutabona'), ('Kutumva', 'Kutumva'), ('Mu mutwe', 'Mu mutwe'), ('Ibindi', 'Ibindi')]) submit = SubmitField('Ohereza')
class PostForm(Form): title = StringField("Title", validators=[InputRequired(), Length(min=0, max=100)]) content = TextAreaField("Content", validators=[InputRequired()]) date = DateField('Date', validators=[InputRequired()])
class ShowReservationsOnDateForm(Form): reservation_date = DateField('reservation_date', default=datetime.now())
class RegistrationForm(FlaskForm): username = StringField( 'User Name', validators=[ DataRequired(), Length(min=2, max=20), Regexp('^\w+$', message="Only alphanumeric and underscore allowed") ]) firstname = StringField('Firstname', validators=[ DataRequired(), Length(min=2, max=20), Regexp('^[.0-9a-zA-Z\s-]+$', message="Not a valid name") ]) lastname = StringField('LastName', validators=[ DataRequired(), Length(min=2, max=20), Regexp('^[.0-9a-zA-Z\s-]+$', message="Not a valid name") ]) email = StringField('Email', validators=[DataRequired(), Email()]) password = PasswordField( 'Password', validators=[ DataRequired(), Regexp( '^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{6,}$', message= "Must have atleast 1 uppercase, 1 lowercase, 1 digit and of size 6" ) ]) confirm_password = PasswordField( 'Confirm Password', validators=[DataRequired(), EqualTo('password')]) phonenum = StringField( 'Phone Number', render_kw={"placeholder": "XXX-XXX-XXXX"}, validators=[ DataRequired(), Regexp('^\d{3}-\d{3}-\d{4}$', message= 'Phone number is not valid. Enter in xxx-xxx-xxxx format') ]) address = TextAreaField('Address', validators=[ Regexp('^[#.0-9a-zA-Z\s,-]+$', message="Not a valid address") ]) city = TextAreaField('City', validators=[ Regexp('^[#.0-9a-zA-Z\s,-]+$', message="Not a valid city") ]) zipcode = TextAreaField('Zip Code', validators=[ Regexp('^[#.0-9a-zA-Z\s,-]+$', message="Not a valid zipcode") ]) state = TextAreaField('state', validators=[ Regexp('^[#.0-9a-zA-Z\s,-]+$', message="Not a valid state") ]) dob = DateField('Date of Birth', format='%m/%d/%Y', validators=[DataRequired()], render_kw={"placeholder": "MM/DD/YYYY"}) university = TextAreaField('University', validators=[ Regexp('^[#.0-9a-zA-Z\s,-]+$', message="Not a valid university") ]) submit = SubmitField('Sign Up') def validate_username(self, username): user = User.query.filter_by(username=username.data).first() if user: raise ValidationError( 'That userid is taken. Please choose a different one.') def validate_email(self, email): user = User.query.filter_by(email=email.data).first() if user: raise ValidationError( 'That email is taken. Please choose a different one.') def validate_dob(self, dob): dob_val = dob.data if (dob_val >= date.today()): raise ValidationError('Date of Birth is not valid!') def validate_phonenum(self, phonenum): phone = User.query.filter_by(phonenum=phonenum.data).first() if phone: raise ValidationError( 'That phone number is already registered with us.')
class Add_article(Form): title = StringField('Title') author = StringField('Author') date = DateField('Date')
class PatientForm(FlaskForm): travel_type = SelectField('Travel Type', id='travel_type', validators=[DataRequired()]) # Flight Travel flight_arrival_date = SelectField('Flight Arrival Date', id='flight_arrival_date', validators=[DataRequired()]) flight_code_id = SelectField('Flight Code', id='flight_code_id', validators=[DataRequired()]) flight_seat = TextField('Flight Seat', id='flight_seat') # Train Travel train_departure_date = DateField('Train Departure Date', validators=[DataRequired()]) train_arrival_date = DateField('Train Arrival Date') train_id = SelectField('Train', choices=[], validators=[DataRequired()]) train_wagon = TextField('Train Wagon') train_seat = TextField('Train Seat') # Travel by auto, foot, sea arrival_date = DateField('Arrival Date', validators=[DataRequired()]) auto_border_id = SelectField('By Auto Border', validators=[DataRequired()]) foot_border_id = SelectField('By Foot Border', id='foot_border_id', validators=[DataRequired()]) sea_border_id = SelectField('By Sea Border', validators=[DataRequired()]) # Blockpost Travel blockpost_region_id = SelectField('Blockpost Region', validators=[DataRequired()]) first_name = TextField('First Name', validators=[DataRequired()]) second_name = TextField('Second Name', validators=[DataRequired()]) patronymic_name = TextField('Patronymic Name') gender = RadioField('Gender', choices=[(0, _("Мужчина")), (1, _("Женщина")), (-1, _("Неизвестно"))], default=-1, validators=[DataRequired()]) dob = DateField('DoB', validators=[DataRequired()]) iin = TextField('IIN') citizenship_id = SelectField('Citizenship', validators=[DataRequired()]) pass_num = TextField('Pass No.', id='pass_num') country_of_residence_id = SelectField('Residence Country', validators=[DataRequired()]) home_address_country_id = SelectField('Home Address Country', validators=[DataRequired()]) home_address_state = TextField('Home State') home_address_county = TextField('Home County') home_address_city = TextField('Home City') home_address_street = TextField('Home Street') home_address_house = TextField('Home House') home_address_flat = TextField('Home Flat') home_address_building = TextField('Home Building') home_address_location_type_id = SelectField( 'Home Address Location Type Id', validators=[DataRequired()]) visited_country_id = SelectField('Visited Country', validators=[DataRequired()]) visited_from_date = DateField('Visit From Date') visited_to_date = DateField('Visit To Date') region_id = SelectField('Region', id='region', validators=[DataRequired()]) job = TextField('Job') job_position = TextField('Job Position') job_category_id = SelectField('Job Category') job_address_country_id = SelectField('Job Address Country') job_address_state = TextField('Job State') job_address_county = TextField('Job County') job_address_city = TextField('Job City') job_address_street = TextField('Job Street') job_address_house = TextField('Job House') job_address_flat = TextField('Job Flat') job_address_building = TextField('Job Building') telephone = TextField('Telephone', id='telephone') email = TextField('EMail', id='email') hospital_region_id = SelectField('Hospital Region', validators=[DataRequired()]) hospital_type_id = SelectField('Hospital Type', validators=[DataRequired()]) hospital_id = SelectField('Hospital', choices=[], validators=[DataRequired()]) is_home_end = DateField("Duration of Home Quarantine") # patient_states = SelectField(id='patient_states') is_found = RadioField("Is Found", choices=[(1, _("Да")), (0, _("Нет"))], default=0, validators=[DataRequired()]) is_found_date = DateField("Is Found Date") is_transit = RadioField("Is Transit", choices=[(1, _("Да")), (0, _("Нет"))], default=0, validators=[DataRequired()]) patient_status = SelectField('Patient Status', id='patient_status', validators=[DataRequired()]) state_infec_type = SelectField(choices=c.state_infec_types) state_infec_illness_symptoms = SelectField(choices=c.illness_symptoms) state_infec_illness_severity = SelectField(choices=c.illness_severity) state_dead_reason = SelectField(choices=c.death_reasons)
class AddReflectionForm(FlaskForm): date = DateField('Date of Reflection', validators=[DataRequired()], format='%Y-%m-%d') description = TextAreaField('Reflections', validators=[DataRequired()]) submit = SubmitField('Add')
class PatientsSearchForm(FlaskForm): region_id = SelectField() address = TextField() travel_type = SelectField() job_category_id = SelectField() probably_duplicate = BooleanField() contacted = SelectField("Contacted or with Contacts", choices=[(-1, _("Все")), ("contacted", _("Контактный")), ("with_contacts", _("С Контактами")), ("contacted_close", _("Контактный (БК)")), ("contacted_potential", _("Контактный (ПК)"))], default=-1) is_currently_infected = SelectField("Is Currently Infected", choices=[(-1, _("Все")), (1, _("Да")), (0, _("Нет"))], default=-1) # is_infected = SelectField("Is Infected", choices=[(-1, _("Все")), (1, _("Да")), (0, _("Нет"))], default=-1) is_found = SelectField("Is Found", choices=[(-1, _("Все")), (1, _("Да")), (0, _("Нет"))], default=-1) patient_status = SelectField( choices=[(-1, _("Все Статусы")), ("in_hospital", _("Госпитализирован")), ("not_in_hospital", _("Не госпитализирован") ), ("is_home_quarantine", _("Домашний Карантин")), ("is_transit", _("Транзит"))]) is_iin_fail = SelectField( choices=[(-1, _("Все ИИНы")), ( "is_iin_empty", _("ИИН Пустой")), ( "is_iin_invalid", _("ИИН Неправильный")), ("is_iin_valid", _("ИИН Правильный"))]) #Date Range date_range_start = DateField() date_range_end = DateField() #States with Dates patient_state = SelectField('State', choices=[(-1, _("Все Статусы"))] + c.states) state_date_range_start = DateField() state_date_range_end = DateField() state_count_min = h5fields.IntegerField("State Count Min", widget=h5widgets.NumberInput( min=0, max=100, step=1)) state_count_max = h5fields.IntegerField("State Count Max", widget=h5widgets.NumberInput( min=0, max=100, step=1)) #States - Infected state_infec_type = SelectField(choices=[c.all_types_none] + c.state_infec_types) state_infec_illness_symptoms = SelectField(choices=[c.all_types_none] + c.illness_symptoms) state_infec_illness_severity = SelectField(choices=[c.all_types_none] + c.illness_severity) #States - Dead state_dead_reason = SelectField(choices=[c.all_types_none] + c.death_reasons) # Flight Travel flight_arrival_date = SelectField('Flight Arrival Date', id='flight_arrival_date') flight_code_id = SelectField('Flight Code', id='flight_code_id') # Train Travel train_departure_date = DateField('Train Departure Date') train_arrival_date = DateField('Train Arrival Date') train_id = SelectField('Train', choices=[]) travel_departure_outer = SelectField(choices=[ ("all_travel", _("Все Рейсы")), ("outer_travel", _("Внешние Рейсы")), ("domestic_travel", _("Внутренние Рейсы")) ], default="all_travel") # Travel by auto, foot, sea arrival_date = DateField('Arrival Date') auto_border_id = SelectField('By Auto Border') foot_border_id = SelectField('By Foot Border') sea_border_id = SelectField('By Sea Border') # Blockpost Travel blockpost_region_id = SelectField('Blockpost Region') first_name = TextField('First Name') second_name = TextField('Second Name') patronymic_name = TextField('Patronymic Name') iin = TextField(id='iin') pass_num = TextField() telephone = TextField(id='telephone') home_address_location_type_id = SelectField( 'Home Address Location Type Id', validators=[DataRequired()])
class SignupForm(FlaskForm): name = StringField('name', validators=[DataRequired()]) email = StringField('email', validators=[DataRequired()]) arrival_date = DateField('arrival_date', format="%m/%d/%Y") departure_date = DateField('departure_date', format="%m/%d/%Y")
class BookingForm(FlaskForm): propertyType = SelectField('Tipo de Casa', choices=[('T1', 'T1'), ('T2', 'T2'), ('T3', 'T3'), ('T4', 'T4'), ('T5+', 'T5+'), ('Escritorios', 'Escritorios')], validators=[InputRequired()]) service = SelectField('Servico', id='form1', coerce=int, validators=[InputRequired()]) date_from = DateField('De', format='%d-%m-%Y', validators=[InputRequired()], id='datepicker1') date_to = DateField('A', format='%d-%m-%Y', validators=[InputRequired()], id='datepicker2') time = SelectField('Hora', choices=[('5:00', '5:00'), ('5:10', '5:10'), ('5:20', '5:20'), ('5:30', '5:30'), ('5:40', '5:40'), ('5:50', '5:50'), ('6:00', '6:00'), ('6:10', '6:10'), ('6:20', '6:20'), ('6:30', '6:30'), ('6:40', '6:40'), ('6:50', '6:50'), ('7:00', '7:00'), ('7:10', '7:10'), ('7:20', '7:20'), ('7:30', '7:30'), ('7:40', '7:40'), ('7:50', '7:50'), ('8:00', '8:00'), ('8:10', '8:10'), ('8:20', '8:20'), ('8:30', '8:30'), ('8:40', '8:40'), ('8:50', '8:50'), ('9:00', '9:00'), ('9:10', '9:10'), ('9:20', '9:20'), ('9:30', '9:30'), ('9:40', '9:40'), ('9:50', '9:50'), ('10:00', '10:00'), ('10:10', '10:10'), ('10:20', '10:20'), ('10:30', '10:30'), ('10:40', '10:40'), ('10:50', '10:50'), ('11:00', '11:00'), ('11:10', '11:10'), ('11:20', '11:20'), ('11:30', '11:30'), ('11:40', '11:40'), ('11:50', '11:50'), ('12:00', '12:00'), ('12:10', '12:10'), ('12:20', '12:20'), ('12:30', '12:30'), ('12:40', '12:40'), ('12:50', '12:50'), ('13:00', '13:00'), ('13:10', '13:10'), ('13:20', '13:20'), ('13:30', '13:30'), ('13:40', '13:40'), ('13:50', '13:50'), ('14:00', '14:00'), ('14:10', '14:10'), ('14:20', '14:20'), ('14:30', '14:30'), ('14:40', '14:40'), ('14:50', '14:50'), ('15:00', '15:00'), ('15:10', '15:10'), ('15:20', '15:20'), ('15:30', '15:30'), ('15:40', '15:40'), ('15:50', '15:50'), ('16:00', '16:00'), ('16:10', '16:10'), ('16:20', '16:20'), ('16:30', '16:30'), ('16:40', '16:40'), ('16:50', '16:50'), ('17:00', '17:00'), ('17:10', '17:10'), ('17:20', '17:20'), ('17:30', '17:30'), ('17:40', '17:40'), ('17:50', '17:50'), ('18:00', '18:00'), ('18:10', '18:10'), ('18:20', '18:20'), ('18:30', '18:30'), ('18:40', '18:40'), ('18:50', '18:50'), ('19:00', '19:00'), ('19:10', '19:10'), ('19:20', '19:20'), ('19:30', '19:30'), ('19:40', '19:40'), ('19:50', '19:50'), ('20:00', '20:00'), ('20:10', '20:10'), ('20:20', '20:20'), ('20:30', '20:30'), ('20:40', '20:40'), ('20:50', '20:50'), ('21:00', '21:00'), ('21:10', '21:10'), ('21:20', '21:20'), ('21:30', '21:30'), ('21:40', '21:40'), ('21:50', '21:50'), ('22:00', '22:00'), ('22:10', '22:10'), ('22:20', '22:20'), ('22:30', '22:30'), ('22:40', '22:40'), ('22:50', '22:50'), ('23:00', '23:00'), ('23:10', '23:10'), ('23:20', '23:20'), ('23:30', '23:30'), ('23:40', '23:40'), ('23:50', '23:50'), ('24:00', '24:00'), ('24:10', '24:10'), ('24:20', '24:20'), ('24:30', '24:30'), ('24:40', '24:40'), ('24:50', '24:50')], validators=[InputRequired()]) duration = SelectField('Quantas horas por dia necessita?', coerce=int, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8)], id='durationTime', validators=[InputRequired()]) address = StringField('Morada', validators=[InputRequired()]) comments = TextAreaField('Comentarios')
class AddExpenseForm(FlaskForm): amount = StringField("Amount", validators=[InputRequired()]) name = StringField("Description", validators=[InputRequired()]) date = DateField("Date", format="%m/%d/%Y")
class Top_States_Form(FlaskForm): amount = IntegerField('How many states?', validators=[DataRequired(), NumberRange(min=1, max=50, message='cannot be greater than 50')]) starting_date = DateField('Starting Date', format="%Y-%m-%d",validators=[DataRequired()],render_kw={'readonly': False}) submit = SubmitField('Submit')
class CustomerRegistrationForm(FlaskForm): email = StringField( 'Email', validators=[DataRequired(message='Mandatory'), Length(1, 64)]) username = StringField( 'Username', validators=[ DataRequired(message='Mandatory'), Length(1, 64), Regexp( '^[A-Za-z][A-Za-z0-9_.]*$', 0, 'Usernames must have only letters, numbers, dots or ' 'underscores') ]) password = PasswordField('Password', validators=[ DataRequired(), EqualTo('password2', message='Passwords must match.') ]) password2 = PasswordField('Confirm password', validators=[DataRequired(message='Mandatory')]) state = StringField( 'State', validators=[DataRequired(message='Mandatory'), Length(1, 2)]) city = StringField( 'City', validators=[DataRequired(message='Mandatory'), Length(1, 64)]) street = StringField( 'Street', validators=[DataRequired(message='Mandatory'), Length(1, 64)]) building_number = StringField('Building Number') phone_num = StringField( 'Phone Number', validators=[DataRequired(message='Mandatory'), Length(7, 16)]) passport_num = StringField( 'Passport Number', validators=[DataRequired(message='Mandatory'), Length(9, 9)]) passport_expiration = DateField( 'Passport Expiration Date', validators=[DataRequired(message="You must enter expiration date")], format='%d/%m/%Y') passport_country = StringField( 'Passport Country', validators=[DataRequired(message='Mandatory'), Length(1, 64)]) dob = DateField( 'Date of Birth', validators=[DataRequired(message="You must enter date of birth")], format='%d/%m/%Y') submit = SubmitField('Register') def validate_username(self, field): if Customer.query.filter_by(email=field.data).first(): raise ValidationError('Username already in use.')
class RegistrationForm(Form): title = TextField( 'title', validators=[ validators.Required(u"Por favor, insira o título do post."), validators.Length(max=400) ]) show_home = BooleanField('show_home') author = TextField( 'author', validators=[ validators.Required(u"Por favor, insira o autor do post."), validators.Length(max=100) ]) publish_date = DateField( 'publish_date', validators=[validators.Required(u"Por favor, insira a data do post.")], format='%d/%m/%Y', description='Formato da data: dia/mês/ano') subject = TagsField( 'subject', choices=[], validators=[ validators.Required(u"Por favor, insira a categoria do post."), ]) text_call = TextAreaField( 'text_call', validators=[ validators.Required(u"Por favor, insira uma chamada para o post."), validators.Length(max=500) ]) text_content = HiddenField( 'text_content', validators=[ validators.Required(u"Por favor, insira o conteúdo do post.") ]) thumb = HiddenField( 'thumb', validators=[ validators.Required( u"Por favor, insira uma imagem para a chamada.") ]) thumb_src = TextField('thumb_src', validators=[validators.Length(max=400)]) language = SelectField( 'language', choices=[('pt', 'Português'), ('en', 'Inglês')], ) def set_choices(self): if self.subject.data: self.subject.choices = [(name, name) for name in self.subject.data] for subject in Subject.query.order_by(Subject.name): if (subject.name, subject.name) not in self.subject.choices: self.subject.choices.append((subject.name, subject.name))
def __init__(self, *args, **kwargs): kwargs["format"] = kwargs.get("format", "%d/%m/%Y") kwargs["description"] = kwargs.get("description", "dd/mm/yyyy") DateField.__init__(self, *args, **kwargs)
def process_formdata(self, valuelist): # ignore empty values valuelist = [v for v in valuelist if v] return DateField.process_formdata(self, valuelist)