public function editAction() { //$this->getServiceLocator()->get('CacheListener')->getCacheService()->flush(); $form = new BlogcontentForm(); $this->translator = $this->getServiceLocator()->get('translator'); $form->get('submitbutton')->setAttribute('value', $this->translator->translate('Modifier')); $this->blogContentDao = new BlogcontentDao(); $this->rubriqueDao = new RubriqueDao(); $this->sousrubriqueDao = new Sousrubriquedao(); $this->fichiersdao = new Fichiersdao(); $allFichiers = array(); //get cache $cache = $this->getServiceLocator()->get('CacheDataListener'); $result = $cache->getCacheDataItem(CacheKeys::$CacheKeyFichiersAll); //if there's no cache for files if (!$result) { $allFichiers = $this->fichiersdao->getAllFichiers("object"); $cache->setCacheDataItem(CacheKeys::$CacheKeyFichiersAll, array('fichiers' => $allFichiers)); } else { $allFichiers = $result['fichiers']; } $id = (int) $this->params()->fromRoute('id', 0); //print_r($id); if (!$id) { return $this->redirect()->toRoute('Blogcontent', array('action' => 'add')); } $contenu = new Blogcontent(); $contenu = $this->blogContentDao->getBlogContent($id, "object"); $contenuId = $contenu->getId(); if (!empty($id)) { if (empty($contenuId)) { //return $this->getResponse()->setStatusCode(404); return $this->notFoundAction(); } } $rubrique = $this->rubriqueDao->getAllRubriques("array"); //$form = new GalerieForm(); $form->get('id')->setAttribute('value', $contenu->getId()); $form->get('titre')->setAttribute('value', $contenu->getTitre()); $form->get('soustitre')->setAttribute('value', $contenu->getSousTitre()); $form->get('position')->setAttribute('value', $contenu->getRang()); $form->get('imagepath')->setAttribute('value', $contenu->getImage()); $form->get('imagepath2')->setAttribute('value', $contenu->getImage2()); $form->get('contenu')->setAttribute('value', $contenu->getContenuHtml()); $form->get('author')->setAttribute('value', $contenu->getAuthor()); $form->get('themes')->setAttribute('value', $contenu->getThemes()); $form->get('blogdate')->setAttribute('value', $contenu->getDate()); $form->get('text1')->setAttribute('value', $contenu->getText1()); $form->get('text2')->setAttribute('value', $contenu->getText2()); $form->get('text3')->setAttribute('value', $contenu->getText3()); //$form->get('rubriques_id')->setAttribute('value', $contenu->getSousRubrique()->getRubrique()->getId()); //$form->get('sousrubriques_id')->setAttribute('value', $contenu->getSousRubrique()->getId()); $request = $this->getRequest(); if ($request->isPost()) { //$contenu = new Blogcontent(); //trigger data controls $form->setInputFilter(new BlogcontentInputFilter()); $form->setData($request->getPost()); //$form->setUseInputFilterDefaults(false); if ($form->isValid()) { //$contenu = array(); $contenu = new Blogcontent(); $filterData = new Utils(); $contenu->setSousRubrique($this->sousrubriqueDao->getSousrubrique($filterData->stripTags_replaceHtmlChar_trim($request->getPost('sousrubriquesList'), true, true, true))); $contenu->setId($filterData->stripTags_replaceHtmlChar_trim($request->getPost('id'), true, false, true)); $contenu->setTitre($filterData->stripTags_replaceHtmlChar_trim($request->getPost('titre'), true, false, true)); $contenu->setRang($filterData->stripTags_replaceHtmlChar_trim($request->getPost('position'), true, false, true)); $contenu->setSousTitre($filterData->stripTags_replaceHtmlChar_trim($request->getPost('soustitre'), false, true, true)); $contenu->setImage($filterData->stripTags_replaceHtmlChar_trim($request->getPost('imagepath'), true, false, true)); $contenu->setImage2($filterData->stripTags_replaceHtmlChar_trim($request->getPost('imagepath2'), true, false, true)); $contenu->setContenuHtml($request->getPost('contenu')); $contenu->setType(ContenuType::$blog); $contenu->setAuthor($filterData->stripTags_replaceHtmlChar_trim($request->getPost('author'), true, false, true)); $contenu->setThemes($filterData->stripTags_replaceHtmlChar_trim($request->getPost('themes'), true, false, true)); $contenu->setDate($filterData->stripTags_replaceHtmlChar_trim($request->getPost('blogdate'), true, false, true)); $contenu->setText1($filterData->stripTags_replaceHtmlChar_trim($request->getPost('text1'), true, false, true)); $contenu->setText2($filterData->stripTags_replaceHtmlChar_trim($request->getPost('text2'), true, false, true)); $contenu->setText3($filterData->stripTags_replaceHtmlChar_trim($request->getPost('text3'), true, false, true)); $this->blogContentDao->saveBlogContent($contenu); //flush cash //$this->getServiceLocator()->get('CacheDataListener')->removeCacheDataItem(CacheKeys::$CacheKeyBlogIndex . $contenu->getId()); //$cache = $this->getServiceLocator()->get('CacheDataListener'); $this->getServiceLocator()->get('CacheDataListener')->getCacheService()->flush(); return $this->redirect()->toRoute('Blogcontent'); } else { return array('id' => $id, 'form' => $form, 'rubrique_id' => $contenu->getSousRubrique()->getRubrique()->getId(), 'sousrubrique_id' => $contenu->getSousRubrique()->getId(), 'fichiers' => $allFichiers, 'error' => $form->getMessages()); } } return array('id' => $id, 'form' => $form, 'rubrique_id' => $contenu->getSousRubrique()->getRubrique()->getId(), 'sousrubrique_id' => $contenu->getSousRubrique()->getId(), 'fichiers' => $allFichiers, 'error' => "no error"); }