aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrinpatch <rinpatch@sdf.org>2019-02-04 16:01:34 +0000
committerrinpatch <rinpatch@sdf.org>2019-02-04 16:01:34 +0000
commit00835bf6789fdba84979e7df1ac1864fde67a412 (patch)
treeda086314b7831ee45617c314059297a771382b2a
parent89762ad23034668f7440c9fb238dcf270e8c2e59 (diff)
parent68d461b3a9f3be58af85a7ae98ace2ebcbc616f2 (diff)
downloadpleroma-00835bf6789fdba84979e7df1ac1864fde67a412.tar.gz
Merge branch 'fix/rich-media-relative-path' into 'develop'
Fix rich media relative path Closes #588 See merge request pleroma/pleroma!759
-rw-r--r--lib/pleroma/web/mastodon_api/views/status_view.ex17
1 files changed, 14 insertions, 3 deletions
diff --git a/lib/pleroma/web/mastodon_api/views/status_view.ex b/lib/pleroma/web/mastodon_api/views/status_view.ex
index d5b7e68c7..d1b11d4f1 100644
--- a/lib/pleroma/web/mastodon_api/views/status_view.ex
+++ b/lib/pleroma/web/mastodon_api/views/status_view.ex
@@ -182,8 +182,19 @@ defmodule Pleroma.Web.MastodonAPI.StatusView 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 =
+ URI.merge(page_url_data, URI.parse(rich_media[:image]))
+ |> to_string
+
site_name = rich_media[:site_name] || page_url_data.host
%{
@@ -191,7 +202,7 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do
provider_name: site_name,
provider_url: page_url_data.scheme <> "://" <> page_url_data.host,
url: page_url,
- image: rich_media[:image] |> MediaProxy.url(),
+ image: image_url |> MediaProxy.url(),
title: rich_media[:title],
description: rich_media[:description],
pleroma: %{