Diff for /loncom/interface/domainprefs.pm between versions 1.79 and 1.83

version 1.79, 2008/12/17 22:12:53 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 2373  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 3612  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 3636  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 4968  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') {

Removed from v.1.79  
changed lines
  Added in v.1.83


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>