From 385b8f4fe60ca49fe24c25eb7756e2eb9f9f0ec3 Mon Sep 17 00:00:00 2001 From: undefined Date: Mon, 31 May 2021 23:27:20 +0800 Subject: [PATCH] ui: fix link display --- packages/ui-default/backendlib/template.js | 9 ++++++++- packages/ui-default/package.json | 2 +- packages/ui-default/templates/components/problem.html | 11 ++++++----- packages/ui-default/templates/record_detail.html | 2 +- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/packages/ui-default/backendlib/template.js b/packages/ui-default/backendlib/template.js index fcf9ac08c..60527c8b3 100644 --- a/packages/ui-default/backendlib/template.js +++ b/packages/ui-default/backendlib/template.js @@ -11,7 +11,7 @@ const markdown = require('./markdown'); const { misc, buildContent, avatar } = global.Hydro.lib; -let template = argv.options.template; +let { template } = argv.options; if (template && typeof template !== 'string') template = findFileSync('@hydrooj/ui-default/templates'); else if (template) template = findFileSync(template); @@ -139,6 +139,13 @@ env.addGlobal('set', (obj, key, val) => { env.addGlobal('findSubModule', (prefix) => { filter(Object.keys(global.Hydro.ui.template), (n) => n.startsWith(prefix)); }); +env.addGlobal('parseContestProblemId', (pdoc, tdoc) => { + if (tdoc.pids[parseInt(pdoc.pid, 36) - 10]) return pdoc.pid; + let cur = tdoc.pids.indexOf(pdoc.docId); + if (cur !== -1) return (cur + 10).toString(36).toUpperCase(); + cur = tdoc.pids.indexOf(`${pdoc.domainId}:${pdoc.docId}`); + return (cur + 10).toString(36).toUpperCase(); +}); async function render(name, state) { // eslint-disable-next-line no-return-await diff --git a/packages/ui-default/package.json b/packages/ui-default/package.json index be9584f79..8c1b4ab8f 100644 --- a/packages/ui-default/package.json +++ b/packages/ui-default/package.json @@ -1,6 +1,6 @@ { "name": "@hydrooj/ui-default", - "version": "4.11.7", + "version": "4.11.8", "author": "undefined ", "license": "AGPL-3.0", "main": "hydro.js", diff --git a/packages/ui-default/templates/components/problem.html b/packages/ui-default/templates/components/problem.html index 8a1bdb902..3df58e6c0 100644 --- a/packages/ui-default/templates/components/problem.html +++ b/packages/ui-default/templates/components/problem.html @@ -1,11 +1,12 @@ {% macro render_problem_title(pdoc, tdoc=none, show_tags=true, show_invisible_flag=true, invalid=false) %} {%- if not invalid %} diff --git a/packages/ui-default/templates/record_detail.html b/packages/ui-default/templates/record_detail.html index 26f5fd4b6..f6677c617 100644 --- a/packages/ui-default/templates/record_detail.html +++ b/packages/ui-default/templates/record_detail.html @@ -58,7 +58,7 @@ {% if tdoc %}
{{ _('Contest') if tdoc.docType == model.document.TYPE_CONTEST else _('Homework') }}
- {{ tdoc.title }} + {{ tdoc.title }}
{% endif %}
{{ _('Language') }}