fetcher: move local object checking into a reusable function

This commit is contained in:
rinpatch 2019-11-23 22:55:41 +03:00
parent 34cdbcbb64
commit 9f29930440
2 changed files with 5 additions and 1 deletions

View file

@ -255,4 +255,8 @@ defmodule Pleroma.Object do
|> Object.change(%{data: Map.merge(data || %{}, attrs)}) |> Object.change(%{data: Map.merge(data || %{}, attrs)})
|> Repo.update() |> Repo.update()
end end
def local?(%Object{data: %{"id" => id}}) do
String.starts_with?(id, Pleroma.Web.base_url() <> "/")
end
end end

View file

@ -49,7 +49,7 @@ defmodule Pleroma.Object.Fetcher do
end end
def refetch_object(%Object{data: %{"id" => id}} = object) do def refetch_object(%Object{data: %{"id" => id}} = object) do
with {:local, false} <- {:local, String.starts_with?(id, Pleroma.Web.base_url() <> "/")}, with {:local, false} <- {:local, Object.local?(object)},
{:ok, data} <- fetch_and_contain_remote_object_from_id(id), {:ok, data} <- fetch_and_contain_remote_object_from_id(id),
{:ok, object} <- reinject_object(object, data) do {:ok, object} <- reinject_object(object, data) do
{:ok, object} {:ok, object}