Minor - Fix exercise submit redirect

pull/3825/head
Julio Montoya 5 years ago
parent 74f7e92cac
commit 23c25243e7
  1. 11
      main/exercise/exercise.class.php
  2. 16
      main/exercise/overview.php

@ -3513,11 +3513,12 @@ class Exercise
/**
* So the time control will work.
*
* @param int $timeLeft
* @param int $timeLeft
* @param string $redirectToUrl
*
* @return string
*/
public function showTimeControlJS($timeLeft, $redirectToExerciseSubmit = false)
public function showTimeControlJS($timeLeft, $redirectToUrl = '')
{
$timeLeft = (int) $timeLeft;
$script = 'redirectExerciseToResult();';
@ -3529,10 +3530,8 @@ class Exercise
}
$exerciseSubmitRedirect = '';
if ($redirectToExerciseSubmit) {
$url = api_get_path(WEB_CODE_PATH).
'exercise/exercise_submit.php?'.api_get_cidreq().'&exerciseId='.$this->id;
$exerciseSubmitRedirect = "window.location = '$url'";
if (!empty($redirectToUrl)) {
$exerciseSubmitRedirect = "window.location = '$redirectToUrl'";
}
return "<script>

@ -61,6 +61,13 @@ if ($objExercise->expired_time != 0 && !empty($clock_expired_time)) {
$time_control = true;
}
$extra_params = '';
if (isset($_GET['preview'])) {
$extra_params = '&preview=1';
}
$exercise_url = api_get_path(WEB_CODE_PATH).'exercise/exercise_submit.php?'.
api_get_cidreq().'&exerciseId='.$objExercise->id.'&learnpath_id='.$learnpath_id.'&learnpath_item_id='.$learnpath_item_id.'&learnpath_item_view_id='.$learnpathItemViewId.$extra_params;
if ($time_control) {
// Get time left for expiring time
$time_left = api_strtotime($clock_expired_time, 'UTC') - time();
@ -69,7 +76,7 @@ if ($time_control) {
$htmlHeadXtra[] = api_get_js('epiclock/javascript/jquery.dateformat.min.js');
$htmlHeadXtra[] = api_get_js('epiclock/javascript/jquery.epiclock.min.js');
$htmlHeadXtra[] = api_get_js('epiclock/renderers/minute/epiclock.minute.js');
$htmlHeadXtra[] = $objExercise->showTimeControlJS($time_left, true);
$htmlHeadXtra[] = $objExercise->showTimeControlJS($time_left, $exercise_url);
}
if (!in_array($origin, ['learnpath', 'embeddable', 'mobileapp'])) {
@ -128,11 +135,6 @@ if (!empty($objExercise->description)) {
$html .= Display::div($objExercise->description, ['class' => 'exercise_description']);
}
$extra_params = '';
if (isset($_GET['preview'])) {
$extra_params = '&preview=1';
}
$exercise_stat_info = $objExercise->get_stat_track_exercise_info(
$learnpath_id,
$learnpath_item_id,
@ -151,8 +153,6 @@ if (isset($exercise_stat_info['exe_id'])) {
// 2. Exercise button
// Notice we not add there the lp_item_view_id because is not already generated
$exercise_url = api_get_path(WEB_CODE_PATH).'exercise/exercise_submit.php?'.
api_get_cidreq().'&exerciseId='.$objExercise->id.'&learnpath_id='.$learnpath_id.'&learnpath_item_id='.$learnpath_item_id.'&learnpath_item_view_id='.$learnpathItemViewId.$extra_params;
$exercise_url_button = Display::url(
$label,
$exercise_url,

Loading…
Cancel
Save