From 5b3fe6f818f6d764e2e3d87b7e43ddf34efdde75 Mon Sep 17 00:00:00 2001
From: virusdefender <1670873886@qq.com>
Date: Fri, 30 Oct 2015 15:22:40 +0800
Subject: [PATCH 1/9] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20js=20=E6=A8=A1?=
=?UTF-8?q?=E5=9D=97=E8=B7=AF=E5=BE=84=E5=92=8C=E6=89=93=E5=8C=85?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
static/src/js/build.js | 48 ++++++++++---------
static/src/js/config.js | 23 ++++-----
.../src/admin/contest/submission_list.html | 37 --------------
3 files changed, 38 insertions(+), 70 deletions(-)
delete mode 100644 template/src/admin/contest/submission_list.html
diff --git a/static/src/js/build.js b/static/src/js/build.js
index 6904946..9d2a312 100644
--- a/static/src/js/build.js
+++ b/static/src/js/build.js
@@ -62,17 +62,18 @@
admin_8_pack: "app/admin/admin",
login_9_pack: "app/oj/account/login",
addContest_10_pack: "app/admin/contest/addContest",
- changePassword_11_pack: "app/oj/account/changePassword",
- monitor_12_pack: "app/admin/monitor/monitor",
- editProblem_13_pack: "app/admin/contest/editProblem",
- joinGroupRequestList_14_pack: "app/admin/group/joinGroupRequestList",
- group_15_pack: "app/oj/group/group",
- editProblem_16_pack: "app/admin/problem/editProblem",
- register_17_pack: "app/oj/account/register",
- groupDetail_18_pack: "app/admin/group/groupDetail",
- contestPassword_19_pack: "app/oj/contest/contestPassword",
- group_20_pack: "app/admin/group/group",
- submissionList_21_pack: "app/admin/contest/submissionList"
+ contestPassword_11_pack: "app/oj/contest/contestPassword",
+ changePassword_12_pack: "app/oj/account/changePassword",
+ monitor_13_pack: "app/admin/monitor/monitor",
+ editProblem_14_pack: "app/admin/contest/editProblem",
+ joinGroupRequestList_15_pack: "app/admin/group/joinGroupRequestList",
+ group_16_pack: "app/oj/group/group",
+ contestProblemList_17_pack: "app/admin/contest/contestProblemList",
+ editProblem_18_pack: "app/admin/problem/editProblem",
+ register_19_pack: "app/oj/account/register",
+ groupDetail_20_pack: "app/admin/group/groupDetail",
+ editContest_21_pack: "app/admin/contest/editContest",
+ group_22_pack: "app/admin/group/group",
},
shim: {
avalon: {
@@ -123,38 +124,41 @@
name: "addContest_10_pack"
},
{
- name: "changePassword_11_pack"
+ name: "contestPassword_11_pack"
},
{
- name: "monitor_12_pack"
+ name: "changePassword_12_pack"
},
{
- name: "editProblem_13_pack"
+ name: "monitor_13_pack"
},
{
- name: "joinGroupRequestList_14_pack"
+ name: "editProblem_14_pack"
},
{
- name: "group_15_pack"
+ name: "joinGroupRequestList_15_pack"
},
{
- name: "editProblem_16_pack"
+ name: "group_16_pack"
},
{
- name: "register_17_pack"
+ name: "contestProblemList_17_pack"
},
{
- name: "groupDetail_18_pack"
+ name: "editProblem_18_pack"
},
{
- name: "contestPassword_19_pack"
+ name: "register_19_pack"
},
{
- name: "group_20_pack"
+ name: "groupDetail_20_pack"
},
{
- name: "submissionList_21_pack"
+ name: "editContest_21_pack"
},
+ {
+ name: "group_22_pack"
+ }
],
optimizeCss: "standard",
})
\ No newline at end of file
diff --git a/static/src/js/config.js b/static/src/js/config.js
index 2e744a5..f0b1047 100644
--- a/static/src/js/config.js
+++ b/static/src/js/config.js
@@ -64,17 +64,18 @@ var require = {
admin_8_pack: "app/admin/admin",
login_9_pack: "app/oj/account/login",
addContest_10_pack: "app/admin/contest/addContest",
- changePassword_11_pack: "app/oj/account/changePassword",
- monitor_12_pack: "app/admin/monitor/monitor",
- editProblem_13_pack: "app/admin/contest/editProblem",
- joinGroupRequestList_14_pack: "app/admin/group/joinGroupRequestList",
- group_15_pack: "app/oj/group/group",
- editProblem_16_pack: "app/admin/problem/editProblem",
- register_17_pack: "app/oj/account/register",
- groupDetail_18_pack: "app/admin/group/groupDetail",
- contestPassword_19_pack: "app/oj/contest/contestPassword",
- group_20_pack: "app/admin/group/group",
- submissionList_21_pack: "app/admin/contest/submissionList"
+ contestPassword_11_pack: "app/oj/contest/contestPassword",
+ changePassword_12_pack: "app/oj/account/changePassword",
+ monitor_13_pack: "app/admin/monitor/monitor",
+ editProblem_14_pack: "app/admin/contest/editProblem",
+ joinGroupRequestList_15_pack: "app/admin/group/joinGroupRequestList",
+ group_16_pack: "app/oj/group/group",
+ contestProblemList_17_pack: "app/admin/contest/contestProblemList",
+ editProblem_18_pack: "app/admin/problem/editProblem",
+ register_19_pack: "app/oj/account/register",
+ groupDetail_20_pack: "app/admin/group/groupDetail",
+ editContest_21_pack: "app/admin/contest/editContest",
+ group_22_pack: "app/admin/group/group",
},
shim: {
avalon: {
diff --git a/template/src/admin/contest/submission_list.html b/template/src/admin/contest/submission_list.html
deleted file mode 100644
index 1847408..0000000
--- a/template/src/admin/contest/submission_list.html
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
提交列表
-
- 刷新
-
-
-
-
- | ID |
- 创建时间 |
- 作者 |
- 结果 |
- |
-
-
- | {{ el.id }} |
- {{ el.create_time|date("yyyy-MM-dd HH:mm:ss")}} |
- {{ el.user }} |
- {{ results[el.result] }} |
-
- 详情
- |
-
-
-
- 页数:{{ page }}/{{ totalPage }}
-
-
-
-
-
\ No newline at end of file
From 90dc32590a9b4863ad42b62af60247891e18aa55 Mon Sep 17 00:00:00 2001
From: virusdefender <1670873886@qq.com>
Date: Fri, 30 Oct 2015 18:15:28 +0800
Subject: [PATCH 2/9] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=B2=A1=E6=9C=89?=
=?UTF-8?q?=E6=B8=85=E7=A9=BA=20vm=20=E5=AF=BC=E8=87=B4=E7=9A=84=E4=B8=8A?=
=?UTF-8?q?=E4=B8=AA=E9=A1=B5=E9=9D=A2=E6=95=B0=E6=8D=AE=E5=B8=A6=E5=88=B0?=
=?UTF-8?q?=E4=B8=8B=E4=B8=AA=E9=A1=B5=E9=9D=A2=E7=9A=84=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
static/src/js/app/admin/contest/addContest.js | 13 +++++++++++-
.../src/js/app/admin/contest/editContest.js | 1 +
.../src/js/app/admin/contest/editProblem.js | 21 +++++++++++++++----
static/src/js/app/admin/problem/addProblem.js | 16 +++++++++++++-
4 files changed, 45 insertions(+), 6 deletions(-)
diff --git a/static/src/js/app/admin/contest/addContest.js b/static/src/js/app/admin/contest/addContest.js
index 9cbd57d..cd4e1fd 100644
--- a/static/src/js/app/admin/contest/addContest.js
+++ b/static/src/js/app/admin/contest/addContest.js
@@ -61,8 +61,19 @@ require(["jquery", "avalon", "editor", "uploader", "bsAlert", "csrfToken", "date
});
//editor("#editor");
- if (avalon.vmodels.add_contest)
+ if (avalon.vmodels.add_contest) {
var vm = avalon.vmodels.add_contest;
+ vm.title = "";
+ vm.startTime = "";
+ vm.endTime = "";
+ vm.password = "";
+ vm.isGlobal = true;
+ vm.allGroups = [];
+ vm.showGlobalViewRadio = true;
+ vm.realTimeRank = true;
+ avalon.vmodels.contestDescriptionEditor.content = "";
+
+ }
else
var vm = avalon.define({
$id: "add_contest",
diff --git a/static/src/js/app/admin/contest/editContest.js b/static/src/js/app/admin/contest/editContest.js
index f34e261..67a027c 100644
--- a/static/src/js/app/admin/contest/editContest.js
+++ b/static/src/js/app/admin/contest/editContest.js
@@ -130,6 +130,7 @@ require(["jquery", "avalon", "editor", "uploader", "bsAlert", "csrfToken", "date
vm.realTimeRank = contest.real_time_rank;
vm.startTime = contest.start_time.substring(0, 16).replace("T", " ");
vm.endTime = contest.end_time.substring(0, 16).replace("T", " ");
+ vm.password = contest.password;
if (contest.contest_type == 0) { //contest_type == 0, 小组内比赛
vm.isGlobal = false;
for (var i = 0; i < vm.allGroups.length; i++) {
diff --git a/static/src/js/app/admin/contest/editProblem.js b/static/src/js/app/admin/contest/editProblem.js
index 31b2560..4fdb94f 100644
--- a/static/src/js/app/admin/contest/editProblem.js
+++ b/static/src/js/app/admin/contest/editProblem.js
@@ -49,7 +49,7 @@ require(["jquery", "avalon", "editor", "uploader", "bsAlert", "csrfToken", "tagE
ajaxData["id"] = avalon.vmodels.admin.problemId;
var alertContent = "题目编辑成功";
}
- else{
+ else {
var method = "post";
var alertContent = "题目创建成功";
}
@@ -134,6 +134,19 @@ require(["jquery", "avalon", "editor", "uploader", "bsAlert", "csrfToken", "tagE
});
else {
var vm = avalon.vmodels.editProblem;
+ title = "";
+ description = "";
+ timeLimit = 1000;
+ memoryLimit = 128;
+ samples = [];
+ hint = "";
+ sortIndex = "";
+ visible = true;
+ inputDescription = "";
+ outputDescription = "";
+ testCaseId = "";
+ testCaseList = [];
+ uploadSuccess = false;
}
var testCaseUploader = uploader("#testCaseFile", "/api/admin/test_case_upload/", function (file, response) {
@@ -142,7 +155,7 @@ require(["jquery", "avalon", "editor", "uploader", "bsAlert", "csrfToken", "tagE
else {
vm.testCaseId = response.data.test_case_id;
vm.testCaseList = [];
- for(var key in response.data.file_list){
+ for (var key in response.data.file_list) {
vm.testCaseList.push({
input: response.data.file_list[key].input_name,
output: response.data.file_list[key].output_name
@@ -189,8 +202,8 @@ require(["jquery", "avalon", "editor", "uploader", "bsAlert", "csrfToken", "tagE
url: "/api/admin/test_case_upload/?test_case_id=" + vm.testCaseId,
method: "get",
dataType: "json",
- success: function(response){
- if(response.code){
+ success: function (response) {
+ if (response.code) {
bsAlert(response.data);
}
else {
diff --git a/static/src/js/app/admin/problem/addProblem.js b/static/src/js/app/admin/problem/addProblem.js
index dc19f0b..e2f9e6f 100644
--- a/static/src/js/app/admin/problem/addProblem.js
+++ b/static/src/js/app/admin/problem/addProblem.js
@@ -79,6 +79,20 @@ require(["jquery", "avalon", "editor", "uploader", "bsAlert", "csrfToken", "tagE
if (avalon.vmodels.addProblem) {
var vm = avalon.vmodels.addProblem;
+ vm.title = "";
+ vm.timeLimit = 1000;
+ vm.memoryLimit = 128;
+ vm.samples = [{input: "", output: "", "visible": true}];
+ vm.visible = true;
+ vm.difficulty = "1";
+ vm.tags = [];
+ vm.inputDescription = "";
+ vm.outputDescription = "";
+ vm.testCaseId = "";
+ vm.testCaseList = [];
+ vm.uploadSuccess = false;
+ vm.source = "";
+ vm.uploadProgress = 0;
}
else
var vm = avalon.define({
@@ -135,7 +149,7 @@ require(["jquery", "avalon", "editor", "uploader", "bsAlert", "csrfToken", "tagE
vm.testCaseId = response.data.test_case_id;
vm.uploadSuccess = true;
vm.testCaseList = [];
- for(var key in response.data.file_list){
+ for (var key in response.data.file_list) {
vm.testCaseList.push({
input: response.data.file_list[key].input_name,
output: response.data.file_list[key].output_name
From 94a28c188a3f1a6dde4e48b187dae9df4883534d Mon Sep 17 00:00:00 2001
From: virusdefender <1670873886@qq.com>
Date: Fri, 30 Oct 2015 18:24:24 +0800
Subject: [PATCH 3/9] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=80=92=E8=AE=A1?=
=?UTF-8?q?=E6=97=B6=E6=96=87=E5=AD=97=E4=B8=AD=E8=8B=B1=E6=96=87=E6=B7=B7?=
=?UTF-8?q?=E5=90=88=E7=9A=84=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
static/src/js/lib/jcountdown/jcountdown.js | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/static/src/js/lib/jcountdown/jcountdown.js b/static/src/js/lib/jcountdown/jcountdown.js
index aa91f59..318f7b7 100644
--- a/static/src/js/lib/jcountdown/jcountdown.js
+++ b/static/src/js/lib/jcountdown/jcountdown.js
@@ -659,10 +659,10 @@
yearSingularText: 'year',
monthSingularText: 'month',
weekSingularText: 'week',
- daySingularText: 'day',
- hourSingularText: 'hour',
- minSingularText: 'min',
- secSingularText: 'sec',
+ daySingularText: '天',
+ hourSingularText: '小时',
+ minSingularText: '分钟',
+ secSingularText: '秒',
digits : [0,1,2,3,4,5,6,7,8,9],
isRTL: false,
minus: false,
From 8767adda25f04a16f5acd190e56fbbb116acd1b5 Mon Sep 17 00:00:00 2001
From: virusdefender <1670873886@qq.com>
Date: Fri, 30 Oct 2015 18:26:51 +0800
Subject: [PATCH 4/9] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=AF=94=E8=B5=9B?=
=?UTF-8?q?=E5=88=9B=E5=BB=BA=E5=AE=8C=E6=88=90=E5=90=8E=E7=9A=84=E6=8F=90?=
=?UTF-8?q?=E7=A4=BA=E6=96=87=E5=AD=97?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
static/src/js/app/admin/contest/addContest.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/static/src/js/app/admin/contest/addContest.js b/static/src/js/app/admin/contest/addContest.js
index cd4e1fd..e84f6b0 100644
--- a/static/src/js/app/admin/contest/addContest.js
+++ b/static/src/js/app/admin/contest/addContest.js
@@ -48,7 +48,7 @@ require(["jquery", "avalon", "editor", "uploader", "bsAlert", "csrfToken", "date
method: "post",
success: function (data) {
if (!data.code) {
- bsAlert("添加成功!将转到比赛列表页以便为比赛添加问题(注意比赛当前状态为:隐藏)");
+ bsAlert("添加成功!接下来下需要为比赛添加问题(注意比赛当前状态为:隐藏)");
location.hash = "#contest/contest_list";
}
else {
From 40f3abb7547850839758227c700bbbc405d3da8b Mon Sep 17 00:00:00 2001
From: esp
Date: Sun, 1 Nov 2015 14:41:28 +0800
Subject: [PATCH 5/9] =?UTF-8?q?update=20mq.py=20update=20mq.py=20=E6=AF=94?=
=?UTF-8?q?=E8=B5=9B=E9=A2=98=E7=9B=AE=E7=8A=B6=E6=80=81=E8=AE=BE=E7=BD=AE?=
=?UTF-8?q?=E9=94=99=E8=AF=AF=EF=BC=8C=E5=AF=BC=E8=87=B4=E6=B2=A1AC?=
=?UTF-8?q?=E7=9A=84=E9=A2=98=E7=9B=AE=E5=9C=A8=E9=A2=98=E7=9B=AE=E5=88=97?=
=?UTF-8?q?=E8=A1=A8=E9=87=8C=E4=B9=9F=E6=98=BE=E7=A4=BA=E4=B8=BA=E5=AF=B9?=
=?UTF-8?q?=E5=8B=BE=E4=BA=86=E3=80=82=20user.problem=5Fstatus?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
mq/scripts/mq.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/mq/scripts/mq.py b/mq/scripts/mq.py
index 7ba83fb..50e8b24 100644
--- a/mq/scripts/mq.py
+++ b/mq/scripts/mq.py
@@ -96,7 +96,7 @@ class MessageQueue(object):
contest_problem.add_ac_number()
problems_status["contest_problems"][str(contest_problem.id)] = 1
else:
- problems_status["contest_problems"][str(contest_problem.id)] = 1
+ problems_status["contest_problems"][str(contest_problem.id)] = 0
user.problems_status = problems_status
user.save()
From 6b263db3ba342237e821a1bdf53daf41d23ef406 Mon Sep 17 00:00:00 2001
From: sxw
Date: Mon, 2 Nov 2015 19:08:10 +0800
Subject: [PATCH 6/9] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=BC=96=E8=BE=91?=
=?UTF-8?q?=E9=97=AE=E9=A2=98=E9=A1=B5=E9=9D=A2=E6=A0=B7=E4=BE=8B=E6=B7=B7?=
=?UTF-8?q?=E4=B9=B1=E7=9A=84=E9=97=AE=E9=A2=98=EF=BC=8C=E5=8A=A0=E8=BD=BD?=
=?UTF-8?q?=E6=96=B0=E9=97=AE=E9=A2=98=E4=B8=8D=E4=BC=9A=E5=88=A0=E9=99=A4?=
=?UTF-8?q?=E4=B8=8A=E4=B8=80=E6=AC=A1=E7=BC=96=E8=BE=91=E9=97=AE=E9=A2=98?=
=?UTF-8?q?=E7=9A=84=E8=80=81=E6=A0=B7=E4=BE=8B[CI=20SKIP]?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
static/src/js/app/admin/problem/editProblem.js | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/static/src/js/app/admin/problem/editProblem.js b/static/src/js/app/admin/problem/editProblem.js
index 4b936e0..5409149 100644
--- a/static/src/js/app/admin/problem/editProblem.js
+++ b/static/src/js/app/admin/problem/editProblem.js
@@ -147,7 +147,7 @@ require(["jquery", "avalon", "editor", "uploader", "bsAlert", "csrfToken", "tagE
}
},
function (file, percentage) {
- vm.uploadProgress = percentage;
+ vm.uploadProgress = parseInt(percentage * 100);
}
);
@@ -165,6 +165,7 @@ require(["jquery", "avalon", "editor", "uploader", "bsAlert", "csrfToken", "tagE
avalon.vmodels.problemDescriptionEditor.content = problem.description;
vm.timeLimit = problem.time_limit;
vm.memoryLimit = problem.memory_limit;
+ vm.samples = [];
for (var i = 0; i < problem.samples.length; i++) {
vm.samples.push({
input: problem.samples[i].input,
From 06f83663ffc11f6032126f8af43b589637b5a6c6 Mon Sep 17 00:00:00 2001
From: virusdefender <1670873886@qq.com>
Date: Mon, 2 Nov 2015 20:48:11 +0800
Subject: [PATCH 7/9] =?UTF-8?q?=E5=B0=86=E6=8F=90=E4=BA=A4=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81=E7=9A=84=E9=99=90=E5=88=B6=E4=BF=AE=E6=94=B9=E4=B8=BA?=
=?UTF-8?q?20000=E5=AD=97=E7=AC=A6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
submission/serializers.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/submission/serializers.py b/submission/serializers.py
index dcaf701..a0bc109 100644
--- a/submission/serializers.py
+++ b/submission/serializers.py
@@ -8,7 +8,7 @@ from .models import Submission
class CreateSubmissionSerializer(serializers.Serializer):
problem_id = serializers.IntegerField()
language = serializers.IntegerField()
- code = serializers.CharField(max_length=3000)
+ code = serializers.CharField(max_length=20000)
class SubmissionSerializer(serializers.ModelSerializer):
@@ -34,6 +34,6 @@ class CreateContestSubmissionSerializer(serializers.Serializer):
contest_id = serializers.IntegerField()
problem_id = serializers.IntegerField()
language = serializers.IntegerField()
- code = serializers.CharField(max_length=3000)
+ code = serializers.CharField(max_length=20000)
From 2868356048625359ede21e1da5c9de7c95207fa4 Mon Sep 17 00:00:00 2001
From: virusdefender <1670873886@qq.com>
Date: Mon, 2 Nov 2015 21:03:16 +0800
Subject: [PATCH 8/9] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=AF=94=E8=B5=9B?=
=?UTF-8?q?=E5=B7=B2=E7=BB=8F=E7=BB=93=E6=9D=9F=E8=BF=98=E8=83=BD=E6=8F=90?=
=?UTF-8?q?=E4=BA=A4=E9=A2=98=E7=9B=AE=E7=9A=84=20bug?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
contest/decorators.py | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/contest/decorators.py b/contest/decorators.py
index 2f5e3ba..93e24fa 100644
--- a/contest/decorators.py
+++ b/contest/decorators.py
@@ -91,6 +91,10 @@ def check_user_contest_permission(func):
return render(request, "oj/contest/no_contest_permission.html",
{"reason": "contest_not_start", "show_tab": False, "contest": contest})
+ # 比赛已经结束了,只拦截 ajax 的答案提交
+ if contest.status == CONTEST_ENDED and request.is_ajax():
+ return error_response(u"比赛已经结束")
+
return func(*args, **kwargs)
return _check_user_contest_permission
From 5a422ec28aa00093d2c08246a11a6a9735c4bfa9 Mon Sep 17 00:00:00 2001
From: virusdefender <1670873886@qq.com>
Date: Mon, 2 Nov 2015 21:03:30 +0800
Subject: [PATCH 9/9] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=B2=A1=E7=94=A8?=
=?UTF-8?q?=E7=9A=84api?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
oj/urls.py | 5 +----
submission/views.py | 21 ---------------------
2 files changed, 1 insertion(+), 25 deletions(-)
diff --git a/oj/urls.py b/oj/urls.py
index 53283fe..c4d2e09 100644
--- a/oj/urls.py
+++ b/oj/urls.py
@@ -21,8 +21,7 @@ from admin.views import AdminTemplateView
from problem.views import TestCaseUploadAPIView, ProblemTagAdminAPIView, ProblemAdminAPIView
from submission.views import (SubmissionAPIView, SubmissionAdminAPIView, ContestSubmissionAPIView,
- SubmissionShareAPIView, SubmissionRejudgeAdminAPIView,
- ContestSubmissionAdminAPIView)
+ SubmissionShareAPIView, SubmissionRejudgeAdminAPIView)
from monitor.views import QueueLengthMonitorAPIView
from utils.views import SimditorImageUploadAPIView
@@ -73,8 +72,6 @@ urlpatterns = [
name="join_group_request_admin_api"),
url(r'^api/admin/submission/$', SubmissionAdminAPIView.as_view(), name="submission_admin_api_view"),
url(r'^api/admin/monitor/$', QueueLengthMonitorAPIView.as_view(), name="queue_length_monitor_api"),
- url(r'^api/admin/contest_submission/$', ContestSubmissionAdminAPIView.as_view(), name="contest_submission_admin_api_view"),
-
url(r'^contest/(?P\d+)/problem/(?P\d+)/$', "contest.views.contest_problem_page",
name="contest_problem_page"),
diff --git a/submission/views.py b/submission/views.py
index e9eaa44..1f2acb1 100644
--- a/submission/views.py
+++ b/submission/views.py
@@ -286,24 +286,3 @@ class SubmissionRejudgeAdminAPIView(APIView):
return success_response(u"任务提交成功")
else:
return serializer_invalid_response(serializer)
-
-
-class ContestSubmissionAdminAPIView(APIView):
- @check_user_contest_permission
- def get(self, request):
- """
- 查询比赛提交,单个比赛题目提交的adminAPI
- ---
- response_serializer: SubmissionSerializer
- """
- problem_id = request.GET.get("problem_id", None)
- contest_id = request.GET.get("contest_id", None)
-
- # 需要 problem_id 和 contest_id 两个参数 否则会在check_user_contest_permission 的时候被拦截
- if problem_id:
- submissions = Submission.objects.filter(contest_id=contest_id, problem_id=problem_id).order_by("-create_time")
- # 需要 contest_id 参数
- else:
- submissions = Submission.objects.filter(contest_id=contest_id).order_by("-create_time")
-
- return paginate(request, submissions, SubmissionSerializer)