fix: check member/group limits before creating

This commit is contained in:
spiral 2021-11-03 02:42:37 -04:00
parent 29b28ba742
commit e1a5310a3a
No known key found for this signature in database
GPG key ID: A6059F0CA0E1BD31
3 changed files with 15 additions and 2 deletions

View file

@ -56,6 +56,12 @@ namespace PluralKit.API
{
var system = await ResolveSystem("@me");
// Check group cap
var existingGroupCount = await _repo.GetSystemGroupCount(system.Id);
var groupLimit = system.GroupLimitOverride ?? Limits.MaxGroupCount;
if (existingGroupCount >= groupLimit)
throw Errors.GroupLimitReached;
var patch = GroupPatch.FromJson(data);
patch.AssertIsValid();
if (!patch.Name.IsPresent)