diff --git a/theme/moth-pwa.js b/theme/moth-pwa.js index 9d9a7ed..ccef77b 100644 --- a/theme/moth-pwa.js +++ b/theme/moth-pwa.js @@ -2,15 +2,15 @@ function pwa_init() { if ('serviceWorker' in navigator) { navigator.serviceWorker.register("./sw.js").then(function(reg) { }).catch(function(err) { - console.warn("Error while registering service worker", err); - }); + console.warn("Error while registering service worker", err) + }) } else { - console.log("Service workers not supported. Some offline functionality may not work"); + console.log("Service workers not supported. Some offline functionality may not work") } } if (document.readyState === "loading") { - document.addEventListener("DOMContentLoaded", pwa_init); + document.addEventListener("DOMContentLoaded", pwa_init) } else { - pwa_init(); + pwa_init() } diff --git a/theme/moth.js b/theme/moth.js index 4aab5fb..5644cae 100644 --- a/theme/moth.js +++ b/theme/moth.js @@ -109,68 +109,68 @@ function showPuzzles(teamId) { } function drawCacheButton(teamId) { - let cacher = document.createElement("li"); - let cache_button = document.createElement("a"); - cache_button.innerText = "Cache"; - cache_button.title = "Cache an offine copy of current content"; - cache_button.href = "#"; + let cacher = document.createElement("li") + let cache_button = document.createElement("a") + cache_button.innerText = "Cache" + cache_button.title = "Cache an offine copy of current content" + cache_button.href = "#" cache_button.addEventListener("click", async function() { - toast("Caching all currently-open content"); - await fetchAll(teamId); - toast("Done caching content"); - }); - cacher.appendChild(cache_button); - document.getElementsByTagName("nav")[0].getElementsByTagName("ul")[0].appendChild(cacher); + toast("Caching all currently-open content") + await fetchAll(teamId) + toast("Done caching content") + }) + cacher.appendChild(cache_button) + document.getElementsByTagName("nav")[0].getElementsByTagName("ul")[0].appendChild(cacher) function updateCacheButton() { - let headers = new Headers(); - headers.append("pragma", "no-cache"); - headers.append("cache-control", "no-cache"); + let headers = new Headers() + headers.append("pragma", "no-cache") + headers.append("cache-control", "no-cache") fetch("current_manifest.json?id=" + teamId, {method: "HEAD", headers: headers}) .then( resp => { if (resp.ok) { - cacher.style.disply = "initial"; + cacher.style.disply = "initial" } else { - cacher.style.display = "none"; + cacher.style.display = "none" } }).catch( ex => { - cacher.style.display = "none"; + cacher.style.display = "none" }) } - setInterval ( updateCacheButton , 30000); - updateCacheButton(); + setInterval ( updateCacheButton , 30000) + updateCacheButton() } async function fetchAll(teamId) { - let headers = new Headers(); - headers.append("pragma", "no-cache"); - headers.append("cache-control", "no-cache"); - requests = []; + let headers = new Headers() + headers.append("pragma", "no-cache") + headers.append("cache-control", "no-cache") + requests = [] requests.push( fetch("current_manifest.json?id=" + teamId, {headers: headers}) .then( resp => { if (resp.ok) { resp.json() .then( contents => { - console.log("Processing manifest"); + console.log("Processing manifest") for (let resource of contents) { if (resource == "puzzles.json") { - continue; + continue } fetch(resource) .then( e => { - console.log("Fetched " + resource); + console.log("Fetched " + resource) }) } }) } - })); + })) - let resp = await fetch("puzzles.json?id=" + teamId, {headers: headers}); + let resp = await fetch("puzzles.json?id=" + teamId, {headers: headers}) if (resp.ok) { - let categories = await resp.json(); + let categories = await resp.json() let cat_names = Object.keys(categories) cat_names.sort() for (let cat_name of cat_names) { @@ -178,17 +178,17 @@ async function fetchAll(teamId) { // Skip metadata continue } - let puzzles = categories[cat_name]; + let puzzles = categories[cat_name] for (let puzzle of puzzles) { - let url = "puzzle.html?cat=" + cat_name + "&points=" + puzzle[0] + "&pid=" + puzzle[1]; + let url = "puzzle.html?cat=" + cat_name + "&points=" + puzzle[0] + "&pid=" + puzzle[1] requests.push( fetch(url) .then( e => { - console.log("Fetched " + url); - })); + console.log("Fetched " + url) + })) } } } - return Promise.all(requests); + return Promise.all(requests) } function login(e) { @@ -240,8 +240,8 @@ function init() { } if (document.readyState === "loading") { - document.addEventListener("DOMContentLoaded", init); + document.addEventListener("DOMContentLoaded", init) } else { - init(); + init() } diff --git a/theme/scoreboard.html b/theme/scoreboard.html index 5f0742a..4524e88 100644 --- a/theme/scoreboard.html +++ b/theme/scoreboard.html @@ -7,121 +7,121 @@ diff --git a/theme/sw.js b/theme/sw.js index aee1efa..8bdb2b0 100644 --- a/theme/sw.js +++ b/theme/sw.js @@ -8,42 +8,42 @@ var content = [ "moth.js", "sw.js", "points.json", -]; +] self.addEventListener("install", function(e) { e.waitUntil( caches.open(cacheName).then(function(cache) { return cache.addAll(content).then( function() { - self.skipWaiting(); - }); + self.skipWaiting() + }) }) - ); -}); + ) +}) /* Attempt to fetch live resources, first, then fall back to cache */ self.addEventListener('fetch', function(event) { - let cache_used = false; + let cache_used = false event.respondWith( fetch(event.request) .catch(function(evt) { - //console.log("Falling back to cache for " + event.request.url); - cache_used = true; - return caches.match(event.request, {ignoreSearch: true}); + //console.log("Falling back to cache for " + event.request.url) + cache_used = true + return caches.match(event.request, {ignoreSearch: true}) }).then(function(res) { if (res && res.ok) { - let res_clone = res.clone(); + let res_clone = res.clone() if (! cache_used && event.request.method == "GET" ) { caches.open(cacheName).then(function(cache) { - cache.put(event.request, res_clone); - //console.log("Storing " + event.request.url + " in cache"); - }); + cache.put(event.request, res_clone) + //console.log("Storing " + event.request.url + " in cache") + }) } - return res; + return res } else { - console.log("Failed to retrieve resource"); + console.log("Failed to retrieve resource") } }) - ); -}); + ) +})