version 1.198, 2021/10/26 14:17:21
|
version 1.199, 2021/10/26 15:52:54
|
Line 305 sub sso_login {
|
Line 305 sub sso_login {
|
my $query = $r->args; |
my $query = $r->args; |
my %form; |
my %form; |
if ($query) { |
if ($query) { |
my @items = ('role','symb','iptoken','origurl','ltoken','linkkey'); |
my @items = ('role','symb','iptoken','origurl','ltoken','linkkey','logtoken'); |
&Apache::loncommon::get_unprocessed_cgi($query,\@items); |
&Apache::loncommon::get_unprocessed_cgi($query,\@items); |
foreach my $item (@items) { |
foreach my $item (@items) { |
if (defined($env{'form.'.$item})) { |
if (defined($env{'form.'.$item})) { |
Line 324 sub sso_login {
|
Line 324 sub sso_login {
|
} |
} |
|
|
my ($linkprot,$linkkey); |
my ($linkprot,$linkkey); |
|
if ($form{'logtoken'}) { |
|
my ($firsturl,@rest); |
|
my $lonhost = $r->dir_config('lonHostID'); |
|
my $tmpinfo = &Apache::lonnet::reply('tmpget:'.$form{'logtoken'},$lonhost); |
|
my $delete = &Apache::lonnet::tmpdel($form{'logtoken'}); |
|
(undef,$firsturl,@rest) = split(/&/,$tmpinfo); |
|
foreach my $item (@rest) { |
|
my ($key,$value) = split(/=/,$item); |
|
$form{$key} = &unescape($value); |
|
} |
|
if ($firsturl =~ m{^/tiny/$match_domain/\w+$}) { |
|
$form{'origurl'} = $firsturl; |
|
} |
|
} |
if ($form{'ltoken'}) { |
if ($form{'ltoken'}) { |
my %link_info = &Apache::lonnet::tmpget($form{'ltoken'}); |
my %link_info = &Apache::lonnet::tmpget($form{'ltoken'}); |
$linkprot = $link_info{'linkprot'}; |
$linkprot = $link_info{'linkprot'}; |