From 3b07fa42cc879e72bb83f9185a5c5c81a8689f39 Mon Sep 17 00:00:00 2001 From: Bill Erickson Date: Wed, 17 Apr 2019 10:51:45 -0400 Subject: [PATCH] LP1683385 AngJS grid avoid dupe auto-fields When generating grid fields from an IDL class in the AngJS grid, avoid adding any fields that match fields already defined in the markup. An example of such a grid is the Pending Item Buckets page. To test ------- [1] Go to Item Buckets and add an item to the Pending Items page. [2] Note that in the column picker there are two barcode fields, one that hyperlinks the item and one that does not. [3] Apply the patch and repeat steps 1-2. [4] This time, there is only one barcode column (the one that hyperlinks the results). Signed-off-by: Bill Erickson Signed-off-by: Galen Charlton --- Open-ILS/web/js/ui/default/staff/services/grid.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Open-ILS/web/js/ui/default/staff/services/grid.js b/Open-ILS/web/js/ui/default/staff/services/grid.js index 3998abba1e..5c9d5f0fdf 100644 --- a/Open-ILS/web/js/ui/default/staff/services/grid.js +++ b/Open-ILS/web/js/ui/default/staff/services/grid.js @@ -1584,6 +1584,9 @@ angular.module('egGridMod', idl_class.fields, function(field) { if (field.virtual) return; + // Columns declared in the markup take precedence + // of matching auto-columns. + if (cols.findColumn(field.name)) return; if (field.datatype == 'link' || field.datatype == 'org_unit') { // if the field is a link and the linked class has a // "selector" field specified, use the selector field -- 2.11.0