public function show($id = null)
 {
     $tag = self::load_tag($id);
     $this->assign("tag", $tag);
     $page = 1;
     if (isset($_GET['page'])) {
         $page = $_GET['page'];
     }
     $tag_id = mysql_real_escape_string($tag->id);
     $news = NewsTag::paginate("tags.id = '{$tag_id}'", $page, 10);
     $items = array();
     foreach ($news->collection as $newsitem) {
         $items[] = News::find_by_id($newsitem->news->id);
     }
     $news->collection = $items;
     $this->assign("page", $news);
     $this->title = "View Tag";
     $this->render("tag/show.tpl");
 }
Esempio n. 2
0
 /**
  * Создание комментария
  */
 public function createComment($id)
 {
     if (!($news = News::find_by_id($id))) {
         App::abort('default', 'Данной новости не существует!');
     }
     $comment = new Comment();
     $comment->token = Request::input('token', true);
     $comment->user_id = User::get('id');
     $comment->relate_type = 'News';
     $comment->relate_id = $news->id;
     $comment->text = Request::input('text');
     $comment->ip = App::getClientIp();
     $comment->brow = App::getUserAgent();
     if ($comment->save()) {
         App::setFlash('success', 'Сообщение успешно добавлено!');
     } else {
         App::setFlash('danger', $comment->getErrors());
         App::setInput($_POST);
     }
     App::redirect('/news/' . $id);
 }
 public function tags($tag = null)
 {
     $tag = self::load_tag($tag);
     $page = 1;
     if (isset($_GET['page'])) {
         $page = $_GET['page'];
     }
     $tag_id = mysql_real_escape_string($tag->id);
     $news = NewsTag::paginate("tags.id = '{$tag_id}' AND news.published = true AND news.publish_at < NOW()", "news.publish_at DESC", $page, 10);
     $items = array();
     foreach ($news->collection as $newsitem) {
         $item = News::find_by_id($newsitem->news->id);
         if (!$item) {
             continue;
         }
         $items[] = $item;
     }
     $news->collection = $items;
     $this->assign("page", $news);
     $this->assign("tag", $tag);
     $this->title = "News :: {$tag->tag}";
     $this->render("news/tags.tpl");
 }