diff options
Diffstat (limited to 'framework/Security')
-rw-r--r-- | framework/Security/TAuthManager.php | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/framework/Security/TAuthManager.php b/framework/Security/TAuthManager.php index c46e32c1..819b7b36 100644 --- a/framework/Security/TAuthManager.php +++ b/framework/Security/TAuthManager.php @@ -169,13 +169,22 @@ class TAuthManager extends TModule if($service instanceof TPageService)
{
$returnUrl=$application->getRequest()->getRequestUri();
- $url=$service->constructUrl($this->getLoginPage(),array(self::RETURN_URL_VAR=>$returnUrl));
+ $application->getSession()->add(self::RETURN_URL_VAR,$returnUrl);
+ $url=$service->constructUrl($this->getLoginPage());
$application->getResponse()->redirect($url);
}
}
}
/**
+ * @return string URL that the browser should be redirected to when login succeeds.
+ */
+ public function getReturnUrl()
+ {
+ return $this->getSession()->itemAt(self::RETURN_URL_VAR);
+ }
+
+ /**
* Performs the real authentication work.
* An OnAuthenticate event will be raised if there is any handler attached to it.
* If the application already has a non-null user, it will return without further authentication.
|