|
|
|
@ -133,8 +133,9 @@ class Statistics |
|
|
|
|
$user_table = Database::get_main_table(TABLE_MAIN_USER); |
|
|
|
|
$access_url_rel_user_table = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER); |
|
|
|
|
$tblCourseCategory = Database::get_main_table(TABLE_MAIN_CATEGORY); |
|
|
|
|
$tblCourseRelCategory = Database::get_main_table(TABLE_MAIN_COURSE_REL_CATEGORY); |
|
|
|
|
$urlId = api_get_current_access_url_id(); |
|
|
|
|
$active_filter = $onlyActive ? ' AND active=1' : ''; |
|
|
|
|
$active_filter = $onlyActive ? ' AND active = 1' : ''; |
|
|
|
|
$status_filter = isset($status) ? ' AND status = '.intval($status) : ''; |
|
|
|
|
|
|
|
|
|
if (api_is_multiple_url_enabled()) { |
|
|
|
@ -142,31 +143,35 @@ class Statistics |
|
|
|
|
FROM $user_table as u, $access_url_rel_user_table as url |
|
|
|
|
WHERE |
|
|
|
|
u.id = url.user_id AND |
|
|
|
|
access_url_id = '".$urlId."' |
|
|
|
|
access_url_id = $urlId |
|
|
|
|
$status_filter $active_filter"; |
|
|
|
|
if (isset($categoryCode)) { |
|
|
|
|
$categoryCode = Database::escape_string($categoryCode); |
|
|
|
|
$sql = "SELECT COUNT(DISTINCT(cu.user_id)) AS number |
|
|
|
|
FROM $course_user_table cu, $course_table c, $access_url_rel_user_table as url |
|
|
|
|
INNER JOIN $tblCourseCategory course_category ON c.category_id = course_category.id |
|
|
|
|
FROM $course_user_table cu, $course_table c, $access_url_rel_user_table as url, $tblCourseRelCategory crc, $tblCourseCategory cc |
|
|
|
|
WHERE |
|
|
|
|
c.id = cu.c_id AND |
|
|
|
|
course_category.code = '".Database::escape_string($categoryCode)."' AND |
|
|
|
|
cc.code = '$categoryCode' AND |
|
|
|
|
crc.course_category_id = cc.id AND |
|
|
|
|
crc.course_id = c.id AND |
|
|
|
|
cu.user_id = url.user_id AND |
|
|
|
|
access_url_id='".$urlId."' |
|
|
|
|
access_url_id = $urlId |
|
|
|
|
$status_filter $active_filter"; |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
$sql = "SELECT COUNT(DISTINCT(id)) AS number |
|
|
|
|
FROM $user_table |
|
|
|
|
WHERE 1=1 $status_filter $active_filter"; |
|
|
|
|
WHERE 1 = 1 $status_filter $active_filter"; |
|
|
|
|
if (isset($categoryCode)) { |
|
|
|
|
$categoryCode = Database::escape_string($categoryCode); |
|
|
|
|
$status_filter = isset($status) ? ' AND status = '.intval($status) : ''; |
|
|
|
|
$sql = "SELECT COUNT(DISTINCT(cu.user_id)) AS number |
|
|
|
|
FROM $course_user_table cu, $course_table c |
|
|
|
|
INNER JOIN $tblCourseCategory course_category ON c.category_id = course_category.id |
|
|
|
|
FROM $course_user_table cu, $course_table c, $tblCourseRelCategory crc, $tblCourseCategory cc |
|
|
|
|
WHERE |
|
|
|
|
c.id = cu.c_id AND |
|
|
|
|
course_category.code = '".Database::escape_string($categoryCode)."' |
|
|
|
|
cc.code = '$categoryCode' AND |
|
|
|
|
crc.course_category_id = cc.id AND |
|
|
|
|
crc.course_id = c.id AND |
|
|
|
|
$status_filter |
|
|
|
|
$active_filter |
|
|
|
|
"; |
|
|
|
|