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(); } }
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']); } } }