mirror of
https://gitlab.com/animath/si/plateforme.git
synced 2024-12-26 19:42:22 +00:00
266afaf5c9
Signed-off-by: Emmy D'Anello <emmy.danello@animath.fr>
170 lines
8.6 KiB
HTML
170 lines
8.6 KiB
HTML
{% extends "base.html" %}
|
|
|
|
{% load django_tables2 i18n %}
|
|
|
|
{% block content %}
|
|
<div class="card bg-body shadow">
|
|
<div class="card-header text-center">
|
|
<h4>
|
|
{{ pool }}
|
|
{% if user.registration.is_admin or user.registration in pool.tournament.organizers.all %}
|
|
<button class="btn btn-sm btn-secondary" data-bs-toggle="modal" data-bs-target="#updatePoolModal">
|
|
<i class="fas fa-edit"></i>
|
|
{% trans "Update" %}
|
|
</button>
|
|
{% endif %}
|
|
</h4>
|
|
</div>
|
|
<div class="card-body">
|
|
<dl class="row">
|
|
<dt class="col-sm-3">{% trans "Tournament:" %}</dt>
|
|
<dd class="col-sm-9"><a href="{{ pool.tournament.get_absolute_url }}">{{ pool.tournament }}</a></dd>
|
|
|
|
<dt class="col-sm-3">{% trans "Round:" %}</dt>
|
|
<dd class="col-sm-9">{{ pool.get_round_display }}</dd>
|
|
|
|
<dt class="col-sm-3">{% trans "Letter:" %}</dt>
|
|
<dd class="col-sm-9">{{ pool.get_letter_display }}</dd>
|
|
|
|
{% if pool.participations.count == 5 %}
|
|
<dt class="col-sm-3">{% trans "Room:" %}</dt>
|
|
<dd class="col-sm-9">{{ pool.get_room_display }}</dd>
|
|
{% endif %}
|
|
|
|
<dt class="col-sm-3">{% trans "Teams:" %}</dt>
|
|
<dd class="col-sm-9">
|
|
{% for participation in pool.participations.all %}
|
|
<a href="{{ participation.get_absolute_url }}">{{ participation.team }}{% if not forloop.last %}, {% endif %}</a>
|
|
{% endfor %}
|
|
</dd>
|
|
|
|
<dt class="col-sm-3">{% trans "Juries:" %}</dt>
|
|
<dd class="col-sm-9">
|
|
{{ pool.juries.all|join:", " }}
|
|
<a class="badge rounded-pill text-bg-info" href="{% url 'participation:pool_jury' pk=pool.pk %}">
|
|
<i class="fas fa-plus"></i> {% trans "Edit jury" %}
|
|
</a>
|
|
</dd>
|
|
|
|
<dt class="col-sm-3">{% trans "Defended solutions:" %}</dt>
|
|
<dd class="col-sm-9">
|
|
{% for passage in pool.passages.all %}
|
|
<a href="{{ passage.defended_solution.file.url }}">{{ passage.defender.team.trigram }} — {{ passage.get_solution_number_display }}</a>{% if not forloop.last %}, {% endif %}
|
|
{% endfor %}
|
|
<a href="{% url 'participation:pool_download_solutions' pool_id=pool.id %}" class="badge rounded-pill text-bg-secondary">
|
|
<i class="fas fa-download"></i> {% trans "Download all" %}
|
|
</a>
|
|
</dd>
|
|
|
|
<dt class="col-sm-3">{% trans "Syntheses:" %}</dt>
|
|
<dd class="col-sm-9">
|
|
<ul class="list-group list-group-flush">
|
|
{% for passage in pool.passages.all %}
|
|
<li class="list-group-item">
|
|
{{ passage.defender.team.trigram }} — {{ passage.get_solution_number_display }} :
|
|
{% for synthesis in passage.syntheses.all %}
|
|
<a href="{{ synthesis.file.url }}">{{ synthesis.participation.team.trigram }} ({{ synthesis.get_type_display }})</a>{% if not forloop.last %}, {% endif %}
|
|
{% empty %}
|
|
{% trans "No synthesis was uploaded yet." %}
|
|
{% endfor %}
|
|
</li>
|
|
{% endfor %}
|
|
</ul>
|
|
<a href="{% url 'participation:pool_download_syntheses' pool_id=pool.id %}" class="badge rounded-pill text-bg-secondary">
|
|
<i class="fas fa-download"></i> {% trans "Download all" %}
|
|
</a>
|
|
</dd>
|
|
|
|
{% if pool.bbb_url %}
|
|
<dt class="col-sm-3">{% trans "BigBlueButton link:" %}</dt>
|
|
<dd class="col-sm-9">{{ pool.bbb_url|urlize }}</dd>
|
|
{% endif %}
|
|
|
|
{% if user.registration.is_admin or user.registration.is_volunteer %}
|
|
{% if user.registration.is_admin or user.registration in pool.tournament.organizers.all or user.registration == pool.jury_president %}
|
|
<dt class="col-sm-3">{% trans "Notation sheets:" %}</dt>
|
|
<dd class="col-sm-9">
|
|
<div class="btn-group">
|
|
<a class="btn btn-sm btn-info" href="{% url 'participation:pool_scale_note_sheet' pk=pool.pk %}">
|
|
<i class="fas fa-download"></i>
|
|
{% trans "Download the scale sheet" %}
|
|
</a>
|
|
<a class="btn btn-sm btn-info" href="{% url 'participation:pool_final_note_sheet' pk=pool.pk %}">
|
|
<i class="fas fa-download"></i>
|
|
{% trans "Download the final notation sheet" %}
|
|
</a>
|
|
<a class="btn btn-sm btn-info" href="{% url 'participation:pool_notation_sheets' pool_id=pool.id %}">
|
|
<i class="fas fa-archive"></i>
|
|
{% trans "Download all notation sheets" %}
|
|
</a>
|
|
</div>
|
|
</dd>
|
|
|
|
<dt class="col-sm-3">{% trans "Google Sheets Spreadsheet:" %}</dt>
|
|
<dd class="col-sm-9">
|
|
<a class="btn btn-sm btn-success" href="https://docs.google.com/spreadsheets/d/{{ pool.tournament.notes_sheet_id }}/edit">
|
|
<i class="fas fa-table"></i>
|
|
{% trans "Go to the Google Sheets page of the pool" %}
|
|
</a>
|
|
</dd>
|
|
{% endif %}
|
|
{% endif %}
|
|
</dl>
|
|
|
|
<div class="card bg-body shadow">
|
|
<div class="card-header text-center">
|
|
<h5>{% trans "Ranking" %}</h5>
|
|
</div>
|
|
<div class="card-body">
|
|
<ul>
|
|
{% for participation, note in notes %}
|
|
<li><strong>{{ participation.team }} :</strong> {{ note|floatformat }}</li>
|
|
{% endfor %}
|
|
</ul>
|
|
</div>
|
|
{% if user.registration.is_admin or user.registration.is_volunteer %}
|
|
{% if user.registration.is_admin or user.registration in pool.tournament.organizers.all or user.registration == pool.jury_president %}
|
|
<div class="card-footer text-center">
|
|
<div class="btn btn-group">
|
|
<button class="btn btn-sm btn-primary" data-bs-toggle="modal" data-bs-target="#uploadNotesModal">
|
|
<i class="fas fa-upload"></i>
|
|
{% trans "Upload notes from a spreadsheet file" %}
|
|
</button>
|
|
<a class="btn btn-sm btn-info" href="{% url 'participation:pool_notes_template' pk=pool.pk %}">
|
|
<i class="fas fa-download"></i>
|
|
{% trans "Download notation spreadsheet" %}
|
|
</a>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<hr>
|
|
|
|
<h3>{% trans "Passages" %}</h3>
|
|
|
|
{% render_table passages %}
|
|
|
|
{% trans "Update pool" as modal_title %}
|
|
{% trans "Update" as modal_button %}
|
|
{% url "participation:pool_update" pk=pool.pk as modal_action %}
|
|
{% include "base_modal.html" with modal_id="updatePool" %}
|
|
|
|
{% trans "Upload notes" as modal_title %}
|
|
{% trans "Upload" as modal_button %}
|
|
{% url "participation:pool_upload_notes" pk=pool.pk as modal_action %}
|
|
{% include "base_modal.html" with modal_id="uploadNotes" modal_button_type="success" modal_enctype="multipart/form-data" %}
|
|
{% endblock %}
|
|
|
|
{% block extrajavascript %}
|
|
<script>
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
initModal("updatePool", "{% url "participation:pool_update" pk=pool.pk %}")
|
|
initModal("uploadNotes", "{% url "participation:pool_upload_notes" pk=pool.pk %}")
|
|
})
|
|
</script>
|
|
{% endblock %}
|