// Function to fetch scoreboard data using AJAX function fetchScoreboardData() { var xhr = new XMLHttpRequest(); xhr.open("GET", "/scoreboard", true); xhr.onreadystatechange = function () { if (xhr.readyState === XMLHttpRequest.DONE) { if (xhr.status === 200) { updateScoreboard(JSON.parse(xhr.responseText)); } else { console.error("Failed to fetch scoreboard data."); } } }; xhr.send(); } // Function to update scoreboard with fetched data function updateScoreboard(data) { var liveGamesSection = document.getElementById("live-games-section"); var preGamesSection = document.getElementById('pre-games-section'); var finalGamesSection = document.getElementById('final-games-section'); if (liveGamesSection) { var liveGamesExist = data && data.live_games && data.live_games.length > 0; if (liveGamesExist) { document.getElementById('live-games').innerText = "Live Games" liveGamesSection.innerHTML = generateGameBoxes(data.live_games, 'LIVE'); } } if (preGamesSection) { var preGamesExist = data && data.pre_games && data.pre_games.length > 0; if (preGamesExist) { document.getElementById('on-later').innerText = "On Later" preGamesSection.innerHTML = generateGameBoxes(data.pre_games, 'PRE'); } } if (finalGamesSection) { var finalGamesExist = data && data.final_games && data.final_games.length > 0; if (finalGamesExist) { document.getElementById('game-over').innerText = "Game Over" finalGamesSection.innerHTML = generateGameBoxes(data.final_games, 'FINAL'); } } } // Function to generate HTML for game boxes function generateGameBoxes(games, state) { var html = ''; games.forEach(function(game) { if (game['Game State'] === state) { html += '