You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
369 lines
19 KiB
369 lines
19 KiB
{% extends 'tournaments/base.html' %}
|
|
|
|
{% block head_title %}{{ tournament.display_name }} : Informations{% endblock %}
|
|
{% block first_title %}{{ tournament.event.display_name }}{% endblock %}
|
|
{% block second_title %}{{ tournament.display_name }}{% endblock %}
|
|
{% block title_link %}{% url 'tournament' tournament.id %}{% endblock %}
|
|
{% block meta_desc %}Toutes les informations sur le {{ tournament.display_name }}. Vous trouverez toutes les infos pratiques: horaires, prix, contact...{% endblock %}
|
|
{% block meta_keywords %}informations{% endblock %}
|
|
|
|
{% block content %}
|
|
{% include 'tournaments/navigation_tournament.html' %}
|
|
|
|
{% load static %}
|
|
{% load tz %}
|
|
|
|
<div class="grid-x">
|
|
{% if tournament.enable_online_registration and team %}
|
|
<div class="cell medium-12 large-6 padding10">
|
|
<h1 class="club padding10">Votre équipe</h1 >
|
|
<div class="bubble">
|
|
{% if messages %}
|
|
<div class="messages">
|
|
{% for message in messages %}
|
|
<div class="alert {% if message.tags %}alert-{{ message.tags }}{% endif %}">
|
|
{{ message }}
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
{% endif %}
|
|
<div class="alert">
|
|
{% if team.is_in_waiting_list >= 0 %}
|
|
Tournoi complet, vous êtes en liste d'attente.
|
|
<div>
|
|
{% if team.is_in_waiting_list == 1 %}
|
|
{{ team.is_in_waiting_list }} équipe en liste d'attente devant vous
|
|
{% elif team.is_in_waiting_list > 1 %}
|
|
{{ team.is_in_waiting_list }} équipes en liste d'attente devant vous
|
|
{% elif team.is_in_waiting_list == 0 %}
|
|
vous êtes la première équipe en liste d'attente.
|
|
{% endif %}
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
|
|
<div class="semibold">
|
|
{% for player in team.players_sorted_by_rank %}
|
|
<div>{{ player.name }}</div>
|
|
{% endfor %}
|
|
</div>
|
|
</p>
|
|
<p>
|
|
<div>Inscrits le {{ team.local_registration_date }}</div>
|
|
</p>
|
|
|
|
{% if team.needs_confirmation %}
|
|
<h4 class="semibold">Confirmation requise</h4>
|
|
{% if tournament.should_request_payment and tournament.online_payment_is_mandatory %}
|
|
<div>Vous devez payer votre inscription pour confirmer votre participation.</div>
|
|
{% endif %}
|
|
{% if team.get_confirmation_deadline %}
|
|
{% if team.is_confirmation_expired %}
|
|
<p class="alert alert-danger">
|
|
Le délai de confirmation est expiré. Votre place a été proposée à une autre équipe.
|
|
</p>
|
|
{% else %}
|
|
<div>Vous devez confirmer votre participation avant le : </div>
|
|
<p class="semibold alert">{{ team.format_confirmation_deadline }}</p>
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
|
|
{% if team.call_date %}
|
|
<div class="topmargin20">
|
|
<h4 class="semibold">Convocation</h4>
|
|
<div>
|
|
Vous avez été convoqué(e)s le {{ team.local_call_date|date:"d/m/Y à H:i" }}
|
|
</div>
|
|
|
|
{% if team.confirmation_date %}
|
|
<div class="success-message">
|
|
<span class="icon">✅</span> Convocation confirmée le {{ team.confirmation_date|date:"d/m/Y à H:i" }}
|
|
</div>
|
|
{% else %}
|
|
<div>
|
|
Merci de confirmer la réception de votre convocation.
|
|
</div>
|
|
<form method="post" action="{% url 'confirm_call' tournament.id %}">
|
|
{% csrf_token %}
|
|
<button type="submit" class="rounded-button positive-button">
|
|
Confirmer la réception
|
|
</button>
|
|
</form>
|
|
{% endif %}
|
|
</div>
|
|
{% endif %}
|
|
|
|
<!-- Payment status information -->
|
|
{% if tournament.should_request_payment and team.is_in_waiting_list < 0 %}
|
|
<div class="topmargin20">
|
|
{% if team.is_paid %}
|
|
<div class="success-message topmargin20">
|
|
<span class="icon">✅</span> Paiement confirmé
|
|
</div>
|
|
{% else %}
|
|
<a href="{% url 'proceed_to_payment' tournament.id %}" class="rounded-button positive-button">
|
|
{% if team.needs_confirmation %}
|
|
Confirmer en payant {{ team.get_remaining_fee_formatted }}
|
|
{% else %}
|
|
Procéder au paiement de {{ team.get_remaining_fee_formatted }}
|
|
{% endif %}
|
|
</a>
|
|
{% endif %}
|
|
</div>
|
|
{% endif %}
|
|
{% if team.needs_confirmation and tournament.online_payment_is_mandatory is False %}
|
|
<div class="topmargin20">
|
|
<form method="post" action="{% url 'confirm_tournament_registration' tournament.id %}">
|
|
{% csrf_token %}
|
|
<button type="submit" class="rounded-button positive-button">
|
|
Confirmer ma participation
|
|
</button>
|
|
</form>
|
|
</div>
|
|
{% endif %}
|
|
|
|
{% if tournament.enable_online_payment %}
|
|
<div class="topmargin20">
|
|
{% if tournament.enable_online_payment_refund is False %}
|
|
<p class="minor info">
|
|
Le remboursement en ligne automatique n'est pas autorisé pour ce tournoi.
|
|
</p>
|
|
{% endif %}
|
|
{% if tournament.refund_date_limit %}
|
|
<div>Remboursement en ligne automatique possible jusqu'au {{ tournament.refund_date_limit|date:"d/m/Y à H:i" }}</div>
|
|
{% endif %}
|
|
</div>
|
|
{% endif %}
|
|
|
|
{% if tournament.is_unregistration_possible and team.is_unregistration_possible %}
|
|
<div class="topmargin20">
|
|
{% if tournament.is_refund_possible and team.is_paid %}
|
|
<p class="minor info">
|
|
Si vous vous désinscrivez, votre inscription sera remboursée automatiquement sur votre carte bancaire.
|
|
</p>
|
|
{% elif tournament.is_refund_possible is False and team.is_paid %}
|
|
<p class="minor info">
|
|
Si vous vous désinscrivez, votre inscription ne sera pas remboursée automatiquement. Veuillez contacter le juge-arbitre.
|
|
{% if tournament.refund_date_limit %}
|
|
<div>Remboursement possible jusqu'au {{ tournament.refund_date_limit|date:"d/m/Y à H:i" }}</div>
|
|
{% endif %}
|
|
</p>
|
|
{% endif %}
|
|
<div style="margin-top: 40px;">
|
|
<a href="{% url 'unregister_tournament' tournament.id %}"
|
|
class="rounded-button destructive-button"
|
|
onclick="return confirm('Êtes-vous sûr de vouloir vous désinscrire ?{% if tournament.is_refund_possible and team.is_paid %} Votre inscription sera remboursée automatiquement.{% endif %}');">
|
|
{% if team.is_in_waiting_list >= 0 %}
|
|
Se retirer de la liste d'attente
|
|
{% else %}
|
|
Se désinscrire
|
|
{% endif %}
|
|
</a>
|
|
</div>
|
|
{% else %}
|
|
<div class="topmargin20">
|
|
<p class="minor info">
|
|
La désinscription en ligne n'est plus possible. Veuillez contacter directement le juge-arbitre si besoin.
|
|
</p>
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
<div class="cell medium-12 large-6 padding10">
|
|
<h1 class="club padding10">{{ tournament.full_name }}</h1>
|
|
<div class="bubble">
|
|
<div class="semibold">{{ tournament.local_start_date_formatted }}</div>
|
|
{% if not tournament.is_custom_animation %}
|
|
<div>{{ tournament.day_duration_formatted }}</div>
|
|
<div>{{ tournament.court_count }} piste{{ tournament.court_count|pluralize }}</div>
|
|
{% endif %}
|
|
<p>
|
|
</p>
|
|
|
|
<hr/>
|
|
|
|
<p>
|
|
<a href="{% url 'index' %}?club={{ tournament.event.club.id }}" class="topmargin5 orange">
|
|
<div class="semibold">{{ tournament.event.club.name }}</div>
|
|
{% if tournament.has_club_address %}
|
|
<div>{{ tournament.event.club.address }}</div>
|
|
<div>{{ tournament.event.club.city_zipcode }}</div>
|
|
{% endif %}
|
|
</a>
|
|
</p>
|
|
|
|
{% if tournament.event.tournaments.count > 1 %}
|
|
<p>
|
|
<a href="{% url 'event' tournament.event.id %}" class="topmargin5 orange">
|
|
<div class="semibold">Voir les autres tournois de l'événement{% if tournament.event.name %} {{ tournament.event.name }}{% endif %}</div>
|
|
</a>
|
|
</p>
|
|
{% endif %}
|
|
<hr/>
|
|
|
|
{% if not tournament.is_custom_animation %}
|
|
<p>
|
|
{% if tournament.umpire_contact %}
|
|
<div class="semibold">Organisateur</div>
|
|
<div>{{ tournament.umpire_contact }}</div>
|
|
{% endif %}
|
|
{% if tournament.umpire_mail and tournament.hide_umpire_mail is False %}
|
|
<div><a href="mailto:{{ tournament.umpire_mail }}" class="styled-link">{{ tournament.umpire_mail }}</a></div>
|
|
{% endif %}
|
|
{% if tournament.umpire_phone and tournament.hide_umpire_phone is False %}
|
|
<div><a href="tel:{{ tournament.umpire_phone }}" class="styled-link">{{ tournament.umpire_phone }}</a></div>
|
|
{% endif %}
|
|
</p>
|
|
{% endif %}
|
|
{% if tournament.information %}
|
|
<p>
|
|
<div class="semibold">Infos</div>
|
|
<div class="tournament-info">
|
|
{{ tournament.information|linebreaksbr|urlize }}</div>
|
|
</p>
|
|
{% endif %}
|
|
|
|
{% if tournament.options_fee %}
|
|
<p>
|
|
{% if not tournament.is_custom_animation %}
|
|
<div class="semibold">Frais d'inscription</div>
|
|
{% endif %}
|
|
<ul>
|
|
{% for option in tournament.options_fee %}
|
|
<li>{{ option }}</li>
|
|
{% endfor %}
|
|
</ul>
|
|
</p>
|
|
{% endif %}
|
|
{% with status=tournament.get_online_registration_status %}
|
|
{% if tournament.enable_online_registration %}
|
|
{% if not tournament.is_custom_animation %}
|
|
<p>
|
|
<div class="semibold">Inscription en ligne</div>
|
|
|
|
{% if tournament.options_online_registration %}
|
|
<ul>
|
|
{% for option in tournament.options_online_registration %}
|
|
<li>{{ option }}</li>
|
|
{% endfor %}
|
|
</ul>
|
|
{% endif %}
|
|
</p>
|
|
|
|
<p>
|
|
<div class="semibold">
|
|
{% if tournament.registration_count_display %}
|
|
<div>{{ tournament.registration_count_display }}</div>
|
|
{% else %}
|
|
<div>Aucune équipe inscrite</div>
|
|
{% endif %}
|
|
</div>
|
|
</p>
|
|
|
|
<p>
|
|
<div class="semibold">
|
|
{{ status.status_localized }}
|
|
</div>
|
|
</p>
|
|
{% endif %}
|
|
{% endif %}
|
|
|
|
{% if status.display_register_option and team is None %}
|
|
{% if tournament.account_is_required is False or user.is_authenticated and user.is_active %}
|
|
{% if player_register_check is None %}
|
|
<p>
|
|
<div>
|
|
<a href="{% url 'register_tournament' tournament.id %}" class="rounded-button">{{ status.register_button_text }}</a>
|
|
</div>
|
|
</p>
|
|
{% else %}
|
|
<p>
|
|
<div class="semibold">
|
|
Vous ne pouvez pas vous inscrire à ce tournoi.
|
|
</div>
|
|
<div class="alert">
|
|
{% for reason in player_register_check %}
|
|
<div>{{ reason }}</div>
|
|
{% endfor %}
|
|
</div>
|
|
</p>
|
|
{% endif %}
|
|
{% else %}
|
|
<p>
|
|
<div>
|
|
<a href="{% url 'login' %}?next={{ request.path }}" class="styled-link">Connectez-vous !</a>
|
|
</div>
|
|
</p>
|
|
|
|
<p>
|
|
<div>
|
|
Vous avez besoin d'un compte Padel Club pour pouvoir vous inscrire en ligne.
|
|
</div>
|
|
<div>
|
|
<a href="{% url 'signup' %}?next={{ request.path }}" class="styled-link">Créez le tout de suite !</a>
|
|
</div>
|
|
</p>
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endwith %}
|
|
</div>
|
|
</div>
|
|
<!-- Sponsors Section -->
|
|
{% if tournament.event.images.exists %}
|
|
<div class="cell medium-12 large-6 padding10">
|
|
<h1 class="club padding10">Sponsors</h1>
|
|
<div class="bubble">
|
|
<div style="display: flex; flex-wrap: wrap; justify-content: left; gap: 30px; align-items: left;">
|
|
{% for image in tournament.event.images.all %}
|
|
<div style="text-align: center;">
|
|
<a href="{{ image.image.url }}" target="_blank" title="{{ image.title|default:'Sponsor' }}{% if image.description %}: {{ image.description }}{% endif %}">
|
|
<img src="{{ image.image.url }}" alt="{{ image.title|default:'Sponsor' }}"
|
|
style="width: 128px; height: 128px; object-fit: contain; border-radius: 0px; border: 0px solid #eee; padding: 0px">
|
|
</a>
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
|
|
<!-- Debug: Image URLs (Only visible to staff) -->
|
|
{% if user.is_staff %}
|
|
<div class="cell medium-12 large-6 padding10">
|
|
<h1 class="club padding10">Debug: Image URLs</h1>
|
|
<div class="bubble">
|
|
<table style="width: 100%; font-family: monospace; font-size: 12px; border-collapse: collapse;">
|
|
<thead>
|
|
<tr style="border-bottom: 1px solid #ccc; text-align: left;">
|
|
<th style="padding: 5px;">ID</th>
|
|
<th style="padding: 5px;">Type</th>
|
|
<th style="padding: 5px;">Title</th>
|
|
<th style="padding: 5px;">Primary</th>
|
|
<th style="padding: 5px;">URL</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{% for image in tournament.event.images.all %}
|
|
<tr style="border-bottom: 1px solid #eee;">
|
|
<td style="padding: 5px;">{{ image.id }}</td>
|
|
<td style="padding: 5px;">{{ image.image_type }}</td>
|
|
<td style="padding: 5px;">{{ image.title|default:"Untitled" }}</td>
|
|
<td style="padding: 5px;">{{ image.order }}</td>
|
|
<td style="padding: 5px;"><a href="{{ image.image.url }}" target="_blank">{{ image.image.url }}</a></td>
|
|
</tr>
|
|
{% empty %}
|
|
<tr>
|
|
<td colspan="5" style="padding: 10px; text-align: center;">No images found for this event.</td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
|
|
{% endblock %}
|
|
|