| @@ 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 |
|
| @@ 6835-6880 (lines=46) @@ | ||
| 6832 | * @param int $userId The user id |
|
| 6833 | * @return array |
|
| 6834 | */ |
|
| 6835 | public static function getSessionsFollowedForGroupAdmin($userId) |
|
| 6836 | { |
|
| 6837 | $sessionList = array(); |
|
| 6838 | $sessionTable = Database::get_main_table(TABLE_MAIN_SESSION); |
|
| 6839 | $sessionUserTable = Database::get_main_table(TABLE_MAIN_SESSION_USER); |
|
| 6840 | $userGroup = new UserGroup(); |
|
| 6841 | $userIdList = $userGroup->getGroupUsersByUser($userId); |
|
| 6842 | ||
| 6843 | if (empty($userIdList)) { |
|
| 6844 | return []; |
|
| 6845 | } |
|
| 6846 | ||
| 6847 | $sql = "SELECT DISTINCT s.* |
|
| 6848 | FROM $sessionTable s |
|
| 6849 | INNER JOIN $sessionUserTable sru |
|
| 6850 | ON s.id = sru.id_session |
|
| 6851 | WHERE |
|
| 6852 | (sru.id_user IN (" . implode(', ', $userIdList) . ") |
|
| 6853 | AND sru.relation_type = 0 |
|
| 6854 | )"; |
|
| 6855 | ||
| 6856 | if (api_is_multiple_url_enabled()) { |
|
| 6857 | $sessionAccessUrlTable = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_SESSION); |
|
| 6858 | $accessUrlId = api_get_current_access_url_id(); |
|
| 6859 | ||
| 6860 | if ($accessUrlId != -1) { |
|
| 6861 | $sql = "SELECT DISTINCT s.* |
|
| 6862 | FROM $sessionTable s |
|
| 6863 | INNER JOIN $sessionUserTable sru ON s.id = sru.id_session |
|
| 6864 | INNER JOIN $sessionAccessUrlTable srau ON s.id = srau.session_id |
|
| 6865 | WHERE |
|
| 6866 | srau.access_url_id = $accessUrlId |
|
| 6867 | AND ( |
|
| 6868 | sru.id_user IN (" . implode(', ', $userIdList) . ") |
|
| 6869 | AND sru.relation_type = 0 |
|
| 6870 | )"; |
|
| 6871 | } |
|
| 6872 | } |
|
| 6873 | ||
| 6874 | $result = Database::query($sql); |
|
| 6875 | ||
| 6876 | while ($row = Database::fetch_assoc($result)) { |
|
| 6877 | $sessionList[] = $row; |
|
| 6878 | } |
|
| 6879 | ||
| 6880 | return $sessionList; |
|
| 6881 | } |
|
| 6882 | ||
| 6883 | /** |
|