public function modifRubriqueAction() { $token = VerifUser::tokenAction(); if ($token == null) { $this->redirect()->toRoute('home'); } $adminModel = new AdminModel(); $form = new RubriqueForm(); //formulaire de modification de rubrique $langue = $this->getEvent()->getRouteMatch()->getParam('langue'); $idMenu = $this->getEvent()->getRouteMatch()->getParam('id_menu'); //récupère id du menu correspondant $msgSuccess = null; //try catch du fetchAll des rubriques $listeRubriques = SendLayout::fetchAllRubriques($this, 'modifrub', $langue, $token); //try catch du findOne de rubrique $rubriqueToModif = SendLayout::findOneRubrique($this, $listeRubriques, 'modifrub', $langue, $token, $idMenu); $request = $this->getRequest(); if ($request->isPost()) { $rubriqueModif = new Rubrique(); $form->setInputFilter($rubriqueModif->getInputFilter()); $form->setData($request->getPost()); if ($form->isValid()) { $formDatas = $form->getData(); $rubriqueModif->exchangeArray($formDatas); $menu = new Menu($idMenu, $formDatas['titre_fr'], $formDatas['titre_en'], $formDatas['actifradio'], $formDatas['position']); try { $adminModel->modifRubrique($token, $rubriqueModif, $menu); } catch (\Exception $e) { return new ViewModel(array('form' => $form, 'rubriqueToModif' => $rubriqueToModif, 'langue' => $langue, 'exception' => $e->getMessage())); } $msgSuccess = 'modifrubrique'; $this->redirect()->toRoute('admin', array('langue' => $langue), array('query' => array('successMdfR' => $msgSuccess))); } } if ($rubriqueToModif == null) { return new ViewModel(array('rubNotFound' => 'rubrique not found', 'langue' => $langue)); } //Envoi des variables au layout if ($listeRubriques != null || $rubriqueToModif != null) { SendLayout::sendGeneral($this, $listeRubriques, 'modifrub', $langue, $token); $this->layout()->setVariable('id_menu', $idMenu); } return new ViewModel(array('form' => $form, 'rubriqueToModif' => $rubriqueToModif, 'langue' => $langue)); }
public function createRubriqueAction() { //Token en brut pour tester -- Voir Mr. Salva $token = 'WU8nb/rCD6JgtiyxTW3ZP+s4n9Vg9liUllh5bZLoLQhAMMoCaHE72nYLQSsw12uhkgWJLDmgMmZVD+aIk6BsZw=='; //----------------------------------------------------------------------- $rubriqueModel = new RubriqueModel(); $listeRubrique = $rubriqueModel->fetchAll(); $this->layout()->setVariable('listeRubrique', $listeRubrique); $this->layout()->setVariable('menu_id', 'admin'); $langue = $this->getEvent()->getRouteMatch()->getParam('langue'); $this->layout()->setVariable('langue', $langue); $form = new RubriqueForm(); //formulaire de connexion $adminModel = new AdminModel(); $request = $this->getRequest(); if ($request->isPost()) { $rubrique = new Rubrique(); $form->setInputFilter($rubrique->getInputFilter()); $form->setData($request->getPost()); if ($form->isValid()) { $formDatas = $form->getData(); $rubrique->exchangeArray($formDatas); $menu = new Menu(null, $formDatas['titre_fr'], $formDatas['titre_en'], $formDatas['actifradio'], $formDatas['position']); $adminModel->createRubrique($token, $rubrique, $menu); $this->redirect()->toRoute('admin', array('action' => 'index', 'langue' => $langue)); } } return new ViewModel(array('form' => $form, 'listeRubriques' => $listeRubrique, 'langue' => $langue)); }