$(document).off('click', '#showTask').on('click', '#showTask', function() { const show = $(this).is(':checked') ? 1 : 0; $.cookie.set('showTask', show, {expires:config.cookieLife, path:config.webRoot}); reloadPage(); }); $(document).off('click', '#showStage').on('click', '#showStage', function() { const show = $(this).is(':checked') ? 1 : 0; $.cookie.set('showStage', show, {expires:config.cookieLife, path:config.webRoot}); reloadPage(); }); $(document).off('click','.batch-btn').on('click', '.batch-btn', function() { const dtable = zui.DTable.query($(this).target); const checkedList = dtable.$.getChecks(); if(!checkedList.length) return; const url = $(this).data('url'); const form = new FormData(); checkedList.forEach((id) => form.append('executionIDList[]', id.replace("pid", ''))); if($(this).hasClass('ajax-btn')) { $.ajaxSubmit({url, data:form}); } else { postAndLoadPage(url, form); } }); const today = zui.formatDate(new Date(), 'yyyy-MM-dd'); window.onRenderCell = function(result, {col, row}) { if(col.name == 'nameCol') { const executionLink = $.createLink('execution', 'task', `executionID=${row.data.rawID}`); const executionType = typeList[row.data.type]; let executionName = ''; if(typeof executionType != 'undefined') executionName += `${executionType} `; executionName += '
'; executionName += (executionType !== undefined && !row.data.isParent) ? `${row.data.name}` : row.data.name; executionName += '
'; executionName += (row.data.end != '' && today > row.data.end) ? `${delayed}` : ''; result.push({html: executionName, className: 'w-full flex items-center'}); return result; } if(col.name == 'rawID' && row.data.parent && !row.data.isExecution) result[0] = ''; if(['estimate', 'consumed', 'left'].includes(col.name) && result) result[0] = row.data.type == 'point' ? '' : {html: result[0] + ' h'}; if(col.name == 'progress' && row.data.type == 'point') result[0] = ''; return result; } window.footerSummary = function(element, checkedIdList) { const rows = element.layout.rows; var totalCount = 0; var waitCount = 0; var doingCount = 0; rows.forEach(function(data) { if(data.id.indexOf('tid') > -1) return; if(checkedIdList.length > 0 && checkedIdList.indexOf(data.id) > -1) { if(data.data.status == 'wait') waitCount ++; if(data.data.status == 'doing') doingCount ++; totalCount ++; } else if(checkedIdList.length == 0) { if(data.data.status == 'wait') waitCount ++; if(data.data.status == 'doing') doingCount ++; totalCount ++; } }); return {html: (checkedIdList.length > 0 ? checkedExecSummary : pageExecSummary).replace('%total%', totalCount).replace('%wait%', waitCount).replace('%doing%', doingCount)}; };