X-Git-Url: https://dev.renevier.net/?p=syj.git;a=blobdiff_plain;f=application%2Fcontrollers%2Fhelpers%2FSyjSession.php;h=11c369fb34fa7f5cf85c6fa085ad1f5ca4519316;hp=702bfa25c739c0923f024ecc3151852c8adf9027;hb=ec061a75fe57a25eb7ef0894f5e723397ba35472;hpb=3ff82e2d9fa289beba4e965b82772cf83f905b2f diff --git a/application/controllers/helpers/SyjSession.php b/application/controllers/helpers/SyjSession.php index 702bfa2..11c369f 100644 --- a/application/controllers/helpers/SyjSession.php +++ b/application/controllers/helpers/SyjSession.php @@ -53,4 +53,26 @@ class Syj_Controller_Action_Helper_SyjSession extends Zend_Controller_Action_Hel return null; } } + + public function needsLogin() { + $user = self::user(); + if ($user) { + return; + } + $viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer'); + $view = $viewRenderer->view; + $request = $this->getRequest(); + + $encodeduri = implode('/', array_map('urlencode', explode('/', $request->getRequestUri()))); + $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)); + } }