class ExportFileFilter(Form): status = SelectMultipleField( "Status", choices=[(v.name, badge_display(v)) for v in ExportFileStatus], render_kw={"class": "form-control select2"}, ) session = QuerySelectMultipleField( "Session", get_label="name", render_kw={"class": "form-control select2"} ) factory = QuerySelectMultipleField( "Factory", get_label="name", render_kw={"class": "form-control select2"} ) template = QuerySelectMultipleField( "Template", render_kw={"class": "form-control select2"} ) row_type = SelectMultipleField( "Type", choices=[(v.name, badge_display(v)) for v in ExportRowType], render_kw={"class": "form-control select2"}, ) external_object_type = SelectMultipleField( "Objects type", choices=[(v.name, badge_display(v)) for v in ExternalObjectType], render_kw={"class": "form-control select2"}, )
class ExportFilter(Form): platform_id = QuerySelectMultipleField( "Platform", get_label="name", render_kw={"class": "select2"} ) platform_group_id = QuerySelectMultipleField( "Group", get_label="name", render_kw={"class": "select2"} ) platform_country = SelectMultipleField( "Platform country", render_kw={"class": "select2"} ) platform_type = SelectMultipleField( "Platform type", choices=[(v.name, v.name) for v in PlatformType], render_kw={"class": "select2"}, ) def render(self): filters = {} for i in [ "platform_id", "platform_group_id", "platform_country", "platform_type", ]: attr = getattr(self, i) if attr.data: filters[i.replace("_", ".", 1)] = ",".join( item if isinstance(item, str) else str(item.id) for item in attr.data ) return filters
class ClubForm(ModelForm): class Meta: model = Club leaders = QuerySelectMultipleField( query_factory=all_students) # get_label=<some Model field> members = QuerySelectMultipleField( query_factory=all_students) # get_label=<some Model field>
class ScrapListFilter(Form): platforms = QuerySelectMultipleField( "Platforms", get_pk=lambda p: p.slug, render_kw={"class": "select2 form-control"}, ) status = SelectMultipleField( "Status", choices=[(e.name, badge_display(e)) for e in ScrapStatus], render_kw={"class": "select2 form-control"}, ) sessions = QuerySelectMultipleField( "Session", render_kw={"class": "select2 form-control"} )
class ObjectListFilter(Form): search = StringField("Search") country = StringField("Country") type = SelectMultipleField( "Type", choices=[(v.name, badge_display(v)) for v in ExternalObjectType], render_kw={"class": "select2 form-control"}, ) platform = QuerySelectMultipleField( "Platform", render_kw={"class": "select2 form-control"}) session = QuerySelectMultipleField( "Session", render_kw={"class": "select2 form-control"}) scrap = IntegerField("Scrap") import_file = IntegerField("Import") object_link = FormField(ExternalIDForm)
class EduCourseSessionForm(ModelForm): class Meta: model = EduQACourseSession instructors = QuerySelectMultipleField(u'ผู้สอน', get_label='fullname', query_factory=lambda: course.instructors.all(), widget=widgets.ListWidget(prefix_label=False), option_widget=widgets.CheckboxInput())
class CurriculumUnitAddAppendStudGroupForm(Form): relative_curriculum_units = QuerySelectMultipleField( 'Группы', get_pk=lambda cu: cu.id, get_label=lambda cu: cu.stud_group.num_print, widget=ListWidget(prefix_label=False), option_widget=CheckboxInput())
class SProductForm(FlaskForm): name = StringField('Product name', validators=[InputRequired(), Length(1, 64)]) images = MultipleFileField( 'Product Images', validators=[InputRequired(), FileAllowed(images, 'Images only!')]) description = TextAreaField('Description', [InputRequired()]) categories = QuerySelectMultipleField( 'Categories', validators=[InputRequired()], get_label='name', query_factory=lambda: db.session.query(MCategory).order_by('order')) availability = BooleanField(u'Is it currently available?') min_order_quantity = IntegerField('Min number of units per order e.g 1', default=1) length = FloatField('Length in numbers only e.g 0.99') weight = FloatField('Weight in numbers only e.g 0.21') height = FloatField('Height in numbers only e.g 10') price = FloatField('Price, Figures only e.g 16.99') price_currency = QuerySelectField( 'Price currency', validators=[InputRequired()], get_label='name', query_factory=lambda: db.session.query(MCurrency).order_by('name')) is_featured = BooleanField("Is Featured ?") lead_time = StringField('Delivery time') submit = SubmitField('Submit')
class F(Form): a = QuerySelectMultipleField( get_label='name', default=[first_test], widget=LazySelect(), query_factory=lambda: self.sess.query(self.Test) )
class CurriculumUnitCopyForm(Form): stud_groups_selected = QuerySelectMultipleField( 'Группы', get_pk=lambda g: g.id, get_label=lambda g: "%s %s%s" % (g.num_print, g.specialty, " (%s)" % g.specialization if g.specialization else ""), widget=ListWidget(prefix_label=False), option_widget=CheckboxInput()) button_copy = SubmitField('Копировать')
class DocumentReceiptForm(ModelForm): class Meta: model = DocReceiveRecord only = ['comment', 'predefined_comment'] send_all = BooleanField('All', default=False) members = QuerySelectMultipleField( u'Members', get_label='fullname', validators=[DataRequired()], query_factory=lambda: org.staff, widget=widgets.ListWidget(prefix_label=False), option_widget=widgets.CheckboxInput())
class EditPlaylistForm(FlaskForm): name = StringField('Name', validators=[DataRequired(), edit_playlist_name_exists]) movies = QuerySelectMultipleField( u'Videos', query_factory=lambda: Movie.query.order_by(Movie.name.asc()).all(), blank_text=u'', get_label='name') play_on_start = BooleanField('Play on wake') submit = SubmitField('Update Playlist')
class PlatformListFilter(Form): search = StringField("Search") type = SelectMultipleField( "Type", choices=[(v.name, badge_display(v)) for v in PlatformType], render_kw={"class": "form-control select2"}, ) country = QuerySelectMultipleField( "Country", get_pk=lambda o: o[0], get_label=lambda o: o[0], render_kw={"class": "form-control select2"}, ) group = QuerySelectMultipleField( "Group", get_label=lambda g: g.name, render_kw={"class": "form-control select2"} ) provider = QuerySelectMultipleField( "Provider", get_label=lambda p: p.name, get_pk=lambda p: p.slug, render_kw={"class": "form-control select2"}, )
class CreateUserForm(form.Form): display_name = fields.SelectField('Display Name', choices=[('alias', 'Alias'), ('first_name', 'First Name'), ('full_name', 'Full Name')]) email = fields.StringField('Email', validators=[validators.required()]) password = fields.StringField('Password') roles = QuerySelectMultipleField('User Roles', query_factory=roles, allow_blank=False) active = fields.BooleanField() submit = fields.SubmitField('Submit')
class StudentsUnallocatedForm(Form): semester = HiddenField() students_selected = QuerySelectMultipleField( 'Студенты', get_pk=lambda s: s.id, get_label=lambda s: "%d %s" % (s.id, s.full_name), widget=ListWidget(prefix_label=False), option_widget=CheckboxInput()) stud_group = QuerySelectField( 'Группа в которую нужно перевести', get_pk=lambda g: g.id, get_label=lambda g: g.num_print, blank_text='Не указана', allow_blank=True, validators=[validators.DataRequired('Укажите группу')]) button_transfer = SubmitField('Перевести в выбранную группу')
class EditImport(FlaskForm): sessions = QuerySelectMultipleField( "Sessions", render_kw={"class": "select2 form-control"}) imported_external_object_type = SelectField( "New object types", choices=[(e, badge_display(e)) for e in ExternalObjectType], coerce=ExternalObjectType.coerce, render_kw={"class": "select2 form-control"}, ) platform = QuerySelectField("Platform", render_kw={"class": "select2 form-control"}) provider = QuerySelectField( "Provider", get_label=lambda p: p.name, validators=[validators.Optional()], allow_blank=True, render_kw={"class": "select2 form-control"}, ) fields = CustomFieldList( FormField(Column, render_kw={"class": "dynamic-input-container"})) save_and_import = SubmitField("Save and process", render_kw={"class": "btn btn-primary"})
class StudentForm(ModelForm): class Meta: model = Student # locker_id = QuerySelectField(query_factory=available_lockers, allow_blank=True) locker_id = SelectField('Assigned Locker', coerce=int) year_id = SelectField('Class of', coerce=int) subjects = QuerySelectMultipleField( query_factory=valid_subjects) # get_label=<some Model field> books = QuerySelectMultipleField( query_factory=valid_books) # get_label=<some Model field> rooms = QuerySelectMultipleField( query_factory=valid_rooms) # get_label=<some Model field> high_regards = QuerySelectMultipleField( query_factory=all_students) # get_label=<some Model field> leading_clubs = QuerySelectMultipleField( query_factory=all_clubs) # get_label=<some Model field> joined_clubs = QuerySelectMultipleField( query_factory=all_clubs) # get_label=<some Model field>
class F(Form): a = QuerySelectMultipleField(get_label='name', widget=LazySelect())
class EditScrapForm(Form): sessions = QuerySelectMultipleField( "Sessions", render_kw={"class": "select2 form-control"} )
class SubjectForm(ModelForm): class Meta: model = Subject students = QuerySelectMultipleField( query_factory=all_students) # get_label=<some Model field>