version 1.358, 2021/11/30 14:16:13
|
version 1.363, 2022/05/24 16:23:04
|
Line 181 ENDREDIR
|
Line 181 ENDREDIR
|
|
|
sub finish_loading_course { |
sub finish_loading_course { |
my ($r,$msg,$url) = @_; |
my ($r,$msg,$url) = @_; |
my $link = '<div id="LC_course_loaded" style="display:none"><a href="'.$url.'">'.&mt('Continue').'</a></div>'; |
my $link = '<div id="LC_course_loaded" style="display:none"><a href="'. |
|
&HTML::Entities::encode($url,'"<>&').'">'.&mt('Continue').'</a></div>'; |
my $end_page = &Apache::loncommon::end_page(); |
my $end_page = &Apache::loncommon::end_page(); |
my $js_url = &js_escape($url); |
my $js_url = &js_escape($url); |
$r->print(<<END); |
$r->print(<<END); |
Line 195 $msg
|
Line 196 $msg
|
var url = "$js_url"; |
var url = "$js_url"; |
\$(location).attr('href',url); |
\$(location).attr('href',url); |
}); |
}); |
|
// ]]> |
</script> |
</script> |
$link |
$link |
$end_page |
$end_page |
Line 277 sub handler {
|
Line 279 sub handler {
|
$update = $then; |
$update = $then; |
} |
} |
|
|
my ($norolelist,$blocked_by_ip,$blocked_type,$blocked_ipaddr); |
my ($norolelist,$blocked_by_ip,$blocked_type,$clientip); |
|
$clientip = &Apache::lonnet::get_requestor_ip($r); |
if (($env{'request.course.id'}) && ($env{'request.deeplink.login'})) { |
if (($env{'request.course.id'}) && ($env{'request.deeplink.login'})) { |
my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'}; |
my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'}; |
my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'}; |
my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'}; |
Line 358 sub handler {
|
Line 361 sub handler {
|
$ipaccessref = &Apache::lonnet::do_cache_new('ipaccess',$cdom,$domconfig{'ipaccess'},1800); |
$ipaccessref = &Apache::lonnet::do_cache_new('ipaccess',$cdom,$domconfig{'ipaccess'},1800); |
} |
} |
if (ref($ipaccessref) eq 'HASH') { |
if (ref($ipaccessref) eq 'HASH') { |
my $remote_ip = &Apache::lonnet::get_requestor_ip(); |
|
foreach my $id (keys(%{$ipaccessref})) { |
foreach my $id (keys(%{$ipaccessref})) { |
if (ref($ipaccessref->{$id}) eq 'HASH') { |
if (ref($ipaccessref->{$id}) eq 'HASH') { |
my $range = $ipaccessref->{$id}->{'ip'}; |
my $range = $ipaccessref->{$id}->{'ip'}; |
if ($range) { |
if ($range) { |
my $type = 'exclude'; |
my $type = 'exclude'; |
if (&Apache::lonnet::ip_match($remote_ip,$range)) { |
if (&Apache::lonnet::ip_match($clientip,$range)) { |
$type = 'include'; |
$type = 'include'; |
} |
} |
if (ref($ipaccessref->{$id}->{'courses'}) eq 'HASH') { |
if (ref($ipaccessref->{$id}->{'courses'}) eq 'HASH') { |
Line 386 sub handler {
|
Line 388 sub handler {
|
} |
} |
} |
} |
} |
} |
unless ($showrole) { |
|
$blocked_ipaddr = $remote_ip; |
|
} |
|
} |
} |
} |
} |
} |
} |
Line 783 ENDCLOSE
|
Line 782 ENDCLOSE
|
$r->rflush(); |
$r->rflush(); |
my ($msg,$blockcrit,$critmsg_check); |
my ($msg,$blockcrit,$critmsg_check); |
$critmsg_check = 1; |
$critmsg_check = 1; |
$blockcrit = &Apache::loncommon::blocking_status('alert',$cnum,$cdom,undef,1); |
$blockcrit = &Apache::loncommon::blocking_status('alert',$clientip,$cnum,$cdom,undef,1); |
if ($blockcrit) { |
if ($blockcrit) { |
my $checkrole = "cm./$cdom/$cnum"; |
my $checkrole = "cm./$cdom/$cnum"; |
if ($csec ne '') { |
if ($csec ne '') { |
Line 900 ENDCLOSE
|
Line 899 ENDCLOSE
|
($env{'request.lti.rosterid'} || $env{'request.lti.passbackid'})) { |
($env{'request.lti.rosterid'} || $env{'request.lti.passbackid'})) { |
&process_lti($r,$cdom,$cnum); |
&process_lti($r,$cdom,$cnum); |
} |
} |
|
if ($env{'request.deeplink.login'}) { |
|
&set_deeplink_target($cnum,$cdom); |
|
} |
$msg = '<p>'.&mt('Entering [_1] ...', |
$msg = '<p>'.&mt('Entering [_1] ...', |
$env{'course.'.$cdom.'_'.$cnum.'.description'}). |
$env{'course.'.$cdom.'_'.$cnum.'.description'}). |
'</p>'; |
'</p>'; |
Line 931 ENDCLOSE
|
Line 933 ENDCLOSE
|
($env{'request.lti.rosterid'} || $env{'request.lti.passbackid'})) { |
($env{'request.lti.rosterid'} || $env{'request.lti.passbackid'})) { |
&process_lti($r,$cdom,$cnum); |
&process_lti($r,$cdom,$cnum); |
} |
} |
|
if ($env{'request.deeplink.login'}) { |
|
&set_deeplink_target($cnum,$cdom); |
|
} |
# Check to see if the user is a CC entering a course |
# Check to see if the user is a CC entering a course |
# for the first time |
# for the first time |
if ((($role eq 'cc') || ($role eq 'co')) |
if ((($role eq 'cc') || ($role eq 'co')) |
Line 1354 ENDHEADER
|
Line 1359 ENDHEADER
|
} |
} |
$r->print('<h3><span class="LC_error">'. |
$r->print('<h3><span class="LC_error">'. |
&mt('The [_1] you selected is not available for access with a [_2] role from your current IP address: [_3].', |
&mt('The [_1] you selected is not available for access with a [_2] role from your current IP address: [_3].', |
lc($blocked_type),$blocked_role,$blocked_ipaddr). |
lc($blocked_type),$blocked_role,$clientip). |
'</span></h3>'); |
'</span></h3>'); |
} |
} |
} |
} |
Line 1994 sub findcourse_advice {
|
Line 1999 sub findcourse_advice {
|
} else { |
} else { |
$r->print('<p>'.&mt('If you were expecting to see an active role listed for a particular course, that course may not have been created yet.').'</p>'); |
$r->print('<p>'.&mt('If you were expecting to see an active role listed for a particular course, that course may not have been created yet.').'</p>'); |
if ($elapsed > 600) { |
if ($elapsed > 600) { |
$r->print('<p>'.&mt('You may also have been assigned to a course in the time since you last logged-in, or checked for changes'). |
$r->print('<p>'.&mt('You may also have been assigned to a course in the time since you last logged-in, or checked for changes.'). |
'<br />'. |
'<br />'. |
&mt('If that is the case you can use the "Check for changes" link in the gray Functions bar to update the list of your available course roles.').'</p>'); |
&mt('If that is the case you can use the "Check for changes" link in the gray Functions bar to update the list of your available course roles.').'</p>'); |
} |
} |
Line 3549 sub ltienroll {
|
Line 3554 sub ltienroll {
|
} |
} |
} |
} |
|
|
|
sub set_deeplink_target { |
|
my ($cnum,$cdom) = @_; |
|
if (($cnum ne '') && ($cdom ne '')) { |
|
my $deeplink_symb = &Apache::loncommon::deeplink_login_symb($cnum,$cdom); |
|
if ($deeplink_symb ne '') { |
|
my $deeplink; |
|
if ($deeplink_symb =~ /\.(page|sequence)$/) { |
|
my $mapname = &Apache::lonnet::deversion((&Apache::lonnet::decode_symb($deeplink_symb))[2]); |
|
my $navmap = Apache::lonnavmaps::navmap->new(); |
|
if (ref($navmap)) { |
|
$deeplink = $navmap->get_mapparam(undef,$mapname,'0.deeplink'); |
|
} |
|
} elsif ($deeplink_symb ne '') { |
|
$deeplink = &Apache::lonnet::EXT('resource.0.deeplink',$deeplink_symb); |
|
} |
|
if ($deeplink ne '') { |
|
my ($state,$others,$listed,$scope,$protect,$display,$target) = split(/,/,$deeplink); |
|
if ($target ne '') { |
|
&Apache::lonnet::appenv({'request.deeplink.target' => $target}); |
|
} |
|
} |
|
} |
|
} |
|
return; |
|
} |
|
|
1; |
1; |
__END__ |
__END__ |
|
|