except:
warning(typedonnee+" impossible à lire : "+chaine,liste_err)
donnee = 0
+
+ # Pour le poids, un cas particulier
+ if typedonnee == "poids" and donnee > CONFIG["poids_maxi_conversion"]:
+ donnee = donnee/1000 # conversion en grammes
if not( 0<=donnee<CONFIG[typedonnee+"_maxi"]):
- warning(typedonnee+"incohérent(e) : "+str(donnee),liste_err)
+ warning(typedonnee+" incohérent(e) : "+str(donnee),liste_err)
donnee = 0
return donnee
for typed in CONFIG["liste_typedonnees"]:
listes_jours[typed],listes_donnees[typed] = gere_donnees(data,config["naissance"],typed,liste_err)
+ # Si on veut extrapoler au-delà du jour maxi, on adapte
+
# Si on a choisi la même échelle de données
if config["memechelle"] == "oui":
config["non_sauve"]["maxi"] = calcule_max_graphique([j for lj in listes_jours.values() for j in lj])
+ # En cas d'extrapolation, on prend le maxi
+ if config["non_sauve"]["calculextradata_type"] !="" and config["non_sauve"]["calculextradata_age"]>config["non_sauve"]["maxi"]:
+ config["non_sauve"]["maxi"] = int(config["non_sauve"]["calculextradata_age"]) +1
config["non_sauve"]["unite"] = choix_unite(config["non_sauve"]["maxi"])
return (config,listes_jours,listes_donnees)
if not(positionlegende in ['upper left','upper right','lower left','lower right']):
positionlegende = "upper left"
configuration["positionlegende"] = positionlegende
-
- configuration["prolongercourbes"] = gere_checkbox(data.get("prolongercourbes",""))
-
- # Ceci n'a pas besoin d'être sauvé
- configuration["non_sauve"]["grilleamelio"] = gere_checkbox(data.get("grilleamelio",""))
configuration["couleurs"] = {}
# gérer les couleurs
coul = rgb_vers_tuple(data.get("couleur_"+clecouleur,""),CONFIG["couleurs"][clecouleur],liste_err)
configuration["couleurs"][clecouleur] = coul
+
+ configuration["non_sauve"]["grilleamelio"] = gere_checkbox(data.get("grilleamelio",""))
+
+
+ #### La partie extrapolation n'a pas besoin d'être sauvée
+ configuration["non_sauve"]["prolongercourbes"] = gere_checkbox(data.get("prolongercourbes",""))
+
+ # Valeur par défaut : 1
+ debug(data.get("nbextradata", "aaargh"), liste_err)
+ nbextradata = data.get("nbextradata",1)
+ try:
+ nbextradata = int(nbextradata)
+ except:
+ warning("Le nombre de données sur lequel on extrapole est invalide : "+nbextradata, liste_err)
+ nbextradata = 1
+ configuration["non_sauve"]["nbextradata"] = nbextradata
+
+ if data.get("calculextradata_type","") in CONFIG["liste_typedonnees"]:
+ configuration["non_sauve"]["calculextradata_type"] = data.get("calculextradata_type","")
+ configuration["non_sauve"]["calculextradata_age"] = convertit_jours_vers_python(data.get("calculextradata_age","0j"),liste_err)
+ else:
+ configuration["non_sauve"]["calculextradata_type"] = ""
+ # On ne met rien dans l'âge, pas la peine
+
+ ctyped = data.get("calculextratemps_type","")
+ if ctyped in CONFIG["liste_typedonnees"]:
+ configuration["non_sauve"]["calculextratemps_type"] = ctyped
+ configuration["non_sauve"]["calculextratemps_val"] = convertit_donnee_vers_python(data.get("calculextratemps_val",""), ctyped, liste_err)
+ else:
+ configuration["non_sauve"]["calculextratemps_type"] = ""
+
+ # Tracer les calculs sur la grille
+ configuration["non_sauve"]["calculextradata_trace"] = gere_checkbox(data.get("calculextradata_trace"))
+ configuration["non_sauve"]["calculextratemps_trace"] = gere_checkbox(data.get("calculextratemps_trace"))
+
return configuration
+
+
## web vers python : données
def gere_donnees(data,naissance,typedonnee,liste_err):
""" prend en argument le dictionnaire de requête, et la date de