151 lines
7.2 KiB
Django/Jinja
151 lines
7.2 KiB
Django/Jinja
{% extends 'base.jinja' %}
|
|
|
|
{% set active_page = "race" %}
|
|
|
|
{% block title %}Formula 10{% endblock title %}
|
|
|
|
{% block body %}
|
|
|
|
<table class="table table-bordered">
|
|
<thead>
|
|
<tr>
|
|
<th scope="col" rowspan="2" class="text-center">Race</th>
|
|
<th scope="col" colspan="{{ users | length }}" class="text-center">Call</th>
|
|
<th scope="col" rowspan="2" class="text-center">Result</th>
|
|
</tr>
|
|
</thead>
|
|
|
|
<tbody>
|
|
|
|
{# Users List #}
|
|
<tr>
|
|
<td> </td>
|
|
|
|
{% for user in users %}
|
|
<td class="text-center">{{ user.name }}</td>
|
|
{% endfor %}
|
|
|
|
<td> </td>
|
|
</tr>
|
|
|
|
{# Next Race Guess #}
|
|
{% if nextrace is not none %}
|
|
<tr>
|
|
<td><span class="fw-bold">{{ nextrace.id }}:</span> {{ nextrace.grandprix }}</td>
|
|
|
|
{% for user in users %}
|
|
<td>
|
|
<form action="/guessrace/{{ nextrace.id }}/{{ user.name }}" method="post">
|
|
{# Driver PXX Select #}
|
|
<div class="form-floating">
|
|
<select name="pxxselect" class="form-select" aria-label="Select PXX">
|
|
{% set user_has_chosen = namespace(pxx="false") %}
|
|
|
|
{% for driver in drivers %}
|
|
{% if (user.name in nextguesses) and (nextguesses.get(user.name).pxx.abbr == driver.abbr) %}
|
|
{% set user_has_chosen.pxx = "true" %}
|
|
<option selected="selected" value="{{ driver.name }}">{{ driver.abbr }}</option>
|
|
{% else %}
|
|
<option value="{{ driver.name }}">{{ driver.abbr }}</option>
|
|
{% endif %}
|
|
{% endfor %}
|
|
|
|
{% if user_has_chosen.pxx == "false" %}
|
|
<option value="" selected="selected" disabled="disabled" hidden="hidden"></option>
|
|
{% endif %}
|
|
</select>
|
|
<label for="pxxselect" class="text-primary">P{{ nextrace.pxx }}:</label>
|
|
</div>
|
|
|
|
{# Driver DNF Select #}
|
|
<div class="form-floating mt-2">
|
|
<select name="dnfselect" class="form-select" aria-label="Select DNF">
|
|
{% set user_has_chosen = namespace(dnf="false") %}
|
|
|
|
{% for driver in drivers %}
|
|
{% if (user.name in nextguesses) and (nextguesses.get(user.name).dnf.abbr == driver.abbr) %}
|
|
{% set user_has_chosen.dnf = "true" %}
|
|
<option selected="selected" value="{{ driver.name }}">{{ driver.abbr }}</option>
|
|
{% else %}
|
|
<option value="{{ driver.name }}">{{ driver.abbr }}</option>
|
|
{% endif %}
|
|
{% endfor %}
|
|
|
|
{% if user_has_chosen.dnf == "false" %}
|
|
<option value="" selected="selected" disabled="disabled" hidden="hidden"></option>
|
|
{% endif %}
|
|
</select>
|
|
<label for="dnfselect" class="text-primary">DNF:</label>
|
|
</div>
|
|
|
|
<input type="submit" class="btn btn-primary mt-2 w-100" value="Save">
|
|
</form>
|
|
</td>
|
|
{% endfor %}
|
|
|
|
{# Enter Race Result #}
|
|
<td>
|
|
<form action="/enterresult/{{ nextrace.id }}" method="post">
|
|
{# Driver PXX Select #}
|
|
<div class="form-floating">
|
|
<select name="pxxselect" class="form-select" aria-label="Select PXX">
|
|
<option value="" selected disabled hidden></option>
|
|
{% for driver in drivers %}
|
|
<option value="{{ driver.name }}">{{ driver.abbr }}</option>
|
|
{% endfor %}
|
|
</select>
|
|
<label for="pxxselect" class="text-primary">P{{ nextrace.pxx }}:</label>
|
|
</div>
|
|
|
|
{# Driver DNF Select #}
|
|
<div class="form-floating mt-2">
|
|
<select name="dnfselect" class="form-select" aria-label="Select DNF">
|
|
<option value="" selected disabled hidden></option>
|
|
{% for driver in drivers %}
|
|
<option value="{{ driver.name }}">{{ driver.abbr }}</option>
|
|
{% endfor %}
|
|
</select>
|
|
<label for="dnfselect" class="text-primary">DNF:</label>
|
|
</div>
|
|
|
|
<input type="submit" class="btn btn-primary mt-2 w-100" value="Save">
|
|
</form>
|
|
</td>
|
|
</tr>
|
|
|
|
{# Race Results #}
|
|
{% for raceresult in raceresults %}
|
|
<tr>
|
|
<td><span class="fw-bold">{{ raceresult.race.id }}:</span> {{ raceresult.race.grandprix }}</td>
|
|
|
|
{% for user in users %}
|
|
<td>
|
|
{% if (raceresult.race_id in guesses) and (user.name in guesses.get(raceresult.race_id)) %}
|
|
{% set pxx = guesses.get(raceresult.race_id).get(user.name).pxx.abbr %}
|
|
{% set dnf = guesses.get(raceresult.race_id).get(user.name).dnf.abbr %}
|
|
<ul class="list-group list-group-flush">
|
|
<li class="list-group-item {% if pxx == raceresult.pxx.abbr %}text-success fw-bold{% endif %}">
|
|
P{{ raceresult.race.pxx }}: {{ pxx }}</li>
|
|
<li class="list-group-item {% if dnf == raceresult.dnf.abbr %}text-success fw-bold{% endif %}">
|
|
DNF: {{ dnf }}</li>
|
|
</ul>
|
|
{% endif %}
|
|
</td>
|
|
{% endfor %}
|
|
|
|
|
|
<td>
|
|
<ul class="list-group list-group-flush">
|
|
<li class="list-group-item">P{{ raceresult.race.pxx }}: {{ raceresult.pxx.abbr }}</li>
|
|
<li class="list-group-item {% if raceresult.dnf.abbr == 'NON' %}text-muted{% endif %}">
|
|
DNF: {{ raceresult.dnf.abbr }}</li>
|
|
</ul>
|
|
</td>
|
|
</tr>
|
|
{% endfor %}
|
|
{% endif %}
|
|
|
|
</tbody>
|
|
</table>
|
|
|
|
{% endblock body %} |