version 1.435, 2024/02/27 15:46:42
|
version 1.438, 2024/04/14 17:12:27
|
Line 670 sub handler {
|
Line 670 sub handler {
|
{col1 => 'Rules for shared secrets', |
{col1 => 'Rules for shared secrets', |
col2 => 'Settings'}, |
col2 => 'Settings'}, |
{col1 => 'Link Protectors in Courses', |
{col1 => 'Link Protectors in Courses', |
col2 => 'Values'}, |
col2 => 'Values'}, |
{col1 => 'Link Protectors', |
{col1 => 'Link Protectors', |
col2 => 'Settings'}, |
col2 => 'Settings'}, |
{col1 => 'Consumers', |
{col1 => 'Consumers', |
Line 686 sub handler {
|
Line 686 sub handler {
|
print => \&print_ipaccess, |
print => \&print_ipaccess, |
modify => \&modify_ipaccess, |
modify => \&modify_ipaccess, |
}, |
}, |
'authordefaults' => |
'authordefaults' => |
{text => 'Authoring Space defaults', |
{text => 'Authoring Space defaults', |
help => 'Domain_Configuration_Author_Defaults', |
help => 'Domain_Configuration_Author_Defaults', |
header => [{col1 => 'Defaults which can be overridden by Author', |
header => [{col1 => 'Defaults which can be overridden by Author', |
Line 6917 sub print_coursedefaults {
|
Line 6917 sub print_coursedefaults {
|
domexttool => 'External Tools defined in the domain may be used in courses/communities (by type)', |
domexttool => 'External Tools defined in the domain may be used in courses/communities (by type)', |
exttool => 'External Tools can be defined and configured in courses/communities (by type)', |
exttool => 'External Tools can be defined and configured in courses/communities (by type)', |
crsauthor => 'Standard LON-CAPA problems can be created within a course/community (by type)', |
crsauthor => 'Standard LON-CAPA problems can be created within a course/community (by type)', |
|
crseditors => 'Available editors for web pages and/or problems created in a course/community', |
); |
); |
my %staticdefaults = ( |
my %staticdefaults = ( |
anonsurvey_threshold => 10, |
anonsurvey_threshold => 10, |
Line 6927 sub print_coursedefaults {
|
Line 6928 sub print_coursedefaults {
|
domexttool => 1, |
domexttool => 1, |
exttool => 0, |
exttool => 0, |
crsauthor => 1, |
crsauthor => 1, |
|
crseditors => ['edit','xml'], |
); |
); |
if ($position eq 'top') { |
if ($position eq 'top') { |
%defaultchecked = ( |
%defaultchecked = ( |
Line 7048 sub print_coursedefaults {
|
Line 7050 sub print_coursedefaults {
|
my %domexttool; |
my %domexttool; |
my %exttool; |
my %exttool; |
my %crsauthor; |
my %crsauthor; |
|
my %crseditors; |
my @types = ('official','unofficial','community','textbook','placement'); |
my @types = ('official','unofficial','community','textbook','placement'); |
if (ref($settings) eq 'HASH') { |
if (ref($settings) eq 'HASH') { |
if ($settings->{'ltiauth'}) { |
if ($settings->{'ltiauth'}) { |
Line 7086 sub print_coursedefaults {
|
Line 7089 sub print_coursedefaults {
|
} |
} |
} |
} |
} |
} |
|
if (ref($settings->{'crseditors'}) eq 'ARRAY') { |
|
foreach my $editor (@{$settings->{'crseditors'}}) { |
|
$crseditors{$editor} = ' checked="checked"'; |
|
} |
|
} else { |
|
foreach my $editor (@{$staticdefaults{'crseditors'}}) { |
|
$crseditors{$editor} = ' checked="checked"'; |
|
} |
|
} |
$currdefresponder = $settings->{'anonsurvey_threshold'}; |
$currdefresponder = $settings->{'anonsurvey_threshold'}; |
if (ref($settings->{'uploadquota'}) eq 'HASH') { |
if (ref($settings->{'uploadquota'}) eq 'HASH') { |
foreach my $type (keys(%{$settings->{'uploadquota'}})) { |
foreach my $type (keys(%{$settings->{'uploadquota'}})) { |
Line 7149 sub print_coursedefaults {
|
Line 7161 sub print_coursedefaults {
|
$crsauthor{$type} = ' checked="checked"'; |
$crsauthor{$type} = ' checked="checked"'; |
} |
} |
} |
} |
|
foreach my $editor (@{$staticdefaults{'crseditors'}}) { |
|
$crseditors{$editor} = ' checked="checked"'; |
|
} |
} |
} |
if (!$currdefresponder) { |
if (!$currdefresponder) { |
$currdefresponder = $staticdefaults{'anonsurvey_threshold'}; |
$currdefresponder = $staticdefaults{'anonsurvey_threshold'}; |
Line 7276 sub print_coursedefaults {
|
Line 7291 sub print_coursedefaults {
|
foreach my $type (@types) { |
foreach my $type (@types) { |
$datatable .= '<td style="text-align: left">'. |
$datatable .= '<td style="text-align: left">'. |
'<span class="LC_nobreak">'. |
'<span class="LC_nobreak">'. |
'<input type="checkbox" name="domexttool"'. |
'<label><input type="checkbox" name="domexttool"'. |
' value="'.$type.'"'.$domexttool{$type}.' />'. |
' value="'.$type.'"'.$domexttool{$type}.' />'. |
&mt($type).'</span></td>'."\n"; |
&mt($type).'</label></span></td>'."\n"; |
} |
} |
$datatable .= '</tr></table></td></tr>'."\n"; |
$datatable .= '</tr></table></td></tr>'."\n"; |
$itemcount ++; |
$itemcount ++; |
Line 7291 sub print_coursedefaults {
|
Line 7306 sub print_coursedefaults {
|
foreach my $type (@types) { |
foreach my $type (@types) { |
$datatable .= '<td style="text-align: left">'. |
$datatable .= '<td style="text-align: left">'. |
'<span class="LC_nobreak">'. |
'<span class="LC_nobreak">'. |
'<input type="checkbox" name="exttool"'. |
'<label><input type="checkbox" name="exttool"'. |
' value="'.$type.'"'.$exttool{$type}.' />'. |
' value="'.$type.'"'.$exttool{$type}.' />'. |
&mt($type).'</span></td>'."\n"; |
&mt($type).'</label></span></td>'."\n"; |
} |
} |
$datatable .= '</tr></table></td></tr>'."\n"; |
$datatable .= '</tr></table></td></tr>'."\n"; |
$itemcount ++; |
$itemcount ++; |
Line 7306 sub print_coursedefaults {
|
Line 7321 sub print_coursedefaults {
|
foreach my $type (@types) { |
foreach my $type (@types) { |
$datatable .= '<td style="text-align: left">'. |
$datatable .= '<td style="text-align: left">'. |
'<span class="LC_nobreak">'. |
'<span class="LC_nobreak">'. |
'<input type="checkbox" name="crsauthor"'. |
'<label><input type="checkbox" name="crsauthor"'. |
' value="'.$type.'"'.$crsauthor{$type}.' />'. |
' value="'.$type.'"'.$crsauthor{$type}.' />'. |
&mt($type).'</span></td>'."\n"; |
&mt($type).'</label></span></td>'."\n"; |
|
} |
|
$datatable .= '</tr></table></td></tr>'."\n"; |
|
$itemcount ++; |
|
$css_class = $itemcount%2 ? ' class="LC_odd_row"' : ''; |
|
$datatable .= '<tr'.$css_class.'><td><span class="LC_nobreak">'. |
|
$choices{'crseditors'}. |
|
'</span></td>'. |
|
'<td style="text-align: right" class="LC_right_item">'. |
|
'<table><tr>'; |
|
my @editors = ('edit','xml','daxe'); |
|
my %editornames = &crseditor_titles(); |
|
foreach my $editor (@editors) { |
|
$datatable .= '<td style="text-align: left">'. |
|
'<span class="LC_nobreak">'. |
|
'<label><input type="checkbox" name="crseditors"'. |
|
' value="'.$editor.'"'.$crseditors{$editor}.' />'. |
|
$editornames{$editor}.'</label></span></td>'."\n"; |
} |
} |
$datatable .= '</tr></table></td></tr>'."\n"; |
$datatable .= '</tr></table></td></tr>'."\n"; |
} |
} |
Line 7316 sub print_coursedefaults {
|
Line 7348 sub print_coursedefaults {
|
return $datatable; |
return $datatable; |
} |
} |
|
|
|
sub crseditor_titles { |
|
return &Apache::lonlocal::texthash( |
|
edit => 'Standard editor (Edit)', |
|
xml => 'Text editor (EditXML)', |
|
daxe => 'Daxe editor (Daxe)', |
|
); |
|
} |
|
|
sub print_authordefaults { |
sub print_authordefaults { |
my ($position,$dom,$settings,$rowtotal) = @_; |
my ($position,$dom,$settings,$rowtotal) = @_; |
my ($css_class,$datatable,%checkedon,%checkedoff); |
my ($css_class,$datatable,%checkedon,%checkedoff); |
Line 7324 sub print_authordefaults {
|
Line 7364 sub print_authordefaults {
|
if ($position eq 'top') { |
if ($position eq 'top') { |
my %defaultchecked = ( |
my %defaultchecked = ( |
'nocodemirror' => 'off', |
'nocodemirror' => 'off', |
|
'daxecollapse' => 'off', |
'domcoordacc' => 'on', |
'domcoordacc' => 'on', |
); |
); |
my @toggles = ('nocodemirror','domcoordacc'); |
my @toggles = ('nocodemirror','daxecollapse','domcoordacc'); |
($datatable,$itemcount) = &radiobutton_prefs($settings,\@toggles,\%defaultchecked, |
($datatable,$itemcount) = &radiobutton_prefs($settings,\@toggles,\%defaultchecked, |
\%titles,$itemcount); |
\%titles,$itemcount); |
my %staticdefaults = ( |
my %staticdefaults = ( |
Line 7445 sub print_authordefaults {
|
Line 7486 sub print_authordefaults {
|
my $checkedno = ' checked="checked"'; |
my $checkedno = ' checked="checked"'; |
my ($checkedon,$checkedoff); |
my ($checkedon,$checkedoff); |
if (ref($quotas{'webdav'}) eq 'HASH') { |
if (ref($quotas{'webdav'}) eq 'HASH') { |
if ($quotas{'webdav'}{'_LC_adv'} =~ /^0|1$/) { |
if ($quotas{'webdav'}{'_LC_adv'} =~ /^0|1$/) { |
if ($quotas{'webdav'}{'_LC_adv'}) { |
if ($quotas{'webdav'}{'_LC_adv'}) { |
$checkedon = $checkedno; |
$checkedon = $checkedno; |
} else { |
} else { |
Line 7474 sub print_authordefaults {
|
Line 7515 sub print_authordefaults {
|
$text = $titles{'overon'}; |
$text = $titles{'overon'}; |
$val = 1; |
$val = 1; |
$checked = $checkedon; |
$checked = $checkedon; |
} |
} |
$datatable .= '<span class="LC_nobreak"><label>'. |
$datatable .= '<span class="LC_nobreak"><label>'. |
'<input type="radio" name="webdav_LC_adv"'. |
'<input type="radio" name="webdav_LC_adv"'. |
' value="'.$val.'"'.$checked.' />'. |
' value="'.$val.'"'.$checked.' />'. |
Line 7495 sub authordefaults_titles {
|
Line 7536 sub authordefaults_titles {
|
webdav => 'WebDAV', |
webdav => 'WebDAV', |
authorquota => 'Authoring Space quotas (MB)', |
authorquota => 'Authoring Space quotas (MB)', |
nocodemirror => 'Deactivate CodeMirror for EditXML editor', |
nocodemirror => 'Deactivate CodeMirror for EditXML editor', |
|
daxecollapse => 'Daxe editor: LON-CAPA standard menus start collapsed', |
domcoordacc => 'Dom. Coords. can enter Authoring Spaces in domain', |
domcoordacc => 'Dom. Coords. can enter Authoring Spaces in domain', |
edit => 'Standard editor (Edit)', |
edit => 'Standard editor (Edit)', |
xml => 'Text editor (EditXML)', |
xml => 'Text editor (EditXML)', |
Line 7503 sub authordefaults_titles {
|
Line 7545 sub authordefaults_titles {
|
webdav_LC_adv_over => '(overrides access based on affiliation, if set)', |
webdav_LC_adv_over => '(overrides access based on affiliation, if set)', |
none => 'No override set', |
none => 'No override set', |
overon => 'Override -- webDAV on', |
overon => 'Override -- webDAV on', |
overoff => 'Override -- webDAV off', |
overoff => 'Override -- webDAV off', |
); |
); |
} |
} |
|
|
Line 13381 sub modify_authordefaults {
|
Line 13423 sub modify_authordefaults {
|
'copyright' => 'default', |
'copyright' => 'default', |
'sourceavail' => 'closed', |
'sourceavail' => 'closed', |
'nocodemirror' => 'off', |
'nocodemirror' => 'off', |
|
'daxecollapse' => 'off', |
'domcoordacc' => 'on', |
'domcoordacc' => 'on', |
'editors' => ['edit','xml']. |
'editors' => ['edit','xml']. |
'authorquota' => 500, |
'authorquota' => 500, |
'webdav' => 0, |
'webdav' => 0, |
); |
); |
my %titles = &authordefaults_titles(); |
my %titles = &authordefaults_titles(); |
foreach my $item ('nocodemirror','domcoordacc') { |
foreach my $item ('nocodemirror','daxecollapse','domcoordacc') { |
if ($env{'form.'.$item} =~ /^(0|1)$/) { |
if ($env{'form.'.$item} =~ /^(0|1)$/) { |
$confhash{$item} = $env{'form.'.$item}; |
$confhash{$item} = $env{'form.'.$item}; |
} |
} |
Line 13407 sub modify_authordefaults {
|
Line 13450 sub modify_authordefaults {
|
} |
} |
} |
} |
$confhash{'editors'} = \@editors; |
$confhash{'editors'} = \@editors; |
|
|
my ($othertitle,$usertypes,$types) = &Apache::loncommon::sorted_inst_types($dom); |
my ($othertitle,$usertypes,$types) = &Apache::loncommon::sorted_inst_types($dom); |
my @insttypes; |
my @insttypes; |
if (ref($types) eq 'ARRAY') { |
if (ref($types) eq 'ARRAY') { |
Line 13431 sub modify_authordefaults {
|
Line 13474 sub modify_authordefaults {
|
$save_quotas{'webdav'}{'_LC_adv'} = $env{'form.webdav_LC_adv'}; |
$save_quotas{'webdav'}{'_LC_adv'} = $env{'form.webdav_LC_adv'}; |
} |
} |
if (ref($domconfig{'authordefaults'}) eq 'HASH') { |
if (ref($domconfig{'authordefaults'}) eq 'HASH') { |
foreach my $item ('nocodemirror','domcoordacc','copyright','sourceavail') { |
foreach my $item ('nocodemirror','daxecollapse','domcoordacc','copyright','sourceavail') { |
if ($domconfig{'authordefaults'}{$item} ne $confhash{$item}) { |
if ($domconfig{'authordefaults'}{$item} ne $confhash{$item}) { |
$changes{$item} = 1; |
$changes{$item} = 1; |
} |
} |
} |
} |
if (ref($domconfig{'authordefaults'}{'editors'}) eq 'ARRAY') { |
if (ref($domconfig{'authordefaults'}{'editors'}) eq 'ARRAY') { |
my @diffs = |
my @diffs = |
&Apache::loncommon::compare_arrays($confhash{'editors'}, |
&Apache::loncommon::compare_arrays($confhash{'editors'}, |
$domconfig{'authordefaults'}{'editors'}); |
$domconfig{'authordefaults'}{'editors'}); |
unless (@diffs == 0) { |
unless (@diffs == 0) { |
Line 13453 sub modify_authordefaults {
|
Line 13496 sub modify_authordefaults {
|
} |
} |
} else { |
} else { |
my @offon = ('off','on'); |
my @offon = ('off','on'); |
foreach my $item ('nocodemirror','domcoordacc') { |
foreach my $item ('nocodemirror','daxecollapse','domcoordacc') { |
if ($offon[$confhash{$item}] ne $staticdefaults{$item}) { |
if ($offon[$confhash{$item}] ne $staticdefaults{$item}) { |
$changes{$item} = 1; |
$changes{$item} = 1; |
} |
} |
} |
} |
Line 13491 sub modify_authordefaults {
|
Line 13534 sub modify_authordefaults {
|
} |
} |
if (ref($curr_quotas{'webdav'}) eq 'HASH') { |
if (ref($curr_quotas{'webdav'}) eq 'HASH') { |
if (exists($save_quotas{'webdav'}{'_LC_adv'})) { |
if (exists($save_quotas{'webdav'}{'_LC_adv'})) { |
if ($save_quotas{'webdav'}{'_LC_adv'} ne $curr_quotas{'webdav'}{'_LC_adv'}) { |
if ($save_quotas{'webdav'}{'_LC_adv'} ne $curr_quotas{'webdav'}{'_LC_adv'}) { |
$changes{'webdav_LC_adv'} = 1; |
$changes{'webdav_LC_adv'} = 1; |
} |
} |
} elsif (exists($curr_quotas{'webdav'}{'_LC_adv'})) { |
} elsif (exists($curr_quotas{'webdav'}{'_LC_adv'})) { |
Line 13511 sub modify_authordefaults {
|
Line 13554 sub modify_authordefaults {
|
if (keys(%changes)) { |
if (keys(%changes)) { |
my %domdefaults = &Apache::lonnet::get_domain_defaults($dom); |
my %domdefaults = &Apache::lonnet::get_domain_defaults($dom); |
if ((exists($changes{'authorquota'})) || (exists($changes{'webdav'})) || |
if ((exists($changes{'authorquota'})) || (exists($changes{'webdav'})) || |
($changes{'webdav_LC_adv'})) { |
($changes{'webdav_LC_adv'})) { |
if ((exists($changes{'authorquota'})) && (ref($save_quotas{'authorquota'}) eq 'HASH')) { |
if ((exists($changes{'authorquota'})) && (ref($save_quotas{'authorquota'}) eq 'HASH')) { |
$domdefaults{'authorquota'} = $save_quotas{'authorquota'}; |
$domdefaults{'authorquota'} = $save_quotas{'authorquota'}; |
} |
} |
Line 13522 sub modify_authordefaults {
|
Line 13565 sub modify_authordefaults {
|
} |
} |
$resulttext = &mt('Changes made:').'<ul>'; |
$resulttext = &mt('Changes made:').'<ul>'; |
my $authoroverride; |
my $authoroverride; |
foreach my $key ('nocodemirror','domcoordacc','copyright','sourceavail') { |
foreach my $key ('nocodemirror','daxecollapse','domcoordacc','copyright','sourceavail') { |
if (exists($changes{$key})) { |
if (exists($changes{$key})) { |
$domdefaults{$key} = $confhash{$key}; |
$domdefaults{$key} = $confhash{$key}; |
my $shown; |
my $shown; |
Line 13530 sub modify_authordefaults {
|
Line 13573 sub modify_authordefaults {
|
$resulttext .= '<li>'.&mt('Defaults which can be overridden by Author').'<ul>'; |
$resulttext .= '<li>'.&mt('Defaults which can be overridden by Author').'<ul>'; |
$authoroverride = 1; |
$authoroverride = 1; |
} |
} |
if (($key eq 'nocodemirror') || ($key eq 'domcoordacc')) { |
if (($key eq 'nocodemirror') || ($key eq 'daxecollapse') || ($key eq 'domcoordacc')) { |
$shown = ($confhash{$key} ? &mt('Yes') : &mt('No')); |
$shown = ($confhash{$key} ? &mt('Yes') : &mt('No')); |
} elsif ($key eq 'copyright') { |
} elsif ($key eq 'copyright') { |
$shown = &Apache::loncommon::copyrightdescription($confhash{$key}); |
$shown = &Apache::loncommon::copyrightdescription($confhash{$key}); |
} elsif ($key eq 'sourceavail') { |
} elsif ($key eq 'sourceavail') { |
$shown = &Apache::loncommon::source_copyrightdescription($confhash{$key}); |
$shown = &Apache::loncommon::source_copyrightdescription($confhash{$key}); |
} |
} |
$resulttext .= '<li>'.&mt('[_1] set to: [_2]',$titles{$key},$shown).'</li>'; |
$resulttext .= '<li>'.&mt('[_1] set to: [_2]',$titles{$key},$shown).'</li>'; |
} |
} |
} |
} |
if ($authoroverride) { |
if ($authoroverride) { |
Line 13578 sub modify_authordefaults {
|
Line 13621 sub modify_authordefaults {
|
} |
} |
} |
} |
$resulttext .= '<li>'.&mt('[_1] set to: [_2]',$titles{$key},$shown).'</li>'; |
$resulttext .= '<li>'.&mt('[_1] set to: [_2]',$titles{$key},$shown).'</li>'; |
} |
} |
} |
} |
if ($domcoordoverride) { |
if ($domcoordoverride) { |
$resulttext .= '</ul></li>'; |
$resulttext .= '</ul></li>'; |
Line 21210 sub modify_coursedefaults {
|
Line 21253 sub modify_coursedefaults {
|
mysqltables => 172800, |
mysqltables => 172800, |
domexttool => 1, |
domexttool => 1, |
crsauthor => 1, |
crsauthor => 1, |
|
crseditors => ['edit','xml'], |
); |
); |
my %texoptions = ( |
my %texoptions = ( |
MathJax => 'MathJax', |
MathJax => 'MathJax', |
mimetex => &mt('Convert to Images'), |
mimetex => &mt('Convert to Images'), |
tth => &mt('TeX to HTML'), |
tth => &mt('TeX to HTML'), |
); |
); |
|
|
|
my @editors = ('edit','xml','daxe'); |
|
my %editornames = &crseditor_titles(); |
|
|
$defaultshash{'coursedefaults'} = {}; |
$defaultshash{'coursedefaults'} = {}; |
|
|
if (ref($domconfig{'coursedefaults'}) ne 'HASH') { |
if (ref($domconfig{'coursedefaults'}) ne 'HASH') { |
Line 21401 sub modify_coursedefaults {
|
Line 21449 sub modify_coursedefaults {
|
$changes{'postsubmit'} = 1; |
$changes{'postsubmit'} = 1; |
} |
} |
} |
} |
my (%newdomexttool,%newexttool,%newcrsauthor,%olddomexttool,%oldexttool,%oldcrsauthor); |
my (%newdomexttool,%newexttool,%newcrsauthor,%olddomexttool,%oldexttool,%oldcrsauthor, |
|
%posscrseditors); |
map { $newdomexttool{$_} = 1; } &Apache::loncommon::get_env_multiple('form.domexttool'); |
map { $newdomexttool{$_} = 1; } &Apache::loncommon::get_env_multiple('form.domexttool'); |
map { $newexttool{$_} = 1; } &Apache::loncommon::get_env_multiple('form.exttool'); |
map { $newexttool{$_} = 1; } &Apache::loncommon::get_env_multiple('form.exttool'); |
map { $newcrsauthor{$_} = 1; } &Apache::loncommon::get_env_multiple('form.crsauthor'); |
map { $newcrsauthor{$_} = 1; } &Apache::loncommon::get_env_multiple('form.crsauthor'); |
|
map { $posscrseditors{$_} = 1; } &Apache::loncommon::get_env_multiple('form.crseditors'); |
if (ref($domconfig{'coursedefaults'}{'domexttool'}) eq 'HASH') { |
if (ref($domconfig{'coursedefaults'}{'domexttool'}) eq 'HASH') { |
%olddomexttool = %{$domconfig{'coursedefaults'}{'domexttool'}}; |
%olddomexttool = %{$domconfig{'coursedefaults'}{'domexttool'}}; |
} else { |
} else { |
Line 21438 sub modify_coursedefaults {
|
Line 21488 sub modify_coursedefaults {
|
} |
} |
} |
} |
} |
} |
|
my @newcrseditors = (); |
|
foreach my $editor (@editors) { |
|
if ($posscrseditors{$editor}) { |
|
push(@newcrseditors,$editor); |
|
} |
|
} |
|
if (ref($domconfig{'coursedefaults'}{'crseditors'}) eq 'ARRAY') { |
|
my @diffs = |
|
&Apache::loncommon::compare_arrays($domconfig{'coursedefaults'}{'crseditors'}, |
|
\@newcrseditors); |
|
if (@diffs) { |
|
$changes{'crseditors'} = 1; |
|
} |
|
} else { |
|
my @diffs = |
|
&Apache::loncommon::compare_arrays($staticdefaults{'crseditors'}, |
|
\@newcrseditors); |
|
unless (@diffs == 0) { |
|
$changes{'crseditors'} = 1; |
|
} |
|
} |
foreach my $type (@types) { |
foreach my $type (@types) { |
unless ($newdomexttool{$type}) { |
unless ($newdomexttool{$type}) { |
$newdomexttool{$type} = 0; |
$newdomexttool{$type} = 0; |
Line 21461 sub modify_coursedefaults {
|
Line 21532 sub modify_coursedefaults {
|
$defaultshash{'coursedefaults'}{'domexttool'} = \%newdomexttool; |
$defaultshash{'coursedefaults'}{'domexttool'} = \%newdomexttool; |
$defaultshash{'coursedefaults'}{'exttool'} = \%newexttool; |
$defaultshash{'coursedefaults'}{'exttool'} = \%newexttool; |
$defaultshash{'coursedefaults'}{'crsauthor'} = \%newcrsauthor; |
$defaultshash{'coursedefaults'}{'crsauthor'} = \%newcrsauthor; |
|
$defaultshash{'coursedefaults'}{'crseditors'} = \@newcrseditors; |
} |
} |
my $putresult = &Apache::lonnet::put_dom('configuration',\%defaultshash, |
my $putresult = &Apache::lonnet::put_dom('configuration',\%defaultshash, |
$dom); |
$dom); |
Line 21544 sub modify_coursedefaults {
|
Line 21616 sub modify_coursedefaults {
|
} |
} |
} |
} |
} |
} |
|
if ($changes{'crseditors'}) { |
|
if (ref($defaultshash{'coursedefaults'}{'crseditors'}) eq 'ARRAY') { |
|
$domdefaults{'crseditors'}=join(',',@{$defaultshash{'coursedefaults'}{'crseditors'}}); |
|
} |
|
} |
my $cachetime = 24*60*60; |
my $cachetime = 24*60*60; |
&Apache::lonnet::do_cache_new('domdefaults',$dom,\%domdefaults,$cachetime); |
&Apache::lonnet::do_cache_new('domdefaults',$dom,\%domdefaults,$cachetime); |
if (ref($lastactref) eq 'HASH') { |
if (ref($lastactref) eq 'HASH') { |
Line 21723 sub modify_coursedefaults {
|
Line 21800 sub modify_coursedefaults {
|
} else { |
} else { |
$resulttext .= '<li>'.$status{$item}{'default'}.'</li>'; |
$resulttext .= '<li>'.$status{$item}{'default'}.'</li>'; |
} |
} |
|
} elsif ($item eq 'crseditors') { |
|
if (ref($defaultshash{'coursedefaults'}{$item}) eq 'ARRAY') { |
|
my $shown; |
|
if (@{$defaultshash{'coursedefaults'}{$item}}) { |
|
$shown = join(', ', map { $editornames{$_} } @{$defaultshash{'coursedefaults'}{$item}}); |
|
} else { |
|
$shown = &mt('None'); |
|
} |
|
$resulttext .= '<li>'.&mt('Available editors for course/community resources: [_1]',$shown).'</li>'; |
|
} |
} |
} |
} |
} |
$resulttext .= '</ul>'; |
$resulttext .= '</ul>'; |