--- loncom/interface/lonmeta.pm 2003/10/24 14:58:36 1.39
+++ loncom/interface/lonmeta.pm 2003/12/28 20:12:59 1.44
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Metadata display handler
#
-# $Id: lonmeta.pm,v 1.39 2003/10/24 14:58:36 albertel Exp $
+# $Id: lonmeta.pm,v 1.44 2003/12/28 20:12:59 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -24,12 +24,7 @@
# /home/httpd/html/adm/gpl.txt
#
# http://www.lon-capa.org/
-#
-# (TeX Content Handler
-#
-# 05/29/00,05/30,10/11 Gerd Kortemeyer)
-#
-# 10/19,10/21,10/23,11/27,08/09/01,12/22,12/24,12/25 Gerd Kortemeyer
+
package Apache::lonmeta;
@@ -40,6 +35,11 @@ use Apache::loncommon();
use Apache::lonmsg;
use Apache::lonpublisher;
use Apache::lonlocal;
+use Apache::lonmysql;
+
+# MySQL table columns
+
+my @columns;
# ----------------------------------------- Fetch and evaluate dynamic metadata
@@ -55,7 +55,7 @@ sub dynamicmeta {
my %sum=();
my %cnt=();
my %concat=();
- my %listitems=('count' => 'add',
+ my %listitems=(
'course' => 'add',
'goto' => 'add',
'comefrom' => 'add',
@@ -104,9 +104,24 @@ sub dynamicmeta {
$returnhash{$_.'_list'}=$concat{$_};
### Apache->request->print("\n
".$_.': '.$returnhash{$_}.'
'.$returnhash{$_.'_list'});
}
+ #
+ # Deal with 'count' seperately
+ $returnhash{'count'} = &access_count($url,$aauthor,$adomain);
+
return %returnhash;
}
+sub access_count {
+ my ($src,$author,$adomain) = @_;
+ my %countdata=&Apache::lonnet::dump('nohist_accesscount',$adomain,
+ $author,$src);
+ if (! exists($countdata{$src})) {
+ return 'Not Available';
+ } else {
+ return $countdata{$src};
+ }
+}
+
# ------------------------------------- Try to make an alt tag if there is none
sub alttag {
@@ -175,6 +190,17 @@ sub diffgraph {
return $output;
}
+# ==================================================== Turn MySQL row into hash
+
+sub metadata_col_to_hash {
+ my @cols=@_;
+ my %hash=();
+ for (my $i=0; $i<=$#columns; $i++) {
+ $hash{$columns[$i]}=$cols[$i];
+ }
+ return %hash;
+}
+
# ================================================================ Main Handler
sub handler {
@@ -220,9 +246,9 @@ sub handler {
# --------------------------------------------------------------- Render Output
my ($thisversion)=($uri=~/\.(\d+)\.(\w+)\.meta$/);
my $creationdate=&Apache::lonlocal::locallocaltime(
- &Apache::loncommon::unsqltime($content{'creationdate'}));
+ &Apache::lonmysql::unsqltime($content{'creationdate'}));
my $lastrevisiondate=&Apache::lonlocal::locallocaltime(
- &Apache::loncommon::unsqltime($content{'lastrevisiondate'}));
+ &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);
@@ -258,6 +284,9 @@ my %lt=&Apache::lonlocal::texthash(
'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',
@@ -287,6 +316,12 @@ $versiondisplay
$content{'notes'} |
$lt{'ab'} |
$content{'abstract'} |
+$lt{'lg'} |
+$content{'lowestgradelevel'} |
+$lt{'hg'} |
+$content{'highestgradelevel'} |
+$lt{'st'} |
+$content{'standards'} |
$lt{'mi'} |
$mime ($content{'mime'}) |
$lt{'la'} |
@@ -475,7 +510,8 @@ ENDEDIT
}
if (m/copyright/) {
$r->print(&Apache::lonpublisher::selectbox($_,'new_'.$_,
- $Apache::lonpublisher::metadatafields{$_},
+ ($Apache::lonpublisher::metadatafields{$_}?
+ $Apache::lonpublisher::metadatafields{$_}:'default'),
\&Apache::loncommon::copyrightdescription,
(&Apache::loncommon::copyrightids)));
} elsif (m/language/) {
@@ -524,6 +560,11 @@ ENDEDIT
}
}
+# ================================================================= BEGIN Block
+BEGIN {
+# Get columns of MySQL metadata table
+ @columns=&Apache::lonmysql::col_order('metadata');
+}
1;
__END__