TiBillet-Ticket-Nonfree/DjangoFiles/BaseBillet/validator.py

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."))