hometown/app/workers/unfollow_follow_worker.rb
Eugen Rochko 38dc51b2d6
Fix Move handler queuing jobs that will fail if account is suspended ()
Don't put Move handler on cooldown if it didn't run. Skip unmerging
from timelines to save unnecessary work.
2019-09-17 08:44:45 +02:00

19 lines
619 B
Ruby

# frozen_string_literal: true
class UnfollowFollowWorker
include Sidekiq::Worker
sidekiq_options queue: 'pull'
def perform(follower_account_id, old_target_account_id, new_target_account_id)
follower_account = Account.find(follower_account_id)
old_target_account = Account.find(old_target_account_id)
new_target_account = Account.find(new_target_account_id)
FollowService.new.call(follower_account, new_target_account)
UnfollowService.new.call(follower_account, old_target_account, skip_unmerge: true)
rescue ActiveRecord::RecordNotFound, Mastodon::NotPermittedError
true
end
end