--- loncom/lonnet/perl/lonnet.pm 2000/11/27 23:10:18 1.72 +++ loncom/lonnet/perl/lonnet.pm 2000/12/02 12:41:48 1.75 @@ -61,6 +61,8 @@ # an array of IDs # idrget(domain,array): returns hash with IDs for usernames (name=>id,...) for # an array of names +# metadata(file,entry): returns the metadata entry for a file. entry='keys' +# returns a comma separated list of keys # # 6/1/99,6/2,6/10,6/11,6/12,6/14,6/26,6/28,6/29,6/30, # 7/1,7/2,7/9,7/10,7/12,7/14,7/15,7/19, @@ -77,7 +79,8 @@ # 10/04 Guy Albertelli # 10/06,10/09,10/10,10/11,10/14,10/20,10/23,10/25,10/26,10/27,10/28,10/29, # 10/30,10/31, -# 11/2,11/14,11/15,11/16,11/20,11/21,11/22,11/25,11/27 Gerd Kortemeyer +# 11/2,11/14,11/15,11/16,11/20,11/21,11/22,11/25,11/27, +# 12/02 Gerd Kortemeyer package Apache::lonnet; @@ -629,9 +632,12 @@ sub restore { my ($name,$value)=split(/\=/,$_); $returnhash{&unescape($name)}=&unescape($value); } split(/\&/,$answer); - map { - $returnhash{$_}=$returnhash{$returnhash{'version'}.':'.$_}; - } split(/\:/,$returnhash{$returnhash{'version'}.':keys'}); + my $version; + for ($version=1;$version<=$returnhash{'version'};$version++) { + map { + $returnhash{$_}=$returnhash{$version.':'.$_}; + } split(/\:/,$returnhash{$version.':keys'}); + } return %returnhash; } @@ -1147,7 +1153,7 @@ sub fileembstyle { # ------------------------------------------------------------ Description Text -sub filedecription { +sub filedescription { my $ending=shift; return $fd{$ending}; } @@ -1475,9 +1481,11 @@ sub EXT { sub metadata { my ($uri,$what)=@_; $uri=&declutter($uri); - unless ($uri=~/\.meta$/) { $uri.='.meta'; } + my $filename=$uri; + $uri=~s/\.meta$//; unless ($metacache{$uri.':keys'}) { - my $metastring=&getfile($perlvar{'lonDocRoot'}.'/res/'.$uri); + unless ($filename=~/\.meta$/) { $filename.='.meta'; } + my $metastring=&getfile($perlvar{'lonDocRoot'}.'/res/'.$filename); my $parser=HTML::TokeParser->new(\$metastring); my $token; while ($token=$parser->get_token) {