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, }))
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")
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, )
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, )
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, )
class ILibrary(ILibraryContent): """""" parent_libraries = RelationList( title=u'Parent Libraries', default=list(), value_type=RelationChoice(source=LibrarySource()), required=False)
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'))
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, )
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, }), )
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, )
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, )
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 )
class IRelatedProfile(model.Schema): """ Marker/Form interface for RelatedProfile """ form.omitted("relatedProfile") relatedProfile = RelationChoice( title=_(u"Related profile"), source=getProfileBinder, required=False, )
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 )
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)
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, )
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, )
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, )
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, )
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')
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, )
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)
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, )
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, )
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, )
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, )
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, )
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, )