23 lines
967 B
Python
23 lines
967 B
Python
from rest_framework import serializers
|
|
from django.utils import timezone
|
|
from django.utils.translation import ugettext_lazy as _
|
|
from BaseBillet.models import OptionGenerale, Configuration, Event
|
|
|
|
|
|
class ReservationValidator(serializers.Serializer):
|
|
|
|
nom = serializers.CharField(max_length=100, required=True)
|
|
prenom = serializers.CharField(max_length=100, required=True)
|
|
email = serializers.EmailField(required=True)
|
|
phone = serializers.CharField(max_length=100, required=True)
|
|
qty = serializers.IntegerField(required=True)
|
|
radio_generale = serializers.PrimaryKeyRelatedField(queryset=OptionGenerale.objects.all(), many=True)
|
|
|
|
def validate_qty(self, value):
|
|
configuration = Configuration.get_solo()
|
|
if value <= configuration.reservation_par_user_max :
|
|
return value
|
|
else :
|
|
raise serializers.ValidationError(_(f"Pas plus de {configuration.reservation_par_user_max} places en même temps."))
|
|
|