diff --git a/index.php b/index.php index fbd0296b1a..f74a423e97 100755 --- a/index.php +++ b/index.php @@ -14,17 +14,15 @@ define('CHAMILO_LOAD_WYSIWYG', false); $cidReset = true; require_once 'main/inc/global.inc.php'; -$allow = api_get_configuration_value('plugin_redirection_enabled'); -if ($allow) { - RedirectionPlugin::redirectUser(api_get_user_id()); -} - // The section (for the tabs). $this_section = SECTION_CAMPUS; //rewritten below if including HTML file $includeFile = !empty($_GET['include']); if ($includeFile) { $this_section = SECTION_INCLUDE; +} elseif (api_get_configuration_value('plugin_redirection_enabled')) { + RedirectionPlugin::redirectUser(api_get_user_id()); } + $header_title = null; if (!api_is_anonymous()) { $header_title = ' '; diff --git a/main/inc/lib/sessionmanager.lib.php b/main/inc/lib/sessionmanager.lib.php index 978d838a87..550be22b4a 100755 --- a/main/inc/lib/sessionmanager.lib.php +++ b/main/inc/lib/sessionmanager.lib.php @@ -4593,6 +4593,33 @@ SQL; return $count; } + /** + * @param int $id + * @param bool $checkSession + * + * @return bool + */ + public static function cantEditSession($id, $checkSession = true) + { + if (!self::allowToManageSessions()) { + return false; + } + + if (api_is_platform_admin() && self::allowed($id)) { + return true; + } + + if ($checkSession) { + if (self::allowed($id)) { + return true; + } + + return false; + } + + return true; + } + /** * Protect a session to be edited. * @@ -4603,19 +4630,7 @@ SQL; */ public static function protectSession($id, $checkSession = true) { - if (self::allowToManageSessions()) { - if (api_is_platform_admin() && self::allowed($id)) { - return true; - } - - if ($checkSession) { - if (self::allowed($id)) { - return true; - } else { - api_not_allowed(true); - } - } - } else { + if (!self::cantEditSession($id, $checkSession)) { api_not_allowed(true); } } diff --git a/main/inc/lib/userportal.lib.php b/main/inc/lib/userportal.lib.php index 5853a99434..bef7e70a3d 100755 --- a/main/inc/lib/userportal.lib.php +++ b/main/inc/lib/userportal.lib.php @@ -1529,8 +1529,6 @@ class IndexManager 'id' => $session_id, ]; $session_box = Display::getSessionTitleBox($session_id); - $actions = api_get_path(WEB_CODE_PATH). - 'session/resume_session.php?id_session='.$session_id; $coachId = $session_box['id_coach']; $extraFieldValue = new ExtraFieldValue('session'); $imageField = $extraFieldValue->get_values_by_handler_and_field_variable( @@ -1552,7 +1550,7 @@ class IndexManager $params['date'] = $session_box['dates']; $params['image'] = isset($imageField['value']) ? $imageField['value'] : null; $params['duration'] = isset($session_box['duration']) ? ' '.$session_box['duration'] : null; - $params['edit_actions'] = $actions; + $params['show_actions'] = SessionManager::cantEditSession($session_id); $params['show_description'] = $session_box['show_description'] == 1 && $portalShowDescription; $params['description'] = $session_box['description']; $params['visibility'] = $session_box['visibility']; @@ -1687,7 +1685,7 @@ class IndexManager $sessionParams[0]['course_list_session_style'] = $coursesListSessionStyle; $sessionParams[0]['title'] = $session_box['title']; $sessionParams[0]['subtitle'] = (!empty($session_box['coach']) ? $session_box['coach'].' | ' : '').$session_box['dates']; - $sessionParams[0]['show_actions'] = api_is_platform_admin(); + $sessionParams[0]['show_actions'] = SessionManager::cantEditSession($session_id); $sessionParams[0]['courses'] = $html_courses_session; $sessionParams[0]['show_simple_session_info'] = $showSimpleSessionInfo; $sessionParams[0]['coach_name'] = !empty($session_box['coach']) ? $session_box['coach'] : null; diff --git a/main/survey/survey.lib.php b/main/survey/survey.lib.php index 7b6e28491d..a68e7d8e5c 100755 --- a/main/survey/survey.lib.php +++ b/main/survey/survey.lib.php @@ -340,10 +340,10 @@ class SurveyManager 'author' => $_user['user_id'], 'lang' => $values['survey_language'], 'avail_from' => $allowSurveyAvailabilityDatetime - ? api_get_utc_datetime($values['start_date']) + ? api_get_utc_datetime($values['start_date'].':00') : $values['start_date'], 'avail_till' => $allowSurveyAvailabilityDatetime - ? api_get_utc_datetime($values['end_date']) + ? api_get_utc_datetime($values['end_date'].':59') : $values['end_date'], 'is_shared' => $shared_survey_id, 'template' => 'template', @@ -450,10 +450,10 @@ class SurveyManager 'author' => $_user['user_id'], 'lang' => $values['survey_language'], 'avail_from' => $allowSurveyAvailabilityDatetime - ? api_get_utc_datetime($values['start_date']) + ? api_get_utc_datetime($values['start_date'].':00') : $values['start_date'], 'avail_till' => $allowSurveyAvailabilityDatetime - ? api_get_utc_datetime($values['end_date']) + ? api_get_utc_datetime($values['end_date'].':59') : $values['end_date'], 'is_shared' => $shared_survey_id, 'template' => 'template', diff --git a/main/template/default/user_portal/grid_session.tpl b/main/template/default/user_portal/grid_session.tpl index 20f92bc8a7..2b78897fc6 100644 --- a/main/template/default/user_portal/grid_session.tpl +++ b/main/template/default/user_portal/grid_session.tpl @@ -9,7 +9,7 @@ {{ course.category }}
{% endif %} - {% if course.edit_actions != '' %} + {% if course.edit_actions %}