ui: fix login by email

pull/498/head
undefined 2 years ago
parent 78be1d6fc5
commit 4b74ebbeba

@ -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';

Loading…
Cancel
Save