]> git.mjollnir.org Git - moodle.git/commitdiff
MDL-13235 - bulk user action removing users etc was buggy,
authorpoltawski <poltawski>
Tue, 5 Feb 2008 15:24:11 +0000 (15:24 +0000)
committerpoltawski <poltawski>
Tue, 5 Feb 2008 15:24:11 +0000 (15:24 +0000)
merged from MOODLE_19_STABLE

admin/user/lib.php
admin/user/user_bulk.php

index 28c2e33ee2048d49870ce26368bfd5dce555da39..fe57cdb50bb3eea1646b191fcae742ee5c3292d4 100644 (file)
@@ -14,8 +14,8 @@ function add_selection_all($ufiltering) {
 
     if ($rs = get_recordset_select('user', $sqlwhere, 'fullname', 'id,'.sql_fullname().' AS fullname')) {
         while ($user = rs_fetch_next_record($rs)) {
-            if (!in_array($user->id, $SESSION->bulk_users)) {
-                $SESSION->bulk_users[] = $user->id;
+            if (! isset($SESSION->bulk_users[$user->id])) {
+                $SESSION->bulk_users[$user->id] = $user->id;
             }
         }
         rs_close($rs);
@@ -40,7 +40,7 @@ function get_selection_data($ufiltering) {
         if ($scount < MAX_BULK_USERS) {
             $in = implode(',', $SESSION->bulk_users);
         } else {
-            $bulkusers = array_slice($SESSION->bulk_users, 0, MAX_BULK_USERS);
+            $bulkusers = array_slice($SESSION->bulk_users, 0, MAX_BULK_USERS, true);
             $in = implode(',', $bulkusers);
         }
         $userlist['susers'] = get_records_select_menu('user', "id IN ($in)", 'fullname', 'id,'.sql_fullname().' AS fullname');
index 14e0301529350cfc80aba5ef5b5747c702cb8a57..ae13d7c92941f82d28a46d96e9514c7fa63ffc3d 100755 (executable)
@@ -42,8 +42,8 @@ if ($data = $user_bulk_form->get_data(false)) {
                     if ($userid == -1) {
                         continue;
                     }
-                    if (!in_array($userid, $SESSION->bulk_users)) {
-                        $SESSION->bulk_users[] = $userid;
+                    if (!isset($SESSION->bulk_users[$userid])) {
+                        $SESSION->bulk_users[$userid] = $userid;
                     }
                 }
             }