Chamilo is a learning management system focused on ease of use and accessibility
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
chamilo-lms/main/auth/courses_controller.php

301 lines
10 KiB

<?php
/* For licensing terms, see /license.txt */
/**
* This file contains class used like controller, it should be included inside a dispatcher file (e.g: index.php)
* @author Christian Fasanando <christian1827@gmail.com> - BeezNest
* @package chamilo.auth
*/
/**
* Code
* @package chamilo.auth
*/
class CoursesController
{
private $toolname;
private $view;
private $model;
/**
* Constructor
*/
Merge branch 'chamilo19' Conflicts: 404.php documentation/changelog.html documentation/dependencies.html documentation/installation_guide.html documentation/optimization.html main/admin/careers.php main/admin/course_category.php main/admin/course_edit.php main/admin/course_import.php main/admin/index.php main/admin/session_import.php main/admin/session_list.php main/admin/user_add.php main/admin/user_list.php main/auth/courses.php main/auth/courses_controller.php main/auth/inscription.php main/auth/profile.php main/calendar/agenda.inc.php main/calendar/agenda.lib.php main/coursecopy/classes/Announcement.class.php main/coursecopy/classes/Attendance.class.php main/coursecopy/classes/Course.class.php main/coursecopy/classes/CourseArchiver.class.php main/coursecopy/classes/CourseBuilder.class.php main/coursecopy/classes/CourseRecycler.class.php main/coursecopy/classes/CourseRestorer.class.php main/coursecopy/classes/CourseSelectForm.class.php main/css/base.css main/css/bootstrap.css main/css/chamilo/images/header-logo.png main/css/responsive.css main/document/create_audio.php main/document/document.php main/document/download.php main/exercice/answer.class.php main/exercice/exercise.class.php main/exercice/exercise.lib.php main/exercice/exercise_result.class.php main/exercice/exercise_result.php main/exercice/exercise_show.php main/exercice/exercise_submit.php main/exercice/fill_blanks.class.php main/exercice/question.class.php main/exercice/question_list_admin.inc.php main/exercice/question_pool.php main/exercice/testcategory.class.php main/gradebook/index.php main/gradebook/lib/be/category.class.php main/gradebook/lib/fe/flatviewtable.class.php main/gradebook/lib/scoredisplay.class.php main/inc/ajax/agenda.ajax.php main/inc/ajax/exercise.ajax.php main/inc/ajax/model.ajax.php main/inc/global.inc.php main/inc/lib/add_course.lib.inc.php main/inc/lib/add_courses_to_session_functions.lib.php main/inc/lib/autoload.class.php main/inc/lib/banner.lib.php main/inc/lib/career.lib.php main/inc/lib/course.lib.php main/inc/lib/course_home.lib.php main/inc/lib/display.lib.php main/inc/lib/document.lib.php main/inc/lib/exercise_show_functions.lib.php main/inc/lib/groupmanager.lib.php main/inc/lib/javascript/jqgrid/js/jquery.jqGrid.min.js main/inc/lib/javascript/jquery.lp_minipanel.js main/inc/lib/link.lib.php main/inc/lib/log.class.php main/inc/lib/login.lib.php main/inc/lib/main_api.lib.php main/inc/lib/message.lib.php main/inc/lib/pear/HTML/QuickForm.php main/inc/lib/promotion.lib.php main/inc/lib/security.lib.php main/inc/lib/sessionmanager.lib.php main/inc/lib/symfony/Monolog/Handler/NativeMailerHandler.php main/inc/lib/usermanager.lib.php main/inc/lib/userportal.lib.php main/inc/local.inc.php main/install/index.php main/install/update-db-1.8.7-1.8.8.inc.php main/install/version.php main/lang/basque/course_info.inc.php main/lang/english/trad4all.inc.php main/lang/greek/admin.inc.php main/lang/greek/course_home.inc.php main/lang/greek/courses.inc.php main/lang/greek/messages.inc.php main/lang/greek/registration.inc.php main/lang/greek/reservation.inc.php main/lang/greek/survey.inc.php main/lang/greek/trad4all.inc.php main/lang/spanish/admin.inc.php main/lang/spanish/trad4all.inc.php main/mySpace/index.php main/newscorm/learnpath.class.php main/newscorm/scorm_api.php main/social/search.php main/survey/survey.lib.php main/template/default/admin/settings_index.tpl main/template/default/agenda/month.tpl main/template/default/layout/footer.tpl main/template/default/layout/head.tpl main/template/default/layout/login_form.tpl main/upload/upload_word.php main/user/user_import.php main/wiki/wiki.inc.php main/work/view.php main/work/work.lib.php main/work/work.php tests/phpunit/classes/UserManagerTest.lib.php
13 years ago
public function __construct() {
$this->toolname = 'auth';
$actived_theme_path = api_get_template();
$this->view = new View($this->toolname, $actived_theme_path);
$this->model = new AuthLib();
}
/**
* It's used for listing courses,
* render to courses_list view
* @param string action
* @param string confirmation message(optional)
*/
public function courses_list($action, $message = '') {
$data = array();
$user_id = api_get_user_id();
Merge branch 'chamilo19' Conflicts: 404.php documentation/changelog.html documentation/dependencies.html documentation/installation_guide.html documentation/optimization.html main/admin/careers.php main/admin/course_category.php main/admin/course_edit.php main/admin/course_import.php main/admin/index.php main/admin/session_import.php main/admin/session_list.php main/admin/user_add.php main/admin/user_list.php main/auth/courses.php main/auth/courses_controller.php main/auth/inscription.php main/auth/profile.php main/calendar/agenda.inc.php main/calendar/agenda.lib.php main/coursecopy/classes/Announcement.class.php main/coursecopy/classes/Attendance.class.php main/coursecopy/classes/Course.class.php main/coursecopy/classes/CourseArchiver.class.php main/coursecopy/classes/CourseBuilder.class.php main/coursecopy/classes/CourseRecycler.class.php main/coursecopy/classes/CourseRestorer.class.php main/coursecopy/classes/CourseSelectForm.class.php main/css/base.css main/css/bootstrap.css main/css/chamilo/images/header-logo.png main/css/responsive.css main/document/create_audio.php main/document/document.php main/document/download.php main/exercice/answer.class.php main/exercice/exercise.class.php main/exercice/exercise.lib.php main/exercice/exercise_result.class.php main/exercice/exercise_result.php main/exercice/exercise_show.php main/exercice/exercise_submit.php main/exercice/fill_blanks.class.php main/exercice/question.class.php main/exercice/question_list_admin.inc.php main/exercice/question_pool.php main/exercice/testcategory.class.php main/gradebook/index.php main/gradebook/lib/be/category.class.php main/gradebook/lib/fe/flatviewtable.class.php main/gradebook/lib/scoredisplay.class.php main/inc/ajax/agenda.ajax.php main/inc/ajax/exercise.ajax.php main/inc/ajax/model.ajax.php main/inc/global.inc.php main/inc/lib/add_course.lib.inc.php main/inc/lib/add_courses_to_session_functions.lib.php main/inc/lib/autoload.class.php main/inc/lib/banner.lib.php main/inc/lib/career.lib.php main/inc/lib/course.lib.php main/inc/lib/course_home.lib.php main/inc/lib/display.lib.php main/inc/lib/document.lib.php main/inc/lib/exercise_show_functions.lib.php main/inc/lib/groupmanager.lib.php main/inc/lib/javascript/jqgrid/js/jquery.jqGrid.min.js main/inc/lib/javascript/jquery.lp_minipanel.js main/inc/lib/link.lib.php main/inc/lib/log.class.php main/inc/lib/login.lib.php main/inc/lib/main_api.lib.php main/inc/lib/message.lib.php main/inc/lib/pear/HTML/QuickForm.php main/inc/lib/promotion.lib.php main/inc/lib/security.lib.php main/inc/lib/sessionmanager.lib.php main/inc/lib/symfony/Monolog/Handler/NativeMailerHandler.php main/inc/lib/usermanager.lib.php main/inc/lib/userportal.lib.php main/inc/local.inc.php main/install/index.php main/install/update-db-1.8.7-1.8.8.inc.php main/install/version.php main/lang/basque/course_info.inc.php main/lang/english/trad4all.inc.php main/lang/greek/admin.inc.php main/lang/greek/course_home.inc.php main/lang/greek/courses.inc.php main/lang/greek/messages.inc.php main/lang/greek/registration.inc.php main/lang/greek/reservation.inc.php main/lang/greek/survey.inc.php main/lang/greek/trad4all.inc.php main/lang/spanish/admin.inc.php main/lang/spanish/trad4all.inc.php main/mySpace/index.php main/newscorm/learnpath.class.php main/newscorm/scorm_api.php main/social/search.php main/survey/survey.lib.php main/template/default/admin/settings_index.tpl main/template/default/agenda/month.tpl main/template/default/layout/footer.tpl main/template/default/layout/head.tpl main/template/default/layout/login_form.tpl main/upload/upload_word.php main/user/user_import.php main/wiki/wiki.inc.php main/work/view.php main/work/work.lib.php main/work/work.php tests/phpunit/classes/UserManagerTest.lib.php
13 years ago
$data['user_courses'] = $this->model->get_courses_of_user($user_id);
$data['user_course_categories'] = $this->model->get_user_course_categories();
$data['courses_in_category'] = $this->model->get_courses_in_category();
$data['all_user_categories'] = $this->model->get_user_course_categories();
$data['action'] = $action;
$data['message'] = $message;
// render to the view
$this->view->set_data($data);
$this->view->set_layout('layout');
$this->view->set_template('courses_list');
$this->view->render();
}
/**
* It's used for listing categories,
* render to categories_list view
* @param string action
* @param string confirmation message(optional)
* @param string error message(optional)
*/
public function categories_list($action, $message='', $error='') {
Merge branch 'chamilo19' Conflicts: 404.php documentation/changelog.html documentation/dependencies.html documentation/installation_guide.html documentation/optimization.html main/admin/careers.php main/admin/course_category.php main/admin/course_edit.php main/admin/course_import.php main/admin/index.php main/admin/session_import.php main/admin/session_list.php main/admin/user_add.php main/admin/user_list.php main/auth/courses.php main/auth/courses_controller.php main/auth/inscription.php main/auth/profile.php main/calendar/agenda.inc.php main/calendar/agenda.lib.php main/coursecopy/classes/Announcement.class.php main/coursecopy/classes/Attendance.class.php main/coursecopy/classes/Course.class.php main/coursecopy/classes/CourseArchiver.class.php main/coursecopy/classes/CourseBuilder.class.php main/coursecopy/classes/CourseRecycler.class.php main/coursecopy/classes/CourseRestorer.class.php main/coursecopy/classes/CourseSelectForm.class.php main/css/base.css main/css/bootstrap.css main/css/chamilo/images/header-logo.png main/css/responsive.css main/document/create_audio.php main/document/document.php main/document/download.php main/exercice/answer.class.php main/exercice/exercise.class.php main/exercice/exercise.lib.php main/exercice/exercise_result.class.php main/exercice/exercise_result.php main/exercice/exercise_show.php main/exercice/exercise_submit.php main/exercice/fill_blanks.class.php main/exercice/question.class.php main/exercice/question_list_admin.inc.php main/exercice/question_pool.php main/exercice/testcategory.class.php main/gradebook/index.php main/gradebook/lib/be/category.class.php main/gradebook/lib/fe/flatviewtable.class.php main/gradebook/lib/scoredisplay.class.php main/inc/ajax/agenda.ajax.php main/inc/ajax/exercise.ajax.php main/inc/ajax/model.ajax.php main/inc/global.inc.php main/inc/lib/add_course.lib.inc.php main/inc/lib/add_courses_to_session_functions.lib.php main/inc/lib/autoload.class.php main/inc/lib/banner.lib.php main/inc/lib/career.lib.php main/inc/lib/course.lib.php main/inc/lib/course_home.lib.php main/inc/lib/display.lib.php main/inc/lib/document.lib.php main/inc/lib/exercise_show_functions.lib.php main/inc/lib/groupmanager.lib.php main/inc/lib/javascript/jqgrid/js/jquery.jqGrid.min.js main/inc/lib/javascript/jquery.lp_minipanel.js main/inc/lib/link.lib.php main/inc/lib/log.class.php main/inc/lib/login.lib.php main/inc/lib/main_api.lib.php main/inc/lib/message.lib.php main/inc/lib/pear/HTML/QuickForm.php main/inc/lib/promotion.lib.php main/inc/lib/security.lib.php main/inc/lib/sessionmanager.lib.php main/inc/lib/symfony/Monolog/Handler/NativeMailerHandler.php main/inc/lib/usermanager.lib.php main/inc/lib/userportal.lib.php main/inc/local.inc.php main/install/index.php main/install/update-db-1.8.7-1.8.8.inc.php main/install/version.php main/lang/basque/course_info.inc.php main/lang/english/trad4all.inc.php main/lang/greek/admin.inc.php main/lang/greek/course_home.inc.php main/lang/greek/courses.inc.php main/lang/greek/messages.inc.php main/lang/greek/registration.inc.php main/lang/greek/reservation.inc.php main/lang/greek/survey.inc.php main/lang/greek/trad4all.inc.php main/lang/spanish/admin.inc.php main/lang/spanish/trad4all.inc.php main/mySpace/index.php main/newscorm/learnpath.class.php main/newscorm/scorm_api.php main/social/search.php main/survey/survey.lib.php main/template/default/admin/settings_index.tpl main/template/default/agenda/month.tpl main/template/default/layout/footer.tpl main/template/default/layout/head.tpl main/template/default/layout/login_form.tpl main/upload/upload_word.php main/user/user_import.php main/wiki/wiki.inc.php main/work/view.php main/work/work.lib.php main/work/work.php tests/phpunit/classes/UserManagerTest.lib.php
13 years ago
$data = array();
$data['user_course_categories'] = $this->model->get_user_course_categories();
$data['action'] = $action;
$data['message'] = $message;
$data['error'] = $error;
// render to the view
$this->view->set_data($data);
$this->view->set_layout('layout');
$this->view->set_template('categories_list');
$this->view->render();
}
/**
* It's used for listing courses with categories,
* render to courses_categories view
* @param string action
* @param string Category code (optional)
*/
public function courses_categories($action, $category_code = null, $message = '', $error = '', $content = null) {
$data = array();
Merge branch 'chamilo19' Conflicts: 404.php documentation/changelog.html documentation/dependencies.html documentation/installation_guide.html documentation/optimization.html main/admin/careers.php main/admin/course_category.php main/admin/course_edit.php main/admin/course_import.php main/admin/index.php main/admin/session_import.php main/admin/session_list.php main/admin/user_add.php main/admin/user_list.php main/auth/courses.php main/auth/courses_controller.php main/auth/inscription.php main/auth/profile.php main/calendar/agenda.inc.php main/calendar/agenda.lib.php main/coursecopy/classes/Announcement.class.php main/coursecopy/classes/Attendance.class.php main/coursecopy/classes/Course.class.php main/coursecopy/classes/CourseArchiver.class.php main/coursecopy/classes/CourseBuilder.class.php main/coursecopy/classes/CourseRecycler.class.php main/coursecopy/classes/CourseRestorer.class.php main/coursecopy/classes/CourseSelectForm.class.php main/css/base.css main/css/bootstrap.css main/css/chamilo/images/header-logo.png main/css/responsive.css main/document/create_audio.php main/document/document.php main/document/download.php main/exercice/answer.class.php main/exercice/exercise.class.php main/exercice/exercise.lib.php main/exercice/exercise_result.class.php main/exercice/exercise_result.php main/exercice/exercise_show.php main/exercice/exercise_submit.php main/exercice/fill_blanks.class.php main/exercice/question.class.php main/exercice/question_list_admin.inc.php main/exercice/question_pool.php main/exercice/testcategory.class.php main/gradebook/index.php main/gradebook/lib/be/category.class.php main/gradebook/lib/fe/flatviewtable.class.php main/gradebook/lib/scoredisplay.class.php main/inc/ajax/agenda.ajax.php main/inc/ajax/exercise.ajax.php main/inc/ajax/model.ajax.php main/inc/global.inc.php main/inc/lib/add_course.lib.inc.php main/inc/lib/add_courses_to_session_functions.lib.php main/inc/lib/autoload.class.php main/inc/lib/banner.lib.php main/inc/lib/career.lib.php main/inc/lib/course.lib.php main/inc/lib/course_home.lib.php main/inc/lib/display.lib.php main/inc/lib/document.lib.php main/inc/lib/exercise_show_functions.lib.php main/inc/lib/groupmanager.lib.php main/inc/lib/javascript/jqgrid/js/jquery.jqGrid.min.js main/inc/lib/javascript/jquery.lp_minipanel.js main/inc/lib/link.lib.php main/inc/lib/log.class.php main/inc/lib/login.lib.php main/inc/lib/main_api.lib.php main/inc/lib/message.lib.php main/inc/lib/pear/HTML/QuickForm.php main/inc/lib/promotion.lib.php main/inc/lib/security.lib.php main/inc/lib/sessionmanager.lib.php main/inc/lib/symfony/Monolog/Handler/NativeMailerHandler.php main/inc/lib/usermanager.lib.php main/inc/lib/userportal.lib.php main/inc/local.inc.php main/install/index.php main/install/update-db-1.8.7-1.8.8.inc.php main/install/version.php main/lang/basque/course_info.inc.php main/lang/english/trad4all.inc.php main/lang/greek/admin.inc.php main/lang/greek/course_home.inc.php main/lang/greek/courses.inc.php main/lang/greek/messages.inc.php main/lang/greek/registration.inc.php main/lang/greek/reservation.inc.php main/lang/greek/survey.inc.php main/lang/greek/trad4all.inc.php main/lang/spanish/admin.inc.php main/lang/spanish/trad4all.inc.php main/mySpace/index.php main/newscorm/learnpath.class.php main/newscorm/scorm_api.php main/social/search.php main/survey/survey.lib.php main/template/default/admin/settings_index.tpl main/template/default/agenda/month.tpl main/template/default/layout/footer.tpl main/template/default/layout/head.tpl main/template/default/layout/login_form.tpl main/upload/upload_word.php main/user/user_import.php main/wiki/wiki.inc.php main/work/view.php main/work/work.lib.php main/work/work.php tests/phpunit/classes/UserManagerTest.lib.php
13 years ago
$browse_course_categories = $this->model->browse_course_categories();
if ($action == 'display_random_courses') {
$data['browse_courses_in_category'] = $this->model->browse_courses_in_category(null, 10);
} else {
if (!isset($category_code)) {
$category_code = $browse_course_categories[0][1]['code']; // by default first category
Merge branch 'chamilo19' Conflicts: 404.php documentation/changelog.html documentation/dependencies.html documentation/installation_guide.html documentation/optimization.html main/admin/careers.php main/admin/course_category.php main/admin/course_edit.php main/admin/course_import.php main/admin/index.php main/admin/session_import.php main/admin/session_list.php main/admin/user_add.php main/admin/user_list.php main/auth/courses.php main/auth/courses_controller.php main/auth/inscription.php main/auth/profile.php main/calendar/agenda.inc.php main/calendar/agenda.lib.php main/coursecopy/classes/Announcement.class.php main/coursecopy/classes/Attendance.class.php main/coursecopy/classes/Course.class.php main/coursecopy/classes/CourseArchiver.class.php main/coursecopy/classes/CourseBuilder.class.php main/coursecopy/classes/CourseRecycler.class.php main/coursecopy/classes/CourseRestorer.class.php main/coursecopy/classes/CourseSelectForm.class.php main/css/base.css main/css/bootstrap.css main/css/chamilo/images/header-logo.png main/css/responsive.css main/document/create_audio.php main/document/document.php main/document/download.php main/exercice/answer.class.php main/exercice/exercise.class.php main/exercice/exercise.lib.php main/exercice/exercise_result.class.php main/exercice/exercise_result.php main/exercice/exercise_show.php main/exercice/exercise_submit.php main/exercice/fill_blanks.class.php main/exercice/question.class.php main/exercice/question_list_admin.inc.php main/exercice/question_pool.php main/exercice/testcategory.class.php main/gradebook/index.php main/gradebook/lib/be/category.class.php main/gradebook/lib/fe/flatviewtable.class.php main/gradebook/lib/scoredisplay.class.php main/inc/ajax/agenda.ajax.php main/inc/ajax/exercise.ajax.php main/inc/ajax/model.ajax.php main/inc/global.inc.php main/inc/lib/add_course.lib.inc.php main/inc/lib/add_courses_to_session_functions.lib.php main/inc/lib/autoload.class.php main/inc/lib/banner.lib.php main/inc/lib/career.lib.php main/inc/lib/course.lib.php main/inc/lib/course_home.lib.php main/inc/lib/display.lib.php main/inc/lib/document.lib.php main/inc/lib/exercise_show_functions.lib.php main/inc/lib/groupmanager.lib.php main/inc/lib/javascript/jqgrid/js/jquery.jqGrid.min.js main/inc/lib/javascript/jquery.lp_minipanel.js main/inc/lib/link.lib.php main/inc/lib/log.class.php main/inc/lib/login.lib.php main/inc/lib/main_api.lib.php main/inc/lib/message.lib.php main/inc/lib/pear/HTML/QuickForm.php main/inc/lib/promotion.lib.php main/inc/lib/security.lib.php main/inc/lib/sessionmanager.lib.php main/inc/lib/symfony/Monolog/Handler/NativeMailerHandler.php main/inc/lib/usermanager.lib.php main/inc/lib/userportal.lib.php main/inc/local.inc.php main/install/index.php main/install/update-db-1.8.7-1.8.8.inc.php main/install/version.php main/lang/basque/course_info.inc.php main/lang/english/trad4all.inc.php main/lang/greek/admin.inc.php main/lang/greek/course_home.inc.php main/lang/greek/courses.inc.php main/lang/greek/messages.inc.php main/lang/greek/registration.inc.php main/lang/greek/reservation.inc.php main/lang/greek/survey.inc.php main/lang/greek/trad4all.inc.php main/lang/spanish/admin.inc.php main/lang/spanish/trad4all.inc.php main/mySpace/index.php main/newscorm/learnpath.class.php main/newscorm/scorm_api.php main/social/search.php main/survey/survey.lib.php main/template/default/admin/settings_index.tpl main/template/default/agenda/month.tpl main/template/default/layout/footer.tpl main/template/default/layout/head.tpl main/template/default/layout/login_form.tpl main/upload/upload_word.php main/user/user_import.php main/wiki/wiki.inc.php main/work/view.php main/work/work.lib.php main/work/work.php tests/phpunit/classes/UserManagerTest.lib.php
13 years ago
}
$data['browse_courses_in_category'] = $this->model->browse_courses_in_category($category_code);
}
Merge branch 'chamilo19' Conflicts: 404.php documentation/changelog.html documentation/dependencies.html documentation/installation_guide.html documentation/optimization.html main/admin/careers.php main/admin/course_category.php main/admin/course_edit.php main/admin/course_import.php main/admin/index.php main/admin/session_import.php main/admin/session_list.php main/admin/user_add.php main/admin/user_list.php main/auth/courses.php main/auth/courses_controller.php main/auth/inscription.php main/auth/profile.php main/calendar/agenda.inc.php main/calendar/agenda.lib.php main/coursecopy/classes/Announcement.class.php main/coursecopy/classes/Attendance.class.php main/coursecopy/classes/Course.class.php main/coursecopy/classes/CourseArchiver.class.php main/coursecopy/classes/CourseBuilder.class.php main/coursecopy/classes/CourseRecycler.class.php main/coursecopy/classes/CourseRestorer.class.php main/coursecopy/classes/CourseSelectForm.class.php main/css/base.css main/css/bootstrap.css main/css/chamilo/images/header-logo.png main/css/responsive.css main/document/create_audio.php main/document/document.php main/document/download.php main/exercice/answer.class.php main/exercice/exercise.class.php main/exercice/exercise.lib.php main/exercice/exercise_result.class.php main/exercice/exercise_result.php main/exercice/exercise_show.php main/exercice/exercise_submit.php main/exercice/fill_blanks.class.php main/exercice/question.class.php main/exercice/question_list_admin.inc.php main/exercice/question_pool.php main/exercice/testcategory.class.php main/gradebook/index.php main/gradebook/lib/be/category.class.php main/gradebook/lib/fe/flatviewtable.class.php main/gradebook/lib/scoredisplay.class.php main/inc/ajax/agenda.ajax.php main/inc/ajax/exercise.ajax.php main/inc/ajax/model.ajax.php main/inc/global.inc.php main/inc/lib/add_course.lib.inc.php main/inc/lib/add_courses_to_session_functions.lib.php main/inc/lib/autoload.class.php main/inc/lib/banner.lib.php main/inc/lib/career.lib.php main/inc/lib/course.lib.php main/inc/lib/course_home.lib.php main/inc/lib/display.lib.php main/inc/lib/document.lib.php main/inc/lib/exercise_show_functions.lib.php main/inc/lib/groupmanager.lib.php main/inc/lib/javascript/jqgrid/js/jquery.jqGrid.min.js main/inc/lib/javascript/jquery.lp_minipanel.js main/inc/lib/link.lib.php main/inc/lib/log.class.php main/inc/lib/login.lib.php main/inc/lib/main_api.lib.php main/inc/lib/message.lib.php main/inc/lib/pear/HTML/QuickForm.php main/inc/lib/promotion.lib.php main/inc/lib/security.lib.php main/inc/lib/sessionmanager.lib.php main/inc/lib/symfony/Monolog/Handler/NativeMailerHandler.php main/inc/lib/usermanager.lib.php main/inc/lib/userportal.lib.php main/inc/local.inc.php main/install/index.php main/install/update-db-1.8.7-1.8.8.inc.php main/install/version.php main/lang/basque/course_info.inc.php main/lang/english/trad4all.inc.php main/lang/greek/admin.inc.php main/lang/greek/course_home.inc.php main/lang/greek/courses.inc.php main/lang/greek/messages.inc.php main/lang/greek/registration.inc.php main/lang/greek/reservation.inc.php main/lang/greek/survey.inc.php main/lang/greek/trad4all.inc.php main/lang/spanish/admin.inc.php main/lang/spanish/trad4all.inc.php main/mySpace/index.php main/newscorm/learnpath.class.php main/newscorm/scorm_api.php main/social/search.php main/survey/survey.lib.php main/template/default/admin/settings_index.tpl main/template/default/agenda/month.tpl main/template/default/layout/footer.tpl main/template/default/layout/head.tpl main/template/default/layout/login_form.tpl main/upload/upload_word.php main/user/user_import.php main/wiki/wiki.inc.php main/work/view.php main/work/work.lib.php main/work/work.php tests/phpunit/classes/UserManagerTest.lib.php
13 years ago
$data['browse_course_categories'] = $browse_course_categories;
$data['code'] = Security::remove_XSS($category_code);
// getting all the courses to which the user is subscribed to
$curr_user_id = api_get_user_id();
Merge branch 'chamilo19' Conflicts: 404.php documentation/changelog.html documentation/dependencies.html documentation/installation_guide.html documentation/optimization.html main/admin/careers.php main/admin/course_category.php main/admin/course_edit.php main/admin/course_import.php main/admin/index.php main/admin/session_import.php main/admin/session_list.php main/admin/user_add.php main/admin/user_list.php main/auth/courses.php main/auth/courses_controller.php main/auth/inscription.php main/auth/profile.php main/calendar/agenda.inc.php main/calendar/agenda.lib.php main/coursecopy/classes/Announcement.class.php main/coursecopy/classes/Attendance.class.php main/coursecopy/classes/Course.class.php main/coursecopy/classes/CourseArchiver.class.php main/coursecopy/classes/CourseBuilder.class.php main/coursecopy/classes/CourseRecycler.class.php main/coursecopy/classes/CourseRestorer.class.php main/coursecopy/classes/CourseSelectForm.class.php main/css/base.css main/css/bootstrap.css main/css/chamilo/images/header-logo.png main/css/responsive.css main/document/create_audio.php main/document/document.php main/document/download.php main/exercice/answer.class.php main/exercice/exercise.class.php main/exercice/exercise.lib.php main/exercice/exercise_result.class.php main/exercice/exercise_result.php main/exercice/exercise_show.php main/exercice/exercise_submit.php main/exercice/fill_blanks.class.php main/exercice/question.class.php main/exercice/question_list_admin.inc.php main/exercice/question_pool.php main/exercice/testcategory.class.php main/gradebook/index.php main/gradebook/lib/be/category.class.php main/gradebook/lib/fe/flatviewtable.class.php main/gradebook/lib/scoredisplay.class.php main/inc/ajax/agenda.ajax.php main/inc/ajax/exercise.ajax.php main/inc/ajax/model.ajax.php main/inc/global.inc.php main/inc/lib/add_course.lib.inc.php main/inc/lib/add_courses_to_session_functions.lib.php main/inc/lib/autoload.class.php main/inc/lib/banner.lib.php main/inc/lib/career.lib.php main/inc/lib/course.lib.php main/inc/lib/course_home.lib.php main/inc/lib/display.lib.php main/inc/lib/document.lib.php main/inc/lib/exercise_show_functions.lib.php main/inc/lib/groupmanager.lib.php main/inc/lib/javascript/jqgrid/js/jquery.jqGrid.min.js main/inc/lib/javascript/jquery.lp_minipanel.js main/inc/lib/link.lib.php main/inc/lib/log.class.php main/inc/lib/login.lib.php main/inc/lib/main_api.lib.php main/inc/lib/message.lib.php main/inc/lib/pear/HTML/QuickForm.php main/inc/lib/promotion.lib.php main/inc/lib/security.lib.php main/inc/lib/sessionmanager.lib.php main/inc/lib/symfony/Monolog/Handler/NativeMailerHandler.php main/inc/lib/usermanager.lib.php main/inc/lib/userportal.lib.php main/inc/local.inc.php main/install/index.php main/install/update-db-1.8.7-1.8.8.inc.php main/install/version.php main/lang/basque/course_info.inc.php main/lang/english/trad4all.inc.php main/lang/greek/admin.inc.php main/lang/greek/course_home.inc.php main/lang/greek/courses.inc.php main/lang/greek/messages.inc.php main/lang/greek/registration.inc.php main/lang/greek/reservation.inc.php main/lang/greek/survey.inc.php main/lang/greek/trad4all.inc.php main/lang/spanish/admin.inc.php main/lang/spanish/trad4all.inc.php main/mySpace/index.php main/newscorm/learnpath.class.php main/newscorm/scorm_api.php main/social/search.php main/survey/survey.lib.php main/template/default/admin/settings_index.tpl main/template/default/agenda/month.tpl main/template/default/layout/footer.tpl main/template/default/layout/head.tpl main/template/default/layout/login_form.tpl main/upload/upload_word.php main/user/user_import.php main/wiki/wiki.inc.php main/work/view.php main/work/work.lib.php main/work/work.php tests/phpunit/classes/UserManagerTest.lib.php
13 years ago
$user_courses = $this->model->get_courses_of_user($curr_user_id);
$user_coursecodes = array();
// we need only the course codes as these will be used to match against the courses of the category
if ($user_courses != '') {
foreach($user_courses as $key => $value) {
$user_coursecodes[] = $value['code'];
}
}
Merge branch 'chamilo19' Conflicts: 404.php documentation/changelog.html documentation/dependencies.html documentation/installation_guide.html documentation/optimization.html main/admin/careers.php main/admin/course_category.php main/admin/course_edit.php main/admin/course_import.php main/admin/index.php main/admin/session_import.php main/admin/session_list.php main/admin/user_add.php main/admin/user_list.php main/auth/courses.php main/auth/courses_controller.php main/auth/inscription.php main/auth/profile.php main/calendar/agenda.inc.php main/calendar/agenda.lib.php main/coursecopy/classes/Announcement.class.php main/coursecopy/classes/Attendance.class.php main/coursecopy/classes/Course.class.php main/coursecopy/classes/CourseArchiver.class.php main/coursecopy/classes/CourseBuilder.class.php main/coursecopy/classes/CourseRecycler.class.php main/coursecopy/classes/CourseRestorer.class.php main/coursecopy/classes/CourseSelectForm.class.php main/css/base.css main/css/bootstrap.css main/css/chamilo/images/header-logo.png main/css/responsive.css main/document/create_audio.php main/document/document.php main/document/download.php main/exercice/answer.class.php main/exercice/exercise.class.php main/exercice/exercise.lib.php main/exercice/exercise_result.class.php main/exercice/exercise_result.php main/exercice/exercise_show.php main/exercice/exercise_submit.php main/exercice/fill_blanks.class.php main/exercice/question.class.php main/exercice/question_list_admin.inc.php main/exercice/question_pool.php main/exercice/testcategory.class.php main/gradebook/index.php main/gradebook/lib/be/category.class.php main/gradebook/lib/fe/flatviewtable.class.php main/gradebook/lib/scoredisplay.class.php main/inc/ajax/agenda.ajax.php main/inc/ajax/exercise.ajax.php main/inc/ajax/model.ajax.php main/inc/global.inc.php main/inc/lib/add_course.lib.inc.php main/inc/lib/add_courses_to_session_functions.lib.php main/inc/lib/autoload.class.php main/inc/lib/banner.lib.php main/inc/lib/career.lib.php main/inc/lib/course.lib.php main/inc/lib/course_home.lib.php main/inc/lib/display.lib.php main/inc/lib/document.lib.php main/inc/lib/exercise_show_functions.lib.php main/inc/lib/groupmanager.lib.php main/inc/lib/javascript/jqgrid/js/jquery.jqGrid.min.js main/inc/lib/javascript/jquery.lp_minipanel.js main/inc/lib/link.lib.php main/inc/lib/log.class.php main/inc/lib/login.lib.php main/inc/lib/main_api.lib.php main/inc/lib/message.lib.php main/inc/lib/pear/HTML/QuickForm.php main/inc/lib/promotion.lib.php main/inc/lib/security.lib.php main/inc/lib/sessionmanager.lib.php main/inc/lib/symfony/Monolog/Handler/NativeMailerHandler.php main/inc/lib/usermanager.lib.php main/inc/lib/userportal.lib.php main/inc/local.inc.php main/install/index.php main/install/update-db-1.8.7-1.8.8.inc.php main/install/version.php main/lang/basque/course_info.inc.php main/lang/english/trad4all.inc.php main/lang/greek/admin.inc.php main/lang/greek/course_home.inc.php main/lang/greek/courses.inc.php main/lang/greek/messages.inc.php main/lang/greek/registration.inc.php main/lang/greek/reservation.inc.php main/lang/greek/survey.inc.php main/lang/greek/trad4all.inc.php main/lang/spanish/admin.inc.php main/lang/spanish/trad4all.inc.php main/mySpace/index.php main/newscorm/learnpath.class.php main/newscorm/scorm_api.php main/social/search.php main/survey/survey.lib.php main/template/default/admin/settings_index.tpl main/template/default/agenda/month.tpl main/template/default/layout/footer.tpl main/template/default/layout/head.tpl main/template/default/layout/login_form.tpl main/upload/upload_word.php main/user/user_import.php main/wiki/wiki.inc.php main/work/view.php main/work/work.lib.php main/work/work.php tests/phpunit/classes/UserManagerTest.lib.php
13 years ago
if (api_is_drh()) {
$courses = CourseManager::get_courses_followed_by_drh(api_get_user_id());
foreach ($courses as $course) {
$user_coursecodes[] = $course['code'];
Merge branch 'chamilo19' Conflicts: 404.php documentation/changelog.html documentation/dependencies.html documentation/installation_guide.html documentation/optimization.html main/admin/careers.php main/admin/course_category.php main/admin/course_edit.php main/admin/course_import.php main/admin/index.php main/admin/session_import.php main/admin/session_list.php main/admin/user_add.php main/admin/user_list.php main/auth/courses.php main/auth/courses_controller.php main/auth/inscription.php main/auth/profile.php main/calendar/agenda.inc.php main/calendar/agenda.lib.php main/coursecopy/classes/Announcement.class.php main/coursecopy/classes/Attendance.class.php main/coursecopy/classes/Course.class.php main/coursecopy/classes/CourseArchiver.class.php main/coursecopy/classes/CourseBuilder.class.php main/coursecopy/classes/CourseRecycler.class.php main/coursecopy/classes/CourseRestorer.class.php main/coursecopy/classes/CourseSelectForm.class.php main/css/base.css main/css/bootstrap.css main/css/chamilo/images/header-logo.png main/css/responsive.css main/document/create_audio.php main/document/document.php main/document/download.php main/exercice/answer.class.php main/exercice/exercise.class.php main/exercice/exercise.lib.php main/exercice/exercise_result.class.php main/exercice/exercise_result.php main/exercice/exercise_show.php main/exercice/exercise_submit.php main/exercice/fill_blanks.class.php main/exercice/question.class.php main/exercice/question_list_admin.inc.php main/exercice/question_pool.php main/exercice/testcategory.class.php main/gradebook/index.php main/gradebook/lib/be/category.class.php main/gradebook/lib/fe/flatviewtable.class.php main/gradebook/lib/scoredisplay.class.php main/inc/ajax/agenda.ajax.php main/inc/ajax/exercise.ajax.php main/inc/ajax/model.ajax.php main/inc/global.inc.php main/inc/lib/add_course.lib.inc.php main/inc/lib/add_courses_to_session_functions.lib.php main/inc/lib/autoload.class.php main/inc/lib/banner.lib.php main/inc/lib/career.lib.php main/inc/lib/course.lib.php main/inc/lib/course_home.lib.php main/inc/lib/display.lib.php main/inc/lib/document.lib.php main/inc/lib/exercise_show_functions.lib.php main/inc/lib/groupmanager.lib.php main/inc/lib/javascript/jqgrid/js/jquery.jqGrid.min.js main/inc/lib/javascript/jquery.lp_minipanel.js main/inc/lib/link.lib.php main/inc/lib/log.class.php main/inc/lib/login.lib.php main/inc/lib/main_api.lib.php main/inc/lib/message.lib.php main/inc/lib/pear/HTML/QuickForm.php main/inc/lib/promotion.lib.php main/inc/lib/security.lib.php main/inc/lib/sessionmanager.lib.php main/inc/lib/symfony/Monolog/Handler/NativeMailerHandler.php main/inc/lib/usermanager.lib.php main/inc/lib/userportal.lib.php main/inc/local.inc.php main/install/index.php main/install/update-db-1.8.7-1.8.8.inc.php main/install/version.php main/lang/basque/course_info.inc.php main/lang/english/trad4all.inc.php main/lang/greek/admin.inc.php main/lang/greek/course_home.inc.php main/lang/greek/courses.inc.php main/lang/greek/messages.inc.php main/lang/greek/registration.inc.php main/lang/greek/reservation.inc.php main/lang/greek/survey.inc.php main/lang/greek/trad4all.inc.php main/lang/spanish/admin.inc.php main/lang/spanish/trad4all.inc.php main/mySpace/index.php main/newscorm/learnpath.class.php main/newscorm/scorm_api.php main/social/search.php main/survey/survey.lib.php main/template/default/admin/settings_index.tpl main/template/default/agenda/month.tpl main/template/default/layout/footer.tpl main/template/default/layout/head.tpl main/template/default/layout/login_form.tpl main/upload/upload_word.php main/user/user_import.php main/wiki/wiki.inc.php main/work/view.php main/work/work.lib.php main/work/work.php tests/phpunit/classes/UserManagerTest.lib.php
13 years ago
}
}
Merge branch 'chamilo19' Conflicts: 404.php documentation/changelog.html documentation/dependencies.html documentation/installation_guide.html documentation/optimization.html main/admin/careers.php main/admin/course_category.php main/admin/course_edit.php main/admin/course_import.php main/admin/index.php main/admin/session_import.php main/admin/session_list.php main/admin/user_add.php main/admin/user_list.php main/auth/courses.php main/auth/courses_controller.php main/auth/inscription.php main/auth/profile.php main/calendar/agenda.inc.php main/calendar/agenda.lib.php main/coursecopy/classes/Announcement.class.php main/coursecopy/classes/Attendance.class.php main/coursecopy/classes/Course.class.php main/coursecopy/classes/CourseArchiver.class.php main/coursecopy/classes/CourseBuilder.class.php main/coursecopy/classes/CourseRecycler.class.php main/coursecopy/classes/CourseRestorer.class.php main/coursecopy/classes/CourseSelectForm.class.php main/css/base.css main/css/bootstrap.css main/css/chamilo/images/header-logo.png main/css/responsive.css main/document/create_audio.php main/document/document.php main/document/download.php main/exercice/answer.class.php main/exercice/exercise.class.php main/exercice/exercise.lib.php main/exercice/exercise_result.class.php main/exercice/exercise_result.php main/exercice/exercise_show.php main/exercice/exercise_submit.php main/exercice/fill_blanks.class.php main/exercice/question.class.php main/exercice/question_list_admin.inc.php main/exercice/question_pool.php main/exercice/testcategory.class.php main/gradebook/index.php main/gradebook/lib/be/category.class.php main/gradebook/lib/fe/flatviewtable.class.php main/gradebook/lib/scoredisplay.class.php main/inc/ajax/agenda.ajax.php main/inc/ajax/exercise.ajax.php main/inc/ajax/model.ajax.php main/inc/global.inc.php main/inc/lib/add_course.lib.inc.php main/inc/lib/add_courses_to_session_functions.lib.php main/inc/lib/autoload.class.php main/inc/lib/banner.lib.php main/inc/lib/career.lib.php main/inc/lib/course.lib.php main/inc/lib/course_home.lib.php main/inc/lib/display.lib.php main/inc/lib/document.lib.php main/inc/lib/exercise_show_functions.lib.php main/inc/lib/groupmanager.lib.php main/inc/lib/javascript/jqgrid/js/jquery.jqGrid.min.js main/inc/lib/javascript/jquery.lp_minipanel.js main/inc/lib/link.lib.php main/inc/lib/log.class.php main/inc/lib/login.lib.php main/inc/lib/main_api.lib.php main/inc/lib/message.lib.php main/inc/lib/pear/HTML/QuickForm.php main/inc/lib/promotion.lib.php main/inc/lib/security.lib.php main/inc/lib/sessionmanager.lib.php main/inc/lib/symfony/Monolog/Handler/NativeMailerHandler.php main/inc/lib/usermanager.lib.php main/inc/lib/userportal.lib.php main/inc/local.inc.php main/install/index.php main/install/update-db-1.8.7-1.8.8.inc.php main/install/version.php main/lang/basque/course_info.inc.php main/lang/english/trad4all.inc.php main/lang/greek/admin.inc.php main/lang/greek/course_home.inc.php main/lang/greek/courses.inc.php main/lang/greek/messages.inc.php main/lang/greek/registration.inc.php main/lang/greek/reservation.inc.php main/lang/greek/survey.inc.php main/lang/greek/trad4all.inc.php main/lang/spanish/admin.inc.php main/lang/spanish/trad4all.inc.php main/mySpace/index.php main/newscorm/learnpath.class.php main/newscorm/scorm_api.php main/social/search.php main/survey/survey.lib.php main/template/default/admin/settings_index.tpl main/template/default/agenda/month.tpl main/template/default/layout/footer.tpl main/template/default/layout/head.tpl main/template/default/layout/login_form.tpl main/upload/upload_word.php main/user/user_import.php main/wiki/wiki.inc.php main/work/view.php main/work/work.lib.php main/work/work.php tests/phpunit/classes/UserManagerTest.lib.php
13 years ago
$data['user_coursecodes'] = $user_coursecodes;
$data['action'] = $action;
$data['message'] = $message;
$data['content'] = $content;
$data['error'] = $error;
// render to the view
$this->view->set_data($data);
$this->view->set_layout('layout');
$this->view->set_template('courses_categories');
$this->view->render();
}
/**
* Search courses
*/
public function search_courses($search_term, $message = '', $error = '') {
$data = array();
$browse_course_categories = $this->model->browse_course_categories();
$data['browse_courses_in_category'] = $this->model->search_courses($search_term);
$data['browse_course_categories'] = $browse_course_categories;
$data['search_term'] = Security::remove_XSS($search_term); //filter before showing in template
// getting all the courses to which the user is subscribed to
$curr_user_id = api_get_user_id();
$user_courses = $this->model->get_courses_of_user($curr_user_id);
$user_coursecodes = array();
// we need only the course codes as these will be used to match against the courses of the category
if ($user_courses != '') {
foreach ($user_courses as $key => $value) {
$user_coursecodes[] = $value['code'];
}
}
$data['user_coursecodes'] = $user_coursecodes;
$data['message'] = $message;
$data['error'] = $error;
$data['action'] = 'display_courses';
// render to the view
$this->view->set_data($data);
$this->view->set_layout('layout');
$this->view->set_template('courses_categories');
$this->view->render();
}
/**
* Auto user subcription to a course
*/
public function subscribe_user($course_code, $search_term, $category_code) {
$data = array();
$courseInfo = api_get_course_info($course_code);
// The course must be open in order to access the auto subscription
if (in_array($courseInfo['visibility'], array(COURSE_VISIBILITY_CLOSED, COURSE_VISIBILITY_REGISTERED, COURSE_VISIBILITY_HIDDEN))) {
$error = get_lang('SubscribingNotAllowed');
//$message = get_lang('SubscribingNotAllowed');
} else {
$result = $this->model->subscribe_user($course_code);
if (!$result) {
$error = get_lang('CourseRegistrationCodeIncorrect');
} else {
//Redirect directly to the course after subscription
$message = $result['message'];
$content = $result['content'];
}
}
Merge branch 'chamilo19' Conflicts: 404.php documentation/changelog.html documentation/dependencies.html documentation/installation_guide.html documentation/optimization.html main/admin/careers.php main/admin/course_category.php main/admin/course_edit.php main/admin/course_import.php main/admin/index.php main/admin/session_import.php main/admin/session_list.php main/admin/user_add.php main/admin/user_list.php main/auth/courses.php main/auth/courses_controller.php main/auth/inscription.php main/auth/profile.php main/calendar/agenda.inc.php main/calendar/agenda.lib.php main/coursecopy/classes/Announcement.class.php main/coursecopy/classes/Attendance.class.php main/coursecopy/classes/Course.class.php main/coursecopy/classes/CourseArchiver.class.php main/coursecopy/classes/CourseBuilder.class.php main/coursecopy/classes/CourseRecycler.class.php main/coursecopy/classes/CourseRestorer.class.php main/coursecopy/classes/CourseSelectForm.class.php main/css/base.css main/css/bootstrap.css main/css/chamilo/images/header-logo.png main/css/responsive.css main/document/create_audio.php main/document/document.php main/document/download.php main/exercice/answer.class.php main/exercice/exercise.class.php main/exercice/exercise.lib.php main/exercice/exercise_result.class.php main/exercice/exercise_result.php main/exercice/exercise_show.php main/exercice/exercise_submit.php main/exercice/fill_blanks.class.php main/exercice/question.class.php main/exercice/question_list_admin.inc.php main/exercice/question_pool.php main/exercice/testcategory.class.php main/gradebook/index.php main/gradebook/lib/be/category.class.php main/gradebook/lib/fe/flatviewtable.class.php main/gradebook/lib/scoredisplay.class.php main/inc/ajax/agenda.ajax.php main/inc/ajax/exercise.ajax.php main/inc/ajax/model.ajax.php main/inc/global.inc.php main/inc/lib/add_course.lib.inc.php main/inc/lib/add_courses_to_session_functions.lib.php main/inc/lib/autoload.class.php main/inc/lib/banner.lib.php main/inc/lib/career.lib.php main/inc/lib/course.lib.php main/inc/lib/course_home.lib.php main/inc/lib/display.lib.php main/inc/lib/document.lib.php main/inc/lib/exercise_show_functions.lib.php main/inc/lib/groupmanager.lib.php main/inc/lib/javascript/jqgrid/js/jquery.jqGrid.min.js main/inc/lib/javascript/jquery.lp_minipanel.js main/inc/lib/link.lib.php main/inc/lib/log.class.php main/inc/lib/login.lib.php main/inc/lib/main_api.lib.php main/inc/lib/message.lib.php main/inc/lib/pear/HTML/QuickForm.php main/inc/lib/promotion.lib.php main/inc/lib/security.lib.php main/inc/lib/sessionmanager.lib.php main/inc/lib/symfony/Monolog/Handler/NativeMailerHandler.php main/inc/lib/usermanager.lib.php main/inc/lib/userportal.lib.php main/inc/local.inc.php main/install/index.php main/install/update-db-1.8.7-1.8.8.inc.php main/install/version.php main/lang/basque/course_info.inc.php main/lang/english/trad4all.inc.php main/lang/greek/admin.inc.php main/lang/greek/course_home.inc.php main/lang/greek/courses.inc.php main/lang/greek/messages.inc.php main/lang/greek/registration.inc.php main/lang/greek/reservation.inc.php main/lang/greek/survey.inc.php main/lang/greek/trad4all.inc.php main/lang/spanish/admin.inc.php main/lang/spanish/trad4all.inc.php main/mySpace/index.php main/newscorm/learnpath.class.php main/newscorm/scorm_api.php main/social/search.php main/survey/survey.lib.php main/template/default/admin/settings_index.tpl main/template/default/agenda/month.tpl main/template/default/layout/footer.tpl main/template/default/layout/head.tpl main/template/default/layout/login_form.tpl main/upload/upload_word.php main/user/user_import.php main/wiki/wiki.inc.php main/work/view.php main/work/work.lib.php main/work/work.php tests/phpunit/classes/UserManagerTest.lib.php
13 years ago
if (!empty($search_term)) {
$this->search_courses($search_term, $message, $error);
} else {
$this->courses_categories('subcribe', $category_code, $message, $error, $content);
}
return $result;
}
/**
* Create a category
* render to listing view
* @param string Category title
*/
public function add_course_category($category_title) {
$result = $this->model->store_course_category($category_title);
$message = '';
if ($result) { $message = get_lang("CourseCategoryStored"); }
else { $error = get_lang('ACourseCategoryWithThisNameAlreadyExists');}
$action = 'sortmycourses';
$this->courses_list($action, $message);
}
/**
* Change course category
* render to listing view
* @param string Course code
* @param int Category id
*/
public function change_course_category($courseId, $category_id) {
$result = $this->model->store_changecoursecategory($courseId, $category_id);
$message = '';
if ($result) { $message = get_lang('EditCourseCategorySucces'); }
$action = 'sortmycourses';
$this->courses_list($action, $message);
}
/**
* Move up/down courses inside a category
* render to listing view
* @param string move to up or down
* @param string Course code
* @param int Category id
*/
public function move_course($move, $course_code, $category_id) {
$result = $this->model->move_course($move, $course_code, $category_id);
$message = '';
if ($result) { $message = get_lang('CourseSortingDone'); }
$action = 'sortmycourses';
$this->courses_list($action, $message);
}
/**
* Move up/down categories
* render to listing view
* @param string move to up or down
* @param int Category id
*/
public function move_category($move, $category_id) {
$result = $this->model->move_category($move, $category_id);
$message = '';
if ($result) { $message = get_lang('CategorySortingDone'); }
$action = 'sortmycourses';
$this->courses_list($action, $message);
}
/**
* Edit course category
* render to listing view
* @param string Category title
* @param int Category id
*/
public function edit_course_category($title, $category) {
$result = $this->model->store_edit_course_category($title, $category);
$message = '';
if ($result) { $message = get_lang('CourseCategoryEditStored'); }
$action = 'sortmycourses';
$this->courses_list($action, $message);
}
/**
* Delete a course category
* render to listing view
* @param int Category id
*/
public function delete_course_category($category_id) {
$result = $this->model->delete_course_category($category_id);
$message = '';
if ($result) { $message = get_lang('CourseCategoryDeleted'); }
$action = 'sortmycourses';
$this->courses_list($action, $message);
}
/**
* Unsubscribe user from a course
* render to listing view
* @param string Course code
*/
public function unsubscribe_user_from_course($courseCode, $search_term = null, $category_code = null) {
$courseInfo = api_get_course_info($courseCode);
$result = $this->model->remove_user_from_course($courseInfo['real_id']);
$message = '';
if ($result) { $message = get_lang('YouAreNowUnsubscribed'); }
$action = 'sortmycourses';
if (!empty($search_term)) {
$this->search_courses($search_term, $message, $error);
} else {
$this->courses_categories('subcribe', $category_code, $message, $error);
}
}
}