Pass correct number of arguments to unfollow
[akkoma] / lib / pleroma / web / activity_pub / activity_pub.ex
index a711e6b76d2248d2962cabcec1a165c6c868162b..8485a800982fe8b9433026fe099a89aceddc2345 100644 (file)
@@ -192,12 +192,11 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
     end
   end
 
-  def unfollow(follower, followed, local \\ true) do
+  def unfollow(follower, followed, activity_id \\ nil, local \\ true) do
     with %Activity{} = follow_activity <- fetch_latest_follow(follower, followed),
-         unfollow_data <- make_unfollow_data(follower, followed, follow_activity),
+         unfollow_data <- make_unfollow_data(follower, followed, follow_activity, activity_id),
          {:ok, activity} <- insert(unfollow_data, local),
-         :ok,
-         maybe_federate(activity) do
+         :ok <- maybe_federate(activity) do
       {:ok, activity}
     end
   end
@@ -221,23 +220,23 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
     end
   end
 
-  def block(blocker, blocked, local \\ true) do
+  def block(blocker, blocked, activity_id \\ nil, local \\ true) do
     follow_activity = fetch_latest_follow(blocker, blocked)
 
     if follow_activity do
-      unfollow(blocker, blocked, local)
+      unfollow(blocker, blocked, nil, local)
     end
 
-    with block_data <- make_block_data(blocker, blocked),
+    with block_data <- make_block_data(blocker, blocked, activity_id),
          {:ok, activity} <- insert(block_data, local),
          :ok <- maybe_federate(activity) do
       {:ok, activity}
     end
   end
 
-  def unblock(blocker, blocked, local \\ true) do
+  def unblock(blocker, blocked, activity_id \\ nil, local \\ true) do
     with %Activity{} = block_activity <- fetch_latest_block(blocker, blocked),
-         unblock_data <- make_unblock_data(blocker, blocked, block_activity),
+         unblock_data <- make_unblock_data(blocker, blocked, block_activity, activity_id),
          {:ok, activity} <- insert(unblock_data, local),
          :ok <- maybe_federate(activity) do
       {:ok, activity}