|
|
@ -321,19 +321,19 @@ class Status < ApplicationRecord |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
def favourites_map(status_ids, account_id) |
|
|
|
def favourites_map(status_ids, account_id) |
|
|
|
Favourite.select('status_id').where(status_id: status_ids).where(account_id: account_id).map { |f| [f.status_id, true] }.to_h |
|
|
|
Favourite.select('status_id').where(status_id: status_ids).where(account_id: account_id).each_with_object({}) { |f, h| h[f.status_id] = true } |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
def reblogs_map(status_ids, account_id) |
|
|
|
def reblogs_map(status_ids, account_id) |
|
|
|
select('reblog_of_id').where(reblog_of_id: status_ids).where(account_id: account_id).reorder(nil).map { |s| [s.reblog_of_id, true] }.to_h |
|
|
|
select('reblog_of_id').where(reblog_of_id: status_ids).where(account_id: account_id).reorder(nil).each_with_object({}) { |s, h| h[s.reblog_of_id] = true } |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
def mutes_map(conversation_ids, account_id) |
|
|
|
def mutes_map(conversation_ids, account_id) |
|
|
|
ConversationMute.select('conversation_id').where(conversation_id: conversation_ids).where(account_id: account_id).map { |m| [m.conversation_id, true] }.to_h |
|
|
|
ConversationMute.select('conversation_id').where(conversation_id: conversation_ids).where(account_id: account_id).each_with_object({}) { |m, h| h[m.conversation_id] = true } |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
def pins_map(status_ids, account_id) |
|
|
|
def pins_map(status_ids, account_id) |
|
|
|
StatusPin.select('status_id').where(status_id: status_ids).where(account_id: account_id).map { |p| [p.status_id, true] }.to_h |
|
|
|
StatusPin.select('status_id').where(status_id: status_ids).where(account_id: account_id).each_with_object({}) { |p, h| h[p.status_id] = true } |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
def reload_stale_associations!(cached_items) |
|
|
|
def reload_stale_associations!(cached_items) |
|
|
@ -348,7 +348,7 @@ class Status < ApplicationRecord |
|
|
|
|
|
|
|
|
|
|
|
return if account_ids.empty? |
|
|
|
return if account_ids.empty? |
|
|
|
|
|
|
|
|
|
|
|
accounts = Account.where(id: account_ids).map { |a| [a.id, a] }.to_h |
|
|
|
accounts = Account.where(id: account_ids).each_with_object({}) { |a, h| h[a.id] = a } |
|
|
|
|
|
|
|
|
|
|
|
cached_items.each do |item| |
|
|
|
cached_items.each do |item| |
|
|
|
item.account = accounts[item.account_id] |
|
|
|
item.account = accounts[item.account_id] |
|
|
|