X-Git-Url: https://dev.renevier.net/?a=blobdiff_plain;f=application%2Fcontrollers%2Fhelpers%2FSyjSession.php;h=3289f679d9a963d436b468540af064d8f55b4f6f;hb=0fb09adccd5c3b305d56f1b267dbd3bf836fd17f;hp=11c369fb34fa7f5cf85c6fa085ad1f5ca4519316;hpb=ec061a75fe57a25eb7ef0894f5e723397ba35472;p=syj.git diff --git a/application/controllers/helpers/SyjSession.php b/application/controllers/helpers/SyjSession.php index 11c369f..3289f67 100644 --- a/application/controllers/helpers/SyjSession.php +++ b/application/controllers/helpers/SyjSession.php @@ -1,5 +1,5 @@ getStorage(); - $storage->clear(); - $storage->write(array('user' => $user->id)); - Zend_Session::rememberMe(); // zend default expiration delay is 2 weeks. Ok, use that value + $storage = new Zend_Session_Namespace('userSettings'); + $storage->user = $user->id; + Zend_Session::rememberMe(); } static public function logout() { - Zend_Session::start(); - Zend_Session::destroy(); + $storage = new Zend_Session_Namespace('userSettings'); + unset($storage->user); + Zend_Session::rememberMe(); } static public function user() { - try { - $sessionStorage = Zend_Auth::getInstance()->getStorage(); - } catch(Exception $e) { - return null; - } - $sessionData = $sessionStorage->read(); - if ($sessionStorage->isEmpty()) { - return null; - } - - $id = $sessionData['user']; + $storage = new Zend_Session_Namespace('userSettings'); + $id = $storage->user; if (!isset($id)) { return null; } @@ -63,16 +54,9 @@ class Syj_Controller_Action_Helper_SyjSession extends Zend_Controller_Action_Hel $view = $viewRenderer->view; $request = $this->getRequest(); - $encodeduri = implode('/', array_map('urlencode', explode('/', $request->getRequestUri()))); + $encodeduri = $view->UriPath(true); $loginurl = $view->addParamToUrl($view->baseUrl() . '/' . 'login', 'redirect', $encodeduri); $translator = Zend_Registry::get('Zend_Translate'); - $lang = $request->getQuery('lang'); - if ($lang) { - $adapter = $translator->getAdapter(); - if ($adapter->isAvailable($lang)) { - $loginurl = $view->addParamToUrl($loginurl, 'lang', $lang); - } - } $this->getActionController()->getHelper('Redirector')->gotoURL($loginurl, array('prependBase' => false)); } }