|
@@ -842,7 +842,8 @@ if (isset($cidReset) && $cidReset) { // course session data refresh requested or
|
|
|
$course_tracking_table = Database :: get_statistic_table(TABLE_STATISTIC_TRACK_E_COURSE_ACCESS);
|
|
|
$time = api_get_datetime();
|
|
|
$sql="INSERT INTO $course_tracking_table(course_code, user_id, login_course_date, logout_course_date, counter, session_id)" .
|
|
|
- "VALUES('".$_course['sysCode']."', '".$_user['user_id']."', '$time', '$time', '1', ".api_get_session_id().")";
|
|
|
+ "VALUES('".$_course['sysCode']."', '".$_user['user_id']."', '$time', '$time', '1', '".api_get_session_id()."')";
|
|
|
+ //error_log($sql);
|
|
|
Database::query($sql);
|
|
|
}
|
|
|
} else {
|
|
@@ -853,6 +854,11 @@ if (isset($cidReset) && $cidReset) { // course session data refresh requested or
|
|
|
api_session_unregister('_cid');
|
|
|
api_session_unregister('_real_cid');
|
|
|
api_session_unregister('_course');
|
|
|
+
|
|
|
+ //Deleting session id
|
|
|
+ if (api_get_session_id()) {
|
|
|
+ api_session_unregister('id_session');
|
|
|
+ }
|
|
|
}
|
|
|
} else { // continue with the previous values
|
|
|
if (empty($_SESSION['_course']) OR empty($_SESSION['_cid'])) { //no previous values...
|
|
@@ -863,7 +869,7 @@ if (isset($cidReset) && $cidReset) { // course session data refresh requested or
|
|
|
$_course = $_SESSION['_course'];
|
|
|
|
|
|
// these lines are usefull for tracking. Indeed we can have lost the id_session and not the cid.
|
|
|
- // Moreover, if we want to track a course with another session it can be usefull
|
|
|
+ // Moreover, if we want to track a course with another session it can be usefull
|
|
|
if (!empty($_GET['id_session'])) {
|
|
|
$tbl_session = Database::get_main_table(TABLE_MAIN_SESSION);
|
|
|
$_SESSION['id_session'] = intval($_GET['id_session']);
|
|
@@ -893,17 +899,19 @@ if (isset($cidReset) && $cidReset) { // course session data refresh requested or
|
|
|
AND login_course_date > now() - INTERVAL $session_lifetime SECOND
|
|
|
ORDER BY login_course_date DESC LIMIT 0,1";
|
|
|
$result=Database::query($sql);
|
|
|
-
|
|
|
+ //error_log($sql);
|
|
|
if (Database::num_rows($result)>0) {
|
|
|
|
|
|
$i_course_access_id = Database::result($result,0,0);
|
|
|
//We update the course tracking table
|
|
|
$sql="UPDATE $course_tracking_table SET logout_course_date = '$time', counter = counter+1 ".
|
|
|
"WHERE course_access_id=".intval($i_course_access_id)." AND session_id = ".api_get_session_id();
|
|
|
+ //error_log($sql);
|
|
|
Database::query($sql);
|
|
|
} else {
|
|
|
$sql="INSERT INTO $course_tracking_table (course_code, user_id, login_course_date, logout_course_date, counter, session_id)" .
|
|
|
"VALUES('".$course_code."', '".$_user['user_id']."', '$time', '$time', '1','".api_get_session_id()."')";
|
|
|
+ //error_log($sql);
|
|
|
Database::query($sql);
|
|
|
}
|
|
|
}
|
|
@@ -1177,9 +1185,3 @@ if (isset($_cid)) {
|
|
|
Database::query($sql);
|
|
|
}
|
|
|
|
|
|
-//Deleting session id
|
|
|
-if (isset($cidReset) && $cidReset) {
|
|
|
- if (api_get_session_id()) {
|
|
|
- api_session_unregister('id_session');
|
|
|
- }
|
|
|
-}
|