projects
/
akkoma
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
mastodon api: fix rendering of cards without image URLs (closes #597)
[akkoma]
/
lib
/
pleroma
/
web
/
mastodon_api
/
views
/
status_view.ex
diff --git
a/lib/pleroma/web/mastodon_api/views/status_view.ex
b/lib/pleroma/web/mastodon_api/views/status_view.ex
index aa38784a69ffaa835333699a0d82a1f6df16ea67..c0e289ef8013b7ed3a1e6a1b9a84e0ed2ff627cd 100644
(file)
--- a/
lib/pleroma/web/mastodon_api/views/status_view.ex
+++ b/
lib/pleroma/web/mastodon_api/views/status_view.ex
@@
-182,15
+182,21
@@
defmodule Pleroma.Web.MastodonAPI.StatusView do
end
def render("card.json", %{rich_media: rich_media, page_url: page_url}) do
end
def render("card.json", %{rich_media: rich_media, page_url: page_url}) do
- page_url = rich_media[:url] || page_url
- page_url_data = URI.parse(page_url)
+ page_url_data =
+ if rich_media[:url] != nil do
+ URI.merge(URI.parse(page_url), URI.parse(rich_media[:url]))
+ else
+ page_url
+ end
+
+ page_url = page_url_data |> to_string
image_url =
image_url =
- if %URI{host: nil} = page_url_data do
- rich_media[:image]
- else
+ if rich_media[:image] != nil do
URI.merge(page_url_data, URI.parse(rich_media[:image]))
|> to_string
URI.merge(page_url_data, URI.parse(rich_media[:image]))
|> to_string
+ else
+ nil
end
site_name = rich_media[:site_name] || page_url_data.host
end
site_name = rich_media[:site_name] || page_url_data.host