Fixing question list pagination with medias + categories

skala
Julio Montoya 13 years ago
parent ecc2e4f1ed
commit 34a4d4e02c
  1. 9
      main/exercice/exercise.class.php
  2. 2
      main/exercice/exercise_reminder.php
  3. 11
      main/exercice/exercise_submit.php

@ -4849,7 +4849,7 @@ class Exercise
public function getQuestionList($expand_media_questions = false)
{
$questionList = $this->selectQuestionList();
$questionList = $this->transform_question_list_with_medias($questionList, $expand_media_questions);
$questionList = $this->transformQuestionListWithMedias($questionList, $expand_media_questions);
return $questionList;
}
@ -4859,7 +4859,7 @@ class Exercise
* @params bool expand or not question list (true show all questions, false show media question id instead of the question ids)
*
**/
public function transform_question_list_with_medias($question_list, $expand_media_questions = false)
public function transformQuestionListWithMedias($question_list, $expand_media_questions = false)
{
$new_question_list = array();
if (!empty($question_list)) {
@ -5333,7 +5333,7 @@ class Exercise
$counterNoMedias = 0;
$nextValue = 0;
$wasMedia = false;
$before = array();
$before = 0;
if (!empty($categories)) {
@ -5361,10 +5361,9 @@ class Exercise
if (!empty($nextValue)) {
if ($wasMedia) {
$nextValue = $nextValue - count($before) -1;
$nextValue = $nextValue - $before + 1;
}
}
$html .= Display::progressPaginationBar(
$nextValue,
$questionList,

@ -254,7 +254,7 @@ $exercise_actions = Display::url(get_lang('EndTest'), 'javascript://', array('on
$questionList = explode(',', $exercise_stat_info['data_tracking']);
$questionListFlatten = $objExercise->transform_question_list_with_medias($questionList, true);
$questionListFlatten = $objExercise->transformQuestionListWithMedias($questionList, true);
$mediaQuestions = $objExercise->getMediaList($questionList);
$params = "exe_id=$exe_id&exerciseId=$exerciseId&origin=$origin&learnpath_id=$learnpath_id&learnpath_item_id=$learnpath_item_id&learnpath_item_view_id=$learnpath_item_view_id&".api_get_cidreq();

@ -352,7 +352,7 @@ if (!isset($_SESSION['objExercise']) || $_SESSION['objExercise']->id != $_REQUES
}
}
$objExercise = new Exercise(); $objExercise->read($exerciseId);
// $objExercise = new Exercise(); $objExercise->read($exerciseId);
//2. Checking if $objExercise is set
if (!isset($objExercise) && isset($_SESSION['objExercise'])) {
@ -455,8 +455,8 @@ if ($objExercise->selectAttempts() > 0) {
// 5. Getting user exercise info (if the user took the exam before) - generating exe_id
$exercise_stat_info = $objExercise->get_stat_track_exercise_info($learnpath_id, $learnpath_item_id, $learnpath_item_view_id);
if (1) {
//if (!isset($_SESSION['questionList'])) {
//if (1) {
if (!isset($_SESSION['questionList'])) {
// Selects the list of question ID
$questionList = $objExercise->getQuestionList();
@ -475,10 +475,8 @@ if (1) {
}
}
// var_dump($questionList);
//Fix in order to get the correct question list
$questionListFlatten = $objExercise->transform_question_list_with_medias($questionList, true);
// var_dump($questionListFlatten);
$questionListFlatten = $objExercise->transformQuestionListWithMedias($questionList, true);
Session::write('question_list_flatten', $questionListFlatten);
@ -822,7 +820,6 @@ if (api_is_course_admin() && $origin != 'learnpath') {
}
echo '</div>';
}
//var_dump($questionList);var_dump($questionListFlatten);
if ($objExercise->type == ONE_PER_PAGE) {
echo $objExercise->getProgressPagination(
$exe_id,

Loading…
Cancel
Save