示例#1
0
 public function addAction()
 {
     $form = new LoginmgmtForm();
     $this->loginmgmtDao = new LoginmgmtDao();
     $this->translator = $this->getServiceLocator()->get('translator');
     $login = new Login();
     $form->get('submitbutton')->setValue('Ajouter');
     $request = $this->getRequest();
     if ($request->isPost()) {
         $form->setData($request->getPost());
         //$form->setInputFilter($rubrique->getInputFilter());
         $form->setInputFilter(new LoginmgmtInputFilter());
         if ($form->isValid()) {
             $utils = new Utils();
             $request->getPost()->set('name', $utils->stripTags_replaceHtmlChar_trim($request->getPost('name'), true, true, true));
             $request->getPost()->set('pwd', $utils->stripTags_replaceHtmlChar_trim($request->getPost('pwd'), true, true, true));
             $login->setUser($request->getPost('name'));
             $login->setPwd($request->getPost('pwd'));
             $login->setRole($request->getPost('roleList'));
             $isExist = $this->loginmgmtDao->checkLoginUserame($login->getUser());
             if ($isExist == 0) {
                 $this->loginmgmtDao->saveLogin($login);
                 return $this->redirect()->toRoute('loginmgmt');
             } else {
                 $form->get('pwd')->setValue('');
                 return array('form' => $form, 'error' => array(array('error' => $this->translator->translate('Un utilisateur existe déjà avec ce nom, veuillez en choisir un autre'))));
             }
         } else {
             return array('form' => $form, 'error' => $form->getMessages());
         }
     }
     return array('form' => $form, 'error' => '');
 }
示例#2
0
 public function authAction()
 {
     $this->loginDao = new LoginDao();
     $this->translator = $this->getServiceLocator()->get('translator');
     $form = new LoginForm();
     $request = $this->getRequest();
     if ($request->isPost()) {
         $login = new Login();
         $form->setInputFilter(new LoginInputFilter());
         $form->setData($request->getPost());
         if ($form->isValid()) {
             $login = Login::fromForm($form->getData());
             $utils = new Utils();
             $rowNb = $this->loginDao->getAuthenticationByUserAndPwd($utils->stripTags_replaceHtmlChar_trim($login->getUser(), true, true, false), $utils->stripTags_replaceHtmlChar_trim($login->getPwd(), true, true, false));
             //print_r($rowNb);
             if ($rowNb == 0) {
                 $loginaccess = new \Zend\Session\Container('error');
                 $loginaccess->error = $this->translator->translate('Veuillez recommencer le nom d\'utilisateur et/ou le mot de passe sont incorrects');
                 return $this->redirect()->toRoute('Login');
             } elseif ($rowNb == 1) {
                 $loginaccess = new \Zend\Session\Container('myacl');
                 $role = $this->loginDao->getRole($utils->stripTags_replaceHtmlChar_trim($login->getUser(), true, true, false), $utils->stripTags_replaceHtmlChar_trim($login->getPwd(), true, true, false));
                 $loginaccess->role = $role;
                 return $this->redirect()->toRoute('rubrique');
             } else {
                 $loginaccess = new \Zend\Session\Container('error');
                 $loginaccess->error = $this->translator->translate('Veuillez contacter l\'administrateur du site svp.');
                 return $this->redirect()->toRoute('Login');
             }
         } else {
             //form is not valid because the csrf token is not the same anymore
             $loginaccess = new \Zend\Session\Container('error');
             $loginaccess->error = $this->translator->translate('Veuillez rafraichir la page et recommencer svp.');
             return $this->redirect()->toRoute('Login');
         }
     }
 }