Rename search.ex to database_search.ex and add search/2

This commit is contained in:
Ekaterina Vaartis 2021-11-16 21:54:26 +03:00
parent 39e596a5b5
commit 0fae71f88d
4 changed files with 11 additions and 7 deletions

View File

@ -1,4 +1,4 @@
defmodule Pleroma.Search do defmodule Pleroma.Search.DatabaseSearch do
def add_to_index(activity) do def add_to_index(activity) do
search_module = Pleroma.Config.get([Pleroma.Search, :module]) search_module = Pleroma.Config.get([Pleroma.Search, :module])
@ -15,4 +15,10 @@ defmodule Pleroma.Search do
Task.start(fn -> search_module.remove_from_index(object) end) Task.start(fn -> search_module.remove_from_index(object) end)
end) end)
end end
def search(query, options) do
search_module = Pleroma.Config.get([Pleroma.Search, :module], Pleroma.Activity)
search_module.search(options[:for_user], query, options)
end
end end

View File

@ -141,7 +141,7 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
end) end)
# Add local posts to search index # Add local posts to search index
if local, do: Pleroma.Search.add_to_index(activity) if local, do: Pleroma.Search.DatabaseSearch.add_to_index(activity)
{:ok, activity} {:ok, activity}
else else

View File

@ -227,7 +227,7 @@ defmodule Pleroma.Web.ActivityPub.SideEffects do
Task.start(fn -> Pleroma.Web.RichMedia.Helpers.fetch_data_for_activity(activity) end) Task.start(fn -> Pleroma.Web.RichMedia.Helpers.fetch_data_for_activity(activity) end)
end) end)
Pleroma.Search.add_to_index(Map.put(activity, :object, object)) Pleroma.Search.DatabaseSearch.add_to_index(Map.put(activity, :object, object))
meta = meta =
meta meta
@ -330,7 +330,7 @@ defmodule Pleroma.Web.ActivityPub.SideEffects do
if result == :ok do if result == :ok do
Notification.create_notifications(object) Notification.create_notifications(object)
Pleroma.Search.remove_from_index(deleted_object) Pleroma.Search.DatabaseSearch.remove_from_index(deleted_object)
{:ok, object, meta} {:ok, object, meta}
else else

View File

@ -99,9 +99,7 @@ defmodule Pleroma.Web.MastodonAPI.SearchController do
end end
defp resource_search(_, "statuses", query, options) do defp resource_search(_, "statuses", query, options) do
search_module = Pleroma.Config.get([Pleroma.Search, :module], Pleroma.Activity) statuses = with_fallback(fn -> Pleroma.Search.DatabaseSearch.search(query, options) end)
statuses = with_fallback(fn -> search_module.search(options[:for_user], query, options) end)
StatusView.render("index.json", StatusView.render("index.json",
activities: statuses, activities: statuses,