class AddForm(base.AddForm): form_fields = form.Fields(ISeminarsPortlet) label = _(u"Adding the Seminars Portlet") description = _(u"This portlet lists upcoming Seminars.") def create(self, data): return Assignment(**data)
class ISeminarsPortlet(IPortletDataProvider): """ """ header = schema.TextLine(title=_(u"Portlet header"), description=_(u"Title of the rendered portlet"), default=default_header, required=True) count = schema.Int(title=_(u'Number of Seminars to display'), required=True, default=5) state = schema.Tuple( title=_(u"Workflow state"), description=_(u"You may limit the displayed Seminars to a " u"specific workflow state.."), default=('published', ), required=True, value_type=schema.Choice( vocabulary="plone.app.vocabularies.WorkflowStates")) subject = schema.Tuple( title=_(u"Categories"), description=_( u"Pick one or more categories with which you want to filter " u"Seminars."), default=tuple(), required=False, value_type=schema.Choice(vocabulary=categories_vocabulary)) seminarsfolder = schema.Choice( title=_(u'Seminars link'), description=_( u"Choose a folder which the portlet title and " u"'Upcoming Seminars' link will point to. This is optional."), required=False, source=SearchableTextSourceBinder( { 'object_provides': [ folder.IATFolder.__identifier__, folder.IATBTreeFolder.__identifier__, document.IATDocument.__identifier__, ] }, default_query='path:'), )
from Products.Archetypes import atapi from Products.LinguaPlone.I18NBaseObject import AlreadyTranslated from Products.LinguaPlone.I18NOrderedBaseFolder import I18NOrderedBaseFolder from Products.Relations.field import RelationField from Products.LinguaPlone import permissions from slc.seminarportal import seminarportalMessageFactory as _ from slc.seminarportal.config import PROJECTNAME from slc.seminarportal.interfaces import ISpeech SpeechSchema = atapi.OrderedBaseFolderSchema.copy() + ATEventSchema.copy() + \ atapi.Schema(( RelationField( name='speakers', widget=ReferenceBrowserWidget( label=_(u"label_speech_speakers", default=u'Speaker(s)'), base_query={'portal_type': 'SPSpeaker', 'sort_on': 'getSortableName'}, allow_browse=1, allow_search=1, show_results_without_query=1, image_portal_types=('SPSpeaker',), image_method='image_icon', macro='seminarportal_referencebrowser', ), languageIndependent=True, allowed_types=('SPSpeaker',), multiValued=1, relationship='speech_speakers', ), ))
class EditForm(base.EditForm): form_fields = form.Fields(ISeminarsPortlet) label = _(u"Editing the Seminars Portlet") description = _(u"This portlet lists upcoming Seminars.")
from plone.memoize.compress import xhtml_compress from plone.memoize.instance import memoize from plone.portlets.interfaces import IPortletDataProvider from Products.Archetypes.utils import shasattr from Products.ATContentTypes.interface import folder from Products.ATContentTypes.interface import document from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile from Products.CMFCore.utils import getToolByName from slc.seminarportal import _ from slc.seminarportal import is_osha_installed from slc.seminarportal.portlets.base import BaseRenderer if is_osha_installed: default_header = _(u"Our Events") categories_vocabulary = "osha.policy.vocabularies.categories" domain = "osha" else: default_header = _(u"Seminars") categories_vocabulary = "slc.seminarportal.vocabularies.categories" domain = "plone" class ISeminarsPortlet(IPortletDataProvider): """ """ header = schema.TextLine(title=_(u"Portlet header"), description=_(u"Title of the rendered portlet"), default=default_header, required=True) count = schema.Int(title=_(u'Number of Seminars to display'),
from Products.CMFCore import permissions from Products.Archetypes.atapi import OrderedBaseFolder # from Products.LinguaPlone.I18NOrderedBaseFolder import I18NOrderedBaseFolder from Products.Relations.field import RelationField from slc.seminarportal.config import PROJECTNAME from slc.seminarportal.interfaces import ISpeaker from slc.seminarportal.permissions import ASSIGN_SPEAKERS_TO_SPEECHES from slc.seminarportal import seminarportalMessageFactory as _ SpeakerSchema = atapi.OrderedBaseFolderSchema.copy() + atapi.Schema(( atapi.StringField( name='firstName', widget=atapi.StringWidget( label=_(u"label_spaker_first_name", default=u"First Name"), ), required=True, schemata="default", searchable=True ), atapi.StringField( name='middleName', widget=atapi.StringWidget( label=_(u"label_speaker_middle_name", default=u"Middle Name"), ), required=False, schemata="default", searchable=True ), atapi.StringField(
from Products.LinguaPlone.I18NBaseObject import AlreadyTranslated from Products.LinguaPlone.I18NOrderedBaseFolder import I18NOrderedBaseFolder from Products.LinguaPlone import permissions from slc.seminarportal.interfaces import ISeminar from slc.seminarportal.config import PROJECTNAME, ALLOWABLE_TEXT_TYPES from slc.seminarportal import seminarportalMessageFactory as _ SeminarSchema = atapi.BaseFolderSchema.copy() + \ ATEventSchema.copy() + atapi.Schema(( atapi.ImageField( name='logo', widget=atapi.ImageWidget( label=_(u"label_seminar_logo", default=u"Graphic or Logo for the event"), ), languageIndependent=True, original_size=(200, 200), sizes={'thumb': (100, 125), 'normal': (200, 200)}, default_output_type='image/jpeg', allowable_content_types=('image/gif', 'image/jpeg', 'image/png'), ), atapi.TextField( name='summary', allowable_content_types=ALLOWABLE_TEXT_TYPES, widget=atapi.RichWidget( label=_(u"label_seminar_summary", default=u"General Description/Summary of the event"), macro='seminar_textarea', ),
from plone.memoize.compress import xhtml_compress from plone.memoize.instance import memoize from plone.portlets.interfaces import IPortletDataProvider from Products.Archetypes.utils import shasattr from Products.ATContentTypes.interface import folder from Products.ATContentTypes.interface import document from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile from Products.CMFCore.utils import getToolByName from slc.seminarportal import _ from slc.seminarportal import is_osha_installed from slc.seminarportal.portlets.base import BaseRenderer if is_osha_installed: default_header = _(u"Our Events") categories_vocabulary = "osha.policy.vocabularies.categories" domain = "osha" else: default_header = _(u"Seminars") categories_vocabulary = "slc.seminarportal.vocabularies.categories" domain = "plone" class ISeminarsPortlet(IPortletDataProvider): """ """ header = schema.TextLine( title=_(u"Portlet header"), description=_(u"Title of the rendered portlet"), default=default_header, required=True