From 8ccc619d0e1708bfb2026c2ad8cf8b3170c397ea Mon Sep 17 00:00:00 2001 From: Dan Pearl Date: Thu, 7 Jun 2018 14:20:49 -0400 Subject: [PATCH] LP1739271 - Fix Item Edit when Part Present Cannot edit item or call number after mono part assigned. This was indeed a timing error where parts were referenced before they were completely assigned to the structure in which they were to reside. I have restructured the code to ensure the parts are available. Signed-off-by: Dan Pearl Signed-off-by: Jason Boyer --- .../js/ui/default/staff/cat/volcopy/app.js | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) 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 b722a1c8dd..a744a0c5b8 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 @@ -536,25 +536,26 @@ function(egCore , $q) { } $scope.copy.ischanged(1); } - $scope.$watch('part', $scope.updatePart); - - $scope.barcode = $scope.copy.barcode(); - $scope.copy_number = $scope.copy.copy_number(); - - if ($scope.copy.parts()) { - $scope.part = $scope.copy.parts()[0]; - if ($scope.part) $scope.part = $scope.part.label(); - }; $scope.parts = []; $scope.part_list = []; - itemSvc.get_parts($scope.callNumber.record()).then(function(list){ + itemSvc.get_parts($scope.callNumber.record()) + .then(function(list){ $scope.part_list = list; angular.forEach(list, function(p){ $scope.parts.push(p.label()) }); $scope.parts = angular.copy($scope.parts); + + $scope.$watch('part', $scope.updatePart); + if ($scope.copy.parts()) { + var the_part = $scope.copy.parts()[0]; + if (the_part) $scope.part = the_part.label(); + }; }); + $scope.barcode = $scope.copy.barcode(); + $scope.copy_number = $scope.copy.copy_number(); + } ] -- 2.43.2