Diff for /loncom/lonnet/perl/lonnet.pm between versions 1.18 and 1.19

version 1.18, 2000/07/17 21:36:33 version 1.19, 2000/07/18 13:46:49
Line 24 Line 24
 # 04/05,05/29,05/31,06/01,  # 04/05,05/29,05/31,06/01,
 # 06/05,06/26 Gerd Kortemeyer  # 06/05,06/26 Gerd Kortemeyer
 # 06/26 Ben Tyszka  # 06/26 Ben Tyszka
 # 06/30,07/15,07/17 Gerd Kortemeyer  # 06/30,07/15,07/17,07/18 Gerd Kortemeyer
   
 package Apache::lonnet;  package Apache::lonnet;
   
Line 597  sub dirlist { Line 597  sub dirlist {
     my $uri=shift;      my $uri=shift;
     $uri=~s/^\///;      $uri=~s/^\///;
     $uri=~s/\/$//;      $uri=~s/\/$//;
     $uri=~/^res\/(\w+)\/(\w+)/;      my ($res,$udom,$uname,@rest)=split(/\//,$uri);
     my $listing=reply('ls:'.$perlvar{'lonDocRoot'}.'/'.$uri,homeserver($2,$1));      if ($udom) {
     return split(/:/,$listing);       if ($uname) {
          my $listing=reply('ls:'.$perlvar{'lonDocRoot'}.'/'.$uri,
                         homeserver($uname,$udom));
          return split(/:/,$listing);
        } else {
          my $tryserver;
          my %allusers=();
          foreach $tryserver (keys %libserv) {
     if ($hostdom{$tryserver} eq $udom) {
                my $listing=reply('ls:'.$perlvar{'lonDocRoot'}.'/res/'.$udom,
          $tryserver);
                if (($listing ne 'no_such_dir') && ($listing ne 'empty')
                 && ($listing ne 'con_lost')) {
                   map {
                     my ($entry,@stat)=split(/&/,$_);
                     $allusers{$entry}=1;
                   } split(/:/,$listing);
                }
     }
          }
          my $alluserstr='';
          map {
              $alluserstr.=$_.'&user:';
          } sort keys %allusers;
          $alluserstr=~s/:$//;
          return split(/:/,$alluserstr);
        } 
      } else {
          my $tryserver;
          my %alldom=();
          foreach $tryserver (keys %libserv) {
      $alldom{$hostdom{$tryserver}}=1;
          }
          my $alldomstr='';
          map {
             $alldomstr.=$perlvar{'lonDocRoot'}.'/res/'.$_.'&domain:';
          } sort keys %alldom;
          $alldomstr=~s/:$//;
          return split(/:/,$alldomstr);       
      }
 }  }
   
 # -------------------------------------------------------- Escape Special Chars  # -------------------------------------------------------- Escape Special Chars

Removed from v.1.18  
changed lines
  Added in v.1.19


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