--- loncom/interface/lonmeta.pm 2005/12/19 21:49:12 1.146
+++ loncom/interface/lonmeta.pm 2006/03/16 22:12:17 1.153
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Metadata display handler
#
-# $Id: lonmeta.pm,v 1.146 2005/12/19 21:49:12 albertel Exp $
+# $Id: lonmeta.pm,v 1.153 2006/03/16 22:12:17 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -71,7 +71,7 @@ sub get_dynamic_metadata_from_sql {
if (! defined($authordom) || ! defined($author)) {
return ();
}
- my @Fields = ('url','count','course',
+ my @Fields = ('url','count','course','course_list',
'goto','goto_list',
'comefrom','comefrom_list',
'sequsage','sequsage_list',
@@ -248,8 +248,13 @@ sub fieldnames {
'notes' => 'Notes',
'abstract' => 'Abstract',
'lowestgradelevel' => 'Lowest Grade Level',
- 'highestgradelevel' => 'Highest Grade Level',
- 'courserestricted' => 'Course Restricting Metadata');
+ 'highestgradelevel' => 'Highest Grade Level');
+
+ if (! defined($file_type) || $file_type ne 'portfolio') {
+ %fields =
+ (%fields,
+ 'courserestricted' => 'Course Restricting Metadata');
+ }
if (! defined($file_type) || $file_type ne 'portfolio') {
%fields =
@@ -295,11 +300,13 @@ sub portfolio_linked_path {
my $result = &Apache::portfolio::make_anchor('portfolio','/');
my $fullpath = '/';
my (undef,@tree) = split('/',$path);
+ my $filename = pop(@tree);
foreach my $dir (@tree) {
$fullpath .= $dir.'/';
$result .= '/';
$result .= &Apache::portfolio::make_anchor($dir,$fullpath);
}
+ $result .= "/$filename";
return $result;
}
@@ -314,7 +321,7 @@ sub portfolio_display_uri {
$meta_uri .= '.meta';
}
- my ($path) = ($res_uri =~ m|(.*)/[^/]*$|);
+ my ($path) = ($res_uri =~ m|^portfolio(.*/)[^/]*$|);
if ($as_links) {
$res_uri = &portfolio_linked_path($res_uri);
@@ -351,36 +358,31 @@ sub pre_select_course {
return;
}
sub select_course {
- my %courses;
- my $output;
- my $selected;
- foreach my $key (keys(%env)) {
- if ($key =~ m/\.metadata\./) {
- $key =~ m/^course\.(.+)(\.metadata.+$)/;
- my $course = $1;
- my $coursekey = 'course.'.$course.'.description';
- my $value = $env{$coursekey};
- $courses{$coursekey} = $value;
- }
- }
- my $meta_not_found = 1;
- if ($Apache::lonpublisher::metadatafields{'courserestricted'} eq 'none') {
- $selected = ' SELECTED ';
- } else {
- $selected = '';
- }
+ my $output=$/;
+ my $current_restriction=
+ $Apache::lonpublisher::metadatafields{'courserestricted'};
+ my $selected = ($current_restriction eq 'none' ? 'selected="selected"'
+ : '');
+
$output .= '
';
return ($output);
@@ -445,7 +447,7 @@ sub prettyprint {
($type eq 'comefrom_list') ||
($type eq 'sequsage_list') ||
($type eq 'dependencies')) {
- return '