'<td><a class="tic-job-list-btn btndownload <%= classJobImageDownload %>" href="<%= jobImagePath %>" title="<%= jobImageName %>">Download</a></td>',
'<td><%= jobImageSize %></td>',
'<td><%= jobUptime %></td>',
- '<td><a class="tic-job-list-btn btncancel <%= classJobCancel %>" title="Cancel">Cancel</a></td>',
+ '<td><a class="tic-job-list-btn btncancel <%= classJobCancel %>" data-jobid="<%= jobNum %>" data-jobpid="<%= jobPid %>" data-jobstatus="<%= jobStatusValue %>" title="Cancel">Cancel</a></td>',
'<td><a class="tic-job-list-btn <%= classJobKsPath %>" href="<%= jobKsPath %>" title="Kickstarter File">KS</a></td>',
'<td><a class="tic-job-list-btn btnbiglog" data-link="<%= jobLogPath %>" data-jobid="<%= jobNum %>" title="Log">Log</a></td>',
'</tr>'
'<td><a class="tic-job-list-btn btndownload btnnotactive">Download</a></td>',
'<td><%= jobImageSize %></td>',
'<td><%= jobUptime %></td>',
- '<td><a class="tic-job-list-btn btncancel <%= classJobCancel %>" data-jobid="<%= jobNum %>" title="Cancel">Cancel</a></td>',
+ '<td><a class="tic-job-list-btn btncancel <%= classJobCancel %>" data-jobid="<%= jobNum %>" data-jobpid="<%= jobPid %>" data-jobstatus="<%= jobStatusValue %>" title="Cancel">Cancel</a></td>',
'<td><a class="tic-job-list-btn <%= classJobKsPath %>" href="<%= jobKsPath %>" title="Kickstarter File">KS</a></td>',
'<td><a class="tic-job-list-btn btnbiglog btnbiglogex" data-link="<%= jobLogPath %>" data-jobid="<%= jobNum %>" title="Log">Log</a></td>',
'</tr>',
];
var JOB_STATUS_INPROGRESS = 'INPROGRESS';
+ var JOB_STATUS_READY = 'READY';
var JOB_STATUS_DONE = 'DONE';
var USER_GROUP_ADMIN = 'ADMIN';
var USER_GROUP_MASTER = 'MASTER';
userGroup = data.getJobUserGroup();
cssCancelbtn = '';
if (userGroup === USER_GROUP_ADMIN || userGroup === USER_GROUP_MASTER) {
- if (statusValue !== JOB_STATUS_INPROGRESS) {
+ // only when 'READY' or 'INPROGRESS', can cancel the job.
+ if (!(statusValue === JOB_STATUS_INPROGRESS || statusValue === JOB_STATUS_READY)) {
cssCancelbtn = 'btnnotactive';
}
} else {
'jobImageName': data.getJobImageName(),
'jobImageSize': data.getJobImageSize(),
'jobImagePath': data.getJobAbsImagePath(),
+ 'jobPid': data.getJobPid(),
+ 'jobStatusValue': data.getJobStatus(),
'classJobImageDownload': data.getJobStatus() === JOB_STATUS_DONE ? '' : 'btnnotactive',
'classJobCancel': getCssCancelbtn() ,
'classJobKsPath': data.getJobHasKsFile() === '0' ? 'btnnotactive' : '',
'jobImageName': data.getJobImageName(),
'jobImageSize': data.getJobImageSize(),
'jobImagePath': data.getJobAbsImagePath(),
+ 'jobPid': data.getJobPid(),
+ 'jobStatusValue': data.getJobStatus(),
'classJobCancel': getCssCancelbtn() ,
'classJobKsPath': data.getJobHasKsFile() === '0' ? 'btnnotactive' : '',
'jobKsPath': data.getJobAbsKsPath(),