summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2017-07-26 13:54:30 +0300
committerAndrew Dolgov <[email protected]>2017-07-26 13:54:30 +0300
commit6ee7389a0a966feb7c347b944d52a4a420d4dcf6 (patch)
treef9617f8de59c95521986f4c55a8e0b7759db2c7b
parent23d5d2a4762ee01f9bddf8d9e94dc3d3912a9148 (diff)
add a cache refresh link to index
-rw-r--r--index.php15
-rw-r--r--js/index.js6
2 files changed, 16 insertions, 5 deletions
diff --git a/index.php b/index.php
index b2291c0..bfb5fe8 100644
--- a/index.php
+++ b/index.php
@@ -131,9 +131,13 @@
.then(function() {
console.log("service worker registered");
});
- /*$(window).on('offline', function() {
- window.location.reload();
- });*/
+
+ navigator.serviceWorker.addEventListener('message', function(event) {
+ // not used yet
+ if (event.data == 'client-reload') {
+ window.location.reload();
+ }
+ });
}
mark_offline_books();
@@ -375,6 +379,11 @@
<?php } ?>
</ul>
+ <p class="text-center small">
+ <a class="text-muted" href="#" onclick="return cache_refresh(true)">Refresh cache</a>
+ </p>
+
+
</div>
</body>
</html>
diff --git a/js/index.js b/js/index.js
index 4996d1a..301f619 100644
--- a/js/index.js
+++ b/js/index.js
@@ -1,9 +1,9 @@
-function cache_refresh() {
+function cache_refresh(force) {
if ('serviceWorker' in navigator) {
localforage.getItem("epube.cache-timestamp").then(function(stamp) {
var ts = parseInt(new Date().getTime()/1000);
- if (!stamp || ts - stamp > 3600) {
+ if (force || !stamp || ts - stamp > 3600) {
console.log('asking worker to refresh cache');
navigator.serviceWorker.controller.postMessage("refresh-cache");
localforage.setItem("epube.cache-timestamp", ts);
@@ -11,6 +11,8 @@ function cache_refresh() {
});
}
+
+ return false;
}
function toggle_fav(elem) {