|
|
@ -18,21 +18,8 @@ |
|
|
|
<td>#<%= judge.id %></td> |
|
|
|
<td>#<%= judge.id %></td> |
|
|
|
<td><a href="<%= syzoj.utils.makeUrl(['problem', judge.problem_id]) %>">#<%= judge.problem_id %>. <%= judge.problem.title %></a></td> |
|
|
|
<td><a href="<%= syzoj.utils.makeUrl(['problem', judge.problem_id]) %>">#<%= judge.problem_id %>. <%= judge.problem.title %></a></td> |
|
|
|
<% if (judge.allowedSeeResult) { %> |
|
|
|
<% if (judge.allowedSeeResult) { %> |
|
|
|
<td class="status <%= judge.result.status.toLowerCase().split(' ').join('_') %>"> |
|
|
|
<td class="status <%= getStatusMeta(judge.result.status).toLowerCase().split(' ').join('_') %>"> |
|
|
|
<% |
|
|
|
<i class="<%= icon[getStatusMeta(judge.status)] || 'remove' %> icon"></i> |
|
|
|
let icon = { |
|
|
|
|
|
|
|
'Accepted': 'checkmark', |
|
|
|
|
|
|
|
'Wrong Answer': 'remove', |
|
|
|
|
|
|
|
'Runtime Error': 'bomb', |
|
|
|
|
|
|
|
'Time Limit Exceed': 'clock', |
|
|
|
|
|
|
|
'Memory Limit Exceed': 'disk outline', |
|
|
|
|
|
|
|
'Output Limit Exceed': 'expand', |
|
|
|
|
|
|
|
'Waiting': 'spinner', |
|
|
|
|
|
|
|
'Compile Error': 'code', |
|
|
|
|
|
|
|
'System Error': 'server' |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
%> |
|
|
|
|
|
|
|
<i class="<%= icon[judge.status] || 'remove' %> icon"></i> |
|
|
|
|
|
|
|
<%= judge.result.status %> |
|
|
|
<%= judge.result.status %> |
|
|
|
</td> |
|
|
|
</td> |
|
|
|
<td class="score score_<%= parseInt(judge.result.score / 10) || 0 %>"><%= judge.result.score %></td> |
|
|
|
<td class="score score_<%= parseInt(judge.result.score / 10) || 0 %>"><%= judge.result.score %></td> |
|
|
@ -56,30 +43,34 @@ |
|
|
|
<% } else if (judge.allowedSeeResult) { %> |
|
|
|
<% } else if (judge.allowedSeeResult) { %> |
|
|
|
<div class="ui styled fluid accordion"> |
|
|
|
<div class="ui styled fluid accordion"> |
|
|
|
<% for (let i = 0; i < judge.result.case_num; i++) { %> |
|
|
|
<% for (let i = 0; i < judge.result.case_num; i++) { %> |
|
|
|
<% let testcase = judge.result[i]; %> |
|
|
|
|
|
|
|
<div class="title"> |
|
|
|
|
|
|
|
<div class="ui grid"> |
|
|
|
|
|
|
|
<div class="three wide column"><i class="dropdown icon"></i>测试点 #<%= i + 1 %></div> |
|
|
|
|
|
|
|
<div class="four wide column status status_detail <%= testcase.status.toLowerCase().split(' ').join('_') %>"> |
|
|
|
|
|
|
|
<% |
|
|
|
<% |
|
|
|
let icon = { |
|
|
|
let testcase = judge.result[i], pending = false; |
|
|
|
'Accepted': 'checkmark', |
|
|
|
if (!testcase) { |
|
|
|
'Wrong Answer': 'remove', |
|
|
|
pending = true; |
|
|
|
'Runtime Error': 'bomb', |
|
|
|
if (i == 0 || judge.result[i - 1]) { |
|
|
|
'Time Limit Exceed': 'clock', |
|
|
|
testcase = { |
|
|
|
'Memory Limit Exceed': 'disk outline', |
|
|
|
status: 'Running' |
|
|
|
'Output Limit Exceed': 'expand', |
|
|
|
}; |
|
|
|
'Waiting': 'spinner', |
|
|
|
} else { |
|
|
|
'Compile Error': 'code', |
|
|
|
testcase = { |
|
|
|
'System Error': 'server' |
|
|
|
status: 'Waiting' |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
%> |
|
|
|
%> |
|
|
|
<i class="<%= icon[testcase.status] || 'remove' %> icon"></i> |
|
|
|
<div class="title<% if (pending) { %> pending<% } %>"<% if (pending) { %> style="cursor: auto; "<% } %>> |
|
|
|
|
|
|
|
<div class="ui grid"> |
|
|
|
|
|
|
|
<div class="three wide column"><i class="dropdown icon"></i>测试点 #<%= i + 1 %></div> |
|
|
|
|
|
|
|
<div class="four wide column status status_detail <%= getStatusMeta(testcase.status).toLowerCase().split(' ').join('_') %>"> |
|
|
|
|
|
|
|
<i class="<%= icon[getStatusMeta(testcase.status)] || 'remove' %> icon"></i> |
|
|
|
<%= testcase.status %></div> |
|
|
|
<%= testcase.status %></div> |
|
|
|
|
|
|
|
<% if (!pending) { %> |
|
|
|
<div class="four wide column">用时:<span style="font-weight: normal; "><%= testcase.time_used %> ms</span></div> |
|
|
|
<div class="four wide column">用时:<span style="font-weight: normal; "><%= testcase.time_used %> ms</span></div> |
|
|
|
<div class="four wide column">内存:<span style="font-weight: normal; "><%= testcase.memory_used %> KiB</span></div> |
|
|
|
<div class="four wide column">内存:<span style="font-weight: normal; "><%= testcase.memory_used %> KiB</span></div> |
|
|
|
|
|
|
|
<% } %> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
<% if (!pending) { %> |
|
|
|
<div class="content"> |
|
|
|
<div class="content"> |
|
|
|
<p> |
|
|
|
<p> |
|
|
|
<strong>输入文件</strong> |
|
|
|
<strong>输入文件</strong> |
|
|
@ -91,12 +82,17 @@ |
|
|
|
</p> |
|
|
|
</p> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<% } %> |
|
|
|
<% } %> |
|
|
|
|
|
|
|
<% } %> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<% } %> |
|
|
|
<% } %> |
|
|
|
|
|
|
|
|
|
|
|
<script> |
|
|
|
<script> |
|
|
|
$(function() { |
|
|
|
$(function() { |
|
|
|
$('.ui.accordion').accordion(); |
|
|
|
$('.ui.accordion').accordion({ |
|
|
|
|
|
|
|
selector: { |
|
|
|
|
|
|
|
trigger: '.title:not(.pending)' |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}); |
|
|
|
}); |
|
|
|
}); |
|
|
|
</script> |
|
|
|
</script> |
|
|
|
<% include footer %> |
|
|
|
<% include footer %> |
|
|
|