From f2545bb7adf7f5d577a5c3630009bf25a8c14811 Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 24 Apr 2014 08:54:50 -0400 Subject: [PATCH 1/2] Verifiying if user can be subscribed -refs #6648 --- main/inc/lib/groupmanager.lib.php | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/main/inc/lib/groupmanager.lib.php b/main/inc/lib/groupmanager.lib.php index 455dc6ba0e..f0177c4588 100644 --- a/main/inc/lib/groupmanager.lib.php +++ b/main/inc/lib/groupmanager.lib.php @@ -1469,14 +1469,19 @@ class GroupManager $user_ids = is_array($user_ids) ? $user_ids : array($user_ids); $result = true; $course_id = api_get_course_int_id(); + $category = self :: get_category_from_group($group_id); + //$result &= (self :: number_of_students($group_id) < self :: maximum_number_of_students($group_id)); $table_group_user = Database :: get_course_table(TABLE_GROUP_USER); if (!empty($user_ids)) { foreach ($user_ids as $user_id) { - $user_id = Database::escape_string($user_id); - $group_id = Database::escape_string($group_id); - $sql = "INSERT INTO ".$table_group_user." (c_id, user_id, group_id) - VALUES ('$course_id', '".$user_id."', '".$group_id."')"; - $result &= Database::query($sql); + $groupCount = self::user_in_number_of_groups($user_id, $category['id']); + if (self::can_user_subscribe($user_id, $group_id)) { + $user_id = Database::escape_string($user_id); + $group_id = Database::escape_string($group_id); + $sql = "INSERT INTO ".$table_group_user." (c_id, user_id, group_id) + VALUES ('$course_id', '".$user_id."', '".$group_id."')"; + $result &= Database::query($sql); + } } } return $result; From 0da800614756386a46fbed570e34a88d14c86127 Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 24 Apr 2014 09:04:50 -0400 Subject: [PATCH 2/2] Verifiying if user can be subscribed -refs #6662 --- main/inc/lib/groupmanager.lib.php | 3 --- 1 file changed, 3 deletions(-) diff --git a/main/inc/lib/groupmanager.lib.php b/main/inc/lib/groupmanager.lib.php index f0177c4588..65ed47a2a2 100644 --- a/main/inc/lib/groupmanager.lib.php +++ b/main/inc/lib/groupmanager.lib.php @@ -1469,12 +1469,9 @@ class GroupManager $user_ids = is_array($user_ids) ? $user_ids : array($user_ids); $result = true; $course_id = api_get_course_int_id(); - $category = self :: get_category_from_group($group_id); - //$result &= (self :: number_of_students($group_id) < self :: maximum_number_of_students($group_id)); $table_group_user = Database :: get_course_table(TABLE_GROUP_USER); if (!empty($user_ids)) { foreach ($user_ids as $user_id) { - $groupCount = self::user_in_number_of_groups($user_id, $category['id']); if (self::can_user_subscribe($user_id, $group_id)) { $user_id = Database::escape_string($user_id); $group_id = Database::escape_string($group_id);