/** * @return null|Pages_Model_Pages * @throws Zend_Controller_Action_Exception * */ public function pageModule() { $pageModulePath = $this->getRequest()->getModuleName(); $page = $this->_pagesMapper->findByPath($pageModulePath, new Pages_Model_Pages()); if (is_null($page)) { throw new Zend_Controller_Action_Exception("Раздел '" . $pageModulePath . "' не добален в таблицу 'Pages'", 404); } return $page; }
function getSectionSite() { $pagesMapper = new Pages_Model_Mapper_Pages(); $select = $pagesMapper->getDbTable()->select(); $select->where('active != ?', 0)->where('deleted != ?', 1)->order('sorting ASC'); $sectionSiteArray = array(); $sectionSiteArray[] = 'нет'; /** * @var $page Pages_Model_Pages; */ foreach ($pagesMapper->fetchAll($select) as $page) { $sectionSiteArray[$page->getId()] = $page->getTitle(); } return $sectionSiteArray; }
public function getModuleArray() { $pagesMapper = new Pages_Model_Mapper_Pages(); $select = $pagesMapper->getDbTable()->select(); $select->where('deleted != ?', 1)->where('active != ?', 0)->order('sorting ASC'); $moduleArray = array(); $modules = $pagesMapper->fetchAll(); if (!empty($modules)) { /**@var $module Pages_Model_Pages*/ foreach ($modules as $module) { $moduleArray[$module->getPath()] = $module->getPath(); } } return $moduleArray; }
public function seoAction() { $pageId = $this->_request->getParam('id'); if (is_null($pageId)) { $this->_redirector->gotoSimpleAndExit('index'); } $page = $this->_modelMapper->find($pageId, new Pages_Model_Pages()); if ($this->getRequest()->isPost()) { if ($this->getRequest()->getParam('dataFormSeo')) { $dataFormSeo = $this->getRequest()->getParam('dataFormSeo'); $page->setOptions($dataFormSeo); $this->_modelMapper->save($page); } } $url = $page->getPath() != 'home' ? '/' . $page->getPath() : '/'; $this->_redirector->gotoUrlAndExit($url); }
public function preDispatch(Zend_Controller_Request_Abstract $request) { $pagesMapper = new Pages_Model_Mapper_Pages(); $page = $pagesMapper->findByPath($request->getModuleName(), new Pages_Model_Pages()); $r = new Zend_Controller_Action_Helper_Redirector(); $layout = Zend_Layout::getMvcInstance(); if (is_null($page)) { return; } if ($page->getDeleted() === '1') { if (!Zend_Auth::getInstance()->hasIdentity()) { $layout->setLayout('layout_error'); throw new Zend_Controller_Action_Exception("Страница не найдена", 404); } $r->gotoRouteAndExit(array('module' => 'admin', 'controller' => 'pages', 'action' => 'index'), 'adminEdit', true); } if ($page->getActive() === '0') { if (!Zend_Auth::getInstance()->hasIdentity()) { $layout->setLayout('layout_error'); throw new Zend_Controller_Action_Exception("Раздел временно не доступен", 500); } } }
function getPageArticles() { $frontController = Zend_Controller_Front::getInstance(); $request = $frontController->getRequest(); $moduleName = $request->getModuleName(); $actionName = $request->getActionName(); //Zend_Debug::dump($request->getParams()); $this->view->moduleName = $moduleName; $this->view->actionName = $actionName; $pagesMapper = new Pages_Model_Mapper_Pages(); $page = $pagesMapper->findByPath($moduleName, new Pages_Model_Pages()); if (!$page) { return null; } $this->view->sectionName = $page->getTitle(); $this->view->sectionId = $page->getId(); $mediaModelMapper = new Media_Model_Mapper_Media(); $selectMedia = $mediaModelMapper->getDbTable()->select(); $selectMedia->where('active != ?', 0)->where('deleted != ?', 1)->where('section_site_id = ?', $page->getId())->order('timestamp DESC'); $mediaItems = $mediaModelMapper->fetchAll($selectMedia); if (!empty($mediaItems)) { if (count($mediaItems) > $this->getCountItemOnPage()) { $mediaPages = array_chunk($mediaItems, $this->getCountItemOnPage()); $currentPage = 0; if ($request->getParam('page') && $request->getParam('page') > 0) { $currentPage = $request->getParam('page') - 1; } if ($request->getParam('page') && $request->getParam('page') > count($mediaPages)) { $currentPage = count($mediaPages) - 1; } $mediaItems = $mediaPages[$currentPage]; $this->view->countPage = count($mediaPages); $this->view->currentPage = $currentPage + 1; } } return $mediaItems; }
/** * @param null $pageModulePath * @return null|Pages_Model_Pages * */ public function getPageModule($pageModulePath = null) { if (is_null($pageModulePath)) { $pageModulePath = strtolower($this->getNameModule()); } $pagesMapper = new Pages_Model_Mapper_Pages(); $page = $pagesMapper->findByPath($pageModulePath, new Pages_Model_Pages()); return $page; }
public function sectionAction() { $jsonData = $this->_request->getParams(); if ($this->_request->getParam('itemId')) { $item = $this->_modelMapper->find($this->_request->getParam('itemId'), $this->_model); if ($item) { $pagesMapper = new Pages_Model_Mapper_Pages(); $page = $pagesMapper->find($this->_request->getParam('sectionId'), new Pages_Model_Pages()); $sectionId = $page ? $page->getId() : 0; $item->setSectionSiteId($sectionId); $this->_modelMapper->save($item); $jsonData['message'] = 'Ok'; } $this->_helper->json->sendJson($jsonData); return; } if ($this->_request->getParam('id')) { $this->forward('index', null, null, array('filter' => 'section_site_id', 'val' => $this->_request->getParam('id'))); } }