Ejemplo n.º 1
0
 /**
  *
  * @param type $page
  */
 public function index($page = 1)
 {
     $view = $this->getActionView();
     $layoutView = $this->getLayoutView();
     $config = Registry::get('configuration');
     $articlesPerPage = $config->news_per_page;
     if ($page == 1) {
         $canonical = 'http://' . $this->getServerHost() . '/aktuality';
     } else {
         $canonical = 'http://' . $this->getServerHost() . '/aktuality/p/' . $page;
     }
     $content = $this->getCache()->get('news-' . $page);
     if ($content !== null) {
         $news = $content;
     } else {
         $news = App_Model_News::all(array('active = ?' => true, 'expirationDate >= ?' => date('Y-m-d H:i:s')), array('id', 'urlKey', 'author', 'title', 'shortBody', 'created', 'rank'), array('rank' => 'asc', 'created' => 'DESC'), (int) $articlesPerPage, (int) $page);
         $this->getCache()->set('news-' . $page, $news);
     }
     $newsCount = App_Model_News::count(array('active = ?' => true, 'expirationDate >= ?' => date('Y-m-d H:i:s')));
     $newsPageCount = ceil($newsCount / $articlesPerPage);
     $view->set('newsbatch', $news)->set('newspagecount', $newsPageCount);
     if ($newsPageCount > 1) {
         $prevPage = $page - 1;
         $nextPage = $page + 1;
         if ($nextPage > $newsPageCount) {
             $nextPage = 0;
         }
         $layoutView->set('pagedprev', $prevPage)->set('pagedprevlink', '/aktuality/p/' . $prevPage)->set('pagednext', $nextPage)->set('pagednextlink', '/aktuality/p/' . $nextPage);
     }
     $layoutView->set('metatitle', 'ZKO - Aktuality')->set('canonical', $canonical);
 }
Ejemplo n.º 2
0
 /**
  * @before _secured, _admin
  */
 public function index()
 {
     $view = $this->getActionView();
     $latestnews = App_Model_News::all(array('active = ?' => true), array('author', 'title', 'shortBody', 'created'), array('created' => 'DESC'), 8);
     $latestgallery = App_Model_Gallery::all(array('active = ?' => true), array('title', 'created', 'isPublic'), array('created' => 'DESC'), 10);
     $latestmembers = App_Model_User::all(array('active = ?' => true, 'role = ?' => 'role_member'), array('firstname', 'lastname', 'imgThumb', 'created'), array('created' => 'DESC'), 10);
     $latestdogs = App_Model_Dog::fetchAllLimit();
     $view->set('latestnews', $latestnews)->set('latestgallery', $latestgallery)->set('latestmembers', $latestmembers)->set('latestdogs', $latestdogs);
 }
Ejemplo n.º 3
0
 /**
  * 
  * @param type $page
  */
 public function index()
 {
     $view = $this->getActionView();
     $layoutView = $this->getLayoutView();
     $config = Registry::get('configuration');
     $content = $this->getCache()->get('news-1');
     $npp = $config->news_per_page;
     if (NULL !== $content) {
         $news = $content;
     } else {
         $news = App_Model_News::all(array('active = ?' => true, 'expirationDate >= ?' => date('Y-m-d H:i:s')), array('id', 'urlKey', 'author', 'title', 'shortBody', 'created', 'rank'), array('rank' => 'desc', 'created' => 'DESC'), (int) $npp, 1);
         $this->getCache()->set('news-1', $news);
     }
     $newsCount = App_Model_News::count(array('active = ?' => true, 'expirationDate >= ?' => date('Y-m-d H:i:s')));
     $newsPageCount = ceil($newsCount / $npp);
     $view->set('newsbatch', $news)->set('newspagecount', $newsPageCount);
     $canonical = 'http://' . $this->getServerHost() . '/';
     $layoutView->set('canonical', $canonical);
 }
Ejemplo n.º 4
0
 /**
  * @before _secured, _admin
  */
 public function massAction()
 {
     $this->willRenderActionView = false;
     $this->willRenderLayoutView = false;
     $errors = array();
     $ids = RequestMethods::post('ids');
     $action = RequestMethods::post('action');
     if (empty($ids)) {
         echo 'Nějaký řádek musí být označen';
         return;
     }
     switch ($action) {
         case 'delete':
             $news = App_Model_News::all(array('id IN ?' => $ids));
             if (NULL !== $news) {
                 foreach ($news as $_news) {
                     if (!$_news->delete()) {
                         $errors[] = self::ERROR_MESSAGE_3 . ' ' . $_news->getTitle();
                     }
                 }
             }
             if (empty($errors)) {
                 Event::fire('admin.log', array('delete success', 'News ids: ' . join(',', $ids)));
                 echo self::SUCCESS_MESSAGE_6;
             } else {
                 Event::fire('admin.log', array('delete fail', 'Error count:' . count($errors)));
                 $message = join(PHP_EOL, $errors);
                 echo $message;
             }
             break;
         case 'activate':
             $news = App_Model_News::all(array('id IN ?' => $ids, 'active = ?' => false));
             if (NULL !== $news) {
                 foreach ($news as $_news) {
                     $_news->active = true;
                     if ($_news->validate()) {
                         $_news->save();
                     } else {
                         $errors[] = "News id {$_news->getId()} - {$_news->getTitle()} errors: " . join(', ', $_news->getErrors());
                     }
                 }
             }
             if (empty($errors)) {
                 Event::fire('admin.log', array('activate success', 'News ids: ' . join(',', $ids)));
                 echo self::SUCCESS_MESSAGE_4;
             } else {
                 Event::fire('admin.log', array('activate fail', 'Error count:' . count($errors)));
                 $message = join(PHP_EOL, $errors);
                 echo $message;
             }
             break;
         case 'deactivate':
             $news = App_Model_News::all(array('id IN ?' => $ids, 'active = ?' => true));
             if (NULL !== $news) {
                 foreach ($news as $_news) {
                     $_news->active = false;
                     if ($_news->validate()) {
                         $_news->save();
                     } else {
                         $errors[] = "News id {$_news->getId()} - {$_news->getTitle()} errors: " . join(', ', $_news->getErrors());
                     }
                 }
             }
             if (empty($errors)) {
                 Event::fire('admin.log', array('deactivate success', 'News ids: ' . join(',', $ids)));
                 echo self::SUCCESS_MESSAGE_5;
             } else {
                 Event::fire('admin.log', array('deactivate fail', 'Error count:' . count($errors)));
                 $message = join(PHP_EOL, $errors);
                 echo $message;
             }
             break;
         default:
             echo self::ERROR_MESSAGE_2;
             break;
     }
 }