const versionMain = '1.0.0.'+new Date().getUTCDate(); const CACHE_NAME = 'deccanchronicle-pwa-v0-'+versionMain; const CACHE_FILES = ['/','/offline']; const CACHE_HOSTS = ['www.deccanchronicle.com','deccanchronicle.com','localhost']; self.addEventListener('install', function(event) { event.waitUntil( caches.open(CACHE_NAME).then(function(cache) { return cache.addAll(CACHE_FILES); }) ); }); self.addEventListener('activate', function(e) { e.waitUntil( Promise.all([ self.clients.claim(), caches.keys().then(function(cacheNames) { return Promise.all( cacheNames.map(function(cacheName) { if (cacheName !== CACHE_NAME) { return caches.delete(cacheName); } }) ); }) ]) ); }); self.addEventListener('fetch', (event) => { if (event.request.mode === 'navigate') { event.respondWith((async () => { try { const preloadResponse = await event.preloadResponse; if (preloadResponse) { return preloadResponse; } const networkResponse = await fetch(event.request); return networkResponse; } catch (error) { const cache = await caches.open(CACHE_NAME); const cachedResponse = await cache.match('/offline'); return cachedResponse; } })()); } }); var izCacheVer = "1"; importScripts("https://cdn.izooto.com/scripts/workers/93088913323d2cdf7d4bcadc73a1eed82b7391af.js");