diff --git a/app/serializers/admin_detailed_user_serializer.rb b/app/serializers/admin_detailed_user_serializer.rb index 563ae1821e1..60c9ea55f20 100644 --- a/app/serializers/admin_detailed_user_serializer.rb +++ b/app/serializers/admin_detailed_user_serializer.rb @@ -91,4 +91,8 @@ class AdminDetailedUserSerializer < AdminUserSerializer scope.can_view_action_logs?(object) end + def post_count + object.posts.count + end + end diff --git a/app/services/user_destroyer.rb b/app/services/user_destroyer.rb index 4b56229a346..9af5731fc91 100644 --- a/app/services/user_destroyer.rb +++ b/app/services/user_destroyer.rb @@ -15,8 +15,8 @@ class UserDestroyer # Returns a frozen instance of the User if the delete succeeded. def destroy(user, opts={}) raise Discourse::InvalidParameters.new('user is nil') unless user and user.is_a?(User) - @guardian.ensure_can_delete_user!(user) raise PostsExistError if !opts[:delete_posts] && user.posts.count != 0 + @guardian.ensure_can_delete_user!(user) User.transaction do