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' => ''); }
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'); } } }