Merge branch '1.9.x' of github.com:chamilo/chamilo-lms into 1.9.x

1.9.x
Yannick Warnier 11 years ago
commit 13072f0ad2
  1. 2
      main/admin/session_import.php
  2. 86
      main/inc/lib/sessionmanager.lib.php

@ -534,7 +534,7 @@ $form->addElement('radio', 'file_type', array(null, '<a href="example_session.xm
$form->addElement('checkbox', 'overwrite', null, get_lang('IfSessionExistsUpdate'));
$form->addElement('checkbox', 'delete_users_not_in_list', null, get_lang('DeleteUsersNotInList'));
$form->addElement('checkbox', 'update_course_coaches', null, get_lang('UpdateCourseCoach'));
$form->addElement('checkbox', 'update_course_coaches', null, get_lang('CleanAndUpdateCourseCoaches'));
$form->addElement('checkbox', 'sendMail', null, get_lang('SendMailToUsers'));
$form->addElement('button', 'submit', get_lang('ImportSession'));

@ -1979,7 +1979,6 @@ class SessionManager
*/
public static function set_coach_to_course_session($user_id, $session_id = 0, $course_code = '', $nocoach = false)
{
// Definition of variables
$user_id = intval($user_id);
@ -2030,12 +2029,16 @@ class SessionManager
$sql = "SELECT id_user FROM $tbl_session_rel_course_rel_user WHERE id_session = '$session_id' AND course_code = '$course_code' AND id_user = '$user_id'";
$rs_check = Database::query($sql);
//Then update or insert
// Then update or insert.
if (Database::num_rows($rs_check) > 0) {
$sql = "UPDATE $tbl_session_rel_course_rel_user SET status = 2 WHERE id_session = '$session_id' AND course_code = '$course_code' AND id_user = '$user_id' ";
$sql = "UPDATE $tbl_session_rel_course_rel_user SET status = 2
WHERE id_session = '$session_id' AND course_code = '$course_code' AND id_user = '$user_id' ";
Database::query($sql);
if (Database::affected_rows() > 0) return true;
else return false;
if (Database::affected_rows() > 0) {
return true;
} else {
return false;
}
} else {
$sql = "INSERT INTO $tbl_session_rel_course_rel_user(id_session, course_code, id_user, status) VALUES('$session_id', '$course_code', '$user_id', 2)";
Database::query($sql);
@ -2801,7 +2804,6 @@ class SessionManager
$session_counter++;
} else {
$sessionId = null;
if (isset($extraFields) && !empty($extraFields)) {
$sessionId = self::get_session_id_from_original_id($enreg['extra_'.$extraFieldId], $extraFieldId);
if (empty($sessionId)) {
@ -2812,6 +2814,7 @@ class SessionManager
} else {
$my_session_result = self::get_session_by_name($enreg['SessionName']);
}
if ($my_session_result === false) {
// Creating a session.
@ -2829,16 +2832,39 @@ class SessionManager
$my_session_result = SessionManager::get_session_by_name($enreg['SessionName']);
$session_id = $my_session_result['id'];
if ($debug) {
if ($session_id) {
if ($session_id) {
foreach ($enreg as $key => $value) {
if (substr($key, 0, 6) == 'extra_') { //an extra field
self::update_session_extra_field_value($session_id, substr($key, 6), $value);
}
}
$logger->addInfo("Sessions - #$session_id created: $session_name");
if ($debug) {
$logger->addInfo("Sessions - #$session_id created: $session_name");
}
} else {
$logger->addError("Sessions - Session NOT created: $session_name");
if ($debug) {
$logger->addError("Sessions - Session NOT created: $session_name");
}
}
// Delete session-user relation only for students
$sql = "DELETE FROM $tbl_session_user
WHERE id_session = '$session_id' AND relation_type <> ".SESSION_RELATION_TYPE_RRHH;
Database::query($sql);
$sql = "DELETE FROM $tbl_session_course WHERE id_session = '$session_id'";
Database::query($sql);
// Delete session-course-user relationships students and coaches.
if ($updateCourseCoaches) {
$sql = "DELETE FROM $tbl_session_course_user WHERE id_session = '$session_id' AND status in ('0', '2')";
Database::query($sql);
} else {
// Delete session-course-user relation ships *only* for students.
$sql = "DELETE FROM $tbl_session_course_user WHERE id_session = '$session_id' AND status <> 2";
Database::query($sql);
}
}
} else {
@ -2872,30 +2898,32 @@ class SessionManager
list($session_id) = Database::fetch_array($row);
}
foreach ($enreg as $key => $value) {
if (substr($key, 0, 6) == 'extra_') { //an extra field
self::update_session_extra_field_value($session_id, substr($key, 6), $value);
}
}
// Delete session-user relation only for students
$sql = "DELETE FROM $tbl_session_user
WHERE id_session = '$session_id' AND relation_type <> ".SESSION_RELATION_TYPE_RRHH;
Database::query($sql);
if ($session_id) {
$sql = "DELETE FROM $tbl_session_course WHERE id_session = '$session_id'";
Database::query($sql);
foreach ($enreg as $key => $value) {
if (substr($key, 0, 6) == 'extra_') { //an extra field
self::update_session_extra_field_value($session_id, substr($key, 6), $value);
}
}
// Delete session-course-user relationships students and coaches.
if ($updateCourseCoaches) {
$sql = "DELETE FROM $tbl_session_course_user WHERE id_session = '$session_id' AND status in ('0', '2')";
// Delete session-user relation only for students
$sql = "DELETE FROM $tbl_session_user
WHERE id_session = '$session_id' AND relation_type <> ".SESSION_RELATION_TYPE_RRHH;
Database::query($sql);
} else {
// Delete session-course-user relation ships *only* for students.
$sql = "DELETE FROM $tbl_session_course_user WHERE id_session = '$session_id' AND status <> 2";
$sql = "DELETE FROM $tbl_session_course WHERE id_session = '$session_id'";
Database::query($sql);
}
// Delete session-course-user relationships students and coaches.
if ($updateCourseCoaches) {
$sql = "DELETE FROM $tbl_session_course_user WHERE id_session = '$session_id' AND status in ('0', '2')";
Database::query($sql);
} else {
// Delete session-course-user relation ships *only* for students.
$sql = "DELETE FROM $tbl_session_course_user WHERE id_session = '$session_id' AND status <> 2";
Database::query($sql);
}
}
}
$session_counter++;
}
@ -2994,7 +3022,7 @@ class SessionManager
$savedCoaches = array();
// only edit if add_teachers_to_sessions_courses is set.
if ($addTeachersToSession) {
// Adding course teachers as course session teachers
// Adding course teachers as course session teachers.
$alreadyAddedTeachers = CourseManager::get_teacher_list_from_course_code($course_code);
if (!empty($alreadyAddedTeachers)) {

Loading…
Cancel
Save