From 05255047ed5e2c736634d7d53f35d0a5c4edb84a Mon Sep 17 00:00:00 2001 From: nathangray Date: Tue, 24 Jul 2018 10:10:12 -0600 Subject: [PATCH] Better support for no_actions row flag so fetched rows with no_actions are not selected by 'select all' --- .../et2_dataview_controller_selection.js | 21 +++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/api/js/etemplate/et2_dataview_controller_selection.js b/api/js/etemplate/et2_dataview_controller_selection.js index 6da0bf6eea..bbae039ac3 100644 --- a/api/js/etemplate/et2_dataview_controller_selection.js +++ b/api/js/etemplate/et2_dataview_controller_selection.js @@ -563,24 +563,28 @@ var et2_dataview_selectionManager = (function(){ "use strict"; return Class.exte { queryRanges.push(et2_bounds(naStart, i - 1)); naStart = false; + range_break += RANGE_MAX; } // Select the element, unless flagged for exclusion - if(!this._indexMap[i].no_actions) + // Check for no_actions flag via data + var data = egw.dataGetUIDdata(this._indexMap[i].uid); + if(!data || data && data.data && !data.data.no_actions) { this.setSelected(this._indexMap[i].uid, true); } } + else if (naStart === false) + { + naStart = i; + range_break = naStart + RANGE_MAX; + } else if(i >= range_break) { queryRanges.push(et2_bounds(naStart ? naStart : s, i - 1)); naStart = i; range_break += RANGE_MAX; } - else if (naStart === false) - { - naStart = i; - } } // Add the last range to the "queryRanges" @@ -646,7 +650,12 @@ var et2_dataview_selectionManager = (function(){ "use strict"; return Class.exte function (_order) { for (var j = 0; j < _order.length; j++) { - this.setSelected(_order[j], true); + // Check for no_actions flag via data since entry isn't there/available + var data = egw.dataGetUIDdata(_order[j]); + if(!data || data && data.data && !data.data.no_actions) + { + this.setSelected(_order[j], true); + } } progressbar.set_value(100*(++range_index/range_count)); resolve();