|
|
|
@ -15,7 +15,7 @@ |
|
|
|
|
* @todo display_digest, shouldn't this be removed and be made into an extension? |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
use \ChamiloSession as Session; |
|
|
|
|
use ChamiloSession as Session; |
|
|
|
|
|
|
|
|
|
/* Flag forcing the 'current course' reset, as we're not inside a course anymore */ |
|
|
|
|
$cidReset = true; |
|
|
|
@ -43,14 +43,24 @@ $courseAndSessions = $controller->return_courses_and_sessions($userId); |
|
|
|
|
|
|
|
|
|
// Check if a user is enrolled only in one course for going directly to the course after the login. |
|
|
|
|
if (api_get_setting('go_to_course_after_login') == 'true') { |
|
|
|
|
|
|
|
|
|
$count_of_sessions = $courseAndSessions['session_count']; |
|
|
|
|
$count_of_courses_no_sessions = $courseAndSessions['course_count']; |
|
|
|
|
|
|
|
|
|
// User is subscribe in 1 session and 0 courses. |
|
|
|
|
if ($count_of_sessions == 1 && $count_of_courses_no_sessions == 0) { |
|
|
|
|
$sessions = SessionManager::get_sessions_by_user($userId); |
|
|
|
|
|
|
|
|
|
if (isset($sessions[0])) { |
|
|
|
|
$sessionInfo = $sessions[0]; |
|
|
|
|
// Session only has 1 course. |
|
|
|
|
if (isset($sessionInfo['courses']) && count($sessionInfo['courses']) == 1) { |
|
|
|
|
$courseCode = $sessionInfo['courses'][0]['code']; |
|
|
|
|
$courseInfo = api_get_course_info($courseCode); |
|
|
|
|
$courseUrl = $courseInfo['course_public_url'].'?id_session='.$sessionInfo['session_id']; |
|
|
|
|
header('Location:'.$courseUrl); |
|
|
|
|
exit; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Session has many courses. |
|
|
|
|
if (isset($sessionInfo['session_id'])) { |
|
|
|
|
$url = api_get_path(WEB_CODE_PATH).'session/?session_id='.$sessionInfo['session_id']; |
|
|
|
|
|
|
|
|
@ -60,6 +70,7 @@ if (api_get_setting('go_to_course_after_login') == 'true') { |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// User is subscribed to 1 course. |
|
|
|
|
if (!isset($_SESSION['coursesAlreadyVisited']) && |
|
|
|
|
$count_of_sessions == 0 && $count_of_courses_no_sessions == 1 |
|
|
|
|
) { |
|
|
|
|