Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # -*- coding: utf-8 -*-
- #
- # GNU General Public License (GPL)
- #
- __author__ = """Johannes Raggam <johannes@raggam.co.at>"""
- __docformat__ = 'plaintext'
- from plone.portlets.interfaces import IPortletDataProvider
- from plone.app.portlets.portlets import base
- from zope import schema
- from zope.interface import implements
- from zope.formlib import form
- from zope.app.form.browser import TextWidget
- from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile
- class CustomTextWidget(TextWidget):
- displayWidth = 80
- class IMottoPortlet(IPortletDataProvider):
- """A portlet which renders predefined static HTML to display a motto.
- """
- motto_author = schema.TextLine(
- title = u"Motto Autor",
- description = u"Urheber des Spruchs",
- required=True)
- motto_text = schema.Text(
- title = u"Text",
- description = u"Motto Text",
- required=True)
- class Assignment(base.Assignment):
- implements(IMottoPortlet)
- motto_author = u"Motto portlet"
- motto_text = u""
- def __init__(self, motto_author=u"", motto_text=u""):
- self.motto_author = motto_author
- self.motto_text = motto_text
- @property
- def title(self):
- return self.motto_author
- class Renderer(base.Renderer):
- render = ViewPageTemplateFile('motto_portlet.pt')
- class AddForm(base.AddForm):
- form_fields = form.Fields(IMottoPortlet)
- form_fields['motto_author'].custom_widget = CustomTextWidget
- label = u"Motto portlet hinzufügen"
- description = u"Dieses Portlet zeigt einen Spruch auf der Website an."
- def create(self, data):
- return Assignment(**data)
- class EditForm(base.EditForm):
- form_fields = form.Fields(IMottoPortlet)
- form_fields['motto_author'].custom_widget = CustomTextWidget
- label = u"Motto portlet bearbeiten"
- description = u"Dieses Portlet zeigt einen Spruch auf der Website an."
Add Comment
Please, Sign In to add comment