In a special course, upon entering, the students must subscribe to the course CT#600

skala
Carlos Vargas 16 years ago
parent 408203a850
commit 6eb52091d8
  1. 10
      main/course_home/course_home.php
  2. 15
      main/inc/lib/course.lib.php
  3. 20
      user_portal.php

@ -153,6 +153,16 @@ $_course['official_code'] = $course_code;
api_session_unregister('toolgroup');
$is_speacialcourse = CourseManager::is_special_course($course_code);
if ($is_speacialcourse==true){
$autoreg=Security::remove_XSS($_GET['autoreg']);
if ($autoreg==1){
CourseManager::subscribe_user($user_id, $course_code, $status = STUDENT);
}
}
/*
-----------------------------------------------------------
Is the user allowed here?

@ -2179,4 +2179,19 @@ class CourseManager {
Database::query($insert_sql,__FILE__,__LINE__);
}
}
public static function is_special_course($course_code){
$tbl_course_field_value = Database::get_main_table(TABLE_MAIN_COURSE_FIELD_VALUES);
$tbl_course_field = Database::get_main_table(TABLE_MAIN_COURSE_FIELD);
$sql = "SELECT course_code FROM $tbl_course_field_value tcfv INNER JOIN $tbl_course_field tcf ON " .
" tcfv.field_id = tcf.id WHERE tcf.field_variable = 'special_course' AND tcfv.field_value = 1 AND course_code='$course_code'";
$special_course_result = Database::query($sql, __FILE__, __LINE__);
$affected_rows = Database::affected_rows();
if (!empty($affected_rows)){
return true;
}
}
} //end class CourseManager

@ -269,16 +269,16 @@ function display_special_courses ($user_id) {
$user_id = intval($user_id);
$special_course_list = array();
$tbl_course = Database::get_main_table(TABLE_MAIN_COURSE);
$tbl_course_user = Database::get_main_table(TABLE_MAIN_COURSE_USER);
$tbl_course_field = Database :: get_main_table(TABLE_MAIN_COURSE_FIELD);
$tbl_course_field_value = Database :: get_main_table(TABLE_MAIN_COURSE_FIELD_VALUES);
$tbl_user_course_category = Database :: get_user_personal_table(TABLE_USER_COURSE_CATEGORY);
$tbl_course = Database::get_main_table(TABLE_MAIN_COURSE);
$tbl_course_user = Database::get_main_table(TABLE_MAIN_COURSE_USER);
$tbl_course_field = Database::get_main_table(TABLE_MAIN_COURSE_FIELD);
$tbl_course_field_value = Database::get_main_table(TABLE_MAIN_COURSE_FIELD_VALUES);
$tbl_user_course_category = Database::get_user_personal_table(TABLE_USER_COURSE_CATEGORY);
// get course list auto-register
$sql = "SELECT course_code FROM $tbl_course_field_value tcfv INNER JOIN $tbl_course_field tcf ON " .
" tcfv.field_id = tcf.id WHERE tcf.field_variable = 'special_course' AND tcfv.field_value = 1 ";
$special_course_result = Database::query($sql, __FILE__, __LINE__);
if(Database::num_rows($special_course_result)>0) {
$special_course_list = array();
@ -334,7 +334,7 @@ function display_special_courses ($user_id) {
$course_visibility = $course['visibility'];
if ($course_visibility != COURSE_VISIBILITY_CLOSED || $course['status'] == COURSEMANAGER) {
$course_title = '<a href="'.api_get_path(WEB_COURSE_PATH).$course['directory'].'/?id_session=0">'.$course['title'].'</a>';
$course_title = '<a href="'.api_get_path(WEB_COURSE_PATH).$course['directory'].'/?id_session=0&amp;autoreg=1">'.$course['title'].'</a>';
} else {
$course_title = $course['title']." ".get_lang('CourseClosed');
}
@ -407,9 +407,9 @@ function display_courses($user_id) {
function display_courses_in_category($user_category_id) {
global $_user;
// table definitions
$TABLECOURS=Database::get_main_table(TABLE_MAIN_COURSE);
$TABLECOURSUSER=Database::get_main_table(TABLE_MAIN_COURSE_USER);
$TABLE_USER_COURSE_CATEGORY = Database::get_user_personal_table(TABLE_USER_COURSE_CATEGORY);
$TABLECOURS = Database::get_main_table(TABLE_MAIN_COURSE);
$TABLECOURSUSER = Database::get_main_table(TABLE_MAIN_COURSE_USER);
$TABLE_USER_COURSE_CATEGORY = Database::get_user_personal_table(TABLE_USER_COURSE_CATEGORY);
$TABLE_COURSE_FIELD = Database :: get_main_table(TABLE_MAIN_COURSE_FIELD);
$TABLE_COURSE_FIELD_VALUE = Database :: get_main_table(TABLE_MAIN_COURSE_FIELD_VALUES);

Loading…
Cancel
Save