mirror of
https://github.com/QingdaoU/OnlineJudge.git
synced 2025-11-04 14:49:58 +08:00
84 lines
2.8 KiB
JavaScript
84 lines
2.8 KiB
JavaScript
require(["jquery", "avalon", "csrfToken", "bsAlert"], function ($, avalon, csrfTokenHeader, bsAlert) {
|
|
|
|
avalon.ready(function () {
|
|
|
|
if (avalon.vmodels.contestSubmissionList){
|
|
var vm = avalon.vmodels.contestSubmissionList;
|
|
}
|
|
else {
|
|
|
|
var vm = avalon.define({
|
|
$id: "contestSubmissionList",
|
|
submissionList: [],
|
|
previousPage: 0,
|
|
nextPage: 0,
|
|
page: 1,
|
|
totalPage: 1,
|
|
results : {
|
|
0: "Accepted",
|
|
1: "Runtime Error",
|
|
2: "Time Limit Exceeded",
|
|
3: "Memory Limit Exceeded",
|
|
4: "Compile Error",
|
|
5: "Format Error",
|
|
6: "Wrong Answer",
|
|
7: "System Error",
|
|
8: "Waiting"
|
|
},
|
|
getNext: function () {
|
|
if (!vm.nextPage)
|
|
return;
|
|
getPageData(vm.page + 1);
|
|
},
|
|
getPrevious: function () {
|
|
if (!vm.previousPage)
|
|
return;
|
|
getPageData(vm.page - 1);
|
|
},
|
|
getBtnClass: function (btn) {
|
|
if (btn == "next") {
|
|
return vm.nextPage ? "btn btn-primary" : "btn btn-primary disabled";
|
|
}
|
|
else {
|
|
return vm.previousPage ? "btn btn-primary" : "btn btn-primary disabled";
|
|
}
|
|
},
|
|
getPage: function (page_index) {
|
|
getPageData(page_index);
|
|
},
|
|
showSubmissionDetailPage: function (submissionId) {
|
|
|
|
},
|
|
showProblemListPage: function(){
|
|
vm.$fire("up!showProblemListPage");
|
|
}
|
|
});
|
|
}
|
|
|
|
getPageData(1);
|
|
|
|
function getPageData(page) {
|
|
var url = "/api/admin/submission/?paging=true&page=" + page + "&page_size=10&problem_id=" + avalon.vmodels.admin.problemId;
|
|
$.ajax({
|
|
url: url,
|
|
dataType: "json",
|
|
method: "get",
|
|
success: function (data) {
|
|
if (!data.code) {
|
|
vm.submissionList = data.data.results;
|
|
vm.totalPage = data.data.total_page;
|
|
vm.previousPage = data.data.previous_page;
|
|
vm.nextPage = data.data.next_page;
|
|
vm.page = page;
|
|
}
|
|
else {
|
|
bsAlert(data.data);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
|
|
});
|
|
avalon.scan();
|
|
}); |