fedibird-fe/app/services/unsubscribe_account_service.rb
2021-08-12 07:10:15 +09:00

16 lines
556 B
Ruby

# frozen_string_literal: true
class UnsubscribeAccountService < BaseService
# UnsubscribeAccount
# @param [Account] source_account Where to unsubscribe from
# @param [Account] target_account Which to unsubscribe
def call(source_account, target_account, list_id = nil)
subscribe = AccountSubscribe.find_by(account: source_account, target_account: target_account, list_id: list_id)
return unless subscribe
subscribe.destroy!
UnmergeWorker.perform_async(target_account.id, source_account.id) if list_id.nil?
subscribe
end
end