From 1824ba24c0abf739ce0470166f5ca557ab06e66e Mon Sep 17 00:00:00 2001 From: Mike Rylander Date: Fri, 21 Aug 2015 13:10:41 -0400 Subject: [PATCH] webstaff: Expose columns through grid controls for external column pickers Signed-off-by: Mike Rylander Signed-off-by: Galen Charlton --- Open-ILS/web/js/ui/default/staff/services/grid.js | 18 ++++++++++++++++++ 1 file changed, 18 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 b7c1ce35fa..fbbdb46e4f 100644 --- a/Open-ILS/web/js/ui/default/staff/services/grid.js +++ b/Open-ILS/web/js/ui/default/staff/services/grid.js @@ -218,6 +218,18 @@ angular.module('egGridMod', // them up even if the caller doesn't request them. var controls = $scope.gridControls || {}; + controls.columnMap = function() { + var m = {}; + angular.forEach(grid.columnsProvider.columns, function (c) { + m[c.name] = c; + }); + return m; + } + + controls.columnsProvider = function() { + return grid.columnsProvider; + } + // link in the control functions controls.selectedItems = function() { return grid.getSelectedItems() @@ -287,6 +299,10 @@ angular.module('egGridMod', return grid.offset; } + controls.saveConfig = function () { + return $scope.saveConfig(); + } + grid.dataProvider.refresh = controls.refresh; grid.controls = controls; } @@ -399,6 +415,7 @@ angular.module('egGridMod', }); } + // load the columns configuration (position, sort, width) from // eg.grid. and apply the loaded settings to the // columns on our columnsProvider @@ -444,6 +461,7 @@ angular.module('egGridMod', grid.columnsProvider.columns = new_cols; grid.compileSort(); + }); } -- 2.11.0