--- loncom/interface/lonmeta.pm 2006/10/16 21:39:37 1.183 +++ loncom/interface/lonmeta.pm 2006/10/23 20:53:46 1.184 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Metadata display handler # -# $Id: lonmeta.pm,v 1.183 2006/10/16 21:39:37 albertel Exp $ +# $Id: lonmeta.pm,v 1.184 2006/10/23 20:53:46 banghart Exp $ # # Copyright Michigan State University Board of Trustees # @@ -1192,6 +1192,7 @@ ENDEDIT my $output; my @fields; my $added_metadata_fields; + my @added_order; if ($file_type eq 'portfolio' || $file_type eq 'groups') { if(exists ($env{$Apache::lonpublisher::metadatafields{'courserestricted'}.'.metadata.fieldlist'})) { # retrieve fieldnames (in order) from the course restricted list @@ -1202,6 +1203,9 @@ ENDEDIT 'notes','lowestgradelevel', 'highestgradelevel','standards'); $added_metadata_fields = &Apache::lonparmset::get_added_meta_fieldnames(); + if ($env{'course.'.$env{'request.course.id'}.'.metadata.addedorder'}) { + @added_order = split /,/,$env{'course.'.$env{'request.course.id'}.'.metadata.addedorder'}; + } $env{$Apache::lonpublisher::metadatafields{'courserestricted'}.'.metadata.fieldlist'} = join (",",@fields); } } else { @@ -1244,10 +1248,16 @@ ENDEDIT $r->print("This resource is not associated with a course.
"); } } - foreach my $field_name(keys (%$added_metadata_fields)) { - - push (@fields,$field_name); - $lt{$field_name} = $$added_metadata_fields{$field_name}; + if (@added_order) { + foreach my $field_name(@added_order) { + push (@fields,$field_name); + $lt{$field_name} = $$added_metadata_fields{$field_name}; + } + } else { + foreach my $field_name(keys (%$added_metadata_fields)) { + push (@fields,$field_name); + $lt{$field_name} = $$added_metadata_fields{$field_name}; + } } foreach my $field_name (@fields) { if (defined($env{'form.new_'.$field_name})) {