about summary refs log tree commit diff
path: root/app/controllers/api
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2016-12-19 09:12:00 +0100
committerEugen Rochko <eugen@zeonfederated.com>2016-12-19 09:12:29 +0100
commit0542773bca804868c8e4b45fe08f6041cb1b5851 (patch)
treefaced5b2e24aa89c8ab773bf9caabc0394454a95 /app/controllers/api
parent6b67b55cee5d3adda87b3990e54bdd7fefee1ef6 (diff)
Make unfavouriting async to prevent timeout errors from leaving orphaned records behind
Diffstat (limited to 'app/controllers/api')
-rw-r--r--app/controllers/api/v1/statuses_controller.rb6
1 files changed, 5 insertions, 1 deletions
diff --git a/app/controllers/api/v1/statuses_controller.rb b/app/controllers/api/v1/statuses_controller.rb
index 8b7690850..453d003da 100644
--- a/app/controllers/api/v1/statuses_controller.rb
+++ b/app/controllers/api/v1/statuses_controller.rb
@@ -83,7 +83,11 @@ class Api::V1::StatusesController < ApiController
   end
 
   def unfavourite
-    @status = UnfavouriteService.new.call(current_user.account, Status.find(params[:id])).status.reload
+    @status         = Status.find(params[:id])
+    @favourited_map = { @status.id => false }
+
+    UnfavouriteWorker.perform_async(current_user.account_id, @status.id)
+
     render action: :show
   end