--- loncom/publisher/lonpublisher.pm 2001/12/05 15:40:31 1.56 +++ loncom/publisher/lonpublisher.pm 2001/12/05 22:00:14 1.61 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Publication Handler # -# $Id: lonpublisher.pm,v 1.56 2001/12/05 15:40:31 albertel Exp $ +# $Id: lonpublisher.pm,v 1.61 2001/12/05 22:00:14 albertel 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; @@ -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; @@ -487,9 +506,11 @@ sub publish { $scrout.= '
'. + '

'. &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'}); @@ -577,7 +598,7 @@ sub publish { $metadatafields{'copyright'},%cprtag); return $scrout. - '

'; + '

'; } # -------------------------------------------------------- Publication Step Two @@ -611,6 +632,7 @@ sub phasetwo { $metadatafields{'lastrevisiondate'}=$ENV{'form.lastrevisiondate'}; $metadatafields{'owner'}=$ENV{'form.owner'}; $metadatafields{'copyright'}=$ENV{'form.copyright'}; + $metadatafields{'dependencies'}=$ENV{'form.dependencies'}; my $allkeywords=$ENV{'form.addkey'}; map {