summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-08-12 01:49:43 +0200
committerFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-08-12 01:49:43 +0200
commitb51cb55504e07ee791106fc99287a13a9f83286e (patch)
tree4ae5c2fa71719056c616bee96cd793b74770f943 /src
parentMerge pull request #198 from fosscord/l10n_master (diff)
downloadserver-ts-b51cb55504e07ee791106fc99287a13a9f83286e.tar.xz
:bug: fix login undelete/undisable
Diffstat (limited to 'src')
-rw-r--r--src/routes/auth/login.ts21
1 files changed, 7 insertions, 14 deletions
diff --git a/src/routes/auth/login.ts b/src/routes/auth/login.ts

index 8d1a8df3..6c4e5e3e 100644 --- a/src/routes/auth/login.ts +++ b/src/routes/auth/login.ts
@@ -47,27 +47,20 @@ router.post( const user = await UserModel.findOne( { $or: query }, - { - user_data: { - hash: true - }, - id: true, - user_settings: { - locale: true, - theme: true - } - } + { user_data: { hash: true }, id: true, disabled: true, deleted: true, user_settings: { locale: true, theme: true } } ) .exec() .catch((e) => { throw FieldErrors({ login: { message: req.t("auth:login.INVALID_LOGIN"), code: "INVALID_LOGIN" } }); }); - if (user.disabled && undelete) { + if (undelete) { // undelete refers to un'disable' here - await UserModel.updateOne({ id: req.user_id }, { disabled: false }).exec(); - } else if (user.disabled) { - return res.status(400).json({ message: req.t("auth:login.ACCOUNT_DISABLED"), code: 20013 }); + if (user.disabled) await UserModel.updateOne({ id: user.id }, { disabled: false }).exec(); + if (user.deleted) await UserModel.updateOne({ id: user.id }, { deleted: false }).exec(); + } else { + if (user.deleted) return res.status(400).json({ message: "This account is scheduled for deletion.", code: 20011 }); + if (user.disabled) return res.status(400).json({ message: req.t("auth:login.ACCOUNT_DISABLED"), code: 20013 }); } // the salt is saved in the password refer to bcrypt docs