diff --git a/main/auth/courses_categories.php b/main/auth/courses_categories.php
index ea1b3d5db6..066d9d437c 100755
--- a/main/auth/courses_categories.php
+++ b/main/auth/courses_categories.php
@@ -20,19 +20,17 @@ $action = in_array($action, $actions) ? $action : 'display_courses';
$showCourses = CoursesAndSessionsCatalog::showCourses();
$showSessions = CoursesAndSessionsCatalog::showSessions();
-$pageCurrent = isset($pageCurrent) ? $pageCurrent : isset($_GET['pageCurrent']) ? intval($_GET['pageCurrent']) : 1;
-$pageLength = isset($pageLength) ? $pageLength : isset($_GET['pageLength']) ? intval($_GET['pageLength']) : CoursesAndSessionsCatalog::PAGE_LENGTH;
-$pageTotal = intval(ceil(intval($countCoursesInCategory) / $pageLength));
+$pageCurrent = isset($pageCurrent) ? $pageCurrent : isset($_GET['pageCurrent']) ? (int) $_GET['pageCurrent'] : 1;
+$pageLength = isset($pageLength) ? $pageLength : isset($_GET['pageLength']) ? (int) $_GET['pageLength'] : CoursesAndSessionsCatalog::PAGE_LENGTH;
+$pageTotal = (int) ceil((int) $countCoursesInCategory / $pageLength);
$cataloguePagination = $pageTotal > 1 ? CourseCategory::getCatalogPagination($pageCurrent, $pageLength, $pageTotal) : '';
$searchTerm = isset($_REQUEST['search_term']) ? Security::remove_XSS($_REQUEST['search_term']) : '';
$codeType = isset($_REQUEST['category_code']) ? Security::remove_XSS($_REQUEST['category_code']) : '';
+$date = date('Y-m-d');
if ($showSessions && isset($_POST['date'])) {
$date = $_POST['date'];
-} else {
- $date = date('Y-m-d');
}
-
$userInfo = api_get_user_info();
$code = isset($code) ? $code : null;
@@ -69,223 +67,220 @@ $code = isset($code) ? $code : null;
} ?>
});
-
+
-
+
'.get_lang('CourseManagement').'
-
-
-
-
-';
+
+if ($showCourses) {
+ echo '
';
+ if (!isset($_GET['hidden_links']) || intval($_GET['hidden_links']) != 1) { ?>
+
+ ';
+ echo '
';
+
+ $categoriesSelect = '';
+ $cacheAvailable = api_get_configuration_value('apc');
+ $accessUrlId = api_get_current_access_url_id();
+ if ($cacheAvailable === true) {
+ $apcVar = api_get_configuration_value('apc_prefix').'_'.$accessUrlId.'_course_categories_select';
+ if (apcu_exists($apcVar)) {
+ $categoriesSelect = apcu_fetch($apcVar);
} else {
$categoriesSelect = getOptionSelect($list_categories, $codeType);
+ apcu_store($apcVar, $categoriesSelect, 60);
}
-
- $webAction = api_get_path(WEB_CODE_PATH).'auth/courses.php';
- $form = '
';
- echo $form;
- echo '
';
+ } else {
+ $categoriesSelect = getOptionSelect($list_categories, $codeType);
}
+ $webAction = api_get_path(WEB_CODE_PATH).'auth/courses.php';
+ $form = '
';
+ echo $form;
+ echo '
';
+}
+
if ($showSessions) {
- ?>
-
+ $url = CourseCategory::getCourseCategoryUrl(1, $pageLength, null, 0, 'display_sessions');
+ echo '
-
-
-
-
-
-
';
+
if ($showCourses && $action != 'display_sessions') {
- if (!empty($message)) {
- echo Display::return_message($message, 'confirmation', false);
- }
- if (!empty($error)) {
- echo Display::return_message($error, 'error', false);
- }
+ if (!empty($message)) {
+ echo Display::return_message($message, 'confirmation', false);
+ }
+ if (!empty($error)) {
+ echo Display::return_message($error, 'error', false);
+ }
- if (!empty($content)) {
- echo $content;
- }
+ if (!empty($content)) {
+ echo $content;
+ }
- if (!empty($searchTerm)) {
- echo "".get_lang('SearchResultsFor')." ".$searchTerm."
";
- }
+ if (!empty($searchTerm)) {
+ echo "
".get_lang('SearchResultsFor')." ".$searchTerm."
";
+ }
- $showTeacher = api_get_setting('display_teacher_in_courselist') === 'true';
- $ajax_url = api_get_path(WEB_AJAX_PATH).'course.ajax.php?a=add_course_vote';
- $user_id = api_get_user_id();
- $categoryListFromDatabase = CourseCategory::getCategories();
+ $showTeacher = api_get_setting('display_teacher_in_courselist') === 'true';
+ $ajax_url = api_get_path(WEB_AJAX_PATH).'course.ajax.php?a=add_course_vote';
+ $user_id = api_get_user_id();
+ $categoryListFromDatabase = CourseCategory::getCategories();
- $categoryList = [];
- if (!empty($categoryListFromDatabase)) {
- foreach ($categoryListFromDatabase as $categoryItem) {
- $categoryList[$categoryItem['code']] = $categoryItem['name'];
- }
+ $categoryList = [];
+ if (!empty($categoryListFromDatabase)) {
+ foreach ($categoryListFromDatabase as $categoryItem) {
+ $categoryList[$categoryItem['code']] = $categoryItem['name'];
}
+ }
- if (!empty($browse_courses_in_category)) {
- echo '
';
- foreach ($browse_courses_in_category as $course) {
- $course_hidden = $course['visibility'] == COURSE_VISIBILITY_HIDDEN;
+ if (!empty($browse_courses_in_category)) {
+ echo '
';
+ foreach ($browse_courses_in_category as $course) {
+ $course_hidden = $course['visibility'] == COURSE_VISIBILITY_HIDDEN;
- if ($course_hidden) {
- continue;
- }
+ if ($course_hidden) {
+ continue;
+ }
- $userRegisteredInCourse = CourseManager::is_user_subscribed_in_course($user_id, $course['code']);
- $userRegisteredInCourseAsTeacher = CourseManager::is_course_teacher($user_id, $course['code']);
- $userRegistered = $userRegisteredInCourse && $userRegisteredInCourseAsTeacher;
+ $userRegisteredInCourse = CourseManager::is_user_subscribed_in_course($user_id, $course['code']);
+ $userRegisteredInCourseAsTeacher = CourseManager::is_course_teacher($user_id, $course['code']);
+ $userRegistered = $userRegisteredInCourse && $userRegisteredInCourseAsTeacher;
- $course_public = $course['visibility'] == COURSE_VISIBILITY_OPEN_WORLD;
- $course_open = $course['visibility'] == COURSE_VISIBILITY_OPEN_PLATFORM;
- $course_private = $course['visibility'] == COURSE_VISIBILITY_REGISTERED;
- $course_closed = $course['visibility'] == COURSE_VISIBILITY_CLOSED;
+ $course_public = $course['visibility'] == COURSE_VISIBILITY_OPEN_WORLD;
+ $course_open = $course['visibility'] == COURSE_VISIBILITY_OPEN_PLATFORM;
+ $course_private = $course['visibility'] == COURSE_VISIBILITY_REGISTERED;
+ $course_closed = $course['visibility'] == COURSE_VISIBILITY_CLOSED;
- $course_subscribe_allowed = $course['subscribe'] == 1;
- $course_unsubscribe_allowed = $course['unsubscribe'] == 1;
- $count_connections = $course['count_connections'];
- $creation_date = substr($course['creation_date'], 0, 10);
+ $course_subscribe_allowed = $course['subscribe'] == 1;
+ $course_unsubscribe_allowed = $course['unsubscribe'] == 1;
+ $count_connections = $course['count_connections'];
+ $creation_date = substr($course['creation_date'], 0, 10);
- // display the course bloc
- $html = '
';
+ // display the course bloc
+ $html = '
';
- $course['category_title'] = '';
- if (isset($course['category'])) {
- $course['category_title'] = isset($categoryList[$course['category']]) ? $categoryList[$course['category']] : '';
- }
+ $course['category_title'] = '';
+ if (isset($course['category'])) {
+ $course['category_title'] = isset($categoryList[$course['category']]) ? $categoryList[$course['category']] : '';
+ }
- // Display thumbnail
- $html .= returnThumbnail($course, $userRegistered);
+ // Display thumbnail
+ $html .= returnThumbnail($course, $userRegistered);
- $separator = null;
- $subscribeButton = return_register_button($course, $stok, $code, $searchTerm);
- // Start buy course validation
- // display the course price and buy button if the buycourses plugin is enabled and this course is configured
- $plugin = BuyCoursesPlugin::create();
- $isThisCourseInSale = $plugin->buyCoursesForGridCatalogValidator(
+ $separator = null;
+ $subscribeButton = return_register_button($course, $stok, $code, $searchTerm);
+ // Start buy course validation
+ // display the course price and buy button if the buycourses plugin is enabled and this course is configured
+ $plugin = BuyCoursesPlugin::create();
+ $isThisCourseInSale = $plugin->buyCoursesForGridCatalogValidator(
$course['real_id'],
BuyCoursesPlugin::PRODUCT_TYPE_COURSE
);
- if ($isThisCourseInSale) {
- // set the Price label
- $separator = $isThisCourseInSale['html'];
- // set the Buy button instead register.
- if ($isThisCourseInSale['verificator']) {
- $subscribeButton = $plugin->returnBuyCourseButton(
+ if ($isThisCourseInSale) {
+ // set the Price label
+ $separator = $isThisCourseInSale['html'];
+ // set the Buy button instead register.
+ if ($isThisCourseInSale['verificator']) {
+ $subscribeButton = $plugin->returnBuyCourseButton(
$course['real_id'],
BuyCoursesPlugin::PRODUCT_TYPE_COURSE
);
- }
}
- // end buy course validation
+ }
+ // end buy course validation
- // display course title and button bloc
- $html .= '
';
- $html .= return_title($course, $userRegisteredInCourse);
+ // display course title and button bloc
+ $html .= '
';
+ $html .= return_title($course, $userRegisteredInCourse);
- if ($showTeacher) {
- $html .= return_teacher($course);
- }
+ if ($showTeacher) {
+ $html .= return_teacher($course);
+ }
- // display button line
- $html .= '
';
- $html .= '
';
- echo $html;
}
- echo '
';
- } else {
- if (!isset($_REQUEST['subscribe_user_with_password']) &&
+ $html .= '
';
+ $html .= '
';
+ $html .= '
';
+ $html .= '
';
+ $html .= '
';
+ echo $html;
+ }
+ echo '
';
+ } else {
+ if (!isset($_REQUEST['subscribe_user_with_password']) &&
!isset($_REQUEST['subscribe_course'])
) {
- echo Display::return_message(
+ echo Display::return_message(
get_lang('ThereAreNoCoursesInThisCategory'),
'warning'
);
- }
}
}
+}
echo '';
echo $cataloguePagination;