--- loncom/interface/lonmeta.pm 2005/01/18 01:44:12 1.88 +++ loncom/interface/lonmeta.pm 2005/02/17 08:29:43 1.92 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Metadata display handler # -# $Id: lonmeta.pm,v 1.88 2005/01/18 01:44:12 banghart Exp $ +# $Id: lonmeta.pm,v 1.92 2005/02/17 08:29:43 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -236,6 +236,21 @@ sub diffgraph { # The field names sub fieldnames { + my $file_type=shift; + if ($file_type eq 'portfolio') { + return &Apache::lonlocal::texthash + ( + 'title' => 'Title', + 'author' =>'Author(s)', + 'authorspace' => 'Author Space', + 'modifyinguser' => 'Last Modifying User', + 'subject' => 'Subject', + 'keywords' => 'Keyword(s)', + 'notes' => 'Notes', + 'abstract' => 'Abstract', + 'lowestgradelevel' => 'Lowest Grade Level', + 'highestgradelevel' => 'Highest Grade Level'); + } else { return &Apache::lonlocal::texthash ( 'title' => 'Title', @@ -280,6 +295,7 @@ sub fieldnames { 'disc' => 'Degree of discrimination', 'dependencies' => 'Resources used by this resource', ); + } } # Pretty printing of metadata field @@ -530,13 +546,19 @@ sub handler { # my ($resdomain,$resuser)= (&Apache::lonnet::declutter($uri)=~/^(\w+)\/(\w+)\//); - $r->print(''. + my $html=&Apache::lonxml::xmlbegin(); + $r->print($html.'<head><title>'. 'Catalog Information'. ''); if ($uri=~m:/adm/bombs/(.*)$:) { $r->print(&Apache::loncommon::bodytag('Error Messages')); # Looking for all bombs? &report_bombs($r,$uri); + } elsif ($uri=~/\/portfolio\//) { + $r->print(&Apache::loncommon::bodytag + ('Edit Portfolio File Information','','','',$resdomain)); + &present_editable_metadata($r,$uri,'portfolio'); + } elsif ($uri=~/^\/\~/) { # Construction space $r->print(&Apache::loncommon::bodytag @@ -870,7 +892,7 @@ sub print_dynamic_metadata { ##################################################### ##################################################### sub present_editable_metadata { - my ($r,$uri) = @_; + my ($r,$uri, $file_type) = @_; # Construction Space Call # Header my $disuri=$uri; @@ -915,13 +937,20 @@ ENDEDIT $r->print(''); - my %lt=&fieldnames(); + my %lt=&fieldnames($file_type); my $output; - foreach ('author','title','subject','keywords','abstract','notes', + my @fields; + if ($file_type eq 'portfolio') { + @fields = ('author','title','subject','keywords','abstract','notes','lowestgradelevel', + 'highestgradelevel'); + } else { + @fields = ('author','title','subject','keywords','abstract','notes', 'copyright','customdistributionfile','language', 'standards', 'lowestgradelevel','highestgradelevel','sourceavail','sourcerights', - 'obsolete','obsoletereplacement') { + 'obsolete','obsoletereplacement'); + } + foreach (@fields) { if (defined($ENV{'form.new_'.$_})) { $Apache::lonpublisher::metadatafields{$_}= $ENV{'form.new_'.$_};