aboutsummaryrefslogtreecommitdiff
path: root/index.html
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fischer@muhq.space>2026-06-28 15:44:06 +0200
committerFlorian Fischer <florian.fischer@muhq.space>2026-06-28 15:45:37 +0200
commit2d12f1d9a8ec4a6604dc4de119aace633043b29e (patch)
treefc20e0f9a37d46a0d45d8a3327e6686e9d971a81 /index.html
parentbf4c9866949a24ebbccdc488a8543a2e4e0f444c (diff)
downloadticket-counter-2d12f1d9a8ec4a6604dc4de119aace633043b29e.tar.gz
ticket-counter-2d12f1d9a8ec4a6604dc4de119aace633043b29e.zip
use the server startup time to drop old cached tickets
Diffstat (limited to 'index.html')
-rw-r--r--index.html17
1 files changed, 13 insertions, 4 deletions
diff --git a/index.html b/index.html
index bb1b6ca..bcda425 100644
--- a/index.html
+++ b/index.html
@@ -80,7 +80,7 @@ button {
function requestHelp() {
new HttpClient().get("new", (myNumber) => {
myTicket = myNumber;
- localStorage.setItem("my-ticket", myTicket);
+ localStorage.setItem("my-ticket", JSON.stringify({"t": myTicket, "e": Date.now()}));
showTicket();
});
}
@@ -119,9 +119,17 @@ button {
var myTicket;
function init() {
- myTicket = localStorage.getItem("my-ticket");
- if (myTicket)
- showTicket();
+ const cached = JSON.parse(localStorage.getItem("my-ticket"));
+ if (!cached) return;
+
+ const serverEpoch = Date.parse(document.getElementById("epoch").textContent);
+ if (cached.e < serverEpoch) {
+ localStorage.removeItem("my-ticket");
+ return;
+ }
+
+ myTicket = cached.t;
+ showTicket();
}
if (document.readyState === "loading") {
@@ -133,6 +141,7 @@ button {
</script>
</head>
<body>
+ <div id="epoch" style="display: none;">{{.StartTime}}</div>
<div id="next">
Nächstes Hilfe Ticket
<span id="done">{{.Done}}</span>