|
|
|
|
@ -126,7 +126,7 @@ class CourseManager |
|
|
|
|
return Database::fetch_array( |
|
|
|
|
Database::query( |
|
|
|
|
"SELECT *, id as real_id FROM ".Database::get_main_table(TABLE_MAIN_COURSE)." |
|
|
|
|
WHERE code='".Database::escape_string($course_code)."'" |
|
|
|
|
WHERE code = '".Database::escape_string($course_code)."'" |
|
|
|
|
), |
|
|
|
|
'ASSOC' |
|
|
|
|
); |
|
|
|
|
@ -183,7 +183,7 @@ class CourseManager |
|
|
|
|
|
|
|
|
|
if (!empty($urlId)) { |
|
|
|
|
$urlId = intval($urlId); |
|
|
|
|
$sql .= " AND access_url_id= $urlId"; |
|
|
|
|
$sql .= " AND access_url_id = $urlId"; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$allowedFields = [ |
|
|
|
|
@ -285,7 +285,7 @@ class CourseManager |
|
|
|
|
{ |
|
|
|
|
$sql = "SELECT * FROM ".Database::get_main_table(TABLE_MAIN_COURSE_USER)." |
|
|
|
|
WHERE |
|
|
|
|
c_id = '".intval($courseId)."' AND |
|
|
|
|
c_id = ".intval($courseId)." AND |
|
|
|
|
user_id = ".intval($userId); |
|
|
|
|
$result = Database::fetch_array(Database::query($sql)); |
|
|
|
|
|
|
|
|
|
@ -308,8 +308,8 @@ class CourseManager |
|
|
|
|
|
|
|
|
|
$sql = "UPDATE $table SET is_tutor = '".$isTutor."' |
|
|
|
|
WHERE |
|
|
|
|
user_id = '".$userId."' AND |
|
|
|
|
c_id = '".$courseId."'"; |
|
|
|
|
user_id = ".$userId." AND |
|
|
|
|
c_id = ".$courseId; |
|
|
|
|
|
|
|
|
|
$result = Database::query($sql); |
|
|
|
|
|
|
|
|
|
@ -321,21 +321,22 @@ class CourseManager |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @param int $user_id |
|
|
|
|
* @param int $userId |
|
|
|
|
* @param int $courseId |
|
|
|
|
* |
|
|
|
|
* @return mixed |
|
|
|
|
*/ |
|
|
|
|
public static function get_tutor_in_course_status($user_id, $courseId) |
|
|
|
|
public static function get_tutor_in_course_status($userId, $courseId) |
|
|
|
|
{ |
|
|
|
|
$userId = intval($userId); |
|
|
|
|
$courseId = intval($courseId); |
|
|
|
|
$result = Database::fetch_array( |
|
|
|
|
Database::query( |
|
|
|
|
" |
|
|
|
|
SELECT is_tutor |
|
|
|
|
"SELECT is_tutor |
|
|
|
|
FROM ".Database::get_main_table(TABLE_MAIN_COURSE_USER)." |
|
|
|
|
WHERE |
|
|
|
|
c_id = '".Database::escape_string($courseId)."' AND |
|
|
|
|
user_id = ".intval($user_id) |
|
|
|
|
c_id = $courseId AND |
|
|
|
|
user_id = $userId" |
|
|
|
|
) |
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
@ -419,20 +420,20 @@ class CourseManager |
|
|
|
|
|
|
|
|
|
// Unsubscribe user from all blogs in the course. |
|
|
|
|
$sql = "DELETE FROM ".Database::get_course_table(TABLE_BLOGS_REL_USER)." |
|
|
|
|
WHERE c_id = $course_id AND user_id IN (".$user_ids.")"; |
|
|
|
|
WHERE c_id = $course_id AND user_id IN ($user_ids)"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
|
|
|
|
|
$sql = "DELETE FROM ".Database::get_course_table(TABLE_BLOGS_TASKS_REL_USER)." |
|
|
|
|
WHERE c_id = $course_id AND user_id IN (".$user_ids.")"; |
|
|
|
|
WHERE c_id = $course_id AND user_id IN ($user_ids)"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
|
|
|
|
|
// Deleting users in forum_notification and mailqueue course tables |
|
|
|
|
$sql = "DELETE FROM ".Database::get_course_table(TABLE_FORUM_NOTIFICATION)." |
|
|
|
|
WHERE c_id = $course_id AND user_id IN (".$user_ids.")"; |
|
|
|
|
WHERE c_id = $course_id AND user_id IN ($user_ids)"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
|
|
|
|
|
$sql = "DELETE FROM ".Database::get_course_table(TABLE_FORUM_MAIL_QUEUE)." |
|
|
|
|
WHERE c_id = $course_id AND user_id IN (".$user_ids.")"; |
|
|
|
|
WHERE c_id = $course_id AND user_id IN ($user_ids)"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
|
|
|
|
|
// Unsubscribe user from the course. |
|
|
|
|
@ -440,24 +441,24 @@ class CourseManager |
|
|
|
|
// Delete in table session_rel_course_rel_user |
|
|
|
|
$sql = "DELETE FROM ".Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER)." |
|
|
|
|
WHERE |
|
|
|
|
session_id ='".$session_id."' AND |
|
|
|
|
c_id = '".$course_id."' AND |
|
|
|
|
session_id = $session_id AND |
|
|
|
|
c_id = $course_id AND |
|
|
|
|
user_id IN ($user_ids)"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
|
|
|
|
|
foreach ($userList as $uid) { |
|
|
|
|
// check if a user is register in the session with other course |
|
|
|
|
$sql = "SELECT user_id FROM ".Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER)." |
|
|
|
|
WHERE session_id='$session_id' AND user_id='$uid'"; |
|
|
|
|
WHERE session_id = $session_id AND user_id = $uid"; |
|
|
|
|
$rs = Database::query($sql); |
|
|
|
|
|
|
|
|
|
if (Database::num_rows($rs) == 0) { |
|
|
|
|
// Delete in table session_rel_user |
|
|
|
|
$sql = "DELETE FROM ".Database::get_main_table(TABLE_MAIN_SESSION_USER)." |
|
|
|
|
WHERE |
|
|
|
|
session_id ='".$session_id."' AND |
|
|
|
|
user_id = '$uid' AND |
|
|
|
|
relation_type<>".SESSION_RELATION_TYPE_RRHH.""; |
|
|
|
|
session_id = $session_id AND |
|
|
|
|
user_id = $uid AND |
|
|
|
|
relation_type<>".SESSION_RELATION_TYPE_RRHH; |
|
|
|
|
Database::query($sql); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
@ -468,20 +469,20 @@ class CourseManager |
|
|
|
|
$row = Database::fetch_array(Database::query($sql)); |
|
|
|
|
$count = $row[0]; |
|
|
|
|
// number of users by session |
|
|
|
|
$sql = "UPDATE ".Database::get_main_table(TABLE_MAIN_SESSION)." SET nbr_users = '$count' |
|
|
|
|
WHERE id = '".$session_id."'"; |
|
|
|
|
$sql = "UPDATE ".Database::get_main_table(TABLE_MAIN_SESSION)." SET nbr_users = $count |
|
|
|
|
WHERE id = $session_id"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
|
|
|
|
|
// Update the table session_rel_course |
|
|
|
|
$sql = "SELECT COUNT(*) FROM ".Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER)." |
|
|
|
|
WHERE session_id = '$session_id' AND c_id = '$course_id' AND status<>2"; |
|
|
|
|
WHERE session_id = $session_id AND c_id = $course_id AND status <> 2"; |
|
|
|
|
$row = Database::fetch_array(@Database::query($sql)); |
|
|
|
|
$count = $row[0]; |
|
|
|
|
|
|
|
|
|
// number of users by session and course |
|
|
|
|
$sql = "UPDATE ".Database::get_main_table(TABLE_MAIN_SESSION_COURSE)." |
|
|
|
|
SET nbr_users = '$count' |
|
|
|
|
WHERE session_id = '$session_id' AND c_id = '$course_id'"; |
|
|
|
|
SET nbr_users = $count |
|
|
|
|
WHERE session_id = $session_id AND c_id = $course_id"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
|
|
|
|
|
Event::addEvent( |
|
|
|
|
@ -496,9 +497,9 @@ class CourseManager |
|
|
|
|
} else { |
|
|
|
|
$sql = "DELETE FROM ".Database::get_main_table(TABLE_MAIN_COURSE_USER)." |
|
|
|
|
WHERE |
|
|
|
|
user_id IN (".$user_ids.") AND |
|
|
|
|
user_id IN ($user_ids) AND |
|
|
|
|
relation_type <> ".COURSE_RELATION_TYPE_RRHH." AND |
|
|
|
|
c_id = '".$course_id."'"; |
|
|
|
|
c_id = $course_id"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
|
|
|
|
|
// add event to system log |
|
|
|
|
@ -573,7 +574,7 @@ class CourseManager |
|
|
|
|
|
|
|
|
|
// A preliminary check whether the user has bben already registered on the platform. |
|
|
|
|
$sql = "SELECT status FROM ".Database::get_main_table(TABLE_MAIN_USER)." |
|
|
|
|
WHERE user_id = '$user_id' "; |
|
|
|
|
WHERE user_id = $user_id"; |
|
|
|
|
if (Database::num_rows(Database::query($sql)) == 0) { |
|
|
|
|
return false; // The user has not been registered to the platform. |
|
|
|
|
} |
|
|
|
|
@ -581,7 +582,7 @@ class CourseManager |
|
|
|
|
// Check whether the user has not been already subscribed to the course. |
|
|
|
|
$sql = "SELECT * FROM ".Database::get_main_table(TABLE_MAIN_COURSE_USER)." |
|
|
|
|
WHERE |
|
|
|
|
user_id = '$user_id' AND |
|
|
|
|
user_id = $user_id AND |
|
|
|
|
relation_type <> ".COURSE_RELATION_TYPE_RRHH." AND |
|
|
|
|
c_id = $courseId |
|
|
|
|
"; |
|
|
|
|
@ -701,7 +702,7 @@ class CourseManager |
|
|
|
|
{ |
|
|
|
|
$table = Database::get_main_table(TABLE_MAIN_COURSE); |
|
|
|
|
$id = intval($id); |
|
|
|
|
$sql = "SELECT code FROM $table WHERE id = '$id' "; |
|
|
|
|
$sql = "SELECT code FROM $table WHERE id = $id "; |
|
|
|
|
$res = Database::query($sql); |
|
|
|
|
$row = Database::fetch_object($res); |
|
|
|
|
if ($row) { |
|
|
|
|
@ -747,7 +748,7 @@ class CourseManager |
|
|
|
|
$courseId = $courseInfo['real_id']; |
|
|
|
|
|
|
|
|
|
// Check in advance whether the user has already been registered on the platform. |
|
|
|
|
$sql = "SELECT status FROM ".$user_table." WHERE user_id = $user_id "; |
|
|
|
|
$sql = "SELECT status FROM $user_table WHERE user_id = $user_id "; |
|
|
|
|
if (Database::num_rows(Database::query($sql)) == 0) { |
|
|
|
|
if ($debug) { |
|
|
|
|
error_log('The user has not been registered to the platform'); |
|
|
|
|
@ -891,7 +892,7 @@ class CourseManager |
|
|
|
|
$sql = "SELECT * FROM $courseUserTable |
|
|
|
|
WHERE |
|
|
|
|
user_id = $userId AND |
|
|
|
|
visible = ".$visible." AND |
|
|
|
|
visible = $visible AND |
|
|
|
|
c_id = $courseId"; |
|
|
|
|
if (Database::num_rows(Database::query($sql)) > 0) { |
|
|
|
|
$cond = [ |
|
|
|
|
@ -954,8 +955,8 @@ class CourseManager |
|
|
|
|
INNER JOIN $tbl_course as course |
|
|
|
|
ON course.id = course_rel_user.c_id |
|
|
|
|
WHERE |
|
|
|
|
course_rel_user.user_id='$user_id' AND |
|
|
|
|
course_rel_user.status='1' |
|
|
|
|
course_rel_user.user_id = $user_id AND |
|
|
|
|
course_rel_user.status = 1 |
|
|
|
|
"; |
|
|
|
|
|
|
|
|
|
if (api_get_multiple_access_url()) { |
|
|
|
|
@ -975,8 +976,8 @@ class CourseManager |
|
|
|
|
ON (course_rel_url.c_id = course.id) |
|
|
|
|
WHERE |
|
|
|
|
access_url_id = $access_url_id AND |
|
|
|
|
course_rel_user.user_id = '$user_id' AND |
|
|
|
|
course_rel_user.status = '1' |
|
|
|
|
course_rel_user.user_id = $user_id AND |
|
|
|
|
course_rel_user.status = 1 |
|
|
|
|
"; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
@ -1092,7 +1093,7 @@ class CourseManager |
|
|
|
|
return true; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$sql = 'SELECT 1 FROM '.$tableSessionCourseUser.' WHERE user_id = '.$user_id.' AND status=2 '.$condition_course; |
|
|
|
|
$sql = 'SELECT 1 FROM '.$tableSessionCourseUser.' WHERE user_id = '.$user_id.' AND status = 2 '.$condition_course; |
|
|
|
|
if (Database::num_rows(Database::query($sql)) > 0) { |
|
|
|
|
return true; |
|
|
|
|
} |
|
|
|
|
@ -1164,9 +1165,9 @@ class CourseManager |
|
|
|
|
LEFT JOIN ".Database::get_main_table(TABLE_MAIN_COURSE_USER)." course_user |
|
|
|
|
ON course.id = course_user.c_id |
|
|
|
|
WHERE |
|
|
|
|
course_user.user_id = '$user_id' AND |
|
|
|
|
course_user.user_id = $user_id AND |
|
|
|
|
course_user.relation_type<>".COURSE_RELATION_TYPE_RRHH." AND |
|
|
|
|
( course.id = '$courseId')" |
|
|
|
|
( course.id = $courseId)" |
|
|
|
|
) |
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
@ -1178,8 +1179,8 @@ class CourseManager |
|
|
|
|
// A user? |
|
|
|
|
if (Database::num_rows(Database::query("SELECT user_id |
|
|
|
|
FROM ".Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER)." |
|
|
|
|
WHERE session_id='".$session_id."' |
|
|
|
|
AND user_id ='$user_id'")) |
|
|
|
|
WHERE session_id = $session_id |
|
|
|
|
AND user_id = $user_id")) |
|
|
|
|
) { |
|
|
|
|
return true; |
|
|
|
|
} |
|
|
|
|
@ -1187,9 +1188,9 @@ class CourseManager |
|
|
|
|
// A course coach? |
|
|
|
|
if (Database::num_rows(Database::query("SELECT user_id |
|
|
|
|
FROM ".Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER)." |
|
|
|
|
WHERE session_id='".$session_id."' |
|
|
|
|
AND user_id = '$user_id' AND status = 2 |
|
|
|
|
AND c_id = '$courseId'")) |
|
|
|
|
WHERE session_id = $session_id |
|
|
|
|
AND user_id = $user_id AND status = 2 |
|
|
|
|
AND c_id = $courseId")) |
|
|
|
|
) { |
|
|
|
|
return true; |
|
|
|
|
} |
|
|
|
|
@ -1197,8 +1198,8 @@ class CourseManager |
|
|
|
|
// A session coach? |
|
|
|
|
if (Database::num_rows(Database::query("SELECT id_coach |
|
|
|
|
FROM ".Database::get_main_table(TABLE_MAIN_SESSION)." AS session |
|
|
|
|
WHERE session.id='".$session_id."' |
|
|
|
|
AND id_coach = '$user_id'")) |
|
|
|
|
WHERE session.id = $session_id |
|
|
|
|
AND id_coach = $user_id")) |
|
|
|
|
) { |
|
|
|
|
return true; |
|
|
|
|
} |
|
|
|
|
@ -1710,7 +1711,7 @@ class CourseManager |
|
|
|
|
|
|
|
|
|
// We get the coach for the given course in a given session. |
|
|
|
|
$sql = 'SELECT user_id FROM '.Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER). |
|
|
|
|
' WHERE session_id ="'.$session_id.'" AND c_id="'.$courseId.'" AND status = 2'; |
|
|
|
|
' WHERE session_id = '.$session_id.' AND c_id = '.$courseId.' AND status = 2'; |
|
|
|
|
$rs = Database::query($sql); |
|
|
|
|
while ($user = Database::fetch_array($rs)) { |
|
|
|
|
$userInfo = api_get_user_info($user['user_id']); |
|
|
|
|
@ -1722,7 +1723,7 @@ class CourseManager |
|
|
|
|
if ($addGeneralCoach) { |
|
|
|
|
$table = Database::get_main_table(TABLE_MAIN_SESSION); |
|
|
|
|
// We get the session coach. |
|
|
|
|
$sql = 'SELECT id_coach FROM '.$table.' WHERE id='.$session_id; |
|
|
|
|
$sql = "SELECT id_coach FROM $table WHERE id = $session_id"; |
|
|
|
|
$rs = Database::query($sql); |
|
|
|
|
$session_id_coach = Database::result($rs, 0, 'id_coach'); |
|
|
|
|
$userInfo = api_get_user_info($session_id_coach); |
|
|
|
|
@ -1805,7 +1806,7 @@ class CourseManager |
|
|
|
|
FROM ".Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER)." scu |
|
|
|
|
$joinSession |
|
|
|
|
INNER JOIN $userTable u ON scu.user_id = u.user_id |
|
|
|
|
WHERE scu.c_id = '$courseId' AND scu.status <> 2"; |
|
|
|
|
WHERE scu.c_id = $courseId AND scu.status <> 2"; |
|
|
|
|
|
|
|
|
|
if (!empty($date_from) && !empty($date_to)) { |
|
|
|
|
$date_from = Database::escape_string($date_from); |
|
|
|
|
@ -2014,8 +2015,8 @@ class CourseManager |
|
|
|
|
INNER JOIN $tbl_session_course_user scu |
|
|
|
|
ON (u.user_id = scu.user_id) |
|
|
|
|
WHERE |
|
|
|
|
scu.session_id = '$session_id' AND |
|
|
|
|
scu.c_id = '$courseId' AND |
|
|
|
|
scu.session_id = $session_id AND |
|
|
|
|
scu.c_id = $courseId AND |
|
|
|
|
scu.status = 2"; |
|
|
|
|
$rs = Database::query($sql); |
|
|
|
|
|
|
|
|
|
@ -2192,10 +2193,10 @@ class CourseManager |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$sql = "SELECT * FROM $table_course |
|
|
|
|
WHERE code = '".$codeFiltered."'"; |
|
|
|
|
WHERE code = '$codeFiltered'"; |
|
|
|
|
$res = Database::query($sql); |
|
|
|
|
$course = Database::fetch_array($res); |
|
|
|
|
$courseId = $course['id']; |
|
|
|
|
$courseId = $course['id']; //int |
|
|
|
|
|
|
|
|
|
$count = 0; |
|
|
|
|
if (api_is_multiple_url_enabled()) { |
|
|
|
|
@ -2245,27 +2246,27 @@ class CourseManager |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Unsubscribe all users from the course |
|
|
|
|
$sql = "DELETE FROM $table_course_user WHERE c_id='".$courseId."'"; |
|
|
|
|
$sql = "DELETE FROM $table_course_user WHERE c_id = $courseId"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
// Delete the course from the sessions tables |
|
|
|
|
$sql = "DELETE FROM $table_session_course WHERE c_id='".$courseId."'"; |
|
|
|
|
$sql = "DELETE FROM $table_session_course WHERE c_id = $courseId"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
$sql = "DELETE FROM $table_session_course_user WHERE c_id='".$courseId."'"; |
|
|
|
|
$sql = "DELETE FROM $table_session_course_user WHERE c_id = $courseId"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
|
|
|
|
|
// Delete from Course - URL |
|
|
|
|
$sql = "DELETE FROM $table_course_rel_url WHERE c_id = '".$courseId."'"; |
|
|
|
|
$sql = "DELETE FROM $table_course_rel_url WHERE c_id = $courseId"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
|
|
|
|
|
$sql = 'SELECT survey_id FROM '.$table_course_survey.' WHERE course_code="'.$codeFiltered.'"'; |
|
|
|
|
$sql = "SELECT survey_id FROM $table_course_survey WHERE course_code = '$codeFiltered'"; |
|
|
|
|
$result_surveys = Database::query($sql); |
|
|
|
|
while ($surveys = Database::fetch_array($result_surveys)) { |
|
|
|
|
$survey_id = $surveys[0]; |
|
|
|
|
$sql = 'DELETE FROM '.$table_course_survey_question.' WHERE survey_id="'.$survey_id.'"'; |
|
|
|
|
$survey_id = $surveys[0]; //int |
|
|
|
|
$sql = "DELETE FROM $table_course_survey_question WHERE survey_id = $survey_id"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
$sql = 'DELETE FROM '.$table_course_survey_question_option.' WHERE survey_id="'.$survey_id.'"'; |
|
|
|
|
$sql = "DELETE FROM $table_course_survey_question_option WHERE survey_id = $survey_id"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
$sql = 'DELETE FROM '.$table_course_survey.' WHERE survey_id="'.$survey_id.'"'; |
|
|
|
|
$sql = "DELETE FROM $table_course_survey WHERE survey_id = $survey_id"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -2314,7 +2315,7 @@ class CourseManager |
|
|
|
|
Database::query($sql); |
|
|
|
|
|
|
|
|
|
// Delete the course from the database |
|
|
|
|
$sql = "DELETE FROM $table_course WHERE code = '".$codeFiltered."'"; |
|
|
|
|
$sql = "DELETE FROM $table_course WHERE code = '$codeFiltered'"; |
|
|
|
|
Database::query($sql); |
|
|
|
|
|
|
|
|
|
// delete extra course fields |
|
|
|
|
@ -2402,18 +2403,18 @@ class CourseManager |
|
|
|
|
|
|
|
|
|
$course_title = Database::result( |
|
|
|
|
Database::query( |
|
|
|
|
'SELECT title FROM '.$TABLECOURSE.' WHERE code="'.$course_code.'"' |
|
|
|
|
"SELECT title FROM $TABLECOURSE WHERE code = '$course_code'" |
|
|
|
|
), |
|
|
|
|
0, |
|
|
|
|
0 |
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
$sql = 'SELECT course.code as code, course.title as title, cu.sort as sort |
|
|
|
|
FROM '.$TABLECOURSUSER.' as cu, '.$TABLECOURSE.' as course |
|
|
|
|
WHERE course.id = cu.c_id AND user_id = "'.$user_id.'" AND |
|
|
|
|
cu.relation_type<>'.COURSE_RELATION_TYPE_RRHH.' AND |
|
|
|
|
$sql = "SELECT course.code as code, course.title as title, cu.sort as sort |
|
|
|
|
FROM $TABLECOURSUSER as cu, $TABLECOURSE as course |
|
|
|
|
WHERE course.id = cu.c_id AND user_id = $user_id AND |
|
|
|
|
cu.relation_type <> ".COURSE_RELATION_TYPE_RRHH." AND |
|
|
|
|
user_course_cat = 0 |
|
|
|
|
ORDER BY cu.sort'; |
|
|
|
|
ORDER BY cu.sort"; |
|
|
|
|
$result = Database::query($sql); |
|
|
|
|
|
|
|
|
|
$course_title_precedent = ''; |
|
|
|
|
@ -2430,21 +2431,21 @@ class CourseManager |
|
|
|
|
$course_found = true; |
|
|
|
|
$course_sort = $courses['sort']; |
|
|
|
|
if ($counter == 0) { |
|
|
|
|
$sql = 'UPDATE '.$TABLECOURSUSER.' |
|
|
|
|
$sql = "UPDATE $TABLECOURSUSER |
|
|
|
|
SET sort = sort+1 |
|
|
|
|
WHERE |
|
|
|
|
user_id= "'.$user_id.'" AND |
|
|
|
|
relation_type<>'.COURSE_RELATION_TYPE_RRHH.' |
|
|
|
|
AND user_course_cat="0" |
|
|
|
|
AND sort > "'.$course_sort.'"'; |
|
|
|
|
user_id= $user_id AND |
|
|
|
|
relation_type <> ".COURSE_RELATION_TYPE_RRHH." |
|
|
|
|
AND user_course_cat = 0 |
|
|
|
|
AND sort > $course_sort"; |
|
|
|
|
$course_sort++; |
|
|
|
|
} else { |
|
|
|
|
$sql = 'UPDATE '.$TABLECOURSUSER.' SET sort = sort+1 |
|
|
|
|
$sql = "UPDATE $TABLECOURSUSER SET sort = sort+1 |
|
|
|
|
WHERE |
|
|
|
|
user_id= "'.$user_id.'" AND |
|
|
|
|
relation_type<>'.COURSE_RELATION_TYPE_RRHH.' AND |
|
|
|
|
user_course_cat="0" AND |
|
|
|
|
sort >= "'.$course_sort.'"'; |
|
|
|
|
user_id= $user_id AND |
|
|
|
|
relation_type <> ".COURSE_RELATION_TYPE_RRHH." AND |
|
|
|
|
user_course_cat = 0 AND |
|
|
|
|
sort >= $course_sort"; |
|
|
|
|
} |
|
|
|
|
Database::query($sql); |
|
|
|
|
break; |
|
|
|
|
@ -2463,7 +2464,7 @@ class CourseManager |
|
|
|
|
0, |
|
|
|
|
0 |
|
|
|
|
); |
|
|
|
|
Database::query('UPDATE '.$TABLECOURSUSER.' SET sort = sort+1 WHERE user_id= "'.$user_id.'" AND user_course_cat="0"'); |
|
|
|
|
Database::query("UPDATE $TABLECOURSUSER SET sort = sort+1 WHERE user_id= $user_id AND user_course_cat = 0"); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -2473,14 +2474,15 @@ class CourseManager |
|
|
|
|
/** |
|
|
|
|
* check if course exists. |
|
|
|
|
* |
|
|
|
|
* @param string $course_code |
|
|
|
|
* @param string $courseCode |
|
|
|
|
* |
|
|
|
|
* @return int if exists, false else |
|
|
|
|
*/ |
|
|
|
|
public static function course_exists($course_code) |
|
|
|
|
public static function course_exists($courseCode) |
|
|
|
|
{ |
|
|
|
|
$sql = 'SELECT 1 FROM '.Database::get_main_table(TABLE_MAIN_COURSE).' |
|
|
|
|
WHERE code="'.Database::escape_string($course_code).'"'; |
|
|
|
|
$courseCode = Database::escape_string($courseCode); |
|
|
|
|
$sql = "SELECT 1 FROM ".Database::get_main_table(TABLE_MAIN_COURSE)." |
|
|
|
|
WHERE code = '$courseCode'"; |
|
|
|
|
|
|
|
|
|
return Database::num_rows(Database::query($sql)); |
|
|
|
|
} |
|
|
|
|
@ -2508,15 +2510,15 @@ class CourseManager |
|
|
|
|
|
|
|
|
|
$name_course = $information['title']; |
|
|
|
|
$sql = "SELECT * FROM ".Database::get_main_table(TABLE_MAIN_COURSE_USER)." |
|
|
|
|
WHERE c_id ='".$courseId."'"; |
|
|
|
|
WHERE c_id = $courseId"; |
|
|
|
|
|
|
|
|
|
// TODO: Ivan: This is a mistake, please, have a look at it. Intention here is diffcult to be guessed. |
|
|
|
|
//if ($send_to_tutor_also = true) |
|
|
|
|
// Proposed change: |
|
|
|
|
if ($send_to_tutor_also) { |
|
|
|
|
$sql .= " AND is_tutor=1"; |
|
|
|
|
$sql .= " AND is_tutor = 1"; |
|
|
|
|
} else { |
|
|
|
|
$sql .= " AND status=1"; |
|
|
|
|
$sql .= " AND status = 1"; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$result = Database::query($sql); |
|
|
|
|
@ -2603,7 +2605,7 @@ class CourseManager |
|
|
|
|
WHERE |
|
|
|
|
tcf.extra_field_type = $extraFieldType AND |
|
|
|
|
tcf.variable = 'special_course' AND |
|
|
|
|
tcfv.value = 1 $where_access_url"; |
|
|
|
|
tcfv.value = 1 $where_access_url"; |
|
|
|
|
|
|
|
|
|
$result = Database::query($sql); |
|
|
|
|
$courseList = []; |
|
|
|
|
@ -2889,11 +2891,17 @@ class CourseManager |
|
|
|
|
public static function get_emails_of_tutors_to_course($courseId) |
|
|
|
|
{ |
|
|
|
|
$list = []; |
|
|
|
|
$res = Database::query("SELECT user_id FROM ".Database::get_main_table(TABLE_MAIN_COURSE_USER)." |
|
|
|
|
WHERE c_id ='".intval($courseId)."' AND status=1"); |
|
|
|
|
$courseId = intval($courseId); |
|
|
|
|
$res = Database::query( |
|
|
|
|
"SELECT user_id |
|
|
|
|
FROM ".Database::get_main_table(TABLE_MAIN_COURSE_USER)." |
|
|
|
|
WHERE c_id = $courseId AND status = 1" |
|
|
|
|
); |
|
|
|
|
while ($list_users = Database::fetch_array($res)) { |
|
|
|
|
$result = Database::query("SELECT * FROM ".Database::get_main_table(TABLE_MAIN_USER)." |
|
|
|
|
WHERE user_id=".$list_users['user_id']); |
|
|
|
|
$result = Database::query( |
|
|
|
|
"SELECT * FROM ".Database::get_main_table(TABLE_MAIN_USER)." |
|
|
|
|
WHERE user_id = ".$list_users['user_id'] |
|
|
|
|
); |
|
|
|
|
while ($row_user = Database::fetch_array($result)) { |
|
|
|
|
$name_teacher = api_get_person_name($row_user['firstname'], $row_user['lastname']); |
|
|
|
|
$list[] = [$row_user['email'] => $name_teacher]; |
|
|
|
|
@ -2925,8 +2933,8 @@ class CourseManager |
|
|
|
|
$sql = "SELECT user_id |
|
|
|
|
FROM $tbl_session_course_user |
|
|
|
|
WHERE |
|
|
|
|
session_id = '$session_id' AND |
|
|
|
|
c_id = '$courseId' AND |
|
|
|
|
session_id = $session_id AND |
|
|
|
|
c_id = $courseId AND |
|
|
|
|
status = 2 |
|
|
|
|
"; |
|
|
|
|
$rs = Database::query($sql); |
|
|
|
|
@ -2992,7 +3000,7 @@ class CourseManager |
|
|
|
|
$id = (int) $id; |
|
|
|
|
$table = Database::get_main_table(TABLE_MAIN_COURSE); |
|
|
|
|
$sql = "UPDATE $table SET $name = '".Database::escape_string($value)."' |
|
|
|
|
WHERE id = '$id'"; |
|
|
|
|
WHERE id = $id"; |
|
|
|
|
|
|
|
|
|
return Database::query($sql); |
|
|
|
|
} |
|
|
|
|
@ -3021,7 +3029,7 @@ class CourseManager |
|
|
|
|
$i++; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
$sql .= " WHERE id = '$id'"; |
|
|
|
|
$sql .= " WHERE id = $id"; |
|
|
|
|
|
|
|
|
|
return Database::query($sql); |
|
|
|
|
} |
|
|
|
|
@ -3051,21 +3059,21 @@ class CourseManager |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @param int $session_id |
|
|
|
|
* @param int $sessionId |
|
|
|
|
* |
|
|
|
|
* @return mixed |
|
|
|
|
*/ |
|
|
|
|
public static function get_session_category_id_by_session_id($session_id) |
|
|
|
|
public static function get_session_category_id_by_session_id($sessionId) |
|
|
|
|
{ |
|
|
|
|
if (empty($session_id)) { |
|
|
|
|
return []; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$sessionId = intval($sessionId); |
|
|
|
|
$sql = 'SELECT sc.id session_category |
|
|
|
|
FROM '.Database::get_main_table(TABLE_MAIN_SESSION_CATEGORY).' sc |
|
|
|
|
INNER JOIN '.Database::get_main_table(TABLE_MAIN_SESSION).' s |
|
|
|
|
ON sc.id = s.session_category_id |
|
|
|
|
WHERE s.id="'.intval($session_id).'"'; |
|
|
|
|
WHERE s.id = '.$sessionId; |
|
|
|
|
|
|
|
|
|
return Database::result( |
|
|
|
|
Database::query($sql), |
|
|
|
|
@ -3189,20 +3197,20 @@ class CourseManager |
|
|
|
|
ON (a.c_id = s.c_id) |
|
|
|
|
WHERE |
|
|
|
|
user_id = $hr_manager_id AND |
|
|
|
|
relation_type=".COURSE_RELATION_TYPE_RRHH." AND |
|
|
|
|
access_url_id = ".api_get_current_access_url_id().""; |
|
|
|
|
relation_type = ".COURSE_RELATION_TYPE_RRHH." AND |
|
|
|
|
access_url_id = ".api_get_current_access_url_id(); |
|
|
|
|
} else { |
|
|
|
|
$sql = "SELECT c_id FROM $tbl_course_rel_user |
|
|
|
|
WHERE user_id = $hr_manager_id AND relation_type=".COURSE_RELATION_TYPE_RRHH." "; |
|
|
|
|
WHERE user_id = $hr_manager_id AND relation_type = ".COURSE_RELATION_TYPE_RRHH; |
|
|
|
|
} |
|
|
|
|
$result = Database::query($sql); |
|
|
|
|
if (Database::num_rows($result) > 0) { |
|
|
|
|
while ($row = Database::fetch_array($result)) { |
|
|
|
|
$sql = "DELETE FROM $tbl_course_rel_user |
|
|
|
|
WHERE |
|
|
|
|
c_id = '{$row['c_id']}' AND |
|
|
|
|
c_id = {$row['c_id']} AND |
|
|
|
|
user_id = $hr_manager_id AND |
|
|
|
|
relation_type=".COURSE_RELATION_TYPE_RRHH." "; |
|
|
|
|
relation_type = ".COURSE_RELATION_TYPE_RRHH; |
|
|
|
|
Database::query($sql); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
@ -3213,7 +3221,7 @@ class CourseManager |
|
|
|
|
$courseInfo = api_get_course_info($course_code); |
|
|
|
|
$courseId = $courseInfo['real_id']; |
|
|
|
|
$sql = "INSERT IGNORE INTO $tbl_course_rel_user(c_id, user_id, status, relation_type) |
|
|
|
|
VALUES($courseId, $hr_manager_id, '".DRH."', '".COURSE_RELATION_TYPE_RRHH."')"; |
|
|
|
|
VALUES($courseId, $hr_manager_id, ".DRH.", ".COURSE_RELATION_TYPE_RRHH.")"; |
|
|
|
|
$result = Database::query($sql); |
|
|
|
|
if (Database::affected_rows($result)) { |
|
|
|
|
$affected_rows++; |
|
|
|
|
@ -3300,7 +3308,7 @@ class CourseManager |
|
|
|
|
$whereConditions = ''; |
|
|
|
|
switch ($status) { |
|
|
|
|
case COURSEMANAGER: |
|
|
|
|
$whereConditions .= " AND cru.user_id = '$user_id'"; |
|
|
|
|
$whereConditions .= " AND cru.user_id = $user_id"; |
|
|
|
|
if (!$showAllAssignedCourses) { |
|
|
|
|
$whereConditions .= " AND cru.status = ".COURSEMANAGER; |
|
|
|
|
} else { |
|
|
|
|
@ -3309,7 +3317,7 @@ class CourseManager |
|
|
|
|
break; |
|
|
|
|
case DRH: |
|
|
|
|
$whereConditions .= " AND |
|
|
|
|
cru.user_id = '$user_id' AND |
|
|
|
|
cru.user_id = $user_id AND |
|
|
|
|
cru.status = ".DRH." AND |
|
|
|
|
relation_type = '".COURSE_RELATION_TYPE_RRHH."' |
|
|
|
|
"; |
|
|
|
|
@ -4008,14 +4016,14 @@ class CourseManager |
|
|
|
|
INNER JOIN $TABLE_ACCESS_URL_REL_COURSE url |
|
|
|
|
ON (url.c_id = course.id) |
|
|
|
|
WHERE |
|
|
|
|
course_rel_user.user_id = '".$user_id."' AND |
|
|
|
|
course_rel_user.user_course_cat = '".$user_category_id."' |
|
|
|
|
course_rel_user.user_id = $user_id AND |
|
|
|
|
course_rel_user.user_course_cat = $user_category_id |
|
|
|
|
$without_special_courses "; |
|
|
|
|
|
|
|
|
|
// If multiple URL access mode is enabled, only fetch courses |
|
|
|
|
// corresponding to the current URL. |
|
|
|
|
if (api_get_multiple_access_url() && $current_url_id != -1) { |
|
|
|
|
$sql .= " AND url.c_id = course.id AND access_url_id='".$current_url_id."'"; |
|
|
|
|
$sql .= " AND url.c_id = course.id AND access_url_id = $current_url_id "; |
|
|
|
|
} |
|
|
|
|
// Use user's classification for courses (if any). |
|
|
|
|
$sql .= " ORDER BY course_rel_user.user_course_cat, course_rel_user.sort ASC"; |
|
|
|
|
@ -4152,7 +4160,7 @@ class CourseManager |
|
|
|
|
LEFT JOIN $tblUserCategory ucc |
|
|
|
|
ON cru.user_course_cat = ucc.id |
|
|
|
|
WHERE |
|
|
|
|
cru.user_id = $userId AND c_id= $courseId "; |
|
|
|
|
cru.user_id = $userId AND c_id = $courseId "; |
|
|
|
|
|
|
|
|
|
$res = Database::query($sql); |
|
|
|
|
|
|
|
|
|
@ -4963,7 +4971,7 @@ class CourseManager |
|
|
|
|
$table_course_access = Database::get_main_table(TABLE_STATISTIC_TRACK_E_COURSE_ACCESS); |
|
|
|
|
$table_course = Database::get_main_table(TABLE_MAIN_COURSE); |
|
|
|
|
$table_course_url = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE); |
|
|
|
|
|
|
|
|
|
$urlId = api_get_current_access_url_id(); |
|
|
|
|
//$table_course_access table uses the now() and interval ... |
|
|
|
|
$now = api_get_utc_datetime(); |
|
|
|
|
$sql = "SELECT COUNT(course_access_id) course_count, a.c_id, visibility |
|
|
|
|
@ -4973,10 +4981,11 @@ class CourseManager |
|
|
|
|
INNER JOIN $table_course_url u |
|
|
|
|
ON u.c_id = c.id |
|
|
|
|
WHERE |
|
|
|
|
u.access_url_id = ".api_get_current_access_url_id()." AND |
|
|
|
|
u.access_url_id = $urlId AND |
|
|
|
|
login_course_date <= '$now' AND |
|
|
|
|
login_course_date > DATE_SUB('$now', INTERVAL $days DAY) AND |
|
|
|
|
visibility <> '".COURSE_VISIBILITY_CLOSED."' AND visibility <> '".COURSE_VISIBILITY_HIDDEN."' |
|
|
|
|
visibility <> ".COURSE_VISIBILITY_CLOSED." AND |
|
|
|
|
visibility <> ".COURSE_VISIBILITY_HIDDEN." |
|
|
|
|
GROUP BY a.c_id |
|
|
|
|
ORDER BY course_count DESC |
|
|
|
|
LIMIT $limit |
|
|
|
|
@ -5395,8 +5404,8 @@ class CourseManager |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Recover user categories |
|
|
|
|
$sql = 'SELECT * FROM '.$course_user_table.' |
|
|
|
|
WHERE c_id ="'.$courseId.'" AND status="1" AND relation_type = 0 '.$cond; |
|
|
|
|
$sql = "SELECT * FROM $course_user_table |
|
|
|
|
WHERE c_id = $courseId AND status = 1 AND relation_type = 0 ".$cond; |
|
|
|
|
$result = Database::query($sql); |
|
|
|
|
if (Database::num_rows($result)) { |
|
|
|
|
$teachersToDelete = Database::store_result($result, 'ASSOC'); |
|
|
|
|
@ -5406,8 +5415,8 @@ class CourseManager |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$sql = 'DELETE FROM '.$course_user_table.' |
|
|
|
|
WHERE c_id ="'.$courseId.'" AND status="1" AND relation_type = 0 '.$cond; |
|
|
|
|
$sql = "DELETE FROM $course_user_table |
|
|
|
|
WHERE c_id = $courseId AND status = 1 AND relation_type = 0 ".$cond; |
|
|
|
|
|
|
|
|
|
Database::query($sql); |
|
|
|
|
} |
|
|
|
|
@ -5416,13 +5425,13 @@ class CourseManager |
|
|
|
|
foreach ($teachers as $userId) { |
|
|
|
|
$userId = intval($userId); |
|
|
|
|
// We check if the teacher is already subscribed in this course |
|
|
|
|
$sql = 'SELECT 1 FROM '.$course_user_table.' |
|
|
|
|
WHERE user_id = "'.$userId.'" AND c_id = "'.$courseId.'" '; |
|
|
|
|
$sql = "SELECT 1 FROM $course_user_table |
|
|
|
|
WHERE user_id = $userId AND c_id = $courseId"; |
|
|
|
|
$result = Database::query($sql); |
|
|
|
|
if (Database::num_rows($result)) { |
|
|
|
|
$sql = 'UPDATE '.$course_user_table.' |
|
|
|
|
SET status = "1" |
|
|
|
|
WHERE c_id = "'.$courseId.'" AND user_id = "'.$userId.'" '; |
|
|
|
|
$sql = "UPDATE $course_user_table |
|
|
|
|
SET status = 1 |
|
|
|
|
WHERE c_id = $courseId AND user_id = $userId "; |
|
|
|
|
} else { |
|
|
|
|
$userCourseCategory = '0'; |
|
|
|
|
if (isset($teacherBackup[$userId]) && |
|
|
|
|
@ -5438,11 +5447,11 @@ class CourseManager |
|
|
|
|
$sql = "INSERT INTO $course_user_table SET |
|
|
|
|
c_id = $courseId, |
|
|
|
|
user_id = $userId, |
|
|
|
|
status = '1', |
|
|
|
|
is_tutor = '0', |
|
|
|
|
sort = '0', |
|
|
|
|
relation_type = '0', |
|
|
|
|
user_course_cat = '$userCourseCategory' |
|
|
|
|
status = 1, |
|
|
|
|
is_tutor = 0, |
|
|
|
|
sort = 0, |
|
|
|
|
relation_type = 0, |
|
|
|
|
user_course_cat = $userCourseCategory |
|
|
|
|
"; |
|
|
|
|
} |
|
|
|
|
Database::query($sql); |
|
|
|
|
@ -5836,9 +5845,10 @@ class CourseManager |
|
|
|
|
public static function getCourseNameFromCode($code) |
|
|
|
|
{ |
|
|
|
|
$tbl_main_categories = Database::get_main_table(TABLE_MAIN_COURSE); |
|
|
|
|
$sql = 'SELECT title |
|
|
|
|
FROM '.$tbl_main_categories.' |
|
|
|
|
WHERE code = "'.Database::escape_string($code).'"'; |
|
|
|
|
$code = Database::escape_string($code); |
|
|
|
|
$sql = "SELECT title |
|
|
|
|
FROM $tbl_main_categories |
|
|
|
|
WHERE code = '$code'"; |
|
|
|
|
$result = Database::query($sql); |
|
|
|
|
if ($col = Database::fetch_array($result)) { |
|
|
|
|
return $col['title']; |
|
|
|
|
@ -6117,8 +6127,11 @@ class CourseManager |
|
|
|
|
{ |
|
|
|
|
$category_id = intval($category_id); |
|
|
|
|
$info = Database::fetch_array( |
|
|
|
|
Database::query('SELECT course_code FROM '.Database::get_main_table(TABLE_MAIN_GRADEBOOK_CATEGORY).' |
|
|
|
|
WHERE id='.$category_id), |
|
|
|
|
Database::query( |
|
|
|
|
'SELECT course_code |
|
|
|
|
FROM '.Database::get_main_table(TABLE_MAIN_GRADEBOOK_CATEGORY).' |
|
|
|
|
WHERE id = '.$category_id |
|
|
|
|
), |
|
|
|
|
'ASSOC' |
|
|
|
|
); |
|
|
|
|
|
|
|
|
|
@ -6220,12 +6233,15 @@ class CourseManager |
|
|
|
|
* http://chamilodev.beeznest.com/main/auth/inscription.php?c=ABC&e=3 |
|
|
|
|
* Where "c" is the course code and "e" is the exercise Id, after a successful |
|
|
|
|
* registration the user will be sent to the course or exercise |
|
|
|
|
* |
|
|
|
|
* @param array $form_data |
|
|
|
|
* @return array |
|
|
|
|
*/ |
|
|
|
|
public static function redirectToCourse($form_data) |
|
|
|
|
{ |
|
|
|
|
$course_code_redirect = Session::read('course_redirect'); |
|
|
|
|
$_user = api_get_user_info(); |
|
|
|
|
$user_id = api_get_user_id(); |
|
|
|
|
$userId = api_get_user_id(); |
|
|
|
|
|
|
|
|
|
if (!empty($course_code_redirect)) { |
|
|
|
|
$course_info = api_get_course_info($course_code_redirect); |
|
|
|
|
@ -6235,7 +6251,7 @@ class CourseManager |
|
|
|
|
[COURSE_VISIBILITY_OPEN_PLATFORM, COURSE_VISIBILITY_OPEN_WORLD] |
|
|
|
|
) |
|
|
|
|
) { |
|
|
|
|
if (self::is_user_subscribed_in_course($user_id, $course_info['code'])) { |
|
|
|
|
if (self::is_user_subscribed_in_course($userId, $course_info['code'])) { |
|
|
|
|
$form_data['action'] = $course_info['course_public_url']; |
|
|
|
|
$form_data['message'] = sprintf(get_lang('YouHaveBeenRegisteredToCourseX'), $course_info['title']); |
|
|
|
|
$form_data['button'] = Display::button( |
|
|
|
|
@ -6285,7 +6301,8 @@ class CourseManager |
|
|
|
|
*/ |
|
|
|
|
public static function getCourseParamsForDisplay($courseId, $loadDirs = false) |
|
|
|
|
{ |
|
|
|
|
$user_id = api_get_user_id(); |
|
|
|
|
$userId = api_get_user_id(); |
|
|
|
|
$courseId = intval($courseId); |
|
|
|
|
// Table definitions |
|
|
|
|
$TABLECOURS = Database::get_main_table(TABLE_MAIN_COURSE); |
|
|
|
|
$TABLECOURSUSER = Database::get_main_table(TABLE_MAIN_COURSE_USER); |
|
|
|
|
@ -6317,15 +6334,15 @@ class CourseManager |
|
|
|
|
INNER JOIN $TABLE_ACCESS_URL_REL_COURSE url |
|
|
|
|
ON (url.c_id = course.id) |
|
|
|
|
WHERE |
|
|
|
|
course.id=".intval($courseId)." AND |
|
|
|
|
course_rel_user.user_id = ".intval($user_id)." |
|
|
|
|
course.id = $courseId AND |
|
|
|
|
course_rel_user.user_id = $userId |
|
|
|
|
$without_special_courses |
|
|
|
|
"; |
|
|
|
|
|
|
|
|
|
// If multiple URL access mode is enabled, only fetch courses |
|
|
|
|
// corresponding to the current URL. |
|
|
|
|
if (api_get_multiple_access_url() && $current_url_id != -1) { |
|
|
|
|
$sql .= " AND url.c_id = course.id AND access_url_id=".intval($current_url_id); |
|
|
|
|
$sql .= " AND url.c_id = course.id AND access_url_id = $current_url_id"; |
|
|
|
|
} |
|
|
|
|
// Use user's classification for courses (if any). |
|
|
|
|
$sql .= " ORDER BY course_rel_user.user_course_cat, course_rel_user.sort ASC"; |
|
|
|
|
|