if (!$cms_page->isUseable() || $followRedirect) { if (!$cms_page->isUseable()) { //page is deleted, go to root $cms_page = CMS_tree::getRoot(); } //redirect to subpage if any redirection exists $redirectlink = $cms_page->getRedirectLink(true); while ($redirectlink->hasValidHREF() && sensitiveIO::IsPositiveInteger($redirectlink->getInternalLink())) { $cms_page = new CMS_page($redirectlink->getInternalLink()); $redirectlink = $cms_page->getRedirectLink(true); } $pageId = $cms_page->getID(); } pr('View page : ' . $cms_page->getID() . ($reload ? ' (Force reload queried by interface)' : '')); //set page into user context CMS_session::setPage($cms_page); //for the page, create all javascript informations needed $hasPreviz = $hasPublic = $hasDraft = $isEditable = $hasLock = $hasRedirect = false; //which panels can be seen by user (according to his rights) //this array represent the order of each panel (left to right) $userPanels = array('search' => array('type' => 'searchPanel', 'visible' => true), 'tree' => array('type' => 'winPanel', 'visible' => false), 'favorite' => array('type' => 'favoritePanel', 'visible' => $cms_user->hasModuleClearance(MOD_STANDARD_CODENAME, CLEARANCE_MODULE_VIEW)), 'action' => array('type' => 'menuPanel', 'visible' => false), 'add' => array('type' => 'winPanel', 'visible' => false), 'properties' => array('type' => 'winPanel', 'visible' => false), 'edit' => array('type' => 'framePanel', 'visible' => false), 'edited' => array('type' => 'framePanel', 'visible' => false), 'public' => array('type' => 'framePanel', 'visible' => true), 'nopages' => array('type' => 'framePanel', 'visible' => false), 'norights' => array('type' => 'framePanel', 'visible' => false)); //check for public page if ($cms_user->hasPageClearance($cms_page->getID(), CLEARANCE_PAGE_VIEW)) { if ($cms_page->getPublication() == RESOURCE_PUBLICATION_PUBLIC) { $hasPublic = true; } } //check for tree access if ($cms_user->hasViewvablePages()) { $userPanels['tree']['visible'] = true; }