original_string: protected function output_all_question_response_analysis($qubaids,
                                                               $questions,
                                                               $questionstats,
                                                               $reporturl,
                                                               $whichtries = question_attempt::LAST_TRY) {
          foreach ($questions as $slot => $question) {
              if (question_bank::get_qtype(
                  $question->qtype, false)->can_analyse_responses()
              ) {
                  if ($questionstats->for_slot($slot)->get_variants()) {
                      foreach ($questionstats->for_slot($slot)->get_variants() as $variantno) {
                          $this->output_individual_question_response_analysis($question,
                                                                              $variantno,
                                                                              $questionstats->for_slot($slot, $variantno)->s,
                                                                              $reporturl,
                                                                              $qubaids,
                                                                              $whichtries);
                      }
                  } else {
                      $this->output_individual_question_response_analysis($question,
                                                                          null,
                                                                          $questionstats->for_slot($slot)->s,
                                                                          $reporturl,
                                                                          $qubaids,
                                                                          $whichtries);
                  }
              } else if ($subqids = $questionstats->for_slot($slot)->get_sub_question_ids()) {
                  foreach ($subqids as $subqid) {
                      if ($variants = $questionstats->for_subq($subqid)->get_variants()) {
                          foreach ($variants as $variantno) {
                              $this->output_individual_question_response_analysis(
                                  $questionstats->for_subq($subqid, $variantno)->question,
                                  $variantno,
                                  $questionstats->for_subq($subqid, $variantno)->s,
                                  $reporturl,
                                  $qubaids,
                                  $whichtries);
                          }
                      } else {
                          $this->output_individual_question_response_analysis(
                              $questionstats->for_subq($subqid)->question,
                              null,
                              $questionstats->for_subq($subqid)->s,
                              $reporturl,
                              $qubaids,
                              $whichtries);
  
                      }
                  }
              }
          }
      }
code: protected function output_all_question_response_analysis($qubaids,
                                                               $questions,
                                                               $questionstats,
                                                               $reporturl,
                                                               $whichtries = question_attempt::LAST_TRY) {
          foreach ($questions as $slot => $question) {
              if (question_bank::get_qtype(
                  $question->qtype, false)->can_analyse_responses()
              ) {
                  if ($questionstats->for_slot($slot)->get_variants()) {
                      foreach ($questionstats->for_slot($slot)->get_variants() as $variantno) {
                          $this->output_individual_question_response_analysis($question,
                                                                              $variantno,
                                                                              $questionstats->for_slot($slot, $variantno)->s,
                                                                              $reporturl,
                                                                              $qubaids,
                                                                              $whichtries);
                      }
                  } else {
                      $this->output_individual_question_response_analysis($question,
                                                                          null,
                                                                          $questionstats->for_slot($slot)->s,
                                                                          $reporturl,
                                                                          $qubaids,
                                                                          $whichtries);
                  }
              } else if ($subqids = $questionstats->for_slot($slot)->get_sub_question_ids()) {
                  foreach ($subqids as $subqid) {
                      if ($variants = $questionstats->for_subq($subqid)->get_variants()) {
                          foreach ($variants as $variantno) {
                              $this->output_individual_question_response_analysis(
                                  $questionstats->for_subq($subqid, $variantno)->question,
                                  $variantno,
                                  $questionstats->for_subq($subqid, $variantno)->s,
                                  $reporturl,
                                  $qubaids,
                                  $whichtries);
                          }
                      } else {
                          $this->output_individual_question_response_analysis(
                              $questionstats->for_subq($subqid)->question,
                              null,
                              $questionstats->for_subq($subqid)->s,
                              $reporturl,
                              $qubaids,
                              $whichtries);
  
                      }
                  }
              }
          }
      }
code_tokens: protected function output_all_question_response_analysis ( $ qubaids , $ questions , $ questionstats , $ reporturl , $ whichtries = question_attempt :: LAST_TRY ) { foreach ( $ questions as $ slot => $ question ) { if ( question_bank :: get_qtype ( $ question -> qtype , false ) -> can_analyse_responses ( ) ) { if ( $ questionstats -> for_slot ( $ slot ) -> get_variants ( ) ) { foreach ( $ questionstats -> for_slot ( $ slot ) -> get_variants ( ) as $ variantno ) { $ this -> output_individual_question_response_analysis ( $ question , $ variantno , $ questionstats -> for_slot ( $ slot , $ variantno ) -> s , $ reporturl , $ qubaids , $ whichtries ) ; } } else { $ this -> output_individual_question_response_analysis ( $ question , null , $ questionstats -> for_slot ( $ slot ) -> s , $ reporturl , $ qubaids , $ whichtries ) ; } } else if ( $ subqids = $ questionstats -> for_slot ( $ slot ) -> get_sub_question_ids ( ) ) { foreach ( $ subqids as $ subqid ) { if ( $ variants = $ questionstats -> for_subq ( $ subqid ) -> get_variants ( ) ) { foreach ( $ variants as $ variantno ) { $ this -> output_individual_question_response_analysis ( $ questionstats -> for_subq ( $ subqid , $ variantno ) -> question , $ variantno , $ questionstats -> for_subq ( $ subqid , $ variantno ) -> s , $ reporturl , $ qubaids , $ whichtries ) ; } } else { $ this -> output_individual_question_response_analysis ( $ questionstats -> for_subq ( $ subqid ) -> question , null , $ questionstats -> for_subq ( $ subqid ) -> s , $ reporturl , $ qubaids , $ whichtries ) ; } } } } }
docstring: Output all response analysis for all questions, sub-questions and variants. For download in a number of formats.
  
  @param $qubaids
  @param $questions
  @param $questionstats
  @param $reporturl
  @param $whichtries string
docstring_tokens: Output all response analysis for all questions sub - questions and variants . For download in a number of formats .