docbrown/app/workers/users/delete_worker.rb
Michael Kohl 02f86fedd7
Allow admins to delete users without emails (#6530) [deploy]
* Allow admins to delete users without emails

* Guard against blank email addresses
2020-03-10 22:20:36 +01:00

20 lines
571 B
Ruby

module Users
class DeleteWorker
include Sidekiq::Worker
sidekiq_options queue: :high_priority, retry: 10
def perform(user_id, admin_delete = false)
user = User.find_by(id: user_id)
return unless user
Users::Delete.call(user)
return if admin_delete || user.email.blank?
NotifyMailer.account_deleted_email(user).deliver
rescue StandardError => e
DatadogStatsClient.count("users.delete", 1, tags: ["action:failed", "user_id:#{user.id}"])
Rails.logger.error("Error while deleting user: #{e}")
end
end
end