--- loncom/publisher/lonpublisher.pm 2001/12/04 15:34:57 1.54 +++ loncom/publisher/lonpublisher.pm 2001/12/05 21:12:04 1.59 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Publication Handler # -# $Id: lonpublisher.pm,v 1.54 2001/12/04 15:34:57 albertel Exp $ +# $Id: lonpublisher.pm,v 1.59 2001/12/05 21:12:04 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -37,6 +37,8 @@ # 05/03,05/05,05/07 Gerd Kortemeyer # 05/28/2001 Scott Harrison # 06/23,08/07,08/11,8/13,8/17,8/18,8/24,9/26,10/16 Gerd Kortemeyer +# 12/04,12/05 Guy Albertelli +# 12/05 Gerd Kortemeyer package Apache::lonpublisher; @@ -256,7 +258,7 @@ sub publish { if ($token->[0] eq 'S') { my $counter; my $tag=$token->[1]; - my $lctag=$tag;$lctag=~/[A-Z]/[a-z]/g; + my $lctag=lc($tag); unless ($lctag eq 'allow') { my %parms=%{$token->[2]}; $counter=$addid{$tag}; @@ -331,15 +333,17 @@ sub publish { $newparmstring.=' '.$_.'='.$quote.$parms{$_}.$quote; } } keys %parms; - + if (!$endtag) { if ($token->[4]=~m:/>$:) { $endtag=' /'; }; } $outstring.='<'.$tag.$newparmstring.$endtag.'>'; } else { $allow{$token->[2]->{'src'}}=1; } } elsif ($token->[0] eq 'E') { + if ($token->[2]) { unless ($token->[1] eq 'allow') { $outstring.='[1].'>'; } + } } else { $outstring.=$token->[1]; } @@ -349,14 +353,29 @@ sub publish { $scrout.='

Dependencies

'; my $allowstr="\n"; map { - $allowstr.=''."\n"; + my $thisdep=$_; + $allowstr.=''."\n"; $scrout.='
'; - unless ($_=~/\*/) { - $scrout.=''; + unless ($thisdep=~/\*/) { + $scrout.=''; } - $scrout.=''.$_.''; - unless ($_=~/\*/) { + $scrout.=''.$thisdep.''; + unless ($thisdep=~/\*/) { $scrout.=''; + if ( + &Apache::lonnet::getfile($Apache::lonnet::perlvar{'lonDocRoot'}.'/'. + $thisdep.'.meta') eq '-1') { + $scrout.= + ' - Currently not available'; + } else { + my %temphash=(&Apache::lonnet::declutter($target).'___'. + &Apache::lonnet::declutter($thisdep).'___usage' + => time); + $thisdep=~/^\/res\/(\w+)\/(\w+)\//; + if ((defined($1)) && (defined($2))) { + &Apache::lonnet::put('resevaldata',\%temphash,$1,$2); + } + } } } keys %allow; $outstring=~s/(\<\/[^\>]+\>\s*)$/$allowstr$1/s; @@ -490,6 +509,7 @@ sub publish { &hiddenfield('phase','two'). &hiddenfield('filename',$ENV{'form.filename'}). &hiddenfield('allmeta',&Apache::lonnet::escape($allmeta)). + &hiddenfield('dependencies',join(',',keys %allow)). &textfield('Title','title',$metadatafields{'title'}). &textfield('Author(s)','author',$metadatafields{'author'}). &textfield('Subject','subject',$metadatafields{'subject'});