'.
&mt('Unable to retrieve course information.').
- '');
+ '
');
}
# If we're showing links, show a checkbox to open in new
# windows.
if ($show_links ne 'no') {
+ my $labeltext = &mt('Show links in new window:');
$r->print(<new_window = true;
-Show links in new window:
-
+$labeltext
+
NEW_WINDOW_CHECKBOX
}
#
$r->print("".$env{'course.'.$env{'request.course.id'}.'.description'}.
- " ".localtime(time)." ");
+ " ".&Apache::lonlocal::locallocaltime(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
@@ -843,12 +846,20 @@ sub html_outputstudent {
my @tmp = &Apache::loncoursedata::get_current_state
($student->{'username'},$student->{'domain'},undef,
$env{'request.course.id'});
- if ((scalar @tmp > 0) && ($tmp[0] !~ /^error:/)) {
+ if ((scalar @tmp > 0) && ($tmp[0] !~ /^error:(.*)/)) {
%StudentsData = @tmp;
- }
- if (scalar(@tmp) < 1) {
+ } else {
+ my $error = $1;
+ if (scalar(@tmp) < 1) {
+ $Str .= ''
+ .&mt('No Course Data')
+ .' '."\n";
+ } else {
+ $Str .= ''
+ .&mt('Error getting student data ([_1])',$error)
+ .' '."\n";
+ }
$nodata_count++;
- $Str .= 'No Course Data '."\n";
$r->print($Str);
$r->rflush();
return;
@@ -953,12 +964,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;
@@ -972,46 +983,53 @@ 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;
}
sub SingleStudentTotal {
return if (! defined($navmap));
my $student = &Apache::lonstatistics::current_student();
- my $Str = ''.&mt('Summary table for [_1] ([_2]@[_3])',
+ my $Str = ''.&mt('Summary table for [_1] ([_2])',
$student->{'fullname'},
- $student->{'username'},$student->{'domain'}).' ';
+ $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;
}
@@ -1161,11 +1179,11 @@ sub excel_initialize {
#
# Put the date in there too
$excel_sheet->write($header_row,$cols_output++,
- 'Compiled on '.localtime(time),$format->{'h3'});
+ &mt('Compiled on [_1]',&Apache::lonlocal::locallocaltime(time)),$format->{'h3'});
#
$cols_output = 0;
$excel_sheet->write($description_row,$cols_output++,
- $chosen_output->{'shortdesc'},
+ &mt($chosen_output->{'shortdesc'}),
$format->{'b'});
#
$cols_output = 0;
@@ -1243,17 +1261,17 @@ sub excel_initialize {
$formula_data{$symb}->{'Excel:scorecol'}=$cols_output;
if ($chosen_output->{'base'} eq 'parts correct total') {
$excel_sheet->write($resource_name_row,$cols_output++,
- 'parts correct',
+ &mt('parts correct'),
$format->{'bold'});
} elsif ($chosen_output->{'sequence_sum'}) {
if ($chosen_output->{'correct'}) {
# Only reporting the number correct, so do not call it score
$excel_sheet->write($resource_name_row,$cols_output++,
- 'sum',
+ &mt('sum'),
$format->{'bold'});
} else {
$excel_sheet->write($resource_name_row,$cols_output++,
- 'score',
+ &mt('score'),
$format->{'bold'});
}
}
@@ -1263,7 +1281,7 @@ sub excel_initialize {
($first_data_row,$cols_output-1);
if ($chosen_output->{'sequence_max'}) {
$excel_sheet->write($resource_name_row,$cols_output,
- 'maximum',
+ &mt('maximum'),
$format->{'bold'});
$formula_data{$symb}->{'Excel:maxcell'} =
&Spreadsheet::WriteExcel::Utility::xl_rowcol_to_cell
@@ -1277,11 +1295,11 @@ sub excel_initialize {
}
}
if ($chosen_output->{'grand_total'}) {
- $excel_sheet->write($resource_name_row,$cols_output++,'Total',
+ $excel_sheet->write($resource_name_row,$cols_output++,&mt('Total'),
$format->{'bold'});
}
if ($chosen_output->{'grand_maximum'}) {
- $excel_sheet->write($resource_name_row,$cols_output++,'Max. Total',
+ $excel_sheet->write($resource_name_row,$cols_output++,&mt('Max. Total'),
$format->{'bold'});
}
$total_formula = $excel_sheet->store_formula($total_formula_string);
@@ -1372,17 +1390,17 @@ sub excel_initialize {
if ($chosen_output->{'summary_table'}) {
$cols_output = 0;
$excel_sheet->write($summary_header_row,$cols_output++,
- 'Summary Table',$format->{'bold'});
+ &mt('Summary Table'),$format->{'bold'});
if ($chosen_output->{'maximum_row'}) {
$excel_sheet->write($summary_header_row,$cols_output++,
- 'Maximum',$format->{'bold'});
+ &mt('Maximum'),$format->{'bold'});
}
$excel_sheet->write($summary_header_row,$cols_output++,
- 'Average',$format->{'bold'});
+ &mt('Average'),$format->{'bold'});
$excel_sheet->write($summary_header_row,$cols_output++,
- 'Median',$format->{'bold'});
+ &mt('Median'),$format->{'bold'});
$excel_sheet->write($summary_header_row,$cols_output++,
- 'Std Dev',$format->{'bold'});
+ &mt('Std Dev'),$format->{'bold'});
my $row = $summary_header_row+1;
foreach my $seq (@sequences) {
my $symb = $seq->symb;
@@ -1422,14 +1440,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
@@ -1577,7 +1591,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;
@@ -1700,23 +1714,23 @@ END
$sequence_row.='"",'x$count;
if ($chosen_output->{'sequence_sum'}) {
if($chosen_output->{'correct'}) {
- $resource_row .= '"sum",';
+ $resource_row .= '"'.&mt('sum').'",';
} else {
- $resource_row .= '"score",';
+ $resource_row .= '"'.&mt('score').'",';
}
}
if ($chosen_output->{'sequence_max'}) {
$sequence_row.= '"",';
- $resource_row .= '"maximum possible",';
+ $resource_row .= '"'.&mt('maximum possible').'",';
}
}
if ($chosen_output->{'grand_total'}) {
$sequence_row.= '"",';
- $resource_row.= '"Total",';
+ $resource_row.= '"'.&mt('Total').'",';
}
if ($chosen_output->{'grand_maximum'}) {
$sequence_row.= '"",';
- $resource_row.= '"Maximum",';
+ $resource_row.= '"'.&mt('Maximum').'",';
}
chomp($sequence_row);
chomp($resource_row);
@@ -1820,7 +1834,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;
@@ -1951,11 +1965,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';
@@ -2110,7 +2121,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';