Diff for /loncom/cgi/listdomconfig.pl between versions 1.1 and 1.2

version 1.1, 2011/10/21 20:23:36 version 1.2, 2016/08/01 15:19:05
Line 95  sub main { Line 95  sub main {
     }      }
     &LONCAPA::loncgi::check_cookie_and_load_env();      &LONCAPA::loncgi::check_cookie_and_load_env();
     &Apache::lonlocal::get_language_handle();      &Apache::lonlocal::get_language_handle();
       my (%gets,$format);
       &LONCAPA::loncgi::cgi_getitems($ENV{'QUERY_STRING'},\%gets,['format','primary']);
       if (ref($gets{'format'}) eq 'ARRAY') {
           $format = $gets{'format'}->[0];
       }
     if ($allowed ne '') {      if ($allowed ne '') {
         my @okdoms;          my @okdoms;
         unless ($allowed == 1) {          unless ($allowed == 1) {
             @okdoms = split(/\&/,$allowed);              @okdoms = split(/\&/,$allowed);
         }          }
         my @hosts = &Apache::lonnet::current_machine_ids();          my @hosts;
           if (ref($gets{'primary'}) eq 'ARRAY') {
               my @posshosts = &Apache::lonnet::current_machine_ids();
               foreach my $prim (@{$gets{'primary'}}) {
                   if (grep(/^\Q$prim\E$/,@posshosts)) {
                       unless (grep(/^\Q$prim\E$/,@hosts)) {
                           push(@hosts,$prim);
                       }
                   }
               }
           } else {
               @hosts = &Apache::lonnet::current_machine_ids();
           }
         my $numshown = 0;          my $numshown = 0;
         my $numnonprim = 0;          my $numnonprim = 0;
         foreach my $lonhost (@hosts) {          foreach my $lonhost (@hosts) {
Line 110  sub main { Line 127  sub main {
             }              }
             my $prim_id = &Apache::lonnet::domain($dom,'primary');              my $prim_id = &Apache::lonnet::domain($dom,'primary');
             if (($prim_id ne '') && (grep(/^\Q$prim_id\E$/,@hosts))) {              if (($prim_id ne '') && (grep(/^\Q$prim_id\E$/,@hosts))) {
                 my $domdesc = &Apache::lonnet::domain($dom);                  unless ($format eq 'raw') {
                 print &mt('Domain configuration for [_1]',"$domdesc ($dom)")."\n\n";                      my $domdesc = &Apache::lonnet::domain($dom);
                 &show_config($dom);                      print &mt('Domain configuration for [_1]',"$domdesc ($dom)")."\n\n";
                   }
                   &show_config($dom,$format);
                 print "\n";                  print "\n";
                 $numshown ++;                  $numshown ++;
             } else {              } else {
Line 121  sub main { Line 140  sub main {
         }          }
         if (!$numshown) {          if (!$numshown) {
             if ($numnonprim) {              if ($numnonprim) {
                 print &mt('This server is not a primary library server')."\n";                  unless ($format eq 'raw') {
                       print &mt('This server is not a primary library server')."\n";
                   }
             } else {              } else {
                 print &mt("You do not have access rights to view domain configuration for domain(s) hosted on this server.")."\n";                  unless ($format eq 'raw') { 
                       print &mt("You do not have access rights to view domain configuration for domain(s) hosted on this server.")."\n";
                   }
             }              }
         }          }
     } else {      } else {
         &LONCAPA::lonauthcgi::unauthorized_msg('domconf');          unless ($format eq 'raw') {
               &LONCAPA::lonauthcgi::unauthorized_msg('domconf');
           }
     }      }
 }  }
   
Line 151  Description: Displays plain text of doma Line 176  Description: Displays plain text of doma
 #############################################  #############################################
   
 sub show_config {  sub show_config {
     my ($dom) = @_;      my ($dom,$format) = @_;
     my $lonusersdir = $Apache::lonnet::perlvar{'lonUsersDir'};      my $lonusersdir = $Apache::lonnet::perlvar{'lonUsersDir'};
     my $fname = $lonusersdir.'/'.$dom.'/configuration.db';      my $fname = $lonusersdir.'/'.$dom.'/configuration.db';
     my $dbref=&LONCAPA::locking_hash_tie($fname,&GDBM_READER());      my $dbref=&LONCAPA::locking_hash_tie($fname,&GDBM_READER());
     if (ref($dbref) eq 'HASH') {      if (ref($dbref) eq 'HASH') {
           my $output; 
         foreach my $key (sort(keys(%{$dbref}))) {          foreach my $key (sort(keys(%{$dbref}))) {
             my $value = $dbref->{$key};                my $value = $dbref->{$key};  
             if ($value =~ s/^__FROZEN__//) {              if ($format eq 'raw') {
                 $value = thaw(&unescape($value));                  $output .= "$key=$value".'&';    
               } else {
                   if ($value =~ s/^__FROZEN__//) {
                       $value = thaw(&unescape($value));
                   }
                   $key = &unescape($key);
                   $value = &unescape($value) if (!ref($value));
                   print "$key = ".(ref($value)?Dumper($value):$value)."\n";
             }              }
             $key = &unescape($key);  
             $value = &unescape($value) if (!ref($value));  
             print "$key = ".(ref($value)?Dumper($value):$value)."\n";  
         }          }
         &LONCAPA::locking_hash_untie($dbref);          &LONCAPA::locking_hash_untie($dbref);
           if ($format eq 'raw') {
               $output .=~ s/\&$//;
               print $output;
           } 
     }      }
     return;      return;
 }  }

Removed from v.1.1  
changed lines
  Added in v.1.2


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