Subversion Repositories SmartDukaan

Rev

Rev 36352 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 36352 Rev 36358
Line 85... Line 85...
85
        }
85
        }
86
        if (text != null) e.textContent = String(text);
86
        if (text != null) e.textContent = String(text);
87
        return e;
87
        return e;
88
    }
88
    }
89
    function fmtTime(s) {
89
    function fmtTime(s) {
90
        if (!s) return '—';
90
        if (!s) return '-';
91
        var t = String(s).replace('T', ' ');
91
        var t = String(s).replace('T', ' ');
92
        return t.length > 19 ? t.substring(0, 19) : t;
92
        return t.length > 19 ? t.substring(0, 19) : t;
93
    }
93
    }
94
    function mutedSpan(text) {
94
    function mutedSpan(text) {
95
        return el('span', {class: 'muted'}, text);
95
        return el('span', {class: 'muted'}, text);
96
    }
96
    }
97
    function timeCell(s) {
97
    function timeCell(s) {
98
        var td = el('td');
98
        var td = el('td');
99
        if (!s) td.appendChild(mutedSpan('—'));
99
        if (!s) td.appendChild(mutedSpan('-'));
100
        else td.textContent = fmtTime(s);
100
        else td.textContent = fmtTime(s);
101
        return td;
101
        return td;
102
    }
102
    }
103
    function batchStatusBadge(s) {
103
    function batchStatusBadge(s) {
104
        var cls = 'badge badge-muted';
104
        var cls = 'badge badge-muted';
105
        var label = s || '—';
105
        var label = s || '-';
106
        if (s === 'COMPLETED') cls = 'badge badge-completed';
106
        if (s === 'COMPLETED') cls = 'badge badge-completed';
107
        else if (s === 'PARTIAL_FAILURE') cls = 'badge badge-partial';
107
        else if (s === 'PARTIAL_FAILURE') cls = 'badge badge-partial';
108
        else if (s === 'IN_PROGRESS') cls = 'badge badge-inprogress';
108
        else if (s === 'IN_PROGRESS') cls = 'badge badge-inprogress';
109
        else if (s === 'FAILED') cls = 'badge badge-failed';
109
        else if (s === 'FAILED') cls = 'badge badge-failed';
110
        return el('span', {class: cls}, label);
110
        return el('span', {class: cls}, label);
111
    }
111
    }
112
    function itemStatusBadge(s) {
112
    function itemStatusBadge(s) {
113
        var cls = 'badge badge-muted';
113
        var cls = 'badge badge-muted';
114
        var label = s || '—';
114
        var label = s || '-';
115
        if (s === 'SUCCESS') cls = 'badge badge-completed';
115
        if (s === 'SUCCESS') cls = 'badge badge-completed';
116
        else if (s === 'FAILED') cls = 'badge badge-failed';
116
        else if (s === 'FAILED') cls = 'badge badge-failed';
117
        else if (s === 'PENDING') cls = 'badge badge-partial';
117
        else if (s === 'PENDING') cls = 'badge badge-partial';
118
        return el('span', {class: cls}, label);
118
        return el('span', {class: cls}, label);
119
    }
119
    }
Line 223... Line 223...
223
        table.appendChild(tbody);
223
        table.appendChild(tbody);
224
        modalBody.appendChild(table);
224
        modalBody.appendChild(table);
225
    }
225
    }
226
 
226
 
227
    function openBatch(batchId, jobName) {
227
    function openBatch(batchId, jobName) {
228
        modalTitle.textContent = 'Batch #' + batchId + (jobName ? ' · ' + jobName : '');
228
        modalTitle.textContent = 'Batch #' + batchId + (jobName ? ' | ' + jobName : '');
229
        clear(modalBody);
229
        clear(modalBody);
230
        modalBody.appendChild(el('div', {class: 'empty'}, 'Loading items...'));
230
        modalBody.appendChild(el('div', {class: 'empty'}, 'Loading items...'));
231
        modal.classList.add('open');
231
        modal.classList.add('open');
232
        fetch('/admin/cron-batches/' + batchId + '/items', {credentials: 'same-origin'})
232
        fetch('/admin/cron-batches/' + batchId + '/items', {credentials: 'same-origin'})
233
            .then(function (r) { return r.json(); })
233
            .then(function (r) { return r.json(); })