/** * @todo Vylepsit to inkrementovani * Detail clanku * @param string $id Identifikator clanku: article_id-webalize_title */ public function actionPost($id) { list($parseId, $parseWebTitle) = Model\Entities\Article::parseWebId($id); $this->article = $this->articleRepository->getById($parseId); if (!is_object($this->article)) { //nepodarilo se ziskat clanek $this->flashMessage($this->translator->translate('system.articleNF'), self::MESSAGE_DANGER); $this->redirect('default'); } if (!$this->user->isLoggedIn() && !$this->article->isPublished()) { //nezobrazovat nezverejnene clanky neprihlasenym uzivatelum $this->flashMessage($this->translator->translate('system.requestNA'), self::MESSAGE_DANGER); $this->redirect('default'); } //inkrementovat citac pristupu a ulozeni zmeny $this->article->setCounter(); $this->entityManager->flush(); }
/** * @param \App\Model\Entities\Article $article * @return array Vychozi hodnoty pro formular */ protected function getDefaults($article) { $result = []; $result['id'] = $article->getId(); $result['title'] = $article->getTitle(); $result['description'] = $article->getDescription(); $result['published'] = $article->isPublished(); $publishDate = $article->getPublishDate(); if ($publishDate) { $result['publishDate'] = $publishDate->format('d. m. Y, H:i'); } $result['content'] = $article->getContent(); foreach ($article->getTags() as $tag) { $result['tags'][] = $tag->getId(); } return $result; }