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));
 }
Ejemplo n.º 2
0
 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));
 }