From 6a0c65d4611fe15f3bc681632031ea51dc1fe740 Mon Sep 17 00:00:00 2001 From: multiple creatures Date: Sat, 8 Dec 2018 13:05:37 -0600 Subject: [PATCH] allow searching bookmarks --- app/chewy/statuses_index.rb | 5 +++++ app/models/status.rb | 2 ++ 2 files changed, 7 insertions(+) diff --git a/app/chewy/statuses_index.rb b/app/chewy/statuses_index.rb index 8ce413f8a..971f03428 100644 --- a/app/chewy/statuses_index.rb +++ b/app/chewy/statuses_index.rb @@ -47,6 +47,11 @@ class StatusesIndex < Chewy::Index data.each.with_object({}) { |(id, name), result| (result[id] ||= []).push(name) } end + crutch :bookmarks do |collection| + data = ::Bookmark.where(status_id: collection.map(&:id)).pluck(:status_id, :account_id) + data.each.with_object({}) { |(id, name), result| (result[id] ||= []).push(name) } + end + root date_detection: false do field :id, type: 'long' field :account_id, type: 'long' diff --git a/app/models/status.rb b/app/models/status.rb index 6f3ba4cc3..7a3b4da36 100644 --- a/app/models/status.rb +++ b/app/models/status.rb @@ -141,10 +141,12 @@ class Status < ApplicationRecord if preloaded.nil? ids += mentions.pluck(:account_id) ids += favourites.pluck(:account_id) + ids += bookmarks.pluck(:account_id) ids += reblogs.pluck(:account_id) else ids += preloaded.mentions[id] || [] ids += preloaded.favourites[id] || [] + ids += preloaded.bookmarks[id] || [] ids += preloaded.reblogs[id] || [] end