aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorHaelwenn (lanodan) Monnier <contact@hacktivis.me>2018-08-01 03:24:39 +0200
committerHaelwenn (lanodan) Monnier <contact@hacktivis.me>2018-08-21 18:24:06 +0200
commitef4f982e2c6447733679f3e490c2666c7a795a5f (patch)
tree8e7e21c88d27ae893aaef1bad359dde48b3083da /lib
parentc1b8a6a73bfd5f30d5a290b9700ed4d41064ce77 (diff)
downloadpleroma-ef4f982e2c6447733679f3e490c2666c7a795a5f.tar.gz
Pleroma.Web.ActivityPub.Transmogrifier: Fix actor being a list of objects (Peertube)
Diffstat (limited to 'lib')
-rw-r--r--lib/pleroma/web/activity_pub/transmogrifier.ex12
1 files changed, 6 insertions, 6 deletions
diff --git a/lib/pleroma/web/activity_pub/transmogrifier.ex b/lib/pleroma/web/activity_pub/transmogrifier.ex
index e5fb6e033..39e2bb8a9 100644
--- a/lib/pleroma/web/activity_pub/transmogrifier.ex
+++ b/lib/pleroma/web/activity_pub/transmogrifier.ex
@@ -18,18 +18,18 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do
end
def get_actor(%{"actor" => actor}) when is_list(actor) do
- Enum.at(actor, 0)
+ if is_binary(Enum.at(actor, 0)) do
+ Enum.at(actor, 0)
+ else
+ Enum.find(actor, fn %{"type" => type} -> type == "Person" end)
+ |> Map.get("id")
+ end
end
def get_actor(%{"actor" => actor}) when is_map(actor) do
actor["id"]
end
- def get_actor(%{"actor" => actor_list}) do
- Enum.find(actor_list, fn %{"type" => type} -> type == "Person" end)
- |> Map.get("id")
- end
-
@doc """
Modifies an incoming AP object (mastodon format) to our internal format.
"""