function isDate(d) {
  // Cette fonction permet de vérifier la validité d'une date au format jj-mm-aa ou jj-mm-aaaa
  date_du_jour=new Date();
  if (d == "") // si la variable est vide on retourne faux
  return false;
 
  e = new RegExp("^[0-9]{2}\-[0-9]{2}\-[0-9]{4}$");

  if (!e.test(d)) // On teste l'expression régulière pour valider la forme de la date
    return false; // Si pas bon, retourne faux

  // On sépare la date en 3 variables pour vérification, parseInt() converti du texte en entier
  j = parseInt(d.split("-")[0], 10); // jour
  m = parseInt(d.split("-")[1], 10); // mois
  a = parseInt(d.split("-")[2], 10); // année

  // Si l année n est composée que de 2 chiffres on complète automatiquement
  if (a < 1000) {
    if (a < 89){
    	a+=2000; // Si a < 89 alors on ajoute 2000 sinon on ajoute 1900
    }else{
    	a+=1900;
    }
  }


  //on vérifie que l'on entre pas un évènement à une date antérieure

 // if(j < date_du_jour.getDate() || (m < (date_du_jour.getMonth()+1)) || a < date_du_jour.getYear()) return false;

  // Définition du dernier jour de février
  // Année bissextile si annnée divisible par 4 et que ce n'est pas un siècle, ou bien si divisible par 400
  if (a%4 == 0 && a%100 !=0 || a%400 == 0) fev = 29;
  else fev = 28;

  // Nombre de jours pour chaque mois
  nbJours = new Array(31,fev,31,30,31,30,31,31,30,31,30,31);

  
  // Enfin, retourne vrai si le jour est bien entre 1 et le bon nombre de jours, idem pour les mois, sinon retourn faux
  return ( m >= 1 && m <=12 && j >= 1 && j <= nbJours[m-1] );
}
