Merge branch 'docs/kyclos' into 'develop'
[akkoma] / lib / pleroma / web / activity_pub / activity_pub.ex
index 60c9e7e64f2a03283c8f81acb2de31da0e703eb3..5c436941ae7aa8f6eea72cdb42256298bca69bfb 100644 (file)
@@ -325,12 +325,14 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
   def react_with_emoji(user, object, emoji, options \\ []) do
     with local <- Keyword.get(options, :local, true),
          activity_id <- Keyword.get(options, :activity_id, nil),
-         Pleroma.Emoji.is_unicode_emoji?(emoji),
+         true <- Pleroma.Emoji.is_unicode_emoji?(emoji),
          reaction_data <- make_emoji_reaction_data(user, object, emoji, activity_id),
          {:ok, activity} <- insert(reaction_data, local),
          {:ok, object} <- add_emoji_reaction_to_object(activity, object),
          :ok <- maybe_federate(activity) do
       {:ok, activity, object}
+    else
+      e -> {:error, e}
     end
   end
 
@@ -345,6 +347,8 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
          {:ok, object} <- remove_emoji_reaction_from_object(reaction_activity, object),
          :ok <- maybe_federate(activity) do
       {:ok, activity, object}
+    else
+      e -> {:error, e}
     end
   end
 
@@ -728,7 +732,6 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
       params
       |> Map.put("user", reading_user)
       |> Map.put("actor_id", user.ap_id)
-      |> Map.put("whole_db", true)
 
     recipients =
       user_activities_recipients(%{
@@ -746,7 +749,6 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
       |> Map.put("type", ["Create", "Announce"])
       |> Map.put("user", reading_user)
       |> Map.put("actor_id", user.ap_id)
-      |> Map.put("whole_db", true)
       |> Map.put("pinned_activity_ids", user.pinned_activities)
 
     params =
@@ -773,7 +775,6 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
       params
       |> Map.put("type", ["Create", "Announce"])
       |> Map.put("instance", params["instance"])
-      |> Map.put("whole_db", true)
 
     fetch_activities([Pleroma.Constants.as_public()], params, :offset)
     |> Enum.reverse()
@@ -1369,6 +1370,10 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
          data <- maybe_update_follow_information(data) do
       {:ok, data}
     else
+      {:error, "Object has been deleted"} = e ->
+        Logger.debug("Could not decode user at fetch #{ap_id}, #{inspect(e)}")
+        {:error, e}
+
       e ->
         Logger.error("Could not decode user at fetch #{ap_id}, #{inspect(e)}")
         {:error, e}