--- loncom/publisher/lonpubdir.pm 2001/06/23 18:26:40 1.9 +++ loncom/publisher/lonpubdir.pm 2001/11/29 20:03:03 1.15 @@ -10,7 +10,7 @@ # 03/23 Guy Albertelli # 03/24,03/29 Gerd Kortemeyer) # -# 03/31,04/03,05/09,06/23 Gerd Kortemeyer +# 03/31,04/03,05/09,06/23,08/18,08/20 Gerd Kortemeyer package Apache::lonpubdir; @@ -86,19 +86,34 @@ sub handler { my $linkdir='/~'.$uname.$thisdisfn; $r->print(''. - ''); + ''); my $filename; my $dirptr=16384; opendir(DIR,$fn); - while ($filename=readdir(DIR)) { + my @files=sort(readdir(DIR)); + foreach my $filename (@files) { my ($cdev,$cino,$cmode,$cnlink, $cuid,$cgid,$crdev,$csize, $catime,$cmtime,$cctime, $cblksize,$cblocks)=stat($fn.'/'.$filename); - $filename=~/\.(\w+)$/; - if (($1 ne 'meta') && (&Apache::lonnet::fileembstyle($1))) { + + my $extension=''; + if ($filename=~/\.(\w+)$/) { $extension=$1; } + if ($cmode&$dirptr) { + my $disfilename=$filename; + if ($filename eq '..') { + $disfilename='Parent Directory'; + } + unless ((($filename eq '..') && ($thisdisfn eq '')) || + ($filename eq '.')) { + $r->print('' + ); + } + } elsif (&Apache::lonnet::fileembstyle($extension) ne 'hdn') { my $status='Unpublished'; my $bgcol='#FFBBBB'; if (-e $resdir.'/'.$filename) { @@ -115,25 +130,21 @@ sub handler { if (&Apache::lonnet::fileembstyle(($filename=~/\.(\w+)$/)) eq 'ssi') { $status.='
Diffs'; } } + $status.='
Retrieve'; } $r->print(''); - } elsif ($cmode&$dirptr) { - my $disfilename=$filename; - if ($filename eq '..') { - $disfilename='Parent Directory'; - } - unless ((($filename eq '..') && ($thisdisfn eq '')) || - ($filename eq '.')) { - $r->print(''); - } + ''. + ''); + } else { + # "hidden" extension and not a directory, so hide it away. } } closedir(DIR);
FilenameModifiedStatus
FilenameModifiedStatus 
'.$disfilename. + ''.localtime($cmtime).'  
'.$filename. - ''.localtime($cmtime).''.$status.'
'.$disfilename. - ''.localtime($cmtime).' 
'.localtime($cmtime).''.$status.''. + 'Publish