Redirect to main page when transparent SSO is in place for the CAS plugin (which is what the user expects)

This commit is contained in:
Craig Andrews 2010-03-02 15:09:28 -05:00
parent f65478b624
commit 380439ba77
2 changed files with 13 additions and 3 deletions

View File

@ -137,6 +137,7 @@ class CasAuthenticationPlugin extends AuthenticationPlugin
$casSettings['server']=$this->server;
$casSettings['port']=$this->port;
$casSettings['path']=$this->path;
$casSettings['takeOverLogin']=$this->takeOverLogin;
}
function onPluginVersion(&$versions)

View File

@ -54,9 +54,18 @@ class CasloginAction extends Action
// We don't have to return to it again
common_set_returnto(null);
} else {
$url = common_local_url('all',
array('nickname' =>
$user->nickname));
if(common_config('site', 'private') && $casSettings['takeOverLogin']) {
//SSO users expect to just go to the URL they entered
//if we don't have a returnto set, the user entered the
//main StatusNet url, so send them there.
$url = common_local_url('public');
} else {
//With normal logins (regular form-based username/password),
//the user would expect to go to their home after logging in.
$url = common_local_url('public',
array('nickname' =>
$user->nickname));
}
}
common_redirect($url, 303);