Failed to execute template. Cause: [Access denied when checking [script] access to [xwiki:Collaboratory.UX.HbpSkin.WebHome] for user [xwiki:XWiki.Admin]]. Click on this message for details.

LiveTableServiceWorker - HBP Wiki

IAM21 instance, do not create collab nor modify a team, your changes will be lost


Changes for page LiveTableServiceWorker

Last modified by bougault on 2022/03/22 17:19

From version 4.89
edited by bougault
on 2022/03/22 17:19
Change comment: There is no comment for this version
To version 4.67
edited by bougault
on 2022/03/21 17:39
Change comment: There is no comment for this version

Summary

Details

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