from plone.portlets.interfaces import IPortletDataProvider from plone.app.portlets.portlets import base from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile from zope.interface import implements from Products.CMFCore.utils import getToolByName class IContactsPortlet(IPortletDataProvider): """ portlet """ class Assignment(base.Assignment): implements(IContactsPortlet) title = 'Contacts' class Renderer(base.Renderer): _template = ViewPageTemplateFile('contacts.pt') updated = False render = _template def is_anonymous(self): membership = getToolByName(self.context, 'portal_membership', None) if membership is None or membership.isAnonymousUser(): return True return False def member_contacts(self): return self.context.getMemberContacts() def portal_url(self): portal_url = getToolByName(self.context, 'portal_url') return portal_url() class AddForm(base.NullAddForm): def create(self): return Assignment()