aboutsummaryrefslogtreecommitdiff
path: root/mod/bulk_user_admin/actions/bulk_user_admin/delete.php
diff options
context:
space:
mode:
Diffstat (limited to 'mod/bulk_user_admin/actions/bulk_user_admin/delete.php')
-rw-r--r--mod/bulk_user_admin/actions/bulk_user_admin/delete.php30
1 files changed, 30 insertions, 0 deletions
diff --git a/mod/bulk_user_admin/actions/bulk_user_admin/delete.php b/mod/bulk_user_admin/actions/bulk_user_admin/delete.php
new file mode 100644
index 000000000..0d7a7e7df
--- /dev/null
+++ b/mod/bulk_user_admin/actions/bulk_user_admin/delete.php
@@ -0,0 +1,30 @@
+<?php
+/**
+ * Bulk delete users
+ */
+
+$guids = get_input('bulk_user_admin_guids');
+$errors = array();
+
+foreach ($guids as $guid) {
+ $user = get_entity($guid);
+
+ if (!$user instanceof ElggUser) {
+ $errors[] = "$guid is not a user.";
+ continue;
+ }
+
+ if (!$user->delete()) {
+ $errors[] = "Could not delete $user->name ($user->username).";
+ }
+}
+
+if ($errors) {
+ foreach ($errors as $error) {
+ register_error($error);
+ }
+} else {
+ system_message("Users deleted.");
+}
+
+forward(REFERER);