|
@@ -3778,13 +3778,6 @@ class SessionManager
|
|
|
$teacherToAdd = null;
|
|
|
// Only one coach is added.
|
|
|
if ($onlyAddFirstCoachOrTeacher == true) {
|
|
|
- // Un subscribe everyone.
|
|
|
- $teacherList = CourseManager::get_teacher_list_from_course_code($course_code);
|
|
|
- if (!empty($teacherList)) {
|
|
|
- foreach ($teacherList as $teacher) {
|
|
|
- CourseManager::unsubscribe_user($teacher['user_id'], $course_code);
|
|
|
- }
|
|
|
- }
|
|
|
|
|
|
foreach ($course_coaches as $course_coach) {
|
|
|
$coach_id = UserManager::get_user_id_from_username($course_coach);
|
|
@@ -3794,6 +3787,19 @@ class SessionManager
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ // Un subscribe everyone that's not in the list.
|
|
|
+ $teacherList = CourseManager::get_teacher_list_from_course_code($course_code);
|
|
|
+ if (!empty($teacherList)) {
|
|
|
+ foreach ($teacherList as $teacher) {
|
|
|
+ if ($teacherToAdd != $teacher['user_id']) {
|
|
|
+ CourseManager::unsubscribe_user(
|
|
|
+ $teacher['user_id'],
|
|
|
+ $course_code
|
|
|
+ );
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
if (!empty($teacherToAdd)) {
|
|
|
SessionManager::updateCoaches($session_id, $course_code, array($teacherToAdd), true);
|
|
|
CourseManager::subscribe_user(
|
|
@@ -3820,11 +3826,18 @@ class SessionManager
|
|
|
if (!empty($teacherToAdd)) {
|
|
|
// Deleting all course teachers and adding the only coach as teacher.
|
|
|
$teacherList = CourseManager::get_teacher_list_from_course_code($course_code);
|
|
|
+
|
|
|
if (!empty($teacherList)) {
|
|
|
foreach ($teacherList as $teacher) {
|
|
|
- CourseManager::unsubscribe_user($teacher['user_id'], $course_code);
|
|
|
+ if (!in_array($teacher['user_id'], $teacherToAdd)) {
|
|
|
+ CourseManager::unsubscribe_user(
|
|
|
+ $teacher['user_id'],
|
|
|
+ $course_code
|
|
|
+ );
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
foreach ($teacherToAdd as $teacherId) {
|
|
|
CourseManager::subscribe_user(
|
|
|
$teacherId,
|