X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=lib%2Fpleroma%2Fweb%2Factivity_pub%2Fmrf%2Fno_placeholder_text_policy.ex;h=f25bb4efd537e016fba06b835a18e5276bbd0a62;hb=68894089e845220e06d77401d15e399cb0d3882c;hp=f30fee0d506068cfdaa588c2c03515cdcb542ad1;hpb=14deed7f7d0b88d5c8ac19bb3de467429c289746;p=akkoma diff --git a/lib/pleroma/web/activity_pub/mrf/no_placeholder_text_policy.ex b/lib/pleroma/web/activity_pub/mrf/no_placeholder_text_policy.ex index f30fee0d5..f25bb4efd 100644 --- a/lib/pleroma/web/activity_pub/mrf/no_placeholder_text_policy.ex +++ b/lib/pleroma/web/activity_pub/mrf/no_placeholder_text_policy.ex @@ -1,30 +1,28 @@ # Pleroma: A lightweight social networking server -# Copyright © 2019 Pleroma Authors +# Copyright © 2017-2021 Pleroma Authors # SPDX-License-Identifier: AGPL-3.0-only defmodule Pleroma.Web.ActivityPub.MRF.NoPlaceholderTextPolicy do @moduledoc "Ensure no content placeholder is present (such as the dot from mastodon)" - @behaviour Pleroma.Web.ActivityPub.MRF + @behaviour Pleroma.Web.ActivityPub.MRF.Policy + + @impl true + def history_awareness, do: :auto @impl true def filter( %{ - "type" => "Create", - "object" => %{"content" => content, "attachment" => _attachment} = child_object + "type" => type, + "object" => %{"content" => content, "attachment" => _} = _child_object } = object ) - when content in [".", "

.

"] do - child_object = - child_object - |> Map.put("content", "") - - object = - object - |> Map.put("object", child_object) - - {:ok, object} + when type in ["Create", "Update"] and content in [".", "

.

"] do + {:ok, put_in(object, ["object", "content"], "")} end @impl true def filter(object), do: {:ok, object} + + @impl true + def describe, do: {:ok, %{}} end