From 500e08abac2f005875b06d4824cb226ab20d5fcd Mon Sep 17 00:00:00 2001 From: undefined Date: Thu, 20 Oct 2022 11:40:19 +0800 Subject: [PATCH] ui: fix preview namespace conflict --- packages/hydrooj/src/handler/user.ts | 3 ++- packages/ui-default/components/preview/preview.page.ts | 6 +++--- packages/ui-default/package.json | 2 +- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/hydrooj/src/handler/user.ts b/packages/hydrooj/src/handler/user.ts index 1795bc3f6..cf4e2e8bb 100644 --- a/packages/hydrooj/src/handler/user.ts +++ b/packages/hydrooj/src/handler/user.ts @@ -121,7 +121,8 @@ class UserLoginHandler extends Handler { if (!udoc) udoc = await user.getByUname(domainId, uname); if (!udoc) throw new UserNotFoundError(uname); await Promise.all([ - this.limitRate('user_login', 60, 5), + this.limitRate('user_login', 60, 30), + this.limitRate(`user_login_${uname}`, 60, 5), oplog.log(this, 'user.login', { redirect }), ]); if (udoc._tfa && !verifyToken(udoc._tfa, tfa)) throw new InvalidTokenError('2FA token invalid.'); diff --git a/packages/ui-default/components/preview/preview.page.ts b/packages/ui-default/components/preview/preview.page.ts index aae2f63f1..5b3aace6e 100644 --- a/packages/ui-default/components/preview/preview.page.ts +++ b/packages/ui-default/components/preview/preview.page.ts @@ -9,7 +9,7 @@ import pjax from 'vj/utils/pjax'; import request from 'vj/utils/request'; import tpl from 'vj/utils/tpl'; -async function startEdit(filename, value) { +async function startEdit(filename, value, fileCategory = 'file') { const { default: Editor } = await import('vj/components/editor/index'); const promise = new ActionDialog({ $body: tpl` @@ -32,7 +32,7 @@ async function startEdit(filename, value) { autoResize: false, autoLayout: false, language: (language as string), - model: `hydro://problem/file/${filename}`, + model: `hydro://problem/${fileCategory}/${filename}`, }); const action = await promise; value = (editor.value() as string).replace(/\r\n/g, '\n'); @@ -143,7 +143,7 @@ export async function previewFile(ev, type = '') { throw e; } } else Notification.info(i18n('Loading editor...')); - const val = await startEdit(filename, content); + const val = await startEdit(filename, content, type || 'file'); if (typeof val !== 'string') return null; Notification.info(i18n('Saving file...')); const data = new FormData(); diff --git a/packages/ui-default/package.json b/packages/ui-default/package.json index 1b5ac969e..c211d3c9d 100644 --- a/packages/ui-default/package.json +++ b/packages/ui-default/package.json @@ -1,6 +1,6 @@ { "name": "@hydrooj/ui-default", - "version": "4.42.2", + "version": "4.42.3", "author": "undefined ", "license": "AGPL-3.0", "main": "index.ts",