Improve add_to_index/1 when there is no Object
This commit is contained in:
parent
7c09150cdb
commit
592955a895
1 changed files with 9 additions and 2 deletions
|
|
@ -5,7 +5,7 @@ defmodule Pleroma.Search do
|
||||||
alias Pleroma.Workers.SearchIndexingWorker
|
alias Pleroma.Workers.SearchIndexingWorker
|
||||||
|
|
||||||
@spec add_to_index(Activity.t()) :: :ok | :error
|
@spec add_to_index(Activity.t()) :: :ok | :error
|
||||||
def add_to_index(%Pleroma.Activity{id: activity_id, object: %Object{} = object} = activity) do
|
def add_to_index(%Activity{id: activity_id, object: %Object{} = object} = activity) do
|
||||||
with {_, true} <- {:indexable, indexable?(activity)},
|
with {_, true} <- {:indexable, indexable?(activity)},
|
||||||
{_, "public"} <- {:visibility, Visibility.get_visibility(object)},
|
{_, "public"} <- {:visibility, Visibility.get_visibility(object)},
|
||||||
{:ok, %Oban.Job{}} <-
|
{:ok, %Oban.Job{}} <-
|
||||||
|
|
@ -18,6 +18,13 @@ defmodule Pleroma.Search do
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def add_to_index(%Activity{id: activity_id}) do
|
||||||
|
case Activity.get_by_id_with_object(activity_id) do
|
||||||
|
%Activity{} = preloaded -> add_to_index(preloaded)
|
||||||
|
_ -> :ok
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
@spec remove_from_index(Object.t()) :: :ok | :error
|
@spec remove_from_index(Object.t()) :: :ok | :error
|
||||||
def remove_from_index(%Pleroma.Object{id: object_id}) do
|
def remove_from_index(%Pleroma.Object{id: object_id}) do
|
||||||
case SearchIndexingWorker.enqueue("remove_from_index", %{"object" => object_id}) do
|
case SearchIndexingWorker.enqueue("remove_from_index", %{"object" => object_id}) do
|
||||||
|
|
@ -36,6 +43,6 @@ defmodule Pleroma.Search do
|
||||||
search_module.healthcheck_endpoints
|
search_module.healthcheck_endpoints
|
||||||
end
|
end
|
||||||
|
|
||||||
defp indexable?(%Activity{object: %Object{}, data: %{"type" => "Create"}}), do: true
|
defp indexable?(%Activity{data: %{"type" => "Create"}}), do: true
|
||||||
defp indexable?(_), do: false
|
defp indexable?(_), do: false
|
||||||
end
|
end
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue