Fix: message erreur dates invalides (year 20222 is out of range)

This commit is contained in:
Emmanuel Viennet 2022-03-27 22:43:34 +02:00
parent 7ab00623e7
commit 5998f97fde

View File

@ -53,7 +53,11 @@ def _isFarFutur(jour):
# check si jour est dans le futur "lointain" # check si jour est dans le futur "lointain"
# pour autoriser les saisies dans le futur mais pas a plus de 6 mois # pour autoriser les saisies dans le futur mais pas a plus de 6 mois
y, m, d = [int(x) for x in jour.split("-")] y, m, d = [int(x) for x in jour.split("-")]
j = datetime.date(y, m, d) try:
j = datetime.date(y, m, d)
except ValueError:
# les dates erronées, genre année 20022, sont considéres dans le futur
return True
# 6 mois ~ 182 jours: # 6 mois ~ 182 jours:
return j - datetime.date.today() > datetime.timedelta(182) return j - datetime.date.today() > datetime.timedelta(182)
@ -631,7 +635,7 @@ def add_absence(
): ):
"Ajoute une absence dans la bd" "Ajoute une absence dans la bd"
if _isFarFutur(jour): if _isFarFutur(jour):
raise ScoValueError("date absence trop loin dans le futur !") raise ScoValueError("date absence erronée ou trop loin dans le futur !")
estjust = _toboolean(estjust) estjust = _toboolean(estjust)
matin = _toboolean(matin) matin = _toboolean(matin)
cnx = ndb.GetDBConnexion() cnx = ndb.GetDBConnexion()