lp#792595: Don't allow pre-cats into record buckets via Item Status -> Actions for...
authorJason Etheridge <jason@esilibrary.com>
Thu, 21 Jul 2011 19:25:28 +0000 (15:25 -0400)
committerMike Rylander <mrylander@gmail.com>
Wed, 3 Aug 2011 17:19:52 +0000 (13:19 -0400)
Alerts with the number of pre-cat records skipped prior to invoking the title bucket dialog.

Signed-off-by: Jason Etheridge <jason@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Open-ILS/xul/staff_client/server/cat/util.js
Open-ILS/xul/staff_client/server/locale/en-US/cat.properties

index 98a6dd4..70149f9 100644 (file)
@@ -300,14 +300,29 @@ cat.util.add_copies_to_bucket = function(selection_list) {
 
 cat.util.add_titles_to_bucket = function(record_ids) {
     JSAN.use('util.window'); var win = new util.window();
-    win.open(
-        xulG.url_prefix(urls.XUL_RECORD_BUCKETS_QUICK),
-        '_blank',
-        'chrome,resizable,modal,center',
-        {
-            record_ids: record_ids 
+    JSAN.use('util.functional');
+    var filtered_record_ids = util.functional.filter_list(
+        record_ids,
+        function(o) {
+            return o != -1; // don't allow the magic pre-cat bib
         }
     );
+    if (filtered_record_ids.length != record_ids.length) {
+        alert($("catStrings").getFormattedString(
+            'staff.cat.util.add_titles_to_bucket.number_of_precats_skipped',
+            [ record_ids.length - filtered_record_ids.length ]
+        ));
+    }
+    if (filtered_record_ids.length > 0) {
+        win.open(
+            xulG.url_prefix(urls.XUL_RECORD_BUCKETS_QUICK),
+            '_blank',
+            'chrome,resizable,modal,center',
+            {
+                record_ids: filtered_record_ids
+            }
+        );
+    }
 }
 
 cat.util.spawn_copy_editor = function(params) {
index 7bf9f65..79807a5 100644 (file)
@@ -406,6 +406,7 @@ staff.cat.util.mark_item_missing_pieces.one_item_missing_pieces=Item marked as m
 staff.cat.util.mark_item_missing_pieces.multiple_item_missing_pieces=%1$s items marked as missing pieces.
 staff.cat.util.mark_item_missing_pieces.circ_not_found=No circulation found for item with barcode %1$s.  Item left unmodified.
 staff.cat.util.show_in_opac.retrieving_title=Retrieving title...
+staff.cat.util.add_titles_to_bucket.number_of_precats_skipped=Skipping %1$s pre-cat records...
 
 staff.cat.volume_buckets.window_tab_name=Volume Buckets
 staff.cat.volume_copy_creator.my_init.btn.label=Apply