--- loncom/interface/domainprefs.pm 2008/12/26 22:27:24 1.76.2.6
+++ loncom/interface/domainprefs.pm 2008/12/18 16:58:26 1.80
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Handler to set domain-wide configuration settings
#
-# $Id: domainprefs.pm,v 1.76.2.6 2008/12/26 22:27:24 raeburn Exp $
+# $Id: domainprefs.pm,v 1.80 2008/12/18 16:58:26 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -39,7 +39,7 @@ use Apache::lonlocal;
use Apache::lonmsg();
use LONCAPA qw(:DEFAULT :match);
use LONCAPA::Enrollment;
-use LONCAPA::lonauthcgi();
+use LONCAPA::loncgi();
use File::Copy;
use Locale::Language;
use DateTime::TimeZone;
@@ -107,7 +107,7 @@ sub handler {
'quotas' =>
{ text => 'User blogs, home pages and portfolios',
help => 'Domain_Configuration_Quotas',
- header => [{col1 => 'User type',
+ header => [{col1 => 'User affiliation',
col2 => 'Available tools',
col3 => 'Portfolio quota',}],
},
@@ -175,7 +175,7 @@ sub handler {
}],
},
'serverstatuses' =>
- {text => 'Access to Server Status Pages',
+ {text => 'Access to server status pages',
help => 'Domain_Configuration_Server_Status',
header => [{col1 => 'Status Page',
col2 => 'Other named users',
@@ -817,9 +817,9 @@ sub login_choices {
bgs => "Background colors",
links => "Link colors",
font => "Font color",
- pgbg => "Page",
- mainbg => "Main panel",
- sidebg => "Side panel",
+ pgbg => "Header",
+ mainbg => "Page",
+ sidebg => "Login box",
link => "Link",
alink => "Active link",
vlink => "Visited link",
@@ -1330,7 +1330,7 @@ sub print_quotas {
' ';
}
$datatable .= '('.&mt('overrides affiliation').
- ')';
+ ')';
$$rowtotal += $typecount;
return $datatable;
}
@@ -2373,7 +2373,7 @@ sub print_serverstatuses {
}
}
}
- my $titles= &LONCAPA::lonauthcgi::serverstatus_titles();
+ my $titles= &LONCAPA::loncgi::serverstatus_titles();
my $rownum = 0;
my $css_class;
foreach my $type (@pages) {
@@ -3615,12 +3615,14 @@ sub modify_quotas {
my %newenv;
foreach my $item (@usertools) {
if (ref($changes{$item}) eq 'HASH') {
- my $newacc =
+ my $newacc =
&Apache::lonnet::usertools_access($env{'user.name'},
$env{'user.domain'},
$item,'reload');
- if ($env{'environment.availabletools.'.$item} ne $newacc) {
+ if ($env{'environment.tools.'.$item} ne '') {
+ if ($env{'environment.availabletools.'.$item} ne $newacc) {
$newenv{'environment.availabletools.'.$item} = $newacc;
+ }
}
$resulttext .= '
'.$titles{$item}.'';
foreach my $type (@{$types},'default','_LC_adv') {
@@ -4977,57 +4979,58 @@ sub modify_serverstatuses {
my %serverstatushash = (
serverstatuses => \%newserverstatus,
);
+ my $putresult = &Apache::lonnet::put_dom('configuration',\%serverstatushash,
+ $dom);
my %changes;
foreach my $type (@pages) {
- foreach my $setting ('namedusers','machines') {
- my (@current,@new);
- if (ref($currserverstatus{$type}) eq 'HASH') {
- if ($currserverstatus{$type}{$setting} ne '') {
- @current = split(/,/,$currserverstatus{$type}{$setting});
+ if (ref($currserverstatus{$type}) eq 'HASH') {
+ my @currnamed = split(/,/,$currserverstatus{$type}{'namedusers'});
+ my @newusers = split(/,/,$newserverstatus{$type}{'namedusers'});
+ foreach my $item (@currnamed) {
+ if (!grep(/^\Q$item\E$/,@newusers)) {
+ $changes{$type}{'namedusers'} = 1;
+ last;
}
}
- if ($newserverstatus{$type}{$setting} ne '') {
- @new = split(/,/,$newserverstatus{$type}{$setting});
- }
- if (@current > 0) {
- if (@new > 0) {
- foreach my $item (@current) {
- if (!grep(/^\Q$item\E$/,@new)) {
- $changes{$type}{$setting} = 1;
- last;
- }
- }
- foreach my $item (@new) {
- if (!grep(/^\Q$item\E$/,@current)) {
- $changes{$type}{$setting} = 1;
- last;
- }
- }
- } else {
- $changes{$type}{$setting} = 1;
+ foreach my $item (@newusers) {
+ if (!grep(/^\Q$item\E$/,@currnamed)) {
+ $changes{$type}{'namedusers'} = 1;
+ last;
+ }
+ }
+ my @currmachines = split(/,/,$currserverstatus{$type}{'machines'});
+ my @newmachines = split(/,/,$newserverstatus{$type}{'machines'});
+ foreach my $item (@currmachines) {
+ if (!grep(/^\Q$item\E$/,@newmachines)) {
+ $changes{$type}{'machines'} = 1;
+ last;
}
- } elsif (@new > 0) {
- $changes{$type}{$setting} = 1;
}
+ foreach my $item (@newmachines) {
+ if (!grep(/^\Q$item\E$/,@currmachines)) {
+ $changes{$type}{'machines'} = 1;
+ last;
+ }
+ }
+
}
}
if (keys(%changes) > 0) {
- my $titles= &LONCAPA::lonauthcgi::serverstatus_titles();
+ my $titles= &LONCAPA::loncgi::serverstatus_titles();
my $putresult = &Apache::lonnet::put_dom('configuration',
\%serverstatushash,$dom);
if ($putresult eq 'ok') {
$resulttext .= &mt('Changes made:').'';
foreach my $type (@pages) {
- if (ref($changes{$type}) eq 'HASH') {
+ if (defined($changes{$type})) {
$resulttext .= '- '.$titles->{$type}.'
';
- if ($changes{$type}{'namedusers'}) {
+ if (defined($changes{$type}{'namedusers'})) {
if ($newserverstatus{$type}{'namedusers'} eq '') {
$resulttext .= '- '.&mt("Access terminated for all specific (named) users").'
'."\n";
} else {
$resulttext .= '- '.&mt("Access available for the following specified users: ").$newserverstatus{$type}{'namedusers'}.'
'."\n";
}
- }
- if ($changes{$type}{'machines'}) {
+ } elsif (defined($changes{$type}{'machines'})) {
if ($newserverstatus{$type}{'machines'} eq '') {
$resulttext .= '- '.&mt("Access terminated for all specific IP addresses").'
'."\n";
} else {