Browse Source

activitypub transmogrifier: fix handling of contentMap.

tags/v0.9.9
William Pitcock 6 years ago
parent
commit
c95941e64d
1 changed files with 12 additions and 0 deletions
  1. +12
    -0
      lib/pleroma/web/activity_pub/transmogrifier.ex

+ 12
- 0
lib/pleroma/web/activity_pub/transmogrifier.ex View File

@@ -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


Loading…
Cancel
Save