class IChooseDossierSchema(Schema):

    dossier = RelationChoice(
        title=_(u'label_accept_select_dossier',
                default=u'Target dossier'),
        description=_(u'help_accept_select_dossier',
                      default=u'Select the target dossier where you like to '
                      'handle the task.'),
        required=True,

        source=RepositoryPathSourceBinder(
            object_provides='opengever.dossier.behaviors.dossier.'
            'IDossierMarker',
            review_state=DOSSIER_STATES_OPEN,
            navigation_tree_query={
                'object_provides': [
                    'opengever.repository.repositoryroot.IRepositoryRoot',
                    'opengever.repository.repositoryfolder.'
                    'IRepositoryFolderSchema',
                    'opengever.dossier.behaviors.dossier.IDossierMarker',
                    ],
                'review_state': ['repositoryroot-state-active',
                                 'repositoryfolder-state-active'] +
                                 DOSSIER_STATES_OPEN,
                }))
Пример #2
0
class IServiziCorrelati(model.Schema):

    servizi_correlati = RelationList(
        title=_("servizi_correlati_label", default="Servizi correlati"),
        description=_(
            "servizi_correlati_description",
            default="Questi servizi non verranno mostrati nel contenuto, ma"
            " permetteranno di vedere questo contenuto associato quando si"
            " visita il servizio",
        ),
        default=[],
        value_type=RelationChoice(
            title="Related", vocabulary="plone.app.vocabularies.Catalog"
        ),
        required=False,
    )
    form.widget(
        "servizi_correlati",
        RelatedItemsFieldWidget,
        vocabulary="plone.app.vocabularies.Catalog",
        pattern_options={
            "maximumSelectionSize": 10,
            "selectableTypes": ["Servizio"],
        },
    )

    model.fieldset(
        "correlati",
        label=_("correlati_label", default="Contenuti collegati"),
        fields=["servizi_correlati"],
    )
    form.order_before(servizi_correlati="IRelatedItems.relatedItems")
Пример #3
0
class IProposal(model.Schema):
    """Proposal Proxy Object Schema Interface"""

    dexteritytextindexer.searchable('title')
    title = schema.TextLine(title=_(u"label_title", default=u"Title"),
                            required=True,
                            max_length=256,
                            defaultFactory=default_title)

    relatedItems = RelationList(
        title=_(u'label_attachments', default=u'Attachments'),
        default=[],
        missing_value=[],
        value_type=RelationChoice(
            title=u"Related",
            source=DossierPathSourceBinder(
                portal_type=("opengever.document.document", "ftw.mail.mail"),
                navigation_tree_query={
                    'object_provides': [
                        'opengever.dossier.behaviors.dossier.IDossierMarker',
                        'opengever.document.document.IDocumentSchema',
                        'opengever.task.task.ITask',
                        'opengever.meeting.proposal.IProposal',
                        'ftw.mail.mail.IMail',
                    ],
                }),
        ),
        required=False,
    )

    mode(predecessor_proposal='hidden')
    predecessor_proposal = RelationChoice(
        title=u'Predecessor proposal',
        default=None,
        missing_value=None,
        required=False,
        source=SolrObjPathSourceBinder(
            portal_type='opengever.meeting.proposal'))

    omitted('date_of_submission')
    date_of_submission = schema.Date(
        description=_('label_date_of_submission',
                      default='Date of submission'),
        default=None,
        missing_value=None,
        required=False,
    )
Пример #4
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,
    )
Пример #5
0
class IStaticDocument(model.Schema, utils.IUserMixin, utils.IVotingMixin):

    title = schema.TextLine(
        title=u'Document name',
        required=True,
    )

    description = schema.Text(
        title=u'Document description',
        required=True,
    )

    file = NamedBlobFile(
        title=u'File',
        required=True,
    )

    file_thumb = NamedBlobFile(
        title=u'File thumb',
        description=u'Thumbnail of the file (if PDF) - will be generated automatically.',
        required=False,
    )

    doc_in_step = RelationList(
        title=u'In pilgrimage steps',
        description=u'Select pilgrimage steps where this document will appear.',
        default=[],
        value_type=RelationChoice(
            source=ObjPathSourceBinder(
                path={'query': '/en/pilgrimage-steps'},
            ),
        ),
        required=False,
    )

    featured_doc_in_step = RelationList(
        title=u'As featured in pilgrimage steps',
        description=u'Select pilgrimage steps where this document will appear as a featured resource.',
        default=[],
        value_type=RelationChoice(
            source=ObjPathSourceBinder(
                path={'query': '/en/pilgrimage-steps'},
            ),
        ),
        required=False,
    )
Пример #6
0
class ILibrary(ILibraryContent):
    """"""

    parent_libraries = RelationList(
        title=u'Parent Libraries',
        default=list(),
        value_type=RelationChoice(source=LibrarySource()),
        required=False)
Пример #7
0
class IHomepage(form.Schema, IBaseHomepage, IImageScaleTraversable):
    """
    Description of the Example Type
    """

    languageindependent('slider_items')
    slider_items = RelationList(
        title=u'Slider items',
        value_type=RelationChoice(source=ObjPathSourceBinder(
            object_provides=ICarouselImageEnabled.__identifier__)),
        required=True)

    languageindependent('news_source')
    news_source = RelationChoice(
        title=u'Source collection for news listing',
        source=ObjPathSourceBinder(object_provides=[
            IATTopic.__identifier__, ICollection.__identifier__
        ]),
        required=False)

    languageindependent('more_news_target')
    more_news_target = RelationChoice(
        title=u'Target for "More News" link',
        source=ObjPathSourceBinder(object_provides=[
            IATTopic.__identifier__, ICollection.__identifier__
        ]),
        required=False,
    )

    languageindependent('events_source')
    events_source = RelationChoice(
        title=u'Source collection for events listing',
        source=ObjPathSourceBinder(object_provides=[
            IATTopic.__identifier__, ICollection.__identifier__
        ]),
        required=False)

    languageindependent('slider_type')
    slider_type = schema.Choice(
        title=_(u'Slider type'),
        default='normal',
        values=['normal', 'full-width'],
        required=True,
        description=_(u'Normal slider requires 510x330px images, Full ' +
                      u'Width slider requires 782x330px images'))
Пример #8
0
class IRelatedItemsSchema(IBaseTileSchema):

    related_items = RelationList(
        title=_(u'label_related_items', default=u'Related Items'),
        default=[],
        value_type=RelationChoice(title=u"Related",
                                  source=ObjPathSourceBinder()),
        required=False,
    )
Пример #9
0
class ISelectTranslation(Interface):
    target = RelationChoice(
        title=_(u"Item"),
        description=_(u"Select the item that is a translation."),
        required=True,
        source=ObjPathSourceBinder(navigation_tree_query={
            'object_provides': interface_name,
        }),
    )
Пример #10
0
class IActionLink(ISymlink):
    symbolic_link = RelationChoice(
        title=_(u"Symbolic link"),
        source=ObjPathSourceBinder(
            navigation_tree_query={"portal_type": ("pstaction", )},
            portal_type=("pstaction", ),
            symlink_status=("void", "source")),
        required=True,
    )
Пример #11
0
class IScooterTile(IBorderTile):

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

    target = RelationChoice(
        title=_(u"Target Collection"),
        source=CatalogSource(object_provides=ICollection.__identifier__),
        required=False,
    )

    target_container = RelationChoice(
        title=_(u"Target Container"),
        source=CatalogSource(object_provides=IDexterityContainer.__identifier__),
        required=False,
    )

    exclude_navigation = schema.Bool(
        title=_(u"Hide items excluded from navigation"),
        required=False,
        default=False,
    )

    count = schema.Choice(
        title=_(u"Count"),
        values=[1,2,3,4],
        required=False,
    )

    style = schema.Choice(
        title=_(u"Card Style"),
        vocabulary='agsci.common.tiles.card_style',
        default=u'image',
        required=False,
    )

    show_item_title = schema.Bool(
        title=_(u"Show Item Title?"),
        description=_(u"(For Image card style)"),
        required=False,
        default=True,
    )
Пример #12
0
class IBicyclePicture(Interface):
    title = schema.TextLine(
        title=_(u'Title'),
        required=True,
    )
    event = RelationChoice(
        title=_(u'Event Select'),
        source=CatalogSource(Type="EventList"),
        required=False,
    )
    place = RelationChoice(
        title=_(u'Place Select'),
        source=CatalogSource(Type="PlaceList"),
        required=False,
    )
    image = NamedBlobImage(
        title=_(u"Upload Image"),
        required=False
    )
Пример #13
0
class IRelatedProfile(model.Schema):
    """
       Marker/Form interface for RelatedProfile
    """
    form.omitted("relatedProfile")
    relatedProfile = RelationChoice(
        title=_(u"Related profile"),
        source=getProfileBinder,
        required=False,
    )
Пример #14
0
class IAdaptationOption(IAceMeasure):
    """ Adaptation Option
    """

    directives.omitted(IEditForm, 'featured')
    directives.omitted(IAddForm, 'featured')

    # directives.omitted(IEditForm, 'year')
    # directives.omitted(IAddForm, 'year')

    form.widget(category="z3c.form.browser.checkbox.CheckBoxFieldWidget")
    category = List(
        title=_(u"General category"),
        description=_(u"Select one or more categories of adaptation options. "
                      u"The 3 options are:"),
        required=False,
        value_type=Choice(
            vocabulary="eea.climateadapt.aceitems_category",),
    )

    form.widget(ipcc_category="z3c.form.browser.checkbox.CheckBoxFieldWidget")
    ipcc_category = List(
        title=_(u"IPCC adaptation options categories"),
        description=_(u"Select one or more categories of adaptation options. "
                      u"The options are:"),
        required=False,
        value_type=Choice(
            vocabulary="eea.climateadapt.aceitems_ipcc_category",),
    )

    casestudies = RelationList(
        title=u"Case studies implemented in the adaption",
        default=[],
        description=_(u"Select one or more case study that this item "
                      u"relates to:"),
        value_type=RelationChoice(
            title=_(u"Related"),
            vocabulary="eea.climateadapt.case_studies"
            # source=ObjPathSourceBinder(),
            # source=CatalogSource(portal_type='eea.climateadapt.adaptionoption'),
        ),
        required=False,
    )

    publication_date = Date(
        title=_(u"Date of item's creation"),
        description=u"The date refers to the moment in which the item "
        u"has been prepared or  updated by contributing "
        u"experts to be submitted for the publication in "
        u"Climate ADAPT."
        u" Please use the Calendar icon to add day/month/year. If you want to "
        u"add only the year, please select \"day: 1\", \"month: January\" "
        u"and then the year",
        required=True
    )
Пример #15
0
class IHomepage(form.Schema, IImageScaleTraversable):
    """
    
    """

    languageindependent('slider_items')
    slider_items = RelationList(
        title=u'Slider items',
        value_type=RelationChoice(source=ObjPathSourceBinder(
            object_provides=ICarouselImageEnabled.__identifier__)),
        required=True)

    languageindependent('news_source')
    news_source = RelationChoice(
        title=u'Source collection for news listing',
        source=ObjPathSourceBinder(object_provides=[
            IATTopic.__identifier__, ICollection.__identifier__
        ]),
        required=False)

    languageindependent('more_news_target')
    more_news_target = RelationChoice(
        title=u'Target for "More News" link',
        source=ObjPathSourceBinder(object_provides=[
            IATTopic.__identifier__, ICollection.__identifier__
        ]),
        required=False,
    )

    languageindependent('video_source')
    video_source = RelationChoice(
        title=u'Source collection for latest video',
        source=ObjPathSourceBinder(object_provides=[
            IATTopic.__identifier__, ICollection.__identifier__
        ]),
        required=False)

    languageindependent('embed_html')
    embed_html = schema.Text(
        title=u'Embed HTML',
        description=u'If set, this will replace the slider/youtube video',
        required=False)
Пример #16
0
class IRelatedItems(Interface):
    """Behavior interface to make a Dexterity type support related items.
    """

    relatedItems = RelationList(
        title=_(u'label_related_items', default=u'Related Items'),
        default=[],
        value_type=RelationChoice(title=u"Related",
                      source=ObjPathSourceBinder()),
        required=False,
        )
Пример #17
0
class ITaskTransitionResponseFormSchema(Interface):
    """Schema-interface class for the task transition response form
    """
    transition = schema.Choice(
        title=_("label_transition", default="Transition"),
        source=util.getTransitionVocab,
        required=False,
    )

    text = schema.Text(
        title=_('label_response', default="Response"),
        required=False,
    )

    date_of_completion = schema.Date(
        title=_(u"label_date_of_completion", default=u"Date of completion"),
        description=_(u"help_date_of_completion", default=u""),
        required=False,
    )

    relatedItems = RelationList(
        title=_(u'label_related_items', default=u'Related Items'),
        default=[],
        missing_value=[],
        value_type=RelationChoice(
            title=u"Related",
            source=DossierPathSourceBinder(
                portal_type=("opengever.document.document",
                             "ftw.mail.mail"), ),
        ),
        required=False,
    )

    reminder_option = schema.Choice(
        title=_("label_reminder", default="Reminder"),
        description=_("help_reminder",
                      default="Set a reminder to get notified based on "
                      "the duedate"),
        source="opengever.task.reminder.TaskReminderOptionsVocabulary",
        required=False,
        defaultFactory=get_current_user_reminder)

    reminder_option_date = schema.Date(title=_(u"lable_reminder_choose_date",
                                               default=u"Choose remind date"),
                                       required=False,
                                       defaultFactory=get_remind_on_date)

    @invariant
    def reminder_option_date_validator(data):
        if data.reminder_option == ReminderOnDate.option_type and \
                not data.reminder_option_date:
            raise Invalid(
                _(u'no_remind_date_error',
                  default=u'Please choose a remind date'))
class IAssessmentItem(form.Schema):
    """Assessment Item
    """

    form.widget(referenceMaterial=ContentTreeFieldWidget)
    referenceMaterial = RelationChoice(
        title=_(u"Reference Material"),
        source=ObjPathSourceBinder(
            object_provides=ITextContent.__identifier__),
        required=False,
    )

    question = RichText(title=_(u"Question"), required=True)

    answer = RichText(
        title=_(u"Answer"),
        required=False,
    )

    marks = schema.Int(
        title=_(u"Marks"),
        required=False,
        default=0,
    )

    form.omitted('answerMarkedCorrect')
    answerMarkedCorrect = schema.Int(
        title=_(u"Answer Marked Correct"),
        description=_(u"The number of times other members have "
                      "confirmed the answer as correct"),
        required=False,
        default=0,
    )

    form.omitted('answerMarkedIncorrect')
    answerMarkedIncorrect = schema.Int(
        title=_(u"Answer Marked Incorrect"),
        description=_(u"The number of times other members have "
                      "marked the answer as incorrect"),
        required=False,
        default=0,
    )

    form.omitted('dateLastUsed')
    dateLastUsed = schema.Datetime(
        title=_(u"Date Last Used"),
        description=_(u"The last time this item was used in a test"),
        required=False,
    )

    learnerResponseTime = schema.Int(
        title=_(u"Learner Response Time"),
        required=False,
    )
Пример #19
0
class IProposal(IBaseProposal):
    """Proposal Proxy Object Schema Interface"""

    committee_oguid = schema.Choice(
        title=_('label_committee', default=u'Committee'),
        source='opengever.meeting.ActiveCommitteeVocabulary',
        required=True)

    relatedItems = RelationList(
        title=_(u'label_attachments', default=u'Attachments'),
        default=[],
        missing_value=[],
        value_type=RelationChoice(
            title=u"Related",
            source=DossierPathSourceBinder(
                portal_type=("opengever.document.document", "ftw.mail.mail"),
                navigation_tree_query={
                    'review_state': {
                        'not': 'document-state-shadow'
                    },
                    'object_provides': [
                        'opengever.dossier.behaviors.dossier.IDossierMarker',
                        'opengever.document.document.IDocumentSchema',
                        'opengever.task.task.ITask',
                        'opengever.meeting.proposal.IProposal',
                        'ftw.mail.mail.IMail',
                    ],
                }),
        ),
        required=False,
    )

    mode(predecessor_proposal='hidden')
    predecessor_proposal = RelationChoice(
        title=_(u'predecessor_proposal_label',
                default=u'Predecessor proposal'),
        default=None,
        missing_value=None,
        required=False,
        source=SolrObjPathSourceBinder(
            portal_type='opengever.meeting.proposal'))
class IProgramme(_IProgramme,model.Schema):
    """
    Programme Profile
    """

    courses = RelationList(
    title=u"Courses",
    default=[],
    value_type=RelationChoice(title=_(u"Course"),
                              source=ObjPathSourceBinder(object_provides=ICourse.__identifier__)),
    required=False,
)
Пример #21
0
class IAddTranslation(form.Schema):

    language = schema.Choice(
        title=_(u"title_language", default=u"Language"),
        source=untranslated_languages,
        required=True,
    )
    content = RelationChoice(
        title=_(u"content"),
        source=addTranslation,
        required=True,
    )
Пример #22
0
class IChildName(Interface):
    childName = RelationList(
        title=_(u'Child name'),
        default=[],
        missing_value=[],
        value_type=RelationChoice(
            title=u"Related",
            source=ObjPathSourceBinder(portal_type='Taxonomie')
        ),
        required=False
    )
    form.widget('childName', SimpleRelatedItemsFieldWidget, vocabulary='collective.object.relateditems')
Пример #23
0
class IAddTranslation(form.Schema):

    language = schema.Choice(
        title=_(u"title_language", default=u"Language"),
        source=untranslated_languages,
        required=True,
    )
    content = RelationChoice(
        title=_(u"content"),
        source=ObjPathSourceBinder({'language': 'all'}),
        required=True,
    )
Пример #24
0
class IContentFragment(form.Schema):
    """
    Content view fragment for composable page
    """

    form.model("models/content_fragment.xml")

    relation_field = RelationChoice(
        title=_(u'My Related Page'),
        source=ObjPathSourceBinder(portal_type='Document'),
        default=None,
        required=False)
Пример #25
0
class IDataGridRow(model.Schema):
    label = schema.TextLine(
        title=u'Label',
        default=u'I am the default label',
    )

    directives.widget(link=ReferenceWidgetFactory)
    link = RelationChoice(
        title=u'Link',
        source=ReferenceObjSourceBinder(),
        required=False,
    )
Пример #26
0
class IExhibicion(form.Schema):
    """A conference program. Programs can contain Sessions.
    """
    form.fieldset(
        'responsables',
        u"Responsables",
        fields=['curador', 'integrantes'],
    )
    cuerpo = RichText(
        title=_(u"Texto principal"),
        required=False,
    )
    bgCabezalHome = NamedBlobImage(
        title=_(u"Imagen Home"),
        description=
        u"Imagen de fondo que se utiliza en la home. Para componerla utilice los ejemplos del banco de imagenes",
        required=False,
    )
    bgCabezalVista = NamedBlobImage(
        title=_(u"Imagen de la vista"),
        description=
        u"Imagen de fondo que se utiliza en la pagina de la exhibición propiamente dicha. Si desea componer una nueva, utilice los ejemplos del banco de imagenes",
        required=False,
    )
    bgCabezalLista = NamedBlobImage(
        title=_(u"Imagen para el listado exhibiciones"),
        description=
        u"Imagen de fondo que se utiliza en el listado de exhibiciones. Si desea componer una nueva, utilice los ejemplos del banco de imagenes",
        required=False,
    )
    baner = NamedBlobImage(
        title=_(u"Imagen para baner"),
        description=
        u"Imagen completa del baner que se muestra en la vista de coleccion. Si desea componer uno nuevo, puede utilizar los ejemplos del banco de imágenes",
        required=False,
    )

    curador = schema.List(title=_(u"Curadores"),
                          value_type=schema.Choice(source=grupoPot),
                          required=False)

    integrantes = schema.List(
        title=_(u"Integrantes"),
        description=u"Listado de personas que colaboran con esta exhibición",
        value_type=schema.Choice(source=grupoPot),
        required=False)
    directives.widget(coleccionR=AutocompleteFieldWidget)
    coleccionR = RelationChoice(
        title=u"Colección Relacionada",
        description=u"Colección a la que pertenece esta exhibicón",
        source=ObjPathSourceBinder(portal_type="arcas.coleccion"),
        required=False,
    )
Пример #27
0
class IBNoticia(model.Schema):
    """Behavior interface to make a type support related items.
    """

    bnoticias = RelationList(
        title=u"Noticias relacionadas",
        default=[],
        value_type=RelationChoice(
            title=u"Noticias acerca do anuncio",
            source=ObjPathSourceBinder(portal_type='News Item')),
        required=False,
    )
Пример #28
0
class IAddTranslation(model.Schema):

    language = schema.Choice(
        title=_(u"title_language", default=u"Language"),
        source=untranslated_languages,
        required=True,
    )
    content = RelationChoice(
        title=_(u"content"),
        vocabulary="plone.app.vocabularies.Catalog",
        required=True,
    )
Пример #29
0
class IAddKeywordForm(form.Schema):
    keyword = schema.TextLine(title=u"Keyword:", required=True)
    ccaitems = RelationList(
        title=u"Select where to implement the new keyword",
        default=[],
        description=(u"Items related to the keyword:"),
        value_type=RelationChoice(
            title=(u"Related"),
            vocabulary="eea.climateadapt.cca_items"
        ),
        required=False,
    )
Пример #30
0
class ICover(Interface):
    """ 首頁 """
    title = schema.TextLine(
        title=_(u"Title"),
        required=True,
    )

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

    heros = RelationList(
        title=_(u"Heros"),
        description=_(u"Rleated items for hero section"),
        value_type=RelationChoice(title=_(u"Related"),
                                  source=CatalogSource(portal_type='Product'),),
        required=True,
    )

    newProduct = RelationList(
        title=_(u"New Product"),
        description=_(u"Rleated items for home page new product list"),
        value_type=RelationChoice(title=_(u"Related"),
                                  source=CatalogSource(portal_type='Product'),),
        required=True,
    )

    hotProduct = RelationList(
        title=_(u"Hot Product"),
        description=_(u"Rleated items for home page not product list"),
        value_type=RelationChoice(title=_(u"Related"),
                                  source=CatalogSource(portal_type='Product'),),
        required=True,
    )

    article = RelationList(
        title=_(u"Article"),
        description=_(u"Rleated items for home page article list"),
        value_type=RelationChoice(title=_(u"Related"),
                                  source=CatalogSource(portal_type='Post', path='/i8d/ishare', review_state='published'),),
        required=True,
    )

    healthy = RelationList(
        title=_(u"Healthy"),
        description=_(u"Rleated items for home page article list"),
        value_type=RelationChoice(title=_(u"Related"),
                                  source=CatalogSource(portal_type='Post', path='/i8d/healthy', review_state='published'),),
        required=True,
    )

    # 先改為 post 給健康專欄用, 以後看狀況再改
    question = RelationList(
        title=_(u"Question"),
        description=_(u"Rleated items for home page question list"),
        value_type=RelationChoice(title=_(u"Related"),
                                  source=CatalogSource(portal_type='Question', ),),
        required=True,
    )