Browse Source

Merge branch 'master' of zhaojunzhe/fair-web into master

pull/31/head
richie 5 years ago committed by Gogs
parent
commit
04cf07fb2d
  1. 45
      views/submission.ejs

45
views/submission.ejs

@ -28,6 +28,9 @@
.accordion > .content > .accordion > .content > :last-child { .accordion > .content > .accordion > .content > :last-child {
margin-bottom: -10px !important; margin-bottom: -10px !important;
} }
.disabled{
display: none;
}
</style> </style>
<span id="submission_content"> <span id="submission_content">
<div class="padding" id="vueAppFuckSafari"> <div class="padding" id="vueAppFuckSafari">
@ -52,7 +55,8 @@
<tr is="submission-item" v-bind:data="roughData" :config="displayConfig" :show-rejudge="showRejudge" :show-share="showShare" :progress="getProgress()" :compiling="detailResult && !detailResult.compile"></tr> <tr is="submission-item" v-bind:data="roughData" :config="displayConfig" :show-rejudge="showRejudge" :show-share="showShare" :progress="getProgress()" :compiling="detailResult && !detailResult.compile"></tr>
</tbody> </tbody>
</table> </table>
<div id="cid" class="disabled"><%= cid %></div>
<div id="pid" class="disabled"><%= pid %></div>
<code-box no-escape v-bind:content="code"> <code-box no-escape v-bind:content="code">
<% if (formattedCode !== null) { %> <% if (formattedCode !== null) { %>
<a onclick="toggleFormattedCode()" class="ui button" style="position: absolute; top: 0px; right: -4px; border-top-left-radius: 0; border-bottom-right-radius: 0; "> <a onclick="toggleFormattedCode()" class="ui button" style="position: absolute; top: 0px; right: -4px; border-top-left-radius: 0; border-bottom-right-radius: 0; ">
@ -311,11 +315,10 @@ const vueApp = new Vue({
$('.ui.accordion').off().accordion({ selector: { trigger: '.title:not(.unexpandable)' } }); $('.ui.accordion').off().accordion({ selector: { trigger: '.title:not(.unexpandable)' } });
} }
}); });
console.log(token);
if (token != null) { if (token != null) {
const loadSocketIO = function () { const loadSocketIO = function () {
const cid = <%= cid%>; const cid = parseInt(document.getElementById('cid').innerHTML);
const pid = <%= pid%>; const pid = parseInt(document.getElementById('pid').innerHTML);
let currentVersion = 0; let currentVersion = 0;
const socket = io(socketUrl); const socket = io(socketUrl);
socket.on('connect', function () { socket.on('connect', function () {
@ -342,7 +345,7 @@ if (token != null) {
vueApp.roughData.result = p.roughResult; vueApp.roughData.result = p.roughResult;
if (p.roughResult.result === 'Accepted') { if (p.roughResult.result === 'Accepted') {
$.ajax({ $.ajax({
url: `/api/practice/pass/${cid}/${pid}`, url: `/api/pass/${cid}/${pid}`,
type: 'GET', type: 'GET',
success: function (data) { success: function (data) {
}, },
@ -352,7 +355,7 @@ if (token != null) {
}); });
} else { } else {
$.ajax({ $.ajax({
url: `/api/practice/nopass/${cid}/${pid}`, url: `/api/nopass/${cid}/${pid}`,
type: 'GET', type: 'GET',
success: function (data) { success: function (data) {
}, },
@ -366,12 +369,42 @@ if (token != null) {
}); });
socket.emit('join', token, function (data) { socket.emit('join', token, function (data) {
console.log("join! ", data); console.log("join! ", data);
// data.ok=true;
// data.finished=true;
// data.roughResult = {
// memory: 7128,
// result: "Accepted",
// score: 100,
// time: 272,
// }
// data.running=false;
if (data && data.ok) { if (data && data.ok) {
if (data.finished) { if (data.finished) {
vueApp.roughData.result = data.roughResult; vueApp.roughData.result = data.roughResult;
// if (!data.result) location.reload(true); // if (!data.result) location.reload(true);
vueApp.detailResult = data.result; vueApp.detailResult = data.result;
vueApp.roughData.running = false; vueApp.roughData.running = false;
// if (data.roughResult.result === 'Accepted') {
// $.ajax({
// url: `/api/pass/${cid}/${pid}`,
// type: 'GET',
// success: function (data) {
// },
// error: function (XMLHttpRequest, textStatus, errorThrown) {
// alert('练习功能发生故障');
// }
// });
// } else {
// $.ajax({
// url: `/api/nopass/${cid}/${pid}`,
// type: 'GET',
// success: function (data) {
// },
// error: function (XMLHttpRequest, textStatus, errorThrown) {
// alert('练习功能发生故障');
// }
// });
// }
socket.close(); socket.close();
} else { } else {
if (data.running) { if (data.running) {

Loading…
Cancel
Save