function CheckDate(d) {
	// Cette fonction vérifie le format JJ/MM/AAAA saisi et la validité de la date.
	// Le séparateur est défini dans la variable separateur
	var amin=2005; // année mini
	var amax=2020; // année maxi
	var separateur="/"; // separateur entre jour/mois/annee
	var j=(d.substring(0,2));
	var m=(d.substring(3,5));
	var a=(d.substring(6));
	var ok=1;
	if ( ((isNaN(j))||(j<1)||(j>31)) && (ok==1) ) {
		alert("Format de date invalide !"); ok=0;
	}
	if ( ((isNaN(m))||(m<1)||(m>12)) && (ok==1) ) {
		alert("Format de date invalide !"); ok=0;
	}
	if ( ((isNaN(a))||(a<amin)||(a>amax)) && (ok==1) ) {
		alert("Format de date invalide !"); ok=0;
	}
	if ( ((d.substring(2,3)!=separateur)||(d.substring(5,6)!=separateur)) && (ok==1) ) {
		alert("Format de date invalide !"); ok=0;
	}
	if (ok==1) {
		var d2=new Date(a,m-1,j);
		j2=d2.getDate();
		m2=d2.getMonth()+1;
		a2=d2.getFullYear();
		if (a2<=100) {a2=1900+a2}
		if ( (j!=j2)||(m!=m2)||(a!=a2) ) {
			alert("La date "+d+" est incorrecte !");
			ok=0;
		}
	}
	return ok;
}

function CheckTime(d) {
	// Cette fonction vérifie le format HH:MM saisi et la validité de l'heure.
	// Le séparateur est défini dans la variable separateur
	var separateur=":"; // separateur entre jour/mois/annee
	var h=(d.substring(0,2));
	var m=(d.substring(3,5));
	var ok=1;
	if ( ((isNaN(h))||(h<1)||(h>23)) && (ok==1) ) {
		alert("Format d'heure invalide !"); ok=0;
	}
	if ( ((isNaN(m))||(m<0)||(m>59)) && (ok==1) ) {
		alert("Format d'heure invalide !"); ok=0;
	}
	if ( (d.substring(2,3)!=separateur) && (ok==1) ) {
		alert("Format d'heure invalide !"); ok=0;
	}
	return ok;
}

function StringToDate(d) {
	var j=(d.substring(0,2));
	var m=(d.substring(3,5));
	var a=(d.substring(6));
	var r=new Date(a,m,j);
	return(r);
}

function DateToString(d) {
	var jj = d.getDate();
	var mm = d.getMonth();
	var yy = d.getFullYear();
	var j = jj.toString();
	var m = mm.toString();
	var y = yy.toString();
	while (j.length<2) j = '0' + j;
	while (m.length<2) m = '0' + m;
	return(j+'/'+m+'/'+y);
}
