twitter/mastodon api: always use mediaproxy URLs in attachments
authorWilliam Pitcock <nenolod@dereferenced.org>
Mon, 29 Oct 2018 15:19:32 +0000 (15:19 +0000)
committerWilliam Pitcock <nenolod@dereferenced.org>
Mon, 29 Oct 2018 15:19:32 +0000 (15:19 +0000)
if using local media, the mediaproxy will not replace the URL anyway.

lib/pleroma/web/mastodon_api/views/status_view.ex
lib/pleroma/web/twitter_api/twitter_api.ex

index 8ffaf8466b88202db514b8576d6b10f795d8eaa7..80e80c8f598ef6c38c316cc56a0576eb1df5b6b4 100644 (file)
@@ -166,7 +166,7 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do
   def render("attachment.json", %{attachment: attachment}) do
     [attachment_url | _] = attachment["url"]
     media_type = attachment_url["mediaType"] || attachment_url["mimeType"] || "image"
-    href = attachment_url["href"]
+    href = attachment_url["href"] |> MediaProxy.url()
 
     type =
       cond do
@@ -180,9 +180,9 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do
 
     %{
       id: to_string(attachment["id"] || hash_id),
-      url: MediaProxy.url(href),
+      url: href,
       remote_url: href,
-      preview_url: MediaProxy.url(href),
+      preview_url: href,
       text_url: href,
       type: type,
       description: attachment["name"]
index 3747285da6a2f1c399ced77651649921f76689de..cb483df9d7c384bdc0af141895287e6a3308525e 100644 (file)
@@ -3,6 +3,7 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPI do
   alias Pleroma.Web.ActivityPub.ActivityPub
   alias Pleroma.Web.TwitterAPI.UserView
   alias Pleroma.Web.{OStatus, CommonAPI}
+  alias Pleroma.Web.MediaProxy
   import Ecto.Query
 
   @instance Application.get_env(:pleroma, :instance)
@@ -97,7 +98,7 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPI do
     {:ok, object} = ActivityPub.upload(file)
 
     url = List.first(object.data["url"])
-    href = url["href"]
+    href = url["href"] |> MediaProxy.url()
     type = url["mediaType"]
 
     case format do