|
|
@@ -56,10 +56,18 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
defp check_remote_limit(%{"object" => %{"content" => content}}) do |
|
|
|
limit = Pleroma.Config.get([:instance, :remote_limit]) |
|
|
|
String.length(content) <= limit |
|
|
|
end |
|
|
|
|
|
|
|
defp check_remote_limit(_), do: true |
|
|
|
|
|
|
|
def insert(map, local \\ true) when is_map(map) do |
|
|
|
with nil <- Activity.normalize(map), |
|
|
|
map <- lazy_put_activity_defaults(map), |
|
|
|
:ok <- check_actor_is_active(map["actor"]), |
|
|
|
{_, true} <- {:remote_limit_error, check_remote_limit(map)}, |
|
|
|
{:ok, map} <- MRF.filter(map), |
|
|
|
:ok <- insert_full_object(map) do |
|
|
|
{recipients, _, _} = get_recipients(map) |
|
|
|