feat: let you use -all flag to add or remove all members to/from a group

This commit is contained in:
rladenson 2024-09-02 19:18:43 -06:00
parent 601d266063
commit 8dc1a3c73e

View file

@ -84,10 +84,22 @@ public class GroupMember
{ {
ctx.CheckOwnGroup(target); ctx.CheckOwnGroup(target);
var members = (await ctx.ParseMemberList(ctx.System.Id)) List<MemberId> members;
if (ctx.MatchFlag("all", "a"))
{
members = (await ctx.Database.Execute(conn => conn.QueryMemberList(target.System,
new DatabaseViewsExt.ListQueryOptions { })))
.Select(m => m.Id)
.Distinct()
.ToList();
}
else
{
members = (await ctx.ParseMemberList(ctx.System.Id))
.Select(m => m.Id) .Select(m => m.Id)
.Distinct() .Distinct()
.ToList(); .ToList();
}
var existingMembersInGroup = (await ctx.Database.Execute(conn => conn.QueryMemberList(target.System, var existingMembersInGroup = (await ctx.Database.Execute(conn => conn.QueryMemberList(target.System,
new DatabaseViewsExt.ListQueryOptions { GroupFilter = target.Id }))) new DatabaseViewsExt.ListQueryOptions { GroupFilter = target.Id })))