--- loncom/interface/lonmeta.pm 2007/05/12 23:04:07 1.207
+++ loncom/interface/lonmeta.pm 2008/12/13 22:17:15 1.212.2.2
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Metadata display handler
#
-# $Id: lonmeta.pm,v 1.207 2007/05/12 23:04:07 albertel Exp $
+# $Id: lonmeta.pm,v 1.212.2.2 2008/12/13 22:17:15 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -182,7 +182,7 @@ sub evalgraph {
my $val=int($value*10.+0.5)-10;
my $output='
';
if ($val>=20) {
- $output.='  ';
+ $output.=''.(' ' x2).' ';
} else {
$output.=' '.
' ';
@@ -192,7 +192,7 @@ sub evalgraph {
$output.=' '.
' ';
} else {
- $output.='  ';
+ $output.=''.(' ' x2).' ';
}
$output.=' ('.sprintf("%5.2f",$value).')
';
return $output;
@@ -573,12 +573,13 @@ sub selectbox {
$functionref=\&direct;
}
my $selout='';
- foreach (@idlist) {
- $selout.=''.&{$functionref}($_).' ';
- }
- else {$selout.='>'.&{$functionref}($_).'';}
+ } else {
+ $selout.='>'.&{$functionref}($id).'';
+ }
}
return $selout.' ';
}
@@ -839,18 +840,22 @@ sub report_bombs {
&Apache::lonmsg::clear_author_res_msg($uri);
}
my $clear=&mt('Clear all Messages in Subdirectory');
- $r->print(<print(<
-
+$cancel
+
ENDCLEAR
my %brokenurls =
&Apache::lonmsg::all_url_author_res_msg($author,$domain);
- foreach (sort(keys(%brokenurls))) {
- if ($_=~/^\Q$uri\E/) {
+ foreach my $key (sort(keys(%brokenurls))) {
+ if ($key=~/^\Q$uri\E/) {
$r->print
- (''.$_.' '.
- &Apache::lonmsg::retrieve_author_res_msg($_).
+ (''.$key.' '.
+ &Apache::lonmsg::retrieve_author_res_msg($key).
' ');
}
}
@@ -873,8 +878,8 @@ sub present_uneditable_metadata {
my $uploaded = ($uri =~ m|/uploaded/|);
my %content=();
# Read file
- foreach (split(/\,/,&Apache::lonnet::metadata($uri,'keys'))) {
- $content{$_}=&Apache::lonnet::metadata($uri,$_);
+ foreach my $key (split(/\,/,&Apache::lonnet::metadata($uri,'keys'))) {
+ $content{$key}=&Apache::lonnet::metadata($uri,$key);
}
# Render Output
# displayed url
@@ -902,9 +907,9 @@ sub present_uneditable_metadata {
my $obsolete=$content{'obsolete'};
my $obsoletewarning='';
if (($obsolete) && ($env{'user.adv'})) {
- $obsoletewarning=''.
+ $obsoletewarning=''.
&mt('This resource has been marked obsolete by the author(s)').
- '
';
+ '';
}
#
my %lt=&fieldnames();
@@ -941,23 +946,22 @@ sub present_uneditable_metadata {
'obsoletereplacement');
}
foreach my $field (@fields) {
- $table.=''.$lt{$field}.
- ' '.
- &prettyprint($field,$content{$field}).' ';
+ $table.=&Apache::lonhtmlcommon::row_title($lt{$field})
+ .&prettyprint($field,$content{$field}).
+ .&Apache::lonhtmlcommon::row_closure();
delete($content{$field});
}
#
- $r->print(<$title
-
-$disuri
-$obsoletewarning
-$versiondisplay
-
-
-ENDHEAD
+ $r->print("$title "
+ .''
+ .$disuri.' '
+ .$obsoletewarning
+ .$versiondisplay
+ .'
'
+ .&Apache::lonhtmlcommon::start_pick_box()
+ .$table
+ .&Apache::lonhtmlcommon::end_pick_box()
+ );
if (!$uploaded && $env{'user.adv'}) {
&print_dynamic_metadata($r,$uri,\%content);
}
@@ -984,17 +988,18 @@ sub print_dynamic_metadata {
exists($dynmeta{'goto'}) ||
exists($dynmeta{'course'})) {
$r->print(''.&mt('Access and Usage Statistics').' '.
- '');
- foreach ('count',
- 'sequsage','sequsage_list',
- 'comefrom','comefrom_list',
- 'goto','goto_list',
- 'course','course_list') {
- $r->print(''.$lt{$_}.' '.
- ''.
- &prettyprint($_,$dynmeta{$_})." \n");
+ &Apache::lonhtmlcommon::start_pick_box());
+ foreach my $item ('count',
+ 'sequsage','sequsage_list',
+ 'comefrom','comefrom_list',
+ 'goto','goto_list',
+ 'course','course_list') {
+ $r->print(&Apache::lonhtmlcommon::row_title($lt{$item})
+ .&prettyprint($item,$dynmeta{$item})
+ .&Apache::lonhtmlcommon::row_closure()
+ );
}
- $r->print('
');
+ $r->print(&Apache::lonhtmlcommon::end_pick_box());
} else {
$r->print(''.&mt('No Access or Usages Statistics are available for this resource.').' ');
}
@@ -1009,18 +1014,18 @@ sub print_dynamic_metadata {
$r->print(''.
&mt('Overall Assessment Statistical Data').
' '.
- '');
- $r->print(''.$lt{'stdno'}.' '.
- ''.
- &prettyprint('stdno',$dynmeta{'stdno'}).
- ' '." \n");
- foreach ('avetries','difficulty','disc') {
- $r->print(''.$lt{$_}.' '.
- ''.
- &prettyprint($_,sprintf('%5.2f',$dynmeta{$_})).
- ' '." \n");
+ &Apache::lonhtmlcommon::start_pick_box());
+ $r->print(&Apache::lonhtmlcommon::row_title($lt{'stdno'})
+ .&prettyprint('stdno',$dynmeta{'stdno'})
+ .&Apache::lonhtmlcommon::row_closure()
+ );
+ foreach my $item ('avetries','difficulty','disc') {
+ $r->print(&Apache::lonhtmlcommon::row_title($lt{$item})
+ .&prettyprint($item,sprintf('%5.2f',$dynmeta{$item})).
+ .&Apache::lonhtmlcommon::row_closure()
+ );
}
- $r->print('
');
+ $r->print(&Apache::lonhtmlcommon::end_pick_box());
}
if (exists($dynmeta{'stats'})) {
#
@@ -1028,16 +1033,16 @@ sub print_dynamic_metadata {
$r->print(''.
&mt('Recent Detailed Assessment Statistical Data').
' ');
- my $table = ''.
- ''.
- ''.&mt('Course').' '.
- ''.&mt('Section(s)').' '.
- ''.&mt('Num Student').'s '.
- ''.&mt('Mean Tries').' '.
- ''.&mt('Degree of Difficulty').' '.
- ''.&mt('Degree of Discrimination').' '.
- ''.&mt('Time of computation').' '.
- ' '.$/;
+ my $table=&Apache::loncommon::start_data_table()
+ .&Apache::loncommon::start_data_table_header_row()
+ .''.&mt('Course').' '.
+ .''.&mt('Section(s)').' '.
+ .''.&mt('Num Student').'s '.
+ .''.&mt('Mean Tries').' '.
+ .''.&mt('Degree of Difficulty').' '.
+ .''.&mt('Degree of Discrimination').' '.
+ .''.&mt('Time of computation').' '.
+ .&Apache::loncommon::end_data_table_header_row().$/;
foreach my $identifier (sort(keys(%{$dynmeta{'stats'}}))) {
my $data = $dynmeta{'stats'}->{$identifier};
my $course = $data->{'course'};
@@ -1048,33 +1053,32 @@ sub print_dynamic_metadata {
&Apache::lonnet::logthis('lookup for '.$course.' failed');
next;
}
- $table .= '';
+ $table .= &Apache::loncommon::start_data_table_row();
$table .=
- ''.$courseinfo{'description'}.' ';
+ ''.$courseinfo{'description'}.' ';
$table .=
''.$data->{'sections'}.' ';
$table .=
''.$data->{'stdno'}.' ';
- foreach ('avetries','difficulty','disc') {
+ foreach my $item ('avetries','difficulty','disc') {
$table .= '';
- if (exists($data->{$_})) {
- $table .= sprintf('%.2f',$data->{$_}).' ';
+ if (exists($data->{$item})) {
+ $table .= sprintf('%.2f',$data->{$item}).' ';
} else {
$table .= '';
}
$table .= ' ';
}
$table .=
- ''.
+ ''.
&Apache::lonlocal::locallocaltime($data->{'timestamp'}).
- ' ';
- $table .=
- ' '.$/;
+ '';
+ $table .= &Apache::loncommon::end_data_table_row().$/;
}
- $table .= '
'.$/;
+ $table .= &Apache::loncommon::end_data_table().$/;
$r->print($table);
} else {
- $r->print('No new dynamic data found.');
+ $r->print(&mt('No new dynamic data found.'));
}
} else {
$r->print(''.
@@ -1090,13 +1094,14 @@ sub print_dynamic_metadata {
exists($dynmeta{'correct'}) ||
exists($dynmeta{'technical'})){
$r->print(''.&mt('Evaluation Data').' '.
- ' ');
- foreach ('clear','depth','helpful','correct','technical') {
- $r->print(''.$lt{$_}.' '.
- ''.
- &prettyprint($_,$dynmeta{$_})." \n");
+ &Apache::lonhtmlcommon::start_pick_box());
+ foreach my $item ('clear','depth','helpful','correct','technical') {
+ $r->print(&Apache::lonhtmlcommon::row_title($lt{$item})
+ .&prettyprint($item,$dynmeta{$item})
+ .&Apache::lonhtmlcommon::row_closure()
+ );
}
- $r->print('
');
+ $r->print(&Apache::lonhtmlcommon::end_pick_box());
} else {
$r->print(''.&mt('No Evaluation Data is available for this resource.').' ');
}
@@ -1124,9 +1129,9 @@ sub print_dynamic_metadata {
# All other stuff
$r->print(''.
&mt('Additional Metadata (non-standard, parameters, exports)').
- ' ');
- foreach (sort(keys(%content))) {
- my $name=$_;
+ '');
+ $r->print(&Apache::lonhtmlcommon::start_pick_box());
+ foreach my $name (sort(keys(%content))) {
if ($name!~/\.display$/) {
my $display=&Apache::lonnet::metadata($uri,
$name.'.display');
@@ -1134,22 +1139,23 @@ sub print_dynamic_metadata {
$display=$name;
};
my $otherinfo='';
- foreach ('name','part','type','default') {
+ foreach my $item ('name','part','type','default') {
if (defined(&Apache::lonnet::metadata($uri,
- $name.'.'.$_))) {
- $otherinfo.=' '.$_.'='.
+ $name.'.'.$item))) {
+ $otherinfo.=' '.$item.'='.
&Apache::lonnet::metadata($uri,
- $name.'.'.$_).'; ';
+ $name.'.'.$item).'; ';
}
}
- $r->print(''.$display.' '.$content{$name});
+ $r->print(&Apache::lonhtmlcommon::row_title($display)
+ .$content{$name});
if ($otherinfo) {
$r->print(' ('.$otherinfo.')');
}
- $r->print(" \n");
+ $r->print(&Apache::lonhtmlcommon::row_closure());
}
}
- $r->print("
");
+ $r->print(&Apache::lonhtmlcommon::end_pick_box());
return;
}
@@ -1212,22 +1218,20 @@ ENDBOMBS
ENDDEL
} else {
- $r->print(' '.$goback.'
');
+ $r->print(''.$goback.'
');
if ($env{'form.clearmsg'}) {
my ($diruri) = ($disuri =~ m{(.*/)[^/]*});
- $r->print(' '.
+ $r->print('
'.
&mt('Back To Directory').'
');
}
}
$r->print(' '.$bombs);
} else {
- my $displayfile='Catalog Information for '.$disuri;
+ my $displayfile=&mt('Catalog Information for [_1]',$disuri);
if ($disuri=~/\/default$/) {
my $dir=$disuri;
$dir=~s/default$//;
- $displayfile=
- &mt('Default Cataloging Information for Directory').' '.
- $dir;
+ $displayfile=&mt('Default Cataloging Information for Directory [_1]',$dir);
}
%Apache::lonpublisher::metadatafields=();
%Apache::lonpublisher::metadatakeys=();
@@ -1312,6 +1316,11 @@ ENDEDIT
$Apache::lonpublisher::metadatafields{'owner'} =
$env{'user.name'}.':'.$env{'user.domain'};
}
+ if (! $Apache::lonpublisher::metadatafields{'author'}) {
+ $Apache::lonpublisher::metadatafields{'author'} =
+ &Apache::loncommon::plainname($env{'user.name'},
+ $env{'user.domain'});
+ }
if ($Apache::lonpublisher::metadatafields{'courserestricted'} ne 'none') {
if ($file_type eq 'portfolio') {
@@ -1327,7 +1336,7 @@ ENDEDIT
".description"}.'').' ');
}
} else {
- $r->print('This resource is not associated with a course. ');
+ $r->print(''.&mt('This resource is not associated with a course.').' ');
}
}
if (@added_order) {