/**
  * {@inheritDoc}
  */
 public function setEtMaj($etMaj)
 {
     $this->__initializer__ && $this->__initializer__->__invoke($this, 'setEtMaj', array($etMaj));
     return parent::setEtMaj($etMaj);
 }
 public function addAction()
 {
     error_reporting(E_ALL);
     $entityManager = $this->getEntityManager();
     $entityUsers = $entityManager->getRepository('\\Indicateur\\Entity\\Users');
     $request = $this->getRequest();
     $form = new EtablissementForm($entityManager, 'ajout-etablissement', $this->getBaseUrl());
     $alertmessages = array();
     $success = false;
     if ($request->isPost()) {
         $formInputFilter = new EtablissementFilter($entityManager);
         $form->setInputFilter($formInputFilter->getInputFilter());
         $form->setData($request->getPost());
         var_dump($request->getPost());
         if ($form->isValid()) {
             // Applique le filtre et récupère les données filtrées
             $formData = $form->getData();
             $form->populateValues($formData);
             // Debug::dump($form->getData());
             if ($formData['pwd1admin'] != $formData['pwd2admin']) {
                 // Mot de passe non concordants
                 $alertmessages['error'] = 'Les deux mots de passes ne sont pas identiques';
             } else {
                 // Ajout Etablissement
                 $objEtabs = new Etabs();
                 $objEtabs->setEtLibelle($formData['libelle']);
                 $objEtabs->setEtRue($formData['adresse']);
                 $objEtabs->setEtVille($formData['ville']);
                 $objEtabs->setEtCp($formData['cp']);
                 $objEtabs->setEtPays($formData['pays']);
                 $objEtabs->setEtNbsellers($formData['nb_sellers']);
                 $objEtabs->setEtType(0);
                 $objEtabs->setCaCodeFk($entityManager->find('Indicateur\\Entity\\Categorie', $formData['categorie']));
                 $objEtabs->setEtStatut($entityManager->find('Indicateur\\Entity\\Etabstatut', $formData['statut']));
                 $objEtabs->setEtCreation(new \DateTime(date('Y-m-d H:i:s')));
                 $objEtabs->setEtMaj(new \DateTime(date('Y-m-d H:i:s')));
                 $entityManager->persist($objEtabs);
                 $entityManager->flush();
                 // Ajout administrateur magasin
                 if ($objEtabs->getEtCodePk() > 0) {
                     $objUsers = new Users();
                     $objUsers->setNom($formData['nomadmin']);
                     $objUsers->setPrenom($formData['prenomadmin']);
                     $objUsers->setSexe($formData['sexeadmin']);
                     $objUsers->setEmail($formData['mailadmin']);
                     $objUsers->setLogin($formData['loginadmin']);
                     $objUsers->setPassword(md5($formData['pwd1admin']));
                     $objUsers->setEtabs($objEtabs);
                     $objUsers->setDateCreated(new \DateTime(date('Y-m-d H:i:s')));
                     $objUsers->setType(2);
                     $objUsers->setAcces(3);
                     $entityManager->persist($objUsers);
                     $entityManager->flush();
                     // Debug::dump($objUsers->getUserCodePk());
                     if ($objUsers->getUserCodePk() > 0) {
                         // Succès
                         $alertmessages['success'] = 'Etablissement crée';
                         //$mailer = new Mailer();
                         //$to = $entityUsers->getTabMailAdmin();
                         //$mailer->envoiNotificationAjoutEtablissement($objEtabs, $objUsers, $to);
                         $success = true;
                     } else {
                         // Echec création superadmin
                         $alertmessages['warning'] = 'Magasin crée mais le échec de la création du compte administrateur';
                     }
                 } else {
                     // Echec creation magasin
                     $alertmessages['error'] = 'L\'magasin n\'a pu être crée';
                 }
             }
         } else {
             $alertmessages['error'] = 'Veuillez corriger la saisie';
         }
     }
     return new ViewModel(array('form' => $form, 'alertmessages' => $alertmessages, 'success' => $success));
 }