--- loncom/interface/statistics/lonstudentassessment.pm 2006/03/05 02:00:01 1.132 +++ loncom/interface/statistics/lonstudentassessment.pm 2009/09/22 14:28:56 1.157 @@ -1,6 +1,6 @@ # The LearningOnline Network with CAPA # -# $Id: lonstudentassessment.pm,v 1.132 2006/03/05 02:00:01 bowersj2 Exp $ +# $Id: lonstudentassessment.pm,v 1.157 2009/09/22 14:28:56 bisitz Exp $ # # Copyright Michigan State University Board of Trustees # @@ -50,16 +50,20 @@ Presents assessment data about a student package Apache::lonstudentassessment; use strict; -use Apache::lonstatistics; -use Apache::lonhtmlcommon; +use Apache::lonstatistics(); +use Apache::lonhtmlcommon(); use Apache::loncommon(); use Apache::loncoursedata; use Apache::lonnet; # for logging porpoises use Apache::lonlocal; -use Apache::grades; +use Apache::grades(); +use Apache::lonmsgdisplay(); use Time::HiRes; use Spreadsheet::WriteExcel; use Spreadsheet::WriteExcel::Utility(); +use lib '/home/httpd/lib/perl/'; +use LONCAPA; + ####################################################### ####################################################### @@ -146,6 +150,7 @@ sub BuildStudentAssessmentPage { 'chartoutputmode' => 'scalar', 'chartoutputdata' => 'scalar', 'Section' => 'array', + 'Groups' => 'array', 'StudentData' => 'array', 'Maps' => 'array'); &Apache::loncommon::store_course_settings('chart',\%Saveable_Parameters); @@ -243,14 +248,14 @@ sub next_and_previous_buttons { if (defined($previous)) { my $sname = $previous->{'username'}.':'.$previous->{'domain'}; $previousbutton .= ''; } else { $previousbutton .= ''; + &mt('Previous Student').'" disabled="disabled" />'; } # # Build the next student link @@ -259,19 +264,19 @@ sub next_and_previous_buttons { if (defined($next)) { my $sname = $next->{'username'}.':'.$next->{'domain'}; $nextbutton .= ''; } else { $nextbutton .= ''; + &mt('Next Student').'" disabled="disabled" />'; } # # Build the 'all students' button my $all = ''; - $all .= ''; $Str .= $previousbutton.(' 'x5).$all.(' 'x5).$nextbutton; @@ -313,14 +318,24 @@ the chart page. ####################################################### sub CreateInterface { my $Str = ''; - $Str .= &Apache::lonhtmlcommon::breadcrumbs(undef,'Chart'); + $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 .= '
'.&mt('Sections').' | '; - $Str .= ''.&mt('Student Data').' | '; - $Str .= ''.&mt('Enrollment Status').' | '; - $Str .= ''.&mt('Sequences and Folders').' | '; + $Str .= ''.&mt('Sections').''. + &Apache::loncommon::help_open_topic("Chart_Sections"). + ' | '; + $Str .= ''.&mt('Groups').''. + ' | '; + $Str .= ''.&mt('Student Data').''. + &Apache::loncommon::help_open_topic("Chart_Student_Data"). + ' | '; + $Str .= ''.&mt('Access Status').''. + &Apache::loncommon::help_open_topic("Chart_Enrollment_Status"). + ' | '; + $Str .= ''.&mt('Sequences and Folders').''. + &Apache::loncommon::help_open_topic("Chart_Sequences"). + ' | '; $Str .= ''.&mt('Output Format').''. &Apache::loncommon::help_open_topic("Chart_Output_Formats"). ' | '; @@ -332,6 +347,8 @@ sub CreateInterface { $Str .= '
'."\n"; $Str .= &Apache::lonstatistics::SectionSelect('Section','multiple',5); $Str .= ' | '; + $Str .= &Apache::lonstatistics::GroupSelect('Group','multiple',5); + $Str .= ' | '; $Str .= &Apache::lonstatistics::StudentDataSelect('StudentData','multiple', 5,undef); $Str .= ' | '."\n"; @@ -344,19 +361,19 @@ sub CreateInterface { $Str .= &CreateAndParseOutputDataSelector(); $Str .= ' |
' + .&mt('Status:').' ' + .'' + .'
'; $Str .= ''; $Str .= ' 'x5; $Str .= ''; - $Str .= ' 'x5; - $Str .= - &mt('Status [_1]', - ''); - $Str .= '' + .'' + .'
'; return $Str; } @@ -529,7 +546,7 @@ my @OutputDataOptions = summary_table => 1, maximum_row => 0, ignore_weight => 1, - shortdesc => 'Number of Problem Parts completed successfully.', + shortdesc => 'Number of Problem Parts completed successfully', longdesc => 'The Number of Problem Parts completed successfully and '. 'the maximum possible for each student', }, @@ -537,7 +554,7 @@ my @OutputDataOptions = sub HTMLifyOutputDataDescriptions { my $Str = ''; - $Str .= "' + .&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(<\n"; # First, the @StudentData fields need to be listed @@ -683,8 +713,8 @@ sub html_initialize { $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'}) { @@ -692,8 +722,8 @@ sub html_initialize { # 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'}) { @@ -721,7 +751,7 @@ sub html_initialize { $r->rflush(); $r->print(<+