Fix misplacement of $action variable processing - refs #7275

1.9.x
Yannick Warnier 11 years ago
parent c649ae70cd
commit 099332b6ee
  1. 35
      main/auth/courses.php
  2. 2
      main/auth/courses_controller.php
  3. 20
      main/inc/lib/course_category.lib.php

@ -76,19 +76,34 @@ if (api_is_platform_admin() || api_is_course_admin() || api_is_allowed_to_create
}
// filter actions
$actions = array('sortmycourses', 'createcoursecategory', 'subscribe', 'deletecoursecategory', 'display_courses', 'display_random_courses', 'subscribe_user_with_password', 'display_sessions');
$actions = array(
'sortmycourses',
'createcoursecategory',
'subscribe',
'deletecoursecategory',
'display_courses',
'display_random_courses',
'subscribe_user_with_password',
'display_sessions'
);
$action = CoursesAndSessionsCatalog::is(CATALOG_SESSIONS) ? 'display_sessions' : 'display_random_courses';
$nameTools = getCourseCatalogNametools($action);
if (empty($nameTools)) {
$nameTools = get_lang('CourseManagement');
if (isset($_GET['action']) && in_array($_GET['action'], $actions)) {
$action = Security::remove_XSS($_GET['action']);
} else {
// Nothing to do
}
if (!in_array($action, array('sortmycourses', 'createcoursecategory', 'display_random_courses', 'display_courses', 'subscribe'))) {
$interbreadcrumb[] = array('url' => api_get_path(WEB_CODE_PATH).'auth/courses.php', 'name' => get_lang('CourseManagement'));
}
if ($action == 'createcoursecategory') {
$interbreadcrumb[] = array('url' => api_get_path(WEB_CODE_PATH).'auth/courses.php?action=sortmycourses', 'name' => get_lang('SortMyCourses'));
}
$nameTools = getCourseCatalogNameTools($action);
if (empty($nameTools)) {
$nameTools = get_lang('CourseManagement');
} else {
if (!in_array($action, array('sortmycourses', 'createcoursecategory', 'display_random_courses', 'display_courses', 'subscribe'))) {
$interbreadcrumb[] = array('url' => api_get_path(WEB_CODE_PATH).'auth/courses.php', 'name' => get_lang('CourseManagement'));
}
if ($action == 'createcoursecategory') {
$interbreadcrumb[] = array('url' => api_get_path(WEB_CODE_PATH).'auth/courses.php?action=sortmycourses', 'name' => get_lang('SortMyCourses'));
}
$interbreadcrumb[] = array('url' => '#', 'name' => $nameTools);
}

@ -89,7 +89,7 @@ class CoursesController
{
$data = array();
$browse_course_categories = $this->model->browse_course_categories();
global $_configuration;
$data['countCoursesInCategory'] = $this->model->count_courses_in_category($category_code);

@ -1035,27 +1035,13 @@ function getPageNumberItem($pageNumber, $pageLength, $liAttributes = array(), $c
* @param string $action
* @return string
*/
function getCourseCatalogNametools($action)
function getCourseCatalogNameTools($action)
{
$actions = array(
'sortmycourses',
'createcoursecategory',
'subscribe',
'deletecoursecategory',
'display_courses',
'display_random_courses',
'subscribe_user_with_password',
'display_sessions'
);
$nameTools = get_lang('SortMyCourses');
$nameTools = get_lang('SortMyCourses');
if (empty($action)) {
if (isset($_GET['action']) && in_array($_GET['action'], $actions)) {
$action = Security::remove_XSS($_GET['action']);
} else {
// Nothing to do
}
return $nameTools; //should never happen
}
switch ($action) {

Loading…
Cancel
Save