send start time

This commit is contained in:
sto 2025-06-23 19:22:19 +02:00
parent 44a0b5c464
commit 5d1390c480
2 changed files with 13 additions and 4 deletions

View File

@ -1,7 +1,7 @@
{ {
"name": "Puzzle leaderboard tracker", "name": "Puzzle leaderboard tracker",
"description": "Base Level Extension", "description": "Base Level Extension",
"version": "1.1", "version": "1.1.1",
"manifest_version": 3, "manifest_version": 3,
"action": { "action": {
"default_popup": "popup.html", "default_popup": "popup.html",

View File

@ -61,6 +61,7 @@ function startContest() {
document.getElementById('reset-button').style.display = 'none'; document.getElementById('reset-button').style.display = 'none';
document.getElementById('messages').innerHTML = ''; document.getElementById('messages').innerHTML = '';
if (showMessages) switchMessages(); if (showMessages) switchMessages();
sendStartTime(startTime);
} }
function endContest() { function endContest() {
@ -104,13 +105,21 @@ function switchConnectForm() {
showConnect = !showConnect; showConnect = !showConnect;
} }
async function sendStartTime(startTime) {
const data = await chrome.storage.local.get(['puzzleScoreboard']);
if (!data?.puzzleScoreboard || !data.puzzleScoreboard.includes('/message')) return;
fetch(data.puzzleScoreboard.replace('/message', '/start'), {
method: "post",
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({startTime}),
});
}
async function scoreboardConnect(puzzleScoreboard) { async function scoreboardConnect(puzzleScoreboard) {
if (puzzleScoreboard.includes('/message')) { if (puzzleScoreboard.includes('/message')) {
const resp = await fetch(puzzleScoreboard.replace('/message', '/connect'), { const resp = await fetch(puzzleScoreboard.replace('/message', '/connect'), {
method: "post", method: "post",
headers: { headers: {'Content-Type': 'application/json'},
'Content-Type': 'application/json',
},
}); });
if (resp.status != 200) return {connected: false, error: 'Invalid contest token'}; if (resp.status != 200) return {connected: false, error: 'Invalid contest token'};
const json = await resp.json(); const json = await resp.json();