diff options
author | William Pitcock <nenolod@dereferenced.org> | 2018-06-18 21:51:22 +0000 |
---|---|---|
committer | William Pitcock <nenolod@dereferenced.org> | 2018-06-18 22:14:50 +0000 |
commit | c95941e64de3350594a2c5ceeb21c9c5e384451f (patch) | |
tree | fd5f6fd0899f98f05055f7fdbbcae7d07162039c /lib | |
parent | 25946f772d1c1d3ff8a4d2c70824654a9c22fc23 (diff) | |
download | pleroma-c95941e64de3350594a2c5ceeb21c9c5e384451f.tar.gz |
activitypub transmogrifier: fix handling of contentMap.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/web/activity_pub/transmogrifier.ex | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/pleroma/web/activity_pub/transmogrifier.ex b/lib/pleroma/web/activity_pub/transmogrifier.ex index 300e0fcdd..30cd70fb6 100644 --- a/lib/pleroma/web/activity_pub/transmogrifier.ex +++ b/lib/pleroma/web/activity_pub/transmogrifier.ex @@ -24,6 +24,7 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do |> fix_in_reply_to |> fix_emoji |> fix_tag + |> fix_content_map end def fix_in_reply_to(%{"inReplyTo" => in_reply_to_id} = object) @@ -107,6 +108,17 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do |> Map.put("tag", combined) end + # content map usually only has one language so this will do for now. + def fix_content_map(%{"contentMap" => content_map} = object) do + content_groups = Map.to_list(content_map) + {_, content} = Enum.at(content_groups, 0) + + object + |> Map.put("content", content) + end + + def fix_content_map(object), do: object + # TODO: validate those with a Ecto scheme # - tags # - emoji |