Changes for page LiveTableServiceWorker
Last modified by bougault on 2022/03/22 17:19
Summary
-
Objects (1 modified, 0 added, 0 removed)
Details
- XWiki.JavaScriptExtension[0]
-
- Code
-
... ... @@ -1,33 +1,22 @@ 1 1 $response.addHeader('Service-Worker-Allowed', '/bin/view/Membership') 2 2 $response.setContentType("text/javascript") 3 -if(navigator.serviceWorker) { 4 - const version = "0.1.0"; 5 - /* 6 - self.addEventListener("install" , event => { 7 - //self.skipWaiting(); 8 - }); 3 +self.addEventListener("install" , event => { 4 + self.skipWaiting(); 5 +}); 9 9 10 - self.addEventListener("activate" , event => { 11 - event.waitUntil(self.clients.claim()); 12 - }); 7 +self.addEventListener("activate" , event => { 8 +// console.log(event); 9 +// clients.claim(); 10 + event.waitUntil(clients.claim()); 11 +}); 13 13 14 - self.addEventListener("fetch" , event => { 15 - const pathname = new URL(event.request.url).pathname; 16 - if(pathname === '/bin/get/XWiki/LiveTableResults') { 17 - event.respondWith(fetch(event.request).then(res => res.json()).then(json => { 18 - const headers = new Headers({'Content-Type': 'application/json'}); 19 - const jsonResults = json.rows.filter(row => row.doc_viewable === true); 20 - return new Response(JSON.stringify(jsonResults), {headers}); 21 - })); 22 - } 23 - }); 24 - */ 25 - self.addEventListener("fetch", (e) => { 26 - const pathname = new URL(event.request.url).pathname; 27 - console.log("sw", pathname); 28 - if(pathname === "/getMembershipRequests") { 29 - const res = new Response("custom response"); 30 - e.respondWith(res); 31 - } 32 - }) 33 -} 13 +self.addEventListener("fetch" , event => { 14 + const pathname = new URL(event.request.url).pathname; 15 + if(pathname === '/bin/get/XWiki/LiveTableResults') { 16 + //const res = fetch(event.request).then(res => res.json()).then(json => json["rows"].filter(row => row.doc_viewable === true)); 17 + event.respondWith(fetch(event.request).then(res => res.json()).then(json => { 18 + const headers = new Headers('Content-Type', 'application/json'); 19 + return new Response(JSON.stringify(json), {headers}); 20 + })); 21 + } 22 +});