|
|
|
|
@ -256,14 +256,22 @@ var connectorType = "Straight"; |
|
|
|
|
sourceDestinationArray[count+1] = sourceEndPoint; |
|
|
|
|
|
|
|
|
|
count++; |
|
|
|
|
jsPlumb.addEndpoint(windowId, { anchor:[ "RightMiddle","RightMiddle","RightMiddle","RightMiddle" ] }, sourceEndPoint); |
|
|
|
|
jsPlumb.addEndpoint( |
|
|
|
|
windowId, |
|
|
|
|
{ anchor:[ "RightMiddle","RightMiddle","RightMiddle","RightMiddle" ] }, |
|
|
|
|
sourceEndPoint |
|
|
|
|
); |
|
|
|
|
var destinationCount = 0; |
|
|
|
|
$(windowQuestion).each(function( index ) { |
|
|
|
|
var windowDestinationId = $(this).attr("id"); |
|
|
|
|
destinationEndPoint.scope = scope; |
|
|
|
|
destinationEndPoint.paintStyle.fillStyle = colorArrayDestination[destinationCount].getHex(); |
|
|
|
|
destinationCount++; |
|
|
|
|
jsPlumb.addEndpoint(windowDestinationId+"_answer", { anchor:[ "LeftMiddle","LeftMiddle","LeftMiddle","LeftMiddle" ] }, destinationEndPoint); |
|
|
|
|
jsPlumb.addEndpoint( |
|
|
|
|
windowDestinationId+"_answer", |
|
|
|
|
{ anchor:[ "LeftMiddle","LeftMiddle","LeftMiddle","LeftMiddle" ] }, |
|
|
|
|
destinationEndPoint |
|
|
|
|
); |
|
|
|
|
}); |
|
|
|
|
}); |
|
|
|
|
//var divsWithWindowClass = jsPlumb.CurrentLibrary.getSelector("#"+questionId+" .window"); |
|
|
|
|
@ -395,6 +403,17 @@ if ($objExercise->review_answers) { |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$exeId = isset($_GET['exe_id']) ? $_GET['exe_id'] : null; |
|
|
|
|
// Blocking access if exe_id was already treated |
|
|
|
|
if (!empty($exeId)) { |
|
|
|
|
$attemptInfo = $objExercise->getStatTrackExerciseInfoByExeId($exeId); |
|
|
|
|
|
|
|
|
|
if (!empty($attemptInfo) && $attemptInfo['status'] == '') { |
|
|
|
|
header("Location: ".$urlMainExercise."overview.php?exerciseId=".$exerciseId."&".api_get_cidreq()); |
|
|
|
|
exit; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$current_timestamp = time(); |
|
|
|
|
$my_remind_list = array(); |
|
|
|
|
|
|
|
|
|
@ -818,9 +837,9 @@ if ($question_count != 0) { |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
//Time control is only enabled for ONE PER PAGE |
|
|
|
|
// Time control is only enabled for ONE PER PAGE |
|
|
|
|
if (!empty($exe_id) && is_numeric($exe_id)) { |
|
|
|
|
//Verify if the current test is fraudulent |
|
|
|
|
// Verify if the current test is fraudulent |
|
|
|
|
$check = ExerciseLib::exercise_time_control_is_valid($exerciseId, $learnpath_id, $learnpath_item_id); |
|
|
|
|
|
|
|
|
|
if ($check) { |
|
|
|
|
@ -832,7 +851,8 @@ if ($question_count != 0) { |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if ($objExercise->review_answers) { |
|
|
|
|
header('Location: '.$urlMainExercise.'exercise_reminder.php?'.$params); |
|
|
|
|
//header('Location: '.$urlMainExercise.'exercise_reminder.php?'.$params); |
|
|
|
|
header("Location: ".$urlMainExercise."exercise_result.php?".api_get_cidreq()."&exe_id=$exe_id&origin=$origin&learnpath_id=$learnpath_id&learnpath_item_id=$learnpath_item_id&learnpath_item_view_id=$learnpath_item_view_id"); |
|
|
|
|
exit; |
|
|
|
|
} else { |
|
|
|
|
header("Location: ".$urlMainExercise."exercise_result.php?".api_get_cidreq()."&exe_id=$exe_id&origin=$origin&learnpath_id=$learnpath_id&learnpath_item_id=$learnpath_item_id&learnpath_item_view_id=$learnpath_item_view_id"); |
|
|
|
|
@ -1015,7 +1035,7 @@ if ($reminder == 2) { |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
if ($objExercise->review_answers) { |
|
|
|
|
if ($debug) { error_log('. redirecting to exercise_reminder.php '); } |
|
|
|
|
if ($debug) { error_log('Redirecting to exercise_reminder.php '); } |
|
|
|
|
header("Location: ".$urlMainExercise."exercise_reminder.php?$params"); |
|
|
|
|
exit; |
|
|
|
|
} |
|
|
|
|
@ -1069,6 +1089,7 @@ if (!empty($error)) { |
|
|
|
|
$onsubmit = " onsubmit=\"return validateFlashVar('".$number_of_hotspot_questions."', '" .get_lang('HotspotValidateError1')."', '".get_lang('HotspotValidateError2')."');\""; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
echo $objExercise->returnWarningJs(null); |
|
|
|
|
echo '<script> |
|
|
|
|
$(function() { |
|
|
|
|
$(".main_question").mouseover(function() { |
|
|
|
|
@ -1111,11 +1132,23 @@ if (!empty($error)) { |
|
|
|
|
window.location = url; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
function save_now(question_id, url_extra, redirect) { |
|
|
|
|
function save_now(question_id, url_extra, redirect, showWarning) { |
|
|
|
|
if (redirect == undefined) { |
|
|
|
|
redirect = true; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (showWarning == 1) { |
|
|
|
|
$("#dialog-confirm").data("question_id", question_id); |
|
|
|
|
$("#dialog-confirm").data("url_extra", url_extra); |
|
|
|
|
$("#dialog-confirm").data("redirect", redirect); |
|
|
|
|
$("#dialog-confirm").dialog("open"); |
|
|
|
|
} else { |
|
|
|
|
saveNow(question_id, url_extra, redirect); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
function saveNow(question_id, url_extra, redirect) |
|
|
|
|
{ |
|
|
|
|
//1. Normal choice inputs |
|
|
|
|
var my_choice = $(\'*[name*="choice[\'+question_id+\']"]\').serialize(); |
|
|
|
|
|
|
|
|
|
@ -1159,6 +1192,7 @@ if (!empty($error)) { |
|
|
|
|
" ".get_lang('SelectAnAnswerToContinue')).'"); |
|
|
|
|
} else if (return_value == "one_per_page") { |
|
|
|
|
var url = ""; |
|
|
|
|
// Redirect to reminder |
|
|
|
|
if ('.$reminder.' == 1) { |
|
|
|
|
url = "'.$urlMainExercise.'exercise_reminder.php?'.$params.'&num='.$current_question.'"; |
|
|
|
|
} else if ('.$reminder.' == 2 ) { |
|
|
|
|
@ -1265,6 +1299,7 @@ if (!empty($error)) { |
|
|
|
|
<input type="hidden" name="learnpath_item_view_id" value="'.$learnpath_item_view_id . '" />'; |
|
|
|
|
$objExercise->renderQuestionList($questionList, $current_question, $exerciseResult, $attempt_list, $remind_list); |
|
|
|
|
echo '</form>'; |
|
|
|
|
echo $objExercise->returnWarningHtml(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if ($origin != 'learnpath') { |
|
|
|
|
|