Rename Activity.Search to Search.DatabaseSearch
[akkoma] / lib / pleroma / search / meilisearch.ex
index 8745d539d799a3a4e6b12b06a5e7cae0f3e8fdd4..fa9e27b0372281082c81636fed158bac6fca563c 100644 (file)
@@ -4,13 +4,26 @@ defmodule Pleroma.Search.Meilisearch do
 
   alias Pleroma.Activity
 
-  import Pleroma.Activity.Search
+  import Pleroma.Search.DatabaseSearch
   import Ecto.Query
 
-  defp meili_headers() do
+  defp meili_headers do
     private_key = Pleroma.Config.get([Pleroma.Search.Meilisearch, :private_key])
 
-    if is_nil(private_key), do: [], else: [{"X-Meili-API-Key", private_key}]
+    [{"Content-Type", "application/json"}] ++
+      if is_nil(private_key), do: [], else: [{"X-Meili-API-Key", private_key}]
+  end
+
+  def meili_get!(path) do
+    endpoint = Pleroma.Config.get([Pleroma.Search.Meilisearch, :url])
+
+    {:ok, result} =
+      Pleroma.HTTP.get(
+        Path.join(endpoint, path),
+        meili_headers()
+      )
+
+    Jason.decode!(result.body)
   end
 
   def meili_post!(path, params) do
@@ -35,7 +48,7 @@ defmodule Pleroma.Search.Meilisearch do
         Path.join(endpoint, path),
         "",
         meili_headers(),
-        timeout: :infinity
+        []
       )
   end
 
@@ -100,7 +113,7 @@ defmodule Pleroma.Search.Meilisearch do
   end
 
   def add_to_index(activity) do
-    maybe_search_data = object_to_search_data(activity)
+    maybe_search_data = object_to_search_data(activity.object)
 
     if activity.data["type"] == "Create" and maybe_search_data do
       result =