diff --git a/bda/templates/liste-reventes.html b/bda/templates/liste-reventes.html index 1920256f..2a5ddc95 100644 --- a/bda/templates/liste-reventes.html +++ b/bda/templates/liste-reventes.html @@ -3,6 +3,9 @@ {% block realcontent %}

Inscriptions pour BDA-Revente

+ {% if deja_revente %} +

Des reventes existent déjà pour certains de ces spectacles ; vérifie les places disponibles sans tirage !

+ {% endif %}
{% csrf_token %} {{form | bootstrap}} diff --git a/bda/views.py b/bda/views.py index 8c92f4ab..dc1f4cb2 100644 --- a/bda/views.py +++ b/bda/views.py @@ -381,6 +381,7 @@ def list_revente(request, tirage_id): spectacles = tirage.spectacle_set.filter( date__gte=timezone.now()) shotgun = [] + deja_revente = False for spectacle in spectacles: revente_objects = SpectacleRevente.objects.filter( attribution__spectacle=spectacle, @@ -399,13 +400,25 @@ def list_revente(request, tirage_id): choices = form.cleaned_data['spectacles'] participant.choicesrevente = choices participant.save() + for spectacle in choices: + qset = SpectacleRevente.objects.filter( + attribution__spectacle=spectacle) + if qset.exists(): + # On l'inscrit à l'un des tirages au sort + for revente in qset.all(): + if not revente.shotgun: + revente.interested.add(participant) + break + deja_revente = True + else: form = InscriptionReventeForm( tirage, initial={'spectacles': participant.choicesrevente.all()}) return render(request, "liste-reventes.html", - {"form": form, 'shotgun': shotgun}) + {"form": form, 'shotgun': shotgun, + "deja_revente": deja_revente}) @login_required