glitchier-soc/app/workers/after_remote_follow_request_worker.rb
Eugen Rochko 1e66536797 After FollowService, re-fetch remote account asynchronously, do nothing
if account lock info was up to date, otherwise re-do the FollowService
with now updated information
2017-02-11 14:25:01 +01:00

17 lines
465 B
Ruby

# frozen_string_literal: true
class AfterRemoteFollowRequestWorker
include Sidekiq::Worker
sidekiq_options retry: 5
def perform(follow_request_id)
follow_request = FollowRequest.find(follow_request_id)
updated_account = FetchRemoteAccountService.new.call(follow_request.target_account.remote_url)
return if updated_account.locked?
follow_request.destroy
FollowService.new.call(follow_request.account, updated_account.acct)
end
end