mirror of
				https://gitlab.com/animath/si/plateforme.git
				synced 2025-11-04 10:22:11 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			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 %}
 |