version 1.199, 2022/06/18 02:10:18
|
version 1.201, 2022/06/30 21:04:13
|
Line 68 sub handler {
|
Line 68 sub handler {
|
$env{'form.ltoken'} = $info{'ltoken'};
|
$env{'form.ltoken'} = $info{'ltoken'};
|
} elsif ($info{'linkprot'}) {
|
} elsif ($info{'linkprot'}) {
|
$env{'form.linkprot'} = $info{'linkprot'};
|
$env{'form.linkprot'} = $info{'linkprot'};
|
if ($info{'linkprotuser'} ne '') {
|
foreach my $item ('linkprotuser','linkprotexit') {
|
$env{'form.linkprotuser'} = $info{'linkprotuser'};
|
if ($info{$item} ne '') {
|
|
$env{'form.'.$item} = $info{$item};
|
|
}
|
}
|
}
|
} elsif ($info{'linkkey'} ne '') {
|
} elsif ($info{'linkkey'} ne '') {
|
$env{'form.linkkey'} = $info{'linkkey'};
|
$env{'form.linkkey'} = $info{'linkkey'};
|
Line 184 sub handler {
|
Line 186 sub handler {
|
$link_info{'ltoken'} = $env{'form.ltoken'};
|
$link_info{'ltoken'} = $env{'form.ltoken'};
|
} elsif ($env{'form.linkprot'}) {
|
} elsif ($env{'form.linkprot'}) {
|
$link_info{'linkprot'} = $env{'form.linkprot'};
|
$link_info{'linkprot'} = $env{'form.linkprot'};
|
if ($env{'form.linkprotuser'} ne '') {
|
foreach my $item ('linkprotuser','linkprotexit') {
|
$link_info{'linkprotuser'} = $env{'form.linkprotuser'};
|
if ($env{'form.'.$item} ne '') {
|
|
$link_info{$item} = $env{'form.'.$item};
|
|
}
|
}
|
}
|
} elsif ($env{'form.linkkey'} ne '') {
|
} elsif ($env{'form.linkkey'} ne '') {
|
$link_info{'linkkey'} = $env{'form.linkkey'};
|
$link_info{'linkkey'} = $env{'form.linkkey'};
|
Line 255 sub handler {
|
Line 259 sub handler {
|
$dest = &HTML::Entities::encode($env{'form.firsturl'},'\'"<>&');
|
$dest = &HTML::Entities::encode($env{'form.firsturl'},'\'"<>&');
|
}
|
}
|
if (($env{'form.ltoken'}) || ($env{'form.linkprot'})) {
|
if (($env{'form.ltoken'}) || ($env{'form.linkprot'})) {
|
my ($linkprot,$linkprotuser);
|
my ($linkprot,$linkprotuser,$linkprotexit);
|
if ($env{'form.ltoken'}) {
|
if ($env{'form.ltoken'}) {
|
my %info = &Apache::lonnet::tmpget($env{'form.ltoken'});
|
my %info = &Apache::lonnet::tmpget($env{'form.ltoken'});
|
$linkprot = $info{'linkprot'};
|
$linkprot = $info{'linkprot'};
|
if ($info{'linkprotuser'} ne '') {
|
if ($info{'linkprotuser'} ne '') {
|
$linkprotuser = $info{'linkprotuser'};
|
$linkprotuser = $info{'linkprotuser'};
|
}
|
}
|
my $delete = &Apache::lonnet::tmpdel($env{'form.ltoken'});
|
if ($info{'linkprotexit'} ne '') {
|
|
$linkprotexit = $info{'linkprotexit'};
|
|
}
|
} else {
|
} else {
|
$linkprot = $env{'form.linkprot'};
|
$linkprot = $env{'form.linkprot'};
|
$linkprotuser = $env{'form.linkprotuser'};
|
$linkprotuser = $env{'form.linkprotuser'};
|
|
$linkprotexit = $env{'form.linkprotexit'};
|
}
|
}
|
if ($linkprot) {
|
if ($linkprot) {
|
my ($linkprotector,$deeplink) = split(/:/,$linkprot,2);
|
my ($linkprotector,$deeplink) = split(/:/,$linkprot,2);
|
Line 276 sub handler {
|
Line 283 sub handler {
|
origurl => $deeplink,
|
origurl => $deeplink,
|
linkprot => $linkprot,
|
linkprot => $linkprot,
|
linkprotuser => $linkprotuser,
|
linkprotuser => $linkprotuser,
|
|
linkprotexit => $linkprotexit,
|
);
|
);
|
|
if ($env{'form.ltoken'}) {
|
|
my $delete = &Apache::lonnet::tmpdel($env{'form.ltoken'});
|
|
}
|
&Apache::migrateuser::logout($r,$ip,$handle,undef,undef,\%linkprotinfo);
|
&Apache::migrateuser::logout($r,$ip,$handle,undef,undef,\%linkprotinfo);
|
return OK;
|
return OK;
|
}
|
}
|
Line 325 sub handler {
|
Line 336 sub handler {
|
}
|
}
|
}
|
}
|
}
|
}
|
|
if ($env{'form.ltoken'}) {
|
|
my $delete = &Apache::lonnet::tmpdel($env{'form.ltoken'});
|
|
}
|
$r->print(
|
$r->print(
|
$start_page
|
$start_page
|
.'<p class="LC_warning">'.&mt('You are already logged in!').'</p>'
|
.'<p class="LC_warning">'.&mt('You are already logged in!').'</p>'
|
Line 450 sub handler {
|
Line 464 sub handler {
|
|
|
# -------------------------------------------------------- Store away log token
|
# -------------------------------------------------------- Store away log token
|
my ($tokenextras,$tokentype,$linkprot_for_login);
|
my ($tokenextras,$tokentype,$linkprot_for_login);
|
my @names = ('role','symb','iptoken','ltoken','linkprotuser','linkprot','linkkey');
|
my @names = ('role','symb','iptoken','ltoken','linkprotuser','linkprotexit','linkprot','linkkey');
|
foreach my $name (@names) {
|
foreach my $name (@names) {
|
if ($env{'form.'.$name} ne '') {
|
if ($env{'form.'.$name} ne '') {
|
if ($name eq 'ltoken') {
|
if ($name eq 'ltoken') {
|
Line 458 sub handler {
|
Line 472 sub handler {
|
if ($info{'linkprot'}) {
|
if ($info{'linkprot'}) {
|
$linkprot_for_login = $info{'linkprot'};
|
$linkprot_for_login = $info{'linkprot'};
|
$tokenextras .= '&linkprot='.&escape($info{'linkprot'});
|
$tokenextras .= '&linkprot='.&escape($info{'linkprot'});
|
if ($info{'linkprotuser'}) {
|
foreach my $item ('linkprotuser','linkprotexit') {
|
$tokenextras .= '&linkprotuser='.&escape($info{'linkprotuser'});
|
if ($info{$item}) {
|
|
$tokenextras .= '&'.$item.'='.&escape($info{$item});
|
|
}
|
}
|
}
|
$tokentype = 'link';
|
$tokentype = 'link';
|
last;
|
last;
|
Line 1149 sub redirect_page {
|
Line 1165 sub redirect_page {
|
$path = '/'.$path;
|
$path = '/'.$path;
|
}
|
}
|
my $url = $protocol.'://'.$hostname.$path;
|
my $url = $protocol.'://'.$hostname.$path;
|
|
my $args = {};
|
if ($env{'form.firsturl'} =~ m{^/tiny/$match_domain/\w+$}) {
|
if ($env{'form.firsturl'} =~ m{^/tiny/$match_domain/\w+$}) {
|
$url = $protocol.'://'.$hostname.$env{'form.firsturl'};
|
$url = $protocol.'://'.$hostname.$env{'form.firsturl'};
|
if (($env{'form.ltoken'}) || ($env{'form.linkprot'} ne '') ||
|
if (($env{'form.ltoken'}) || ($env{'form.linkprot'} ne '') ||
|
Line 1157 sub redirect_page {
|
Line 1174 sub redirect_page {
|
if ($env{'form.ltoken'}) {
|
if ($env{'form.ltoken'}) {
|
%link_info = &Apache::lonnet::tmpget($env{'form.ltoken'});
|
%link_info = &Apache::lonnet::tmpget($env{'form.ltoken'});
|
&Apache::lonnet::tmpdel($env{'form.ltoken'});
|
&Apache::lonnet::tmpdel($env{'form.ltoken'});
|
|
$args->{'only_body'} = 1;
|
} elsif ($env{'form.linkprot'}) {
|
} elsif ($env{'form.linkprot'}) {
|
$link_info{'linkprot'} = $env{'form.linkprot'};
|
$link_info{'linkprot'} = $env{'form.linkprot'};
|
if ($env{'form.linkprotuser'}) {
|
foreach my $item ('linkprotuser','linkprotexit') {
|
$link_info{'linkprotuser'} = $env{'form.linkprotuser'};
|
if ($env{'form.'.$item}) {
|
|
$link_info{$item} = $env{'form.'.$item};
|
|
}
|
}
|
}
|
|
$args->{'only_body'} = 1;
|
} elsif ($env{'form.linkkey'} ne '') {
|
} elsif ($env{'form.linkkey'} ne '') {
|
$link_info{'linkkey'} = $env{'form.linkkey'};
|
$link_info{'linkkey'} = $env{'form.linkkey'};
|
}
|
}
|
Line 1196 sub redirect_page {
|
Line 1217 sub redirect_page {
|
}
|
}
|
$url .= $querystring;
|
$url .= $querystring;
|
}
|
}
|
my $start_page = &Apache::loncommon::start_page('Switching Server ...',undef,
|
$args->{'redirect'} = [0,$url];
|
{'redirect' => [0,$url],});
|
my $start_page = &Apache::loncommon::start_page('Switching Server ...',undef,$args);
|
my $end_page = &Apache::loncommon::end_page();
|
my $end_page = &Apache::loncommon::end_page();
|
return $start_page.$end_page;
|
return $start_page.$end_page;
|
}
|
}
|