aboutsummaryrefslogtreecommitdiff
path: root/lib/pleroma/group.ex
diff options
context:
space:
mode:
Diffstat (limited to 'lib/pleroma/group.ex')
-rw-r--r--lib/pleroma/group.ex11
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/pleroma/group.ex b/lib/pleroma/group.ex
index 732791ec2..880cd52c6 100644
--- a/lib/pleroma/group.ex
+++ b/lib/pleroma/group.ex
@@ -92,4 +92,15 @@ defmodule Pleroma.Group do
{:ok, group}
end
end
+
+ @spec get_for_object(map()) :: t() | nil
+ def get_for_object(%{"type" => "Group", "id" => id}) do
+ with %User{} = user <- User.get_cached_by_ap_id(id),
+ group <- Repo.preload(user, :group).group do
+ group
+ end
+ end
+
+ def get_for_object(%{"type" => "Create", "object" => object}), do: get_for_object(object)
+ def get_for_object(_), do: nil
end