FEATURE: Anonymize User. A way to remove a user but keep their topics and posts.

This commit is contained in:
Neil Lalonde
2015-03-06 16:44:54 -05:00
parent a68512bebf
commit 608647d02f
16 changed files with 401 additions and 100 deletions
+11 -1
View File
@@ -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