bug corrigé (ajout de lignes) + taille cachée par défaut.
authorDenise sur Lya <sekhmet@lya>
Tue, 28 Jul 2020 16:26:39 +0000 (18:26 +0200)
committerDenise sur Lya <sekhmet@lya>
Tue, 28 Jul 2020 16:26:39 +0000 (18:26 +0200)
data/changelog_data.txt
static/outilspage.js
static/style.css
templates/base.html
templates/index.html

index 27058fe19867bd15361a7d4f53514c4930ceb6f2..2eda8642f4f7dbf466368bd8689abc0c6ecf134d 100644 (file)
@@ -1,3 +1,9 @@
+"Version 2.1","28/07/2020","<p>Petites améliorations :
+<ul>
+<li>Bug corrigé : quand on ajoute des lignes, maintenant ça ajoute aussi des saisies de taille ! ^^</li>
+<li>Par défaut, les saisies de taille sont masquées (car la plupart du temps on regarde le poids). On peut cliquer pour afficher les tailles.</li>
+</ul>"
+
 "Version 2.0","28/07/2020","<p>Nouveauté : courbes de taille disponible !
 <ul>
 <li>Il n'est pas nécessaire de saisir des tailles, l'appli trace ce qu'elle a en fonction de ce qu'on lui donne</li>
index 58dfb7f969d547bdc4efc51348f5dd30e16bd4d3..86a1233c83d77c382b9041405f9d9435a624c22e 100644 (file)
@@ -24,6 +24,7 @@ function ajoutelignes()
                var cellage = ligne.insertCell(0);
                var celldate = ligne.insertCell(1);
                var cellpoids = ligne.insertCell(2);
+               var celltaille = ligne.insertCell(3);
                
                cellage.innerHTML = '<input type="text" name="age_'+i+'">' ;
                celldate.innerHTML = '<input name="date_'+i+'">' ;
@@ -35,6 +36,8 @@ function ajoutelignes()
                        celldate.firstChild.placeholder = placeholder_date ;
                }
                cellpoids.innerHTML = '<input type="text" name="poids_'+i+'">' ;        
+               celltaille.innerHTML = '<input type="text" name="taille_'+i+'">' ;
+               celltaille.classList.add("donneesplus") ;
        }
        
 }
@@ -65,6 +68,48 @@ function affiche_cache(id,elemcourant)
        
 }
 
+function affiche_cache_classe(classe)
+{
+       // affiche et/ou cache tous les éléments de la classe classe (et change le texte du this)
+       var listelem = document.getElementsByClassName(classe) ;
+       var attributaff ;
+       if(listelem[0].style.display != "block") // c'est caché, donc on veut afficher
+       {
+               document.getElementById("bouton_afficher_donneesplus").innerHTML = "Masquer" ;
+               attributaff = "block" ;
+       }
+       else
+       {
+               document.getElementById("bouton_afficher_donneesplus").innerHTML = "Afficher" ;
+               attributaff = "none" ;
+       }
+       
+       for(var i=0;i<listelem.length; i++)
+       {
+               listelem[i].style.display = attributaff ;
+       }
+}
+
+function affiche_donneesplus_sibesoin()
+{
+       // fonction à appeler au chargement de la page
+       // On parcourt le tableau des tailles (ou autres) et on voit si y'a
+       // des choses dans les champs
+       var trouve = false ;
+       var liste_cases = document.getElementsByTagName("td") ;
+       //alert(liste_cases[3].children[0].value+liste_cases[3].classList) ;
+       for(i=0; i<liste_cases.length && !(trouve); i++)
+       {
+               // Si une des cases "données plus" contient un truc non vide
+               if(liste_cases[i].classList == "donneesplus" && liste_cases[i].children[0].value != "")
+               {
+                       trouve = true ;
+               }
+       }
+       if(trouve)
+               affiche_cache_classe("donneesplus")
+}
+
 function change_mode_dates(mode)
 {
        // passe de l'affichage en mode "date" à l'affichage en mode "texte" pour les navigateurs
@@ -93,5 +138,4 @@ function change_mode_dates(mode)
        {
                elem.innerHTML = "<span onclick=\"change_mode_dates('text')\" class=\"bouton\">Cliquez ici</span> pour saisir les dates comme du texte."
        }
-       
 }
index e96776193d39b80d1a404e748dabf1a45e9c9cbd..6e565d38dfed2919942b21c17587b55f251e5a05 100644 (file)
@@ -85,3 +85,7 @@ img#courbe {
 .bouton:hover {
        cursor:pointer;
 }
+
+.donneesplus {
+       display: none;
+}
index 2fdd3b3a4952f741e10c5598b48145c5f025b40f..dd4192a34ae87449502408bc4a0e225a16c8f286 100644 (file)
@@ -11,7 +11,7 @@
 
     </head>
 
-    <body>
+    <body onload="affiche_donneesplus_sibesoin()">
                <h1>Courbes de croissance « OMS » de l'enfant</h1>
        
                {% if err.length != 0 %}
index 0608b34c492b68a0a94693b4ca34e355906268a1..95caf9ef4374dbce474dd7ee2085f4f3d1aaf150 100644 (file)
 
 
 <h3>Données de l'enfants</h3> 
+<p><span id="bouton_afficher_donneesplus" class="bouton" onclick="affiche_cache_classe('donneesplus')">Afficher</span> la saisie complète.</p> 
 <p>Syntaxe pour l'âge&nbsp;: utiliser j, s, m, a comme des "unités" (jours, semaines, mois, années). Vous pouvez mixer les unités, par exemple "3a2m5j" pour 3 ans, 2 mois et 5 jours. Les espaces sont ignorées, et il faut saisir des nombres entiers.</p>
 <p>Saisir le poids en kilogrammes (par exemple "2.62" ou "2,62" pour 2 kilogrammes et 620 grammes).</p>
-<p>Saisir la taille en centimètres. Note : il y a généralement un centimètre de moins quand on mesure l'enfant debout par rapport à allongé. On peut voir sur la courbe de référence une "cassure" à deux ans qui correspond au changement du type de mesure.</p>
+<p class="donneesplus">Saisir la taille en centimètres. Note : il y a généralement un centimètre de moins quand on mesure l'enfant debout par rapport à allongé. On peut voir sur la courbe de référence une "cassure" à deux ans qui correspond au changement du type de mesure.</p>
 <p>Il faut saisir la date ou l'âge. Si les deux sont saisis, seul l'âge comptera.</p>
 
-<p>Si vous ne saisissez que des données de poids par exemple, la courbe de taille ne sera pas tracée (par défaut, voir préférences du graphique).</p>
+<p class="donneesplus">Si vous ne saisissez que des données de poids par exemple, la courbe de taille ne sera pas tracée (par défaut, voir préférences du graphique).</p>
 
 <table id="donneespoids">
-       <tr><th>Âge</th><th>Date</th><th>Poids (kg)</th><th>Taille (cm) </th></tr>
+       <tr><th>Âge</th><th>Date</th><th>Poids (kg)</th><th class="donneesplus">Taille (cm) </th></tr>
        
 {% for i in range(valform.nb_data) %}
 <tr><td>
        <input type="text" name="age_{{ i }}" value="{{ valform['age_'~i] }}">
 </td><td><input type="date" name="date_{{ i }}"></td>
                <td><input type="text" name="poids_{{ i }}" value="{{ valform['poids_'~i] }}"></td>
-               <td><input type="text" name="taille_{{ i }}" value="{{ valform['taille_'~i] }}"></td>
+               <td  class="donneesplus"><input type="text" name="taille_{{ i }}" value="{{ valform['taille_'~i] }}"></td>
 
 </tr>
 {% endfor %}