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:
parent
f65478b624
commit
380439ba77
|
@ -137,6 +137,7 @@ class CasAuthenticationPlugin extends AuthenticationPlugin
|
||||||
$casSettings['server']=$this->server;
|
$casSettings['server']=$this->server;
|
||||||
$casSettings['port']=$this->port;
|
$casSettings['port']=$this->port;
|
||||||
$casSettings['path']=$this->path;
|
$casSettings['path']=$this->path;
|
||||||
|
$casSettings['takeOverLogin']=$this->takeOverLogin;
|
||||||
}
|
}
|
||||||
|
|
||||||
function onPluginVersion(&$versions)
|
function onPluginVersion(&$versions)
|
||||||
|
|
|
@ -54,9 +54,18 @@ class CasloginAction extends Action
|
||||||
// We don't have to return to it again
|
// We don't have to return to it again
|
||||||
common_set_returnto(null);
|
common_set_returnto(null);
|
||||||
} else {
|
} else {
|
||||||
$url = common_local_url('all',
|
if(common_config('site', 'private') && $casSettings['takeOverLogin']) {
|
||||||
array('nickname' =>
|
//SSO users expect to just go to the URL they entered
|
||||||
$user->nickname));
|
//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);
|
common_redirect($url, 303);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user