diff --git a/main/inc/lib/sessionmanager.lib.php b/main/inc/lib/sessionmanager.lib.php index 1db1bcbad4b..d240d40d766 100755 --- a/main/inc/lib/sessionmanager.lib.php +++ b/main/inc/lib/sessionmanager.lib.php @@ -8079,16 +8079,31 @@ public static function setForm(FormValidator $form, array $sessionInfo = []) $form->addElement('checkbox', 'show_description', null, get_lang('ShowDescription')); + $visibilityOptions = [ + SESSION_VISIBLE_READ_ONLY => get_lang('SessionReadOnly'), + SESSION_VISIBLE => get_lang('SessionAccessible'), + SESSION_INVISIBLE => api_ucfirst(get_lang('SessionNotAccessible')), + ]; + + $visibilityOptionsConfiguration = api_get_configuration_value('session_visibility_after_end_date_options_configuration'); + if (!empty($visibilityOptionsConfiguration)) { + foreach ($visibilityOptionsConfiguration['visibility_options_to_hide'] as $option) { + $option = trim($option); + if (defined($option)) { + $constantValue = constant($option); + if (isset($visibilityOptions[$constantValue])) { + unset($visibilityOptions[$constantValue]); + } + } + } + } + $visibilityGroup = []; $visibilityGroup[] = $form->createElement( 'select', 'session_visibility', null, - [ - SESSION_VISIBLE_READ_ONLY => get_lang('SessionReadOnly'), - SESSION_VISIBLE => get_lang('SessionAccessible'), - SESSION_INVISIBLE => api_ucfirst(get_lang('SessionNotAccessible')), - ] + $visibilityOptions ); $form->addGroup( $visibilityGroup, diff --git a/main/install/configuration.dist.php b/main/install/configuration.dist.php index 7430bfb450b..748b626d6fb 100644 --- a/main/install/configuration.dist.php +++ b/main/install/configuration.dist.php @@ -2375,6 +2375,14 @@ // they are only accessible during the active duration). //$_configuration['session_coach_access_after_duration_end'] = false; +// Hide visibility options for session visibility after end date +// admitsive options: SESSION_VISIBLE_READ_ONLY, SESSION_VISIBLE, SESSION_INVISIBLE +/*$_configuration['session_visibility_after_end_date_options_configuration'] = [ + 'visibility_options_to_hide' => [ + 'SESSION_VISIBLE_READ_ONLY ' + ] +];*/ + // Restrict the list of students to subscribe in the course session. And disable // registration for users in all courses from Resume Session page //$_configuration['session_course_users_subscription_limited_to_session_users'] = false;