def add_MetaPublisher2(self, id, title='', presets=[], REQUEST=None): """!TXT! MetaPublisher2 Constructor""" id = str(id) title = str(title) instance = MetaPublisher2(id) instance.title = title id = self._setObject(id, instance) metapublisher2 = self._getOb(id) add_MetaPublisher2Designs(metapublisher2, 'designs') add_MetaPublisher2Frontends(metapublisher2, 'frontends') add_MetaPublisher2Languages(metapublisher2, 'languages') add_MetaPublisher2Tools(metapublisher2, 'tools') add_MetaPublisher2Widgets(metapublisher2, 'widgets') if presets: raise NotImplemented("!TXT! Preset initialization not yet implemented!") if REQUEST is not None: try: url = self.DestinationURL() except: url = REQUEST['URL1'] url = '%s/manage_main?update_menu=1&manage_tabs_message=%s' % ( url, quote_plus('!TXT! New MetaPublisher2 "%s" created.' % id) ) REQUEST.RESPONSE.redirect(url)
def __setstate__(self, state): """!TXT! Handle startup event""" Folder.inheritedAttribute('__setstate__')(self, state) # initialize profiles if not hasattr(self, '_Profiles__profiles'): self.init_profiles() # create missing new folders ids = self.objectIds() if not 'designs' in ids: add_MetaPublisher2Designs(self, 'designs') if not 'frontends' in ids: add_MetaPublisher2Frontends(self, 'frontends') if not 'languages' in ids: add_MetaPublisher2Languages(self, 'languages') if not 'tools' in ids: add_MetaPublisher2Tools(self, 'tools') if not 'widgets' in ids: add_MetaPublisher2Widgets(self, 'widgets') # move frontends from legacy location into frontends folder if 'interfaces' in ids and self.interfaces.meta_type == 'InterfacesFolder': try: if self.interfaces.objectIds(): clipboard = self.interfaces.manage_copyObjects(self.interfaces.objectIds()) self.frontends.manage_pasteObjects(clipboard) self.manage_delObjects('interfaces') except: pass