diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/pleroma/web/activity_pub/views/object_view.ex | 26 | 
1 files changed, 26 insertions, 0 deletions
| diff --git a/lib/pleroma/web/activity_pub/views/object_view.ex b/lib/pleroma/web/activity_pub/views/object_view.ex new file mode 100644 index 000000000..403f8cb17 --- /dev/null +++ b/lib/pleroma/web/activity_pub/views/object_view.ex @@ -0,0 +1,26 @@ +defmodule Pleroma.Web.ActivityPub.ObjectView do +  use Pleroma.Web, :view + +  def render("object.json", %{object: object}) do +    base = %{ +      "@context" => [ +        "https://www.w3.org/ns/activitystreams", +        "https://w3id.org/security/v1", +        %{ +          "manuallyApprovesFollowers" => "as:manuallyApprovesFollowers", +          "sensitive" => "as:sensitive", +          "Hashtag" => "as:Hashtag", +          "ostatus" => "http://ostatus.org#", +          "atomUri" => "ostatus:atomUri", +          "inReplyToAtomUri" => "ostatus:inReplyToAtomUri", +          "conversation" => "ostatus:conversation", +          "toot" => "http://joinmastodon.org/ns#", +          "Emoji" => "toot:Emoji" +        } +      ] +    } + +    additional = Map.take(object.data, ["id", "to", "cc", "actor", "content", "summary", "type"]) +    Map.merge(base, additional) +  end +end | 
