class RegisterHotel(FlaskForm): hotelname = TextField("Search Property Name in Google Maps") hotelname1 = TextField("Property Name " ,[validators.Required("Property Name is Mandatory!")] ) locality = HiddenField() plus_code = HiddenField() chain = TextField("Chain Name (if any)") rating = SelectField('Rating', choices = [('1', '1'),('2', '2'),('3', '3'),('4', '4'),('5', '5'),('0', 'Not Rated')]) rooms = IntegerField("Total Rooms",[validators.Required("Please enter total rooms in your property.")]) floors = IntegerField("Total Floor",[validators.Required("Please enter total floors your property has.")]) hotel_type = SelectField('Hotel Type', choices = [('business', 'Business'),('family', 'Family')]) estd=DateField("Estd Date", [validators.Required("Select Established Date")], format='%Y-%m-%d') short_desc = TextField("Short Description") long_desc = TextAreaField("Long Description") address = TextAreaField("Address") city = TextField("City",[validators.Required("Please enter City Location")]) state = TextField("State",[validators.Required("Please enter State Location")]) country = TextField("Country",[validators.Required("Please enter Country Location")]) postal_code = IntegerField("Zip Code",[validators.Required("Please enter POSTAL/ZIP Area code")]) latitude = StringField("Latitude",[validators.Required("Please enter Latitude Information")]) longitude = StringField("Longitude",[validators.Required("Please enter Longitude Information")]) airport_distance=DecimalField("Airport Distance",[validators.Required("Please enter how far is Airport")]) city_center_distance=DecimalField("City Center Distance",[validators.Required("Please enter how far is City Center")]) images = FileField(u'Logo File') phno =IntegerField("Phone No", [validators.Required("Please enter Phone No")]) phno2 =IntegerField("Phone No 2") email=EmailField("Email ID",[validators.Required("Please enter Email ID")]) submit = SubmitField("Send")
class InterestForm(FlaskForm): name = str_field('Bank Name', validators=[optional()], filters=[lambda v: None if v == '' else v]) capital = DecimalField( 'Account Capital', validators=[ DataRequired(message="Amount entered is not valid."), NumberRange(min=0, message="Amount cannot be negative.") ], widget=NumberInput(min=0)) interest_rate = DecimalField( 'Interest Rate', validators=[ DataRequired(message="Interest Rate is not valid."), NumberRange(min=0, message="Interest Rate cannot be negative or zero.") ], widget=NumberInput(min=0, step=0.1)) type = SelectField('Interest Type', choices=[('Simple', 'Simple'), ('Compound', 'Compound')]) period = DecimalField( 'Deposit Duration', validators=[ DataRequired( message= "Please enter a valid time period. Must be at least half a year." ), NumberRange(min=0.5, message="Time Period must at least half a year") ], widget=NumberInput(min=0.5, step=0.5)) submit = smt_field('Calculate Interest')
class RVFForm(RastreavelForm): id = IntegerField('ID') ovr_id = IntegerField('ID da OVR relacionada, se houver') numeroCEmercante = StringField(u'CE Mercante', default='') numerolote = StringField( u'Número do contêiner, ou do lote do terminal' u' se não houver contêiner', default='') descricao = TextAreaField(u'Descrição', render_kw={ 'rows': 6, 'cols': 100, 'maxlength': 2000 }, default='') peso = DecimalField('Peso efetivo da carga verificada em kg', places=2) peso_manifestado = DecimalField('Peso Manifesado no Container em kg', places=2) volume = DecimalField('Volume efetivo da carga verificada em m3', places=2) adata = DateField(u'Data') ahora = TimeField(u'Horário') inspecaonaoinvasiva = BooleanField('Apenas inspeção não invasiva', default=False) marca_id = SelectField('Lista de marcas licenciadas, se existir', default=0) infracao_id = SelectField('Lista de possíveis infrações', default=0) def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.marca_id.choices = [(None, 'Selecione')] if kwargs.get('marcas'): self.marca_id.choices.extend(kwargs.get('marcas')) self.infracao_id.choices = [(None, 'Selecione')] if kwargs.get('infracoes'): self.infracao_id.choices.extend(kwargs.get('infracoes'))
class TGOVRForm(FlaskForm): id = IntegerField('ID') ovr_id = IntegerField('OVR') numerolote = StringField(u'Número do contêiner, ou do lote do terminal' u' se não houver contêiner', default='') descricao = TextAreaField(u'Descrição', render_kw={'rows': 2, 'cols': 100, 'maxlength': 500}, default='') unidadedemedida = SelectField('Unidade de Medida', default=1) qtde = DecimalField(u'Quantidade total', places=2) valor = DecimalField(u'Valor total', places=2) tipomercadoria_id = SelectField('Unidade de Medida', default=0) numerotg = StringField(u'Número do Termo de Guarda', default='') afrfb = SelectField(u'CPF do AFRFB Responsável') identificacao = StringField(u'Identificação(marca) da carga', default='') observacoes = TextAreaField(u'Observações', render_kw={'rows': 2, 'cols': 100, 'maxlength': 500}, default='') def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.unidadedemedida.choices = Enumerado.unidadeMedida() self.tipomercadoria_id.choices = [] if kwargs.get('tiposmercadoria'): self.tipomercadoria_id.choices.extend(kwargs.get('tiposmercadoria')) self.afrfb.choices = [] if kwargs.get('lista_afrfb'): self.afrfb.choices.extend(kwargs.get('lista_afrfb'))
class PlantTypeRegistrationForm(Form): plant_type = StringField(validators=[validators.required()]) requires_water = BooleanField() watering_frequency_interval = IntegerField(label="", validators=[validators.optional()]) watering_frequency_unit = SelectField(label="", choices=[(60, 'minute'), (3600, 'hour'), (86400, 'day'), (604800, 'week')], validators=[validators.optional()]) min_temp = DecimalField(places=1, validators=[validators.optional(), validators.NumberRange(min=-273.15,max=100)]) max_temp = DecimalField(places=1, validators=[validators.optional(), validators.NumberRange(min=-273.15,max=100)]) min_humidity = DecimalField(places=1, validators=[validators.optional(), validators.NumberRange(min=0,max=100)]) max_humidity = DecimalField(places=1, validators=[validators.optional(), validators.NumberRange(min=0,max=100)]) min_soil_moisture = IntegerField(validators=[validators.optional(), validators.NumberRange(min=0,max=100)]) max_soil_moisture = IntegerField(validators=[validators.optional(), validators.NumberRange(min=0,max=100)]) ideal_soil_moisture_level = SelectField(choices=[(0, 'Dry'), (1, 'Moist'), (2, 'Wet')], validators=[validators.optional()]) min_light_intensity = IntegerField(validators=[validators.optional(), validators.NumberRange(min=0)]) max_light_intensity = IntegerField(validators=[validators.optional(), validators.NumberRange(min=0)])
class JobPostForm(FlaskForm): title= StringField('Title:', validators=[DataRequired()]) description= TextAreaField('Description of Job:', validators=[DataRequired()]) budget = DecimalField('How much are you looking to spend:') hourlypay = DecimalField('How much do you pay per hour:', validators=[NumberRange(min=0, max=100000, message='bla')]) languages = SelectField('What languages/technology do you need principally: ', choices=[('Ruby', 'Ruby'),('Python', 'Python'),('C++', 'C++'),('PHP', 'PHP'),('Javascript', 'Javascript'),('Java', 'Java'),('Sass', 'Sass')]) submit = SubmitField('Submit')
class EditProfileForm(FlaskForm): username = StringField(_l('Имя пользователя'), validators=[DataRequired()]) about_me = TextAreaField(_l('Дополнительная информация'), validators=[Length(min=0, max=140)]) weight = DecimalField(_l('Вес, кг'), widget=widgets.NumberInput(max=300, min=1, step=1)) height = IntegerField(_l('Рост, cм'), widget=widgets.NumberInput(min=30, max=300, step=1), validators=[DataRequired()]) kkal = DecimalField(label='Базовая потребность в ККал', widget=widgets.NumberInput(max=1500, min=50, step=1), validators=[DataRequired()]) BG = DecimalField(label='Целевой уровень гликемии, ммоль/л', widget=widgets.NumberInput(max=20, min=1, step=0.1), validators=[DataRequired()]) carb = DecimalField(label='Критический уровень углеводов, г', widget=widgets.NumberInput(max=500, min=1, step=0.1), validators=[DataRequired()]) dtype = SelectField(u'Тип диабета', choices=[('1', 'диабет I типа'), ('2', 'диабет II типа'), ('3', 'гестационный')], validators=[DataRequired()]) submit = SubmitField(_l('Сохранить изменения')) def __init__(self, original_username, *args, **kwargs): super(EditProfileForm, self).__init__(*args, **kwargs) self.original_username = original_username def validate_username(self, username): if username.data != self.original_username: user = User.query.filter_by(username=self.username.data).first() if user is not None: raise ValidationError(_('Please use a different username.'))
class CalculatorSJAForm(FlaskForm): ml1 = IntegerField(label="ml", default=0) perc1 = DecimalField(label="%", default=13) ml2 = IntegerField(label="ml", default=0) perc2 = DecimalField(label="%", default=5) ml3 = IntegerField(label="ml", default=0) perc3 = DecimalField(label="%", default=12) submit = SubmitField(label="Calculate SJA")
class quoteForm(FlaskForm): gallonsRequested = IntegerField('Gallons Requested: ', validators = [DataRequired(), NumberRange(min = 50, max = 3500)], widget=NumberInput(min = 0, max = 3501)) deliveryDate = DateField('Delivery Date:', format = '%Y-%m-%d', validators = [DataRequired(message="You need to enter a date")]) deliveryAddress = StringField('Delivery address: ', validators = [DataRequired("Update your profile with an address")]) rate = DecimalField("Price per Gallon:", places = 2, validators = [Optional()]) total = DecimalField("Total Amount:", places =2, validators = [Optional()]) submit = SubmitField(label="Submit") calQuote = SubmitField(label="Get Quote")
class ReviewForm(FlaskForm): '''Form for entering review session data.''' filename = SelectField('Log a study session', choices=[]) time_spent = IntegerField('For how long (mins)?', validators=[DataRequired()]) skill_before = DecimalField('Skill before', places=1, validators=[NumberRange(min=0, max=5)]) skill_after = DecimalField('Skill after', places=1, validators=[NumberRange(min=0, max=5)]) review_submit = SubmitField('Log review')
class FermentationStepForm(BaseObjectForm): date = DateField(_('date'), validators=[InputRequired()]) name = StringField(_('name'), validators=[InputRequired()]) og = DecimalField(_('original gravity'), places=1, validators=[Optional()]) fg = DecimalField(_('final gravity'), places=1, validators=[Optional()]) temperature = IntegerField(_('temperature'), validators=[Optional()]) volume = DecimalField(_('volume collected'), places=1, validators=[Optional()]) notes = TextAreaField(_('notes')) def save(self, brew, obj=None, save=True): if obj is None: obj = FermentationStep(brew=brew) return super().save(obj, save)
class ReadingsForm(FlaskForm): temp = DecimalField('Temperature', validators=[ DataRequired(message='This field is required'), decimal_validation ]) oximeter = DecimalField('Oximeter', validators=[ DataRequired(message='This field is required'), decimal_validation ]) symptoms = BooleanField('Are you experiencing COVID-19 symptoms?', validators=[]) working_btn = SubmitField("I'm Working") not_working_btn = SubmitField("I'm Going Home")
class DaycareSubsidyCalculatorForm(Form): daycare = SelectField( label=_("Select Daycare"), validators=(InputRequired(), ), choices=(), ) services = DaycareServicesField(label=_("Care"), validators=(InputRequired(), )) income = DecimalField(label=_("Definite Taxable income"), validators=(InputRequired(), NumberRange(min=0))) wealth = DecimalField(label=_("Definite Taxable wealth"), validators=(InputRequired(), NumberRange(min=0))) rebate = BooleanField( label=_("Rebate"), description=_( "Does at least one child in your household attend the same " "daycare for more than two whole days a week?")) def on_request(self): self.daycare.choices = tuple(self.daycare_choices) @property def daycare_choices(self): def choice(daycare): label = _( ("${title} / day rate CHF ${rate} / " "${weeks} weeks open per year"), mapping={ 'title': daycare.title, 'rate': daycare.rate, 'weeks': daycare.weeks }) return (daycare.id.hex, self.request.translate(label)) for daycare in self.model.daycares.values(): yield choice(daycare) @property def selected_daycare(self): for daycare in self.model.daycares.values(): if daycare.id.hex == self.daycare.data: return daycare
class ListForm(FlaskForm): id = HiddenField() test = HiddenListIntegerField() date = DateField(validators=[Required()], description="Date of purchase") price = DecimalField(validators=[Required()], description="Total price") shop = QuerySelectField( validators=[Required()], query_factory=lambda: Shop.query.order_by(Shop.name), get_label='name', allow_blank=True, blank_text="Select a Shop", description="Shop where purchase took place", ) category = QuerySelectField( query_factory=lambda: Category.query.order_by(Category.name), get_label='name', allow_blank=True, blank_text="Select a category", description="Category of purchase", ) user = QuerySelectField( query_factory=lambda: User.query.order_by(User.name), get_label='username', allow_blank=False, blank_text="Select an Owner", description="User who bought this list.", ) items_obj = QuerySelectMultipleField(validators=[Required()], query_factory=lambda: Item.query, allow_blank=False, get_label=get_item_label)
class ReceiptItem(FlaskForm): item = TextField("Name") price = DecimalField("Total Price") amount = IntegerField("Amount") volume = TextField("Volume") ppv = TextField("Price per Volume") sale = BooleanField("Sale")
class TransactionForm(FlaskForm): amount = DecimalField( 'Transaction amount (with two decimals, e.g. "34.56")', places=2, validators=[validators.NumberRange(min=0, max=100000000)], default=0.00) bookingdate = DateField("Booking date", format="%d/%m/%Y", validators=[validators.InputRequired(True)]) counterparty = StringField("Name of counterparty", [validators.InputRequired(True)]) iban = StringField("IBAN of counterparty", [ validators.Required(True), validators.Regexp(r"[A-Z]{2,2}[0-9]{12,20}", message="Invalid IBAN!") ]) # Basic validation message = StringField( "Message or reference number", [validators.Required(True), validators.Length(max=150)]) creditordebit = SelectField("Payment to you or by you?", choices=[("CREDIT", "To me"), ("DEBIT", "By me")]) account = SelectField("Account") category = SelectField("Category") class Meta: csrf = False
class MissionReportForm(Form): date = TimezoneDateTimeField(_("Date"), timezone='Europe/Zurich', validators=[InputRequired()]) duration = DecimalField( _("Mission duration (h)"), validators=[InputRequired(), NumberRange(0, 10000)]) nature = TextAreaField(_("Mission nature"), render_kw={'rows': 4}, validators=[InputRequired()]) location = StringField(_("Location"), validators=[InputRequired()]) personnel = IntegerField( _("Mission personnel"), validators=[InputRequired(), NumberRange(0, 10000)]) backup = IntegerField(_("Backup personnel"), validators=[InputRequired(), NumberRange(0, 10000)]) civil_defence = BooleanField(_("Civil Defence involvement"))
class BankForm(FlaskForm): name = StringField( 'Nombre', validators=[DataRequired('Favor de ingresar un Nombre de Banco')]) location = StringField('Ubicación') description = TextAreaField('Descripción') owner_name = SelectField( 'Propietario', validate_choice=False ) # Must mark as validate_choice=False to skip validation material_name_list = SelectMultipleField('Materiales disponibles') royalty = DecimalField('Royalty', validators=[Optional()]) is_active = BooleanField('Activo', default='checked') def __init__( self, bank=None, **kwargs ): # Had to do this to be able to validate duplicates when updating super(BankForm, self).__init__(**kwargs) self.bank = bank def validate_name(self, field): if g.MaterialBank.find_by_name(field.data, False): if self.bank: if not self.bank.name.lower() == field.data.lower(): raise ValidationError('Banco ya existe') else: raise ValidationError('Banco ya existe') def validate_royalty(self, field): if field.data: if field.data < 0: raise ValidationError('Ingresa una cantidad igual o mayor a 0')
class Deposit(FlaskForm): Accountid = StringField("Account ID", validators=[DataRequired(), Length(min=9, max=9)]) Amount = DecimalField("Deposit Amount", validators=[DataRequired()]) Submit = SubmitField('Submit') def validate_deposit(self, deposit): if int(deposit.data) < deposit.data: raise ValidationError("Enter a valid Amount without decimal points")
class BrewForm(BaseObjectForm): brewery = QuerySelectField(_('brewery'), query_factory=user_breweries_query, get_label='name', validators=[InputRequired()]) name = StringField(_('name'), validators=[InputRequired()]) code = StringField(_('code')) style = StringField( _('style'), description=_('descriptive name of style, as you see it'), ) bjcp_style_code = StringField(_('BJCP style code')) bjcp_style_name = StringField(_('BJCP style name')) notes = TextAreaField(_('notes')) date_brewed = DateField(_('date brewed'), validators=[Optional()]) fermentables = TextAreaField( _('fermentables'), description=_( 'put each fermentable on separate line to make nice list')) hops = TextAreaField( _('hop items'), description=_('put each hop item on separate line to make nice list')) yeast = TextAreaField( _('yeast items'), description=_( 'put each yeast item on separate line to make nice list')) misc = TextAreaField( _('miscellaneous items'), description=_( 'put each miscellanea on separare line to make nice list')) mash_steps = TextAreaWithHintsField( _('mash schedule'), description=_('put each step on separate line to make nice list'), widget=textarea_with_hints) sparging = StringField(_('sparging')) hopping_steps = TextAreaField( _('hopping schedule'), description=_('put each step on separate line to make nice list')) boil_time = IntegerField(_('boil time'), validators=[Optional()]) final_amount = DecimalField(_('final amount'), places=1, description=_('volume into bottling'), validators=[Optional()]) bottling_date = DateField(_('bottling date'), validators=[Optional()]) carbonation_type = SelectField( _('type of carbonation'), choices=choices.CARBONATION_CHOICES, ) carbonation_level = SelectField( _('carbonation level'), choices=choices.CARB_LEVEL_CHOICES, ) carbonation_used = TextAreaField(_('carbonation used')) is_public = BooleanField(_('public'), default=True) is_draft = BooleanField(_('draft'), default=False) def save(self, obj=None, save=True) -> Brew: if obj is None: obj = Brew() return super(BrewForm, self).save(obj, save)
class ExpenseForm(FlaskForm): description = StringField( 'Briefly describe the expense', validators=[DataRequired()], render_kw={'autocomplete': 'off'} ) date = DateField( 'When was it made?', validators=[DataRequired()], render_kw={'type': 'date'} ) amount = DecimalField( 'Transaction amount', places=None, validators=[DataRequired()], render_kw={'autocomplete': 'off'} ) pay_mode = SelectField('Payment mode', validators=[DataRequired()]) estimate_entry = SelectField('Related estimate') comments = TextAreaField('Comments', validators=[Length(max=512)]) taglist = StringField( 'Add tags', render_kw={'class': 'tagsinput'} ) submit = SubmitField('Save')
class CommercialSignUpForm(UserSignUpForm): """Sign up form for commercial users.""" org_name = StringField("Organization name", validators=[ DataRequired("You need to specify the name of your organization.") ]) org_desc = TextAreaField("Organization description", validators=[ DataRequired("You need to provide description of your organization."), ]) website_url = URLField("Website URL", validators=[ DataRequired("You need to specify website of the organization."), ]) logo_url = URLField("Logo image URL") api_url = URLField("API URL") address_street = StringField("Street", validators=[ DataRequired("You need to specify street.") ]) address_city = StringField("City", validators=[ DataRequired("You need to specify city.") ]) address_state = StringField("State / Province", validators=[ DataRequired("You need to specify state/province.") ]) address_postcode = StringField("Postcode", validators=[ DataRequired("You need to specify postcode.") ]) address_country = StringField("Country", validators=[ DataRequired("You need to specify country.") ]) amount_pledged = DecimalField()
class AddProductForm(FlaskForm): """Add product form.""" name = StringField("Name", validators=[DataRequired(), Length(min=2, max=100)]) category = QuerySelectField( "Category", query_factory=lambda: Category.query, allow_blank=False, validators=[DataRequired()], ) price = DecimalField( "Price", default=0.00, places=2, validators=[DataRequired(), NumberRange(min=0)], ) quantity = IntegerField( "In Stock", validators=[DataRequired(), NumberRange(min=1, max=999)], ) image = FileField("Add Product Image", validators=[FileAllowed(["jpg", "png"])]) submit = SubmitField("Add Product")
class NanoTtsForm(Form): """ Gives access to common nanotts options through a form. """ text = TextAreaField( u'Text', [validators.InputRequired(), validators.length(max=200)], default=u"Nano T T S service.") voice = SelectField( validators=[validators.Optional()], choices=VOICE_CHOICES, default='en-GB') speed = DecimalField(validators=[ validators.Optional(), validators.NumberRange(0.2, 5.0)]) pitch = DecimalField(validators=[ validators.Optional(), validators.NumberRange(0.5, 2.0)])
class BaseProductForm(FlaskForm): product_type = HiddenField('Product Type', [validators.InputRequired()]) policy_start_date = DateField('When do you want your cover to start?', [validators.InputRequired()]) sum_insured = DecimalField('Insurable Amount(Ksh.)', [validators.InputRequired()]) payment_plan = SelectField('Desired Payment Plan')
class FormDiaria(FlaskForm): id = HiddenField(validators=[Optional()]) nome = StringField("Nome", validators=[DataRequired()]) data = DateField("Data", validators=[DataRequired()]) destino = StringField("Destino", validators=[DataRequired()]) motivo = StringField("Motivo", validators=[DataRequired()]) valor = DecimalField("Valor", validators=[DataRequired()])
class ModifierForm(Form): id_ = HiddenField(default='modifier') value = DecimalField(u'Value') # TODO: add a validator for the type type_ = HiddenField(validators=[ AnyOf(('rel-bonus', 'rel-deduct', 'abs-bonus', 'abs-deduct')) ]) note = TextAreaField(u'Reason')
class SugarForm(FlaskForm): eat = SelectField(label='Обстоятельства', choices=ch) #фактор - eat time = DateTimeLocalField(label='Время', format='%Y-%m-%dT%H:%M') BG = DecimalField(label='Уровень сахара, ммоль/л', default=5, widget=widgets.NumberInput(max=20, min=1, step=0.1), validators=[DataRequired()]) submit = SubmitField(u'sugar')
class UserProfile(FlaskForm): name = StringField("Name", validators=[DataRequired(), length(max=256)]) age = DecimalField("Age", validators=[optional()]) profile_pic = FileField("Profile Pic", validators=[optional()]) about_me = TextAreaField("About Me", validators=[optional(), length(max=256)]) submit = SubmitField("Register")
class AddItem(FlaskForm): name = TextField("Name", validators=[DataRequired()]) price = DecimalField("Price", validators=[DataRequired()]) volume = TextField("Volume") price_per_volume = TextField("Price Per Volume") sale = BooleanField("Sale") note = TextField("Note") category = TextField("Category")