diff options
author | Lain Soykaf <lain@soykaf.club> | 2021-01-28 09:33:30 +0100 |
---|---|---|
committer | Lain Soykaf <lain@soykaf.club> | 2021-01-28 09:33:30 +0100 |
commit | d18ba133b2db3d6af05cce191c5ea0c200b57346 (patch) | |
tree | aac2e5fa108474fc8b2e369647075ab1a506b9b4 /lib/pleroma/group.ex | |
parent | 633d0286b3cecc5140490b3a27e2732f98e012c5 (diff) | |
download | pleroma-groups.tar.gz |
Groups: Basic group validation.groups
Diffstat (limited to 'lib/pleroma/group.ex')
-rw-r--r-- | lib/pleroma/group.ex | 11 |
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 |