aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHaelwenn (lanodan) Monnier <contact@hacktivis.me>2018-09-25 17:12:29 +0200
committerHaelwenn (lanodan) Monnier <contact@hacktivis.me>2018-09-27 20:00:46 +0200
commit22927f3a340529f7911989024b8220825d0b7a89 (patch)
treeda96465b88e6049b354790a399e502d12d2cd64b
parent0aac72f1d3673d493ddf30908c50250472803e32 (diff)
downloadpleroma-22927f3a340529f7911989024b8220825d0b7a89.tar.gz
transmogrifier: Use a cond, add proactive support for arrays
-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 8b0d65b6f..ed5df6f7b 100644
--- a/lib/pleroma/web/activity_pub/transmogrifier.ex
+++ b/lib/pleroma/web/activity_pub/transmogrifier.ex
@@ -99,12 +99,12 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do
def fix_in_reply_to(%{"inReplyTo" => in_reply_to} = object)
when not is_nil(in_reply_to) do
in_reply_to_id =
- if is_bitstring(in_reply_to) do
- in_reply_to
- else
- if is_map(in_reply_to) && in_reply_to["id"] do
- in_reply_to["id"]
- end
+ cond do
+ is_bitstring(in_reply_to) -> in_reply_to
+ is_map(in_reply_to) && is_bitstring(in_reply_to["id"]) -> in_reply_to["id"]
+ is_list(in_reply_to) && is_bitstring(Enum.at(in_reply_to, 0)) -> Enum.at(in_reply_to, 0)
+ # Maybe I should output an error too?
+ true -> ""
end
case ActivityPub.fetch_object_from_id(in_reply_to_id) do