LP1821950 saving without a call number
authorMike Risher <mrisher@catalyte.io>
Wed, 26 Feb 2020 00:31:27 +0000 (00:31 +0000)
committerMike Risher <mrisher@catalyte.io>
Tue, 10 Mar 2020 17:41:15 +0000 (17:41 +0000)
(formerly lp1713164)

Make changes so that it's not possible to save without a call number
and make sure a message indicates why you can't save. (Unleass the
library settings allow you to save without a call number.)

Signed-off-by: Mike Risher <mrisher@catalyte.io>
Changes to be committed:
modified:   Open-ILS/web/js/ui/default/staff/cat/volcopy/app.js

Open-ILS/web/js/ui/default/staff/cat/volcopy/app.js

index f19c4c9..5562929 100644 (file)
@@ -757,15 +757,28 @@ function(egCore , $q) {
                     });
                 }
 
-                $scope.$watch('callNumber.label()', function (v) {
-                    $scope.label = v;
-                    if ($scope.label == '') {
-                        $scope.callNumber.empty_label = $scope.empty_label = true;
+
+                $scope.$watch('callNumber.label()', function (label_text) {
+                    $scope.label = label_text;
+                    if ($scope.require_label == undefined) {
+                        egCore.org.settings('cat.require_call_number_labels').then(function(res) {
+                            $scope.require_label = res['cat.require_call_number_labels'];
+                            setEmptyLabel();
+                        });
                     } else {
-                        $scope.callNumber.empty_label = $scope.empty_label = false;
+                        setEmptyLabel(); 
                     }
-                });
 
+                    function setEmptyLabel() {
+                        if ($scope.require_label && 
+                            ($scope.label == '' || $scope.label == undefined)) {
+                            $scope.callNumber.empty_label = $scope.empty_label = true;
+                        } else {
+                            $scope.callNumber.empty_label = $scope.empty_label = false;
+                        }
+                    }
+                });
+                
                 $scope.prefix = $scope.callNumber.prefix();
                 $scope.suffix = $scope.callNumber.suffix();
                 $scope.classification = $scope.callNumber.label_class();