This was a wasteful shortcut to MediaProxy.preview_url/1 and we don't always want the preview_url in the metadata anyway.warnings-as-errors
@@ -4,6 +4,7 @@ | |||
defmodule Pleroma.Web.Metadata.Providers.OpenGraph do | |||
alias Pleroma.User | |||
alias Pleroma.Web.MediaProxy | |||
alias Pleroma.Web.Metadata | |||
alias Pleroma.Web.Metadata.Providers.Provider | |||
alias Pleroma.Web.Metadata.Utils | |||
@@ -36,8 +37,7 @@ defmodule Pleroma.Web.Metadata.Providers.OpenGraph do | |||
] ++ | |||
if attachments == [] or Metadata.activity_nsfw?(object) do | |||
[ | |||
{:meta, [property: "og:image", content: Utils.attachment_url(User.avatar_url(user))], | |||
[]}, | |||
{:meta, [property: "og:image", content: MediaProxy.preview_url(User.avatar_url(user))], []}, | |||
{:meta, [property: "og:image:width", content: 150], []}, | |||
{:meta, [property: "og:image:height", content: 150], []} | |||
] | |||
@@ -58,7 +58,7 @@ defmodule Pleroma.Web.Metadata.Providers.OpenGraph do | |||
{:meta, [property: "og:url", content: user.uri || user.ap_id], []}, | |||
{:meta, [property: "og:description", content: truncated_bio], []}, | |||
{:meta, [property: "og:type", content: "article"], []}, | |||
{:meta, [property: "og:image", content: Utils.attachment_url(User.avatar_url(user))], []}, | |||
{:meta, [property: "og:image", content: MediaProxy.preview_url(User.avatar_url(user))], []}, | |||
{:meta, [property: "og:image:width", content: 150], []}, | |||
{:meta, [property: "og:image:height", content: 150], []} | |||
] | |||
@@ -74,13 +74,17 @@ defmodule Pleroma.Web.Metadata.Providers.OpenGraph do | |||
case Utils.fetch_media_type(@media_types, url["mediaType"]) do | |||
"audio" -> | |||
[ | |||
{:meta, [property: "og:audio", content: Utils.attachment_url(url["href"])], []} | |||
{:meta, [property: "og:audio", content: MediaProxy.url(url["href"])], []} | |||
| acc | |||
] | |||
# Not using preview_url for this. It saves bandwidth, but the image dimensions will be wrong. | |||
# We generate it on the fly and have no way to capture or analyze the image to get the dimensions. | |||
# This can be an issue for apps/FEs rendering images in timelines too, but you can get clever with | |||
# the aspect ratio metadata as a workaround. | |||
"image" -> | |||
[ | |||
{:meta, [property: "og:image", content: Utils.attachment_url(url["href"])], []}, | |||
{:meta, [property: "og:image", content: MediaProxy.url(url["href"])], []}, | |||
{:meta, [property: "og:image:alt", content: attachment["name"]], []} | |||
| acc | |||
] | |||
@@ -88,7 +92,7 @@ defmodule Pleroma.Web.Metadata.Providers.OpenGraph do | |||
"video" -> | |||
[ | |||
{:meta, [property: "og:video", content: Utils.attachment_url(url["href"])], []} | |||
{:meta, [property: "og:video", content: MediaProxy.url(url["href"])], []} | |||
| acc | |||
] | |||
|> maybe_add_dimensions(url) | |||
@@ -5,6 +5,7 @@ | |||
defmodule Pleroma.Web.Metadata.Providers.TwitterCard do | |||
alias Pleroma.User | |||
alias Pleroma.Web.MediaProxy | |||
alias Pleroma.Web.Metadata | |||
alias Pleroma.Web.Metadata.Providers.Provider | |||
alias Pleroma.Web.Metadata.Utils | |||
@@ -48,7 +49,8 @@ defmodule Pleroma.Web.Metadata.Providers.TwitterCard do | |||
end | |||
def image_tag(user) do | |||
{:meta, [property: "twitter:image", content: Utils.attachment_url(User.avatar_url(user))], []} | |||
{:meta, [property: "twitter:image", content: MediaProxy.preview_url(User.avatar_url(user))], | |||
[]} | |||
end | |||
defp build_attachments(id, %{data: %{"attachment" => attachments}}) do | |||
@@ -65,13 +67,17 @@ defmodule Pleroma.Web.Metadata.Providers.TwitterCard do | |||
| acc | |||
] | |||
# Not using preview_url for this. It saves bandwidth, but the image dimensions will be wrong. | |||
# We generate it on the fly and have no way to capture or analyze the image to get the dimensions. | |||
# This can be an issue for apps/FEs rendering images in timelines too, but you can get clever with | |||
# the aspect ratio metadata as a workaround. | |||
"image" -> | |||
[ | |||
{:meta, [property: "twitter:card", content: "summary_large_image"], []}, | |||
{:meta, | |||
[ | |||
property: "twitter:player", | |||
content: Utils.attachment_url(url["href"]) | |||
content: MediaProxy.url(url["href"]) | |||
], []} | |||
| acc | |||
] | |||
@@ -87,7 +93,7 @@ defmodule Pleroma.Web.Metadata.Providers.TwitterCard do | |||
{:meta, [property: "twitter:player", content: player_url(id)], []}, | |||
{:meta, [property: "twitter:player:width", content: "#{width}"], []}, | |||
{:meta, [property: "twitter:player:height", content: "#{height}"], []}, | |||
{:meta, [property: "twitter:player:stream", content: url["href"]], []}, | |||
{:meta, [property: "twitter:player:stream", content: MediaProxy.url(url["href"])], []}, | |||
{:meta, | |||
[property: "twitter:player:stream:content_type", content: url["mediaType"]], []} | |||
| acc | |||
@@ -7,7 +7,6 @@ defmodule Pleroma.Web.Metadata.Utils do | |||
alias Pleroma.Emoji | |||
alias Pleroma.Formatter | |||
alias Pleroma.HTML | |||
alias Pleroma.Web.MediaProxy | |||
def scrub_html_and_truncate(%{data: %{"content" => content}} = object) do | |||
content | |||
@@ -38,10 +37,6 @@ defmodule Pleroma.Web.Metadata.Utils do | |||
def scrub_html(content), do: content | |||
def attachment_url(url) do | |||
MediaProxy.preview_url(url) | |||
end | |||
def user_name_string(user) do | |||
"#{user.name} " <> | |||
if user.local do | |||