123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- <?php
- /* For licensing terms, see /license.txt */
- /**
- * Responses to AJAX calls.
- */
- require_once __DIR__.'/../global.inc.php';
- $action = $_GET['a'];
- // Access restrictions.
- $is_allowedToTrack = api_is_platform_admin(true, true) ||
- api_is_allowed_to_create_course() || api_is_course_tutor();
- if (!$is_allowedToTrack) {
- exit;
- }
- switch ($action) {
- // At this date : 23/02/2017, a minor review can't determine where is used this case 'access_detail'
- case 'access_detail':
- $user_id = intval($_REQUEST['student']);
- $course_code = Security::remove_XSS($_REQUEST['course']);
- $type = Security::remove_XSS($_REQUEST['type']);
- $range = Security::remove_XSS($_REQUEST['range']);
- $sessionId = isset($_REQUEST['session_id']) ? $_REQUEST['session_id'] : 0;
- $courseInfo = api_get_course_info($course_code);
- if ($range == 1) {
- $start_date = Security::remove_XSS($_REQUEST['sd']);
- $end_date = Security::remove_XSS($_REQUEST['ed']);
- $sql_result = MySpace::get_connections_to_course_by_date(
- $user_id,
- $courseInfo,
- $sessionId,
- $start_date,
- $end_date
- );
- } else {
- $sql_result = MySpace::get_connections_to_course(
- $user_id,
- $courseInfo,
- $sessionId
- );
- }
- $foo_print = grapher($sql_result, $start_date, $end_date, $type);
- echo $foo_print;
- break;
- case 'access_detail_by_date':
- $db = ['is_empty' => true];
- $start_date = isset($_REQUEST['startDate']) ? $_REQUEST['startDate'] : '';
- $end_date = isset($_REQUEST['endDate']) ? $_REQUEST['endDate'] : '';
- $user_id = isset($_REQUEST['student']) ? $_REQUEST['student'] : '';
- $course_code = isset($_REQUEST['course']) ? $_REQUEST['course'] : '';
- $type = isset($_REQUEST['type']) ? $_REQUEST['type'] : '';
- $sessionId = isset($_REQUEST['session_id']) ? $_REQUEST['session_id'] : 0;
- $courseInfo = api_get_course_info($course_code);
- $sql_result = MySpace::get_connections_to_course_by_date(
- $user_id,
- $courseInfo,
- $sessionId,
- $start_date,
- $end_date
- );
- if (is_array($sql_result) && count($sql_result) > 0) {
- $db['is_empty'] = false;
- $db['result'] = convert_to_string($sql_result);
- $rst = get_stats(
- $user_id,
- $courseInfo,
- $sessionId,
- $start_date,
- $end_date
- );
- $foo_stats = '<strong>'.get_lang('Total').': </strong>'.$rst['total'].'<br />';
- $foo_stats .= '<strong>'.get_lang('Average').': </strong>'.$rst['avg'].'<br />';
- $foo_stats .= '<strong>'.get_lang('Quantity').' : </strong>'.$rst['times'].'<br />';
- $db['stats'] = $foo_stats;
- $db['graph_result'] = grapher($sql_result, $start_date, $end_date, $type);
- } else {
- $db['result'] = Display::return_message(
- get_lang('NoDataAvailable'),
- 'warning'
- );
- $db['graph_result'] = Display::return_message(
- get_lang('NoDataAvailable'),
- 'warning'
- );
- $db['stats'] = Display::return_message(
- get_lang('NoDataAvailable'),
- 'warning'
- );
- }
- header('Cache-Control: no-cache');
- echo json_encode($db);
- break;
- }
- exit;
|