]>
git.immae.eu Git - perso/Denise/oms.git/blob - static/requetes.js
2 function appelle_image()
4 affiche_statut("Calcul en cours...") ;
6 var formData
= new FormData( document
.getElementById("donnees_enfant") );
8 var requete
= new XMLHttpRequest();
9 requete
.responseType
= "json";
10 requete
.onreadystatechange = function()
12 if (this.readyState
== 4 && this.status
== 200) {
17 // on récupère les différents champs de la réponse
18 var result
= this.response
.result
;
19 var image_poids
= this.response
.image_poids
;
20 var image_taille
= this.response
.image_taille
;
21 var liste_warnings
= this.response
.messages
22 var texte
= this.response
.export_txt
;
23 var nomenfant
= this.response
.nomenfant
;
24 var nomsenfantsplus
= this.response
.nomsenfantsplus
;
25 var calculextra
= this.response
.calculextra
;
27 // on affiche l'export des données
28 document
.getElementById('export_texte').innerHTML
= texte
;
29 document
.getElementById('sectionexport').style
.display
= "block";
32 var boutondl
= document
.getElementById("export_dl") ;
33 boutondl
.setAttribute('onclick',"download_file('donnees_"+nomenfant
+".txt', 'application/json;charset=utf-8','"+encodeURIComponent(texte
) +"')")
36 if(result
== "success")
38 // On affiche l'image, si elle est là
39 if (image_poids
!= "") {
40 document
.getElementById('sectioncourbe').style
.display
= "block";
41 document
.getElementById('section_courbe_poids').style
.display
= "block" ;
42 document
.getElementById('courbe_poids').src
= 'data:image/png;base64,'+(image_poids
);
43 document
.getElementById('courbe_poids').alt
= 'Courbe de poids de '+nomenfant
;
44 boutondl
= document
.getElementById("courbe_dl_poids") ;
45 boutondl
.setAttribute('onclick',"download_file('courbe_poids_"+nomenfant
+nomsenfantsplus
+".png', 'image/png;base64','"+image_poids
+"')")
48 document
.getElementById('section_courbe_poids').style
.display
= "none" ;
51 if (image_taille
!= "") {
52 document
.getElementById('sectioncourbe').style
.display
= "block";
53 document
.getElementById('section_courbe_taille').style
.display
= "block" ;
54 document
.getElementById('courbe_taille').src
= 'data:image/png;base64,'+(image_taille
);
55 document
.getElementById('courbe_taille').alt
= 'Courbe de taille de '+nomenfant
;
56 boutondl
= document
.getElementById("courbe_dl_taille") ;
57 boutondl
.setAttribute('onclick',"download_file('courbe_taille_"+nomenfant
+".png', 'image/png;base64','"+image_taille
+"')")
60 document
.getElementById('section_courbe_taille').style
.display
= "none" ;
64 // Si y'a eu des warnings, faut les afficher
65 if(liste_warnings
.length
!= 0)
67 // afficher la liste des warnings
68 var elem_div
= document
.getElementById('courbe_warnings') ;
69 elem_div
.style
.display
= "block" ;
70 var ul
= elem_div
.children
[1] ;
71 for(i
=0; i
<liste_warnings
.length
; i
++) {
72 var li
= document
.createElement("li");
73 li
.appendChild(document
.createTextNode(liste_warnings
[i
]));
77 // S'il y a des calculs faits, à afficher !
78 if(calculextra
.length
!= 0)
80 var elem_extr
= document
.getElementById("section_extradonnees")
81 elem_extr
.style
.display
= "block" ;
82 var ul2
=elem_extr
.children
[1] ;
83 for(i
=0; i
<calculextra
.length
; i
++) {
84 var li
= document
.createElement("li");
85 li
.appendChild(document
.createTextNode(calculextra
[i
]));
89 affiche_statut("Courbes générées, scroller vers le bas pour les voir.") ;
91 else{ // si la génération de l'image a merdé
93 // afficher la liste des erreurs
94 var elem_div
= document
.getElementById('courbe_erreurs') ;
95 elem_div
.style
.display
= "block" ;
96 var ul
= elem_div
.children
[1] ;
97 for(i
=0; i
<liste_warnings
.length
; i
++) {
98 var li
= document
.createElement("li");
99 li
.appendChild(document
.createTextNode(liste_warnings
[i
]));
102 affiche_statut("Il y a eu une erreur à la génération des courbes, voir plus bas.") ;
107 requete
.open("POST","courbe/b64",true)
108 requete
.send(formData
)
112 function nettoie_erreurs()
114 // fonction qui nettoie les erreurs affichées sur la page
115 // vider les warnings
116 var elem_div
= document
.getElementById('courbe_warnings') ;
117 elem_div
.style
.display
= "none" ;
118 var ul
= elem_div
.children
[1] ;
122 elem_div
= document
.getElementById('courbe_erreurs') ;
123 elem_div
.style
.display
= "none" ;
124 ul
= elem_div
.children
[1] ;
129 function nettoie_calculs()
131 // Vider les calculs éventuels
132 var elem_extr
= document
.getElementById("section_extradonnees")
133 elem_extr
.style
.display
= "none" ;
134 var ul
= document
.getElementById("extradata") ;
139 function download_file(filename
,mimetype
,data
) {
140 var element
= document
.createElement('a');
141 element
.setAttribute('href', 'data:'+mimetype
+',' + data
);
142 element
.setAttribute('download', filename
);
144 element
.style
.display
= 'none';
145 document
.body
.appendChild(element
);
149 document
.body
.removeChild(element
);
153 function upload_file(nomformulaire
) {
154 document
.getElementById(nomformulaire
).submit();
157 // Fonction pour afficher le statut des courbes
158 function affiche_statut(message
) {
159 document
.getElementById("statut_courbes").innerHTML
= message
;