def updateLayout(self, ppath='', all=False, portals='', p_action='ep', sel_skin='', locator='skin', f_action='af', file_id='', REQUEST=None): """ update files for Naaya layout """ report = {} portals_custom = [] for portal_id in portals.split(','): portals_custom.append(portal_id.strip()) if all: portals_list = get_portals(self, self.pmeta_types) for portal in portals_list: do_update = False if p_action == 'ep': if not portal.id in portals_custom: do_update = True else: if portal.id in portals_custom: do_update = True if do_update: report[portal.id] = self.updateLayoutForms(portal, locator, sel_skin, f_action, file_id) else: portal = get_portal(self, ppath) if not portal.id in portals_custom: report[portal.id] = self.updateLayoutForms(portal, locator, sel_skin, f_action, file_id) REQUEST.SESSION.set('report', report) return REQUEST.RESPONSE.redirect('%s/update_layout_html' % self.absolute_url())
def do_reload(self, fmod=[], fdel=[], forms='', REQUEST=None): """ reload portal forms """ fmod = convertToList(fmod) fdel = convertToList(fdel) forms_list = convertLinesToList(forms) for form_path in fmod: portal = get_portal(self, form_path[:form_path.find('portal_forms')]) form_id = form_path[form_path.find('portal_forms')+13:] form_ob = self.get_zmi_template(form_path) fs_content = self.get_fs_template(form_id, portal) try: if form_ob is None: formstool_ob = portal.getFormsTool() formstool_ob.manage_addTemplate(id=form_id, title='', file='') form_ob = formstool_ob._getOb(form_id, None) form_ob.pt_edit(text=fs_content, content_type='') form_ob._p_changed = 1 except Exception, error: print error
def updateLayout(self, ppath='', all=False, portals='', p_action='ep', sel_skin='', locator='skin', f_action='af', file_id='', REQUEST=None): """ update files for Naaya layout """ report = {} portals_custom = [] for portal_id in portals.split(','): portals_custom.append(portal_id.strip()) if all: portals_list = get_portals(self, self.pmeta_types) for portal in portals_list: do_update = False if p_action == 'ep': if not portal.id in portals_custom: do_update = True else: if portal.id in portals_custom: do_update = True if do_update: report[portal.id] = self.updateLayoutForms( portal, locator, sel_skin, f_action, file_id) else: portal = get_portal(self, ppath) if not portal.id in portals_custom: report[portal.id] = self.updateLayoutForms( portal, locator, sel_skin, f_action, file_id) REQUEST.SESSION.set('report', report) return REQUEST.RESPONSE.redirect('%s/update_layout_html' % self.absolute_url())
def reinstallMetaTypes(self, all=False, ppath='', portals='', p_action='ep', contenttypes='', ct_action='ect', REQUEST=None): """ reinstall active metatypes for Naaya portals""" report = {} portals_custom = [] for portal_id in portals.split(','): portals_custom.append(portal_id.strip()) if all: portals_list = get_portals(self, self.pmeta_types) for portal in portals_list: do_update = False if p_action == 'ep': if not portal.id in portals_custom: do_update = True else: if portal.id in portals_custom: do_update = True if do_update: report[portal.id] = self.reloadMetaTypesForms( portal, contenttypes, ct_action) else: portal = get_portal(ppath) if not portal.id in portals_custom: report[portal.id] = self.reloadMetaTypesForms( portal, contenttypes, ct_action) if not REQUEST: return report REQUEST.SESSION.set('report', report) return REQUEST.RESPONSE.redirect(self.absolute_url())
for form_path in fmod: portal = get_portal(self, form_path[:form_path.find('portal_forms')]) form_id = form_path[form_path.find('portal_forms')+13:] form_ob = self.get_zmi_template(form_path) fs_content = self.get_fs_template(form_id, portal) try: if form_ob is None: formstool_ob = portal.getFormsTool() formstool_ob.manage_addTemplate(id=form_id, title='', file='') form_ob = formstool_ob._getOb(form_id, None) form_ob.pt_edit(text=fs_content, content_type='') form_ob._p_changed = 1 except Exception, error: print error for form_path in fdel: portal = get_portal(self, form_path[:form_path.find('portal_forms')]) form_id = form_path[form_path.find('portal_forms')+13:] form_ob = self.get_zmi_template(form_path) form_ob.aq_parent.manage_delObjects([form_id]) return REQUEST.RESPONSE.redirect(self.absolute_url() + '/manage_update') def get_zmi_template(self, path): """ return a ZMI template object given the path """ root = self.getPhysicalRoot() return root.unrestrictedTraverse(path, None) def get_fs_template(self, id, portal): """ return a filesystem template object given the id