--- loncom/interface/lonmeta.pm 2003/12/29 19:01:27 1.47
+++ loncom/interface/lonmeta.pm 2003/12/31 15:34:32 1.53
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Metadata display handler
#
-# $Id: lonmeta.pm,v 1.47 2003/12/29 19:01:27 www Exp $
+# $Id: lonmeta.pm,v 1.53 2003/12/31 15:34:32 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -37,6 +37,7 @@ use Apache::lonmsg;
use Apache::lonpublisher;
use Apache::lonlocal;
use Apache::lonmysql;
+use Apache::lonmsg;
# MySQL table columns
@@ -283,6 +284,11 @@ sub prettyprint {
$value=~s/(\w+)(\:|\@)(\w+)/&authordisplay($1,$3)/gse;
return $value;
}
+# Gradelevel
+ if (($type eq 'lowestgradelevel') ||
+ ($type eq 'highestgradelevel')) {
+ return &Apache::loncommon::gradeleveldescription($value);
+ }
# Only for advance users below
unless ($ENV{'user.adv'}) { return '- '.&mt('not displayed').' -' };
# File
@@ -292,8 +298,9 @@ sub prettyprint {
($type eq 'comefrom_list') ||
($type eq 'sequsage_list')) {
return join('
',map {
- &Apache::lonnet::gettitle($_).' ['.
- &Apache::lonhtmlcommon::crumbs(&Apache::lonnet::clutter($_),'preview').']';
+ my $url=&Apache::lonnet::clutter($_);
+ '
'.&Apache::lonnet::gettitle($url).''.
+ &Apache::lonhtmlcommon::crumbs($url,'preview','');
} split(/\s*\,\s*/,$value));
}
# Evaluations
@@ -322,8 +329,72 @@ sub prettyprint {
}
# ============================================== Pretty input of metadata field
+sub selectbox {
+ my ($name,$value,$functionref,@idlist)=@_;
+ my $selout='';
+}
+
+
sub prettyinput {
- my ($type,$value,$fieldname)=@_;
+ my ($type,$value,$fieldname,$formname)=@_;
+# Language
+ if ($type eq 'language') {
+ return &selectbox($fieldname,
+ $value,
+ \&Apache::loncommon::languagedescription,
+ (&Apache::loncommon::languageids));
+ }
+# Copyright
+ if ($type eq 'copyright') {
+ return &selectbox($fieldname,
+ $value,
+ \&Apache::loncommon::copyrightdescription,
+ (&Apache::loncommon::copyrightids));
+ }
+# Gradelevels
+ if (($type eq 'lowestgradelevel') ||
+ ($type eq 'highestgradelevel')) {
+ return &Apache::loncommon::select_level_form($value,$fieldname);
+ }
+# Obsolete
+ if ($type eq 'obsolete') {
+ return '';
+ }
+# Obsolete replacement file
+ if ($type eq 'obsoletereplacement') {
+ return '".&mt('Select').'';
+ }
+# Customdistribution file
+ if ($type eq 'customdistributionfile') {
+ return '".&mt('Select').'';
+ }
+# Dates
+ if (($type eq 'creationdate') ||
+ ($type eq 'lastrevisiondate')) {
+ return &Apache::lonhtmlcommon::date_setter($formname,
+ $fieldname,$value);
+ }
+# No pretty input found
+ $value=~s/^\s+//gs;
+ $value=~s/\s+$//gs;
+ $value=~s/\s+/ /gs;
+ $value=~s/\"/\&quod\;/gs;
+ return '';
}
# ================================================================ Main Handler
@@ -363,9 +434,8 @@ sub handler {
# --------------------------------------------------------------- Render Output
# displayed url
my ($thisversion)=($uri=~/\.(\d+)\.(\w+)\.meta$/);
+ $uri=~s/\.meta$//;
my $disuri=&Apache::lonnet::clutter($uri);
- $disuri=~s/\.meta$//;
- $disuri=&Apache::lonhtmlcommon::crumbs($disuri);
# version
my $currentversion=&Apache::lonnet::getversion($disuri);
my $versiondisplay='';
@@ -376,6 +446,8 @@ sub handler {
} else {
$versiondisplay='Version: '.$currentversion;
}
+# crumbify displayed URL
+ $disuri=&Apache::lonhtmlcommon::crumbs($disuri);
# obsolete
my $obsolete=$content{'obsolete'};
my $obsoletewarning='';
@@ -393,7 +465,10 @@ sub handler {
'subject',
'keywords',
'notes',
- 'abstract',
+ 'abstract',
+ 'lowestgradelevel',
+ 'highestgradelevel',
+ 'standards',
'mime',
'language',
'creationdate',
@@ -456,22 +531,15 @@ ENDHEAD
&prettyprint($dynmeta{$_})."\n");
}
$r->print('');
- $disuri=~/^(\w+)\/(\w+)\//;
+ $uri=~/^\/res\/(\w+)\/(\w+)\//;
if ((($ENV{'user.domain'} eq $1) && ($ENV{'user.name'} eq $2))
|| ($ENV{'user.role.ca./'.$1.'/'.$2})) {
- $r->print(
- '
'.$dynmeta{'comments'}.''); - $r->print('