ON $tbl_session_rel_user.id_user = u.user_id AND $tbl_session_rel_user.id_session = '$id_session' AND $tbl_session_rel_user.relation_type<>".SESSION_RELATION_TYPE_RRHH."
WHERE u.status<>".DRH." $order_clause";
if ($_configuration['multiple_access_urls']==true) {
$sql.= " INNER JOIN $access_url_rel_course_table url_rel_course ON (code=url_rel_course.course_code)";
}
@ -50,7 +50,7 @@ function get_number_of_courses() {
}
// adding the filter to see the user's only of the current access_url
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true&& api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$sql.= " AND url_rel_course.access_url_id=".api_get_current_access_url_id();
}
@ -69,7 +69,7 @@ function get_course_data($from, $number_of_items, $column, $direction)
$sql = "SELECT code AS col0, visual_code AS col1, title AS col2, course_language AS col3, category_code AS col4, subscribe AS col5, unsubscribe AS col6, tutor_name as col7, code AS col8, visibility AS col9,directory as col10 FROM $course_table";
//$sql = "SELECT code AS col0, visual_code AS col1, title AS col2, course_language AS col3, category_code AS col4, subscribe AS col5, unsubscribe AS col6, code AS col7, tutor_name as col8, code AS col9, visibility AS col10,directory as col11 FROM $course_table";
global $_configuration;
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true&& api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
if ($_configuration['multiple_access_urls'] == true){
if ($_configuration['multiple_access_urls']) {
$sql = "SELECT COUNT(*) AS number FROM ".$course_table." as c, ".$access_url_rel_course_table." as u WHERE u.course_code=c.code AND access_url_id='".$current_url_id."'";
if (isset ($category_code)) {
$sql .= " AND category_code = '".Database::escape_string($category_code)."'";
@ -37,13 +37,13 @@ class Statistics {
$sql = "SELECT COUNT(*) AS number FROM ".$course_table." ";
if (isset ($category_code)) {
$sql .= " WHERE category_code = '".Database::escape_string($category_code)."'";
}
}
}
$res = Database::query($sql);
$obj = Database::fetch_object($res);
return $obj->number;
}
/**
* Count users
* @param int optional, user status (COURSEMANAGER or STUDENT), if it's not setted it'll count all users.
if ($_configuration['multiple_access_urls'] == true){
$status_filter = isset($status)?' AND status = '.intval($status):'';
$sql = "SELECT COUNT(DISTINCT(u.user_id)) AS number FROM $user_table as u, $access_url_rel_user_table as url WHERE u.user_id=url.user_id AND access_url_id='".$current_url_id."' $status_filter ";
if ($_configuration['multiple_access_urls']) {
$status_filter = isset($status)?' AND status = '.intval($status):'';
$sql = "SELECT COUNT(DISTINCT(u.user_id)) AS number FROM $user_table as u, $access_url_rel_user_table as url WHERE u.user_id=url.user_id AND access_url_id='".$current_url_id."' $status_filter ";
if (isset ($category_code)) {
$sql = "SELECT COUNT(DISTINCT(cu.user_id)) AS number FROM $course_user_table cu, $course_table c, $access_url_rel_user_table as url WHERE c.code = cu.course_code AND c.category_code = '".Database::escape_string($category_code)."' AND cu.user_id=url.user_id AND access_url_id='".$current_url_id."' $status_filter ";
}
} else {
$status_filter = isset($status)?' WHERE status = '.intval($status):'';
$sql = "SELECT COUNT(DISTINCT(user_id)) AS number FROM $user_table $status_filter ";
} else {
$status_filter = isset($status)?' WHERE status = '.intval($status):'';
$sql = "SELECT COUNT(DISTINCT(user_id)) AS number FROM $user_table $status_filter ";
if (isset ($category_code)) {
$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 WHERE c.code = cu.course_code AND c.category_code = '".Database::escape_string($category_code)."' $status_filter ";
if ($_configuration['multiple_access_urls'] == true){
if ($_configuration['multiple_access_urls']) {
$sql = "SELECT count(default_id) AS total_number_of_items FROM $track_e_default, $table_user user, $access_url_rel_user_table url WHERE default_user_id = user.user_id AND user.user_id=url.user_id AND access_url_id='".$current_url_id."'";
} else {
$sql = "SELECT count(default_id) AS total_number_of_items FROM $track_e_default, $table_user user WHERE default_user_id = user.user_id ";
$sql = "SELECT code,visual_code,title FROM $tbl_course WHERE visual_code LIKE '".$first_letter_course."%' ORDER BY ". (count($courses) > 0 ? "(code IN('".implode("','", $courses)."')) DESC," : "")." visual_code";
if ($_configuration['multiple_access_urls']==true) {
@ -602,10 +602,10 @@ function modify_filter($user_id,$url_params,$row)
}
if ($row[0]<>$_user['user_id'] && $user_is_anonymous == false) {
// you cannot lock yourself out otherwise you could disable all the accounts including your own => everybody is locked out and nobody can change it anymore.
// you cannot lock yourself out otherwise you could disable all the accounts including your own => everybody is locked out and nobody can change it anymore.
if ($_configuration['multiple_access_urls']==true&& api_get_current_access_url_id()!=-1) {
if ($_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$access_url_id = api_get_current_access_url_id();
}
$session_id = api_get_session_id();
@ -136,18 +136,18 @@ function who_is_online($valid, $friends = false) {
} else {
// all users online
//$query = "SELECT login_user_id,login_date FROM ".$track_online_table ." WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' "; //WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."'
$query = "SELECT login_user_id,login_date FROM ".$track_online_table ." e INNER JOIN ".$table_user ." u ON (u.user_id=e.login_user_id) WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' ORDER BY picture_uri DESC";
$query = "SELECT login_user_id,login_date FROM ".$track_online_table ." e INNER JOIN ".$table_user ." u ON (u.user_id=e.login_user_id) WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' ORDER BY picture_uri DESC";
}
/*
//This query will show all registered users. Only for dev purposes.
$query = "SELECT DISTINCT u.user_id as login_user_id, login_date
FROM ".$track_online_table ." e , $table_user u
$query = "SELECT DISTINCT u.user_id as login_user_id, login_date
FROM ".$track_online_table ." e , $table_user u
GROUP by u.user_id ORDER BY picture_uri DESC";
}*/
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
@ -159,12 +159,12 @@ function who_is_online($valid, $friends = false) {
WHERE track.access_url_id = $access_url_id AND DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' AND friend_user_id <> '".api_get_user_id()."' AND relation_type='".USER_RELATION_TYPE_FRIEND."' ";
} else {
// all users online
$query = "SELECT login_user_id,login_date FROM ".$track_online_table ." track INNER JOIN ".$table_user ." u ON (u.user_id=track.login_user_id)
$query = "SELECT login_user_id,login_date FROM ".$track_online_table ." track INNER JOIN ".$table_user ." u ON (u.user_id=track.login_user_id)
WHERE track.access_url_id = $access_url_id AND DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' ORDER BY picture_uri DESC ";
}
}
}
$result = @Database::query($query);
//@todo why we dont believe in db query results?
if (count($result)>0) {
@ -174,9 +174,9 @@ function who_is_online($valid, $friends = false) {
@ -207,23 +207,23 @@ function who_is_online_count($valid, $friends = false) {
$query = '';
if ($friends) {
// who friends from social network is online
$query = "SELECT DISTINCT count(login_user_id) as count
$query = "SELECT DISTINCT count(login_user_id) as count
FROM $track_online_table INNER JOIN $friend_user_table ON (friend_user_id = login_user_id)
WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' AND friend_user_id <> '".api_get_user_id()."' AND relation_type='".USER_RELATION_TYPE_FRIEND."' AND user_id = '".api_get_user_id()."' ";
} else {
// all users online
$query = "SELECT count(login_id) as count FROM ".$track_online_table ." WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' "; //WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."'
$query = "SELECT count(login_id) as count FROM ".$track_online_table ." WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' "; //WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."'
}
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
$query = "SELECT DISTINCT count(login_user_id) as count
FROM $track_online_table track
$query = "SELECT DISTINCT count(login_user_id) as count
FROM $track_online_table track
INNER JOIN $friend_user_table ON (friend_user_id = login_user_id)
WHERE track.access_url_id = $access_url_id AND DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' AND friend_user_id <> '".api_get_user_id()."' AND relation_type='".USER_RELATION_TYPE_FRIEND."' ";
} else {
@ -233,10 +233,10 @@ function who_is_online_count($valid, $friends = false) {
}
}
}
$result = Database::query($query);
if (Database::num_rows($result) > 0) {
$row = Database::fetch_array($result);
return $row['count'];
$result = Database::query($query);
if (Database::num_rows($result) > 0) {
$row = Database::fetch_array($result);
return $row['count'];
} else {
return false;
}
@ -373,10 +373,10 @@ function who_is_online_in_this_course_count($uid, $valid, $coursecode=null)
$query = "SELECT count(login_user_id) as count FROM ".$track_online_table ." WHERE course='".$coursecode."' AND DATE_ADD(login_date,INTERVAL $valid MINUTE) >= NOW() ";
$delete_sql = "DELETE FROM $tbl_session_rel_user WHERE id_session = '$session_id' AND id_user ='$user_id' AND relation_type<>".SESSION_RELATION_TYPE_RRHH."";
Database::query($delete_sql);
$return = Database::affected_rows();
// Update number of users
$update_sql = "UPDATE $tbl_session SET nbr_users= nbr_users - $return WHERE id='$session_id' ";
Database::query($update_sql);
// Get the list of courses related to this session
* Get the session id based on the original id and field name in the extra fields. Returns 0 if session was not found
*
*
* @param string Original session id
* @param string Original field name
* @return int Session id
@ -1179,7 +1179,7 @@ class SessionManager {
$sql_session = "SELECT session_id FROM $table_field sf INNER JOIN $t_sfv sfv ON sfv.field_id=sf.id WHERE field_variable='$original_session_id_name' AND field_value='$original_session_id_value'";
$sql = "UPDATE $table_user SET active = '$active' WHERE user_id = '$user_id';";
Database::query($sql);
}
/**
* Disables a user
*
*
* @param int User id
*/
public static function disable($user_id) {
self::change_active_state($user_id, 0);
}
/**
* Enable a user
*
*
* @param int User id
*/
public static function enable($user_id) {
self::change_active_state($user_id, 1);
}
/**
* Returns the user's id based on the original id and field name in the extra fields. Returns 0 if no user was found
*
*
* @param string Original user id
* @param string Original field name
* @return int User id
@ -428,7 +428,7 @@ class UserManager
$sql = "SELECT user_id FROM $t_uf uf INNER JOIN $t_ufv ufv ON ufv.field_id=uf.id WHERE field_variable='$original_user_id_name' AND field_value='$original_user_id_value';";
$condition_status = ' AND u.status = '.$user_status;
}
$sql = "SELECT u.user_id, u.username, u.lastname, u.firstname, u.email FROM $tbl_user u
INNER JOIN $tbl_user_rel_user uru ON uru.user_id = u.user_id AND friend_user_id = '$hr_dept_id' AND relation_type = '".USER_RELATION_TYPE_RRHH."' $condition_status";
$sql = "SELECT user_id FROM $tbl_user_rel_user WHERE user_id='$user_id' AND friend_user_id='$hr_dept_id' AND relation_type=".USER_RELATION_TYPE_RRHH." ";
$sql='SELECT * FROM '.$tbl_grade_certificate.' WHERE cat_id= (SELECT id FROM '.$tbl_grade_category.' WHERE course_code = "'.Database::escape_string($course_code).'" ) AND user_id="'.Database::escape_string($user_id).'" ';
$sql = "SELECT id_session FROM $tbl_session_course_rel_user WHERE id_session=$session_id AND course_code='$course_code' AND id_user = $user_id AND status=2 ";
} else { // no standard Chamilo login - try external authentification
} else { // no standard Chamilo login - try external authentification
//huh... nothing to do... we shouldn't get here
error_log('Chamilo Authentication file '. $extAuthSource[$uData['auth_source']]['login']. ' could not be found - this might prevent your system from doing the corresponding authentication process',0);
@ -186,13 +186,13 @@ function get_number_of_users() {
if (isset($_REQUEST['type']) && $_REQUEST['type']=='teacher') {
if (api_get_session_id() != 0) {
$sql = "SELECT u.user_id
FROM $user_table u
LEFT JOIN $tbl_session_rel_course_user cu on u.user_id = cu.id_user and course_code='".api_get_course_id()."' AND id_session ='".api_get_session_id()."'
WHERE cu.id_user IS NULL AND u.status=1 AND (u.official_code <> 'ADMIN' OR u.official_code IS NULL) ";
if ($_configuration['multiple_access_urls']==true) {
@ -235,7 +235,7 @@ function get_number_of_users() {
FROM $user_table u
LEFT JOIN $tbl_session_rel_course_user cu on u.user_id = cu.id_user and course_code='".api_get_course_id()."' AND id_session ='".api_get_session_id()."'
WHERE cu.id_user IS NULL AND u.status<>".DRH." AND (u.official_code <> 'ADMIN' OR u.official_code IS NULL) ";
if ($_configuration['multiple_access_urls']==true) {