Render peertube videos in mastodon.

This commit is contained in:
lain 2018-03-25 17:07:40 +02:00
parent e211fff596
commit 1cc8bb393c
1 changed files with 6 additions and 2 deletions

View File

@ -68,7 +68,9 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do
repeated = opts[:for] && opts[:for].ap_id in (object["announcements"] || [])
favorited = opts[:for] && opts[:for].ap_id in (object["likes"] || [])
attachments = render_many(object["attachment"] || [], StatusView, "attachment.json", as: :attachment)
attachment_data = object["attachment"] || []
attachment_data = attachment_data ++ (if object["type"] == "Video", do: [object], else: [])
attachments = render_many(attachment_data, StatusView, "attachment.json", as: :attachment)
created_at = Utils.to_masto_date(object["published"])
@ -126,7 +128,9 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do
end
def render("attachment.json", %{attachment: attachment}) do
[%{"mediaType" => media_type, "href" => href} | _] = attachment["url"]
[attachment | _] = attachment["url"]
media_type = attachment["mediaType"] || attachment["mimeType"]
href = attachment["href"]
type = cond do
String.contains?(media_type, "image") -> "image"