diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index c38afac24..54fd7f50d 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -1,6 +1,6 @@ { "name": "hydrooj", - "version": "3.2.18", + "version": "3.2.19", "bin": "bin/hydrooj.js", "main": "src/loader", "module": "src/loader", diff --git a/packages/hydrooj/src/handler/record.ts b/packages/hydrooj/src/handler/record.ts index 28daf63f8..be0b6c127 100644 --- a/packages/hydrooj/src/handler/record.ts +++ b/packages/hydrooj/src/handler/record.ts @@ -125,6 +125,7 @@ class RecordDetailHandler extends Handler { let canViewCode = rdoc.uid === this.user._id; canViewCode ||= this.user.hasPriv(PRIV.PRIV_READ_RECORD_CODE); + canViewCode ||= this.user.hasPerm(PERM.PERM_READ_RECORD_CODE); canViewCode ||= this.user.hasPerm(PERM.PERM_READ_RECORD_CODE_ACCEPT) && self?.status === STATUS.STATUS_ACCEPTED; if (!canViewCode) { rdoc.code = ''; @@ -285,6 +286,7 @@ class RecordDetailConnectionHandler extends ConnectionHandler { let canViewCode = rdoc.uid === this.user._id; canViewCode ||= this.user.hasPriv(PRIV.PRIV_READ_RECORD_CODE); + canViewCode ||= this.user.hasPerm(PERM.PERM_READ_RECORD_CODE); canViewCode ||= this.user.hasPerm(PERM.PERM_READ_RECORD_CODE_ACCEPT) && self?.status === STATUS.STATUS_ACCEPTED; if (!canViewCode) { rdoc.code = '';