summaryrefslogtreecommitdiff
path: root/src/match_up/routes.py
diff options
context:
space:
mode:
authorKaran Jayachandra <mail@karanjayachandra.com>2024-11-09 14:17:20 +0100
committerKaran Jayachandra <mail@karanjayachandra.com>2024-11-09 14:17:20 +0100
commit6d8e46354f6ed8d22fbbbbb1258781182effe529 (patch)
tree6ce08df49bfa0e35886b766e5c45fdc7b44c9328 /src/match_up/routes.py
parent5b01707a04c362ced66428bef8e0234176d212d9 (diff)
Seperated the routes to a different file
Diffstat (limited to 'src/match_up/routes.py')
-rw-r--r--src/match_up/routes.py82
1 files changed, 82 insertions, 0 deletions
diff --git a/src/match_up/routes.py b/src/match_up/routes.py
new file mode 100644
index 0000000..528fa4e
--- /dev/null
+++ b/src/match_up/routes.py
@@ -0,0 +1,82 @@
+from match_up import app, re, rg
+from flask import render_template, request, url_for
+
+@app.route("/", methods=["GET"])
+def home():
+ template = re.get_template("index.j2").render(url_for=url_for)
+ return template
+
+
+@app.route("/time", methods=["GET"])
+def get_time():
+ mins, secs = rg.timer.get()
+ t = re.from_string('{% from "macros.j2" import timer %}{{timer(mins, secs)}}')
+ return render_template(t, mins=mins, secs=secs)
+
+
+@app.route("/control", methods=["GET"])
+def get_controls():
+ return render_template("controls.j2", courts=rg.courts.get_courts())
+
+
+@app.route("/guests", methods=["GET"])
+def get_guests():
+ t = re.from_string('{% from "macros.j2" import guests %}{{guests(count)}}')
+ return render_template(t, count=rg.players.guests)
+
+
+@app.route("/decrement", methods=["POST"])
+def increment_guests():
+ t = re.from_string('{% from "macros.j2" import guests %}{{guests(count)}}')
+ return render_template(t, count=rg.players.decrement_guests())
+
+
+@app.route("/increment", methods=["POST"])
+def decrement_guests():
+ t = re.from_string('{% from "macros.j2" import guests %}{{guests(count)}}')
+ return render_template(t, count=rg.players.increment_guests())
+
+
+@app.route("/propose", methods=["POST"])
+def get_random_games():
+ levels = int(request.form["type"].split()[0])
+ return render_template("games.j2", games=rg.propose(levels), title="Proposal")
+
+
+@app.route("/confirm", methods=["POST"])
+def confirm_games():
+ return render_template("games.j2", games=rg.confirm(), title=f"Round: {rg.round}")
+
+
+@app.route("/clear", methods=["POST"])
+def clear_games():
+ return render_template("games.j2", games=rg.clear(), title=f"Round: {rg.round}")
+
+
+@app.route("/player-toggle/<player_request>", methods=["POST"])
+def toggle_player(player_request):
+ id = int(player_request)
+ status, name = rg.players.toggle_player_status(id)
+ t = re.from_string(
+ '{% from "macros.j2" import player %}{{player(id, status, name)}}'
+ )
+ return render_template(t, id=id, status=status, name=name)
+
+
+@app.route("/players", methods=["GET"])
+def get_list_of_players():
+ template = re.get_template("players.j2").render(players=rg.players.get_players(), url_for=url_for)
+ return template
+
+
+@app.route("/court-toggle/<court_number>", methods=["POST"])
+def toggle_court(court_number):
+ id = int(court_number)
+ status = rg.courts.toggle_court_status(id)
+ t = re.from_string('{% from "macros.j2" import court %}{{ court(id, status) }}')
+ return render_template(t, id=id, status=status)
+
+
+@app.route("/courts", methods=["GET"])
+def get_list_of_courts():
+ return render_template("courts.j2", courts=rg.courts.get_courts()) \ No newline at end of file