From 66f3d11420aabb06a2b12d9d8225912109aaa6ed Mon Sep 17 00:00:00 2001
From: Bill Erickson <berickxx@gmail.com>
Date: Tue, 4 Sep 2018 15:09:31 -0400
Subject: [PATCH] LP#1789747 More SharedWorker sanity checks for egLovefield

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Rogan Hamby <rhamby@equinoxinitiative.org>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
---
 Open-ILS/web/js/ui/default/staff/services/lovefield.js | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/Open-ILS/web/js/ui/default/staff/services/lovefield.js b/Open-ILS/web/js/ui/default/staff/services/lovefield.js
index 707f41a15d..e7ec4960c8 100644
--- a/Open-ILS/web/js/ui/default/staff/services/lovefield.js
+++ b/Open-ILS/web/js/ui/default/staff/services/lovefield.js
@@ -240,8 +240,10 @@ angular.module('egCoreMod')
     }
 
     service.setStatCatsCache = function (statcats) {
-        if (lf.isOffline || !statcats || statcats.length === 0) 
+        if (lf.isOffline || !statcats || 
+            statcats.length === 0 || service.cannotConnect) {
             return $q.when();
+        }
 
         var rows = statcats.map(function(cat) {
             return {id: cat.id(), value: egCore.idl.toHash(cat)}
@@ -290,7 +292,7 @@ angular.module('egCoreMod')
     }
 
     service.setSettingsCache = function (settings) {
-        if (lf.isOffline) return $q.when();
+        if (lf.isOffline || service.cannotConnect) return $q.when();
 
         var rows = [];
         angular.forEach(settings, function (val, key) {
@@ -334,7 +336,7 @@ angular.module('egCoreMod')
     }
 
     service.setListInOfflineCache = function (type, list) {
-        if (lf.isOffline) return $q.when();
+        if (lf.isOffline || service.cannotConnect) return $q.when();
 
         return service.isCacheGood(type).then(function(good) {
             if (good) { return };  // already cached
-- 
2.11.0