예제 #1
0
class IPublication(model.Schema):
    # dates fieldset
    model.fieldset(
        'dates',
        label=_(u'label_schema_dates', default=u'Dates'),
        fields=['effective', 'expires'],
    )

    effective = schema.Datetime(
        title=_(u'label_effective_date', u'Publishing Date'),
        description=_(
            u'help_effective_date',
            default=u"If this date is in the future, the content will "
            u"not show up in listings and searches until this date."),
        required=False)
    directives.widget('effective', DatetimeFieldWidget)

    expires = schema.Datetime(
        title=_(u'label_expiration_date', u'Expiration Date'),
        description=_(u'help_expiration_date',
                      default=u"When this date is reached, the content will no"
                      u"longer be visible in listings and searches."),
        required=False)
    directives.widget('expires', DatetimeFieldWidget)

    @invariant
    def validate_start_end(data):
        if data.effective and data.expires and data.effective > data.expires:
            raise EffectiveAfterExpires(
                _("error_expiration_must_be_after_effective_date",
                  default=u"Expiration date must be after publishing date."))

    directives.omitted('effective', 'expires')
    directives.no_omit(IEditForm, 'effective', 'expires')
    directives.no_omit(IAddForm, 'effective', 'expires')
예제 #2
0
class ICheckin(model.Schema):
    """ Marker interface and Dexterity Python Schema for Checkin
    """

    start = schema.Datetime(title=_(u"Beginn der Checkin-Zeit"),
                            required=False)
    end = schema.Datetime(title=_(u"Ende der Checkin-Zeit"), required=False)
예제 #3
0
class IVeranstaltung(model.Schema):
    """ Marker interface and Dexterity Python Schema for Veranstaltung
    """
    start = schema.Datetime(title=_(u"Beginn der Veranstaltung"),
                            required=True)
    end = schema.Datetime(title=_(u"Ende der Veranstaltung"), required=True)

    adressen = schema.List(
        title=_(u"Gültige E-Mail-Adressen für diese Veranstaltung"),
        description=
        _(u"Hier legen Sie fest, welche Adressen für diese Veranstaltung einchecken dürfen."
          ),
        value_type=schema.TextLine(),
        constraint=validate_adressen,
        required=True)

    invitation = schema.Bool(
        title=_(u"Checkin Einladungen versenden"),
        description=
        _(u"Bei Markierung dieses Feldes werden die Einladungen mit dem Link zum Checkin automatisch\
                             versendet."))

    @invariant
    def start_before_end(data):
        if data.start > data.end:
            raise Invalid(
                _(u'Der Beginn der Veranstaltung muss vor dem Ende liegen.'))

    @invariant
    def same_day(data):
        if data.start.date() != data.end.date():
            raise Invalid(
                _(u'Veranstaltungsbeginn und Veranstaltungsende müssen am gleichen Tag liegen.'
                  ))
예제 #4
0
파일: proxy.py 프로젝트: sixfeetup/resonate
class IProxy(model.Schema):
    """
    Proxy
    """
    title = schema.TextLine(
        title=_(u"Title"),
        required=True,
        readonly=True,
    )

    description = schema.Text(
        title=_(u"Description"),
        required=False,
    )

    source_type = schema.TextLine(
        title=_(u"Source Type"),
        required=True,
        readonly=True,
    )

    start = schema.Datetime(
        title=_(u"Source Start Date"),
        required=False,
        readonly=True,
    )

    end = schema.Datetime(
        title=_(u"Source End Date"),
        required=False,
        readonly=True,
    )
예제 #5
0
class ImediaPerson(form.Schema, IImageScaleTraversable):
    """
    Folderish Person built with Dexterity
    """

    title = schema.TextLine(
        title=_(u"Name"),
    )

    bornDate = schema.Datetime(
        title=_(u"Born date"),
        required=False,
    )

    diedDate = schema.Datetime(
        title=_(u"Died date"),
        required=False,
    )

    body = RichText(
        title=_(u"Biography"),
        required=False,
    )

    @invariant
    def validateBornDateDiedDate(data):
        if data.bornDate is not None and data.diedDate is not None:
            if data.bornDate > data.diedDate:
                raise StartBeforeEnd(_(
                    u"The born date must be before the died date."))
class ISettings(model.Schema):
    top_banner_body = schema.Text(
        title="Banner to display at the top of the site",
        description="You can use the placeholder <pre>${portal_url}</pre> to refer to assets",
        default="""
            <div class="container-fluid constrain-width banner">
                <div class="row py-3 banner-content">
                    <div class="col-xs-12 col-md-10 col-lg-8 offset-md-1 offset-lg-2">
                        <img alt="Important message follows"
                            class="float-left mr-3"
                            src="${portal_url}/++theme++psu-educational-equity/images/alert-icon-dark.png" />
                        <p>
                            <strong>Coronavirus updates:</strong>
                            To keep up with the latest from Penn State about the global
                            coronavirus outbreak, visit
                            <a href="https://sites.psu.edu/virusinfo/">
                                <b>the Coronavirus information website</b>
                            </a>.
                        </p>
                    </div>
                </div>
            </div>
        """,
    )
    top_banner_publication_date = schema.Datetime(
        title="Only publish after this date",
        description="This date is the first day the banner will be shown",
        required=False
    )
    top_banner_retire_date = schema.Datetime(
        title="Do not publish after this date",
        description="This date is the first day the banner will be hidden",
        required=False
    )
예제 #7
0
class IDateAndTimeSchema(form.Schema):

    form.primary('datetime')
    zope_datetime = schema.Datetime(title=u'Zope Datetime')
    datetime = schema.Datetime(title=u'Datetime')
    date = schema.Date(title=u'Date')
    time = schema.Time(title=u'Time')
예제 #8
0
class IEntry(IContainer):
    """
    This interface is based on the Atom entry definition, from the Atom RFC.
    
    http://tools.ietf.org/html/rfc4287
    """

    # id is generated when we generate entry text

    title = schema.TextLine(title=u"Title", required=True)

    updated = schema.Datetime(title=u"Updated", required=True)

    published = schema.Datetime(title=u"Published", required=False)

    ##     authors = schema.List(title=u"Authors", value_type=schema.Object,
    ##                           default=[])

    ##     contributors = schema.List(title=u"Contributors", value_type=schema.Object,
    ##                                default=[])

    categories = schema.List(title=u"Categories",
                             value_type=schema.TextLine(title=u"Categories"),
                             default=[])

    #links = schema.List(title=u"Links", value_type=schema.TextLine,
    #                    default=[])

    summary = schema.SourceText(title=u"Summary", required=False)

    content = schema.SourceText(title=u"Content")
예제 #9
0
class IQuestionPublicationFields(interface.Interface):
    question_start_datetime = schema.Datetime(
        title=_(u"Publication time of question"),
        description=_(u"Time at which the question should be "
                      u"shown to the public."))
    question_end_datetime = schema.Datetime(
        title=_(u"Expiration time of question"),
        description=_(u"Time at which the question should be "
                      u"hidden from the public."),
        required=False)
    result_start_datetime = schema.Datetime(
        title=_(u"Publication time of results"),
        description=_(u"Time at which the poll results should be "
                      u"shown to the public."))
    result_end_datetime = schema.Datetime(
        title=_(u"Expiration time of results"),
        description=_(u"Time at which the poll results should be "
                      u"hidden from the public."),
        required=False)

    @interface.invariant
    def check_question_end_datetime(data):
        if data.question_end_datetime:
            if data.question_end_datetime < data.question_start_datetime:
                raise interface.Invalid(
                    _(u"Question expiration cannot be "
                      u"before question publication."))

    @interface.invariant
    def check_result_end_datetime(data):
        if data.result_end_datetime:
            if data.result_end_datetime < data.result_start_datetime:
                raise interface.Invalid(
                    _(u"Result display expiration cannot be "
                      u"before result display publication."))
예제 #10
0
class IPublication(model.Schema):
    # dates fieldset
    model.fieldset(
        'dates',
        label=_PMF(u'label_schema_dates', default=u'Dates'),
        fields=['effective', 'expires'],
    )

    effective = schema.Datetime(
        title=_PMF(u'label_effective_date', u'Publishing Date'),
        description=_PMF(
            u'help_effective_date',
            default=u"If this date is in the future, the content will "
            "not show up in listings and searches until this date."),
        required=False)

    expires = schema.Datetime(
        title=_PMF(u'label_expiration_date', u'Expiration Date'),
        description=_PMF(
            u'help_expiration_date',
            default=u"When this date is reached, the content will no"
            "longer be visible in listings and searches."),
        required=False)

    form.omitted('effective', 'expires')
    form.no_omit(IEditForm, 'effective', 'expires')
    form.no_omit(IAddForm, 'effective', 'expires')
예제 #11
0
파일: stats.py 프로젝트: luxcas/collective
class IQueueStatistics(interface.Interface):
    title = schema.TextLine(title=_(u"Title"))

    messages_sent = schema.Int(
        title=_(u"Total messages sent"),
        description=_(u"Total number of messages sent successsfully"),
    )

    new_messages = schema.Int(
        title=_(u"New messages"),
        description=_(u"Messages waiting to be sent"),
    )
    new_last_modified = schema.Datetime(title=_(u"Last Change"))

    sent_messages = schema.Int(
        title=_(u"Sent messages"),
        description=_(u"Messages successfully sent"),
    )
    sent_last_modified = schema.Datetime(title=_(u"Last Change"))

    error_messages = schema.Int(
        title=_(u"Failed messages"),
        description=_(u"Messages with errors"),
    )
    error_last_modified = schema.Datetime(title=_(u"Last Change"))

    retry_messages = schema.Int(
        title=_(u"Retry messages"),
        description=_(u"Messages with errors in the retry queue"),
    )
    retry_last_modified = schema.Datetime(title=_(u"Last Change"))
예제 #12
0
class IWorkflowPanel(Interface):
    """Form for workflow panel"""
    workflow_action = schema.Choice(
        title=_(u'label_change_status', u"Change State"),
        description=_(
            u'help_change_status_action',
            default=
            u"Select the transition to be used for modifying the items state."
        ),
        source=WorkflowActionsSourceBinder(),
        required=False,
    )
    comment = schema.Text(
        title=_(u"label_comments", u"Comments"),
        description=_(
            u'help_publishing_comments',
            default=u"Will be added to the publishing history. If multiple "
            "items are selected, this comment will be attached to all of them."
        ),
        required=False,
    )
    effective_date = schema.Datetime(
        title=_(u'label_effective_date', u'Publishing Date'),
        description=_(
            u'help_effective_date',
            default=u"If this date is in the future, the content will "
            "not show up in listings and searches until this date."),
        required=False)
    expiration_date = schema.Datetime(
        title=_(u'label_expiration_date', u'Expiration Date'),
        description=_(u'help_expiration_date',
                      default=u"When this date is reached, the content will no"
                      "longer be visible in listings and searches."),
        required=False)
예제 #13
0
class IActivity(form.Schema, IImageScaleTraversable):
    """
    Timesheet Activity
    """

    bodyText = RichText(title=_(u'Activity Details'),
                        description=_(u''),
                        required=True)

    resources = schema.List(title=_(u'Resources / Staffs'),
                            description=_(u''),
                            value_type=schema.Choice(
                                vocabulary='plone.app.vocabularies.Users', ),
                            required=True)

    startDate = schema.Datetime(
        title=_(u"Start Date"),
        description=u'',
        required=True,
    )

    endDate = schema.Datetime(
        title=_(u"End Date"),
        description=u'',
        required=True,
    )
예제 #14
0
 class DhtmlxCalendarSittingsEditForm(interface.Interface):
     ids = schema.TextLine(title=u'ID',
                           description=u'Sitting ID',
                           required=False)
     start_date = schema.Datetime(
         title=_(u"Start date and time of sitting"),
         description=_(u"Choose sitting's start date and time"),
         required=True)
     end_date = schema.Datetime(
         title=_(u"End date and time of sitting"),
         description=_(u"Choose sitting's end date and time"),
         required=True)
     venue = schema.Choice(title=_(u"Venue"),
                           source="bungeni.vocabulary.Venues",
                           description=_(u"Venues"),
                           required=True)
     language = schema.Choice(title=_(u"Language"),
                              default=get_default_language(),
                              vocabulary="language_vocabulary",
                              description=_(u'Language'),
                              required=True)
     rec_type = schema.TextLine(title=u'Recurrence Type',
                                required=False,
                                description=u"A string that contains the \
                                         rules for reccurent sittings if any"
                                )
     event_length = schema.TextLine(title=u'Event Length',
                                    required=False,
                                    description=u'Length of event')
     nativeeditor_status = schema.TextLine(title=u'editor status',
                                           required=False,
                                           description=u'Editor Status')
예제 #15
0
class IPublicationOffer(model.Schema):

    form.widget('fieldset_opt', FieldsetFieldWidget)
    fieldset_opt = schema.Text(
        default=_(u'Dates'),
        required=False,
    )

    effective = schema.Datetime(
        title=_PMF(u'label_effective_date', u'Publishing Date'),
        description=_(
            u'help_effective_date',
            default=u"The date the item will be published."),
        required=False
    )

    expired = schema.Datetime(
        title=_PMF(u'label_expiration_date', u'Expiration Date'),
        description=_(
            u'help_expiration_date',
            default=u"The date that the item will expire."),
        required=False,
        defaultFactory=expiresDefaultValue,
    )

    form.omitted('effective')
    form.no_omit(IEditForm, 'expired')
    form.no_omit(IAddForm, 'expired')
예제 #16
0
class IConferencebreak(model.Schema):
    title = schema.TextLine(
        title=_(safe_unicode('Title')),
        description=_(safe_unicode('Conference break title')),
    )

    description = schema.Text(
        title=_(safe_unicode('Conference break summary')),
        required=False,
    )

    primary('details')
    details = RichText(
        title=_(safe_unicode('Conference break details')),
        required=False,
    )

    write_permission(startitem='collective.conferences.ModifyTalktime')
    startitem = schema.Datetime(
        title=_(safe_unicode('Startdate')),
        description=_(safe_unicode('Start date')),
        defaultFactory=startDefaultValue,
        required=False,
    )

    write_permission(enditem='collective.conferences.ModifyTalktime')
    enditem = schema.Datetime(
        title=_(safe_unicode('Enddate')),
        description=_(safe_unicode('End date')),
        defaultFactory=endDefaultValue,
        required=False,
    )
    write_permission(twclength='collective.conferences.ModifyTalktime')
    directives.widget(twclength=RadioFieldWidget)
    twclength = schema.List(
        title=_(safe_unicode('Length')),
        value_type=schema.Choice(source='BreakLength'),
        required=True,
    )

    write_permission(conferencetrack='collective.conferences.ModifyTalktime')
    conferencetrack = RelationList(
        title=_(safe_unicode('Choose the track for this break')),
        default=[],
        value_type=RelationChoice(vocabulary='ConferenceTrack'),
        required=False,
        missing_value=[],
    )
    directives.widget(
        'conferencetrack',
        RadioFieldWidget,
    )

    positionintrack = schema.Int(
        title=_(safe_unicode('Position In The Track')),
        description=_(
            safe_unicode('Choose a number for the order in the track')),
        required=False,
    )
예제 #17
0
class IEventBasic(model.Schema, IDXEvent):
    """ Basic event schema.
    """
    start = schema.Datetime(
        title=_(u'label_event_start', default=u'Event Starts'),
        description=_(u'help_event_start',
                      default=u'Date and Time, when the event begins.'),
        required=True,
        defaultFactory=default_start)
    directives.widget('start',
                      DatetimeFieldWidget,
                      default_timezone=default_timezone,
                      klass=u'event_start')

    end = schema.Datetime(title=_(u'label_event_end', default=u'Event Ends'),
                          description=_(
                              u'help_event_end',
                              default=u'Date and Time, when the event ends.'),
                          required=True,
                          defaultFactory=default_end)
    directives.widget('end',
                      DatetimeFieldWidget,
                      default_timezone=default_timezone,
                      klass=u'event_end')

    whole_day = schema.Bool(title=_(u'label_event_whole_day',
                                    default=u'Whole Day'),
                            description=_(u'help_event_whole_day',
                                          default=u'Event lasts whole day.'),
                            required=False,
                            default=False)
    directives.widget('whole_day',
                      SingleCheckBoxFieldWidget,
                      klass=u'event_whole_day')

    open_end = schema.Bool(title=_(u'label_event_open_end',
                                   default=u'Open End'),
                           description=_(u'help_event_open_end',
                                         default=u"This event is open ended."),
                           required=False,
                           default=False)
    directives.widget('open_end',
                      SingleCheckBoxFieldWidget,
                      klass=u'event_open_end')

    # icalendar event uid
    sync_uid = schema.TextLine(required=False)
    directives.mode(sync_uid='hidden')

    @invariant
    def validate_start_end(data):
        if (data.start and data.end and data.start > data.end
                and not data.open_end):
            raise StartBeforeEnd(
                _("error_end_must_be_after_start_date",
                  default=u"End date must be after start date."))
class ICoupon(model.Schema):

    code = schema.TextLine(title=u'Code', )

    categories = schema.Set(
        title=u'Product Category',
        description=u'If specified, this coupon will only apply to '
        u'products from the specified categories.',
        value_type=schema.Choice(
            vocabulary='jazkarta.shop.product_categories', ),
    )

    scope = schema.Choice(
        title=u'Discount applies to',
        values=(
            u'One item',
            u'All items in cart',
        ),
    )

    amount = Currency(title=u'Discount Amount', )

    unit = schema.Choice(
        title=u'Discount Unit',
        values=(u'$', u'%'),
    )

    per_user_limit = schema.Int(
        title=u'Use Limit Per User',
        description=u'The number of times this coupon may be used '
        u'by an individual. Enter 0 for unlimited.',
        default=1,
    )

    product = schema.Choice(
        title=u'Specific Product',
        description=u'Optionally specify one product to which this coupon '
        u'may be applied.',
        source=CatalogSource(
            object_provides='jazkarta.shop.interfaces.IProduct'),
        required=False,
    )

    # excluded_products = schema.Set(
    #     title=u'Excluded Products',
    #     description=u'Products for which this coupon may not be used.',
    #     value_type=schema.Choice(
    #         source=CatalogSource(
    #             object_provides='jazkarta.shop.interfaces.IProduct'),
    #     ),
    #     required=False,
    # )

    start = schema.Datetime(title=u'Start Date', )

    end = schema.Datetime(title=u'End Date', )
예제 #19
0
class IEventBasic(model.Schema):
    """ Basic event schema.
    """
    model.fieldset(
        'dates',
        fields=['timezone'],
        label=_PMF(u'label_schema_dates', default=u'Dates'),
    )

    start = schema.Datetime(
        title=_(u'label_event_start', default=u'Event Starts'),
        description=_(u'help_event_start',
                      default=u'Date and Time, when the event begins.'),
        required=True)

    end = schema.Datetime(title=_(u'label_event_end', default=u'Event Ends'),
                          description=_(
                              u'help_event_end',
                              default=u'Date and Time, when the event ends.'),
                          required=True)

    whole_day = schema.Bool(title=_(u'label_event_whole_day',
                                    default=u'Whole Day'),
                            description=_(u'help_event_whole_day',
                                          default=u'Event lasts whole day.'),
                            required=False,
                            default=False)

    open_end = schema.Bool(title=_(u'label_event_open_end',
                                   default=u'Open End'),
                           description=_(u'help_event_open_end',
                                         default=u"This event is open ended."),
                           required=False,
                           default=False)

    # TODO: form.order_before(timezone="IPublication.effective")
    timezone = schema.Choice(
        title=_(u'label_event_timezone', default=u'Timezone'),
        description=_(
            u'help_event_timezone',
            default=u'Select the Timezone, where this event happens.'),
        required=True,
        vocabulary="plone.app.event.AvailableTimezones")

    # icalendar event uid
    sync_uid = schema.TextLine(required=False)
    form.mode(sync_uid='hidden')

    @invariant
    def validate_start_end(data):
        # data_postprocessing sets end=start if open_end
        if data.start > data.end and not data.open_end:
            raise StartBeforeEnd(
                _("error_end_must_be_after_start_date",
                  default=u"End date must be after start date."))
예제 #20
0
class IDublinCore(Interface):
    """We basically just want the IFormFieldProvider interface applied
        There's probably a zcml way of doing this. """
    created = schema.Datetime(
        title=u'Creation Date',
        description=u"The date and time that an object is created. "
        u"\nThis is normally set automatically.")

    modified = schema.Datetime(
        title=u'Modification Date',
        description=u"The date and time that the object was last modified in a\n"
        u"meaningful way.")
예제 #21
0
class IDatetime(IDatetime):

    min = schema.Datetime(
        title=interfaces.IDatetime['min'].title,
        required=interfaces.IDatetime['min'].required,
        default=interfaces.IDatetime['min'].default,
    )

    max = schema.Datetime(
        title=interfaces.IDatetime['max'].title,
        required=interfaces.IDatetime['max'].required,
        default=interfaces.IDatetime['max'].default,
    )
예제 #22
0
class ISession(form.Schema, IImageScaleTraversable):
    """
    Conference Session
    """

    title = schema.TextLine(title=_(u'Session Name'))

    description = schema.Text(
        title=_(u'Session summary'),
        description=_(u'Short description of session topics'),
    )

    start = schema.Datetime(
        title=_(u'Session starts'),
        defaultFactory=default_start,
    )

    end = schema.Datetime(title=_(u'Session ends'), defaultFactory=default_end)

    accessible = schema.Choice(
        title=_(u'Accessible?'),
        values=(_(u'Yes'), _(u'No')),
        default='Yes',
    )
    form.widget(accessible="z3c.form.browser.radio.RadioFieldWidget")

    tracks = schema.List(
        title=_(u'Tracks for this session'),
        value_type=schema.Choice(title=u'dummy', source=trackVocabulary),
    )

    searchable('details')
    details = RichText(title=_(u'Details'))

    presenters = RelationList(
        title=u"Presenters",
        default=[],
        value_type=RelationChoice(
            title=_(u"Presenter"),
            source=ObjPathSourceBinder(
                object_provides=
                'collective.dexterity_class.presenter.IPresenter')),
        required=False,
    )

    @invariant
    def checkDates(data):
        if data.start is not None and data.end is not None:
            if data.start > data.end:
                raise StartBeforeEnd(
                    _(u"The start date must be before the end date."))
예제 #23
0
class IBuyablePeriodBehavior(model.Schema):
    """Buyable period behavior.
    """

    model.fieldset('shop',
                   label=u"Shop",
                   fields=['buyable_effective', 'buyable_expires'])

    buyable_effective = schema.Datetime(title=_(
        u'label_buyable_effective_date', default=u'Buyable effective date'),
                                        required=False)

    buyable_expires = schema.Datetime(title=_(
        u'label_buyable_expiration_date', default=u'Buyable expiration date'),
                                      required=False)
class IAddress(Interface):
    address_type = schema.Choice(title=u'Address Type',
                                 required=True,
                                 values=[u'Work', u'Home'])
    # A Relation field within a datagrid is a tricky one to get
    # working.  Uncomment if you want to try this.
    # link = RelationChoice(
    #         title=u"Link to content",
    #         source=ObjPathSourceBinder(),
    #         required=True)
    line1 = schema.TextLine(title=u'Line 1', required=True)
    line2 = schema.TextLine(title=u'Line 2', required=False)
    city = schema.TextLine(title=u'City / Town', required=True)
    country = schema.TextLine(title=u'Country', required=True)
    frozenField = schema.TextLine(title=u'Don\'t change',
                                  readonly=True,
                                  required=True)

    # A sample integer field
    personCount = schema.Int(title=u'Persons', required=False, min=0, max=15)

    # A sample datetime field
    if widget_datetime is not None:
        widget(dateAdded=DataGridFieldDatetimeFieldWidget)
    dateAdded = schema.Datetime(title=u"Date added")

    # A sample checkbox
    billed = schema.Bool(title=u"Billed")
예제 #25
0
class IMessage(model.Schema):

    subject = schema.TextLine(
        title=_(u"Subject"),
        required=True,
    )

    message_from = schema.TextLine(
        title=_(u"From"),
        required=True,
        defaultFactory=getCurrentUser,
    )

    message_to = schema.Choice(
        title=_(u"To"),
        source=possibleRecipients,
        required=True,
    )

    body = RichText(
        title=_(u"Body"),
        required=False,
    )

    unread = schema.Bool(
        title=_(u"Unread"),
        default=True
    )

    creation_date = schema.Datetime(
        title=_(u"Created at"),
        default=datetime.datetime.now()
    )
class IAddress(Interface):
    address_type = schema.Choice(title=u'Address Type',
                                 required=True,
                                 values=[u'Work', u'Home'])
    # Uncomment, if you want to try the relationfield
    #    link = RelationChoice(
    #        title=u"Link to content",
    #        source=CatalogSource(portal_type=['Document']),
    #        required=True
    #    )
    line1 = schema.TextLine(title=u'Line 1', required=True)
    line2 = schema.TextLine(title=u'Line 2', required=False)
    city = schema.TextLine(title=u'City / Town', required=True)
    country = schema.TextLine(title=u'Country', required=True)
    frozenField = schema.TextLine(title=u'Don\'t change',
                                  readonly=True,
                                  required=True)

    # A sample integer field
    personCount = schema.Int(
        title=u'Persons',
        description=u'Enter number of persons (min 0 and max 15)',
        required=False,
        min=0,
        max=15)

    # A sample datetime field
    if widget_datetime is not None:
        widget(dateAdded=DataGridFieldDatetimeFieldWidget)
    dateAdded = schema.Datetime(title=u"Date added")

    # A sample checkbox
    billed = schema.Bool(title=u"Billed")
예제 #27
0
class ISendAndPreviewForm(interface.Interface):
    channel = schema.Choice(
        title=_(u"The mailing-list to send this through"),
        vocabulary='collective.singing.vocabularies.SendableChannelVocabulary',
    )

    include_collector_items = schema.Bool(
        title=_(u"Include collector items"),
        description=_(u"Append automatically collected content in this "
                      "send-out"),
        default=True,
    )

    address = schema.TextLine(
        title=_(u"Address to send the preview to"),
        description=_(
            u"This is only required if you click 'Send preview' below"),
        required=False,
    )

    datetime = schema.Datetime(
        title=_(u"Scheduled time"),
        description=_(u"This is only required if you click "
                      "'Schedule distribution' below"),
        default=datetime.datetime.now(),
        required=False,
    )
예제 #28
0
class IOldFields(model.Schema):
    """ Add Old Fields """
    #    form.mode(oldPicturePath='hidden')
    oldPicturePath = schema.TextLine(
        title=_(u"Old Picture Path"),
        required=False,
    )

    form.mode(oldKeywords='hidden')
    oldKeywords = schema.TextLine(
        title=_(u"Old Keywords"),
        required=False,
    )

    form.mode(oldCreateTime='hidden')
    oldCreateTime = schema.Datetime(
        title=_(u"Old Create Time"),
        required=False,
    )

    form.mode(oldEbookURL='hidden')
    oldEbookURL = schema.TextLine(
        title=_(u"Old Ebook URL"),
        required=False,
    )
예제 #29
0
class IPublicationRowSchema(Interface):

    ai_id = schema.TextLine(title=_(u"ai_id"), required=False)

    title = schema.TextLine(title=_(u"Title"), required=False)

    doi = schema.TextLine(title=_(u"URL"), required=False)

    journal_title = schema.TextLine(title=_(u"Journal Title"), required=False)

    published_on = schema.Datetime(
        title=_(u'Published On'),
        required=False,
    )

    abstract = RichText(
        title=_(u"Abstract"),
        required=False,
    )

    contributors = schema.List(
        title=_(u"Contributors"),
        value_type=schema.TextLine(required=True),
        required=False,
    )
예제 #30
0
class ISubscriber(IEmail):
    """ Marker interface and Dexterity Python Schema for Player
    """
    pseudo = schema.TextLine(
        title=_(u'your pseudo'),
        description=_(u'pseudo_description'),
        required=True,
    )

    first_name = schema.TextLine(
        title=_(u'First Name'),
        required=True,
    )

    last_name = schema.TextLine(
        title=_(u'Last Name'),
        required=True,
    )
    directives.omitted('register_date')
    directives.no_omit(
        IEditForm,
        'register_date',
    )
    register_date = schema.Datetime(
        title=_(u'registring date'),
        required=False,
        # defaultFactory=registerDate
    )