Ajoute une vérification de tirage

This commit is contained in:
ludo 2016-06-25 23:17:31 +02:00
parent 374812d702
commit 442f358cf5
2 changed files with 12 additions and 1 deletions

View file

@ -5,6 +5,7 @@ from django.core.mail import send_mail
from django.contrib import admin
from django.db.models import Sum, Count
from bda.models import Spectacle, Salle, Participant, ChoixSpectacle, Attribution, Tirage
from django import forms
from datetime import timedelta
@ -107,6 +108,15 @@ Le Bureau des Arts
self.message_user(request, u"%s été informé%s avec succès." % (message_bit, plural))
send_attribs.short_description = u"Envoyer les résultats par mail"
class AttributionAdminForm(forms.ModelForm):
def clean(self):
cleaned_data=super(AttributionAdminForm, self).clean()
participant = cleaned_data.get("participant")
spectacle = cleaned_data.get("spectacle")
if participant and spectacle:
if participant.tirage != spectacle.tirage:
raise forms.ValidationError(u"Erreur : le participant et le spectacle n'appartiennent pas au même tirage")
class AttributionAdmin(admin.ModelAdmin):
def paid(self, obj):
return obj.participant.paid
@ -114,6 +124,7 @@ class AttributionAdmin(admin.ModelAdmin):
paid.boolean = True
list_display = ("id", "spectacle", "participant", "given", "paid")
search_fields = ('spectacle__title', 'participant__user__username', 'participant__user__first_name', 'participant__user__last_name')
form = AttributionAdminForm
import autocomplete_light
class ChoixSpectacleAdmin(admin.ModelAdmin):

View file

@ -75,7 +75,7 @@ class Participant(models.Model):
tirage = models.ForeignKey(Tirage)
def __unicode__ (self):
return u"%s" % (self.user)
return u"%s, %s" % (self.user, self.tirage.title)
DOUBLE_CHOICES = (
("1", "1 place"),