|
|
|
|
@ -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; |
|
|
|
|
} ?> |
|
|
|
|
}); |
|
|
|
|
</script> |
|
|
|
|
<div class="row"> |
|
|
|
|
<?php |
|
|
|
|
|
|
|
|
|
echo '<div class="row"> |
|
|
|
|
<div class="col-md-12"> |
|
|
|
|
<h2 class="title-courses"><?php echo get_lang('CourseManagement'); ?></h2>
|
|
|
|
|
<h2 class="title-courses">'.get_lang('CourseManagement').'</h2> |
|
|
|
|
<div class="search-courses"> |
|
|
|
|
<div class="row"> |
|
|
|
|
<?php if ($showCourses) { |
|
|
|
|
?> |
|
|
|
|
<div class="col-md-<?php echo $showSessions ? '4' : '6'; ?>">
|
|
|
|
|
<?php if (!isset($_GET['hidden_links']) || intval($_GET['hidden_links']) != 1) { |
|
|
|
|
?> |
|
|
|
|
<form method="post" |
|
|
|
|
action="<?php echo CourseCategory::getCourseCategoryUrl(1, $pageLength, 'ALL', 0, 'subscribe'); ?>">
|
|
|
|
|
<input type="hidden" name="sec_token" value="<?php echo $stok; ?>">
|
|
|
|
|
<input type="hidden" name="search_course" value="1"/> |
|
|
|
|
<label><?php echo get_lang('Search'); ?></label>
|
|
|
|
|
<div class="input-group"> |
|
|
|
|
<input class="form-control" type="text" name="search_term" |
|
|
|
|
value="<?php echo empty($_POST['search_term']) |
|
|
|
|
? '' |
|
|
|
|
: api_htmlentities($searchTerm); ?>"/> |
|
|
|
|
<div class="input-group-btn"> |
|
|
|
|
<button class="btn btn-default" type="submit"> |
|
|
|
|
<em class="fa fa-search"></em> <?php echo get_lang('Search'); ?> |
|
|
|
|
</button> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</form> |
|
|
|
|
<?php |
|
|
|
|
} ?> |
|
|
|
|
</div> |
|
|
|
|
<div class="col-md-<?php echo $showSessions ? '4' : '6'; ?>">
|
|
|
|
|
<?php |
|
|
|
|
$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); |
|
|
|
|
} |
|
|
|
|
<div class="row">'; |
|
|
|
|
|
|
|
|
|
if ($showCourses) { |
|
|
|
|
echo '<div class="col-md-'.($showSessions ? '4' : '6').'">'; |
|
|
|
|
if (!isset($_GET['hidden_links']) || intval($_GET['hidden_links']) != 1) { ?> |
|
|
|
|
<form method="post" |
|
|
|
|
action="<?php echo CourseCategory::getCourseCategoryUrl(1, $pageLength, 'ALL', 0, 'subscribe'); ?>">
|
|
|
|
|
<input type="hidden" name="sec_token" value="<?php echo $stok; ?>">
|
|
|
|
|
<input type="hidden" name="search_course" value="1"/> |
|
|
|
|
<label><?php echo get_lang('Search'); ?></label>
|
|
|
|
|
<div class="input-group"> |
|
|
|
|
<input class="form-control" type="text" name="search_term" |
|
|
|
|
value="<?php echo empty($_POST['search_term']) ? '' : api_htmlentities($searchTerm); ?>"/>
|
|
|
|
|
<div class="input-group-btn"> |
|
|
|
|
<button class="btn btn-default" type="submit"> |
|
|
|
|
<em class="fa fa-search"></em> <?php echo get_lang('Search'); ?> |
|
|
|
|
</button> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</form> |
|
|
|
|
<?php |
|
|
|
|
} |
|
|
|
|
echo '</div>'; |
|
|
|
|
echo '<div class="col-md-'.($showSessions ? '4' : '6').'">'; |
|
|
|
|
|
|
|
|
|
$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 = '<form action="'.$webAction.'" method="GET">'; |
|
|
|
|
$form .= '<input type="hidden" name="action" value="'.$action.'">'; |
|
|
|
|
$form .= '<input type="hidden" name="pageCurrent" value="'.$pageCurrent.'">'; |
|
|
|
|
$form .= '<input type="hidden" name="pageLength" value="'.$pageLength.'">'; |
|
|
|
|
$form .= '<div class="form-group">'; |
|
|
|
|
$form .= '<label>'.get_lang('CourseCategories').'</label>'; |
|
|
|
|
$form .= $categoriesSelect; |
|
|
|
|
$form .= '</div>'; |
|
|
|
|
$form .= '</form>'; |
|
|
|
|
echo $form; |
|
|
|
|
echo '</div>'; |
|
|
|
|
} else { |
|
|
|
|
$categoriesSelect = getOptionSelect($list_categories, $codeType); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$webAction = api_get_path(WEB_CODE_PATH).'auth/courses.php'; |
|
|
|
|
$form = '<form action="'.$webAction.'" method="GET">'; |
|
|
|
|
$form .= '<input type="hidden" name="action" value="'.$action.'">'; |
|
|
|
|
$form .= '<input type="hidden" name="pageCurrent" value="'.$pageCurrent.'">'; |
|
|
|
|
$form .= '<input type="hidden" name="pageLength" value="'.$pageLength.'">'; |
|
|
|
|
$form .= '<div class="form-group">'; |
|
|
|
|
$form .= '<label>'.get_lang('CourseCategories').'</label>'; |
|
|
|
|
$form .= $categoriesSelect; |
|
|
|
|
$form .= '</div>'; |
|
|
|
|
$form .= '</form>'; |
|
|
|
|
echo $form; |
|
|
|
|
echo '</div>'; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if ($showSessions) { |
|
|
|
|
?> |
|
|
|
|
<div class="col-md-4"> |
|
|
|
|
$url = CourseCategory::getCourseCategoryUrl(1, $pageLength, null, 0, 'display_sessions'); |
|
|
|
|
echo '<div class="col-md-4"> |
|
|
|
|
<div class="return-catalog"> |
|
|
|
|
<a class="btn btn-default btn-lg btn-block" |
|
|
|
|
href="<?php echo CourseCategory::getCourseCategoryUrl(1, $pageLength, null, 0, 'display_sessions'); ?>">
|
|
|
|
|
<em class="fa fa-arrow-right"></em> <?php echo get_lang('SessionList'); ?> |
|
|
|
|
href="'.$url.'"> |
|
|
|
|
<em class="fa fa-arrow-right"></em>'.get_lang('SessionList').' |
|
|
|
|
</a> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<?php |
|
|
|
|
} ?> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<?php |
|
|
|
|
'; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
echo '</div></div></div></div>'; |
|
|
|
|
|
|
|
|
|
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 "<p><strong>".get_lang('SearchResultsFor')." ".$searchTerm."</strong><br />"; |
|
|
|
|
} |
|
|
|
|
if (!empty($searchTerm)) { |
|
|
|
|
echo "<p><strong>".get_lang('SearchResultsFor')." ".$searchTerm."</strong><br />"; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$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 '<div class="grid-courses row">'; |
|
|
|
|
foreach ($browse_courses_in_category as $course) { |
|
|
|
|
$course_hidden = $course['visibility'] == COURSE_VISIBILITY_HIDDEN; |
|
|
|
|
if (!empty($browse_courses_in_category)) { |
|
|
|
|
echo '<div class="grid-courses row">'; |
|
|
|
|
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 = '<div class="col-xs-12 col-sm-6 col-md-4"><div class="items items-courses">'; |
|
|
|
|
// display the course bloc |
|
|
|
|
$html = '<div class="col-xs-12 col-sm-6 col-md-4"><div class="items items-courses">'; |
|
|
|
|
|
|
|
|
|
$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 .= '<div class="description">'; |
|
|
|
|
$html .= return_title($course, $userRegisteredInCourse); |
|
|
|
|
// display course title and button bloc |
|
|
|
|
$html .= '<div class="description">'; |
|
|
|
|
$html .= return_title($course, $userRegisteredInCourse); |
|
|
|
|
|
|
|
|
|
if ($showTeacher) { |
|
|
|
|
$html .= return_teacher($course); |
|
|
|
|
} |
|
|
|
|
if ($showTeacher) { |
|
|
|
|
$html .= return_teacher($course); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// display button line |
|
|
|
|
$html .= '<div class="toolbar row">'; |
|
|
|
|
$html .= $separator ? '<div class="col-sm-4">'.$separator.'</div>' : ''; |
|
|
|
|
$html .= '<div class="col-sm-8">'; |
|
|
|
|
// if user registered as student |
|
|
|
|
if ($userRegisteredInCourse) { |
|
|
|
|
$html .= return_already_registered_label('student'); |
|
|
|
|
if (!$course_closed) { |
|
|
|
|
if ($course_unsubscribe_allowed) { |
|
|
|
|
$html .= return_unregister_button($course, $stok, $searchTerm, $code); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} elseif ($userRegisteredInCourseAsTeacher) { |
|
|
|
|
// if user registered as teacher |
|
|
|
|
// display button line |
|
|
|
|
$html .= '<div class="toolbar row">'; |
|
|
|
|
$html .= $separator ? '<div class="col-sm-4">'.$separator.'</div>' : ''; |
|
|
|
|
$html .= '<div class="col-sm-8">'; |
|
|
|
|
// if user registered as student |
|
|
|
|
if ($userRegisteredInCourse) { |
|
|
|
|
$html .= return_already_registered_label('student'); |
|
|
|
|
if (!$course_closed) { |
|
|
|
|
if ($course_unsubscribe_allowed) { |
|
|
|
|
$html .= return_unregister_button($course, $stok, $searchTerm, $code); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
// if user not registered in the course |
|
|
|
|
if (!$course_closed) { |
|
|
|
|
if (!$course_private) { |
|
|
|
|
if ($course_subscribe_allowed) { |
|
|
|
|
$html .= $subscribeButton; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} elseif ($userRegisteredInCourseAsTeacher) { |
|
|
|
|
// if user registered as teacher |
|
|
|
|
if ($course_unsubscribe_allowed) { |
|
|
|
|
$html .= return_unregister_button($course, $stok, $searchTerm, $code); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
// if user not registered in the course |
|
|
|
|
if (!$course_closed) { |
|
|
|
|
if (!$course_private) { |
|
|
|
|
if ($course_subscribe_allowed) { |
|
|
|
|
$html .= $subscribeButton; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
$html .= '</div>'; |
|
|
|
|
$html .= '</div>'; |
|
|
|
|
$html .= '</div>'; |
|
|
|
|
$html .= '</div>'; |
|
|
|
|
$html .= '</div>'; |
|
|
|
|
echo $html; |
|
|
|
|
} |
|
|
|
|
echo '</div>'; |
|
|
|
|
} else { |
|
|
|
|
if (!isset($_REQUEST['subscribe_user_with_password']) && |
|
|
|
|
$html .= '</div>'; |
|
|
|
|
$html .= '</div>'; |
|
|
|
|
$html .= '</div>'; |
|
|
|
|
$html .= '</div>'; |
|
|
|
|
$html .= '</div>'; |
|
|
|
|
echo $html; |
|
|
|
|
} |
|
|
|
|
echo '</div>'; |
|
|
|
|
} 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 '<div class="col-md-12">'; |
|
|
|
|
echo $cataloguePagination; |
|
|
|
|
|