示例#1
0
def manage_addZMS(self, lang, manage_lang, REQUEST, RESPONSE):
    """ manage_addZMS """
    message = ''
    t0 = time.time()

    if REQUEST['btn'] == 'Add':

        ##### Add Home ####
        homeElmnt = Folder(REQUEST['folder_id'])
        self._setObject(homeElmnt.id, homeElmnt)
        homeElmnt = [x for x in self.objectValues() if x.id == homeElmnt.id][0]

        ##### Add ZMS ####
        titlealt = 'ZMS home'
        title = 'ZMS - Python-based Content Management System for Science, Technology and Medicine'
        obj = initZMS(homeElmnt, 'content', titlealt, title, lang, manage_lang,
                      REQUEST)

        ##### Add Theme ####
        themeId = importTheme(homeElmnt, REQUEST['theme'])
        obj.setConfProperty('ZMS.theme', themeId)

        ##### Default content ####
        if REQUEST.get('initialization', 0) == 1:
            initContent(obj, 'content.default.zip', REQUEST)

        ##### Configuration ####

        #-- Search
        initContent(obj, 'com.zms.search.content.xml', REQUEST)

        # Initialize catalogs.
        obj.getCatalogAdapter().reindex_all()

        # Initialize access.
        obj.synchronizePublicAccess()

        # Return with message.
        message = obj.getLangStr('MSG_INSERTED', manage_lang) % obj.meta_type
        message += ' (in ' + str(int(
            (time.time() - t0) * 100.0) / 100.0) + ' secs.)'
        RESPONSE.redirect(
            '%s/%s/manage?manage_tabs_message=%s' %
            (homeElmnt.absolute_url(), obj.id, standard.url_quote(message)))

    else:
        RESPONSE.redirect('%s/manage_main' % self.absolute_url())