/** * Check that the template is instanciated. * * @return void * @access private */ protected function _checkTemplate() { if (!$this->_template && $this->_templateID) { $this->_template = CMS_pageTemplatesCatalog::getByID($this->_templateID); } }
//load interface instance $view = CMS_view::getInstance(); //set default display mode for this page $view->setDisplayMode(CMS_view::SHOW_JSON); //This file is an admin file. Interface must be secure $view->setSecure(); //CHECKS user has templates clearance if (!$cms_user->hasAdminClearance(CLEARANCE_ADMINISTRATION_EDIT_TEMPLATES)) { //templates CMS_grandFather::raiseError('User has no rights template editions'); $view->setActionMessage($cms_language->getMessage(MESSAGE_ERROR_NO_RIGHTS_FOR_TEMPLATES)); $view->show(); } //load template if any if (sensitiveIO::isPositiveInteger($templateId)) { $template = CMS_pageTemplatesCatalog::getByID($templateId); if (!$template || $template->hasError()) { CMS_grandFather::raiseError('Unknown template for given Id : ' . $templateId); $view->setActionMessage($cms_language->getMessage(MESSAGE_ERROR_UNKNOWN_TEMPLATE)); $view->show(); } } elseif ($templateId == 'print') { $templateFile = new CMS_file(PATH_TEMPLATES_FS . "/print.xml"); } else { $template = false; } $cms_message = ''; switch ($action) { case 'properties': //Edition if (is_a($template, "CMS_pageTemplate") && !$template->hasError()) {
function getJSonDescription($user, $cms_language, $withDefinition = false) { $hasClientSpaces = $this->hasClientSpaces(); $shortdesc = sensitiveIO::ellipsis($this->getDescription(), 60); if ($shortdesc != nl2br($this->getDescription())) { $shortdesc = '<span class="atm-help" ext:qtip="' . nl2br(io::htmlspecialchars(strip_tags($this->getDescription()))) . '">' . io::htmlspecialchars($shortdesc) . '</span>'; } $shortdesc = $shortdesc ? $shortdesc . '<br />' : ''; $mediumdesc = sensitiveIO::ellipsis($this->getDescription(), 200); if ($mediumdesc != $this->getDescription()) { $mediumdesc = '<span class="atm-help" ext:qtip="' . nl2br(io::htmlspecialchars(strip_tags($this->getDescription()))) . '">' . nl2br(io::htmlspecialchars($mediumdesc)) . '</span>'; } else { $mediumdesc = io::htmlspecialchars($mediumdesc); } $mediumdesc = $mediumdesc ? $mediumdesc . '<br />' : ''; //append template definition if needed $definitionDatas = $withDefinition ? $this->getDefinition() : ''; //templates filters $filteredTemplates = ''; if ($this->getFilteredTemplates()) { foreach ($this->getFilteredTemplates() as $tplId) { $template = CMS_pageTemplatesCatalog::getByID($tplId); if (is_object($template) && !$template->hasError()) { $filteredTemplates .= $filteredTemplates ? ', ' : ''; $filteredTemplates .= $template->getLabel(); } } } $filtersInfos = ''; $filtersInfos .= $filteredTemplates ? $cms_language->getMessage(self::MESSAGE_DESC_TEMPLATES) . ' ' . $filteredTemplates : ''; $filtersInfos = $filtersInfos ? '<br />' . $cms_language->getMessage(self::MESSAGE_DESC_USAGE_RESTRICTION) . ' <strong>' . $filtersInfos . '</strong>' : ''; if ($user->hasAdminClearance(CLEARANCE_ADMINISTRATION_TEMPLATES)) { $edit = array('url' => 'row.php', 'params' => array('row' => $this->getID())); } else { $edit = false; } return array('id' => $this->getID(), 'label' => $this->getLabel(), 'type' => $cms_language->getMessage(self::MESSAGE_DESC_ROW_TEMPLATE), 'image' => $this->getImage(), 'groups' => implode(', ', $this->getGroups()), 'filter' => $this->getLabel() . ' ' . implode(', ', $this->getGroups()), 'tplfilter' => implode(',', $this->getFilteredTemplates()), 'description' => '<div' . (!$this->isUseable() ? ' class="atm-inactive"' : '') . '>' . '<img src="' . $this->getImage() . '" style="float:left;margin-right:3px;width:70px;" />' . $mediumdesc . $cms_language->getMessage(self::MESSAGE_DESC_GROUPS) . ' <strong>' . ($this->getGroups() ? implode(', ', $this->getGroups()) : $cms_language->getMessage(self::MESSAGE_DESC_NONE)) . '</strong><br />' . $cms_language->getMessage(self::MESSAGE_DESC_ACTIVE) . ' <strong>' . ($this->isUseable() ? $cms_language->getMessage(self::MESSAGE_DESC_YES) : $cms_language->getMessage(self::MESSAGE_DESC_NO)) . '</strong><br />' . $cms_language->getMessage(self::MESSAGE_DESC_USED) . ' <strong>' . ($hasClientSpaces ? $cms_language->getMessage(self::MESSAGE_DESC_YES) : $cms_language->getMessage(self::MESSAGE_DESC_NO)) . '</strong>' . ($hasClientSpaces ? ' - <a href="#" onclick="Automne.view.search(\'row:' . $this->getID() . '\');return false;">' . $cms_language->getMessage(self::MESSAGE_DESC_SEE) . '</a>' . ($user->hasAdminClearance(CLEARANCE_ADMINISTRATION_REGENERATEPAGES) ? ' / <a href="#" onclick="Automne.server.call(\'rows-controler.php\', \'\', {rowId:' . $this->getID() . ', action:\'regenerate\'});return false;">' . $cms_language->getMessage(self::MESSAGE_DESC_REGENERATE) . '</a>' : '') . ' ' . $cms_language->getMessage(self::MESSAGE_DESC_PAGES) : '') . '<br />' . $cms_language->getMessage(self::MESSAGE_DESC_FILE) . ' <strong>' . $this->getDefinitionFileName() . '</strong>' . $filtersInfos . '<br class="x-form-clear" />' . '</div>', 'activated' => $this->isUseable() ? true : false, 'used' => $hasClientSpaces, 'definition' => $definitionDatas, 'edit' => $edit, 'shortdesc' => $shortdesc); }
$keyword = sensitiveIO::request('keyword'); $groups = sensitiveIO::request('groups', 'is_array'); $website = sensitiveIO::request('website', 'sensitiveIO::isPositiveInteger'); $viewinactive = sensitiveIO::request('viewinactive', '', false) ? true : false; $start = sensitiveIO::request('start', 'sensitiveIO::isPositiveInteger', 0); $limit = sensitiveIO::request('limit', 'sensitiveIO::isPositiveInteger', 0); $definition = sensitiveIO::request('definition') ? true : false; //items $items = sensitiveIO::request('items') ? explode(',', sensitiveIO::request('items')) : array(); //Some actions to do on items found $activate = sensitiveIO::request('activate') ? true : false; $desactivate = sensitiveIO::request('desactivate') ? true : false; $delete = sensitiveIO::request('del') ? true : false; if ($currentTpl) { //Page templates replacement $pageTemplate = CMS_pageTemplatesCatalog::getByID($currentTpl); //hack if page has no valid template attached if (!is_a($pageTemplate, "CMS_pageTemplate")) { $pageTemplate = new CMS_pageTemplate(); } $tplReplacements = CMS_pageTemplatesCatalog::getTemplatesReplacement($pageTemplate, $cms_user, $pageId); $templates = array(); $pageTplId = 0; //match templates foreach ($tplReplacements['match'] as $matchTpl) { $src = PATH_TEMPLATES_IMAGES_WR . '/' . ($matchTpl->getImage() ? $matchTpl->getImage() : 'nopicto.gif'); $description = sensitiveIO::ellipsis($matchTpl->getDescription(), 100); if ($description != $matchTpl->getDescription()) { $description = '<span ext:qtip="' . io::htmlspecialchars(strip_tags($matchTpl->getDescription())) . '">' . io::htmlspecialchars($description) . '</span>'; } else { $description = io::htmlspecialchars($description);