diff options
Diffstat (limited to 'app.py')
-rw-r--r-- | app.py | 26 |
1 files changed, 23 insertions, 3 deletions
@@ -8,7 +8,7 @@ import base64 | |||
8 | from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas | 8 | from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas |
9 | 9 | ||
10 | from configuration import config_init,CONFIG | 10 | from configuration import config_init,CONFIG |
11 | from gestion_erreurs import initialise_erreurs, debug, niveau_debug | 11 | from gestion_erreurs import initialise_erreurs, debug, niveau_debug, warning |
12 | import gestion_donnees as donnees | 12 | import gestion_donnees as donnees |
13 | from trace_courbe import cree_figure | 13 | from trace_courbe import cree_figure |
14 | import faq as f | 14 | import faq as f |
@@ -55,7 +55,27 @@ def apropos(): | |||
55 | def courbe_image(ext): | 55 | def courbe_image(ext): |
56 | liste_err = initialise_erreurs() | 56 | liste_err = initialise_erreurs() |
57 | data = flask.request.form | 57 | data = flask.request.form |
58 | 58 | enfants_add = [] # Enfants additionnels | |
59 | for i in range(2, 11): | ||
60 | if 'fichier_donnees_'+str(i) in flask.request.files: # UUn enfant à ajouter | ||
61 | fichier = flask.request.files["fichier_donnees_"+str(i)] | ||
62 | chaine = fichier.read() # On récupère la chaîne | ||
63 | if len(chaine)>=5: # Si elle a une longueur à peu près raisonnable | ||
64 | debug("Un fichier de données additionnel trouvé", liste_err) | ||
65 | formulaire_2 = donnees.fichier_json_vers_configdonnees(chaine, liste_err) | ||
66 | if formulaire_2 =={}: | ||
67 | warning("Le fichier de données additionnel est vide ou mal formaté", liste_err) | ||
68 | else: | ||
69 | #debug("Form 2 : "+str(formulaire_2), liste_err) | ||
70 | # Récupérer sous forme python | ||
71 | conf2, ljours2, listes_donnees2 = donnees.web_vers_python(formulaire_2,liste_err, court=True) | ||
72 | # Et le symbole | ||
73 | symb2 = donnees.gere_symbole(data.get("symbole_donnees_"+str(i))) | ||
74 | |||
75 | enfant2 = donnees.eclate_donnees_additionnelles(conf2, ljours2, listes_donnees2, symb2) | ||
76 | enfants_add.append(enfant2) | ||
77 | |||
78 | |||
59 | # récupérer les données du formulaire proprement | 79 | # récupérer les données du formulaire proprement |
60 | config,listes_jours,listes_donnees = donnees.web_vers_python(data,liste_err) | 80 | config,listes_jours,listes_donnees = donnees.web_vers_python(data,liste_err) |
61 | debug(" * On a récupéré et traité les données du formulaire web",liste_err) | 81 | debug(" * On a récupéré et traité les données du formulaire web",liste_err) |
@@ -75,7 +95,7 @@ def courbe_image(ext): | |||
75 | for typed in CONFIG["liste_typedonnees"]: | 95 | for typed in CONFIG["liste_typedonnees"]: |
76 | if config["tracevide"] == "oui" or listes_jours[typed] != []: | 96 | if config["tracevide"] == "oui" or listes_jours[typed] != []: |
77 | debug("On trace la courbe de "+typed,liste_err) | 97 | debug("On trace la courbe de "+typed,liste_err) |
78 | fig = cree_figure(config,listes_jours[typed],listes_donnees[typed],typed,liste_extracalculs, liste_err) | 98 | fig = cree_figure(config,listes_jours[typed],listes_donnees[typed],typed,liste_extracalculs, liste_err, enfants_add) |
79 | output = io.BytesIO() | 99 | output = io.BytesIO() |
80 | FigureCanvas(fig).print_png(output) | 100 | FigureCanvas(fig).print_png(output) |
81 | plt.close(fig) | 101 | plt.close(fig) |