Allow group admins to moderate new members
Closes #881 Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
@@ -81,6 +81,24 @@ defmodule Mobilizon.GraphQL.Schema.Actors.MemberType do
|
||||
resolve(&Member.reject_invitation/3)
|
||||
end
|
||||
|
||||
@desc """
|
||||
Approve a membership request
|
||||
"""
|
||||
field :approve_member, :member do
|
||||
arg(:member_id, non_null(:id), description: "The member ID")
|
||||
|
||||
resolve(&Member.approve_member/3)
|
||||
end
|
||||
|
||||
@desc """
|
||||
Reject a membership request
|
||||
"""
|
||||
field :reject_member, :member do
|
||||
arg(:member_id, non_null(:id), description: "The member ID")
|
||||
|
||||
resolve(&Member.reject_member/3)
|
||||
end
|
||||
|
||||
@desc """
|
||||
Update a member's role
|
||||
"""
|
||||
@@ -93,9 +111,13 @@ defmodule Mobilizon.GraphQL.Schema.Actors.MemberType do
|
||||
|
||||
@desc "Remove a member from a group"
|
||||
field :remove_member, :member do
|
||||
arg(:group_id, non_null(:id), description: "The group ID")
|
||||
arg(:member_id, non_null(:id), description: "The member ID")
|
||||
|
||||
arg(:exclude, :boolean,
|
||||
default_value: false,
|
||||
description: "Whether the member should be excluded from the group"
|
||||
)
|
||||
|
||||
resolve(&Member.remove_member/3)
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user