From 98164765b68e443dacbbffc784e4ca43c6f9bcc2 Mon Sep 17 00:00:00 2001 From: KMY Date: Fri, 4 Aug 2023 14:14:49 +0900 Subject: [PATCH] Fix posting searchability logic --- app/models/status.rb | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/app/models/status.rb b/app/models/status.rb index e6fbca59ab..99f55ea52a 100644 --- a/app/models/status.rb +++ b/app/models/status.rb @@ -543,15 +543,17 @@ class Status < ApplicationRecord def set_searchability return if searchability.nil? - if visibility == 'public' || visibility == 'public_unlisted' || visibility == 'login' || (visibility == 'unlisted' && account.local?) - self.searchability = [Status.searchabilities[searchability], Status.visibilities['public']].max - elsif visibility == 'limited' - self.searchability = Status.searchabilities['limited'] - else - s = [Status.searchabilities[searchability], Status.visibilities[visibility] - 1].max - s = [s, 3].min - self.searchability = s - end + self.searchability = if %w(public public_unlisted login unlisted).include?(visibility) + searchability + elsif visibility == 'limited' + :limited + elsif visibility == 'private' + searchability == 'public' ? :private : searchability + elsif visibility == 'direct' + searchability == 'limited' ? :limited : :direct + else + :direct + end end def set_conversation