From 0f397bf23a16377c8007e6bf4d8aa0a90a9302d9 Mon Sep 17 00:00:00 2001 From: Pierre-Olivier Mercier Date: Tue, 19 Jun 2018 06:10:57 +0200 Subject: [PATCH] Cache intermediate pages as home --- sw.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/sw.js b/sw.js index 918496f..4d7aeab 100644 --- a/sw.js +++ b/sw.js @@ -39,15 +39,20 @@ self.addEventListener("activate", function(e) { self.addEventListener("fetch", function(e) { var url = e.request.url.split("/"); + var nreq = e.request.clone(); + if (url[3] == "metros" || url[3] == "rers" || url[3] == "bus" || url[3] == "tramways" || url[3] == "noctiliens") { + nreq = new Request(url.slice(0,3).join("/") + "/"); + } + e.respondWith( - caches.match(e.request) + caches.match(nreq) .then(function(response) { if (response) { - // Return cached version + // Return the cached version return response; } - var requestClone = e.request.clone(); + var requestClone = nreq.clone(); return fetch(requestClone) .then(function(response) { @@ -58,7 +63,7 @@ self.addEventListener("fetch", function(e) { if (!(url[3] == "api" && (url[4] == "traffic" || url[4] == "schedules"))) { var responseClone = response.clone(); caches.open(cacheName).then(function(cache) { - cache.put(e.request, responseClone); + cache.put(nreq, responseClone); }); }