public function loginAction()
 {
     //$this->_helper->layout()->disableLayout();
     $formAuthLogin = new Form_Auth_Login();
     $this->view->form = $formAuthLogin;
     if ($this->getRequest()->isPost()) {
         if ($formAuthLogin->isValid($this->getRequest()->getPost())) {
             $dadosAutenticacao = $formAuthLogin->getValues();
             $db = Zend_Registry::get('db');
             $authAdapter = new Zend_Auth_Adapter_DbTable($db);
             try {
                 $authAdapter->setTableName('administrador')->setIdentityColumn('administrador_email')->setCredentialColumn('administrador_senha')->setIdentity($dadosAutenticacao['administrador_email'])->setCredential(md5($dadosAutenticacao['administrador_senha']));
                 $authAdapter->getDbSelect()->where("administrador_ativo = ?", 1);
                 $auth = Zend_Auth::getInstance();
                 $result = $auth->authenticate($authAdapter);
                 if ($result->isValid()) {
                     $dadosAdministrador = array();
                     Zend_Auth::getInstance()->getStorage()->write($dadosAdministrador);
                     $this->_redirect("index/");
                 } else {
                     $this->_helper->flashMessenger->addMessage(array('class' => 'alert alert-danger', 'message' => 'Usuário e/ou senha inválidos!'));
                     Zend_Debug::dump($result);
                     die;
                     $this->_redirect("admin/autenticacao/login");
                 }
             } catch (Exception $e) {
                 $this->_helper->flashMessenger->addMessage(array('class' => 'alert alert-danger', 'message' => 'Houve um erro na autenticação - ' . $e->getMessage()));
                 $this->_redirect("auth/login");
             }
         }
     }
 }
Exemple #2
0
 public function loginAction()
 {
     $loginForm = new Form_Auth_Login();
     if ($loginForm->isValid($_POST)) {
         # Better to use more secure hash method, using md5 just to explain and simplicity
         $authAdapter = new Zend_Auth_Adapter_DbTable(Zend_Db_Table::getDefaultAdapter(), 'users', 'username', 'password', 'MD5(?)');
         # alternaitive to above
         // $authAdapter->setTableName('users')
         //             ->setIdentityColumn('username')
         //             ->setCredentialColumn('password')
         //             ->setCredentialTreatment('MD5(?)');
         // putting the form values to adapter,  so in future it can be verify
         $authAdapter->setIdentity($loginForm->getValue('username'));
         $authAdapter->setCredential($loginForm->getValue('password'));
         $auth = Zend_Auth::getInstance();
         $result = $auth->authenticate($authAdapter);
         if ($result->isValid()) {
             $this->_helper->FlashMessenger('Login successful');
             // setting the message, so in view it can be display
             $this->view->message = $this->_helper->flashMessenger->getMessages();
             if ($loginForm->getValue('username') == 'admin') {
                 $this->_helper->FlashMessenger('Welcome Admin');
                 $this->view->message = $this->_helper->flashMessenger->getMessages();
                 $this->_redirect('user/index');
                 //$this->_redirect('http://google.com');
             }
             return;
         } else {
             echo "failed";
         }
     }
     $this->view->loginForm = $loginForm;
 }