From 9ea31e674d4813816553b9c6c08260814b4074c7 Mon Sep 17 00:00:00 2001 From: Galen Charlton Date: Thu, 10 Dec 2015 23:15:34 -0500 Subject: [PATCH] copy alert type editor can now create and update copy alert types Signed-off-by: Galen Charlton --- .../staff/admin/local/autoGridEditor/ccat.tt2 | 89 ++++++++++++++++++++++ .../web/js/ui/default/staff/admin/local/app.js | 18 ++++- 2 files changed, 105 insertions(+), 2 deletions(-) create mode 100644 Open-ILS/src/templates/staff/admin/local/autoGridEditor/ccat.tt2 diff --git a/Open-ILS/src/templates/staff/admin/local/autoGridEditor/ccat.tt2 b/Open-ILS/src/templates/staff/admin/local/autoGridEditor/ccat.tt2 new file mode 100644 index 0000000000..e3011e98c4 --- /dev/null +++ b/Open-ILS/src/templates/staff/admin/local/autoGridEditor/ccat.tt2 @@ -0,0 +1,89 @@ + +
+
+ + + +
+
diff --git a/Open-ILS/web/js/ui/default/staff/admin/local/app.js b/Open-ILS/web/js/ui/default/staff/admin/local/app.js index 9d0e80234b..160fe8036d 100644 --- a/Open-ILS/web/js/ui/default/staff/admin/local/app.js +++ b/Open-ILS/web/js/ui/default/staff/admin/local/app.js @@ -54,7 +54,12 @@ angular.module('egLocalAdmin', $routeProvider.when('/admin/local/config/copy_alert_types', { templateUrl: './admin/local/t_grid_editor', controller: 'AutoGridEditorCtl', - fmBase: 'ccat' + fmBase: 'ccat', + createEditPrefetch: { + ccs : { id : {'!=' : null} } + }, + createEditOrgExpand: ['scope_org'], + createEditNullableBool : ['in_renew', 'at_circ', 'at_owning'] }); $routeProvider.when('/admin/local/actor/copy_alert_suppress', { @@ -130,6 +135,7 @@ function($scope , $route , $location , egCore , $timeout , egConfirmDialog , $mo $scope.baseFmClass = $route.current.$$route.fmBase; $scope.createEditPrefetch = $route.current.$$route.createEditPrefetch || {}; $scope.createEditOrgExpand = $route.current.$$route.createEditOrgExpand || []; + $scope.createEditNullableBool = $route.current.$$route.createEditNullableBool || []; $scope.gridControls = { setQuery : function(q) { if (q) query = q; @@ -179,6 +185,10 @@ function($scope , $route , $location , egCore , $timeout , egConfirmDialog , $mo newRec[key](val); } }); + angular.forEach($scope.createEditNullableBool, function(nb_field) { + if (!(record[nb_field] == null) && record[nb_field] == "") + newRec[nb_field](null); + }); return egCore.pcrud.create(newRec); }).then(function(){ $scope.gridControls.refresh(); @@ -188,12 +198,16 @@ function($scope , $route , $location , egCore , $timeout , egConfirmDialog , $mo openCreateEditDialog(items[0].id).result.then(function(record) { var editedRec = new egCore.idl[$scope.baseFmClass](); angular.forEach(record, function(val, key) { - if (typeof(val) === 'object') { + if (angular.isObject(val)) { editedRec[key](val.id()); } else { editedRec[key](val); } }); + angular.forEach($scope.createEditNullableBool, function(nb_field) { + if (!(record[nb_field] == null) && record[nb_field] == "") + editedRec[nb_field](null); + }); return egCore.pcrud.update(editedRec); }).then(function(){ $scope.gridControls.refresh(); -- 2.11.0