diff options
author | xue <> | 2007-06-25 22:01:01 +0000 |
---|---|---|
committer | xue <> | 2007-06-25 22:01:01 +0000 |
commit | dcddd8cba228aae64c948ea742891b09524fd79b (patch) | |
tree | 4f1c8a2a6c37c6af9301b3c0cac5f60e52e78960 | |
parent | c4b96269e8b1a129612d813c25cf67e98b9dbc65 (diff) |
Added TAuthManager.ReturnUrlVarName property
Added TPageService.DefaultPageUrl property
-rw-r--r-- | HISTORY | 2 | ||||
-rw-r--r-- | framework/Security/TAuthManager.php | 30 | ||||
-rw-r--r-- | framework/Web/Services/TPageService.php | 8 | ||||
-rw-r--r-- | index.html | 7 |
4 files changed, 42 insertions, 5 deletions
@@ -22,6 +22,8 @@ ENH: Ticket#634 - Override __toString for TXmlElement and TXmlDocument (Knut) ENH: Ticket#639 - Added setters for certain properties of TTheme (Qiang) ENH: Ticket#641 - Added support to find out controls of specified class or parent classes (Qiang) ENH: Ticket#646 - Implement TAPCCache::add() (Knut) +ENH: Added TAuthManager.ReturnUrlVarName property (Qiang) +ENH: Added TPageService.DefaultPageUrl property (Qiang) NEW: TActiveHiddenField (Carl) Version 3.1.0 RC May 14, 2007 diff --git a/framework/Security/TAuthManager.php b/framework/Security/TAuthManager.php index ef9f47f9..cbad51dc 100644 --- a/framework/Security/TAuthManager.php +++ b/framework/Security/TAuthManager.php @@ -47,15 +47,19 @@ class TAuthManager extends TModule /**
* @var IUserManager user manager instance
*/
- private $_userManager=null;
+ private $_userManager;
/**
* @var string login page
*/
- private $_loginPage=null;
+ private $_loginPage;
/**
* @var boolean whether authorization should be skipped
*/
private $_skipAuthorization=false;
+ /**
+ * @var string the session var name for storing return URL
+ */
+ private $_returnUrlVarName;
/**
* Initializes this module.
@@ -67,6 +71,8 @@ class TAuthManager extends TModule {
if($this->_userManager===null)
throw new TConfigurationException('authmanager_usermanager_required');
+ if($this->_returnUrlVarName===null)
+ $this->_returnUrlVarName=$this->getApplication()->getID().':'.self::RETURN_URL_VAR;
$application=$this->getApplication();
if(is_string($this->_userManager))
{
@@ -177,11 +183,27 @@ class TAuthManager extends TModule }
/**
+ * @return string the name of the session variable storing return URL. It defaults to 'AppID:ReturnUrl'
+ */
+ public function getReturnUrlVarName()
+ {
+ return $this->_returnUrlVarName;
+ }
+
+ /**
+ * @param string the name of the session variable storing return URL.
+ */
+ public function setReturnUrlVarName($value)
+ {
+ $this->_returnUrlVarName=$value;
+ }
+
+ /**
* @return string URL that the browser should be redirected to when login succeeds.
*/
public function getReturnUrl()
{
- return $this->getSession()->itemAt(self::RETURN_URL_VAR);
+ return $this->getSession()->itemAt($this->getReturnUrlVarName());
}
/**
@@ -190,7 +212,7 @@ class TAuthManager extends TModule */
public function setReturnUrl($value)
{
- $this->getSession()->add(self::RETURN_URL_VAR,$value);
+ $this->getSession()->add($this->getReturnUrlVarName(),$value);
}
/**
diff --git a/framework/Web/Services/TPageService.php b/framework/Web/Services/TPageService.php index 343508b8..ab672558 100644 --- a/framework/Web/Services/TPageService.php +++ b/framework/Web/Services/TPageService.php @@ -353,6 +353,14 @@ class TPageService extends TService }
/**
+ * @return string the URL for the default page
+ */
+ public function getDefaultPageUrl()
+ {
+ return $this->constructUrl($this->getDefaultPage());
+ }
+
+ /**
* @return string the root directory for storing pages. Defaults to the 'pages' directory under the application base path.
*/
public function getBasePath()
@@ -90,6 +90,11 @@ PRADO component tags when you use it to edit PRADO templates. <li><a href="mailto:knut.urdalen@gmail.com">Knut Urdalen</a></li>
</ul>
+<h3>Prado v3 Testing Team</h3>
+<ul>
+<li><a href="Christophe.Boulain@ceram.fr">Christophe Boulain</a></li>
+</ul>
+
<h3>Prado v2 Maintenance Team</h3>
<ul>
<li><a href="mailto:rodolfo@equinoxe.g-networks.net">Rodolfo Gonzales</a></li>
@@ -111,7 +116,7 @@ PRADO component tags when you use it to edit PRADO templates. <ul>
<li>Stever for providing an Apple G3 notebook for testing safari browser issues.</li>
<li>Stanislav Yordanov - the script of generating Dreameweaver extension for PRADO</li>
-<li>Andrés Adolfo Testi - original concept and naming for Active Controls.</li>
+<li>Andrés Adolfo Testi - original concept and naming for Active Controls.</li>
<li><a href="http://www.jackslocum.com/">Jack Slocum</a> - inspiration for the quickstart commenting system.</li>
<li>Cesar Ramos - Active Record driver for IBM DB2.</li>
<li>All PRADO users - great suggestions, feedback and support</li>
|