--- loncom/publisher/lonpublisher.pm 2001/12/04 15:34:57 1.54
+++ loncom/publisher/lonpublisher.pm 2001/12/06 18:56:14 1.62
@@ -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.62 2001/12/06 18:56:14 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -37,6 +37,10 @@
# 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
+# 12/05 Guy Albertelli
+# 12/06 Gerd Kortemeyer
package Apache::lonpublisher;
@@ -256,7 +260,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,36 +335,55 @@ 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.=''.$token->[1].'>';
}
+ }
} else {
$outstring.=$token->[1];
}
}
# ------------------------------------------------------------ Construct Allows
- unless ($style eq 'rat') {
+
$scrout.='
Dependencies
';
- my $allowstr="\n";
+ my $allowstr='';
map {
- $allowstr.=''."\n";
+ my $thisdep=$_;
+ unless ($style eq 'rat') {
+ $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;
- }
+
# ------------------------------------------------------------- Write modified
{
@@ -490,6 +513,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'});
@@ -611,6 +635,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 {