class JobSchema(colander.MappingSchema): state = colander.SchemaNode(colander.String(), name='state', widget=ChosenSingleWidget(values=job_states), missing=colander.null, default="finished+running") type = colander.SchemaNode(colander.String(), widget=ChosenSingleWidget(values=[('', '---')] + TYPES.items()), missing=colander.null) status = colander.SchemaNode( colander.String(), missing=colander.null, widget=deferred_widget_factory('status_values'))
class UserSchema(Schema): """ The property schema for :class:`substanced.principal.User` objects.""" name = colander.SchemaNode( colander.String(), validator=login_validator, title='Login', ) email = colander.SchemaNode( colander.String(), validator=colander.All( colander.Email(), colander.Length(max=100) ), ) tzname = colander.SchemaNode( colander.String(), title='Timezone', widget=ChosenSingleWidget( values=zip(pytz.all_timezones, pytz.all_timezones) ), validator=colander.OneOf(pytz.all_timezones), ) groupids = MultireferenceIdSchemaNode( choices_getter=groups_choices, title='Groups', )
class Schema(colander.Schema): country = colander.SchemaNode( colander.String(), widget=ChosenSingleWidget(values=choices, placeholder=u'Select a country'), missing=colander.required, )
def topics_widget(node, kw): request = kw['request'] search_catalog = request.search_catalog count, oids, resolver = search_catalog(interfaces=(ITopic, )) values = [] for oid in oids: title = resolver(oid).title values.append((str(oid), title)) return ChosenSingleWidget(values=values)
class MediaSchema(colander.MappingSchema): status = colander.SchemaNode( colander.String(), widget=ChosenSingleWidget( values=[('', '---')] + zip(VOLUME_STATUS_SEVERITY.keys(), VOLUME_STATUS_SEVERITY.keys())), missing=colander.null) storage = colander.SchemaNode( colander.Integer(), missing=colander.null, widget=deferred_widget_factory('storage_values')) pool = colander.SchemaNode(colander.Integer(), missing=colander.null, widget=deferred_widget_factory('pool_values'))
def timezone_widget(node, kw): """ This will return all the timezones available for selection in the profile form """ request = kw.get('request') choices = [ ('', '- None -'), ] timezones = request.db_session.query(Timezone).all() for timezone in timezones: choices.append((str(timezone.pk), timezone.name)) return ChosenSingleWidget(values=choices)
def country_widget(node, kw): """ This will return all the countries available for selection in the profile form """ choices = [ ('', '- None -'), ] request = kw.get('request') countries = request.db_session.query(Country).all() for country in countries: choices.append((str(country.pk), country.name)) return ChosenSingleWidget(values=choices)
def __init__(self, class_, label, value, order_by=None, *filters, **kw): SQLAlchemyWidget.__init__(self, class_, label, value, order_by, *filters) ChosenSingleWidget.__init__(self, **kw)
def tzname_widget(node, kw): #pragma NO COVER return ChosenSingleWidget(values=zip(_ZONES, _ZONES))