--- loncom/interface/statistics/lonstudentsubmissions.pm 2011/11/22 01:34:39 1.63.2.3
+++ loncom/interface/statistics/lonstudentsubmissions.pm 2012/03/20 17:52:23 1.67
@@ -1,6 +1,6 @@
# The LearningOnline Network with CAPA
#
-# $Id: lonstudentsubmissions.pm,v 1.63.2.3 2011/11/22 01:34:39 raeburn Exp $
+# $Id: lonstudentsubmissions.pm,v 1.67 2012/03/20 17:52:23 bisitz Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -30,6 +30,7 @@ use strict;
use Apache::lonnet;
use Apache::loncommon();
use Apache::lonhtmlcommon();
+use Apache::lonquickgrades();
use Apache::loncoursedata();
use Apache::lonstatistics;
use Apache::lonlocal;
@@ -62,6 +63,8 @@ sub BuildStudentSubmissionsPage {
#
&Apache::lonstatistics::PrepareClasslist();
#
+ $r->print( &Apache::lonhtmlcommon::breadcrumbs('Student Submission Reports'));
+ &Apache::lonquickgrades::startGradeScreen($r,'statistics');
$r->print(&CreateInterface());
#
my @Students = @Apache::lonstatistics::Students;
@@ -327,7 +330,7 @@ sub prepare_html_output {
my $student_column_count = scalar(@student_columns);
$headers{'problem'} = qq{
\ | };
foreach my $field (@student_columns) {
- $headers{'student'}.= ''.ucfirst($field).' | ';
+ $headers{'student'}.= ''.&mt(ucfirst($field)).' | ';
}
#
# we put the headers into the %headers hash
@@ -811,7 +814,17 @@ sub prepare_excel_output {
my ($workbook,$filename,$format) =
&Apache::loncommon::create_workbook($r);
return if (! defined($workbook));
- my $worksheet = $workbook->addworksheet('Student Submission Data');
+
+ # Worksheet name
+ # The length of a worksheet name in Excel 95 is limited to 31 characters.
+ # Let's make sure to not exceed the maximum length in the translation files.
+ # Otherwise, no Excel file would be created.
+ my $worksheetname = &mt('Student Submission Data');
+ if (length($worksheetname) > 31) {
+ # nice way to cut off too long name
+ $worksheetname = substr($worksheetname,0,28,).'...';
+ }
+ my $worksheet = $workbook->addworksheet($worksheetname);
#
# Add headers to the worksheet
my $rows_output = 0;
@@ -824,13 +837,13 @@ sub prepare_excel_output {
my $partid_row = $rows_output++;
my $respid_row = $rows_output++;
my $header_row = $rows_output++;
- $worksheet->write($title_row ,0,'Problem Title',$format->{'bold'});
- $worksheet->write($partid_row,0,'Part ID',$format->{'bold'});
- $worksheet->write($respid_row,0,'Response ID',$format->{'bold'});
+ $worksheet->write($title_row ,0,&mt('Problem Title'),$format->{'bold'});
+ $worksheet->write($partid_row,0,&mt('Part ID'),$format->{'bold'});
+ $worksheet->write($respid_row,0,&mt('Response ID'),$format->{'bold'});
# Student headers
my @StudentColumns = &get_student_columns($show_named);
foreach my $field (@StudentColumns) {
- $worksheet->write($header_row,$cols_output++,ucfirst($field),
+ $worksheet->write($header_row,$cols_output++,&mt(ucfirst($field)),
$format->{'bold'});
}
# Problem headers
@@ -872,10 +885,7 @@ sub prepare_excel_output {
}
#
# Populate the worksheet with the student data
- my %prog_state=&Apache::lonhtmlcommon::Create_PrgWin
- ($r,'Excel File Compilation Status',
- 'Excel File Compilation Progress',
- scalar(@$Students),'inline',undef,'Statistics','stats_status');
+ my %prog_state=&Apache::lonhtmlcommon::Create_PrgWin($r,scalar(@$Students));
my $max_row = $rows_output;
foreach my $student (@$Students) {
last if ($c->aborted());
@@ -952,8 +962,7 @@ sub prepare_excel_output {
}
}
}
- &Apache::lonhtmlcommon::Increment_PrgWin($r,\%prog_state,
- 'last student');
+ &Apache::lonhtmlcommon::Increment_PrgWin($r,\%prog_state,'last student');
}
&Apache::lonhtmlcommon::Close_PrgWin($r,\%prog_state);
#
@@ -1066,10 +1075,7 @@ sub prepare_csv_output {
&mt('Generating CSV report of student responses').'');
#
# Progress window
- my %prog_state=&Apache::lonhtmlcommon::Create_PrgWin
- ($r,'CSV File Compilation Status',
- 'CSV File Compilation Progress',
- scalar(@$students),'inline',undef,'Statistics','stats_status');
+ my %prog_state=&Apache::lonhtmlcommon::Create_PrgWin($r,scalar(@$students));
$r->rflush();
#
@@ -1219,8 +1225,7 @@ sub prepare_csv_output {
print $outputfile $/;
}
undef(@rows);
- &Apache::lonhtmlcommon::Increment_PrgWin($r,\%prog_state,
- 'last student');
+ &Apache::lonhtmlcommon::Increment_PrgWin($r,\%prog_state,'last student');
}
close($outputfile);
#
@@ -1265,7 +1270,6 @@ sub CreateInterface {
##
## Environment variable initialization
my $Str = '';
- $Str .= &Apache::lonhtmlcommon::breadcrumbs('Student Submission Reports');
$Str .= '
';
$Str .= &Apache::loncommon::start_data_table();
$Str .= &Apache::loncommon::start_data_table_header_row();
@@ -1345,17 +1349,11 @@ sub CreateInterface {
$Str .= &Apache::loncommon::end_data_table_row();
$Str .= &Apache::loncommon::end_data_table();
#
- $Str .= ''
- .&mt('Status: [_1]',
- '')
- .'
';
- ##
return $Str;
}
sub get_student_columns {
- my ($show_named) = @_;
+ my ($show_named) = @_;
my @student_columns;
if ($show_named) {
@student_columns = @Apache::lonstatistics::SelectedStudentData;
@@ -1366,7 +1364,7 @@ sub get_student_columns {
@student_columns = ('username');
}
return @student_columns;
-}
+}
1;