mastodon api: implement rendering of listen activities

This commit is contained in:
Ariadne Conill 2019-09-27 11:40:40 +00:00
commit b7877e9b1c
2 changed files with 26 additions and 0 deletions

View file

@ -368,6 +368,23 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do
}
end
def render("listen.json", %{activity: %Activity{data: %{"type" => "Listen"}} = activity} = opts) do
object = Object.normalize(activity)
user = get_user(activity.data["actor"])
created_at = Utils.to_masto_date(activity.data["published"])
%{
id: activity.id,
account: AccountView.render("account.json", %{user: user, for: opts[:for]}),
created_at: created_at,
title: object.data["title"] |> HTML.strip_tags(),
artist: object.data["artist"] |> HTML.strip_tags(),
album: object.data["album"] |> HTML.strip_tags(),
length: object.data["length"]
}
end
def render("poll.json", %{object: object} = opts) do
{multiple, options} =
case object.data do