window.footerGenerator = function() { const count = this.layout.allRows.filter((x) => x.data.type === "product").length; const statistic = summeryTpl.replace('%s', ' ' + count + ' '); return ['checkbox', 'toolbar', {html: statistic, className: "text-dark"}, "flex", "pager"]; } window.renderCell = function(result, {col, row}) { if(col.name === 'name') { if(row.data.postponed) result[result.length] = {html:'' + row.data.delayInfo + '', className:'flex items-end w-full', style:{flexDirection:"column"}}; return result; } if(col.name === 'budget' && typeof(row.data.exceedBudget) != 'undefined') { let iconSign = ' '; let menu = '