view->headTitle()->append('Connexion'); $form = new Application_Form_Login(); $this->view->form = $form; $request = $this->getRequest(); if ( $request->isPost() ) { $formData = $request->getPost(); if ($form->isValid($formData)) { $login = $form->getValue('login'); $pass = $form->getValue('pass'); $auth = Zend_Auth::getInstance(); $authAdapter = new Scores_Auth_Adapter_Ws($login, md5($login.'|'.$pass)); $result = $auth->authenticate($authAdapter); //Auth is valid if ( $result->isValid() ) { //Get previous url if user has been disconnected $url = ''; if (Zend_Session::namespaceIsset('login')){ $session = new Zend_Session_Namespace('login'); if (isset($session->url)) { $url = $session->url; } } if (!empty($url) && $url!='/user/login' && $url!='/user/logout' && $url!='/localauth'){ $this->_redirect($url); } $this->_redirect('/'); } //Auth error else { $this->view->message = ''; Zend_Registry::get('firebug')->info($result); foreach ($result->getMessages() as $message) { $this->view->message.= $message."
"; } } } } $this->_helper->layout()->disableLayout(); } /** * Gestion de la déconnexion */ public function logoutAction() { Zend_Auth::getInstance()->clearIdentity(); $session = new Zend_Session_Namespace('wcheck'); $session->unsetAll(); $this->_helper->layout()->disableLayout(); $request = $this->getRequest(); $message = $request->getParam('message'); $this->view->assign('message', $message); $ajax = $request->getParam('ajax', 0); $this->view->assign('ajax', $ajax); $refresh = 5; $url = 'http://'.$_SERVER['SERVER_NAME'].$this->view->url(array( 'controller' => 'user', 'action' => 'login', ), null, true); $this->view->assign('url', $url); if (!$ajax) { $this->view->assign('refresh', $refresh); $this->view->headMeta()->appendHttpEquiv('refresh', $refresh.'; url='.$url); } } }