aboutsummaryrefslogtreecommitdiff
path: root/lib/pleroma/web/activity_pub/object_validator.ex
diff options
context:
space:
mode:
Diffstat (limited to 'lib/pleroma/web/activity_pub/object_validator.ex')
-rw-r--r--lib/pleroma/web/activity_pub/object_validator.ex10
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/pleroma/web/activity_pub/object_validator.ex b/lib/pleroma/web/activity_pub/object_validator.ex
index adcb53c65..33e67dbb9 100644
--- a/lib/pleroma/web/activity_pub/object_validator.ex
+++ b/lib/pleroma/web/activity_pub/object_validator.ex
@@ -10,6 +10,8 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidator do
"""
alias Pleroma.Web.ActivityPub.ObjectValidators.LikeValidator
+ alias Pleroma.User
+ alias Pleroma.Object
@spec validate(map(), keyword()) :: {:ok, map(), keyword()} | {:error, any()}
def validate(object, meta)
@@ -24,9 +26,15 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidator do
end
end
- defp stringify_keys(object) do
+ def stringify_keys(object) do
object
|> Enum.map(fn {key, val} -> {to_string(key), val} end)
|> Enum.into(%{})
end
+
+ def fetch_actor_and_object(object) do
+ User.get_or_fetch_by_ap_id(object["actor"])
+ Object.normalize(object["object"])
+ :ok
+ end
end