Use `Pleroma.Formatter.linkify` instead of `AutoLinker.link`
authorkPherox <admin@mail.kr-kp.com>
Tue, 31 Mar 2020 11:13:53 +0000 (11:13 +0000)
committerkPherox <admin@mail.kr-kp.com>
Tue, 31 Mar 2020 17:52:30 +0000 (02:52 +0900)
lib/pleroma/user.ex

index 6644d6b6622e00f8de3bf2bf69ca953048917088..c29935871d37e4a0faee73e75be73732cf903c7d 100644 (file)
@@ -16,6 +16,7 @@ defmodule Pleroma.User do
   alias Pleroma.Conversation.Participation
   alias Pleroma.Delivery
   alias Pleroma.FollowingRelationship
+  alias Pleroma.Formatter
   alias Pleroma.HTML
   alias Pleroma.Keys
   alias Pleroma.Notification
@@ -456,7 +457,7 @@ defmodule Pleroma.User do
 
       fields =
         raw_fields
-        |> Enum.map(fn f -> Map.update!(f, "value", &AutoLinker.link(&1)) end)
+        |> Enum.map(fn f -> Map.update!(f, "value", &parse_fields(&1)) end)
 
       changeset
       |> put_change(:raw_fields, raw_fields)
@@ -466,6 +467,12 @@ defmodule Pleroma.User do
     end
   end
 
+  defp parse_fields(value) do
+    value
+    |> Formatter.linkify(mentions_format: :full)
+    |> elem(0)
+  end
+
   defp put_change_if_present(changeset, map_field, value_function) do
     if value = get_change(changeset, map_field) do
       with {:ok, new_value} <- value_function.(value) do