From 760c6c6b4cfa2be4282acf00fe18b44b704147ce Mon Sep 17 00:00:00 2001 From: Angel Fernando Quiroz Campos Date: Wed, 20 Jun 2018 17:41:09 -0500 Subject: [PATCH 1/3] Fix link to edit session when grid view is enabled - refs BT#14345 --- main/inc/lib/sessionmanager.lib.php | 41 +++++++++++++------ main/inc/lib/userportal.lib.php | 6 +-- .../default/user_portal/grid_session.tpl | 9 ++-- 3 files changed, 35 insertions(+), 21 deletions(-) diff --git a/main/inc/lib/sessionmanager.lib.php b/main/inc/lib/sessionmanager.lib.php index 8381be2053..13f9e46f65 100755 --- a/main/inc/lib/sessionmanager.lib.php +++ b/main/inc/lib/sessionmanager.lib.php @@ -4582,6 +4582,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. * @@ -4592,19 +4619,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/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 %}
{% if course.document == '' %} @@ -145,10 +145,11 @@ {% set collapsable = 'collapse' %} {% endif %} - {% if row.edit_actions != '' %} + {% if row.show_actions %} {% endif %} From bdfb1ca9200ffcd8816027ce449b3bea9f53fba9 Mon Sep 17 00:00:00 2001 From: Angel Fernando Quiroz Campos Date: Fri, 22 Jun 2018 09:38:03 -0500 Subject: [PATCH 2/3] Fix show include files with Redirection plugin is enabled - refs 14345 --- index.php | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) 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 = ' '; From 30095bd57248a5acb10d600341e8dfcd8cfaa994 Mon Sep 17 00:00:00 2001 From: Angel Fernando Quiroz Campos Date: Fri, 22 Jun 2018 09:47:16 -0500 Subject: [PATCH 3/3] Fix 59 seconds to validate survey availability - refs BT#14468 --- main/survey/survey.lib.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) 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',