X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;ds=sidebyside;f=gestion_donnees.py;h=8e19d8b805aec12268303f825e5a291ebae78b7c;hb=f1e65b5e6bc5e0803f359f93c8e795a61f61b4a6;hp=372d6aa4b8dcdce9e9aa48b70868b0f200c4ab71;hpb=2dc9eb43142b4f96cee63ff191e429ad68efacae;p=perso%2FDenise%2Foms.git diff --git a/gestion_donnees.py b/gestion_donnees.py index 372d6aa..8e19d8b 100644 --- a/gestion_donnees.py +++ b/gestion_donnees.py @@ -130,8 +130,12 @@ def convertit_donnee_vers_python(chaine,typedonnee,liste_err): def convertit_date_vers_python(chaine,liste_err): """ prend une chaine comme renvoyée par un champ de formulaire date aaaa-mm-jj et en fait une date python - renvoie "" si ne marche pas""" - liste = chaine.split("-") + renvoie "" si ne marche pas. + Si jamais la date est au format avec des / ça devrait passer aussi.""" + if "/" in chaine: + liste = chaine.split("/") + else: + liste = chaine.split("-") if len(liste) != 3: warning("La date : "+chaine+" est invalide !",liste_err) return "" @@ -169,7 +173,7 @@ def delta_date(date1,datenaissance): def web_vers_python(data,liste_err, court=False): """ prend en argument le dictionnaire de requête et renvoie la config, et les - tableaux de donnée + tableaux de données court : si True est précisé, on ne met que le nom dans la config (enfant additionnel)""" @@ -364,6 +368,19 @@ def gere_configuration(data,liste_err, court=False): configuration["non_sauve"]["calculextratemps_trace"] = gere_checkbox(data.get("calculextratemps_trace")) + ### Gestion des repères additionnels + configuration["liste_reperes"] = [] + i=0 + while "repere_texte_"+str(i) in data: # Tant qu'il y a des trucs définis + debug("Repère trouvé", liste_err) + age=data.get("repere_age_"+str(i), "") + trace=gere_checkbox(data.get("repere_trace_"+str(i), "")) + if age !="": + agec=convertit_jours_vers_python(age, liste_err) + texte = data.get("repere_texte_"+str(i), "") # Même si le texte est vide, osef + configuration["liste_reperes"].append({"typed": "age", "donnee": agec, "texte": texte, "trace": trace}) + i+=1 + return configuration @@ -384,8 +401,8 @@ def gere_donnees(data,naissance,typedonnee,liste_err): i = 0 # On va chercher si y'a des données à donnee_i - while typedonnee+"_"+str(i) in data.keys(): - if data[typedonnee+"_"+str(i)] != "": + while "age_"+str(i) in data.keys(): + if data.get(typedonnee+"_"+str(i), "") != "": # si la donne de ce type existe donnee = convertit_donnee_vers_python(data[typedonnee+"_"+str(i)],typedonnee,liste_err) age = data.get("age_"+str(i),"") if age !="": @@ -437,6 +454,9 @@ def donnees_vers_json(l_jours,l_poids,l_jourst,l_taille,config): # gérer l'age maxi gros_dico["maxi"] = convertit_age_vers_texte(gros_dico["maxi"]) + # Gérer les repères + for i in range(len(gros_dico["liste_reperes"])): + gros_dico["liste_reperes"][i]["donnee"] = convertit_age_vers_texte(gros_dico["liste_reperes"][i]["donnee"]) # gérer les couleurs for clecouleur in DEFAUT["couleurs"]: gros_dico["couleurs"][clecouleur] = tuple_vers_rgb(gros_dico["couleurs"][clecouleur]) @@ -541,6 +561,7 @@ def eclate_donnees_additionnelles(conf, ljours, ldonnees, symb, couleur): symb est le symbole choisi pour cette courbe additionnelle (déjà vérifié) On fabrique un joli dictionnaire typed -> (conf lj, ldonnee) avec le nom de l'enfant, et les données pour chaque typed""" + print("test conf avant "+str(ldonnees)+str(ljours)) retour = {} conf["symbole"] = symb # On ajoute le symbole additionnel @@ -548,4 +569,5 @@ def eclate_donnees_additionnelles(conf, ljours, ldonnees, symb, couleur): for typed in CONFIG["liste_typedonnees"]: retour[typed] = (conf, ljours[typed], ldonnees[typed]) + print("test "+str(retour)) return retour \ No newline at end of file