Handle incoming favorites, fetch potentially missing messages.
[akkoma] / lib / pleroma / web / activity_pub / activity_pub.ex
index d7b490088da2902fe5cb9145c83cf746e72287b9..82aed7ce42a41eb08a39bd0f9bc557c6b419ee42 100644 (file)
@@ -41,7 +41,7 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
     end
   end
 
-  def like(%User{ap_id: ap_id} = user, %Object{data: %{"id" => id}} = object) do
+  def like(%User{ap_id: ap_id} = user, %Object{data: %{"id" => id}} = object, local \\ true) do
     cond do
       # There's already a like here, so return the original activity.
       ap_id in (object.data["likes"] || []) ->
@@ -59,7 +59,7 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
           "context" => object.data["context"]
         }
 
-        {:ok, activity} = insert(data)
+        {:ok, activity} = insert(data, local)
 
         likes = [ap_id | (object.data["likes"] || [])] |> Enum.uniq