Only even attempt to fetch local activities by object_id
[akkoma] / lib / pleroma / activity.ex
index c5b51474269fb7afd76494cdf003c512db472752..0a376be04a6a34f32a743c675065e54193d41dd8 100644 (file)
@@ -277,6 +277,14 @@ defmodule Pleroma.Activity do
 
   def get_create_by_object_ap_id_with_object(_), do: nil
 
+  def get_local_create_by_object_ap_id_with_object(ap_id) when is_binary(ap_id) do
+    ap_id
+    |> create_by_object_ap_id_with_object()
+    |> where(local: true)
+    |> Repo.one()
+  end
+
+
   @spec create_by_id_with_object(String.t()) :: t() | nil
   def create_by_id_with_object(id) do
     get_by_id_with_opts(id, preload: [:object], filter: [type: "Create"])