52 lines
1.4 KiB
Python
52 lines
1.4 KiB
Python
import json
|
|
|
|
from flask import render_template, jsonify
|
|
|
|
from app import app
|
|
from app.config import SCOREBOARD_DATA_FILE
|
|
from app.games import extract_game_info
|
|
|
|
|
|
@app.route("/")
|
|
def index():
|
|
return render_template("index.html")
|
|
|
|
|
|
@app.route("/scoreboard")
|
|
def get_scoreboard():
|
|
try:
|
|
with open(SCOREBOARD_DATA_FILE, "r") as json_file:
|
|
scoreboard_data = json.load(json_file)
|
|
except FileNotFoundError:
|
|
return jsonify({"error": "Failed to retrieve scoreboard data. File not found."})
|
|
except json.JSONDecodeError:
|
|
return jsonify(
|
|
{"error": "Failed to retrieve scoreboard data. Invalid JSON format."}
|
|
)
|
|
|
|
if scoreboard_data:
|
|
live_games = [
|
|
game
|
|
for game in extract_game_info(scoreboard_data)
|
|
if game["Game State"] == "LIVE"
|
|
]
|
|
pre_games = [
|
|
game
|
|
for game in extract_game_info(scoreboard_data)
|
|
if game["Game State"] == "PRE"
|
|
]
|
|
final_games = [
|
|
game
|
|
for game in extract_game_info(scoreboard_data)
|
|
if game["Game State"] == "FINAL"
|
|
]
|
|
return jsonify(
|
|
{
|
|
"live_games": live_games,
|
|
"pre_games": pre_games,
|
|
"final_games": final_games,
|
|
}
|
|
)
|
|
else:
|
|
return jsonify({"error": "Failed to retrieve scoreboard data"})
|