diff --git a/modules/user.module b/modules/user.module index 5652de8692d048450bbc8f0d413f347fbef79b76..55da4b6b337c14b5965f23f15d8445c0a608fb17 100644 --- a/modules/user.module +++ b/modules/user.module @@ -1328,6 +1328,10 @@ function user_admin_role($edit = array()) { else if ($op == t("Delete role")) { db_query("DELETE FROM {role} WHERE rid = %d", $id); db_query("DELETE FROM {permission} WHERE rid = %d", $id); + + // Users with the deleted role are put back in the authenticated users pool + $aid = db_result(db_query("SELECT rid FROM {role} WHERE name = 'Authenticated user'")); + db_query("UPDATE {users} SET rid = %d WHERE rid = %d", $aid, $id); } else if ($op == t("Add role")) { db_query("INSERT INTO {role} (name) VALUES ('%s')", $edit["name"]); diff --git a/modules/user/user.module b/modules/user/user.module index 5652de8692d048450bbc8f0d413f347fbef79b76..55da4b6b337c14b5965f23f15d8445c0a608fb17 100644 --- a/modules/user/user.module +++ b/modules/user/user.module @@ -1328,6 +1328,10 @@ function user_admin_role($edit = array()) { else if ($op == t("Delete role")) { db_query("DELETE FROM {role} WHERE rid = %d", $id); db_query("DELETE FROM {permission} WHERE rid = %d", $id); + + // Users with the deleted role are put back in the authenticated users pool + $aid = db_result(db_query("SELECT rid FROM {role} WHERE name = 'Authenticated user'")); + db_query("UPDATE {users} SET rid = %d WHERE rid = %d", $aid, $id); } else if ($op == t("Add role")) { db_query("INSERT INTO {role} (name) VALUES ('%s')", $edit["name"]);