--- loncom/publisher/lonpubdir.pm 2001/07/12 21:23:12 1.10 +++ loncom/publisher/lonpubdir.pm 2001/12/04 15:34:57 1.16 @@ -1,6 +1,30 @@ # The LearningOnline Network with CAPA -# # (Publication Handler +# +# $Id: lonpubdir.pm,v 1.16 2001/12/04 15:34:57 albertel Exp $ +# +# Copyright Michigan State University Board of Trustees +# +# This file is part of the LearningOnline Network with CAPA (LON-CAPA). +# +# LON-CAPA is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# LON-CAPA is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with LON-CAPA; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# /home/httpd/html/adm/gpl.txt +# +# http://www.lon-capa.org/ +# # # (TeX Content Handler # @@ -10,7 +34,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,21 +110,34 @@ sub handler { my $linkdir='/~'.$uname.$thisdisfn; $r->print(''. - ''); + ''); my $filename; my $dirptr=16384; opendir(DIR,$fn); my @files=sort(readdir(DIR)); - foreach my$filename (@files) { + foreach my $filename (@files) { my ($cdev,$cino,$cmode,$cnlink, $cuid,$cgid,$crdev,$csize, $catime,$cmtime,$cctime, $cblksize,$cblocks)=stat($fn.'/'.$filename); + my $extension=''; if ($filename=~/\.(\w+)$/) { $extension=$1; } - if (($extension ne 'meta') && (&Apache::lonnet::fileembstyle($extension))) { + 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) { @@ -117,28 +154,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 { - #no extension that we know of and not a directory - #just hide it away + # "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