sidestep race condition with new volumes and db replication.. this should fix the...
authorphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Fri, 1 Feb 2008 14:37:30 +0000 (14:37 +0000)
committerphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Fri, 1 Feb 2008 14:37:30 +0000 (14:37 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/branches/rel_1_2@8568 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/xul/staff_client/server/cat/copy_editor.js

index 2181fc2..70bc6a4 100644 (file)
@@ -74,9 +74,16 @@ function my_init() {
                                     lib = o.circ_lib(); // base perms on circ_lib instead of owning_lib if pre-cat
                                 } else {
                                     if (! g.map_acn[ cn_id ]) {
-                                        g.map_acn[ cn_id ] = g.network.simple_request('FM_ACN_RETRIEVE',[ cn_id ]);
+                                        var req = g.network.simple_request('FM_ACN_RETRIEVE',[ cn_id ]);
+                                        if (typeof req.ilsevent == 'undefined') {
+                                            g.map_acn[ cn_id ] = req;
+                                            lib = g.map_acn[ cn_id ].owning_lib();
+                                        } else {
+                                            lib = o.circ_lib();
+                                        }
+                                    } else {
+                                        lib = g.map_acn[ cn_id ].owning_lib();
                                     }
-                                    lib = g.map_acn[ cn_id ].owning_lib();
                                 }
                                 return lib;
                             }
@@ -552,7 +559,12 @@ g.get_acpl_list = function() {
                        var cn_id = typeof callnumber == 'object' ? callnumber.id() : callnumber;
                        if (cn_id > 0) {
                                if (! g.map_acn[ cn_id ]) {
-                                       g.map_acn[ cn_id ] = g.network.simple_request('FM_ACN_RETRIEVE',[ cn_id ]);
+                                       var req = g.network.simple_request('FM_ACN_RETRIEVE',[ cn_id ]);
+                    if (typeof req.ilsevent == 'undefined') {
+                                       g.map_acn[ cn_id ] = req;
+                    } else {
+                        continue;
+                    }
                                }
                 var consider_lib = g.map_acn[ cn_id ].owning_lib();
                 if (!consider_lib) continue;
@@ -1383,7 +1395,12 @@ g.populate_stat_cats = function() {
             var cn_id = g.copies[i].call_number();
                        if (cn_id > 0) {
                                if (! g.map_acn[ cn_id ]) {
-                                       g.map_acn[ cn_id ] = g.network.simple_request('FM_ACN_RETRIEVE',[ cn_id ]);
+                    var req = g.network.simple_request('FM_ACN_RETRIEVE',[ cn_id ]);
+                    if (typeof req.ilsevent == 'undefined') {
+                                       g.map_acn[ cn_id ] = req;
+                    } else {
+                        continue;
+                    }
                                }
                 var owning_lib = g.map_acn[ cn_id ].owning_lib(); if (typeof owning_lib == 'object') owning_lib = owning_lib.id();
                 sc_libs[ owning_lib ] = true;