|
|
|
@ -43,6 +43,10 @@ def reservar_evento(request, evento_id): |
|
|
|
msg.attach_alternative(html_content, "text/html") |
|
|
|
msg.send() |
|
|
|
|
|
|
|
# Aquí hay que mirar si quedan más de n plazas. |
|
|
|
# n es un numero aleatorio entre 2 y el total de plazas |
|
|
|
# si es así, y ya hay añadir a dos participantes. |
|
|
|
|
|
|
|
messages.success(request, |
|
|
|
f'Reserva realizada para el evento {evento.nombre}.') |
|
|
|
|
|
|
|
@ -101,17 +105,34 @@ def detalle_evento(request, evento_id): |
|
|
|
|
|
|
|
reservas = Reserva.objects.filter(evento=evento_id) |
|
|
|
|
|
|
|
inscrito = Reserva.objects.filter(evento=evento, usuario=request.user).exists() if request.user.is_authenticated else False |
|
|
|
|
|
|
|
if ListaEspera.objects.filter(evento=evento, usuario=request.user).exists(): |
|
|
|
en_espera = True |
|
|
|
else: |
|
|
|
en_espera = False |
|
|
|
|
|
|
|
lista_espera = ListaEspera.objects.filter(evento=evento_id) |
|
|
|
|
|
|
|
for elemento in lista_espera: |
|
|
|
print("Lista de espera: ", elemento.usuario.nombre) |
|
|
|
print("Apuntado en: ", elemento.fecha_apuntado) |
|
|
|
el_evento = [ |
|
|
|
{ |
|
|
|
'evento': evento, |
|
|
|
'inscrito': inscrito, |
|
|
|
'id': evento.id, |
|
|
|
'nombre': evento.nombre, |
|
|
|
'descripcion': evento.descripcion, |
|
|
|
'fecha': evento.fecha, |
|
|
|
'plazas_disponibles': evento.plazas_disponibles, |
|
|
|
'plazas_restantes': evento.plazas_restantes, |
|
|
|
'en_espera': en_espera, |
|
|
|
'usuario': request.user, |
|
|
|
'publicado': evento.publicado |
|
|
|
} |
|
|
|
] |
|
|
|
|
|
|
|
for booking in reservas: |
|
|
|
print(booking.evento) |
|
|
|
print(booking.usuario.nombre) |
|
|
|
print("detalle_evento: ", el_evento) |
|
|
|
|
|
|
|
return render(request, 'eventos/detalle_evento.html', {'evento': evento, 'reservas': reservas, 'lista': lista_espera}) |
|
|
|
return render(request, 'eventos/detalle_evento.html', {'evento': el_evento, 'reservas': reservas, 'lista': lista_espera}) |
|
|
|
|
|
|
|
|
|
|
|
# Verificar si el usuario es administrador |
|
|
|
|