From c3b314f8dd6ef11133fe84a1083d594751b3fc43 Mon Sep 17 00:00:00 2001 From: undefined Date: Fri, 8 Jan 2021 22:04:25 +0800 Subject: [PATCH] =?UTF-8?q?core:=20=E4=BC=98=E5=8C=96=E6=B3=A8=E5=86=8C?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E4=BB=A5=E9=98=B2=E6=AD=A2=E5=9C=A8token?= =?UTF-8?q?=E5=A4=B1=E6=95=88=E6=97=B6=E4=B8=A2=E5=87=BA=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E7=BA=A7=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/hydrooj/package.json | 2 +- packages/hydrooj/src/handler/home.ts | 2 +- packages/hydrooj/src/handler/user.ts | 6 +++--- packages/hydrooj/src/interface.ts | 3 --- 4 files changed, 5 insertions(+), 8 deletions(-) diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index 7b344ee5b..ead0253d0 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -1,6 +1,6 @@ { "name": "hydrooj", - "version": "2.15.13", + "version": "2.15.14", "bin": "bin/hydrooj.js", "main": "dist/loader.js", "typings": "dist/loader.d.ts", diff --git a/packages/hydrooj/src/handler/home.ts b/packages/hydrooj/src/handler/home.ts index 5118b24c7..dc4f97746 100644 --- a/packages/hydrooj/src/handler/home.ts +++ b/packages/hydrooj/src/handler/home.ts @@ -158,7 +158,7 @@ class HomeSecurityHandler extends Handler { if (udoc) throw new UserAlreadyExistError(email); const [code] = await token.add( token.TYPE_CHANGEMAIL, - system.get('changemail_token_expire_seconds'), + system.get('session.unsaved_expire_seconds'), { uid: this.user._id, email }, ); const m = await this.renderHTML('user_changemail_mail.html', { diff --git a/packages/hydrooj/src/handler/user.ts b/packages/hydrooj/src/handler/user.ts index f6266ffc4..008bc0c9b 100644 --- a/packages/hydrooj/src/handler/user.ts +++ b/packages/hydrooj/src/handler/user.ts @@ -97,10 +97,10 @@ class UserRegisterWithCodeHandler extends Handler { domainId: string, password: string, verify: string, uname: string, code: string, ) { - const { mail } = await token.get(code, token.TYPE_REGISTRATION); - if (!mail) throw new InvalidTokenError(token.TYPE_REGISTRATION, code); + const tdoc = await token.get(code, token.TYPE_REGISTRATION); + if (!tdoc || !tdoc.mail) throw new InvalidTokenError(token.TYPE_REGISTRATION, code); if (password !== verify) throw new VerifyPasswordError(); - const uid = await user.create(mail, uname, password, undefined, this.request.ip); + const uid = await user.create(tdoc.mail, uname, password, undefined, this.request.ip); await token.del(code, token.TYPE_REGISTRATION); this.session.uid = uid; this.session.scpoe = PERM.PERM_ALL; diff --git a/packages/hydrooj/src/interface.ts b/packages/hydrooj/src/interface.ts index 03dff4309..65f307577 100644 --- a/packages/hydrooj/src/interface.ts +++ b/packages/hydrooj/src/interface.ts @@ -36,9 +36,6 @@ export interface SystemKeys { 'session.secure': boolean, 'session.expire_seconds': number, 'session.unsaved_expire_seconds': number, - 'lostpass_token_expire_seconds': number, - 'registration_token_expire_seconds': number, - 'changemail_token_expire_seconds': number, 'user.quota': number, }