Bring initial confirmation dialog.
authorJason Stephenson <jason@sigio.com>
Sun, 21 Oct 2018 16:32:16 +0000 (12:32 -0400)
committerJason Stephenson <jason@sigio.com>
Fri, 26 Oct 2018 23:04:56 +0000 (19:04 -0400)
Also edit the strings a bit.

Open-ILS/src/templates/staff/circ/share/circ_strings.tt2
Open-ILS/web/js/ui/default/staff/circ/services/circ.js
Open-ILS/web/js/ui/default/staff/circ/services/item.js

index 8983ce0..d760d64 100644 (file)
@@ -27,11 +27,12 @@ s.LOCATION_ALERT_MSG =
     "{{copy.barcode()}}","{{copy.location().name()}}") %]';
 s.MARK_DAMAGED_CONFIRM = '[% l("Mark {{num_items}} items as DAMAGED?") %]';
 s.MARK_MISSING_CONFIRM = '[% l("Mark {{num_items}} items as MISSING?") %]';
-s.MARK_ITEM_CHECKED_OUT = '[% l("Item to mark {{status}} is checked out.") %]';
-s.MARK_ITEM_IN_TRANSIT = '[% l("Item to mark {{status}} is in transit.") %]';
-s.MARK_ITEM_RESTRICT_DELETE = '[% l("Item to mark {{status}} is in a status with a copy delete warning.") %]';
-s.MARK_ITEM_LAST_HOLD_COPY = '[% l("Item to mark {{status}} is the last item to fill a hold.") %]';
-s.MARK_ITEM_CONTINUE = '[% l("Do you wish to continue?") %]';
+s.MARK_DISCARD_CONFIRM = '[% l("Mark {{num_items}} items as DICARD/WEED?") %]';
+s.MARK_ITEM_CHECKED_OUT = '[% l("Item {{barcode}} is checked out.") %]';
+s.MARK_ITEM_IN_TRANSIT = '[% l("Item {{barcode}} is in transit.") %]';
+s.MARK_ITEM_RESTRICT_DELETE = '[% l("Item {{barcode}} is in a status with a copy delete warning.") %]';
+s.MARK_ITEM_LAST_HOLD_COPY = '[% l("Item {{barcode}} is the last item to fill a hold.") %]';
+s.MARK_ITEM_CONTINUE = '[% l("Do you wish to continue marking it {{status}}?") %]';
 s.ABORT_TRANSIT_CONFIRM = '[% l("Cancel {{num_transits}} transits?") %]';
 s.ROUTE_TO_HOLDS_SHELF = '[% l("Holds Shelf") %]';
 s.ROUTE_TO_CATALOGING = '[% l("Cataloging") %]';
index a953026..ae732b1 100644 (file)
@@ -1445,8 +1445,21 @@ function($uibModal , $q , egCore , egAlertDialog , egConfirmDialog,  egAddCopyAl
         });
     }
 
-    service.mark_discard = function(copy) {
-        return service.mark_item(copy, 13, {});
+    service.mark_discard = function(copies) {
+        return egConfirmDialog.open(
+            egCore.strings.MARK_DISCARD_CONFIRM, '',
+            {
+                num_items : copies.length,
+                ok : function() {},
+                cancel : function() {}
+            }
+        ).then(function() {
+            var promises = [];
+            angular.forEach(copies, function(copy) {
+                promises.push(service.mark_item(copy, 13, {}))
+            });
+        });
+        return $q.all(promises);
     }
 
     service.mark_missing = function(copy_ids) {
index 535c592..478dbd6 100644 (file)
@@ -645,11 +645,8 @@ function(egCore , egCirc , $uibModal , $q , $timeout , $window , egConfirmDialog
     }
 
     service.selectedHoldingsDiscard = function (items) {
-        angular.forEach(items, function(cp) {
-            if (cp) {
-                egCirc.mark_discard(cp).then(function(){
-                    service.add_barcode_to_list(cp.barcode)});
-            }
+        egCirc.mark_discard(items).thef(function(){
+            angular.forEach(items, function(cp){service.add_barcode_to_list(cp.barcode)});
         });
     }