mirror of
https://github.com/SoDOff-Project/sodoff.git
synced 2026-01-13 13:41:52 -08:00
clans: disallow lower roles from removing higher role members
This commit is contained in:
parent
20308d55e6
commit
9f923e69d8
@ -370,7 +370,10 @@ public class GroupController : Controller {
|
|||||||
GroupMember? targetRole = vikingRole.Group.Vikings.FirstOrDefault(gv => gv.Viking.Uid == Guid.Parse(request.RemoveUserID));
|
GroupMember? targetRole = vikingRole.Group.Vikings.FirstOrDefault(gv => gv.Viking.Uid == Guid.Parse(request.RemoveUserID));
|
||||||
if (targetRole == null)
|
if (targetRole == null)
|
||||||
return Ok(new RemoveMemberResult { Success = false, Status = RemoveMemberStatus.UserNotAMemberOfTheGroup });
|
return Ok(new RemoveMemberResult { Success = false, Status = RemoveMemberStatus.UserNotAMemberOfTheGroup });
|
||||||
|
|
||||||
|
if (targetRole.UserRole >= vikingRole.UserRole)
|
||||||
|
return Ok(new RemoveMemberResult { Success = false, Status = RemoveMemberStatus.InvalidParameters });
|
||||||
|
|
||||||
vikingRole.Group.Vikings.Remove(targetRole);
|
vikingRole.Group.Vikings.Remove(targetRole);
|
||||||
if (!vikingRole.Group.Vikings.Any())
|
if (!vikingRole.Group.Vikings.Any())
|
||||||
ctx.Groups.Remove(vikingRole.Group);
|
ctx.Groups.Remove(vikingRole.Group);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user