From bd4403d8ee6c19899511749ead704971d1cb8929 Mon Sep 17 00:00:00 2001 From: Gabriel Detraz Date: Thu, 24 Sep 2015 23:35:55 +0200 Subject: [PATCH] =?UTF-8?q?Disclaimer=20si=20adh=C3=A9rent=20mineur?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gestion/gest_crans.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gestion/gest_crans.py b/gestion/gest_crans.py index c8359d90..44a88b3e 100755 --- a/gestion/gest_crans.py +++ b/gestion/gest_crans.py @@ -29,6 +29,8 @@ from whos import aff import signal import getopt from time import strftime, strptime, localtime, mktime, time +from dateutil import relativedelta as rdelta +from datetime import date import re import subprocess import affich_tools @@ -101,6 +103,8 @@ def set_bases(adher): arg += u'"Chambre :" 4 1 "%s" 4 11 05 00 ' % adher.chbre() arg += u'"(bat+numéro)" 4 17 "" 0 0 0 0 ' arg += u'"EXT pour chambre extérieure au campus" 5 1 "" 0 0 0 0 ' + arg += u'"Date de naissance : " 6 1 "" 6 21 11 11 ' + arg += u'"Format : dd/mm/yyyy" 7 1 "" 0 0 0 0 ' # Affichage annul, result = dialog(arg) @@ -128,6 +132,23 @@ def set_bases(adher): if no: return 1 + # On controle que l'adh est majeur + Now = date.today() + naissance = re.compile(r"(?P[^ ]*)/(?P[^ ]*)/(?P[^ ]*)").match(unicode(result[4])) + if naissance is None: + err += "La date est invalide" + else: + naissance = naissance.groupdict() + naissance_date = date(int(naissance['annee']),int(naissance['mois']),int(naissance['jour'])) + age = rdelta.relativedelta(Now, naissance_date).years + if age < 18: + arg = u'--title "Inscription adhérent" ' + arg += u'--yesno "Cet adhérent est mineur, merci de demander un accord écrit des parents' + arg += u'\nContinuer ?" 0 0' + no, res = dialog(arg) + if no: + return 1 + err += _set_chbre(adher, result[3]) # Des erreurs ?