/** * @param Article $articleEntity * @return \Blog\Service\ArticleService */ public function updateArticle(array $data, Article $articleEntity) { // Données du formulaire $articleEntity->setTitre($data['titre']); $articleEntity->setContenu($data['content']); $articleEntity->setContenu($data['category']); // Mise à jour du billet $this->getServiceLocator()->get('ArticleRepository')->updateArticleEntity($articleEntity); /** Les tags **/ // Suppression de ceux existants $tags = $this->getServiceLocator()->get('TagService')->getTagEntitiesByArticleId((int) $articleEntity->getId()); foreach ($tags as $t) { $this->getServiceLocator()->get('TagRepository')->deleteTagEntity($t); } // Re-création $tags = explode(' ', $data['tag']); foreach ($tags as $t) { $tagEntity = new Tag(); $tagEntity->setArticle($articleEntity); $tagEntity->setName($t); $this->getServiceLocator()->get('TagRepository')->createTagEntity($tagEntity); } return $this; }
/** * {@inheritDoc} */ public function setContenu($contenu) { $this->__initializer__ && $this->__initializer__->__invoke($this, 'setContenu', array($contenu)); return parent::setContenu($contenu); }