function smarty_function_page_footer($params, Smarty_Internal_Template &$template) { /* @var $footerTpl Smarty_Internal_Template */ $footerTpl = PSSmarty::template('page/footer.tpl'); //TODO - редиректить, если тип PageBuilder отличен от basic $footerTpl->assign('_blank', WebPages::isCurPage(PAGE_POPUP)); $footerTpl->display(); }
/** * Основной метод, выполняющий построение страницы */ public final function buildPage() { //Может ли данная страница вообще быть построена check_condition($this->builderIdent, "{$this} не может быть построена"); //Проверим, установлена ли эта страница, как текущая check_condition(WebPages::isCurPage($this), "{$this} не установлена, как текущая, и не может быть построена"); //Если у пользователя нет доступа к данной странице - выполним редирект if (!$this->hasAccess()) { $this->redirectHere(); } //Теперь провалидируем установленный контекст $ctxt = PageContext::inst(); check_condition($this->isIt($ctxt->getPage()), PsUtil::getClassName($ctxt) . ' проинициализирован некорректно'); //Строим страницу PageBuilder::inst()->buildPage(); }
/** * Основной метод, выполняющий построение страницы */ public final function buildPage() { //Проверим, установлена ли эта страница, как текущая check_condition(WebPages::isCurPage($this), "{$this} не установлена, как текущая, и не может быть построена"); //Если у пользователя нет доступа к данной странице - выполним редирект if (!$this->hasAccess()) { $this->redirectHere(); } //Теперь провалидируем установленный контекст $ctxt = PageContext::inst(); check_condition($this->isIt($ctxt->getPage()), PsUtil::getClassName($ctxt) . ' проинициализирован некорректно'); $redirectPage = self::inst(is_numeric($this->pageCodeBase) ? $this->pageCodeBase : BASE_PAGE_INDEX); if ($ctxt->isRubricPage() && !$ctxt->getRubric()) { $redirectPage->redirectHere(); } if ($ctxt->isPostPage() && !$ctxt->getPost()) { $redirectPage->redirectHere(); } if ($ctxt->isPopupPage() && !PopupPagesManager::inst()->isValidPageRequested()) { $redirectPage->redirectHere(); } PageBuilder::inst()->buildPage(); }