Fix validation with quiz_question_limit_per_day - refs BT#15234

pull/2874/head
Angel Fernando Quiroz Campos 7 years ago
parent a3d00fdb4c
commit a92f9db6fd
  1. 11
      main/exercise/overview.php
  2. 5
      main/inc/lib/exercise.lib.php

@ -28,7 +28,7 @@ $sessionId = api_get_session_id();
$exercise_id = isset($_REQUEST['exerciseId']) ? intval($_REQUEST['exerciseId']) : 0;
$objExercise = new Exercise();
$result = $objExercise->read($exercise_id, false);
$result = $objExercise->read($exercise_id, true);
if (!$result) {
api_not_allowed(true);
@ -392,7 +392,14 @@ if ($disable && empty($exercise_stat_info)) {
$exercise_url_button = Display::return_message(get_lang('NewExerciseAttemptDisabled'));
}
if (!empty($exercise_url_button)) {
$isLimitReached = ExerciseLib::isQuestionsLimitPerDayReached(
api_get_user_id(),
count($objExercise->get_validated_question_list()),
api_get_course_int_id(),
api_get_session_id()
);
if (!empty($exercise_url_button) && !$isLimitReached) {
$html .= Display::div(
Display::div(
$exercise_url_button,

@ -5299,12 +5299,11 @@ EOT;
SELECT COUNT(ea) FROM ChamiloCoreBundle:TrackEAttempt ea
WHERE ea.userId = :user AND ea.cId = :course AND ea.sessionId = :session
AND ea.tms > :time
GROUP BY ea.questionId
')
->setParameters(['user' => $userId, 'course' => $courseId, 'session' => $sessionId, 'time' => $time])
->getResult();
->getSingleScalarResult();
return count($result);
return $result;
}
/**

Loading…
Cancel
Save