--- loncom/interface/statistics/lonstudentassessment.pm 2006/12/21 02:53:42 1.144
+++ loncom/interface/statistics/lonstudentassessment.pm 2009/05/17 22:55:42 1.154
@@ -1,6 +1,6 @@
# The LearningOnline Network with CAPA
#
-# $Id: lonstudentassessment.pm,v 1.144 2006/12/21 02:53:42 albertel Exp $
+# $Id: lonstudentassessment.pm,v 1.154 2009/05/17 22:55:42 bisitz Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -369,11 +369,11 @@ sub CreateInterface {
$Str .= ' 'x5;
$Str .= ' ';
- $Str .= ' 'x5;
+ $Str .= '
new_window = true;
-Show links in new window:
-
+$labeltext
+
NEW_WINDOW_CHECKBOX
}
@@ -684,7 +685,7 @@ NEW_WINDOW_CHECKBOX
" ".localtime(time)."");
#
if ($chosen_output->{'base'} !~ /^final table/) {
- $r->print("".$chosen_output->{'shortdesc'}." ");
+ $r->print("".&mt($chosen_output->{'shortdesc'})." ");
}
my $Str = "\n";
# First, the @StudentData fields need to be listed
@@ -712,8 +713,8 @@ NEW_WINDOW_CHECKBOX
$width{$symb}->{'width_sum'} += 1;
}
$total_count += &count_parts($navmap,$seq);
- # Use 3 digits for the sum
- $width{$symb}->{'width_sum'} += 3;
+ # Use 6 digits for the sum
+ $width{$symb}->{'width_sum'} += 6;
}
# Compute width of maximum
if ($chosen_output->{'sequence_max'}) {
@@ -721,8 +722,8 @@ NEW_WINDOW_CHECKBOX
# One digit for the '/'
$width{$symb}->{'width_sum'} +=1;
}
- # Use 3 digits for the total
- $width{$symb}->{'width_sum'}+=3;
+ # Use 6 digits for the total
+ $width{$symb}->{'width_sum'}+=6;
}
#
if ($chosen_output->{'every_problem'}) {
@@ -848,10 +849,13 @@ sub html_outputstudent {
} else {
my $error = $1;
if (scalar(@tmp) < 1) {
- $Str .= 'No Course Data '."\n";
+ $Str .= ''
+ .&mt('No Course Data')
+ .' '."\n";
} else {
- $Str .= 'Error getting student data ('.
- $error.') '."\n";
+ $Str .= ''
+ .&mt('Error getting student data ([_1])',$error)
+ .' '."\n";
}
$nodata_count++;
$r->print($Str);
@@ -881,16 +885,17 @@ sub html_outputstudent {
$ratio .= ' ';
}
if ($chosen_output->{'sequence_sum'} && $score ne ' ') {
- my $score .= sprintf("%3.0f",$score);
- $ratio .= (' 'x(3-length($score))).$score;
+ my $score .= sprintf("%3.2f",$score);
+ $ratio .= (' 'x(6-length($score))).$score;
} elsif($chosen_output->{'sequence_sum'}) {
- $ratio .= ' 'x3;
+ $ratio .= ' 'x6;
}
if ($chosen_output->{'sequence_max'}) {
if ($chosen_output->{'sequence_sum'}) {
$ratio .= '/';
}
- $ratio .= sprintf("%3.0f",$seq_max);
+ my $sequence_total=sprintf("%3.2f",$seq_max);
+ $ratio .= $sequence_total.(' 'x(6-length($sequence_total)));
}
#
if (! $chosen_output->{'every_problem'}) {
@@ -924,8 +929,8 @@ sub html_outputstudent {
if (! defined($score)) {
$score = ' ' x $total_sum_width;
} else {
- $score = sprintf("%.0f",$score);
- $score = (' 'x(3-length($score))).$score;
+ $score = sprintf("%.2f",$score);
+ $score = (' 'x(6-length($score))).$score;
}
$Str .= ' '.' 'x($total_sum_width-length($score)).$score.' / '.$max;
$Str .= " \n";
@@ -958,12 +963,12 @@ sub html_finish {
sub StudentAverageTotal {
my $Str = ''.&mt('Summary Tables').' '.$/;
- $Str .= ' '."\n";
- $Str .= ''.
+ $Str .= &Apache::loncommon::start_data_table();
+ $Str .= &Apache::loncommon::start_data_table_header_row().
''.&mt('Title').' '.
''.&mt('Average').' '.
''.&mt('Maximum').' '.
- ' '.$/;
+ &Apache::loncommon::end_data_table_header_row().$/;
foreach my $seq (@sequences) {
my $symb = $seq->symb;
my $ave;
@@ -977,11 +982,13 @@ sub StudentAverageTotal {
}
my $max = $Statistics->{$symb}->{'max'};
$ave = sprintf("%.2f",$ave);
- $Str .= ''.$seq->compTitle.' '.
+ $Str .= &Apache::loncommon::start_data_table_row().
+ ''.$seq->compTitle.' '.
''.$ave.' '.
- ''.$max.' '.' '."\n";
+ ''.$max.' '.' '.
+ &Apache::loncommon::end_data_table_row()."\n";
}
- $Str .= "
\n";
+ $Str .= &Apache::loncommon::end_data_table()."\n";
return $Str;
}
@@ -992,31 +999,36 @@ sub SingleStudentTotal {
$student->{'fullname'},
$student->{'username'},$student->{'domain'}).'';
$Str .= $/;
- $Str .= ''."\n";
+ $Str .= &Apache::loncommon::start_data_table()."\n";
$Str .=
- ''.
+ &Apache::loncommon::start_data_table_header_row().
''.&mt('Sequence or Folder').' ';
if ($chosen_output->{'base'} eq 'tries') {
$Str .= ''.&mt('Parts Correct').' ';
} else {
$Str .= ''.&mt('Score').' ';
}
- $Str .= ''.&mt('Maximum').' '." \n";
+ $Str .= ''.&mt('Maximum').' '.
+ &Apache::loncommon::end_data_table_header_row()."\n";
my $total = 0;
my $total_max = 0;
foreach my $seq (@sequences) {
my $value = $Statistics->{$seq->symb}->{'score'};
my $max = $Statistics->{$seq->symb}->{'max'};
- $Str .= ''.&HTML::Entities::encode($seq->compTitle).' '.
+ $Str .= &Apache::loncommon::start_data_table_row().
+ ''.&HTML::Entities::encode($seq->compTitle).' '.
''.$value.' '.
- ''.$max.' '."\n";
+ ''.$max.' '.
+ &Apache::loncommon::end_data_table_row()."\n";
$total += $value;
$total_max +=$max;
}
- $Str .= ''.&mt('Total').' '.
+ $Str .= &Apache::loncommon::start_data_table_row().
+ ''.&mt('Total').' '.
''.$total.' '.
- ''.$total_max." \n";
- $Str .= "
\n";
+ ''.$total_max.' '.
+ &Apache::loncommon::end_data_table_row()."\n";
+ $Str .= &Apache::loncommon::end_data_table()."\n";
return $Str;
}
@@ -1427,14 +1439,10 @@ sub excel_initialize {
if ($env{'form.SelectedStudent'}) {
$studentcount = '1';
}
- if ($studentcount > 1) {
- $r->print(''.&mt('Compiling Excel spreadsheet for [_1] students',
- $studentcount)." \n");
- } else {
- $r->print(''.
- &mt('Compiling Excel spreadsheet for 1 student').
- " \n");
- }
+ $r->print(''
+ .&mt('Compiling Excel spreadsheet for [quant,_1,student]...',$studentcount)
+ ."
\n"
+ );
$r->rflush();
#
# Initialize progress window
@@ -1582,7 +1590,7 @@ sub excel_finish {
#
# Tell the user where to get their excel file
$r->print(' '.
- 'Your Excel spreadsheet. '."\n");
+ ''.&mt('Your Excel spreadsheet').' '."\n");
$r->rflush();
&excel_cleanup();
return;
@@ -1825,7 +1833,7 @@ sub csv_finish {
#
# Tell the user where to get their csv file
$r->print(' '.
- ''.&mt('Your csv file.').' '."\n");
+ ''.&mt('Your CSV file.').' '."\n");
$r->rflush();
&csv_cleanup();
return;
@@ -1956,11 +1964,8 @@ sub student_tries_on_sequence {
#
if ( ($links eq 'yes' && $symbol ne ' ') ||
($links eq 'all')) {
- if (length($symbol) > 1) {
- &Apache::lonnet::logthis('length of symbol "'.$symbol.'" > 1');
- }
my $link = '/adm/grades'.
- '?symb='.&escape($resource->symb).
+ '?symb='.&escape($resource->shown_symb).
'&student='.$student->{'username'}.
'&userdom='.$student->{'domain'}.
'&command=submission';
@@ -2115,7 +2120,7 @@ sub student_performance_on_sequence {
#
if ( ($links eq 'yes' && $symbol ne ' ') || ($links eq 'all')) {
my $link = '/adm/grades' .
- '?symb='.&escape($symb).
+ '?symb='.&escape($resource->shown_symb).
'&student='.$student->{'username'}.
'&userdom='.$student->{'domain'}.
'&command=submission';