]> git.mjollnir.org Git - moodle.git/commitdiff
When unenrolling students, remove them from groups too
authormoodler <moodler>
Fri, 30 Jan 2004 06:44:02 +0000 (06:44 +0000)
committermoodler <moodler>
Fri, 30 Jan 2004 06:44:02 +0000 (06:44 +0000)
lib/moodlelib.php

index 7e3fc467e9fa42133d4c95db21cb4d65892797ad..259331a4a2c4b34d82e61900303303ccd29acaf2 100644 (file)
@@ -775,21 +775,26 @@ function enrol_student($userid, $courseid) {
     return true;
 }
 
-function unenrol_student($user, $course=0) {
+function unenrol_student($userid, $courseid=0) {
 /// Unenrols a student from a given course
 
-    if ($course) {
+    if ($courseid) {
         /// First delete any crucial stuff that might still send mail
-        if ($forums = get_records("forum", "course", $course)) {
+        if ($forums = get_records("forum", "course", $courseid)) {
             foreach ($forums as $forum) {
-                delete_records("forum_subscriptions", "forum", $forum->id, "userid", $user);
+                delete_records("forum_subscriptions", "forum", $forum->id, "userid", $userid);
             }
         }
-        return delete_records("user_students", "userid", $user, "course", $course);
+        if ($groups = get_groups($courseid, $userid)) {
+            foreach ($groups as $group) {
+                delete_records("groups_members", "groupid", $group->id, "userid", $userid);
+            }
+        }
+        return delete_records("user_students", "userid", $userid, "course", $courseid);
 
     } else {
-        delete_records("forum_subscriptions", "userid", $user);
-        return delete_records("user_students", "userid", $user);
+        delete_records("forum_subscriptions", "userid", $userid);
+        return delete_records("user_students", "userid", $userid);
     }
 }