| @@ 6736-6781 (lines=46) @@ | ||
| 6733 | * @param int $userId The user id |
|
| 6734 | * @return array |
|
| 6735 | */ |
|
| 6736 | public static function getSessionsFollowedForGroupAdmin($userId) |
|
| 6737 | { |
|
| 6738 | $sessionList = array(); |
|
| 6739 | $sessionTable = Database::get_main_table(TABLE_MAIN_SESSION); |
|
| 6740 | $sessionUserTable = Database::get_main_table(TABLE_MAIN_SESSION_USER); |
|
| 6741 | $userGroup = new UserGroup(); |
|
| 6742 | $userIdList = $userGroup->getGroupUsersByUser($userId); |
|
| 6743 | ||
| 6744 | if (empty($userIdList)) { |
|
| 6745 | return []; |
|
| 6746 | } |
|
| 6747 | ||
| 6748 | $sql = "SELECT DISTINCT s.* |
|
| 6749 | FROM $sessionTable s |
|
| 6750 | INNER JOIN $sessionUserTable sru ON s.id = sru.id_session |
|
| 6751 | WHERE |
|
| 6752 | (sru.id_user IN (" . implode(', ', $userIdList) . ") |
|
| 6753 | AND sru.relation_type = 0 |
|
| 6754 | )"; |
|
| 6755 | ||
| 6756 | if (api_is_multiple_url_enabled()) { |
|
| 6757 | $sessionAccessUrlTable = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_SESSION); |
|
| 6758 | $accessUrlId = api_get_current_access_url_id(); |
|
| 6759 | ||
| 6760 | if ($accessUrlId != -1) { |
|
| 6761 | $sql = "SELECT DISTINCT s.* |
|
| 6762 | FROM $sessionTable s |
|
| 6763 | INNER JOIN $sessionUserTable sru ON s.id = sru.id_session |
|
| 6764 | INNER JOIN $sessionAccessUrlTable srau ON s.id = srau.session_id |
|
| 6765 | WHERE |
|
| 6766 | srau.access_url_id = $accessUrlId |
|
| 6767 | AND ( |
|
| 6768 | sru.id_user IN (" . implode(', ', $userIdList) . ") |
|
| 6769 | AND sru.relation_type = 0 |
|
| 6770 | )"; |
|
| 6771 | } |
|
| 6772 | } |
|
| 6773 | ||
| 6774 | $result = Database::query($sql); |
|
| 6775 | ||
| 6776 | while ($row = Database::fetch_assoc($result)) { |
|
| 6777 | $sessionList[] = $row; |
|
| 6778 | } |
|
| 6779 | ||
| 6780 | return $sessionList; |
|
| 6781 | } |
|
| 6782 | ||
| 6783 | /** |
|
| 6784 | * @param array $sessionInfo |
|
| @@ 5833-5878 (lines=46) @@ | ||
| 5830 | * @param int $userId The user id |
|
| 5831 | * @return array |
|
| 5832 | */ |
|
| 5833 | public static function getCoursesFollowedByGroupAdmin($userId) |
|
| 5834 | { |
|
| 5835 | $coursesList = []; |
|
| 5836 | ||
| 5837 | $courseTable = Database::get_main_table(TABLE_MAIN_COURSE); |
|
| 5838 | $courseUserTable = Database::get_main_table(TABLE_MAIN_COURSE_USER); |
|
| 5839 | $userGroup = new UserGroup(); |
|
| 5840 | $userIdList = $userGroup->getGroupUsersByUser($userId); |
|
| 5841 | ||
| 5842 | if (empty($userIdList)) { |
|
| 5843 | return []; |
|
| 5844 | } |
|
| 5845 | ||
| 5846 | $sql = "SELECT DISTINCT(c.id), c.title |
|
| 5847 | FROM $courseTable c |
|
| 5848 | INNER JOIN $courseUserTable cru ON c.id = cru.c_id |
|
| 5849 | WHERE ( |
|
| 5850 | cru.user_id IN (" . implode(', ', $userIdList) . ") |
|
| 5851 | AND cru.relation_type = 0 |
|
| 5852 | )"; |
|
| 5853 | ||
| 5854 | if (api_is_multiple_url_enabled()) { |
|
| 5855 | $courseAccessUrlTable = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE); |
|
| 5856 | $accessUrlId = api_get_current_access_url_id(); |
|
| 5857 | ||
| 5858 | if ($accessUrlId != -1) { |
|
| 5859 | $sql = "SELECT DISTINCT(c.id), c.title |
|
| 5860 | FROM $courseTable c |
|
| 5861 | INNER JOIN $courseUserTable cru ON c.id = cru.c_id |
|
| 5862 | INNER JOIN $courseAccessUrlTable crau ON c.id = crau.c_id |
|
| 5863 | WHERE crau.access_url_id = $accessUrlId |
|
| 5864 | AND ( |
|
| 5865 | cru.id_user IN (" . implode(', ', $userIdList) . ") AND |
|
| 5866 | cru.relation_type = 0 |
|
| 5867 | )"; |
|
| 5868 | } |
|
| 5869 | } |
|
| 5870 | ||
| 5871 | $result = Database::query($sql); |
|
| 5872 | ||
| 5873 | while ($row = Database::fetch_assoc($result)) { |
|
| 5874 | $coursesList[] = $row; |
|
| 5875 | } |
|
| 5876 | ||
| 5877 | return $coursesList; |
|
| 5878 | } |
|
| 5879 | ||
| 5880 | /** |
|
| 5881 | * Direct course link see #5299 |
|