class DrillOutline(colander.MappingSchema): platforms = (('PC', 'PC'), ('XB', 'XBox'), ('PS', 'PS4')) channels = (('#drillrats', '#drillrats'), ('#drillrats2', '#drillrats2'), ('#drillrats3', '#drillrats3')) client_name = colander.SchemaNode(colander.String(), description="Damsel's CMDR name. (NOT the Drillee's name!)") system = colander.SchemaNode(colander.String(), widget=widget.AutocompleteInputWidget( values='https://system.api.fuelrats.com/search', min_length=3), description="Rescue system, i.e where the Damsel is located.") platform = colander.SchemaNode(colander.String(), widget=widget.SelectWidget(values=platforms), validator=colander.OneOf(('PC', 'XB', 'PS')), description="Which platform the damsel is on." ) o2status = colander.SchemaNode(colander.String(), widget=widget.CheckboxWidget(true_val="Not OK", false_val="OK"), description="Code Red cases should only be used in Dispatch drills.", title="Code Red?") channel = colander.SchemaNode(colander.String(), widget=widget.SelectWidget(values=channels), validator=colander.OneOf(('#drillrats', '#drillrats2', '#drillrats3')), description="Which channel to send the case to.") overseer = colander.SchemaNode(colander.String(), description="Who is overseeing the drill.")
def defferred_payment_system_select(node, kw): payment_systems = kw.get('payment_systems', []) count = len(payment_systems) if count > 1: return widgets.SelectWidget(values=payment_systems.items()) elif count == 1: return widgets.SelectWidget(values=payment_systems.items(), readonly=True) raise Exception('No payment systems available')
def update(self): allItems = self.db.getAllItems() optgroups = defaultdict(lambda: [],{}) for (itemid, name, category, comment) in allItems: optgroups[category].append((itemid, name)) items = [widget.OptGroup(category, *values) for category, values in sorted(optgroups.items())] self['item_id'].widget = widget.SelectWidget(values=items) categories = self.db.getAllCategories() categories = [(cat, cat) for (cat, comment) in categories] self['category'].widget = widget.SelectWidget(values=categories)
class AddSchema(colander.Schema): kode = colander.SchemaNode(colander.String(), ) nama = colander.SchemaNode(colander.String(), missing=colander.drop) level_id = colander.SchemaNode(colander.Integer()) is_summary = colander.SchemaNode( colander.Integer(), widget=widget.SelectWidget(values=SUMMARIES), title="Header") status = colander.SchemaNode(colander.Integer(), widget=widget.SelectWidget(values=STATUS), title="Status")
class WebhookSchema(colander.Schema): hook_url = colander.SchemaNode(colander.String(), widget=widget.TextInputWidget()) hook_type = colander.SchemaNode(colander.String(), widget=widget.SelectWidget(values=hooktypes), validator=colander.OneOf(('discord', 'generic'))) enabled = colander.SchemaNode(colander.Boolean(), widget=widget.CheckboxWidget(template="bootstrap"), required=False) jumpEvents = colander.SchemaNode(colander.Boolean(), widget=widget.CheckboxWidget(template="bootstrap"), required=False) marketEvents = colander.SchemaNode(colander.Boolean(), widget=widget.CheckboxWidget(template="bootstrap"), required=False) calendarEvents = colander.SchemaNode(colander.Boolean(), widget=widget.CheckboxWidget(template="bootstrap"), required=False) description = colander.SchemaNode(colander.String(), widget=widget.TextInputWidget(), required=False) id = colander.SchemaNode(colander.Integer(), widget=widget.HiddenWidget(), required=False, default=None, missing=colander.drop) owner_id = colander.SchemaNode(colander.Integer(), widget=widget.HiddenWidget(), required=False, default=None, missing=colander.drop) carrier_id = colander.SchemaNode(colander.Integer(), widget=widget.HiddenWidget(), required=False, default=None, missing=colander.drop)
class AddSchema(colander.Schema): unit_kd = colander.SchemaNode(colander.String(), title="SKPD") unit_nm = colander.SchemaNode(colander.String(), missing=colander.drop) kode = colander.SchemaNode(colander.String(), title="No. SSPD") nama = colander.SchemaNode(colander.String()) alamat = colander.SchemaNode(colander.String()) uraian = colander.SchemaNode(colander.String(), missing=colander.drop) tgl_trans = colander.SchemaNode(colander.Date()) rekening_kd = colander.SchemaNode(colander.String(), title="Rekening") rekening_nm = colander.SchemaNode(colander.String(), missing=colander.drop) pokok = colander.SchemaNode(colander.String()) denda = colander.SchemaNode(colander.String()) bunga = colander.SchemaNode(colander.String()) sumber_id = colander.SchemaNode( colander.String(), widget=widget.SelectWidget(values=SUMBER_ID), title="Sumber") ref_kode = colander.SchemaNode(colander.String(), title="No Bayar") ref_nama = colander.SchemaNode(colander.String(), title="Uraian") kecamatan_kd = colander.SchemaNode(colander.String(), title="Kecamatan", missing=colander.drop) kecamatan_nm = colander.SchemaNode(colander.String(), missing=colander.drop) kelurahan_kd = colander.SchemaNode(colander.String(), title="Kelurahan", missing=colander.drop) kelurahan_nm = colander.SchemaNode(colander.String(), missing=colander.drop) is_kota = colander.SchemaNode(colander.Boolean(), title="Kota") npwpd = colander.SchemaNode(colander.String(), missing=colander.drop) jth_tempo = colander.SchemaNode(colander.Date(), missing=colander.drop, oid="jth_tempo")
class PurchaseSchema(MappingSchema): db = sqlite() categories = db.getAllCategories() categories = [(cat, cat) for (cat, comment) in categories] availableFlags = ( ('L', 'Ledger'), ) shop = SchemaNode(String(), description = 'Shop') payment_method = SchemaNode( String(), widget=widget.SelectWidget(values=categories), description = 'Bezahlmethode' ) date = SchemaNode(Date(), description = 'Rechnungsdatum') flags = SchemaNode(colander.Set(), widget=widget.CheckboxChoiceWidget(values=availableFlags), ) positions = PositionsSchema() title='Neue Transaktion' def update(self): categories = self.db.getAllCategories() categories = [(cat, cat) for (cat, comment) in categories] self['payment_method'].widget = widget.SelectWidget(values=categories) self['positions'].update()
class AddSchema(colander.Schema): id_trx = colander.SchemaNode(colander.String(), oid="id_trx") no_trx = colander.SchemaNode(colander.String()) no_sts = colander.SchemaNode(colander.String()) tgl_pembukuan = colander.SchemaNode(colander.String(), oid='tgl_pembukuan') jns_trx = colander.SchemaNode( colander.String(), #widget=deferred_jns_trx widget=widget.SelectWidget(values=JENIS_TRX)) uraian_trx = colander.SchemaNode(colander.String()) no_bukti_trx = colander.SchemaNode(colander.String()) tgl_bukti_trx = colander.SchemaNode(colander.String(), oid='tgl_bukti_trx') cara_penyetoran = colander.SchemaNode( colander.Integer(), widget=widget.SelectWidget(values=CARA_SETOR)) nm_penandatangan_sts = colander.SchemaNode(colander.String()) jab_penandatangan_sts = colander.SchemaNode(colander.String()) nip_penandatangan_sts = colander.SchemaNode(colander.String())
class PositionSchema(MappingSchema): db = sqlite() categories = db.getAllCategories() categories = [(cat, cat) for (cat, comment) in categories] allItems = db.getAllItems() optgroups = defaultdict(lambda: [],{}) for (itemid, name, category, comment) in allItems: optgroups[category].append((itemid, name)) items = [widget.OptGroup(category, *values) for category, values in sorted(optgroups.items())] quantity = SchemaNode( Integer(), default=1 ) item_id = SchemaNode( String(), widget=widget.SelectWidget(values=items), description = 'Item' ) category = SchemaNode( String(), widget=widget.SelectWidget(values=categories), description = 'Name der Kategorie' ) price = SchemaNode( Decimal(), widget=widget.MoneyInputWidget() ) ean = SchemaNode(String(), missing='', description = 'EAN') tags = SchemaNode(String(), missing='', description = 'tags' ) name = 'position' def update(self): allItems = self.db.getAllItems() optgroups = defaultdict(lambda: [],{}) for (itemid, name, category, comment) in allItems: optgroups[category].append((itemid, name)) items = [widget.OptGroup(category, *values) for category, values in sorted(optgroups.items())] self['item_id'].widget = widget.SelectWidget(values=items) categories = self.db.getAllCategories() categories = [(cat, cat) for (cat, comment) in categories] self['category'].widget = widget.SelectWidget(values=categories)
class Galaxy(colander.MappingSchema): area = (('Populated', 'Populated'), ('Galaxy', 'Galaxy')) system_name = colander.SchemaNode( colander.String(), description="System name (Or something close to it") search_area = colander.SchemaNode( colander.String(), widget=widget.SelectWidget(values=area), validator=colander.OneOf(('Populated', 'Galaxy')), description="Search only populated systems, or all systems?")
class ScheduleSchema(colander.Schema): selectroute = colander.SchemaNode(colander.Integer(), widget=widget.SelectWidget(values=routechoices), required=True, title='Select route') departure_time = colander.SchemaNode(colander.DateTime(), widget=widget.DateTimeInputWidget(id='departuretime'), required=True) reverse_route = colander.SchemaNode(colander.Boolean(), widget=widget.CheckboxWidget(id='reverseroute'), required=True, default=False)
class AddSchema(colander.Schema): choices = DBSession.query(UrusanModel.id, UrusanModel.nama).order_by( UrusanModel.nama).all() kode = colander.SchemaNode(colander.String(), validator=colander.Length(max=18)) urusan_id = colander.SchemaNode( colander.Integer(), widget=widget.SelectWidget(values=choices), ) nama = colander.SchemaNode(colander.String()) kategori = colander.SchemaNode(colander.String()) singkat = colander.SchemaNode(colander.String()) disabled = colander.SchemaNode(colander.Boolean())
def get_list_schema(is_admin=False): """ Return a schema for invoice listing is_admin If True, we don't provide the company selection node and we reduce the customers to the current company's """ schema = forms.lists.BaseListsSchema().clone() schema.insert( 0, colander.SchemaNode( colander.String(), name='status', widget=deform_widget.SelectWidget(values=STATUS_OPTIONS), validator=colander.OneOf([s[0] for s in STATUS_OPTIONS]), missing='both', )) schema.insert(0, company.customer_node(is_admin)) if is_admin: schema.insert( 0, colander.SchemaNode( custom_types.AmountType(), name='ttc', missing=colander.drop, description=u"Montant TTC", )) schema.insert( 0, company.company_node( name='company_id', missing=colander.drop, widget_options={'default': ('', u'Toutes les entreprises')})) node = forms.year_select_node( name='year', query_func=invoice.get_invoice_years, ) schema.insert(0, node) schema['search'].description = u"Identifiant du document" return schema
class AttendanceEntry(colander.MappingSchema): """ Relationship edition Allows to edit the attendance status """ account_id = forms.id_node() timeslot_id = forms.id_node() status = colander.SchemaNode( colander.String(), widget=deform_widget.SelectWidget(values=ATTENDANCE_STATUS), validator=colander.OneOf(dict(ATTENDANCE_STATUS).keys()), default='registered', missing='registered', )
def before(self, form): allowed_countries_in_settings = self.request.registry.settings.get( 'allowed_countries') if allowed_countries_in_settings: allowed_countries = [ l.split('=') for l in allowed_countries_in_settings.splitlines() if l ] else: allowed_countries = [(c.alpha2, c.name) for c in pycountry.countries] form['country'].widget = widget.SelectWidget( values=[(code.strip(), country.strip()) for code, country in allowed_countries])
class FormInserirP(CSRFSchema): """ Formulário para inserção de novo ponto/atividade no mapa """ atividade = SchemaNode( String(), title='Título', description='Nome do local') endereco = SchemaNode( String(), missing=unicode(''), description='Endereço do local', title='Endereço', validator=Length(max=100), widget=widget.TextAreaWidget(rows=1, cols=60) ) tipo = SchemaNode( String(), missing=unicode(''), widget=widget.SelectWidget(values=tipoLocal), title = "Gênero", ) """ foto = SchemaNode( deform.FileData(), widget=widget.FileUploadWidget(tmpstore), missing=unicode(''), description='Carregar foto' ) """ foto = SchemaNode( String(), missing=unicode(''), description='Carregar foto' ) video = SchemaNode( String(), missing=unicode(''), description='Carregar url de vídeo' ) descricao = SchemaNode( String(), missing=unicode(''), description='Comente sobre o orçamento', title='Descrição', validator=Length(max=100), widget=widget.TextAreaWidget(rows=10, cols=60) )
class FormPesqMapa(CSRFSchema): """ Formulário de pesquisa no mapa """ ano = SchemaNode( String(), missing=unicode(''), widget=widget.SelectWidget(values=anoMapa), title = "Ano", ) endereco = SchemaNode( String(), missing=unicode(''), title='Ir para endereço', validator=Length(max=100), widget=widget.TextAreaWidget(rows=1, cols=60) )
class AddSchema(colander.Schema): unit_kd = colander.SchemaNode(colander.String(), title="SKPD") unit_nm = colander.SchemaNode(colander.String(), missing=colander.drop) kode = colander.SchemaNode(colander.String(), title="No. SSPD") uraian = colander.SchemaNode(colander.String()) alamat = colander.SchemaNode(colander.String()) uraian = colander.SchemaNode(colander.String(), missing=colander.drop) tgl_trans = colander.SchemaNode(colander.Date()) rekening_kd = colander.SchemaNode(colander.String(), title="Rekening") rekening_nm = colander.SchemaNode(colander.String(), missing=colander.drop) pokok = colander.SchemaNode(colander.String()) denda = colander.SchemaNode(colander.String()) bunga = colander.SchemaNode(colander.String()) sumber_id = colander.SchemaNode( colander.String(), widget=widget.SelectWidget(values=SUMBER_ID), title="Sumber") ref_kode = colander.SchemaNode(colander.String(), title="No Bayar") ref_nama = colander.SchemaNode(colander.String(), title="Uraian")
class ItemSchema(MappingSchema): db = sqlite() name = SchemaNode(String(), description = 'Bezeichnung des Items', title='Name') categories = db.getAllCategories() categories = [(cat, cat) for (cat, comment) in categories] category = SchemaNode( String(), widget=widget.SelectWidget(values=categories), description = 'Standardkategorie des Items' ) comment = SchemaNode(String(), widget = widget.TextInputWidget(size=40), missing='', description = 'Kommentar zum Item') title='Neues Item' def update(self): categories = self.db.getAllCategories() categories = [(cat, cat) for (cat, comment) in categories] self['category'].widget = widget.SelectWidget(values=categories)
def deferred_jenis_id(node, kw): values = kw.get('jenis_id', []) return widget.SelectWidget(values=values)
def deferred_status(node, kw): values = kw.get('daftar_status', []) return widget.SelectWidget(values=values)
def deferred_tp(node, kw): values = kw.get('list_tp', []) return widget.SelectWidget(values=values)
def deferred_jns_reskom(node, kw): values = kw.get('list_reskom', []) return widget.SelectWidget(values=values)
def deferred_company_select_widget(node, kw): values = [(i.id, i.title) for i in Company.query.all()] return widget.SelectWidget(values=values)
def deferred_project_choice(node, kw): projects = get_project_options(kw['request']) return widget.SelectWidget(values=projects)
def deferred_sumber_id(node, kw): values = kw.get('sumber_id', []) return widget.SelectWidget(values=values)
def deferred_customer_choice(node, kw): request = kw['request'] customers = get_customer_options(request) return widget.SelectWidget(values=customers)
validator=colander.Length(min=5, max=100), widget=widget.CheckedPasswordWidget(size=20), description='Enter a password') email = colander.SchemaNode(colander.String(), validator=colander.Email()) gender = colander.SchemaNode(colander.String(), widget=widget.RadioChoiceWidget(values=(('male', 'Male'), ('female', 'Female'),('other', 'Other'))), title='Choose your gender', description='Select a gender', validator=colander.OneOf(('male', 'female', 'other'))) interestedin = colander.SchemaNode(Set(), widget=widget.CheckboxChoiceWidget(values=(('men', 'Men'), ('women', 'Women')))) lookingfor =colander.SchemaNode(Set(), widget=widget.CheckboxChoiceWidget(values=looking_fors)) age = colander.SchemaNode(colander.String(), widget=widget.SelectWidget(values=ages)) class EditSchema(colander.MappingSchema): """ Profile edit schema for form creation and validation. """ firstname = colander.SchemaNode(colander.String()) lastname = colander.SchemaNode(colander.String()) gender = colander.SchemaNode(colander.String(), widget=widget.RadioChoiceWidget(values=(('male', 'Male'), ('female', 'Female'),('other', 'Other'))), title='Choose your gender', description='Select a gender', validator=colander.OneOf(('male', 'female', 'other'))) interestedin = colander.SchemaNode(Set(), widget=widget.CheckboxChoiceWidget(values=interests))
def deferred_phase_choice(node, kw): phases = get_phases_options(kw['request']) return widget.SelectWidget(values=phases)
def deferred_engagement_select_widget(node, kw): values = [(i.id, i.title) for i in Engagement.query.all()] return widget.SelectWidget(values=values)