about summary refs log tree commit diff
path: root/app/workers/after_remote_follow_request_worker.rb
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2017-02-11 15:43:09 +0100
committerEugen Rochko <eugen@zeonfederated.com>2017-02-11 15:43:09 +0100
commite6408b2e7ade3dac8dcf14bcda5b5c6a159fa74c (patch)
tree7ba827f801bea1556231d275a6a8a35471f8a954 /app/workers/after_remote_follow_request_worker.rb
parent0afed995ce60dec11bc7718f83ca5afde86f6228 (diff)
parent446aad4ce2cb7afd0ba8e4b508e4dcba57eac790 (diff)
Merge branch 'feature-privacy-federation' into development
Diffstat (limited to 'app/workers/after_remote_follow_request_worker.rb')
-rw-r--r--app/workers/after_remote_follow_request_worker.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/app/workers/after_remote_follow_request_worker.rb b/app/workers/after_remote_follow_request_worker.rb
new file mode 100644
index 000000000..ad94d2769
--- /dev/null
+++ b/app/workers/after_remote_follow_request_worker.rb
@@ -0,0 +1,17 @@
+# 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