diff --git a/main/exercice/draggable.class.php b/main/exercice/draggable.class.php index 6c10e6ab1b..a6dd6ca5fd 100644 --- a/main/exercice/draggable.class.php +++ b/main/exercice/draggable.class.php @@ -194,15 +194,11 @@ class Draggable extends Matching } /** - * @param null $feedback_type - * @param null $counter - * @param null $score - * @param bool $show_media - * @return string + * {@inheritdoc} */ - public function return_header($feedback_type = null, $counter = null, $score = null, $show_media = false) + public function return_header($feedback_type = null, $counter = null, $score = null, $show_media = false, $hideTitle = 0) { - $header = parent::return_header($feedback_type, $counter, $score, $show_media); + $header = parent::return_header($feedback_type, $counter, $score, $show_media, $hideTitle); $header .= '
| '.get_lang('ElementList').' | diff --git a/main/exercice/exercise.class.php b/main/exercice/exercise.class.php index 18808be0af..6f75431f85 100644 --- a/main/exercice/exercise.class.php +++ b/main/exercice/exercise.class.php @@ -4,7 +4,7 @@ * Exercise class: This class allows to instantiate an object of type Exercise * @package chamilo.exercise * @author Olivier Brouckaert - * @author Julio Montoya Cleaning exercises + * @author Julio Montoya Cleaning exercises, adding multiple categories, media questions, commitee * Modified by Hubert Borderiou #294 */ /** @@ -734,7 +734,11 @@ class Exercise if (isset($questions_by_category[$category_id])) { // How many question will be picked from this category. $count = $category_info['count_questions']; - if ($count != -1) { + + // -1 means all questions + if ($count == -1) { + $categoryCountArray[$category_id] = 999; + } else { $categoryCountArray[$category_id] = $count; } } @@ -808,6 +812,7 @@ class Exercise $categoriesAddedInExercise = $cat->getCategoryExerciseTree($this->id, $this->course['real_id'], 'title DESC', false, true); $questions_by_category = Testcategory::getQuestionsByCat($this->id, $question_list, $categoriesAddedInExercise); $question_list = $this->pickQuestionsPerCategory($categoriesAddedInExercise, $question_list, $questions_by_category, true, false); + break; case EX_Q_SELECTION_CATEGORIES_RANDOM_QUESTIONS_ORDERED: // 4 case EX_Q_SELECTION_CATEGORIES_RANDOM_QUESTIONS_ORDERED_NO_GROUPED: // 7 @@ -4625,8 +4630,8 @@ class Exercise return false; } - if (0) { - //if (!empty($this->emailNotificationTemplate)) { + //if (0) { + if (!empty($this->emailNotificationTemplate)) { $twig = new \Twig_Environment(new \Twig_Loader_String()); $twig->addFilter('var_dump', new Twig_Filter_Function('var_dump')); $template = $this->emailNotificationTemplate; @@ -6436,8 +6441,8 @@ class Exercise $tempParentId = $objQuestionTmp->parent_id; } - //Shows question title an description - $question_content .= $objQuestionTmp->return_header(null, $counterToShow, $score, $show_media); + // Shows question title an description. + $question_content .= $objQuestionTmp->return_header(null, $counterToShow, $score, $show_media, $this->getHideQuestionTitle()); // display question category, if any $question_content .= Testcategory::getCategoryNamesForQuestion($questionId); diff --git a/main/exercice/exercise_admin.php b/main/exercice/exercise_admin.php index 497c106e82..ce1c66d0eb 100644 --- a/main/exercice/exercise_admin.php +++ b/main/exercice/exercise_admin.php @@ -19,8 +19,8 @@ require_once 'answer.class.php'; require_once '../inc/global.inc.php'; $this_section = SECTION_COURSES; -if (!api_is_allowed_to_edit(null,true)) { - api_not_allowed(true); +if (!api_is_allowed_to_edit(null, true)) { + api_not_allowed(true); } $url = api_get_path(WEB_AJAX_PATH).'exercise.ajax.php?1=1'; @@ -232,12 +232,12 @@ $course_id = api_get_course_int_id(); //INIT FORM if (isset($_GET['exerciseId'])) { - $form = new FormValidator('exercise_admin', 'post', api_get_self().'?'.api_get_cidreq().'&exerciseId='.intval($_GET['exerciseId'])); - $objExercise->read($_GET['exerciseId']); - $form->addElement('hidden','edit','true'); + $form = new FormValidator('exercise_admin', 'post', api_get_self().'?'.api_get_cidreq().'&exerciseId='.intval($_GET['exerciseId'])); + $objExercise->read($_GET['exerciseId']); + $form->addElement('hidden', 'edit', 'true'); } else { - $form = new FormValidator('exercise_admin','post',api_get_self().'?'.api_get_cidreq()); - $form->addElement('hidden','edit','false'); + $form = new FormValidator('exercise_admin','post',api_get_self().'?'.api_get_cidreq()); + $form->addElement('hidden', 'edit', 'false'); } $objExercise->createForm($form); @@ -256,48 +256,48 @@ if ($form->validate()) { exit; } else { // DISPLAY FORM - if (isset($_SESSION['gradebook'])) { - $gradebook= $_SESSION['gradebook']; - - } + if (isset($_SESSION['gradebook'])) { + $gradebook= $_SESSION['gradebook']; + } - if (!empty($gradebook) && $gradebook=='view') { - $interbreadcrumb[]= array ('url' => '../gradebook/'.$_SESSION['gradebook_dest'],'name' => get_lang('ToolGradebook')); - } - $nameTools = get_lang('ExerciseManagement'); - $interbreadcrumb[] = array("url"=>'exercice.php', 'name'=> get_lang('Exercices')); + if (!empty($gradebook) && $gradebook=='view') { + $interbreadcrumb[]= array ('url' => '../gradebook/'.$_SESSION['gradebook_dest'],'name' => get_lang('ToolGradebook')); + } + $nameTools = get_lang('ExerciseManagement'); + $interbreadcrumb[] = array("url"=>'exercice.php', 'name'=> get_lang('Exercices')); $interbreadcrumb[] = array("url"=>"admin.php?exerciseId=".$objExercise->id, "name" => $objExercise->name); - Display::display_header($nameTools,get_lang('Exercise')); + Display::display_header($nameTools,get_lang('Exercise')); echo '
|---|