Add option to manage the links to Session Index page - refs BT#10195

1.10.x
Angel Fernando Quiroz Campos 10 years ago
parent 1633c222cd
commit 37afe0074a
  1. 7
      main/inc/lib/userportal.lib.php
  2. 5
      main/install/configuration.dist.php
  3. 21
      main/session/index.php

@ -1043,6 +1043,9 @@ class IndexManager
$sessions_with_category = '';
$sessions_with_no_category = '';
$sessionTitleLink = api_get_configuration_value('courses_list_session_title_link');
$sessionTitleLink = $sessionTitleLink === false ? 1 : $sessionTitleLink;
if (is_array($session_categories)) {
foreach ($session_categories as $session_category) {
$session_category_id = $session_category['session_category']['id'];
@ -1147,7 +1150,7 @@ class IndexManager
: null;
$params['extra_fields'] = $session_box['extra_fields'];
$params['show_link_to_session'] = api_is_drh() ? false : true;
$params['show_link_to_session'] = !api_is_drh() && $sessionTitleLink;
$params['title'] = $session_box['title'];
$params['subtitle'] = $extra_info;
$params['show_actions'] = api_is_platform_admin() ? true : false;
@ -1260,7 +1263,7 @@ class IndexManager
if ($count > 0) {
$session_box = Display:: get_session_title_box($session_id);
$sessionParams['id'] = $session_id;
$sessionParams['show_link_to_session'] = !api_is_drh();
$sessionParams['show_link_to_session'] = !api_is_drh() && $sessionTitleLink;
$sessionParams['title'] = $session_box['title'];
$sessionParams['subtitle'] = (!empty($session_box['coach'])
? $session_box['coach'] . ' | '

@ -219,3 +219,8 @@ $_configuration['system_stable'] = NEW_VERSION_STABLE;
//$_configuration['lp_fixed_encoding'] = 'false';
// Fix urls changing http with https in scorm packages.
//$_configuration['lp_replace_http_to_https'] = false;
// Manage the links to Session Index page
// 1 = Default. Works as it is now (default is to link to the special session page)
// 0 = No link (not clickable)
// 2 = Link to the course if there is only one course
//$_configuration['courses_list_session_title_link'] = 1;

@ -239,20 +239,19 @@ if (!api_is_allowed_to_session_edit()) {
$entityManager = Database::getManager();
$session = $entityManager->find('ChamiloCoreBundle:Session', $session_id);
if (!empty($session)) {
$sessionCourses = $session->getCourses();
$sessionTitleLink = api_get_configuration_value('courses_list_session_title_link');
if (count($sessionCourses) === 1) {
$sessionCourse = $sessionCourses[0]->getCourse();
if ($sessionTitleLink == 2 && $session->getNbrCourses() === 1) {
$sessionCourses = $session->getCourses();
$sessionCourse = $sessionCourses[0]->getCourse();
$courseUrl = $sessionCourse->getDirectory() . '/index.php?';
$courseUrl .= http_build_query([
'id_session' => $session->getId()
]);
$courseUrl = $sessionCourse->getDirectory() . '/index.php?';
$courseUrl .= http_build_query([
'id_session' => $session->getId()
]);
header('Location: ' . api_get_path(WEB_COURSE_PATH) . $courseUrl);
exit;
}
header('Location: ' . api_get_path(WEB_COURSE_PATH) . $courseUrl);
exit;
}
Display::display_header(get_lang('Session'));

Loading…
Cancel
Save