Merge branch 'fix-owncast' into 'develop'
Fix owncast See merge request pleroma/pleroma!3706
This commit is contained in:
commit
3b2bac7a0f
|
@ -65,6 +65,11 @@ defp fix_replies(%{"replies" => replies} = data) when is_bitstring(replies),
|
||||||
|
|
||||||
defp fix_replies(data), do: data
|
defp fix_replies(data), do: data
|
||||||
|
|
||||||
|
def fix_attachments(%{"attachment" => attachment} = data) when is_map(attachment),
|
||||||
|
do: Map.put(data, "attachment", [attachment])
|
||||||
|
|
||||||
|
def fix_attachments(data), do: data
|
||||||
|
|
||||||
defp fix(data) do
|
defp fix(data) do
|
||||||
data
|
data
|
||||||
|> CommonFixes.fix_actor()
|
|> CommonFixes.fix_actor()
|
||||||
|
@ -72,6 +77,7 @@ defp fix(data) do
|
||||||
|> fix_url()
|
|> fix_url()
|
||||||
|> fix_tag()
|
|> fix_tag()
|
||||||
|> fix_replies()
|
|> fix_replies()
|
||||||
|
|> fix_attachments()
|
||||||
|> Transmogrifier.fix_emoji()
|
|> Transmogrifier.fix_emoji()
|
||||||
|> Transmogrifier.fix_content_map()
|
|> Transmogrifier.fix_content_map()
|
||||||
end
|
end
|
||||||
|
|
|
@ -59,7 +59,7 @@ def url_changeset(struct, data) do
|
||||||
end
|
end
|
||||||
|
|
||||||
def fix_media_type(data) do
|
def fix_media_type(data) do
|
||||||
Map.put_new(data, "mediaType", data["mimeType"])
|
Map.put_new(data, "mediaType", data["mimeType"] || "application/octet-stream")
|
||||||
end
|
end
|
||||||
|
|
||||||
defp handle_href(href, mediaType, data) do
|
defp handle_href(href, mediaType, data) do
|
||||||
|
|
|
@ -0,0 +1,31 @@
|
||||||
|
{
|
||||||
|
"attachment": {
|
||||||
|
"content": "Live stream preview",
|
||||||
|
"type": "Image",
|
||||||
|
"url": "https://owncast.localhost.localdomain/preview.gif?us=KjfNX387gm"
|
||||||
|
},
|
||||||
|
"attributedTo": "https://owncast.localhost.localdomain/federation/user/streamer",
|
||||||
|
"audience": "https://www.w3.org/ns/activitystreams#Public",
|
||||||
|
"content": "<p>I've gone live!</p><p></p><p><a class=\"hashtag\" href=\"https://directory.owncast.online/tags/owncast\">#owncast</a> <a class=\"hashtag\" href=\"https://directory.owncast.online/tags/streaming\">#streaming</a></p><a href=\"https://owncast.localhost.localdomain\">https://owncast.localhost.localdomain</a>",
|
||||||
|
"id": "https://owncast.localhost.localdomain/federation/KjBNuq8ng",
|
||||||
|
"published": "2022-04-17T15:42:03Z",
|
||||||
|
"tag": [
|
||||||
|
{
|
||||||
|
"href": "https://directory.owncast.online/tags/owncast",
|
||||||
|
"name": "#owncast",
|
||||||
|
"type": "Hashtag"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"href": "https://directory.owncast.online/tags/streaming",
|
||||||
|
"name": "#streaming",
|
||||||
|
"type": "Hashtag"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"href": "https://directory.owncast.online/tags/owncast",
|
||||||
|
"name": "#owncast",
|
||||||
|
"type": "Hashtag"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"to": "https://www.w3.org/ns/activitystreams#Public",
|
||||||
|
"type": "Note"
|
||||||
|
}
|
|
@ -43,4 +43,15 @@ test "a Note from Roadhouse validates" do
|
||||||
|
|
||||||
%{valid?: true} = ArticleNotePageValidator.cast_and_validate(note)
|
%{valid?: true} = ArticleNotePageValidator.cast_and_validate(note)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
test "a note with an attachment should work", _ do
|
||||||
|
insert(:user, %{ap_id: "https://owncast.localhost.localdomain/federation/user/streamer"})
|
||||||
|
|
||||||
|
note =
|
||||||
|
"test/fixtures/owncast-note-with-attachment.json"
|
||||||
|
|> File.read!()
|
||||||
|
|> Jason.decode!()
|
||||||
|
|
||||||
|
%{valid?: true} = ArticleNotePageValidator.cast_and_validate(note)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue