protected function display() { if (Tools::isConnectedUser()) { $session_user = UserCache::getInstance()->getUser($_SESSION['userid']); $blogManager = new BlogManager(); $src_user_id = $session_user->getId(); $severity = BlogPost::severity_normal; $category = 0; $summary = 'Welcome to the real world'; $content = 'Hello world !<br>The quick brown fox jumps over the lazy dog<br>Casse toi pauv\' con !'; $dest_team_id = 4; $dest_user_id = 0; $dest_project_id = 0; $date_expire = 0; $color = 0; $blogPost_id = BlogPost::create($src_user_id, $severity, $category, $summary, $content, $dest_user_id, $dest_project_id, $dest_team_id, $date_expire, $color); $postList = $blogManager->getPosts($session_user->getId()); $blogPosts = $this->getBlogPosts($postList); $this->smartyHelper->assign('blogPosts', $blogPosts); $categories = $blogManager->getCategoryList(); $this->smartyHelper->assign('categoryList', $categories); $severities = $blogManager->getSeverityList(); $this->smartyHelper->assign('severityList', $severities); } }
/** * Список фолдингов */ public static function listFoldings() { $managers = array(MagManager::inst(), BlogManager::inst(), TrainManager::inst()); $foldings = array(); foreach ($managers as $manager) { if ($manager instanceof RubricsProcessor) { $foldings[] = $manager->getRubricsFolding(); } if ($manager instanceof PostsProcessor) { $foldings[] = $manager->getFolding(); } } //Фолдинги $foldings[] = PopupPagesManager::inst(); $foldings[] = PluginsManager::inst(); $foldings[] = IdentPagesManager::inst(); $foldings[] = TimeLineManager::inst(); $foldings[] = TemplateMessages::inst(); $foldings[] = UserPointsManager::inst(); $foldings[] = StockManager::inst(); $foldings[] = HelpManager::inst(); $foldings[] = EmailManager::inst(); $foldings[] = PSForm::inst(); $foldings[] = DialogManager::inst(); //Библиотеки $foldings[] = PoetsManager::inst(); $foldings[] = ScientistsManager::inst(); //Админские страницы $foldings[] = APagesResources::inst(); //Базовые страницы $foldings[] = BasicPagesManager::inst(); //Построитель страниц $foldings[] = PageBuilder::inst(); //Управление списком предпросмотра постов $foldings[] = ShowcasesCtrlManager::inst(); //Элементы в правой панели навигации $foldings[] = ClientBoxManager::inst(); //Все фолдинги системы return $foldings; }
/** * Структура сайта (навигация и т.д.) * * @return NavigationItem */ private function getStructureImpl() { $MAP = NavigationItem::byPageCode(BASE_PAGE_MAP); $INDEX = NavigationItem::byPageCode(BASE_PAGE_INDEX, 'О проекте'); $INDEX->addChild(NavigationItem::byPageCode(PAGE_OFFICE)); $INDEX->addChild(NavigationItem::byPageCode(PAGE_REGISTRATION)); $INDEX->addChild(NavigationItem::byPageCode(PAGE_PASS_REMIND)); $MAGAZINE = NavigationItem::byPostsProcessor(MagManager::inst(), 'Все выпуски'); $BLOG = NavigationItem::byRubricProcessor(BlogManager::inst(), 'Все заметки', 'Все заметки раздела'); $TRAININGS = NavigationItem::byRubricProcessor(TrainManager::inst(), 'Все занятия', 'Все занятия в разделе'); $TRAININGS->addChild(NavigationItem::byPageCode(PAGE_LESSON_HOW_TO)); $FEEDBACK = NavigationItem::byPageCode(BASE_PAGE_FEEDBACK, 'Об авторе'); $FEEDBACK->addChild(NavigationItem::byHref(FeedbackManager::inst()->writeToUsHref())->setNoBg()); $FEEDBACK->addChild(NavigationItem::byPageCode(PAGE_HELPUS)); //Окончательная структура $MAP->addChild($INDEX); $MAP->addChild($MAGAZINE); $MAP->addChild($BLOG); $MAP->addChild($TRAININGS); $MAP->addChild($FEEDBACK); return $MAP; }
private function __construct() { PsProfiler::inst(__CLASS__)->start(__FUNCTION__); $managers = array(MagManager::inst(), BlogManager::inst(), TrainManager::inst()); foreach ($managers as $manager) { //Соберём типы постов $this->postTypes[] = $manager->getPostType(); if ($manager instanceof RubricsProcessor) { $this->rubricsProcessors[$manager->getPostType()] = $manager; $this->foldings[] = $manager->getRubricsFolding(); } if ($manager instanceof PostsProcessor) { $this->postsProcessors[$manager->getPostType()] = $manager; $this->foldings[] = $manager->getFolding(); } if ($manager instanceof CommentsProcessor) { $this->commentProcessors[$manager->getPostType()] = $manager; $this->discussionControllers[$manager->getDiscussionController()->getDiscussionUnique()] = $manager->getDiscussionController(); } if ($manager instanceof PagePreloadListener) { $this->pagePreloadListeners[] = $manager; } if ($manager instanceof NewsProvider) { $this->newsProviders[$manager->getNewsEventType()] = $manager; } } //Контроллеры дискуссий $this->discussionControllers[FeedbackManager::inst()->getDiscussionUnique()] = FeedbackManager::inst(); //Фолдинги $this->foldings[] = PopupPagesManager::inst(); $this->foldings[] = PluginsManager::inst(); $this->foldings[] = IdentPagesManager::inst(); $this->foldings[] = TimeLineManager::inst(); $this->foldings[] = TemplateMessages::inst(); $this->foldings[] = UserPointsManager::inst(); $this->foldings[] = StockManager::inst(); $this->foldings[] = HelpManager::inst(); $this->foldings[] = EmailManager::inst(); $this->foldings[] = PSForm::inst(); $this->foldings[] = DialogManager::inst(); //Библиотеки $this->foldings[] = PoetsManager::inst(); $this->foldings[] = ScientistsManager::inst(); //Админские страницы $this->foldings[] = APagesResources::inst(); //Базовые страницы $this->foldings[] = BasicPagesManager::inst(); //Построитель страниц $this->foldings[] = PageBuilder::inst(); //Управление списком предпросмотра постов $this->foldings[] = ShowcasesCtrlManager::inst(); //Элементы в правой панели навигации $this->foldings[] = ClientBoxManager::inst(); /* * Выделим различные подклассы фолдингов */ foreach ($this->foldings as $folding) { //Фолдинги библиотек if ($folding instanceof LibResources) { $this->libs[] = $folding; } //Фолдинги обработчиков постов if ($folding instanceof PostFoldedResources) { $this->postProcessorFoldings[] = $folding; } //Фолдинги для баблов if ($folding instanceof BubbledFolding) { $this->bubbles[] = $folding; } //Фолдинги, предоставляющие панели if ($folding instanceof PanelFolding) { $this->panels[] = $folding; } //Фолдинги, финализирующие контент страницы if ($folding instanceof PageFinalizerFolding) { $this->pageFinaliseFoldings[] = $folding; } //Индексированный список фолдингов $this->folding2unique[$folding->getUnique()] = $folding; //Префиксы smarty к фолдингам $this->folding2smartyPrefix[$folding->getSmartyPrefix()] = $folding; //Префиксы классов к фолдингам if ($folding->getClassPrefix()) { $this->folding2classPrefix[$folding->getClassPrefix()] = $folding; } } PsProfiler::inst(__CLASS__)->stop(); }
protected function timeLineItemPresentation(LibItemDb $libItem, ArrayAdapter $params) { return BlogManager::inst()->getPostContentProviderByIdent($libItem->getIdent())->getPostPopupVariant(); }
public function buildContent() { echo $this->getFoldedEntity()->fetchTpl(array('postCP' => BlogManager::inst()->getCurrentPostContentProvider())); }
public function buildContent() { $bm = BlogManager::inst(); echo $this->getFoldedEntity()->fetchTpl(array('has_posts' => $bm->hasPosts())); }