From 9db541f4c3628abc1aa2094dfddfb2ec39b85df0 Mon Sep 17 00:00:00 2001 From: Kalista Payne Date: Wed, 17 Dec 2025 16:44:17 -0600 Subject: [PATCH] fix(deletion): handle group leave logic on app server still --- website/server/controllers/api-v3/user.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/website/server/controllers/api-v3/user.js b/website/server/controllers/api-v3/user.js index ec1b370e7a..a7c79d1c06 100644 --- a/website/server/controllers/api-v3/user.js +++ b/website/server/controllers/api-v3/user.js @@ -300,6 +300,15 @@ api.deleteUser = { throw new NotAuthorized(res.t('cannotDeleteActiveAccount')); } + const types = ['party', 'guilds']; + const groupFields = basicGroupFields.concat(' leader memberCount purchased'); + + const groupsUserIsMemberOf = await Group.getGroups({ user, types, groupFields }); + + const groupLeavePromises = groupsUserIsMemberOf.map(group => group.leave(user, 'remove-all')); + + await Promise.all(groupLeavePromises); + if (feedback) { sendTxn({ email: TECH_ASSISTANCE_EMAIL }, 'admin-feedback', [ { name: 'PROFILE_NAME', content: user.profile.name },