version 1.76.2.1, 2008/12/11 13:58:30
|
version 1.83, 2008/12/26 21:48:43
|
Line 39 use Apache::lonlocal;
|
Line 39 use Apache::lonlocal;
|
use Apache::lonmsg(); |
use Apache::lonmsg(); |
use LONCAPA qw(:DEFAULT :match); |
use LONCAPA qw(:DEFAULT :match); |
use LONCAPA::Enrollment; |
use LONCAPA::Enrollment; |
use LONCAPA::loncgi(); |
use LONCAPA::lonauthcgi(); |
use File::Copy; |
use File::Copy; |
use Locale::Language; |
use Locale::Language; |
use DateTime::TimeZone; |
use DateTime::TimeZone; |
Line 107 sub handler {
|
Line 107 sub handler {
|
'quotas' => |
'quotas' => |
{ text => 'User blogs, home pages and portfolios', |
{ text => 'User blogs, home pages and portfolios', |
help => 'Domain_Configuration_Quotas', |
help => 'Domain_Configuration_Quotas', |
header => [{col1 => 'User type', |
header => [{col1 => 'User affiliation', |
col2 => 'Available tools', |
col2 => 'Available tools', |
col3 => 'Portfolio quota',}], |
col3 => 'Portfolio quota',}], |
}, |
}, |
Line 175 sub handler {
|
Line 175 sub handler {
|
}], |
}], |
}, |
}, |
'serverstatuses' => |
'serverstatuses' => |
{text => 'Access to Server Status Pages', |
{text => 'Access to server status pages', |
help => 'Domain_Configuration_Server_Status', |
help => 'Domain_Configuration_Server_Status', |
header => [{col1 => 'Status Page', |
header => [{col1 => 'Status Page', |
col2 => 'Other named users', |
col2 => 'Other named users', |
Line 817 sub login_choices {
|
Line 817 sub login_choices {
|
bgs => "Background colors", |
bgs => "Background colors", |
links => "Link colors", |
links => "Link colors", |
font => "Font color", |
font => "Font color", |
pgbg => "Page", |
pgbg => "Header", |
mainbg => "Main panel", |
mainbg => "Page", |
sidebg => "Side panel", |
sidebg => "Login box", |
link => "Link", |
link => "Link", |
alink => "Active link", |
alink => "Active link", |
vlink => "Visited link", |
vlink => "Visited link", |
Line 1246 sub print_quotas {
|
Line 1246 sub print_quotas {
|
if (ref($types) eq 'ARRAY') { |
if (ref($types) eq 'ARRAY') { |
foreach my $type (@{$types}) { |
foreach my $type (@{$types}) { |
my $currdefquota; |
my $currdefquota; |
if (ref($settings->{defaultquota}) eq 'HASH') { |
if (ref($settings) eq 'HASH') { |
$currdefquota = $settings->{defaultquota}->{$type}; |
if (ref($settings->{defaultquota}) eq 'HASH') { |
} else { |
$currdefquota = $settings->{defaultquota}->{$type}; |
$currdefquota = $settings->{$type}; |
} else { |
|
$currdefquota = $settings->{$type}; |
|
} |
} |
} |
if (defined($usertypes->{$type})) { |
if (defined($usertypes->{$type})) { |
$typecount ++; |
$typecount ++; |
Line 1259 sub print_quotas {
|
Line 1261 sub print_quotas {
|
'<td class="LC_left_item">'; |
'<td class="LC_left_item">'; |
foreach my $item (@usertools) { |
foreach my $item (@usertools) { |
my $checked = 'checked="checked" '; |
my $checked = 'checked="checked" '; |
if (ref($settings->{$item}) eq 'HASH') { |
if (ref($settings) eq 'HASH') { |
if ($settings->{$item}->{$type} == 0) { |
if (ref($settings->{$item}) eq 'HASH') { |
$checked = ''; |
if ($settings->{$item}->{$type} == 0) { |
|
$checked = ''; |
|
} |
} |
} |
} |
} |
$datatable .= '<span class="LC_nobreak"><label>'. |
$datatable .= '<span class="LC_nobreak"><label>'. |
Line 1291 sub print_quotas {
|
Line 1295 sub print_quotas {
|
'<td class="LC_left_item">'; |
'<td class="LC_left_item">'; |
foreach my $item (@usertools) { |
foreach my $item (@usertools) { |
my $checked = 'checked="checked" '; |
my $checked = 'checked="checked" '; |
if (ref($settings->{$item}) eq 'HASH') { |
if (ref($settings) eq 'HASH') { |
if ($settings->{$item}->{'default'} == 0) { |
if (ref($settings->{$item}) eq 'HASH') { |
$checked = ''; |
if ($settings->{$item}->{'default'} == 0) { |
|
$checked = ''; |
|
} |
} |
} |
} |
} |
$datatable .= '<span class="LC_nobreak"><label>'. |
$datatable .= '<span class="LC_nobreak"><label>'. |
Line 1311 sub print_quotas {
|
Line 1317 sub print_quotas {
|
'<td class="LC_left_item" colspan="2"><br />'; |
'<td class="LC_left_item" colspan="2"><br />'; |
foreach my $item (@usertools) { |
foreach my $item (@usertools) { |
my $checked = 'checked="checked" '; |
my $checked = 'checked="checked" '; |
if (ref($settings->{$item}) eq 'HASH') { |
if (ref($settings) eq 'HASH') { |
if ($settings->{$item}->{'_LC_adv'} == 0) { |
if (ref($settings->{$item}) eq 'HASH') { |
$checked = ''; |
if ($settings->{$item}->{'_LC_adv'} == 0) { |
|
$checked = ''; |
|
} |
} |
} |
} |
} |
$datatable .= '<span class="LC_nobreak"><label>'. |
$datatable .= '<span class="LC_nobreak"><label>'. |
Line 1321 sub print_quotas {
|
Line 1329 sub print_quotas {
|
'" value="_LC_adv" '.$checked.'/>'.$titles{$item}. |
'" value="_LC_adv" '.$checked.'/>'.$titles{$item}. |
'</label></span> '; |
'</label></span> '; |
} |
} |
$datatable .= '('.&mt('overrides affiliation').')</td></tr>'; |
$datatable .= '<span class="LC_nobreak">('.&mt('overrides affiliation'). |
|
')</span</td></tr>'; |
$$rowtotal += $typecount; |
$$rowtotal += $typecount; |
return $datatable; |
return $datatable; |
} |
} |
Line 2364 sub print_serverstatuses {
|
Line 2373 sub print_serverstatuses {
|
} |
} |
} |
} |
} |
} |
my $titles= &LONCAPA::loncgi::serverstatus_titles(); |
my $titles= &LONCAPA::lonauthcgi::serverstatus_titles(); |
my $rownum = 0; |
my $rownum = 0; |
my $css_class; |
my $css_class; |
foreach my $type (@pages) { |
foreach my $type (@pages) { |
Line 3603 sub modify_quotas {
|
Line 3612 sub modify_quotas {
|
} |
} |
$resulttext .= '</ul></li>'; |
$resulttext .= '</ul></li>'; |
} |
} |
|
my %newenv; |
foreach my $item (@usertools) { |
foreach my $item (@usertools) { |
if (ref($changes{$item}) eq 'HASH') { |
if (ref($changes{$item}) eq 'HASH') { |
my $hashid = $env{'user.name'}.':'.$env{'user.domain'}; |
my $newacc = |
&Apache::lonnet::devalidate_cache_new('usertools.'.$item,$hashid); |
&Apache::lonnet::usertools_access($env{'user.name'}, |
|
$env{'user.domain'}, |
|
$item,'reload'); |
|
if ($env{'environment.availabletools.'.$item} ne $newacc) { |
|
$newenv{'environment.availabletools.'.$item} = $newacc; |
|
} |
$resulttext .= '<li>'.$titles{$item}.'<ul>'; |
$resulttext .= '<li>'.$titles{$item}.'<ul>'; |
foreach my $type (@{$types},'default','_LC_adv') { |
foreach my $type (@{$types},'default','_LC_adv') { |
if ($changes{$item}{$type}) { |
if ($changes{$item}{$type}) { |
Line 3627 sub modify_quotas {
|
Line 3642 sub modify_quotas {
|
} |
} |
} |
} |
$resulttext .= '</ul>'; |
$resulttext .= '</ul>'; |
|
if (keys(%newenv)) { |
|
&Apache::lonnet::appenv(\%newenv); |
|
} |
} else { |
} else { |
$resulttext = &mt('No changes made to availability of home pages, blogs, portfolios or default quotas'); |
$resulttext = &mt('No changes made to availability of home pages, blogs, portfolios or default quotas'); |
} |
} |
Line 4959 sub modify_serverstatuses {
|
Line 4977 sub modify_serverstatuses {
|
my %serverstatushash = ( |
my %serverstatushash = ( |
serverstatuses => \%newserverstatus, |
serverstatuses => \%newserverstatus, |
); |
); |
my $putresult = &Apache::lonnet::put_dom('configuration',\%serverstatushash, |
|
$dom); |
|
my %changes; |
my %changes; |
foreach my $type (@pages) { |
foreach my $type (@pages) { |
if (ref($currserverstatus{$type}) eq 'HASH') { |
foreach my $setting ('namedusers','machines') { |
my @currnamed = split(/,/,$currserverstatus{$type}{'namedusers'}); |
my @current = (); |
my @newusers = split(/,/,$newserverstatus{$type}{'namedusers'}); |
if (ref($currserverstatus{$type}) eq 'HASH') { |
foreach my $item (@currnamed) { |
@current = split(/,/,$currserverstatus{$type}{$setting}); |
if (!grep(/^\Q$item\E$/,@newusers)) { |
} |
$changes{$type}{'namedusers'} = 1; |
my @new = split(/,/,$newserverstatus{$type}{$setting}); |
last; |
if (@current > 0) { |
} |
if (@new > 0) { |
} |
foreach my $item (@current) { |
foreach my $item (@newusers) { |
if (!grep(/^\Q$item\E$/,@new)) { |
if (!grep(/^\Q$item\E$/,@currnamed)) { |
$changes{$type}{$setting} = 1; |
$changes{$type}{'namedusers'} = 1; |
last; |
last; |
} |
} |
} |
} |
if (!$changes{$type}{$setting}) { |
my @currmachines = split(/,/,$currserverstatus{$type}{'machines'}); |
foreach my $item (@new) { |
my @newmachines = split(/,/,$newserverstatus{$type}{'machines'}); |
if (!grep(/^\Q$item\E$/,@current)) { |
foreach my $item (@currmachines) { |
$changes{$type}{$setting} = 1; |
if (!grep(/^\Q$item\E$/,@newmachines)) { |
last; |
$changes{$type}{'machines'} = 1; |
} |
last; |
} |
} |
} |
} |
} else { |
foreach my $item (@newmachines) { |
$changes{$type}{$setting} = 1; |
if (!grep(/^\Q$item\E$/,@currmachines)) { |
|
$changes{$type}{'machines'} = 1; |
|
last; |
|
} |
} |
|
} elsif (@new > 0) { |
|
$changes{$type}{$setting} = 1; |
} |
} |
|
|
} |
} |
} |
} |
if (keys(%changes) > 0) { |
if (keys(%changes) > 0) { |
my $titles= &LONCAPA::loncgi::serverstatus_titles(); |
my $titles= &LONCAPA::lonauthcgi::serverstatus_titles(); |
my $putresult = &Apache::lonnet::put_dom('configuration', |
my $putresult = &Apache::lonnet::put_dom('configuration', |
\%serverstatushash,$dom); |
\%serverstatushash,$dom); |
if ($putresult eq 'ok') { |
if ($putresult eq 'ok') { |