Пример #1
0
 public function loginAction()
 {
     $users = new Application_Model_DbTable_Users();
     $form = new Application_Form_LoginForm();
     $this->view->form = $form;
     if ($this->getRequest()->isPost()) {
         if ($form->isValid($_POST)) {
             $data = $form->getValues();
             $auth = Zend_Auth::getInstance();
             $authAdapter = new Zend_Auth_Adapter_DbTable($users->getAdapter(), 'users');
             $authAdapter->setIdentityColumn('username')->setCredentialColumn('password');
             $authAdapter->setIdentity($data['username'])->setCredential($data['password']);
             $result = $auth->authenticate($authAdapter);
             if ($result->isValid()) {
                 $storage = new Zend_Auth_Storage_Session();
                 $storage->write($authAdapter->getResultRowObject());
                 $this->_redirect('auth/home');
             } else {
                 $this->view->errorMessage = "Invalid username or password. Please try again.";
             }
         }
     }
 }
Пример #2
0
 protected function _getAuthAdapter($treatment = true)
 {
     $users = new Application_Model_DbTable_Users();
     $authAdapter = new Zend_Auth_Adapter_DbTable($users->getAdapter());
     if ($treatment) {
         $authAdapter->setTableName('users')->setIdentityColumn('user_email')->setCredentialColumn('hashed_password')->setCredentialTreatment('SHA1(?)');
     } else {
         $authAdapter->setTableName('users')->setIdentityColumn('user_email')->setCredentialColumn('hashed_password');
     }
     return $authAdapter;
 }