Fix admin reportes bug and added session optional for exercise progress report

1.9.x
César Perales 11 years ago
parent e9641b12c4
commit 8c73a877dd
  1. 2
      main/inc/ajax/model.ajax.php
  2. 23
      main/inc/lib/sessionmanager.lib.php
  3. 2
      main/mySpace/index.php

@ -626,7 +626,7 @@ switch ($action) {
$sessionId = intval($_GET['session_id']);
$courseId = intval($_GET['course_id']);
$exerciseId = intval($_GET['exercise_id']);
$answer = intval($_GET['answer']);
$answer = intval($_GET['answer']);
}
$columns = array(

@ -521,9 +521,16 @@ class SessionManager
$course = api_get_course_info_by_id($courseId);
$exercise = current(get_exercise_by_id($exerciseId));
$where = " WHERE a.course_code = '%s'
AND q.title = '%s'";
$where = " WHERE a.course_code = '%s'";
if (!empty($sessionId)) {
$where .= " AND a.session_id = %d
AND q.id = %d";
} else
{
$where .= " AND q.title = '%s'";
}
//2 = show all questions (wrong and correct answered)
if ($answer != 2)
{
$where .= sprintf(' AND qa.correct = %d', $answer);
@ -563,8 +570,15 @@ class SessionManager
INNER JOIN $quiz q ON q.id = e.exe_exo_id
INNER JOIN $user u ON u.user_id = a.user_id
$where $order $limit";
$sql_query = sprintf($sql, $course['code'], $exercise['title']);
error_log($sql_query);
if (!empty($sessionId))
{
$sql_query = sprintf($sql, $course['code'], $sessionId, $exerciseId);
} else
{
$sql_query = sprintf($sql, $course['code'], $exercise['title']);
}
$rs = Database::query($sql_query);
while ($row = Database::fetch_array($rs))
{
@ -1108,6 +1122,7 @@ error_log($sql_query);
INNER JOIN $user u ON a.user_id = u.user_id
INNER JOIN $course c ON a.course_code = c.code
$where $order $limit";
error_log(sprintf($sql, $sessionId, $courseId));
$result = Database::query(sprintf($sql, $sessionId, $courseId));
$clicks = Tracking::get_total_clicks_by_session();

@ -636,7 +636,7 @@ if ($is_platform_admin && in_array($view, array('admin')) && $display != 'yourst
{
$courseFilter = new FormValidator('course_filter', 'get', '', '', array('class'=> 'form-horizontal'), false);
$a = 'search_course_by_session';
if ( $display = 'exerciseprogress')
if ( $display == 'exerciseprogress')
{
$a = 'search_course';
}

Loading…
Cancel
Save