@@ 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 | /** |