revente des places au shotgun

This commit is contained in:
Ludovic Stephan 2016-09-03 18:47:38 +02:00
parent 285e3cb78f
commit 46f91adc08
4 changed files with 45 additions and 23 deletions

View file

@ -323,7 +323,8 @@ def list_revente(request, tirage_id):
shotgun = []
for spectacle in spectacles:
revente_objects = SpectacleRevente.objects.filter(
attribution__spectacle=spectacle)
attribution__spectacle=spectacle,
soldTo__isnull=True)
revente_count = 0
for revente in revente_objects:
if revente.shotgun:
@ -354,17 +355,36 @@ def buy_revente(request, spectacle_id):
participant, created = Participant.objects.get_or_create(
user=request.user, tirage=tirage)
reventes = SpectacleRevente.objects.filter(
attribution__spectacle=spectacle)
attribution__spectacle=spectacle,
soldTo__isnull=True)
if not reventes.exists():
return render(request, "bda-no-revente.html", {})
if request.POST:
revente = SpectacleRevente.objects.get(pk=request.POST['id'])
idx = random.randint(0, reventes.count() - 1)
revente = reventes.all()[idx]
revente.soldTo = participant
revente.save()
mail = """Bonjour !
Je souhaiterais racheter ta place pour %s le %s (%s) à %.02f.
Contacte-moi si tu es toujours intéressé·e !
%s (%s)""" % (spectacle.title, spectacle.date_no_seconds(),
spectacle.location, spectacle.price,
request.user.get_full_name(), request.user.email)
send_mail("BdA-Revente : %s" % spectacle.title, mail,
request.user.email,
[revente.attribution.participant.user.email],
fail_silently=False)
return render(request, "bda-success.html",
{"seller": revente.attribution.participant.user,
"spectacle": spectacle})
if reventes.exists():
idx = random.randint(0, reventes.count() - 1)
selected = reventes.all()[idx]
return render(request, "revente-confirm.html",
{"selected": selected, "spectacle": spectacle})
{"spectacle": spectacle,
"user": request.user})
@buro_required