def post_title(): message = _(u"posts_by_authors", default=u"Posts by $authors", mapping={"authors": context.getTitle()}) if translate: ## Plone 4 return translate(message) ## for Plone 3 return context.translate(message)
def post_title(): message = _( u"posts_by_keywords", default=u"Posts about $keywords", mapping={"keywords": context.getTitle()} ) if translate: ## Plone 4 return translate(message) ## for Plone 3 return context.translate(message)
from zope.formlib import form from zope.interface import implements from plone.app.portlets.portlets import base from plone.app.portlets.browser.formhelper import NullAddForm from plone.portlets.interfaces import IPortletDataProvider from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile from quills.app import QuillsAppMessageFactory as _ from base import BasePortletRenderer PORTLET_TITLE = _(u"Tag Cloud") PORTLET_DESC = _(u"This portlet displays a tag cloud.") class ITagCloudPortlet(IPortletDataProvider): """A tag cloud portlet. """ class Assignment(base.Assignment): implements(ITagCloudPortlet) @property def title(self): return PORTLET_TITLE class Renderer(BasePortletRenderer, base.Renderer): _template = ViewPageTemplateFile('tagcloud.pt')
from Products.CMFCore.utils import getToolByName # Plone imports from plone.app.portlets.portlets import base from plone.app.portlets.browser.formhelper import NullAddForm from plone.memoize.instance import memoize from plone.portlets.interfaces import IPortletDataProvider # Quills imports from quills.app import QuillsAppMessageFactory as _ # Local imports from quills.app.portlets.base import BasePortletRenderer PORTLET_TITLE = _(u"Weblog Categories") PORTLET_DESC = _(u"This portlet provides list of weblog categories.") class IWeblogCategoriesPortlet(IPortletDataProvider): """A weblog administration portlet. """ class Assignment(base.Assignment): implements(IWeblogCategoriesPortlet) @property def title(self): return PORTLET_TITLE
from plone.app.portlets.portlets import base from plone.app.portlets.browser.formhelper import NullAddForm from plone.memoize.compress import xhtml_compress from plone.memoize.instance import memoize from plone.portlets.interfaces import IPortletDataProvider # Quills imports from quills.core.interfaces import IWeblogLocator from quills.app.interfaces import IWeblogEnhancedConfiguration from quills.app import QuillsAppMessageFactory as _ # Local imports from base import BasePortletRenderer PORTLET_TITLE = _(u"Weblog Admin") PORTLET_DESC = _(u"This portlet provides useful admin functions for a weblog.") class IWeblogAdminPortlet(IPortletDataProvider): """A weblog administration portlet. """ class Assignment(base.Assignment): implements(IWeblogAdminPortlet) @property def title(self): return PORTLET_TITLE
from Products.CMFCore.utils import getToolByName from plone.memoize.instance import memoize # Quills imports from quills.core.interfaces import IBaseContent from quills.core.interfaces import IWeblogEnhanced from quills.core.interfaces import IWeblog from quills.app.utilities import recurseToInterface from quills.app import QuillsAppMessageFactory as _ from quills.core.interfaces import IPossibleWeblogEntry # Local imports from quills.app.portlets.base import BasePortletRenderer PORTLET_TITLE = _(u"Bloggers") PORTLET_DESC = _(u"This portlet lists weblog authors.") class IBloggersPortlet(IPortletDataProvider): blog_path = schema.TextLine( title=_(u"Path to Blog"), description=_(u"Physical path to blog, from the plone object, 'blog' for ex."), required=True) class Assignment(base.Assignment): implements(IBloggersPortlet) def __init__(self, blog_path='/blog'):
from plone.portlets.interfaces import IPortletDataProvider from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile from Products.CMFCore.utils import getToolByName # Quills imports from quills.core.interfaces import IWeblogEnhanced from quills.core.interfaces import IWeblog from quills.app.utilities import recurseToInterface from quills.app import QuillsAppMessageFactory as _ # Local imports from base import BasePortletRenderer PORTLET_TITLE = _(u"Quills") PORTLET_DESC = _(u"This portlet provides links to the various feeds of this instance.") class IQuillsLinksPortlet(IPortletDataProvider): """A weblog administration portlet. """ class Assignment(base.Assignment): implements(IQuillsLinksPortlet) @property def title(self): return PORTLET_TITLE
from plone.app.portlets.portlets import base from plone.memoize.compress import xhtml_compress from plone.portlets.interfaces import IPortletDataProvider from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile # Quills imports from quills.core.interfaces import IWeblogLocator from quills.app.browser.baseview import BaseView from quills.app import QuillsAppMessageFactory as _ # Local imports from base import BasePortletRenderer PORTLET_TITLE = _(u"Recent Entries") PORTLET_DESC = _(u"This portlet lists recent weblog entries.") class IRecentWeblogEntriesPortlet(IPortletDataProvider): max_entries = schema.Int( title=_(u'Maximum entries'), description=_(u"What's the maximum number of entries to list?"), required=True, default=5) class Assignment(base.Assignment): implements(IRecentWeblogEntriesPortlet)
def submit(self, action, data): """ """ wvconfig = IStateAwareWeblogConfiguration(self.context) form.applyChanges(wvconfig, self.form_fields, data) msg = _(u"Configuration saved.") IStatusMessage(self.request).addStatusMessage(msg, type="info")
from zope.formlib import form from zope.interface import implements from zope.component import getMultiAdapter from plone.app.portlets.portlets import base from plone.portlets.interfaces import IPortletDataProvider from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile from quills.app.utilities import getArchiveURLFor from quills.app.browser.baseview import BaseView from quills.app import QuillsAppMessageFactory as _ from base import BasePortletRenderer PORTLET_TITLE = _(u"Recent Comments") PORTLET_DESC = _(u"This portlet lists recent weblog comments.") class IRecentWeblogCommentsPortlet(IPortletDataProvider): max_comments = schema.Int( title=_(u'Maximum comments'), description=_(u"What's the maximum number of comments to list?"), required=True, default=5) class Assignment(base.Assignment): implements(IRecentWeblogCommentsPortlet) def __init__(self, max_comments=5):
from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile from Products.CMFCore.utils import getToolByName from Products.CMFPlone import PloneLocalesMessageFactory as _PLMF # Quills imports from quills.core.interfaces import IWeblogEnhanced from quills.core.interfaces import IWeblog from quills.app.utilities import recurseToInterface from quills.app.browser.baseview import BaseView from quills.app import QuillsAppMessageFactory as _ # Local imports from base import BasePortletRenderer PORTLET_TITLE = _(u"Weblog Archive") PORTLET_DESC = _(u"This portlet lists the archive of this weblog.") class IWeblogArchivePortlet(IPortletDataProvider): """a portlet showing the archive of the current weblog""" class Assignment(base.Assignment): implements(IWeblogArchivePortlet) @property def title(self): return PORTLET_TITLE