Tracking: Add latest login date in any course/session BT#18185

pull/3732/head
Julio Montoya 5 years ago
parent d289ec2ffb
commit 4520bdf084
  1. 5
      main/admin/user_information.php
  2. 24
      main/inc/lib/tracking.lib.php
  3. 9
      main/mySpace/myStudents.php
  4. 1
      main/template/default/admin/user_information.tpl
  5. 9
      main/template/default/my_space/user_details.tpl

@ -194,9 +194,14 @@ $table->setHeaderContents(0, 0, get_lang('Tracking'));
$csvContent[] = [get_lang('Tracking')];
$userInfo['first_connection'] = Tracking::get_first_connection_date($userId);
$userInfo['last_connection'] = Tracking::get_last_connection_date($userId, true);
$userInfo['last_connection_in_course'] = api_format_date(
Tracking::getLastConnectionInAnyCourse($userId),
DATE_FORMAT_SHORT
);
$data = [
get_lang('FirstLogin') => $userInfo['first_connection'],
get_lang('LatestLogin') => $userInfo['last_connection'],
get_lang('LatestLoginInAnyCourse') => $userInfo['last_connection_in_course'],
];
if (api_get_setting('allow_terms_conditions') === 'true') {

@ -2107,6 +2107,30 @@ class Tracking
return false;
}
public static function getLastConnectionInAnyCourse($studentId)
{
$studentId = (int) $studentId;
if (empty($studentId)) {
return false;
}
$table = Database::get_main_table(TABLE_STATISTIC_TRACK_E_COURSE_ACCESS);
$sql = "SELECT logout_course_date
FROM $table
WHERE user_id = $studentId
ORDER BY logout_course_date DESC
LIMIT 1";
$result = Database::query($sql);
if (Database::num_rows($result)) {
$row = Database::fetch_array($result);
return $row['logout_course_date'];
}
return false;
}
/**
* Get last course access by course/session.
*/

@ -618,10 +618,7 @@ if ($first_connection_date == '') {
$first_connection_date = get_lang('NoConnexion');
}
$last_connection_date = Tracking::get_last_connection_date(
$user_info['user_id'],
true
);
$last_connection_date = Tracking::get_last_connection_date($user_info['user_id'], true);
if ($last_connection_date == '') {
$last_connection_date = get_lang('NoConnexion');
}
@ -729,6 +726,10 @@ $userInfo['student_score'] = (float) $score;
$userInfo['student_progress'] = (float) $avg_student_progress;
$userInfo['first_connection'] = $first_connection_date;
$userInfo['last_connection'] = $last_connection_date;
$userInfo['last_connection_in_course'] = api_format_date(
Tracking::getLastConnectionInAnyCourse($user_info['user_id']),
DATE_FORMAT_SHORT
);
if ($details === 'true') {
$userInfo['time_spent_course'] = $time_spent_on_the_course;
}

@ -9,6 +9,7 @@
<div class="list-card">
{{ display.card_widget('FirstLoginInPlatform'|get_lang, user.first_connection, 'calendar') }}
{{ display.card_widget('LatestLoginInPlatform'|get_lang, user.last_connection, 'calendar') }}
{{ display.card_widget('LatestLoginInAnyCourse'|get_lang, user.last_connection_in_course, 'calendar') }}
{% if user.legal %}
{{ display.card_widget('LegalAccepted'|get_lang, user.legal.datetime, 'gavel', user.legal.icon) }}
{% endif %}

@ -30,6 +30,7 @@
<div class="col-md-4">
{{ display.card_widget('FirstLoginInPlatform'|get_lang, user.first_connection, 'calendar') }}
{{ display.card_widget('LatestLoginInPlatform'|get_lang, user.last_connection, 'calendar') }}
{{ display.card_widget('LatestLoginInAnyCourse'|get_lang, user.last_connection_in_course, 'calendar') }}
{% if user.legal %}
{{ display.card_widget('LegalAccepted'|get_lang, user.legal.datetime, 'gavel', user.legal.icon) }}
@ -51,7 +52,6 @@
<div class="col-md-8">
<div class="row">
<div class="col-md-8">
<div class="row">
<div class="col-md-6">
<div class="easy-donut">
@ -95,7 +95,6 @@
<div class="row">
<div class="col-md-6">
<div class="card box-widget">
<div class="card-body">
<div class="stat-widget-five">
@ -131,10 +130,8 @@
</div>
</div>
</div>
</div>
<div class="col-md-6">
<div class="card box-widget">
<div class="card-body">
<div class="stat-widget-five">
@ -176,7 +173,6 @@
</div>
</div>
</div>
</div>
</div>
@ -192,12 +188,13 @@
{{ display.card_widget('LatestLoginInCourse'|get_lang, user.tools.course_last_access, 'calendar-o', user.legal.icon) }}
{% endif %}
{% if(user.time_spent_course) %}
{% if user.time_spent_course %}
{{ display.card_widget('TimeSpentInTheCourse'|get_lang, user.time_spent_course, 'clock-o') }}
{% endif %}
{{ display.card_widget('FirstLoginInPlatform'|get_lang, user.first_connection, 'calendar') }}
{{ display.card_widget('LatestLoginInPlatform'|get_lang, user.last_connection, 'calendar') }}
{{ display.card_widget('LatestLoginInAnyCourse'|get_lang, user.last_connection_in_course, 'calendar') }}
{% if user.legal %}
{{ display.card_widget('LegalAccepted'|get_lang, user.legal.datetime, 'gavel', user.legal.icon) }}

Loading…
Cancel
Save