def viewletManager( _context, name, permission, for_=Interface, layer=interfaces.IFlourishLayer, view=interfaces.IPageBase, provides=interfaces.IViewletManager, class_=ViewletManager, template=None, update='update', render='render', allowed_interface=(), allowed_attributes=(), **kwargs): bases = (class_, ) if not interfaces.IViewletManager.implementedBy(class_): bases = bases + (ViewletManager, ) class_ = type(class_.__name__, bases, {}) allowed_interface = (tuple(allowed_interface) + (interfaces.IViewletManager, )) if not provides.implementedBy(class_): classImplements(class_, provides) contentDirective( _context, name, permission, for_=for_, layer=layer, view=view, class_=class_, template=template, update=update, render=render, allowed_interface=allowed_interface, allowed_attributes=allowed_attributes, **kwargs)
def pageBreadcrumbsDirective( _context, name=u'breadcrumbs', permission=u'zope.Public', for_=Interface, layer=interfaces.IFlourishLayer, view=interfaces.IPage, class_=None, show_page_title=True, **kwargs): if class_ is None: if show_page_title: class_ = PageBreadcrumbs else: class_ = Breadcrumbs kwargs = dict(kwargs) _crumb_parent_factory = kwargs.get('crumb_parent') _follow_crumb_factory = kwargs.get('follow_crumb') if _crumb_parent_factory is not None: kwargs['crumb_parent'] = property( lambda crumb: _crumb_parent_factory(crumb.context)) if _follow_crumb_factory is not None: kwargs['follow_crumb'] = property( lambda crumb: _follow_crumb_factory( crumb.crumb_parent, crumb.request, crumb.view)) contentDirective( _context, name, permission, for_=for_, layer=layer, view=view, class_=class_, **kwargs)
def viewletManager(_context, name, permission, for_=Interface, layer=interfaces.IFlourishLayer, view=interfaces.IPageBase, provides=interfaces.IViewletManager, class_=ViewletManager, template=None, update='update', render='render', allowed_interface=(), allowed_attributes=(), **kwargs): bases = (class_, ) if not interfaces.IViewletManager.implementedBy(class_): bases = bases + (ViewletManager, ) class_ = type(class_.__name__, bases, {}) allowed_interface = (tuple(allowed_interface) + (interfaces.IViewletManager, )) if not provides.implementedBy(class_): classImplements(class_, provides) contentDirective(_context, name, permission, for_=for_, layer=layer, view=view, class_=class_, template=template, update=update, render=render, allowed_interface=allowed_interface, allowed_attributes=allowed_attributes, **kwargs)