diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index 2af76d601..9892c4088 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -1,6 +1,6 @@ { "name": "hydrooj", - "version": "3.9.2", + "version": "3.9.3", "bin": "bin/hydrooj.js", "main": "src/loader", "module": "src/loader", diff --git a/packages/hydrooj/src/handler/problem.ts b/packages/hydrooj/src/handler/problem.ts index 4a5fc3335..07ea58198 100644 --- a/packages/hydrooj/src/handler/problem.ts +++ b/packages/hydrooj/src/handler/problem.ts @@ -445,6 +445,7 @@ export class ProblemSubmitHandler extends ProblemDetailHandler { throw new BadRequestError('Language not allowed.'); } if (pretest && setting.langs[lang]?.pretest) lang = setting.langs[lang].pretest; + if (pretest && setting.langs[lang]?.pretest === false) throw new BadRequestError('Cannot run pretest for this language.'); if (pretest && !['default', 'fileio', 'remote_judge'].includes(this.response.body.pdoc.config?.type)) { throw new BadRequestError('unable to run pretest'); } diff --git a/packages/ui-default/components/scratchpad/ScratchpadToolbarContainer.jsx b/packages/ui-default/components/scratchpad/ScratchpadToolbarContainer.jsx index 264403331..536054e20 100644 --- a/packages/ui-default/components/scratchpad/ScratchpadToolbarContainer.jsx +++ b/packages/ui-default/components/scratchpad/ScratchpadToolbarContainer.jsx @@ -99,6 +99,7 @@ export default connect(mapStateToProps, mapDispatchToProps)(class ScratchpadTool if (UiContext.pdoc.config?.type === 'remote_judge') { if (window.LANGS[this.props.editorLang].pretest) canUsePretest = true; } + if (window.LANGS[this.props.editorLang].pretest === false) canUsePretest = false; return ( {canUsePretest && ( diff --git a/packages/ui-default/components/scratchpad/reducers/ui.js b/packages/ui-default/components/scratchpad/reducers/ui.js index fa706f5c2..6836fd07f 100644 --- a/packages/ui-default/components/scratchpad/reducers/ui.js +++ b/packages/ui-default/components/scratchpad/reducers/ui.js @@ -55,6 +55,10 @@ export default function reducer(state = { case 'SCRATCHPAD_POST_SUBMIT_PENDING': { return { ...state, + records: { + ...state.records, + visible: true, + }, isPosting: true, }; } diff --git a/packages/ui-default/package.json b/packages/ui-default/package.json index 4dc0c1b0b..92c5f5c43 100644 --- a/packages/ui-default/package.json +++ b/packages/ui-default/package.json @@ -1,6 +1,6 @@ { "name": "@hydrooj/ui-default", - "version": "4.34.1", + "version": "4.34.2", "author": "undefined ", "license": "AGPL-3.0", "main": "hydro.js",