diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index 0083a6b03..89a1f8f0b 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -1,6 +1,6 @@ { "name": "hydrooj", - "version": "2.29.28", + "version": "2.29.29", "bin": "bin/hydrooj.js", "main": "dist/loader.js", "typings": "dist/loader.d.ts", diff --git a/packages/hydrooj/src/handler/contest.ts b/packages/hydrooj/src/handler/contest.ts index 8824d46d2..1a785912a 100644 --- a/packages/hydrooj/src/handler/contest.ts +++ b/packages/hydrooj/src/handler/contest.ts @@ -225,6 +225,7 @@ export class ContestEditHandler extends Handler { const pids = _pids.replace(/,/g, ',').split(',').map((i) => { i = i.trim(); if ((+i).toString() === i) return +i; + if (i.split(':')[0] === domainId) return +i.split(':')[1]; return i; }).filter((i) => i); const beginAtMoment = moment.tz(`${beginAtDate} ${beginAtTime}`, this.user.timeZone); diff --git a/packages/hydrooj/src/handler/homework.ts b/packages/hydrooj/src/handler/homework.ts index 7e934395f..fd5cfc877 100644 --- a/packages/hydrooj/src/handler/homework.ts +++ b/packages/hydrooj/src/handler/homework.ts @@ -312,6 +312,7 @@ class HomeworkEditHandler extends Handler { const pids = _pids.replace(/,/g, ',').split(',').map((i) => { i = i.trim(); if ((+i).toString() === i) return +i; + if (i.split(':')[0] === domainId) return +i.split(':')[1]; return i; }).filter((i) => i); const tdoc = tid diff --git a/packages/ui-default/templates/homework_detail.html b/packages/ui-default/templates/homework_detail.html index 34556931e..d1ede40ab 100644 --- a/packages/ui-default/templates/homework_detail.html +++ b/packages/ui-default/templates/homework_detail.html @@ -41,22 +41,21 @@ {%- for pid in tdoc.pids -%} - {% if handler.user.hasPriv(PRIV.PRIV_USER_PROFILE) %} - {% if psdict[pid] and psdict[pid]['rid'] %} - {% set rdoc = rdict[psdict[pid]['rid']] %} - {% if model.contest.canShowRecord.call(handler, tdoc) %} - {{ record.render_status_td(rdoc) }} + {% if handler.user.hasPriv(PRIV.PRIV_USER_PROFILE) %} + {% if psdict[pid] and psdict[pid].rid %} + {% set rdoc = rdict[psdict[pid].rid] %} + {% if model.contest.canShowRecord.call(handler, tdoc) %} + {{ record.render_status_td(rdoc) }} + {% else %} + {{ _('Submitted') }} + {% endif %} + {{ datetimeSpan(rdoc._id)|safe }} {% else %} - {{ _('Submitted') }} + {{ _('No Submissions') }} + - {% endif %} - {{ datetimeSpan(rdoc['_id'])|safe }} - {% else %} - {{ _('No Submissions') }} - - {% endif %} - {% endif %} - #{{ loop.index }}: {{ problem.render_problem_title(pdict[pid], tdoc=tdoc, show_invisible_flag=false, show_tags=false) }}