version 1.79.2.5, 2017/01/22 19:23:35
|
version 1.79.2.7, 2019/07/26 17:43:54
|
Line 39 use Apache::lonpickcourse;
|
Line 39 use Apache::lonpickcourse;
|
use lib '/home/httpd/lib/perl'; |
use lib '/home/httpd/lib/perl'; |
use LONCAPA qw(:DEFAULT :match); |
use LONCAPA qw(:DEFAULT :match); |
|
|
|
my $registered_cleanup; |
|
my $modified_dom; |
|
|
sub get_dc_settable { |
sub get_dc_settable { |
my ($type,$cdom) = @_; |
my ($type,$cdom) = @_; |
if ($type eq 'Community') { |
if ($type eq 'Community') { |
Line 269 function gochoose(cname,cdom,cdesc) {
|
Line 272 function gochoose(cname,cdom,cdesc) {
|
document.courselist.submit(); |
document.courselist.submit(); |
} else { |
} else { |
var str = ''; |
var str = ''; |
|
\$("#LC_choose_adhoc").empty(); |
for (var i=0; i<data.roles.length; i++) { |
for (var i=0; i<data.roles.length; i++) { |
\$("<label><input type='radio' value='"+data.roles[i].name+"' name='LC_get_role' id='LC_get_role_"+i+"' />"+data.roles[i].desc+"</label><span> </span>") |
\$("<label><input type='radio' value='"+data.roles[i].name+"' name='LC_get_role' id='LC_get_role_"+i+"' />"+data.roles[i].desc+"</label><span> </span>") |
.appendTo("#LC_choose_adhoc"); |
.appendTo("#LC_choose_adhoc"); |
} |
} |
|
\$( "#LC_adhocrole_chooser" ).toggle( true ); |
\$( "#LC_get_role_0").prop("checked", true); |
\$( "#LC_get_role_0").prop("checked", true); |
\$( "#LC_adhocrole_chooser" ).dialog({ autoOpen: false }); |
\$( "#LC_adhocrole_chooser" ).dialog({ autoOpen: false }); |
\$( "#LC_adhocrole_chooser" ).dialog("open"); |
\$( "#LC_adhocrole_chooser" ).dialog("open"); |
Line 318 function gochoose(cname,cdom,cdesc) {
|
Line 323 function gochoose(cname,cdom,cdesc) {
|
// ]]> |
// ]]> |
</script> |
</script> |
|
|
<div id="LC_adhocrole_chooser" title="$lt{'title'}"> |
<div id="LC_adhocrole_chooser" title="$lt{'title'}" style="display:none"> |
<p>$lt{'preamble'}</p> |
<p>$lt{'preamble'}</p> |
<form name="LChelpdeskadhoc" id="LChelpdeskpicker" action=""> |
<form name="LChelpdeskadhoc" id="LChelpdeskpicker" action=""> |
<div id="LC_choose_adhoc"> |
<div id="LC_choose_adhoc"> |
Line 1412 sub modify_course {
|
Line 1417 sub modify_course {
|
my $putres = &Apache::lonnet::courseidput($cdom,\%crsinfo,$chome,'notime'); |
my $putres = &Apache::lonnet::courseidput($cdom,\%crsinfo,$chome,'notime'); |
if ($putres eq 'ok') { |
if ($putres eq 'ok') { |
&update_coowners($cdom,$cnum,$chome,\%settings,\%newattr); |
&update_coowners($cdom,$cnum,$chome,\%settings,\%newattr); |
|
if ($changed{'code'}) { |
|
&Apache::lonnet::devalidate_cache_new('instcats',$cdom); |
|
# Update cache of self-cataloging courses on institution's server(s). |
|
if (&Apache::lonnet::shared_institution($cdom)) { |
|
unless ($registered_cleanup) { |
|
my $handlers = $r->get_handlers('PerlCleanupHandler'); |
|
$r->set_handlers('PerlCleanupHandler' => [\&devalidate_remote_instcats,@{$handlers}]); |
|
$registered_cleanup=1; |
|
$modified_dom = $cdom; |
|
} |
|
} |
|
} |
} |
} |
} |
} |
} |
} |
Line 2444 sub get_permission {
|
Line 2461 sub get_permission {
|
return ($allowed,\%permission); |
return ($allowed,\%permission); |
} |
} |
|
|
|
sub devalidate_remote_instcats { |
|
if ($modified_dom ne '') { |
|
my %servers = &Apache::lonnet::internet_dom_servers($modified_dom); |
|
my %thismachine; |
|
map { $thismachine{$_} = 1; } &Apache::lonnet::current_machine_ids(); |
|
if (keys(%servers)) { |
|
foreach my $server (keys(%servers)) { |
|
next if ($thismachine{$server}); |
|
&Apache::lonnet::remote_devalidate_cache($server,['instcats:'.$modified_dom]); |
|
} |
|
} |
|
$modified_dom = ''; |
|
} |
|
return; |
|
} |
|
|
sub handler { |
sub handler { |
my $r = shift; |
my $r = shift; |
if ($r->header_only) { |
if ($r->header_only) { |
Line 2452 sub handler {
|
Line 2485 sub handler {
|
return OK; |
return OK; |
} |
} |
|
|
|
$registered_cleanup=0; |
|
$modified_dom = ''; |
|
|
my $dom = $env{'request.role.domain'}; |
my $dom = $env{'request.role.domain'}; |
my $domdesc = &Apache::lonnet::domain($dom,'description'); |
my $domdesc = &Apache::lonnet::domain($dom,'description'); |
my ($allowed,$permission) = &get_permission($dom); |
my ($allowed,$permission) = &get_permission($dom); |