mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-19 17:38:19 +08:00
ui: fix login by email
This commit is contained in:
1 parent
78be1d6fc5
commit
4b74ebbeba
3 files changed
+12
-8
No files matched your search
@@ -4,7 +4,7 @@ import crypto from 'crypto';
|
||||
import esbuild from 'esbuild';
|
||||
import {
|
||||
ContestModel, Context, fs, Handler, Logger, ObjectID, param, PERM, PRIV, ProblemModel, Schema,
|
||||
SettingModel, SystemModel, SystemSettings, Types, UiContextBase, UserModel,
|
||||
SettingModel, size, SystemModel, SystemSettings, Types, UiContextBase, UserModel,
|
||||
} from 'hydrooj';
|
||||
import { debounce } from 'lodash';
|
||||
import { tmpdir } from 'os';
|
||||
@@ -79,7 +79,7 @@ export async function buildUI() {
|
||||
const version = c.digest('hex');
|
||||
constant = JSON.stringify(payload);
|
||||
UiContextBase.constantVersion = hash = version;
|
||||
logger.success('UI addons built in %d ms', Date.now() - start);
|
||||
logger.success('UI addons built in %d ms (%s)', Date.now() - start, size(constant.length));
|
||||
}
|
||||
function updateLogo() {
|
||||
UiContextBase.nav_logo_dark = SystemModel.get('ui-default.nav_logo_dark');
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@hydrooj/ui-default",
|
||||
"version": "4.46.0",
|
||||
"version": "4.46.1",
|
||||
"author": "undefined <i@undefined.moe>",
|
||||
"license": "AGPL-3.0",
|
||||
"main": "index.ts",
|
||||
|
||||
@@ -74,12 +74,16 @@ export default new AutoloadPage('user_verify', () => {
|
||||
ev.preventDefault();
|
||||
const $form = ev.currentTarget.form;
|
||||
const uname = $('[name="uname"]').val() as string;
|
||||
const { tfa, authn } = await api(gql`
|
||||
user(uname:${uname}){
|
||||
tfa
|
||||
authn
|
||||
const info = await api(gql`
|
||||
uname: user(uname:${uname}){
|
||||
tfa authn
|
||||
}
|
||||
`, ['data', 'user']);
|
||||
mail: user(mail:${uname}){
|
||||
tfa authn
|
||||
}
|
||||
`, ['data']);
|
||||
if (!info.uname && !info.mail) Notification.error(i18n('User not found.'));
|
||||
const { authn, tfa } = info.uname || info.mail;
|
||||
if (authn || tfa) {
|
||||
let action = (authn && tfa) ? await chooseAction(true) : '';
|
||||
if (!action) action = tfa ? await chooseAction(false) : 'webauthn';
|
||||
|
||||
Reference in new issue
Block a user