From 943446368d7f2b77cdd594210da9dc9542609620 Mon Sep 17 00:00:00 2001 From: sbosse Date: Mon, 21 Jul 2025 23:12:49 +0200 Subject: [PATCH] Mon 21 Jul 22:43:21 CEST 2025 --- js/web/HackTimerWorker.js | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 js/web/HackTimerWorker.js diff --git a/js/web/HackTimerWorker.js b/js/web/HackTimerWorker.js new file mode 100644 index 0000000..336419d --- /dev/null +++ b/js/web/HackTimerWorker.js @@ -0,0 +1,37 @@ +var fakeIdToId = {}; +onmessage = function (event) { + var data = event.data, + name = data.name, + fakeId = data.fakeId, + time; + if(data.hasOwnProperty('time')) { + time = data.time; + } + switch (name) { + case 'setInterval': + fakeIdToId[fakeId] = setInterval(function () { + postMessage({fakeId: fakeId}); + }, time); + break; + case 'clearInterval': + if (fakeIdToId.hasOwnProperty (fakeId)) { + clearInterval(fakeIdToId[fakeId]); + delete fakeIdToId[fakeId]; + } + break; + case 'setTimeout': + fakeIdToId[fakeId] = setTimeout(function () { + postMessage({fakeId: fakeId}); + if (fakeIdToId.hasOwnProperty (fakeId)) { + delete fakeIdToId[fakeId]; + } + }, time); + break; + case 'clearTimeout': + if (fakeIdToId.hasOwnProperty (fakeId)) { + clearTimeout(fakeIdToId[fakeId]); + delete fakeIdToId[fakeId]; + } + break; + } +}