version 1.157, 2019/01/27 16:02:43
|
version 1.160, 2020/10/15 03:09:40
|
Line 46 use Digest::MD5;
|
Line 46 use Digest::MD5;
|
# ------------------------------------------------------------ Successful login
|
# ------------------------------------------------------------ Successful login
|
sub success {
|
sub success {
|
my ($r, $username, $domain, $authhost, $lowerurl, $extra_env,
|
my ($r, $username, $domain, $authhost, $lowerurl, $extra_env,
|
$form,$skipcritical) = @_;
|
$form,$skipcritical,$cid) = @_;
|
|
|
# ------------------------------------------------------------ Get cookie ready
|
# ------------------------------------------------------------ Get cookie ready
|
my $cookie =
|
my $cookie =
|
Line 108 sub success {
|
Line 108 sub success {
|
}
|
}
|
$r->send_http_header;
|
$r->send_http_header;
|
if (ref($form) eq 'HASH') {
|
if (ref($form) eq 'HASH') {
|
|
$form->{'lti.login'} = $env{'request.lti.login'};
|
$form->{'lti.reqcrs'} = $env{'request.lti.reqcrs'};
|
$form->{'lti.reqcrs'} = $env{'request.lti.reqcrs'};
|
$form->{'lti.reqrole'} = $env{'request.lti.reqrole'};
|
$form->{'lti.reqrole'} = $env{'request.lti.reqrole'};
|
$form->{'lti.sourcecrs'} = $env{'request.lti.sourcecrs'};
|
$form->{'lti.sourcecrs'} = $env{'request.lti.sourcecrs'};
|
Line 147 sub success {
|
Line 148 sub success {
|
}
|
}
|
if (defined($form->{symb})) {
|
if (defined($form->{symb})) {
|
my $destsymb = $form->{symb};
|
my $destsymb = $form->{symb};
|
|
my $encrypted;
|
|
if ($destsymb =~ m{^/enc/}) {
|
|
$encrypted = 1;
|
|
if ($cid) {
|
|
$destsymb = &Apache::lonenc::unencrypted($destsymb,$cid);
|
|
}
|
|
}
|
$destination .= ($destination =~ /\?/) ? '&' : '?';
|
$destination .= ($destination =~ /\?/) ? '&' : '?';
|
if ($destsymb =~ /___/) {
|
if ($destsymb =~ /___/) {
|
# FIXME Need to deal with encrypted symbs and urls as needed.
|
|
my ($map,$resid,$desturl)=split(/___/,$destsymb);
|
my ($map,$resid,$desturl)=split(/___/,$destsymb);
|
$desturl = &Apache::lonnet::clutter($desturl);
|
$desturl = &Apache::lonnet::clutter($desturl);
|
|
if ($encrypted) {
|
|
$desturl = &Apache::lonenc::encrypted($desturl,1,$cid);
|
|
$destsymb = $form->{symb};
|
|
}
|
$desturl = &HTML::Entities::encode($desturl,'"<>&');
|
$desturl = &HTML::Entities::encode($desturl,'"<>&');
|
$destsymb = &HTML::Entities::encode($destsymb,'"<>&');
|
$destsymb = &HTML::Entities::encode($destsymb,'"<>&');
|
$destination .= 'destinationurl='.$desturl.
|
$destination .= 'destinationurl='.$desturl.
|
'&destsymb='.$destsymb;
|
'&destsymb='.$destsymb;
|
} else {
|
} elsif (!$encrypted) {
|
$destsymb = &HTML::Entities::encode($destsymb,'"<>&');
|
$destsymb = &HTML::Entities::encode($destsymb,'"<>&');
|
$destination .= 'destinationurl='.$destsymb;
|
$destination .= 'destinationurl='.$destsymb;
|
}
|
}
|
Line 675 sub handler {
|
Line 686 sub handler {
|
}
|
}
|
$r->internal_redirect($switchto);
|
$r->internal_redirect($switchto);
|
} else {
|
} else {
|
|
&Apache::loncommon::content_type($r,'text/html');
|
|
$r->send_http_header;
|
$r->print(&noswitch());
|
$r->print(&noswitch());
|
}
|
}
|
return OK;
|
return OK;
|
Line 705 sub handler {
|
Line 718 sub handler {
|
}
|
}
|
$r->internal_redirect($switchto);
|
$r->internal_redirect($switchto);
|
} else {
|
} else {
|
|
&Apache::loncommon::content_type($r,'text/html');
|
|
$r->send_http_header;
|
$r->print(&noswitch());
|
$r->print(&noswitch());
|
}
|
}
|
return OK;
|
return OK;
|