Merge branch 'fix/credo-issues' into 'develop'
[akkoma] / lib / pleroma / web / metadata / opengraph.ex
index 43303859c8261e40029d30ce452ceeab26648b5f..190377767ddf4c534cecbcc4be0c2a9759ddfb20 100644 (file)
@@ -3,16 +3,19 @@
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.Web.Metadata.Providers.OpenGraph do
-  alias Pleroma.Web.Metadata.Providers.Provider
+  alias Pleroma.HTML
+  alias Pleroma.Formatter
+  alias Pleroma.User
   alias Pleroma.Web.Metadata
-  alias Pleroma.{HTML, Formatter, User}
   alias Pleroma.Web.MediaProxy
+  alias Pleroma.Web.Metadata.Providers.Provider
 
   @behaviour Provider
 
   @impl Provider
   def build_tags(%{
         object: object,
+        url: url,
         user: user
       }) do
     attachments = build_attachments(object)
@@ -37,7 +40,7 @@ defmodule Pleroma.Web.Metadata.Providers.OpenGraph do
          property: "og:title",
          content: "#{user.name}" <> content
        ], []},
-      {:meta, [property: "og:url", content: object.data["id"]], []},
+      {:meta, [property: "og:url", content: url], []},
       {:meta,
        [
          property: "og:description",
@@ -124,6 +127,7 @@ defmodule Pleroma.Web.Metadata.Providers.OpenGraph do
     |> HtmlEntities.decode()
     |> String.replace(~r/<br\s?\/?>/, " ")
     |> HTML.get_cached_stripped_html_for_object(object, __MODULE__)
+    |> Formatter.demojify()
     |> Formatter.truncate()
   end
 
@@ -133,6 +137,7 @@ defmodule Pleroma.Web.Metadata.Providers.OpenGraph do
     |> HtmlEntities.decode()
     |> String.replace(~r/<br\s?\/?>/, " ")
     |> HTML.strip_tags()
+    |> Formatter.demojify()
     |> Formatter.truncate()
   end