--- loncom/interface/lonstatistics.pm 2013/03/18 01:28:27 1.156.2.2 +++ loncom/interface/lonstatistics.pm 2020/11/11 22:27:41 1.156.2.8 @@ -1,6 +1,6 @@ # The LearningOnline Network with CAPA # -# $Id: lonstatistics.pm,v 1.156.2.2 2013/03/18 01:28:27 raeburn Exp $ +# $Id: lonstatistics.pm,v 1.156.2.8 2020/11/11 22:27:41 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -366,7 +366,7 @@ sub section_or_group_text { sub get_students { if (! @Students) { - &PrepareClasslist() + &PrepareClasslist(); } return @Students; } @@ -511,7 +511,7 @@ sub map_select { if ($selected_maps[0] eq 'all') { $form .= ' selected="selected"'; } - $form .= ">all\n"; + $form .= '>'.&mt('all').''."\n"; # # Loop through the sequences my @sequences = &selected_sequences_with_assessments('all'); @@ -547,6 +547,11 @@ sub SectionSelect { &PrepareClasslist() } # + # Make sure course's student table is up to date + if (@Sections) { + &Apache::loncoursedata::ensure_current_sections(); + } + # # Build the form element my $Str = "\n"; $Str .= ''; $r->print($Str); @@ -696,8 +709,8 @@ sub DisplayClasslist { .&Apache::loncommon::start_data_table_header_row(); foreach my $field (@Fields) { $Str .= ''.&mt($field). ''; } @@ -712,8 +725,8 @@ sub DisplayClasslist { if ($field eq 'fullname' || $field eq 'username') { $Str .= ''; $Str .= $student->{$field}; $Str .= ''; @@ -725,7 +738,6 @@ sub DisplayClasslist { } else { $Str .= $student->{$field}; } - $Str .= $student->{$field}; } $Str .= ''; } @@ -820,6 +832,8 @@ sub handler { &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, ['sort','reportSelected', 'SelectedStudent']); + my $GoToPage = $env{'form.reportSelected'}; + # # Give the LON-CAPA page header my $style = < ENDSTYLE + + my $head_extra = $style; + if (($env{'form.reportSelected'} eq 'student_submission_reports') && + ($env{'form.renderprob'})) { + my @Symbs = &Apache::lonstathelpers::get_selected_symbs('problemchoice'); + if (scalar(@Symbs) == 1) { + $head_extra .= &Apache::loncommon::css_links($Symbs[0]); + } + } elsif ($env{'form.reportSelected'} eq 'submissiontime_analysis') { + my ($navmap,$current_problem) = + &Apache::lonsubmissiontimeanalysis::get_current_problem(); + if (ref($current_problem) eq 'HASH') { + my $symb = $current_problem->{'symb'}; + if ($symb) { + $head_extra .= &Apache::loncommon::css_links($symb); + } + } + } elsif (($env{'form.reportSelected'} eq 'problem_analysis') && + ($env{'form.show_prob'})) { + my $problem_types = &Apache::lonproblemanalysis::analyzable_types(); + my ($navmap,$current_problem) = + &Apache::lonproblemanalysis::get_current_problem($problem_types); + if (ref($current_problem) eq 'HASH') { + my $symb = $current_problem->{'symb'}; + my $res = $current_problem->{'resource'}; + if ($symb) { + $head_extra .= &Apache::loncommon::css_links($symb); + } + } + } $r->print(&Apache::loncommon::start_page('Course Statistics and Charts', - $style)); + $head_extra)); $r->rflush(); # # Either print out a menu for them or send them to a report @@ -842,8 +886,7 @@ ENDSTYLE text =>'Statistics', faq=>139, bug=>'Statistics and Charts'}); - if (! exists($env{'form.reportSelected'}) || - $env{'form.reportSelected'} eq '') { + if ($GoToPage eq '') { $r->print(&Apache::lonhtmlcommon::breadcrumbs('Statistics Main Page'). &CreateMainMenu()); } else { @@ -868,11 +911,9 @@ ENDSTYLE # # Clean out the caches if (exists($env{'form.ClearCache'})) { - &Apache::loncoursedata::delete_caches($env{'requres.course.id'}); + &Apache::loncoursedata::delete_caches($env{'request.course.id'}); } # - my $GoToPage = $env{'form.reportSelected'}; - # # Begin form output $r->print('