Example #1
0
 public function ArticleViewAction()
 {
     $request = Project::getRequest();
     $article_model = new ArticleModel();
     $data = array();
     $this->BaseSiteData();
     $id = (int) $request->getKeyByNumber(0);
     $pageId = (int) $request->getKeyByNumber(1);
     if ($id > 0) {
         $article_page_model = new ArticlePageModel();
         $article_tree_model = new ArticleTreeModel();
         $article_vote_model = new ArticleVoteModel();
         $article_pager = new ArticlePagerView();
         $votes = $article_vote_model->loadByArticleUser($id, Project::getUser()->getDbUser()->id);
         $pages = $article_page_model->loadByArticleId($id);
         $data['article'] = $article_model->load($id);
         $data['tab_list'] = TabController::getMainArticleTabs(false, false, false, false, true, $article_model->title);
         $data['category'] = $article_tree_model->load($article_model->articles_tree_id);
         $data['page_content'] = $pages[$pageId];
         $data['pager_view'] = $article_pager->ShowPager(count($pages), $pageId, 'Article', 'ArticleView', array($id));
         $data['vote_status'] = count($votes);
         $data = array_merge($data, $article_vote_model->rateByArticleId($id));
         $article_model->views++;
         $article_model->save();
         if ($article_model->allowcomments > 0) {
             $controller = new BaseCommentController();
             $data['comment_list'] = $controller->CommentList($id, $request->getKeyByNumber(1), 0, 'Article', 'ArticleView', 'article', array($id));
         }
         $this->_view->ViewArticle($data);
         $this->_view->parse();
     }
 }
Example #2
0
 public function VerifyCompetitionAction()
 {
     $article_competition_model = new ArticleCompetitionModel();
     $endCompetition = $article_competition_model->selectEndCompetition();
     $article_model = new ArticleModel();
     $article_vote_model = new ArticleVoteModel();
     $winnerArticleId = 0;
     if (count($endCompetition) > 0) {
         foreach ($endCompetition as $comp) {
             $articles = $article_model->loadByParentId($comp['article_tree_id']);
             $max = 0;
             foreach ($articles as $article) {
                 $r = $article_vote_model->rateByArticleId($article['id']);
                 if ($max < $r['rate']) {
                     $max = $r['rate'];
                     $winnerArticleId = $article['id'];
                 }
             }
             $article_model->load($winnerArticleId);
             $article_model->rate_status = ARTICLE_RATE_STATUS::WINNER;
             $article_model->save();
             $article_competition_model->delete($comp['id']);
         }
     }
 }