--- loncom/interface/statistics/lonstudentassessment.pm 2010/02/12 15:11:08 1.150.2.4
+++ loncom/interface/statistics/lonstudentassessment.pm 2010/12/04 14:41:13 1.163
@@ -1,6 +1,6 @@
# The LearningOnline Network with CAPA
#
-# $Id: lonstudentassessment.pm,v 1.150.2.4 2010/02/12 15:11:08 raeburn Exp $
+# $Id: lonstudentassessment.pm,v 1.163 2010/12/04 14:41:13 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -51,6 +51,7 @@ package Apache::lonstudentassessment;
use strict;
use Apache::lonstatistics();
+use Apache::lonquickgrades();
use Apache::lonhtmlcommon();
use Apache::loncommon();
use Apache::loncoursedata;
@@ -166,6 +167,9 @@ sub BuildStudentAssessmentPage {
&Apache::lonstatistics::DisplayClasslist($r);
return;
}
+ $r->print(&Apache::lonhtmlcommon::breadcrumbs('Chart','Chart_Description:Chart_Sections:Chart_Student_Data:Chart_Enrollment_Status:Chart_Sequences:Chart_Output_Formats:Chart_Output_Data'));
+ &Apache::lonquickgrades::startGradeScreen($r,'chart');
+
#
# Print out the HTML headers for the interface
# This also parses the output mode selector
@@ -230,6 +234,7 @@ sub BuildStudentAssessmentPage {
$output_student->($r,$student);
}
# Call the "finish" routine selected above
+ &Apache::lonquickgrades::endGradeScreen($r);
$finish->($r);
#
return;
@@ -255,7 +260,7 @@ sub next_and_previous_buttons {
'document.Statistics.submit();" />';
} else {
$previousbutton .= ' ';
+ &mt('Previous Student').'" disabled="disabled" />';
}
#
# Build the next student link
@@ -267,11 +272,11 @@ sub next_and_previous_buttons {
&mt('Next Student ([_1])',
$next->{'username'}.':'.$next->{'domain'}).
'" onclick="document.Statistics.SelectedStudent.value='.
- "'$sname'".';'.
+ "'".$sname."'".';'.
'document.Statistics.submit();" />';
} else {
$nextbutton .= ' ';
+ &mt('Next Student').'" disabled="disabled" />';
}
#
# Build the 'all students' button
@@ -318,8 +323,6 @@ the chart page.
#######################################################
sub CreateInterface {
my $Str = '';
- $Str .= &Apache::lonhtmlcommon::breadcrumbs('Chart','Chart_Description:Chart_Sections:Chart_Student_Data:Chart_Enrollment_Status:Chart_Sequences:Chart_Output_Formats:Chart_Output_Data');
-# $Str .= &CreateLegend();
$Str .= '
'."\n";
$Str .= '';
$Str .= ''.&mt('Sections').' '.
@@ -361,20 +364,19 @@ sub CreateInterface {
$Str .= &CreateAndParseOutputDataSelector();
$Str .= ' '."\n";
$Str .= '
'."\n";
- $Str .= ''.
- &mt('Status:').' '.
- ' '.
- '
';
+ $Str .= ''
+ .&mt('Status:').' '
+ .' '
+ .'
';
$Str .= ' ';
$Str .= ' 'x5;
$Str .= ' ';
- $Str .= ''.
- ' '.
- '
';
-
+ $Str .= ''
+ .' '
+ .'
';
return $Str;
}
@@ -556,7 +558,6 @@ my @OutputDataOptions =
sub HTMLifyOutputDataDescriptions {
my $Str = '';
$Str .= ''.&mt('Output Data').' '."\n";
-
$Str .= "\n";
foreach my $option (@OutputDataOptions) {
$Str .= ' '.$option->{'name'}.' ';
@@ -665,19 +666,20 @@ sub html_initialize {
&Apache::lonstatistics::selected_sequences_with_assessments();
if (! ref($navmap)) {
# Unable to get data, so bail out
- $r->print(''.
- &mt('Unable to retrieve course information.').
- '
');
+ $r->print(''
+ .&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:');
+ my $labeltext = &mt('Show links in new window');
$r->print(<new_window = true;
-$labeltext
+
+$labeltext
NEW_WINDOW_CHECKBOX
}
@@ -715,8 +717,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'}) {
@@ -724,8 +726,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'}) {
@@ -827,7 +829,12 @@ sub html_outputstudent {
return if (! defined($navmap));
#
if($count++ % 5 == 0 && $count > 0) {
- $r->print("");
+# $r->print(" ");
+ $r->print(' ');
+ &Apache::lonhtmlcommon::Increment_PrgWin(
+ $r,\%prog_state,'last five students',5);
+ $r->rflush();
+ $r->print('');
}
# First, the @StudentData fields need to be listed
my @to_show = &get_student_fields_to_show();
@@ -887,16 +894,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'}) {
@@ -930,16 +938,16 @@ 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";
#
$r->print($Str);
#
- $r->rflush();
- &Apache::lonhtmlcommon::Increment_PrgWin($r,\%prog_state,'last student');
+# $r->rflush();
+# &Apache::lonhtmlcommon::Increment_PrgWin($r,\%prog_state,'last student');
return;
}
@@ -1674,7 +1682,7 @@ END
# Datestamp
my $description = $env{'course.'.$env{'request.course.id'}.'.description'};
print $outputfile '"'.&Apache::loncommon::csv_translate($description).'",'.
- '"'.&Apache::loncommon::csv_translate(scalar(localtime(time))).'"'.
+ '"'.&Apache::loncommon::csv_translate(scalar(&Apache::lonlocal::locallocaltime(time))).'"'.
"\n";
print $outputfile '"'.
&Apache::loncommon::csv_translate