public function viewAction() { $request = $this->getRequest(); $mediaPathItem = $request->getParam('fullPath'); $mediaMapper = new Media_Model_Mapper_Media(); $mediaItem = $mediaMapper->findByFullPath($mediaPathItem, new Media_Model_Media()); if (is_null($mediaItem)) { throw new Zend_Controller_Action_Exception("Страница не найдена", 404); } if (!is_null($this->getRequest()->getParam('json')) && Zend_Auth::getInstance()->hasIdentity()) { $this->forward('json', 'media', 'admin', array('id' => $mediaItem->getId())); return; } if (Zend_Auth::getInstance()->hasIdentity()) { $this->_request->setParams(array('dataItem' => array('controller' => 'media', 'id' => $mediaItem->getId(), 'active' => $mediaItem->getActive(), 'deleted' => $mediaItem->getDeleted()))); } $mediaCategoryMapper = new Media_Model_Mapper_MediaCategories(); $currentCategory = $mediaCategoryMapper->find($mediaItem->getCategoryId(), new Media_Model_MediaCategories()); if ($mediaItem->getDeleted() != '0') { if (!Zend_Auth::getInstance()->hasIdentity() && $mediaItem->getDeleted() != '0') { throw new Zend_Controller_Action_Exception("Страница не найдена", 404); } $this->_redirector->gotoRouteAndExit(array('module' => 'admin', 'controller' => 'media-categories', 'action' => 'list', 'id' => $currentCategory->getId()), 'adminEdit', true); } $this->view->assign(array('currentCategory' => $currentCategory, 'adminPath' => 'media/edit/' . $mediaItem->getId())); $meta_description = $mediaItem->getMetaDescription() != '' ? $mediaItem->getMetaDescription() : $mediaItem->getName() . '. ' . $currentCategory->getName() . '. Альфа-Гидро.'; $meta_keywords = $mediaItem->getMetaKeywords() != '' ? $mediaItem->getMetaKeywords() : $mediaItem->getName() . ', ' . $currentCategory->getName() . ', пресса'; $this->view->assign(array('mediaItem' => $mediaItem, 'meta_description' => $meta_description, 'meta_keywords' => $meta_keywords)); if ($mediaItem->getActive() != '1' && !Zend_Auth::getInstance()->hasIdentity()) { $this->view->assign(array('title' => $mediaItem->getName())); throw new Zend_Controller_Action_Exception("Страница временно не доступна", 403); } }