Beispiel #1
0
 /**
  * действие index (список новостей)
  */
 public function indexAction()
 {
     //получаем массив параметров запроса
     $request = $this->getRequest();
     $params = $request->getParams();
     // подключаем модель списка новостей
     $list = new Application_Model_NewsList();
     $pageSize = Zend_Registry::get('page_size');
     $page = isset($params['page']) ? $params['page'] : 1;
     //делаем выборку данных
     $list->fillLatest($page);
     $data = $list->getList();
     //настраиваем постраничную навигацию
     $paginator = new Zend_Paginator(new Zend_Paginator_Adapter_Null($list->getCount()));
     $paginator->setItemCountPerPage($pageSize);
     $paginator->setCurrentPageNumber($page);
     $this->view->list = $data;
     $this->view->paginator = $paginator;
 }
Beispiel #2
0
 /**
  * действие index (список новостей)
  */
 public function indexAction()
 {
     //получаем параметры запроса
     $request = $this->getRequest();
     $params = $request->getParams();
     //подключаем модели
     $list = new Application_Model_NewsList();
     //список новостей
     $yearMenu = new Application_Model_YearMenu();
     //меню по дате
     $yearMenu->fillItems();
     $yearMenuData = $yearMenu->getItems();
     $themeMenu = new Application_Model_ThemeMenu();
     //меню по темам
     $themeMenu->fillItems();
     $themeMenuData = $themeMenu->getItems();
     //параметры страницы
     $pageSize = Zend_Registry::get('page_size');
     $page = isset($params['page']) ? $params['page'] : 1;
     if (isset($params['t'])) {
         // если в запросе передан id темы, заполняем список по нему
         $list->fillListByTheme($params['t'], $page);
     } elseif (isset($params['y']) && isset($params['m'])) {
         //если год и месяц, то заполняем по ним
         $list->fillListByMonth($params['m'], $params['y'], $page);
     } else {
         //иначе выводим все новости по дате, начиная с последней
         $list->fillLatest($page);
     }
     $data = $list->getList();
     //настраиваем постраничную навигацию
     $paginator = new Zend_Paginator(new Zend_Paginator_Adapter_Null($list->getCount()));
     $paginator->setItemCountPerPage($pageSize);
     $paginator->setCurrentPageNumber($page);
     //передаем данные в представление
     $this->view->list = $data;
     $this->view->yearMenu = $yearMenuData;
     $this->view->themeMenu = $themeMenuData;
     $this->view->paginator = $paginator;
 }