Diff for /loncom/interface/statistics/lonproblemanalysis.pm between versions 1.142.2.3 and 1.147

version 1.142.2.3, 2013/12/30 14:19:58 version 1.147, 2020/11/10 19:28:32
Line 31  use Apache::lonnet; Line 31  use Apache::lonnet;
 use Apache::loncommon();  use Apache::loncommon();
 use Apache::lonhtmlcommon();  use Apache::lonhtmlcommon();
 use Apache::loncoursedata();  use Apache::loncoursedata();
   use Apache::lonquickgrades();
 use Apache::lonstatistics;  use Apache::lonstatistics;
 use Apache::lonlocal;  use Apache::lonlocal;
 use Apache::lonstathelpers();  use Apache::lonstathelpers();
Line 74  sub BuildProblemAnalysisPage { Line 75  sub BuildProblemAnalysisPage {
     &Apache::lonstatistics::PrepareClasslist();      &Apache::lonstatistics::PrepareClasslist();
     #      #
     $r->print(&Apache::lonhtmlcommon::breadcrumbs('Detailed Problem Analysis'));      $r->print(&Apache::lonhtmlcommon::breadcrumbs('Detailed Problem Analysis'));
       &Apache::lonquickgrades::startGradeScreen($r,'statistics');
   
     $r->print(&CreateInterface());      $r->print(&CreateInterface());
     #      #
Line 90  sub BuildProblemAnalysisPage { Line 92  sub BuildProblemAnalysisPage {
         &Apache::lonstathelpers::manage_caches($r,'Statistics','stats_status');          &Apache::lonstathelpers::manage_caches($r,'Statistics','stats_status');
     $r->rflush();      $r->rflush();
     #      #
     my $problem_types = '(option|radiobutton|numerical)';      my $problem_types = &analyzable_types();
     if (exists($env{'form.problemchoice'}) &&       if (exists($env{'form.problemchoice'}) && 
         ! exists($env{'form.SelectAnother'})) {          ! exists($env{'form.SelectAnother'})) {
         foreach my $button (@SubmitButtons) {          foreach my $button (@SubmitButtons) {
Line 116  sub BuildProblemAnalysisPage { Line 118  sub BuildProblemAnalysisPage {
         $r->rflush();          $r->rflush();
         #          #
         # Determine which problem we are to analyze          # Determine which problem we are to analyze
         my $current_problem = &Apache::lonstathelpers::get_target_from_id          my ($navmap,$current_problem) = &get_current_problem(); # need to retrieve $navmap
             ($env{'form.problemchoice'});                                                                  # to support $resource->* calls
         #                                                                  # for src and compTitle (below)
         my ($navmap,$prev,$curr,$next) =   
             &Apache::lonstathelpers::get_prev_curr_next($current_problem,  
                                                         $problem_types,  
                                                         'response',  
                                                         );  
         if (exists($env{'form.PrevProblemAnalysis'}) && defined($prev)) {  
             $current_problem = $prev;  
         } elsif (exists($env{'form.NextProblemAnalysis'}) && defined($next)) {  
             $current_problem = $next;  
         } else {  
             $current_problem = $curr;  
         }  
         #          #
         # Store the current problem choice and send it out in the form          # Store the current problem choice and send it out in the form
         $env{'form.problemchoice'} =           $env{'form.problemchoice'} = 
Line 191  sub BuildProblemAnalysisPage { Line 181  sub BuildProblemAnalysisPage {
     }      }
 }  }
   
   sub analyzable_types {
       return '(option|radiobutton|numerical)';
   }
   
   sub get_current_problem {
       my ($problem_types) = @_;
       my $current_problem = &Apache::lonstathelpers::get_target_from_id
           ($env{'form.problemchoice'});
       my ($navmap,$prev,$curr,$next) =
           &Apache::lonstathelpers::get_prev_curr_next($current_problem,
                                                       $problem_types,
                                                       'response');
       if (exists($env{'form.PrevProblemAnalysis'}) && ($prev ne '')) {
           $current_problem = $prev;
       } elsif (exists($env{'form.NextProblemAnalysis'}) && ($next ne '')) {
           $current_problem = $next;
       } else {
           $current_problem = $curr;
       }
       return ($navmap,$current_problem);
   }
   
 #########################################################  #########################################################
 #########################################################  #########################################################
 ##  ##
Line 1260  sub OptionResponseAnalysis { Line 1272  sub OptionResponseAnalysis {
             $r->print($analysis_html);              $r->print($analysis_html);
             $r->rflush();              $r->rflush();
         } else {          } else {
             $r->print('div class="LC_warning"'              $r->print('<div class="LC_warning">'
                      .&mt('The analysis you have selected is not supported at this time.')                       .&mt('The analysis you have selected is not supported at this time.')
                      .'</div>'                       .'</div>'
             );              );
Line 1947  sub CreateInterface { Line 1959  sub CreateInterface {
         $showprob_checkbox.' '.&mt('Show problem').          $showprob_checkbox.' '.&mt('Show problem').
         '</label></span><br />';          '</label></span><br />';
     ##      ##
     my $analyze_selector = '<select name="AnalyzeOver" >';      my $analyze_selector = '<select name="AnalyzeOver">';
     $analyze_selector .= '<option value="tries" ';      $analyze_selector .= '<option value="tries"';
     if (! exists($env{'form.AnalyzeOver'}) ||       if (! exists($env{'form.AnalyzeOver'}) || 
         $env{'form.AnalyzeOver'} eq 'tries'){          $env{'form.AnalyzeOver'} eq 'tries'){
         # Default to tries          # Default to tries
         $analyze_selector .= ' selected="selected" ';          $analyze_selector .= ' selected="selected"';
     }      }
     $analyze_selector .= '>'.&mt('Tries').'</option>';      $analyze_selector .= '>'.&mt('Tries').'</option>';
     $analyze_selector .= '<option value="time" ';      $analyze_selector .= '<option value="time"';
     $analyze_selector .= ' selected ' if ($env{'form.AnalyzeOver'} eq 'time');      $analyze_selector .= ' selected="selected"' if ($env{'form.AnalyzeOver'} eq 'time');
     $analyze_selector .= '>'.&mt('Time').'</option>';      $analyze_selector .= '>'.&mt('Time').'</option>';
     $analyze_selector .= '</select>';      $analyze_selector .= '</select>';
     $Str .= '<span class="LC_nobreak"><label>'.      $Str .= '<span class="LC_nobreak"><label>'.

Removed from v.1.142.2.3  
changed lines
  Added in v.1.147


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>