diff options
Diffstat (limited to 'js')
-rw-r--r-- | js/app.js | 15 | ||||
-rw-r--r-- | js/reader.js | 27 |
2 files changed, 20 insertions, 22 deletions
@@ -54,7 +54,6 @@ const App = { } App.initNightMode(); - App.initOfflineEvents(); if ('serviceWorker' in navigator) { navigator.serviceWorker.addEventListener('message', function(event) { @@ -208,19 +207,6 @@ const App = { appCheckOffline: function() { EpubeApp.setOffline(!App.onLine); }, - initOfflineEvents: function() { - if (typeof EpubeApp != "undefined") { - $(window).on('online', function() { - EpubeApp.setOffline(false); - }); - - $(window).on('offline', function() { - EpubeApp.setOffline(true); - }); - - EpubeApp.setOffline(!App.onLine); - } - }, initNightMode: function() { if (typeof EpubeApp != "undefined") { App.applyNightMode(EpubeApp.isNightMode()); @@ -253,7 +239,6 @@ const App = { } App.initNightMode(); - App.initOfflineEvents(); const query = $.urlParam("query"); diff --git a/js/reader.js b/js/reader.js index 40ed656..8d54701 100644 --- a/js/reader.js +++ b/js/reader.js @@ -23,15 +23,12 @@ const Reader = { Reader.Loader.init(); }, - initSecondStage: function() { - - if (typeof EpubeApp != "undefined") { - EpubeApp.setPage("PAGE_READER"); - } + onOfflineModeChanged: function(offline) { + console.log('onOfflineModeChanged', offline); - Reader.applyTheme(); + if (!offline) { + const book = window.book; - $(window).on('online', function() { console.log("we're online, storing lastread"); const currentCfi = book.rendition.currentLocation().start.cfi; @@ -49,6 +46,22 @@ const Reader = { window.location = "index.php"; } }); + } + }, + initSecondStage: function() { + + if (typeof EpubeApp != "undefined") { + EpubeApp.setPage("PAGE_READER"); + } + + Reader.applyTheme(); + + $(window).on('online', function() { + Reader.onOfflineModeChanged(false); + }); + + $(window).on('offline', function() { + Reader.onOfflineModeChanged(true); }); localforage.getItem(Reader.cacheId("book")).then(function(item) { |