<!codeHeader!> from OFS.SimpleItem import SimpleItem from OFS.Folder import Folder from appy.gen.utils import createObject from AccessControl import ClassSecurityInfo import Products.<!applicationName!>.config as cfg from appy.gen.mixins import BaseMixin from appy.gen.mixins.ToolMixin import ToolMixin from wrappers import <!genClassName!>_Wrapper as Wrapper def manage_add<!genClassName!>(self, id, title='', REQUEST=None): '''Creates instances of this class.''' createObject(self, id, '<!genClassName!>', '<!applicationName!>') if REQUEST is not None: return self.manage_main(self, REQUEST) class <!genClassName!>(<!parents!>): '''<!classDoc!>''' security = ClassSecurityInfo() meta_type = '<!genClassName!>' portal_type = '<!genClassName!>' allowed_content_types = () filter_content_types = 0 global_allow = 1 icon = "ui/<!icon!>" wrapperClass = Wrapper config = cfg def do(self): '''BaseMixin.do can't be traversed by Zope if this class is the tool. So here, we redefine this method.''' return BaseMixin.do(self) for elem in dir(<!baseMixin!>): if not elem.startswith('__'): security.declarePublic(elem) <!methods!>