FEATURE: Anonymize User. A way to remove a user but keep their topics and posts.
This commit is contained in:
@@ -22,7 +22,8 @@ class Admin::UsersController < Admin::AdminController
|
||||
:remove_group,
|
||||
:primary_group,
|
||||
:generate_api_key,
|
||||
:revoke_api_key]
|
||||
:revoke_api_key,
|
||||
:anonymize]
|
||||
|
||||
def index
|
||||
users = ::AdminUserIndexQuery.new(params).find_users
|
||||
@@ -333,6 +334,15 @@ class Admin::UsersController < Admin::AdminController
|
||||
|
||||
end
|
||||
|
||||
def anonymize
|
||||
guardian.ensure_can_anonymize_user!(@user)
|
||||
if user = UserAnonymizer.new(@user, current_user).make_anonymous
|
||||
render json: success_json.merge(username: user.username)
|
||||
else
|
||||
render json: failed_json.merge(user: AdminDetailedUserSerializer.new(user, root: false).as_json)
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def fetch_user
|
||||
|
||||
Reference in New Issue
Block a user