Merge remote-tracking branch 'tootsuite/master' into glitchsoc/master

This commit is contained in:
Jenkins
2018-02-11 04:10:16 +00:00
18 changed files with 389 additions and 60 deletions

View File

@@ -32,6 +32,8 @@ class Status < ApplicationRecord
include Cacheable
include StatusThreadingConcern
update_index('statuses#status', :proper) if Chewy.enabled?
enum visibility: [:public, :unlisted, :private, :direct], _suffix: :visibility
belongs_to :application, class_name: 'Doorkeeper::Application', optional: true
@@ -81,6 +83,22 @@ class Status < ApplicationRecord
delegate :domain, to: :account, prefix: true
def searchable_by(preloaded = nil)
ids = [account_id]
if preloaded.nil?
ids += mentions.pluck(:account_id)
ids += favourites.pluck(:account_id)
ids += reblogs.pluck(:account_id)
else
ids += preloaded.mentions[id] || []
ids += preloaded.favourites[id] || []
ids += preloaded.reblogs[id] || []
end
ids.uniq
end
def reply?
!in_reply_to_id.nil? || attributes['reply']
end