about summary refs log tree commit diff
path: root/app/lib/activitypub/activity/create.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/lib/activitypub/activity/create.rb')
-rw-r--r--app/lib/activitypub/activity/create.rb7
1 files changed, 6 insertions, 1 deletions
diff --git a/app/lib/activitypub/activity/create.rb b/app/lib/activitypub/activity/create.rb
index 1839a649e..b82bfec21 100644
--- a/app/lib/activitypub/activity/create.rb
+++ b/app/lib/activitypub/activity/create.rb
@@ -66,7 +66,7 @@ class ActivityPub::Activity::Create < ActivityPub::Activity
     @mentions_local_account = false
 
     process_status_params
-    return reject_payload! if twitter_retweet? || recipient_rejects_replies?
+    return reject_payload! if twitter_retweet? || recipient_rejects_replies? || kicked?
 
     process_tags
     process_audience
@@ -109,6 +109,11 @@ class ActivityPub::Activity::Create < ActivityPub::Activity
       @params[:thread]&.account_id != @account.id
   end
 
+  def kicked?
+    @params[:conversation].present? &&
+      @params[:conversation].kicks.where(account_id: @account.id).exists?
+  end
+
   def process_status_params
     @params = begin
       {