Merge branch 'fix/1658-invite-send' into 'develop'
[akkoma] / lib / pleroma / web / metadata.ex
index be3c384ae9e19961d58a2f2bdfccf21f1769a89f..a9f70c43e32259b23b732eb5dc16c0124a17c00e 100644 (file)
@@ -1,11 +1,17 @@
 # Pleroma: A lightweight social networking server
-# Copyright © 2017-2019 Pleroma Authors <https://pleroma.social/>
+# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
 # SPDX-License-Identifier: AGPL-3.0-only
+
 defmodule Pleroma.Web.Metadata do
   alias Phoenix.HTML
 
   def build_tags(params) do
-    Enum.reduce(Pleroma.Config.get([__MODULE__, :providers], []), "", fn parser, acc ->
+    providers = [
+      Pleroma.Web.Metadata.Providers.RestrictIndexing
+      | Pleroma.Config.get([__MODULE__, :providers], [])
+    ]
+
+    Enum.reduce(providers, "", fn parser, acc ->
       rendered_html =
         params
         |> parser.build_tags()
@@ -29,11 +35,11 @@ defmodule Pleroma.Web.Metadata do
     end
   end
 
-  def activity_nsfw?(%{data: %{"object" => %{"tag" => tags}}}) do
-    if(Pleroma.Config.get([__MODULE__, :unfurl_nsfw], false) == false) do
-      Enum.any?(tags, fn tag -> tag == "nsfw" end)
-    else
-      false
-    end
+  def activity_nsfw?(%{data: %{"sensitive" => sensitive}}) do
+    Pleroma.Config.get([__MODULE__, :unfurl_nsfw], false) == false and sensitive
+  end
+
+  def activity_nsfw?(_) do
+    false
   end
 end