|
|
|
|
@ -30,6 +30,7 @@ switch ($action) { |
|
|
|
|
$limit = intval($_REQUEST['rows']); //quantity of rows |
|
|
|
|
$sidx = $_REQUEST['sidx']; //index to filter |
|
|
|
|
$sord = $_REQUEST['sord']; //asc or desc |
|
|
|
|
|
|
|
|
|
if (!in_array($sord, array('asc','desc'))) { |
|
|
|
|
$sord = 'desc'; |
|
|
|
|
} |
|
|
|
|
@ -69,9 +70,10 @@ switch ($action) { |
|
|
|
|
$start = 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$sql = "SELECT count_questions, exe_user_id, firstname, lastname, aa.status, start_date, exe_result, exe_weighting, exe_result/exe_weighting as score, exe_duration, questions_to_check, orig_lp_id |
|
|
|
|
FROM $user_table u INNER JOIN ( |
|
|
|
|
SELECT t.exe_user_id, count(question_id) as count_questions, status, |
|
|
|
|
$sql = "SELECT exe_id, exe_user_id, firstname, lastname, aa.status, start_date, exe_result, exe_weighting, exe_result/exe_weighting as score, exe_duration, questions_to_check, orig_lp_id |
|
|
|
|
FROM $user_table u |
|
|
|
|
INNER JOIN ( |
|
|
|
|
SELECT t.exe_id, t.exe_user_id, status, |
|
|
|
|
start_date, exe_result, exe_weighting, exe_result/exe_weighting as score, exe_duration, questions_to_check, orig_lp_id |
|
|
|
|
FROM $track_exercise t LEFT JOIN $track_attempt a ON (a.exe_id = t.exe_id AND t.exe_user_id = a.user_id ) |
|
|
|
|
WHERE t.status = 'incomplete' AND |
|
|
|
|
@ -80,10 +82,9 @@ switch ($action) { |
|
|
|
|
) as aa |
|
|
|
|
ON aa.exe_user_id = user_id |
|
|
|
|
ORDER BY $sidx $sord LIMIT $start, $limit"; |
|
|
|
|
//echo $sql; |
|
|
|
|
|
|
|
|
|
$result = Database::query($sql); |
|
|
|
|
$results = array(); |
|
|
|
|
|
|
|
|
|
while ($row = Database::fetch_array($result,'ASSOC')){ |
|
|
|
|
$results[] = $row; |
|
|
|
|
} |
|
|
|
|
@ -98,6 +99,17 @@ switch ($action) { |
|
|
|
|
foreach($results as $row) { |
|
|
|
|
//$user_info = api_get_user_info($row['exe_user_id']); |
|
|
|
|
//print_r($row); |
|
|
|
|
$sql = "SELECT SUM(count_question_id) as count_question_id FROM ( |
|
|
|
|
SELECT 1 as count_question_id FROM $track_attempt a |
|
|
|
|
WHERE user_id = {$row['exe_user_id']} and exe_id = {$row['exe_id']} |
|
|
|
|
GROUP by question_id |
|
|
|
|
) as count_table"; |
|
|
|
|
$result_count = Database::query($sql); |
|
|
|
|
$count_questions = Database::fetch_array($result_count,'ASSOC'); |
|
|
|
|
$count_questions = $count_questions['count_question_id']; |
|
|
|
|
|
|
|
|
|
$row['count_questions'] = $count_questions; |
|
|
|
|
|
|
|
|
|
$response->rows[$i]['id'] = $row['exe_id']; |
|
|
|
|
$array = array( $row['firstname'], |
|
|
|
|
$row['lastname'], |
|
|
|
|
@ -148,6 +160,7 @@ switch ($action) { |
|
|
|
|
//There is a reminder? |
|
|
|
|
$remind_list = isset($_REQUEST['remind_list']) && !empty($_REQUEST['remind_list'])? array_keys($_REQUEST['remind_list']) : null; |
|
|
|
|
|
|
|
|
|
//Attempt id |
|
|
|
|
$exe_id = $_REQUEST['exe_id']; |
|
|
|
|
|
|
|
|
|
if ($debug) error_log("exe_id = $exe_id "); |
|
|
|
|
@ -229,6 +242,7 @@ switch ($action) { |
|
|
|
|
|
|
|
|
|
// Getting the total weight if the request is simple |
|
|
|
|
$total_weight = 0; |
|
|
|
|
|
|
|
|
|
if ($type == 'simple') { |
|
|
|
|
foreach ($question_list as $my_question_id) { |
|
|
|
|
$objQuestionTmp = Question :: read($my_question_id); |
|
|
|
|
@ -266,6 +280,15 @@ switch ($action) { |
|
|
|
|
//this variable commes from exercise_submit_modal.php |
|
|
|
|
$hotspot_delineation_result = $_SESSION['hotspot_delineation_result'][$objExercise->selectId()][$my_question_id]; |
|
|
|
|
|
|
|
|
|
if ($type == 'simple') { |
|
|
|
|
//Getting old attempt in order to decress the total score |
|
|
|
|
$old_result = $objExercise->manage_answer($exe_id, $my_question_id, null, 'exercise_show', array(), false, true, false, $objExercise->selectPropagateNeg()); |
|
|
|
|
|
|
|
|
|
//Removing old score |
|
|
|
|
$total_score = $total_score - $old_result['score']; |
|
|
|
|
} else { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Deleting old attempt |
|
|
|
|
if (isset($attempt_list) && !empty($attempt_list[$my_question_id])) { |
|
|
|
|
if ($debug) error_log("delete_attempt exe_id : $exe_id, my_question_id: $my_question_id"); |
|
|
|
|
@ -276,9 +299,11 @@ switch ($action) { |
|
|
|
|
$total_score -= $attempt_list[$my_question_id]['marks']; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// We're inside *one* question. Go through each possible answer for this question |
|
|
|
|
$result = $objExercise->manage_answer($exe_id, $my_question_id, $my_choice,'exercise_result', $hot_spot_coordinates, true, false, $show_results, $objExercise->selectPropagateNeg(), $hotspot_delineation_result, true); |
|
|
|
|
|
|
|
|
|
//Adding the new score |
|
|
|
|
$total_score += $result['score']; |
|
|
|
|
|
|
|
|
|
if ($debug) error_log("total_score: $total_score "); |
|
|
|
|
|