@@ 5758-5803 (lines=46) @@ | ||
5755 | * @param int $userId The user id |
|
5756 | * @return array |
|
5757 | */ |
|
5758 | public static function getCoursesFollowedByGroupAdmin($userId) |
|
5759 | { |
|
5760 | $coursesList = []; |
|
5761 | ||
5762 | $courseTable = Database::get_main_table(TABLE_MAIN_COURSE); |
|
5763 | $courseUserTable = Database::get_main_table(TABLE_MAIN_COURSE_USER); |
|
5764 | $userGroup = new UserGroup(); |
|
5765 | $userIdList = $userGroup->getGroupUsersByUser($userId); |
|
5766 | ||
5767 | if (empty($userIdList)) { |
|
5768 | return []; |
|
5769 | } |
|
5770 | ||
5771 | $sql = "SELECT DISTINCT(c.id), c.title |
|
5772 | FROM $courseTable c |
|
5773 | INNER JOIN $courseUserTable cru ON c.id = cru.c_id |
|
5774 | WHERE ( |
|
5775 | cru.user_id IN (" . implode(', ', $userIdList) . ") |
|
5776 | AND cru.relation_type = 0 |
|
5777 | )"; |
|
5778 | ||
5779 | if (api_is_multiple_url_enabled()) { |
|
5780 | $courseAccessUrlTable = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE); |
|
5781 | $accessUrlId = api_get_current_access_url_id(); |
|
5782 | ||
5783 | if ($accessUrlId != -1) { |
|
5784 | $sql = "SELECT DISTINCT(c.id), c.title |
|
5785 | FROM $courseTable c |
|
5786 | INNER JOIN $courseUserTable cru ON c.id = cru.c_id |
|
5787 | INNER JOIN $courseAccessUrlTable crau ON c.id = crau.c_id |
|
5788 | WHERE crau.access_url_id = $accessUrlId |
|
5789 | AND ( |
|
5790 | cru.id_user IN (" . implode(', ', $userIdList) . ") AND |
|
5791 | cru.relation_type = 0 |
|
5792 | )"; |
|
5793 | } |
|
5794 | } |
|
5795 | ||
5796 | $result = Database::query($sql); |
|
5797 | ||
5798 | while ($row = Database::fetch_assoc($result)) { |
|
5799 | $coursesList[] = $row; |
|
5800 | } |
|
5801 | ||
5802 | return $coursesList; |
|
5803 | } |
|
5804 | ||
5805 | /** |
|
5806 | * Direct course link see #5299 |
@@ 6800-6845 (lines=46) @@ | ||
6797 | * @param int $userId The user id |
|
6798 | * @return array |
|
6799 | */ |
|
6800 | public static function getSessionsFollowedForGroupAdmin($userId) |
|
6801 | { |
|
6802 | $sessionList = array(); |
|
6803 | $sessionTable = Database::get_main_table(TABLE_MAIN_SESSION); |
|
6804 | $sessionUserTable = Database::get_main_table(TABLE_MAIN_SESSION_USER); |
|
6805 | $userGroup = new UserGroup(); |
|
6806 | $userIdList = $userGroup->getGroupUsersByUser($userId); |
|
6807 | ||
6808 | if (empty($userIdList)) { |
|
6809 | return []; |
|
6810 | } |
|
6811 | ||
6812 | $sql = "SELECT DISTINCT s.* |
|
6813 | FROM $sessionTable s |
|
6814 | INNER JOIN $sessionUserTable sru |
|
6815 | ON s.id = sru.id_session |
|
6816 | WHERE |
|
6817 | (sru.id_user IN (" . implode(', ', $userIdList) . ") |
|
6818 | AND sru.relation_type = 0 |
|
6819 | )"; |
|
6820 | ||
6821 | if (api_is_multiple_url_enabled()) { |
|
6822 | $sessionAccessUrlTable = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_SESSION); |
|
6823 | $accessUrlId = api_get_current_access_url_id(); |
|
6824 | ||
6825 | if ($accessUrlId != -1) { |
|
6826 | $sql = "SELECT DISTINCT s.* |
|
6827 | FROM $sessionTable s |
|
6828 | INNER JOIN $sessionUserTable sru ON s.id = sru.id_session |
|
6829 | INNER JOIN $sessionAccessUrlTable srau ON s.id = srau.session_id |
|
6830 | WHERE |
|
6831 | srau.access_url_id = $accessUrlId |
|
6832 | AND ( |
|
6833 | sru.id_user IN (" . implode(', ', $userIdList) . ") |
|
6834 | AND sru.relation_type = 0 |
|
6835 | )"; |
|
6836 | } |
|
6837 | } |
|
6838 | ||
6839 | $result = Database::query($sql); |
|
6840 | ||
6841 | while ($row = Database::fetch_assoc($result)) { |
|
6842 | $sessionList[] = $row; |
|
6843 | } |
|
6844 | ||
6845 | return $sessionList; |
|
6846 | } |
|
6847 | ||
6848 | /** |