Exemplo n.º 1
0
 function PostListAction()
 {
     $request = Project::getRequest();
     $request_user_id = (int) Project::getUser()->getShowedUser()->id;
     $user_id = (int) Project::getUser()->getDbUser()->id;
     $this->BaseSiteData();
     $info = array();
     $this->BaseBlogData($info);
     $tree_id = (int) $request->getKeyByNumber(0);
     $page_number = (int) $request->getKeyByNumber(1);
     $post_model = new BlogPostModel();
     $post_model->setPager(new DbPager($page_number, $this->getParam('post_per_page', self::DEFAULT_POST_PER_PAGE)));
     $subcribe_model = new BlogSubscribeModel();
     $list = $post_model->loadList($user_id, $request_user_id, $tree_id, $subcribe_model->isSubscribed($user_id, $tree_id));
     foreach ($list as &$item) {
         $item['comment_link'] = $request->createUrl('Blog', 'Comments', array($item['id'], $page_number, 0));
         if ($request_user_id === $user_id) {
             $item['edit_link'] = $request->createUrl('Blog', 'PostEdit', array($item['id'], $page_number));
             $item['del_link'] = $request->createUrl('Blog', 'PostDelete', array($item['id'], $page_number));
         }
     }
     $info['post_list'] = $list;
     $pager_view = new SitePagerView();
     $info['post_list_pager'] = $pager_view->show2($post_model->getPager(), 'Blog', 'PostList', array($tree_id));
     $this->_view->assign('current_tree_name', $post_model->getTreeNameById($tree_id));
     $this->_view->PostList($info);
     $this->_view->parse();
 }