LP1702911: Correct Barcode State in Add Item
authorJason Boyer <jboyer@library.in.gov>
Fri, 7 Jul 2017 14:24:35 +0000 (10:24 -0400)
committerKathy Lussier <klussier@masslnc.org>
Mon, 24 Jul 2017 17:22:08 +0000 (13:22 -0400)
When adding an item from the MARC editor the barcode
state was incorrect because the empty_barcode flag
is set on the copy and then not changed after
assigning a barcode. At that point the only way to
alter the flag is modifying the barcode in the UI,
which the user likely would not think to do. This
causes the Save buttons to remain disabled.

To test pre patch:
Open a record in the MARC editor, check Add Item
Add a call number label and barcode above, click Save
In the vol/copy editor, try as you might, you can't save. :(

To test post-patch:
Open a record in the MARC editor, check Add Item
Add a call number label and barcode above, click Save
In the vol/copy editor, the Save buttons will already be enabled
(barring required stat cats, etc.)

Signed-off-by: Jason Boyer <jboyer@library.in.gov>
Signed-off-by: Josh Stompro <stomproj@larl.org>
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Open-ILS/web/js/ui/default/staff/cat/volcopy/app.js

index bbf44a2..fce1e7a 100644 (file)
@@ -1209,7 +1209,10 @@ function($scope , $q , $window , $routeParams , $location , $timeout , egCore ,
                                         ((!$scope.only_vols) ? true : false)
                                     );
 
                                         ((!$scope.only_vols) ? true : false)
                                     );
 
-                                    if (proto.barcode) cp.barcode( proto.barcode );
+                                    if (proto.barcode) {
+                                        cp.barcode( proto.barcode );
+                                        cp.empty_barcode = false;
+                                    }
 
                                     itemSvc.addCopy(cp)
                                 });
 
                                     itemSvc.addCopy(cp)
                                 });
@@ -1256,7 +1259,10 @@ function($scope , $q , $window , $routeParams , $location , $timeout , egCore ,
                                     true
                                 );
 
                                     true
                                 );
 
-                                if (proto.barcode) cp.barcode( proto.barcode );
+                                if (proto.barcode) {
+                                    cp.barcode( proto.barcode );
+                                    cp.empty_barcode = false;
+                                }
 
                                 itemSvc.addCopy(cp)
                             }
 
                                 itemSvc.addCopy(cp)
                             }