From: Galen Charlton Date: Fri, 19 Apr 2019 20:29:21 +0000 (-0400) Subject: LP#1812900: fix retention of saved defaults in holdings editor X-Git-Url: http://git.equinoxoli.org/?p=evergreen-equinox.git;a=commitdiff_plain;h=5c4914672feb650d4e743c0425d963190fa13d62 LP#1812900: fix retention of saved defaults in holdings editor Because the $watch on the statistical category default OU filter in the holdings editor can fire before the form is fully initialized, saved defaults (i.e., the cat.copy.defaults workstation setting) could get overwritten with the hard-coded default value for that, er, set of defaults. This patch ensures that that $watch saves the defaults only when the value of the default stat cat OU filter has changed. To test ------- [1] Use the holdings editor on an item. Change to the defaults tab and check or uncheck checkboxes such as "Use checkdigit" and "Print Item Labels on Save and Exit" [2] Refresh the page or open the holdings editor on a different item. Note that the settings from step #1 are not retained. [3] Apply the patch. [4] Repeat steps #1 and #2. This time, the settings should be retained. [5] Set the Default Filter Library in the same tab and refresh. Verify that the OU you chose is retained. Signed-off-by: Galen Charlton Signed-off-by: Remington Steed Signed-off-by: John Amundson Signed-off-by: Janet Schrader Signed-off-by: Jason Stephenson --- diff --git a/Open-ILS/web/js/ui/default/staff/cat/volcopy/app.js b/Open-ILS/web/js/ui/default/staff/cat/volcopy/app.js index c27170a..80d2a37 100644 --- a/Open-ILS/web/js/ui/default/staff/cat/volcopy/app.js +++ b/Open-ILS/web/js/ui/default/staff/cat/volcopy/app.js @@ -1090,8 +1090,9 @@ function($scope , $q , $window , $routeParams , $location , $timeout , egCore , }); } - $scope.$watch('defaults.statcat_filter', function() { - $scope.saveDefaults(); + $scope.$watch('defaults.statcat_filter', function(n,o) { + if (n && n != o) + $scope.saveDefaults(); }); $scope.$watch('defaults.auto_gen_barcode', function (n,o) { itemSvc.auto_gen_barcode = n