From b8a4ed4c524751663bdfe038e40a4d20cdc9c18f Mon Sep 17 00:00:00 2001 From: panda Date: Sun, 10 Jul 2022 14:54:05 +0800 Subject: [PATCH] ui: fix contest_files ui (#385) --- packages/hydrooj/package.json | 3 +-- packages/hydrooj/src/handler/contest.ts | 5 +++++ packages/ui-default/package.json | 2 +- packages/ui-default/pages/contest_edit.page.ts | 7 +++++++ packages/ui-default/pages/files.page.styl | 9 +++++++++ packages/ui-default/pages/home_files.page.styl | 6 ------ packages/ui-default/templates/partials/files.html | 4 ++++ 7 files changed, 27 insertions(+), 9 deletions(-) create mode 100644 packages/ui-default/pages/files.page.styl delete mode 100644 packages/ui-default/pages/home_files.page.styl diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index f7601c1db..95fb61a80 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -1,6 +1,6 @@ { "name": "hydrooj", - "version": "3.14.7", + "version": "3.14.8", "bin": "bin/hydrooj.js", "main": "src/loader", "module": "src/loader", @@ -68,7 +68,6 @@ "@types/mongodb": "^3.6.20", "@types/nodemailer": "^6.4.4", "@types/notp": "^2.0.2", - "@types/path-to-regexp": "^1.7.0", "@types/semver": "^7.3.10", "@types/serialize-javascript": "^5.0.2", "@types/source-map-support": "^0.5.4", diff --git a/packages/hydrooj/src/handler/contest.ts b/packages/hydrooj/src/handler/contest.ts index 43e00d22d..d7be8d284 100644 --- a/packages/hydrooj/src/handler/contest.ts +++ b/packages/hydrooj/src/handler/contest.ts @@ -108,6 +108,11 @@ export class ContestDetailHandler extends Handler { tdoc, tsdoc, udict, page, }; if (contest.isNotStarted(tdoc)) return; + if (!this.request.json) { + this.response.body.tdoc.content = this.response.body.tdoc.content + .replace(/\(file:\/\//g, `(./${tdoc.docId}/file/`) + .replace(/="file:\/\//g, `="./${tdoc.docId}/file/`); + } const pdict = await problem.getList(domainId, tdoc.pids, true, undefined, undefined, problem.PROJECTION_CONTEST_LIST); const psdict = {}; let rdict = {}; diff --git a/packages/ui-default/package.json b/packages/ui-default/package.json index 69be38768..ab21921ec 100644 --- a/packages/ui-default/package.json +++ b/packages/ui-default/package.json @@ -1,6 +1,6 @@ { "name": "@hydrooj/ui-default", - "version": "4.38.9", + "version": "4.38.10", "author": "undefined ", "license": "AGPL-3.0", "main": "hydro.js", diff --git a/packages/ui-default/pages/contest_edit.page.ts b/packages/ui-default/pages/contest_edit.page.ts index 5d4446d3e..6a544412b 100644 --- a/packages/ui-default/pages/contest_edit.page.ts +++ b/packages/ui-default/pages/contest_edit.page.ts @@ -25,6 +25,13 @@ const page = new NamedPage(['contest_edit', 'contest_create', 'homework_create', ev.target.click(); }); }); + setInterval(() => { + $('img').each(function () { + if ($(this).attr('src').startsWith('file://')) { + $(this).attr('src', $(this).attr('src').replace('file://', './file/')); + } + }); + }, 500); } }); diff --git a/packages/ui-default/pages/files.page.styl b/packages/ui-default/pages/files.page.styl new file mode 100644 index 000000000..435a0938d --- /dev/null +++ b/packages/ui-default/pages/files.page.styl @@ -0,0 +1,9 @@ +.page--home_files,.page--contest_files + .col--checkbox + width: 60px + + .col--size + width: 120px + + .col--operation + width: 40px diff --git a/packages/ui-default/pages/home_files.page.styl b/packages/ui-default/pages/home_files.page.styl deleted file mode 100644 index 49bd0b7e3..000000000 --- a/packages/ui-default/pages/home_files.page.styl +++ /dev/null @@ -1,6 +0,0 @@ -.page--home_files - .col--checkbox - width: 60px - - .col--size - width: 120px diff --git a/packages/ui-default/templates/partials/files.html b/packages/ui-default/templates/partials/files.html index ee343fb86..cfc33f40a 100644 --- a/packages/ui-default/templates/partials/files.html +++ b/packages/ui-default/templates/partials/files.html @@ -16,6 +16,7 @@ {{ _('Filename') }} {{ _('Size') }} + @@ -30,6 +31,9 @@ {{ file.name }} {{ size(file.size) }} + + + {%- endfor -%}