diff options
Diffstat (limited to 'index.html')
| -rw-r--r-- | index.html | 17 |
1 files changed, 13 insertions, 4 deletions
@@ -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> |
