Fix #1737 direct feedback no question list set.

pull/2487/head
jmontoyaa 9 years ago
parent 1d38179f25
commit f5dd738fe7
  1. 23
      main/inc/lib/exercise.lib.php

@ -3484,6 +3484,9 @@ HOTSPOT;
if ($save_user_result == false) {
$question_list = $objExercise->get_validated_question_list();
}
if ($objExercise->selectFeedbackType() == EXERCISE_FEEDBACK_TYPE_DIRECT) {
$question_list = $objExercise->get_validated_question_list();
}
}
$counter = 1;
@ -3583,25 +3586,37 @@ HOTSPOT;
$media_list = array();
$category_list = array();
$loadChoiceFromSession = false;
$fromDatabase = true;
$exerciseResult = null;
if ($objExercise->selectFeedbackType() == EXERCISE_FEEDBACK_TYPE_DIRECT) {
$loadChoiceFromSession = true;
$fromDatabase = false;
$exerciseResult = Session::read('exerciseResult');
}
// Loop over all question to show results for each of them, one by one
if (!empty($question_list)) {
foreach ($question_list as $questionId) {
// creates a temporary Question object
$objQuestionTmp = Question::read($questionId);
// This variable came from exercise_submit_modal.php
ob_start();
$choice = null;
if ($loadChoiceFromSession) {
$choice = isset($exerciseResult[$questionId]) ? $exerciseResult[$questionId] : null;
}
// We're inside *one* question. Go through each possible answer for this question
$result = $objExercise->manage_answer(
$exercise_stat_info['exe_id'],
$exe_id,
$questionId,
null,
$choice,
'exercise_result',
[],
$save_user_result,
true,
$fromDatabase,
$show_results,
$objExercise->selectPropagateNeg(),
[],

Loading…
Cancel
Save