Modify server/cat/bib_brief.js to check for source can have volumes.
authorJason Stephenson <jstephenson@mvlc.org>
Tue, 4 Oct 2011 00:09:37 +0000 (20:09 -0400)
committerJason Stephenson <jstephenson@mvlc.org>
Tue, 15 Nov 2011 22:14:25 +0000 (17:14 -0500)
Copy/paste code from chrome/content/cat/opac.js.

Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Open-ILS/xul/staff_client/server/cat/bib_brief.js

index d197422..41ee31a 100644 (file)
@@ -170,6 +170,31 @@ function add_volumes() {
             return; // no read-only view for this interface
         }
 
+        var can_have_copies = true;
+        var cbsObj;
+        try {
+            var bibObj = g.network.request(
+                api.FM_BRE_RETRIEVE_VIA_ID.app,
+                api.FM_BRE_RETRIEVE_VIA_ID.method,
+                               [ ses(), [docid] ]
+            );
+            bibObj = bibObj[0];
+            cbsObj = g.network.request(
+                api.FM_CBS_RETRIEVE_VIA_PCRUD.app,
+                api.FM_CBS_RETRIEVE_VIA_PCRUD.method,
+                [ ses(), bibObj.source() ]
+            );
+            can_have_copies = (cbsObj.can_have_copies() == get_db_true());
+        } catch(E) {
+            g.error.sdump('D_ERROR','can have copies check: ' + E);
+            return;
+        }
+
+        if (!can_have_copies) {
+            alert(document.getElementById('offlineStrings').getFormattedString('staff.cat.bib_source.can_have_copies.false', [cbs.source()]));
+            return false;
+        }
+
         var title = document.getElementById('offlineStrings').getFormattedString('staff.circ.copy_status.add_volumes.title', [docid]);
 
         var url;