[LON-CAPA-cvs] cvs: loncom /interface lonmeta.pm

www lon-capa-cvs@mail.lon-capa.org
Mon, 29 Dec 2003 15:10:55 -0000


This is a MIME encoded message

--www1072710655
Content-Type: text/plain

www		Mon Dec 29 10:10:55 2003 EDT

  Modified files:              
    /loncom/interface	lonmeta.pm 
  Log:
  Cleaning up:
  * consolidation of metadata fieldnames and translation
  * correct headers for directory level metadata editor
  
  
--www1072710655
Content-Type: text/plain
Content-Disposition: attachment; filename="www-20031229101055.txt"

Index: loncom/interface/lonmeta.pm
diff -u loncom/interface/lonmeta.pm:1.44 loncom/interface/lonmeta.pm:1.45
--- loncom/interface/lonmeta.pm:1.44	Sun Dec 28 15:12:59 2003
+++ loncom/interface/lonmeta.pm	Mon Dec 29 10:10:54 2003
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # Metadata display handler
 #
-# $Id: lonmeta.pm,v 1.44 2003/12/28 20:12:59 www Exp $
+# $Id: lonmeta.pm,v 1.45 2003/12/29 15:10:54 www Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -201,6 +201,43 @@
     return %hash;
 }
 
+# ============================================================= The field names
+
+sub fieldnames {
+    return &Apache::lonlocal::texthash(
+				   'title' => 'Title',
+				   'author' =>'Author(s)',
+				   'subject' => 'Subject',
+				   'keywords' => 'Keyword(s)',
+				   'notes' => 'Notes',
+				   'abstract' => 'Abstract',
+                                   'lowestgradelevel' => 'Lowest Grade Level',
+                                   'highestgradelevel' => 'Highest Grade Level',
+                                   'standards' => 'Standards',
+				   'mime' => 'MIME Type',
+				   'language' => 'Language',
+				   'creationdate' => 'Creation Date',
+				   'lastrevisiondate' => 'Last Revision Date',
+				   'owner' => 'Publisher/Owner',
+                                   'copyright' => 'Copyright/Distribution',
+				   'customdistributionfile' => 'Custom Distribution File',
+                                   'obsolete' => 'Obsolete',
+				   'obsoletereplacement' => 'Suggested Replacement for Obsolete File',
+				   'count'      => 'Network-wide number of accesses (hits)',
+				   'course'     => 'Network-wide number of courses using resource',
+				   'usage'      => 'Number of resources using or importing resource',
+				   'goto'       => 'Number of resources that follow this resource in maps',
+				   'comefrom'   => 'Number of resources that lead up to this resource in maps',
+				   'clear'      => 'Material presented in clear way',
+				   'depth'      => 'Material covered with sufficient depth',
+				   'helpful'    => 'Material is helpful',
+				   'correct'    => 'Material appears to be correct',
+				   'technical'  => 'Resource is technically correct', 
+				   'avetries'   => 'Average number of tries till solved',
+				   'stdno'      => 'Total number of students who have worked on this problem',
+				   'difficulty' => 'Degree of difficulty'
+				       );
+}
 # ================================================================ Main Handler
 
 sub handler {
@@ -244,60 +281,64 @@
   }
 
 # --------------------------------------------------------------- Render Output
-  my ($thisversion)=($uri=~/\.(\d+)\.(\w+)\.meta$/);
-my $creationdate=&Apache::lonlocal::locallocaltime(
- &Apache::lonmysql::unsqltime($content{'creationdate'}));
-my $lastrevisiondate=&Apache::lonlocal::locallocaltime(
- &Apache::lonmysql::unsqltime($content{'lastrevisiondate'}));
-my $language=&Apache::loncommon::languagedescription($content{'language'});
-my $mime=&Apache::loncommon::filedescription($content{'mime'}); 
-my $disuri=&Apache::lonnet::declutter($uri);
-  $disuri=~s/\.meta$//;
-my $currentversion=&Apache::lonnet::getversion($disuri);
-my $author=$content{'author'};
-$author=~s/(\w+)(\:|\@)(\w+)/&authordisplay($1,$3)/gse;
-my $owner=$content{'owner'};
-$owner=~s/(\w+)(\:|\@)(\w+)/&authordisplay($1,$3)/gse;
-my $versiondisplay='';
-if ($thisversion) {
-    $versiondisplay=&mt('Version').': '.$thisversion.
-    ' ('.&mt('most recent version').': '.$currentversion.')';
-} else {
-    $versiondisplay='Version: '.$currentversion;
-}
-my $customdistributionfile='';
-if ($content{'customdistributionfile'}) {
-   $customdistributionfile='<a href="'.$content{'customdistributionfile'}.
-     '"><tt>'.$content{'customdistributionfile'}.'</tt></a>';
-}
-
-my $obsolete=$content{'obsolete'};
-my $obsoletereplace=$content{'obsoletereplacement'};
-my $obsoletewarning='';
-if (($obsolete) && ($ENV{'user.adv'})) {
-    $obsoletewarning='<p><font color="red">'.&mt('This resource has been marked obsolete by the author(s)').'</font></p>';
-}
+    my ($thisversion)=($uri=~/\.(\d+)\.(\w+)\.meta$/);
+    $content{'creationdate'}=&Apache::lonlocal::locallocaltime(
+	 &Apache::lonmysql::unsqltime($content{'creationdate'}));
+    $content{'lastrevisiondate'}=&Apache::lonlocal::locallocaltime(
+	 &Apache::lonmysql::unsqltime($content{'lastrevisiondate'}));
+    $content{'language'}=&Apache::loncommon::languagedescription($content{'language'});
+    $content{'mime'}=&Apache::loncommon::filedescription($content{'mime'}); 
+    my $disuri=&Apache::lonnet::declutter($uri);
+    $disuri=~s/\.meta$//;
+    my $currentversion=&Apache::lonnet::getversion($disuri);
+    my $author=$content{'author'};
+    $content{'author'}=~s/(\w+)(\:|\@)(\w+)/&authordisplay($1,$3)/gse;
+    $content{'owner'}=~s/(\w+)(\:|\@)(\w+)/&authordisplay($1,$3)/gse;
+    my $versiondisplay='';
+    if ($thisversion) {
+	$versiondisplay=&mt('Version').': '.$thisversion.
+	    ' ('.&mt('most recent version').': '.$currentversion.')';
+    } else {
+	$versiondisplay='Version: '.$currentversion;
+    }
+    if ($content{'customdistributionfile'}) {
+	$content{'customdistributionfile'}='<a href="'.$content{'customdistributionfile'}.
+	    '"><tt>'.$content{'customdistributionfile'}.'</tt></a>';
+    } else {
+	$content{'customdistributionfile'}='';
+    }
+    my $obsolete=$content{'obsolete'};
+    my $obsoletewarning='';
+    if (($obsolete) && ($ENV{'user.adv'})) {
+	$obsoletewarning='<p><font color="red">'.
+	    &mt('This resource has been marked obsolete by the author(s)').'</font></p>';
+    }
 
-my %lt=&Apache::lonlocal::texthash(
-				   'au' =>'Author(s)',
-				   'sb' => 'Subject',
-				   'kw' => 'Keyword(s)',
-				   'no' => 'Notes',
-				   'ab' => 'Abstract',
-                                   'lg' => 'Lowest Grade Level',
-                                   'hg' => 'Highest Grade Level',
-                                   'st' => 'Standards',
-				   'mi' => 'MIME Type',
-				   'la' => 'Language',
-				   'cd' => 'Creation Date',
-				   'pu' => 'Publisher/Owner',
-                                   'co' => 'Copyright/Distribution',
-				   'cf' => 'Custom Distribution File',
-                                   'ob' => 'Obsolete',
-                                   'or' => 
-                                    'Suggested Replacement for Obsolete File');
-my $bodytag=&Apache::loncommon::bodytag
+    my %lt=&fieldnames();
+    my $table='';
+    my $bodytag=&Apache::loncommon::bodytag
             ('Catalog Information','','','',$resdomain);
+    foreach ('title', 
+	     'author', 
+	     'subject', 
+	     'keywords', 
+	     'notes', 
+	     'abstract', 
+	     'mime', 
+	     'language', 
+	     'creationdate', 
+	     'lastrevisiondate', 
+	     'owner', 
+	     'copyright', 
+	     'customdistributionfile', 
+	     'obsolete', 
+	     'obsoletereplacement') {
+	$table.='<tr><td bgcolor="#AAAAAA">'.$lt{$_}.
+	        '</td><td bgcolor="#CCCCCC">'.
+                $content{$_}.'&nbsp;</td></tr>';
+	delete $content{$_};
+    }
+
   $r->print(<<ENDHEAD);
 <html><head><title>Catalog Information</title></head>
 $bodytag
@@ -306,57 +347,9 @@
 $obsoletewarning
 $versiondisplay<br />
 <table cellspacing=2 border=0>
-<tr><td bgcolor='#AAAAAA'>$lt{'au'}</td>
-<td bgcolor="#CCCCCC">$author&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>$lt{'sb'}</td>
-<td bgcolor="#CCCCCC">$content{'subject'}&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>$lt{'kw'}</td>
-<td bgcolor="#CCCCCC">$content{'keywords'}&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>$lt{'no'}</td>
-<td bgcolor="#CCCCCC">$content{'notes'}&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>$lt{'ab'}</td>
-<td bgcolor="#CCCCCC">$content{'abstract'}&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>$lt{'lg'}</td>
-<td bgcolor="#CCCCCC">$content{'lowestgradelevel'}&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>$lt{'hg'}</td>
-<td bgcolor="#CCCCCC">$content{'highestgradelevel'}&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>$lt{'st'}</td>
-<td bgcolor="#CCCCCC">$content{'standards'}&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>$lt{'mi'}</td>
-<td bgcolor="#CCCCCC">$mime ($content{'mime'})&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>$lt{'la'}</td>
-<td bgcolor="#CCCCCC">$language&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>$lt{'cd'}</td>
-<td bgcolor="#CCCCCC">$creationdate&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>
-Last Revision Date</td><td bgcolor="#CCCCCC">$lastrevisiondate&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>$lt{'pu'}</td>
-<td bgcolor="#CCCCCC">$owner&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>$lt{'co'}</td>
-<td bgcolor="#CCCCCC">$content{'copyright'}&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>$lt{'cf'}</td>
-<td bgcolor="#CCCCCC">$customdistributionfile&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>$lt{'ob'}</td>
-<td bgcolor="#CCCCCC">$obsolete&nbsp;</td></tr>
-<tr><td bgcolor='#AAAAAA'>$lt{'or'}</td>
-<td bgcolor="#CCCCCC">$obsoletereplace&nbsp;</td></tr>
+$table
 </table>
 ENDHEAD
-  delete($content{'title'});
-  delete($content{'author'});
-  delete($content{'subject'});
-  delete($content{'keywords'});
-  delete($content{'notes'});
-  delete($content{'abstract'});
-  delete($content{'mime'});
-  delete($content{'language'});
-  delete($content{'creationdate'});
-  delete($content{'lastrevisiondate'});
-  delete($content{'owner'});
-  delete($content{'copyright'});
-  delete($content{'customdistributionfile'});
-  delete($content{'obsolete'});
-  delete($content{'obsoletereplacement'});
   if ($ENV{'user.adv'}) {
 # ------------------------------------------------------------ Dynamic Metadata
    $r->print(
@@ -364,20 +357,7 @@
 	     &mt('updated periodically').')</h3>'.&mt('Processing').
 	     ' ...<br>');
    $r->rflush();
-    my %items=&Apache::lonlocal::texthash(
- 'count'      => 'Network-wide number of accesses (hits)',
- 'course'     => 'Network-wide number of courses using resource',
- 'usage'      => 'Number of resources using or importing resource',
- 'goto'       => 'Number of resources that follow this resource in maps',
- 'comefrom'   => 'Number of resources that lead up to this resource in maps',
- 'clear'      => 'Material presented in clear way',
- 'depth'      => 'Material covered with sufficient depth',
- 'helpful'    => 'Material is helpful',
- 'correct'    => 'Material appears to be correct',
- 'technical'  => 'Resource is technically correct', 
- 'avetries'   => 'Average number of tries till solved',
- 'stdno'      => 'Total number of students who have worked on this problem',
- 'difficulty' => 'Degree of difficulty');
+   my %items=&fieldnames();
    my %dynmeta=&dynamicmeta($uri);
    $r->print(
 '</table><h4>'.&mt('Access and Usage Statistics').'</h4><table cellspacing=2 border=0>');
@@ -476,7 +456,7 @@
 
 # ----------------------------------------------------------- Set document type
 
-  $r->content_type('text/html');
+  &Apache::loncommon::content_type($r,'text/html');
   $r->send_http_header;
 
   return OK if $r->header_only;
@@ -502,6 +482,7 @@
 <h1>$displayfile</h1>
 <form method="post">
 ENDEDIT
+   my %lt=&fieldnames();
    foreach ('author','title','subject','keywords','abstract','notes',
             'copyright','customdistributionfile','language',
             'obsolete','obsoletereplacement') {
@@ -509,18 +490,18 @@
 	   $Apache::lonpublisher::metadatafields{$_}=$ENV{'form.new_'.$_};
        }
        if (m/copyright/) {
-	   $r->print(&Apache::lonpublisher::selectbox($_,'new_'.$_,
+	   $r->print(&Apache::lonpublisher::selectbox($lt{$_},'new_'.$_,
 			       ($Apache::lonpublisher::metadatafields{$_}?
 				$Apache::lonpublisher::metadatafields{$_}:'default'),
 			       \&Apache::loncommon::copyrightdescription,
 			       (&Apache::loncommon::copyrightids)));
        } elsif (m/language/) {
-	   $r->print(&Apache::lonpublisher::selectbox($_,'new_'.$_,
+	   $r->print(&Apache::lonpublisher::selectbox($lt{$_},'new_'.$_,
 			      $Apache::lonpublisher::metadatafields{$_},
 			      \&Apache::loncommon::languagedescription,
 			      (&Apache::loncommon::languageids)));
        } else {
-	   $r->print(&Apache::lonpublisher::textfield($_,'new_'.$_,
+	   $r->print(&Apache::lonpublisher::textfield($lt{$_},'new_'.$_,
 			     $Apache::lonpublisher::metadatafields{$_}));
        }
    }

--www1072710655--