diff --git a/application/views/lehre/lehrauftrag/approveLehrauftrag.php b/application/views/lehre/lehrauftrag/approveLehrauftrag.php index 504728bcc..350cd406a 100644 --- a/application/views/lehre/lehrauftrag/approveLehrauftrag.php +++ b/application/views/lehre/lehrauftrag/approveLehrauftrag.php @@ -105,6 +105,7 @@ $this->load->view( + @@ -157,17 +158,25 @@ $this->load->view( // Formats the rows function func_rowFormatter(row){ + var is_dummy = (row.getData().personalnummer <= 0 && row.getData().personalnummer != null); + var bestellt = row.getData().bestellt; var betrag = parseFloat(row.getData().betrag); var vertrag_betrag = parseFloat(row.getData().vertrag_betrag); /* Formats the color of the rows depending on their status - - default (white): bestellte + - blue: dummy lectors + - bold: geaendert + - default (white) : bestellte - green: akzeptiert - grey: all other (marks unselectable) */ row.getCells().forEach(function(cell){ - if (bestellt != null && (betrag != vertrag_betrag) && !row._row.element.classList.contains('tabulator-calcs')) // exclude calculation rows + if(is_dummy) + { + cell.getElement().classList.add('bg-info'); // dummy lectors + } + else if (bestellt != null && (betrag != vertrag_betrag) && !row._row.element.classList.contains('tabulator-calcs')) // exclude calculation rows { row._row.getElement().style['font-weight'] = 'bold'; } @@ -188,11 +197,14 @@ $this->load->view( // Formats row selectable/unselectable function func_selectableCheck(row){ - var betrag = parseFloat(row.getData().betrag); - var vertrag_betrag = parseFloat(row.getData().vertrag_betrag); + var is_dummy = (row.getData().personalnummer <= 0 && row.getData().personalnummer != null); + + var betrag = row.getData().betrag; + var vertrag_betrag = row.getData().vertrag_betrag; // only allow to select bestellte Lehraufträge - return row.getData().bestellt != null && // nicht neue + return !is_dummy && // NOT dummy lector + row.getData().bestellt != null && // AND NOT neue row.getData().erteilt == null && // AND bestellt betrag == vertrag_betrag; // AND nicht geändert } @@ -264,6 +276,7 @@ $this->load->view( // ----------------------------------------------------------------------------------------------------------------- // Generates status icons status_formatter = function(cell, formatterParams, onRendered){ + var is_dummy = (cell.getRow().getData().personalnummer <= 0 && cell.getRow().getData().personalnummer != null); var bestellt = cell.getRow().getData().bestellt; var erteilt = cell.getRow().getData().erteilt; @@ -273,7 +286,11 @@ $this->load->view( var vertrag_betrag = parseFloat(cell.getRow().getData().vertrag_betrag); // commented icons would be so nice to have with fontawsome 5.11... - if (bestellt != null && (betrag != vertrag_betrag)) + if (is_dummy) + { + return ""; // dummy lector + } + else if (bestellt != null && (betrag != vertrag_betrag)) { return ""; // geaendert // return ""; // geaendert @@ -305,6 +322,8 @@ $this->load->view( // Generates status tooltip status_tooltip = function(cell){ + var is_dummy = (cell.getRow().getData().personalnummer <= 0 && cell.getRow().getData().personalnummer != null); + var bestellt = cell.getRow().getData().bestellt; var erteilt = cell.getRow().getData().erteilt; var akzeptiert = cell.getRow().getData().akzeptiert; @@ -315,7 +334,11 @@ $this->load->view( var text = 'Lehrauftragsstunden und/oder -betrag wurde/n geändert.'; text += "\n"; - if (bestellt != null && erteilt == null && betrag != vertrag_betrag) + if (is_dummy) + { + return 'Neuer Lehrauftrag. Ohne Lektor verplant.' + } + else if (bestellt != null && erteilt == null && betrag != vertrag_betrag) { return text += 'Erteilen möglich, wenn die Änderungen erneut bestellt worden sind.'; } @@ -349,10 +372,12 @@ $(function() { $('#filterTabulator').tabulator('clearFilter'); }); - // Show only rows with new lehrauftraege + // Show only rows with new lehrauftraege (not dummy lectors) $("#show-new").click(function(){ $('#filterTabulator').tabulator('setFilter', [ + {field: 'personalnummer', type: '!=', value: null}, + {field: 'personalnummer', type: '>=', value: 0}, {field: 'bestellt', type: '=', value: null}, {field: 'erteilt', type: '=', value: null}, {field: 'akzeptiert', type: '=', value: null} @@ -393,6 +418,16 @@ $(function() { ); }); + // Show only rows with dummy lectors + $("#show-dummies").click(function(){ + $('#filterTabulator').tabulator('setFilter', + [ + {field: 'personalnummer', type: '!=', value: null}, + {field: 'personalnummer', type: '<=', value: 0}, + ] + ); + }); + $("#download-cvs").click(function(){ $('#filterTabulator').tabulator("download", "csv", "data.csv"); });