foreach ($tmpPages as $p) { $p = trim($p); if (SensitiveIO::isPositiveInteger($p)) { $pages[] = $p; } elseif (preg_match("#[0-9]+\\-[0-9]+#", $p)) { $subPages = explode('-', $p); sort($subPages); for ($idp = $subPages[0]; $idp <= $subPages[1]; $idp++) { $pages[] = $idp; } } } $pages = array_unique($pages); sort($pages); if (sizeof($pages)) { $validPages = CMS_tree::pagesExistsInUserSpace($pages); if (sizeof($validPages)) { if (sizeof($validPages) > 3) { //submit pages to regenerator CMS_tree::submitToRegenerator($validPages, true); $cms_message = $cms_language->getMessage(MESSAGE_ACTION_OPERATION_DONE) . ' : ' . $cms_language->getMessage(MESSAGE_ACTION_N_PAGES_SUBMITED, array(sizeof($validPages))); } else { //regenerate pages @set_time_limit(1000); $regenok = $regenerror = 0; foreach ($validPages as $pageID) { $pg = CMS_tree::getPageByID($pageID); if (is_a($pg, 'CMS_page') && !$pg->hasError()) { if ($pg->regenerate(true)) { $regenok++; } else {
/** * Check if public page exists for given user * Static function. * * @param $pageID integer : the page id to check * @param $user CMS_profile_user : the user to check * @return boolean * @access public * @static */ static function pageExistsForUser($pageID) { global $cms_user; if (APPLICATION_ENFORCES_ACCESS_CONTROL) { if (!is_object($cms_user) || !$cms_user->hasPageClearance($pageID, CLEARANCE_PAGE_VIEW)) { return false; } } return CMS_tree::pagesExistsInUserSpace($pageID); }