Fix: loadPGN ruft updateStandings() vor currentRound-Check auf, damit Requests tatsächlich ausgeführt werden

This commit is contained in:
2026-05-24 15:49:56 +02:00
parent 638ef0360f
commit 812cd3b24f

81
app.js
View File

@@ -27,6 +27,9 @@ async function loadPGN(showOverlay = true) {
hideError();
try {
// Zuerst Tabelle abrufen, um die aktuelle Runde zu ermitteln
await updateStandings();
if (currentRound === 0) {
if (showOverlay) showLoading(false);
return;
@@ -70,8 +73,7 @@ async function loadPGN(showOverlay = true) {
updateMovesList();
updateAllGamesList();
updateTimestamp();
updateStandings();
showLoading(false);
} catch (error) {
@@ -380,45 +382,42 @@ function updateAllGamesList() {
/**
* Lädt die Turniertabelle vom Proxy und zeigt Laras Platzierung an
*/
function updateStandings() {
fetch('http://localhost:8111/standings')
.then(res => {
if (!res.ok) throw new Error('Fehler beim Laden');
return res.json();
})
.then(data => {
if (data && data.round) currentRound = data.round;
const container = document.getElementById('standings-content');
if (!data || data.error) {
container.innerHTML = '<div class="standings-loading">Daten nicht verfügbar</div>';
return;
}
container.innerHTML = `
<div class="standings-rank">${data.rank}.</div>
<div class="standings-rank-label">Tabellenplatz</div>
<div class="standings-header">${data.round_info || 'nach Runde 1'}</div>
<div class="standings-row">
<span class="standings-label">Punkte</span>
<span class="standings-value">${data.points}</span>
</div>
<div class="standings-row">
<span class="standings-label">Siege</span>
<span class="standings-value">${data.wins}</span>
</div>
<div class="standings-row">
<span class="standings-label">Unentschieden</span>
<span class="standings-value">${data.draws}</span>
</div>
<div class="standings-row">
<span class="standings-label">Niederlagen</span>
<span class="standings-value">${data.losses}</span>
</div>
`;
})
.catch(err => {
document.getElementById('standings-content').innerHTML =
'<div class="standings-loading">Daten nicht verfügbar</div>';
});
async function updateStandings() {
try {
const res = await fetch('http://localhost:8111/standings');
if (!res.ok) throw new Error('Fehler beim Laden');
const data = await res.json();
if (data && data.round) currentRound = data.round;
const container = document.getElementById('standings-content');
if (!data || data.error) {
container.innerHTML = '<div class="standings-loading">Daten nicht verfügbar</div>';
return;
}
container.innerHTML = `
<div class="standings-rank">${data.rank}.</div>
<div class="standings-rank-label">Tabellenplatz</div>
<div class="standings-header">${data.round_info || 'nach Runde 1'}</div>
<div class="standings-row">
<span class="standings-label">Punkte</span>
<span class="standings-value">${data.points}</span>
</div>
<div class="standings-row">
<span class="standings-label">Siege</span>
<span class="standings-value">${data.wins}</span>
</div>
<div class="standings-row">
<span class="standings-label">Unentschieden</span>
<span class="standings-value">${data.draws}</span>
</div>
<div class="standings-row">
<span class="standings-label">Niederlagen</span>
<span class="standings-value">${data.losses}</span>
</div>
`;
} catch (err) {
document.getElementById('standings-content').innerHTML =
'<div class="standings-loading">Daten nicht verfügbar</div>';
}
}
/**