
	// cette fonction a pour but de contrôler une date saisie à la main au format jj/mm/aaaa
	/*
	* @author : gregory
	* @return : 0 si la date est fausse 1 sinon
	* @param : on prend un champ input type="text"
	*/


	function checkMaDate(maDate) {
		var valeurDeLaDate = maDate.value;

		if (valeurDeLaDate == '')
		{
			return 0;
		}

		var regexp = new RegExp("[0-3][0-9]/[0-1][0-9]/[0-9]{4}","g");
		if (valeurDeLaDate.match(regexp))
		{
			var jour = valeurDeLaDate.substr(0,2);
			var mois = valeurDeLaDate.substr(3,2);
			var annee = valeurDeLaDate.substr(6,4);
			var longueurDate = valeurDeLaDate.length;
			if (longueurDate > 10)
			{
				alert('La longueur de la date saisie est invalide');
				maDate.value = '' ;
				return 0;
			}
			if (jour > 31)
			{
				alert('Le jour est incorrect');
				maDate.value = '' ;
				return 0;
			}
			if (mois > 12)
			{
				alert('Le mois est incorrect');
				maDate.value = '' ;
				return 0;
			}
			//alert('La date est bonne');
			if (jour > 30 && (mois == 2 || mois == 4 || mois == 6 || mois == 9 || mois == 11))
			{
				alert('Ce jour n\'existe pas');
				maDate.value = '';
				return 0;
			}
			if (mois == 2 )
			{
				if (annee % 4 == 0 && annee % 100 != 0)
				{
					// ici l'année est belle et bien bissextile
					if (jour > 29)
					{
						alert('Ce jour n\'existe pas');
						maDate.value = '';
						return 0;
					}
					else
					{
						return 1;
					}
				}
				if (annee % 400 == 0)
				{
					// ici l'année est belle et bien bissextile
					if (jour > 29)
					{
						alert('Ce jour n\'existe pas');
						maDate.value = '';
						return 0;
					}
					else
					{
						return 1;
					}
				}
				// ici l'année n'est pas bissextile
				if (jour > 28)
				{
					alert('Ce jour n\'existe pas');
					maDate.value = '';
					return 0;
				}
			}
			return 1;
		}
		else
		{
			alert('La date saisie est invalide');
			maDate.value = '' ;
			return 0;
		}
	}
