]> git.immae.eu Git - perso/Denise/oms.git/blame - static/requetes.js
Courbe de taille ajoutée + plein de params qui vont avec
[perso/Denise/oms.git] / static / requetes.js
CommitLineData
5679dfd0
DL
1
2function appelle_image()
3{
4
5 var formData = new FormData( document.getElementById("donnees_enfant") );
6
7 var requete = new XMLHttpRequest();
66a3e38c 8 requete.responseType = "json";
5679dfd0
DL
9 requete.onreadystatechange = function()
10 {
11 if (this.readyState == 4 && this.status == 200) {
be2bf515
DL
12 // On nettoie
13 nettoie_erreurs()
14
66a3e38c 15 // on récupère les différents champs de la réponse
a46e1269 16 var result = this.response.result ;
8b5845ff
DL
17 var image_poids = this.response.image_poids ;
18 var image_taille = this.response.image_taille ;
66a3e38c
DL
19 var liste_warnings = this.response.messages
20 var texte = this.response.export_txt;
be2bf515
DL
21 var nomenfant = this.response.nomenfant ;
22
66a3e38c
DL
23 // on affiche l'export des données
24 document.getElementById('export').innerHTML = texte;
25 document.getElementById('sectionexport').style.display = "block";
be2bf515
DL
26
27
28 var boutondl = document.getElementById("export_dl") ;
30158504 29 boutondl.setAttribute('onclick',"download_file('donnees_"+nomenfant+".txt', 'application/json;charset=utf-8','"+encodeURIComponent(texte) +"')")
be2bf515 30
66a3e38c 31
a46e1269 32 if(result == "success")
be2bf515 33 {
8b5845ff
DL
34 // On affiche l'image, si elle est là
35 if (image_poids != "") {
36 document.getElementById('sectioncourbe').style.display = "block";
37 document.getElementById('section_courbe_poids').style.display = "block" ;
38 document.getElementById('courbe_poids').src = 'data:image/png;base64,'+(image_poids);
39 boutondl = document.getElementById("courbe_dl_poids") ;
40 boutondl.setAttribute('onclick',"download_file('courbe_poids_"+nomenfant+".png', 'image/png;base64','"+image_poids +"')")
41 }
42 else {
43 document.getElementById('section_courbe_poids').style.display = "none" ;
44 }
45
46 if (image_taille != "") {
47 document.getElementById('sectioncourbe').style.display = "block";
48 document.getElementById('section_courbe_taille').style.display = "block" ;
49 document.getElementById('courbe_taille').src = 'data:image/png;base64,'+(image_taille);
50 boutondl = document.getElementById("courbe_dl_taille") ;
51 boutondl.setAttribute('onclick',"download_file('courbe_taille_"+nomenfant+".png', 'image/png;base64','"+image_taille +"')")
52 }
53 else {
54 document.getElementById('section_courbe_taille').style.display = "none" ;
55 }
be2bf515 56
a46e1269
DL
57
58 // Si y'a eu des warnings, faut les afficher
59 if(liste_warnings.length != 0)
60 {
61 // afficher la liste des warnings
62 var elem_div = document.getElementById('courbe_warnings') ;
63 elem_div.style.display = "block" ;
64 var ul = elem_div.children[1] ;
65 for(i=0; i<liste_warnings.length; i++) {
66 var li = document.createElement("li");
67 li.appendChild(document.createTextNode(liste_warnings[i]));
68 ul.appendChild(li);
69 }
70 }
71 }
72 else{ // si la génération de l'image a merdé
73
be2bf515 74 // afficher la liste des erreurs
a46e1269 75 var elem_div = document.getElementById('courbe_erreurs') ;
66a3e38c
DL
76 elem_div.style.display = "block" ;
77 var ul = elem_div.children[1] ;
78 for(i=0; i<liste_warnings.length; i++) {
79 var li = document.createElement("li");
80 li.appendChild(document.createTextNode(liste_warnings[i]));
81 ul.appendChild(li);
82 }
83
84
85 }
5679dfd0
DL
86 }
87 }
88 requete.open("POST","courbe/b64",true)
89 requete.send(formData)
90}
be2bf515
DL
91
92function nettoie_erreurs()
93{
94 // fonction qui nettoie les erreurs affichées sur la page
95 // vider les warnings
96 var elem_div = document.getElementById('courbe_warnings') ;
97 elem_div.style.display = "none" ;
98 var ul = elem_div.children[1] ;
99 ul.innerHTML = "";
100
101 // vider les erreurs
102 elem_div = document.getElementById('courbe_erreurs') ;
103 elem_div.style.display = "none" ;
104 ul = elem_div.children[1] ;
105 ul.innerHTML = "" ;
106
107}
108
109
110function download_file(filename,mimetype,data) {
111 var element = document.createElement('a');
112 element.setAttribute('href', 'data:'+mimetype+',' + data);
113 element.setAttribute('download', filename);
114
115 element.style.display = 'none';
116 document.body.appendChild(element);
117
118 element.click();
119
120 document.body.removeChild(element);
121
122}
93ba28a7
SC
123
124function upload_file(data) {
125 document.getElementById('form_import_donnees').submit();
30158504 126}