]>
git.immae.eu Git - perso/Denise/oms.git/blob - static/requetes.js
d374213090e043f19208dce86386d93808f73083
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 calculextra
= this.response
.calculextra
;
26 // on affiche l'export des données
27 document
.getElementById('export_texte').innerHTML
= texte
;
28 document
.getElementById('sectionexport').style
.display
= "block";
31 var boutondl
= document
.getElementById("export_dl") ;
32 boutondl
.setAttribute('onclick',"download_file('donnees_"+nomenfant
+".txt', 'application/json;charset=utf-8','"+encodeURIComponent(texte
) +"')")
35 if(result
== "success")
37 // On affiche l'image, si elle est là
38 if (image_poids
!= "") {
39 document
.getElementById('sectioncourbe').style
.display
= "block";
40 document
.getElementById('section_courbe_poids').style
.display
= "block" ;
41 document
.getElementById('courbe_poids').src
= 'data:image/png;base64,'+(image_poids
);
42 document
.getElementById('courbe_poids').alt
= 'Courbe de poids de '+nomenfant
;
43 boutondl
= document
.getElementById("courbe_dl_poids") ;
44 boutondl
.setAttribute('onclick',"download_file('courbe_poids_"+nomenfant
+".png', 'image/png;base64','"+image_poids
+"')")
47 document
.getElementById('section_courbe_poids').style
.display
= "none" ;
50 if (image_taille
!= "") {
51 document
.getElementById('sectioncourbe').style
.display
= "block";
52 document
.getElementById('section_courbe_taille').style
.display
= "block" ;
53 document
.getElementById('courbe_taille').src
= 'data:image/png;base64,'+(image_taille
);
54 document
.getElementById('courbe_taille').alt
= 'Courbe de taille de '+nomenfant
;
55 boutondl
= document
.getElementById("courbe_dl_taille") ;
56 boutondl
.setAttribute('onclick',"download_file('courbe_taille_"+nomenfant
+".png', 'image/png;base64','"+image_taille
+"')")
59 document
.getElementById('section_courbe_taille').style
.display
= "none" ;
63 // Si y'a eu des warnings, faut les afficher
64 if(liste_warnings
.length
!= 0)
66 // afficher la liste des warnings
67 var elem_div
= document
.getElementById('courbe_warnings') ;
68 elem_div
.style
.display
= "block" ;
69 var ul
= elem_div
.children
[1] ;
70 for(i
=0; i
<liste_warnings
.length
; i
++) {
71 var li
= document
.createElement("li");
72 li
.appendChild(document
.createTextNode(liste_warnings
[i
]));
76 // S'il y a des calculs faits, à afficher !
77 if(calculextra
.length
!= 0)
79 var elem_extr
= document
.getElementById("section_extradonnees")
80 elem_extr
.style
.display
= "block" ;
81 var ul2
=elem_extr
.children
[1] ;
82 for(i
=0; i
<calculextra
.length
; i
++) {
83 var li
= document
.createElement("li");
84 li
.appendChild(document
.createTextNode(calculextra
[i
]));
88 affiche_statut("Courbes générées, scroller vers le bas pour les voir.") ;
90 else{ // si la génération de l'image a merdé
92 // afficher la liste des erreurs
93 var elem_div
= document
.getElementById('courbe_erreurs') ;
94 elem_div
.style
.display
= "block" ;
95 var ul
= elem_div
.children
[1] ;
96 for(i
=0; i
<liste_warnings
.length
; i
++) {
97 var li
= document
.createElement("li");
98 li
.appendChild(document
.createTextNode(liste_warnings
[i
]));
101 affiche_statut("Il y a eu une erreur à la génération des courbes, voir plus bas.") ;
106 requete
.open("POST","courbe/b64",true)
107 requete
.send(formData
)
111 function nettoie_erreurs()
113 // fonction qui nettoie les erreurs affichées sur la page
114 // vider les warnings
115 var elem_div
= document
.getElementById('courbe_warnings') ;
116 elem_div
.style
.display
= "none" ;
117 var ul
= elem_div
.children
[1] ;
121 elem_div
= document
.getElementById('courbe_erreurs') ;
122 elem_div
.style
.display
= "none" ;
123 ul
= elem_div
.children
[1] ;
128 function nettoie_calculs()
130 // Vider les calculs éventuels
131 var elem_extr
= document
.getElementById("section_extradonnees")
132 elem_extr
.style
.display
= "none" ;
133 var ul
= document
.getElementById("extradata") ;
138 function download_file(filename
,mimetype
,data
) {
139 var element
= document
.createElement('a');
140 element
.setAttribute('href', 'data:'+mimetype
+',' + data
);
141 element
.setAttribute('download', filename
);
143 element
.style
.display
= 'none';
144 document
.body
.appendChild(element
);
148 document
.body
.removeChild(element
);
152 function upload_file(nomformulaire
) {
153 document
.getElementById(nomformulaire
).submit();
156 // Fonction pour afficher le statut des courbes
157 function affiche_statut(message
) {
158 document
.getElementById("statut_courbes").innerHTML
= message
;