public function defAction() { $content = ''; if (!system::issetUrl(0) || system::url(0) == 'structure') { // Параметров нет, загружаем домашнюю страницу $content = $this->parsePageContent(ormPages::getHomePage()); } else { // Загружаем обычную страницу $page_id = ormPages::getPageIdByUrl(system::getCurrentUrl()); if (!empty($page_id)) { $content = $this->parsePageContent(ormPages::get($page_id)); } } return $content; }
private function showAuthForm($error = 0) { if (file_exists(MODUL_DIR . '/mpanel/template/auth.tpl')) { include MODUL_DIR . '/mpanel/template/auth.tpl'; page::assign('title', lang::get('CMF')); if (user::isGuest()) { // Пользователь не авторизован page::assign('url', system::getCurrentUrl()); page::assign('login', lang::get('AUTHFORM_LOGIN')); page::assign('passw', lang::get('AUTHFORM_PASSW')); page::assign('enter', lang::get('AUTHFORM_ENTER')); page::assign('error', $error); echo page::parse($TEMPLATE['frame']); } else { // Пользователь авторизован, но не является админом page::assign('exit_url', '/users/logout'); page::assign('user', user::get('name')); page::assign('hello', lang::get('AUTHFORM_HELLO')); page::assign('big_text', lang::get('AUTHFORM_BIG_TEXT')); page::assign('exit_text', lang::get('AUTHFORM_EXIT_TEXT')); echo page::parse($TEMPLATE['frame_no_admin']); } system::stop(); } }
static function isCashePage() { if (!CACHE_ENABLE) { return false; } if (self::$isCachePage === null) { self::$isCachePage = true; // Проверяем исключения if (in_array(system::getCurrentUrl(), self::$cacheExcludePages)) { // На точное совпадение return self::$isCachePage; } else { // На вхождение части урла reset(self::$cacheExcludePages); foreach (self::$cacheExcludePages as $url) { if (preg_match($url, system::getCurrentUrl())) { return self::$isCachePage; } } } // Проверяем запрещенные для кэширования страницы reset(self::$cacheTabuPages); foreach (self::$cacheTabuPages as $url) { $pos = substr(system::getCurrentUrl(), 0, strlen($url)); if ($pos == $url) { self::$isCachePage = false; break; } } } return self::$isCachePage; }
/** * @return HTML * @param int $count_page - Количество страниц которое необходимо отобразить. Если = 0, список не выведется. * @param int $smeshenie - Количество страниц выводящихся справа и слева от текущей. * @param string $templ_name - Шаблон оформления. * @desc МАКРОС: Вывод постраничной навигации. */ public function navigation($count_page = 0, $smeshenie = 4, $templ_name = 'default') { $navbar = ''; $templ_file = '/structure/navigation/' . $templ_name . '.tpl'; $TEMPLATE = page::getTemplate($templ_file); if (!is_array($TEMPLATE)) { return page::errorNotFound('structure.navigation', $templ_file); } else { $current_num = system::getCurrentNavNum(); $current_url = system::getCurrentUrl(); if ($count_page > 1) { // Просчитывает какие страницы показывать $raznica1 = $current_num - $smeshenie; $raznica1 = $raznica1 < 0 ? -$raznica1 : 0; $raznica2 = $count_page - $current_num - $smeshenie; $raznica2 = $raznica2 < 0 ? -$raznica2 : 0; $niz = $current_num - $smeshenie - $raznica2; if ($niz < 1) { $niz = 1; } $verx = $current_num + $smeshenie + $raznica1; if ($verx > $count_page) { $verx = $count_page; } page::assign('current_num', $current_num); page::assign('count_page', $count_page); page::assign('first_page', $current_url . '=1'); page::assign('previous_page', $current_url . '=' . ($current_num - 1)); page::assign('next_page', $current_url . '=' . ($current_num + 1)); page::assign('last_page', $current_url . '=' . $count_page); if (!empty($smeshenie)) { // Определяемся с левым блоком page::assign('num', $current_num - 1); if ($niz !== 1 && isset($TEMPLATE['left_block'])) { $left_block = page::parse($TEMPLATE['left_block']); } else { $left_block = ''; } page::assign('left_block', $left_block); // Определяемся с правым блоком page::assign('num', $current_num + 1); if ($verx != $count_page && isset($TEMPLATE['right_block'])) { $right_block = page::parse($TEMPLATE['right_block']); } else { $right_block = ''; } page::assign('right_block', $right_block); // Вывод списка страниц $pages = ''; for ($i = $niz; $i < $verx + 1; $i++) { page::assign('page_num', $i); page::assign('page_url', $current_url . '=' . $i); $tmpl = $i == $current_num ? 'list_active' : 'list'; $pages .= page::parse($TEMPLATE[$tmpl]); } page::assign('list', $pages); } else { // Определяемся с левым блоком page::assign('num', $current_num - 1); if ($current_num - 1 > 0 && isset($TEMPLATE['left_block'])) { $left_block = page::parse($TEMPLATE['left_block']); } else { $left_block = ''; } page::assign('left_block', $left_block); // Определяемся с правым блоком page::assign('num', $current_num + 1); if ($current_num + 1 <= $count_page && isset($TEMPLATE['right_block'])) { $right_block = page::parse($TEMPLATE['right_block']); } else { $right_block = ''; } page::assign('right_block', $right_block); page::assign('page_num', $current_num); page::assign('page_url', $current_url . '=' . $current_num); page::fParse('list', $TEMPLATE['list_active']); } $navbar = page::parse($TEMPLATE['frame']); } } return $navbar; }