| @@ 6503-6548 (lines=46) @@ | ||
| 6500 | * @param int $userId The user id |
|
| 6501 | * @return array |
|
| 6502 | */ |
|
| 6503 | public static function getSessionsFollowedForGroupAdmin($userId) |
|
| 6504 | { |
|
| 6505 | $sessionList = array(); |
|
| 6506 | $sessionTable = Database::get_main_table(TABLE_MAIN_SESSION); |
|
| 6507 | $sessionUserTable = Database::get_main_table(TABLE_MAIN_SESSION_USER); |
|
| 6508 | $userGroup = new UserGroup(); |
|
| 6509 | $userIdList = $userGroup->getGroupUsersByUser($userId); |
|
| 6510 | ||
| 6511 | if (empty($userIdList)) { |
|
| 6512 | return []; |
|
| 6513 | } |
|
| 6514 | ||
| 6515 | $sql = "SELECT DISTINCT s.* |
|
| 6516 | FROM $sessionTable s |
|
| 6517 | INNER JOIN $sessionUserTable sru ON s.id = sru.id_session |
|
| 6518 | WHERE |
|
| 6519 | (sru.id_user IN (" . implode(', ', $userIdList) . ") |
|
| 6520 | AND sru.relation_type = 0 |
|
| 6521 | )"; |
|
| 6522 | ||
| 6523 | if (api_is_multiple_url_enabled()) { |
|
| 6524 | $sessionAccessUrlTable = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_SESSION); |
|
| 6525 | $accessUrlId = api_get_current_access_url_id(); |
|
| 6526 | ||
| 6527 | if ($accessUrlId != -1) { |
|
| 6528 | $sql = "SELECT DISTINCT s.* |
|
| 6529 | FROM $sessionTable s |
|
| 6530 | INNER JOIN $sessionUserTable sru ON s.id = sru.id_session |
|
| 6531 | INNER JOIN $sessionAccessUrlTable srau ON s.id = srau.session_id |
|
| 6532 | WHERE |
|
| 6533 | srau.access_url_id = $accessUrlId |
|
| 6534 | AND ( |
|
| 6535 | sru.id_user IN (" . implode(', ', $userIdList) . ") |
|
| 6536 | AND sru.relation_type = 0 |
|
| 6537 | )"; |
|
| 6538 | } |
|
| 6539 | } |
|
| 6540 | ||
| 6541 | $result = Database::query($sql); |
|
| 6542 | ||
| 6543 | while ($row = Database::fetch_assoc($result)) { |
|
| 6544 | $sessionList[] = $row; |
|
| 6545 | } |
|
| 6546 | ||
| 6547 | return $sessionList; |
|
| 6548 | } |
|
| 6549 | ||
| 6550 | /** |
|
| 6551 | * @param array $sessionInfo |
|
| @@ 5540-5585 (lines=46) @@ | ||
| 5537 | * @param int $userId The user id |
|
| 5538 | * @return array |
|
| 5539 | */ |
|
| 5540 | public static function getCoursesFollowedByGroupAdmin($userId) |
|
| 5541 | { |
|
| 5542 | $coursesList = []; |
|
| 5543 | ||
| 5544 | $courseTable = Database::get_main_table(TABLE_MAIN_COURSE); |
|
| 5545 | $courseUserTable = Database::get_main_table(TABLE_MAIN_COURSE_USER); |
|
| 5546 | $userGroup = new UserGroup(); |
|
| 5547 | $userIdList = $userGroup->getGroupUsersByUser($userId); |
|
| 5548 | ||
| 5549 | if (empty($userIdList)) { |
|
| 5550 | return []; |
|
| 5551 | } |
|
| 5552 | ||
| 5553 | $sql = "SELECT DISTINCT(c.id), c.title |
|
| 5554 | FROM $courseTable c |
|
| 5555 | INNER JOIN $courseUserTable cru ON c.id = cru.c_id |
|
| 5556 | WHERE ( |
|
| 5557 | cru.user_id IN (" . implode(', ', $userIdList) . ") |
|
| 5558 | AND cru.relation_type = 0 |
|
| 5559 | )"; |
|
| 5560 | ||
| 5561 | if (api_is_multiple_url_enabled()) { |
|
| 5562 | $courseAccessUrlTable = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE); |
|
| 5563 | $accessUrlId = api_get_current_access_url_id(); |
|
| 5564 | ||
| 5565 | if ($accessUrlId != -1) { |
|
| 5566 | $sql = "SELECT DISTINCT(c.id), c.title |
|
| 5567 | FROM $courseTable c |
|
| 5568 | INNER JOIN $courseUserTable cru ON c.id = cru.c_id |
|
| 5569 | INNER JOIN $courseAccessUrlTable crau ON c.id = crau.c_id |
|
| 5570 | WHERE crau.access_url_id = $accessUrlId |
|
| 5571 | AND ( |
|
| 5572 | cru.id_user IN (" . implode(', ', $userIdList) . ") AND |
|
| 5573 | cru.relation_type = 0 |
|
| 5574 | )"; |
|
| 5575 | } |
|
| 5576 | } |
|
| 5577 | ||
| 5578 | $result = Database::query($sql); |
|
| 5579 | ||
| 5580 | while ($row = Database::fetch_assoc($result)) { |
|
| 5581 | $coursesList[] = $row; |
|
| 5582 | } |
|
| 5583 | ||
| 5584 | return $coursesList; |
|
| 5585 | } |
|
| 5586 | ||
| 5587 | /** |
|
| 5588 | * Direct course link see #5299 |
|