Fix tagpolicy to also work with Update
[akkoma] / lib / pleroma / web / preload.ex
index f13932b890a0fa025954f8ba1341ce8cd935bbf5..34a181e17dae558aa446fea7bc668feff7628180 100644 (file)
@@ -1,15 +1,20 @@
 # Pleroma: A lightweight social networking server
-# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
+# Copyright © 2017-2021 Pleroma Authors <https://pleroma.social/>
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.Web.Preload do
   alias Phoenix.HTML
-  require Logger
 
   def build_tags(_conn, params) do
     preload_data =
       Enum.reduce(Pleroma.Config.get([__MODULE__, :providers], []), %{}, fn parser, acc ->
-        Map.merge(acc, parser.generate_terms(params))
+        terms =
+          params
+          |> parser.generate_terms()
+          |> Enum.map(fn {k, v} -> {k, Base.encode64(Jason.encode!(v))} end)
+          |> Enum.into(%{})
+
+        Map.merge(acc, terms)
       end)
 
     rendered_html =
@@ -22,8 +27,6 @@ defmodule Pleroma.Web.Preload do
   end
 
   def build_script_tag(content) do
-    content = Base.encode64(content)
-
     HTML.Tag.content_tag(:script, HTML.raw(content),
       id: "initial-results",
       type: "application/json"