示例#1
0
 /**
  * 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()) {
示例#3
0
 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);