From 071a5492e33bda4e51abe43ff3fe2f327c402153 Mon Sep 17 00:00:00 2001 From: Bill Erickson Date: Fri, 8 Jun 2018 13:08:18 -0400 Subject: [PATCH] LP#1768947 Offline DB runs in shared web worker Move the lovefield database access logic into a shared web worker script. This ensures the only one connection (per schema) can exist, avoiding data integrity problems caused by having multiple tabs writing to the database at the same time. Signed-off-by: Bill Erickson Signed-off-by: Jeff Davis Signed-off-by: Kathy Lussier --- Open-ILS/src/templates/staff/base_js.tt2 | 8 + .../js/ui/default/staff/offline-db-worker.js | 394 +++++++++++++ Open-ILS/web/js/ui/default/staff/offline.js | 42 +- .../js/ui/default/staff/services/lovefield.js | 535 +++++++++--------- .../web/js/ui/default/staff/webpack.config.js | 6 +- 5 files changed, 689 insertions(+), 296 deletions(-) create mode 100644 Open-ILS/web/js/ui/default/staff/offline-db-worker.js diff --git a/Open-ILS/src/templates/staff/base_js.tt2 b/Open-ILS/src/templates/staff/base_js.tt2 index 51d9c42dc0..98650a7cd3 100644 --- a/Open-ILS/src/templates/staff/base_js.tt2 +++ b/Open-ILS/src/templates/staff/base_js.tt2 @@ -40,6 +40,7 @@ UpUp.start({ '[% ctx.media_prefix %]/js/dojo/opensrf/md5.js', '[% ctx.media_prefix %]/js/ui/default/staff/build/js/moment-with-locales.min.js', '[% ctx.media_prefix %]/js/ui/default/staff/build/js/moment-timezone-with-data.min.js', + '[% ctx.media_prefix %]/js/ui/default/staff/build/js/lovefield.min.js', '[% ctx.media_prefix %]/js/ui/default/common/build/js/jquery.min.js', '[% ctx.media_prefix %]/js/ui/default/staff/build/js/vendor.bundle.js', '[% ctx.media_prefix %]/js/ui/default/staff/build/fonts/glyphicons-halflings-regular.woff', @@ -82,6 +83,13 @@ UpUp.start({ + + +