From 489eeb4aa7945b1d3a58d04c938ca8dc3807f52a Mon Sep 17 00:00:00 2001 From: KMY Date: Thu, 6 Apr 2023 04:42:24 +0900 Subject: [PATCH] Fix activitypub searchability error --- app/lib/activitypub/activity/create.rb | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/app/lib/activitypub/activity/create.rb b/app/lib/activitypub/activity/create.rb index b926b3a02b..97a9461f41 100644 --- a/app/lib/activitypub/activity/create.rb +++ b/app/lib/activitypub/activity/create.rb @@ -464,4 +464,26 @@ class ActivityPub::Activity::Create < ActivityPub::Activity :direct end end + + def visibility_from_audience + if audience_to.any? { |to| ActivityPub::TagManager.instance.public_collection?(to) } + :public + elsif audience_cc.any? { |cc| ActivityPub::TagManager.instance.public_collection?(cc) } + :unlisted + elsif audience_to.include?(@account.followers_url) + :private + else + :direct + end + end + + def visibility_from_audience_with_silence + visibility = visibility_from_audience + + if @account.silenced? && %i(public).include?(visibility) + :unlisted + else + visibility + end + end end