@@ 5775-5820 (lines=46) @@ | ||
5772 | * @param int $userId The user id |
|
5773 | * @return array |
|
5774 | */ |
|
5775 | public static function getCoursesFollowedByGroupAdmin($userId) |
|
5776 | { |
|
5777 | $coursesList = []; |
|
5778 | ||
5779 | $courseTable = Database::get_main_table(TABLE_MAIN_COURSE); |
|
5780 | $courseUserTable = Database::get_main_table(TABLE_MAIN_COURSE_USER); |
|
5781 | $userGroup = new UserGroup(); |
|
5782 | $userIdList = $userGroup->getGroupUsersByUser($userId); |
|
5783 | ||
5784 | if (empty($userIdList)) { |
|
5785 | return []; |
|
5786 | } |
|
5787 | ||
5788 | $sql = "SELECT DISTINCT(c.id), c.title |
|
5789 | FROM $courseTable c |
|
5790 | INNER JOIN $courseUserTable cru ON c.id = cru.c_id |
|
5791 | WHERE ( |
|
5792 | cru.user_id IN (" . implode(', ', $userIdList) . ") |
|
5793 | AND cru.relation_type = 0 |
|
5794 | )"; |
|
5795 | ||
5796 | if (api_is_multiple_url_enabled()) { |
|
5797 | $courseAccessUrlTable = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE); |
|
5798 | $accessUrlId = api_get_current_access_url_id(); |
|
5799 | ||
5800 | if ($accessUrlId != -1) { |
|
5801 | $sql = "SELECT DISTINCT(c.id), c.title |
|
5802 | FROM $courseTable c |
|
5803 | INNER JOIN $courseUserTable cru ON c.id = cru.c_id |
|
5804 | INNER JOIN $courseAccessUrlTable crau ON c.id = crau.c_id |
|
5805 | WHERE crau.access_url_id = $accessUrlId |
|
5806 | AND ( |
|
5807 | cru.id_user IN (" . implode(', ', $userIdList) . ") AND |
|
5808 | cru.relation_type = 0 |
|
5809 | )"; |
|
5810 | } |
|
5811 | } |
|
5812 | ||
5813 | $result = Database::query($sql); |
|
5814 | ||
5815 | while ($row = Database::fetch_assoc($result)) { |
|
5816 | $coursesList[] = $row; |
|
5817 | } |
|
5818 | ||
5819 | return $coursesList; |
|
5820 | } |
|
5821 | ||
5822 | /** |
|
5823 | * Direct course link see #5299 |
@@ 6854-6899 (lines=46) @@ | ||
6851 | * @param int $userId The user id |
|
6852 | * @return array |
|
6853 | */ |
|
6854 | public static function getSessionsFollowedForGroupAdmin($userId) |
|
6855 | { |
|
6856 | $sessionList = array(); |
|
6857 | $sessionTable = Database::get_main_table(TABLE_MAIN_SESSION); |
|
6858 | $sessionUserTable = Database::get_main_table(TABLE_MAIN_SESSION_USER); |
|
6859 | $userGroup = new UserGroup(); |
|
6860 | $userIdList = $userGroup->getGroupUsersByUser($userId); |
|
6861 | ||
6862 | if (empty($userIdList)) { |
|
6863 | return []; |
|
6864 | } |
|
6865 | ||
6866 | $sql = "SELECT DISTINCT s.* |
|
6867 | FROM $sessionTable s |
|
6868 | INNER JOIN $sessionUserTable sru |
|
6869 | ON s.id = sru.id_session |
|
6870 | WHERE |
|
6871 | (sru.id_user IN (" . implode(', ', $userIdList) . ") |
|
6872 | AND sru.relation_type = 0 |
|
6873 | )"; |
|
6874 | ||
6875 | if (api_is_multiple_url_enabled()) { |
|
6876 | $sessionAccessUrlTable = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_SESSION); |
|
6877 | $accessUrlId = api_get_current_access_url_id(); |
|
6878 | ||
6879 | if ($accessUrlId != -1) { |
|
6880 | $sql = "SELECT DISTINCT s.* |
|
6881 | FROM $sessionTable s |
|
6882 | INNER JOIN $sessionUserTable sru ON s.id = sru.id_session |
|
6883 | INNER JOIN $sessionAccessUrlTable srau ON s.id = srau.session_id |
|
6884 | WHERE |
|
6885 | srau.access_url_id = $accessUrlId |
|
6886 | AND ( |
|
6887 | sru.id_user IN (" . implode(', ', $userIdList) . ") |
|
6888 | AND sru.relation_type = 0 |
|
6889 | )"; |
|
6890 | } |
|
6891 | } |
|
6892 | ||
6893 | $result = Database::query($sql); |
|
6894 | ||
6895 | while ($row = Database::fetch_assoc($result)) { |
|
6896 | $sessionList[] = $row; |
|
6897 | } |
|
6898 | ||
6899 | return $sessionList; |
|
6900 | } |
|
6901 | ||
6902 | /** |