diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index 322de22d..ff29d6cd 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -1,6 +1,6 @@ { "name": "hydrooj", - "version": "2.21.6", + "version": "2.21.7", "bin": "bin/hydrooj.js", "main": "dist/loader.js", "typings": "dist/loader.d.ts", diff --git a/packages/hydrooj/src/handler/status.ts b/packages/hydrooj/src/handler/status.ts index 55f41329..c8eb5743 100644 --- a/packages/hydrooj/src/handler/status.ts +++ b/packages/hydrooj/src/handler/status.ts @@ -3,6 +3,7 @@ import RecordModel from '../model/record'; import DomainModel from '../model/domain'; import * as DocumentModel from '../model/document'; import db from '../service/db'; +import * as bus from '../service/bus'; import { Route, Handler } from '../service/server'; import UserModel from '../model/user'; @@ -64,6 +65,7 @@ class StatusUpdateHandler extends Handler { async post(args) { this.checkPriv(PRIV.PRIV_JUDGE); args.type = 'judge'; + args.updateAt = new Date(); return coll.updateOne( { mid: args.mid, type: 'judge' }, { $set: args }, @@ -72,6 +74,8 @@ class StatusUpdateHandler extends Handler { } } +bus.once('app/started', () => coll.createIndex('updateAt', { expireAfterSeconds: 24 * 3600 })); + export async function apply() { Route('status', '/status', StatusHandler); Route('status_admin', '/.status', AdminStatusHandler); diff --git a/packages/ui-default/build/config/webpack.js b/packages/ui-default/build/config/webpack.js index fab6f701..0a53b261 100644 --- a/packages/ui-default/build/config/webpack.js +++ b/packages/ui-default/build/config/webpack.js @@ -68,7 +68,7 @@ export default function (env = {}) { entry: { hydro: './entry.js', 'theme.default': './theme/default.js', - 'theme.98': './theme/98.js', + // 'theme.98': './theme/98.js', }, output: { path: root('public'),