]> git.immae.eu Git - perso/Denise/oms.git/blobdiff - static/outilspage.js
possibilité de saisir la date au format texte + export données en txt
[perso/Denise/oms.git] / static / outilspage.js
index de87963c401879276a7f090f5bffdfeb656122b9..58dfb7f969d547bdc4efc51348f5dd30e16bd4d3 100644 (file)
@@ -1,5 +1,9 @@
 // fonctions générales pour la page
 
+var taillemaxdate = 10;
+var placeholder_date = "aaaa-mm-jj" ;
+
+
 function ajoutelignes()
 {
        // va ajouter 3 lignes au tableau de données
@@ -7,6 +11,11 @@ function ajoutelignes()
        var nbligne = table.children[0].childElementCount ;
        // les données étant numérotées à partir de 0 on pourra commencer à partir de nbligne -1
        // car il faut éliminer la ligne de header.
+       
+       // voir dans quel mode on est : date ou texte
+       var deuxiemeligne = table.children[0].children[1] ;
+       var celldate = deuxiemeligne.children[1] ;
+       var mode = celldate.firstChild.type ;
                
        var nbajout = 3 ;
        for(var i=nbligne-1; i<nbligne+nbajout-1; i++)
@@ -17,9 +26,72 @@ function ajoutelignes()
                var cellpoids = ligne.insertCell(2);
                
                cellage.innerHTML = '<input type="text" name="age_'+i+'">' ;
-               celldate.innerHTML = '<input type="date" name="date_'+i+'">' ;
-               cellpoids.innerHTML = '<input type="text" name="poids_'+i+'">' ;
+               celldate.innerHTML = '<input name="date_'+i+'">' ;
+               celldate.firstChild.type = mode ;
+               if(mode == "text") // si on a déjà affiché les cases en mode texte, on continue en mode texte
+               {
+                       celldate.firstChild.size = taillemaxdate ;
+                       celldate.firstChild.maxlength = taillemaxdate ;
+                       celldate.firstChild.placeholder = placeholder_date ;
+               }
+               cellpoids.innerHTML = '<input type="text" name="poids_'+i+'">' ;        
+       }
+       
+}
+
+// Affichage de la textarea "export"
+function affiche_export()
+{
+       document.getElementById("export").style.display = "block" ;
+       
+}
+
+function affiche_cache(id,elemcourant)
+{
+       // affiche et/ou cache l'élément id, tout en changeant le this
+       // en afficher/masquer
+       elem = document.getElementById(id)
+       if(elem.style.display == "block")
+       {
+               elem.style.display = "none";
+               elemcourant.innerHTML = "Afficher" ;
+       }
+       else
+       {
+               elem.style.display = "block" ;
+               elemcourant.innerHTML = "Masquer" ;
                
        }
        
 }
+
+function change_mode_dates(mode)
+{
+       // passe de l'affichage en mode "date" à l'affichage en mode "texte" pour les navigateurs
+       // qui gèrent mal le mode date
+       var listeinput = document.getElementsByTagName("input") ;
+       for(i=0;i<listeinput.length;i++)
+       {
+               var nombalise = listeinput[i].name ;
+               if(nombalise == "naissance" || nombalise.slice(0,5) == "date_")
+               {
+                       listeinput[i].type = mode ;
+                       if(mode == "date")
+                               listeinput[i].maxlength = taillemaxdate ;
+                               listeinput[i].size = taillemaxdate ;
+                               listeinput[i].placeholder = placeholder_date ;
+               }
+       }
+       
+       // changer le texte et le bouton.
+       var elem = document.getElementById("changemode") ;
+       if(mode =="text") 
+       {
+               elem.innerHTML = "Saisie des dates au format aaaa-mm-jj. <span onclick=\"change_mode_dates('date')\" class=\"bouton\">Cliquez ici</span> pour revenir à une saisie de dates «&nbsp;confortable&nbsp;»."
+       }
+       else
+       {
+               elem.innerHTML = "<span onclick=\"change_mode_dates('text')\" class=\"bouton\">Cliquez ici</span> pour saisir les dates comme du texte."
+       }
+       
+}