public function publicationAction() { $slug = $this->dispatcher->getParam('slug', 'string'); $type = $this->dispatcher->getParam('type', 'string'); $publicationHelper = new PublicationHelper(); $publicationResult = $publicationHelper->publicationBySlug($slug); if (!$publicationResult) { throw new Exception("Publication '{$slug}.html' not found"); } if ($publicationResult->p->getTypeSlug() != $type) { throw new Exception("Publication type <> {$type}"); } $this->helper->title()->append($publicationResult->meta_title); $this->helper->meta()->set('description', $publicationResult->meta_description); $this->helper->meta()->set('keywords', $publicationResult->meta_keywords); $this->helper->menu->setActive($type); $this->view->publicationResult = $publicationResult; }