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

version 1.81, 2008/12/25 01:52:49 version 1.83, 2008/12/26 21:48:43
Line 4977  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;  
                     last;  
                 }  
             }  
             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;  
                 }  
             }              }
             foreach my $item (@newmachines) {              my @new = split(/,/,$newserverstatus{$type}{$setting});
                 if (!grep(/^\Q$item\E$/,@currmachines)) {              if (@current > 0) {
                     $changes{$type}{'machines'} = 1;                  if (@new > 0) {
                     last;                      foreach my $item (@current) {
                           if (!grep(/^\Q$item\E$/,@new)) {
                               $changes{$type}{$setting} = 1;
                               last;
                           }
                       }
                       if (!$changes{$type}{$setting}) {
                           foreach my $item (@new) {
                               if (!grep(/^\Q$item\E$/,@current)) {
                                   $changes{$type}{$setting} = 1;
                                   last;
                               }
                           }
                       }
                   } else {
                       $changes{$type}{$setting} = 1;
                 }                  }
               } elsif (@new > 0) {
                   $changes{$type}{$setting} = 1;
             }              }
   
         }          }
     }      }
     if (keys(%changes) > 0) {      if (keys(%changes) > 0) {

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


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