mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-19 17:38:19 +08:00
优化结构
This commit is contained in:
1 parent
75ebc1a746
commit
2554cf660a
34 files changed
+401
-150
No files matched your search
+39
-16
@@ -71,7 +71,9 @@ class ProblemDetailHandler extends ProblemHandler {
|
||||
this.uid = this.user._id;
|
||||
this.pid = pid;
|
||||
if (pid) this.pdoc = await problem.get(pid, this.uid);
|
||||
if (this.pdoc.hidden && this.pdoc.owner !== this.uid) this.checkPerm(PERM_VIEW_PROBLEM_HIDDEN);
|
||||
if (this.pdoc.hidden && this.pdoc.owner !== this.uid) {
|
||||
this.checkPerm(PERM_VIEW_PROBLEM_HIDDEN);
|
||||
}
|
||||
if (this.pdoc) this.udoc = await user.getById(this.pdoc.owner);
|
||||
this.response.body = {
|
||||
pdoc: this.pdoc,
|
||||
@@ -376,18 +378,39 @@ class ProblemCreateHandler extends Handler {
|
||||
}
|
||||
}
|
||||
|
||||
Route('/p', ProblemHandler);
|
||||
Route('/problem/random', ProblemRandomHandler);
|
||||
Route('/p/:pid', ProblemDetailHandler);
|
||||
Route('/p/:pid/submit', ProblemSubmitHandler);
|
||||
Route('/p/:pid/pretest', ProblemPretestHandler);
|
||||
Route('/p/:pid/settings', ProblemSettingsHandler);
|
||||
Route('/p/:pid/statistics', ProblemStatisticsHandler);
|
||||
Route('/p/:pid/edit', ProblemEditHandler);
|
||||
Route('/p/:pid/upload', ProblemDataUploadHandler);
|
||||
Route('/p/:pid/data', ProblemDataDownloadHandler);
|
||||
Route('/p/:pid/solution', ProblemSolutionHandler);
|
||||
Route('/p/:pid/solution/:psid/raw', ProblemSolutionRawHandler);
|
||||
Route('/p/:pid/solution/:psid/:psrid/raw', ProblemSolutionReplyRawHandler);
|
||||
Route('/problem/create', ProblemCreateHandler);
|
||||
Connection('/p/:pid/pretest-conn', ProblemPretestConnectionHandler);
|
||||
async function apply() {
|
||||
Route('/p', module.exports.ProblemHandler);
|
||||
Route('/problem/random', module.exports.ProblemRandomHandler);
|
||||
Route('/p/:pid', module.exports.ProblemDetailHandler);
|
||||
Route('/p/:pid/submit', module.exports.ProblemSubmitHandler);
|
||||
Route('/p/:pid/pretest', module.exports.ProblemPretestHandler);
|
||||
Route('/p/:pid/settings', module.exports.ProblemSettingsHandler);
|
||||
Route('/p/:pid/statistics', module.exports.ProblemStatisticsHandler);
|
||||
Route('/p/:pid/edit', module.exports.ProblemEditHandler);
|
||||
Route('/p/:pid/upload', module.exports.ProblemDataUploadHandler);
|
||||
Route('/p/:pid/data', module.exports.ProblemDataDownloadHandler);
|
||||
Route('/p/:pid/solution', module.exports.ProblemSolutionHandler);
|
||||
Route('/p/:pid/solution/:psid/raw', module.exports.ProblemSolutionRawHandler);
|
||||
Route('/p/:pid/solution/:psid/:psrid/raw', module.exports.ProblemSolutionReplyRawHandler);
|
||||
Route('/problem/create', module.exports.ProblemCreateHandler);
|
||||
Connection('/p/:pid/pretest-conn', module.exports.ProblemPretestConnectionHandler);
|
||||
}
|
||||
|
||||
global.Hydro.handler.problem = module.exports = {
|
||||
ProblemHandler,
|
||||
ProblemRandomHandler,
|
||||
ProblemDetailHandler,
|
||||
ProblemSubmitHandler,
|
||||
ProblemPretestHandler,
|
||||
ProblemSettingsHandler,
|
||||
ProblemStatisticsHandler,
|
||||
ProblemEditHandler,
|
||||
ProblemDataUploadHandler,
|
||||
ProblemDataDownloadHandler,
|
||||
ProblemSolutionHandler,
|
||||
ProblemSolutionRawHandler,
|
||||
ProblemSolutionReplyRawHandler,
|
||||
ProblemCreateHandler,
|
||||
ProblemPretestConnectionHandler,
|
||||
apply,
|
||||
};
|
||||
Reference in new issue
Block a user