function IsDate2(strVal, strZone)
{
	if(strVal == null || strVal.length == 0)
		return false;

	var	Delim = strVal.indexOf("/");
	var	Delim1= strVal.lastIndexOf("/");
	var	iValDD = 0;
	var	iValMM = 0;
	var	iValYYYY = 0;
	
	if (strVal.length != 10 && strVal.length != 8)
	{
		strMsg += strZone + " : La zone contient une date erronnée (Format JJ/MM/AAAA)\r\n";
		return false;
	}

	if(Delim != -1 && Delim1 == Delim)
	{
		strMsg += strZone + " : La zone contient des séparateurs invalide\r\n";
		return false;
	}
	Aujourdhui = new Date() ;
  Jour = Aujourdhui.getDate() ;
  Mois = Aujourdhui.getMonth() ;
  An   = Aujourdhui.getFullYear();
  
	iValDD 	= parseInt(strVal.substring(0, 2), 10);
	iValMM 	= parseInt(strVal.substring(3, 5), 10);
	iValYYYY 	= parseInt(strVal.substring(6, strVal.length), 10);
	
	
	
		if(isNaN(iValDD) || isNaN(iValMM) || isNaN(iValYYYY))
	{
		strMsg += strZone + " : La zone contient une date erronnée (Format JJ/MM/AAAA)\r\n";
		return false;
	}
	
	
	   // mnthArray[0] is january, mnthArray[11] is december
			mnthArray = new Array(31,29,31,30,31,30,31,31,30,31,30,31);

			// netscape/IE number months starting with january = 0
			iValMM = iValMM-1;
			

			if(iValDD > parseInt(mnthArray[parseInt(iValMM)]))
				{
				strMsg += strZone + " : La date n'est pas valable !\r\n" ;
	
				return false ;
			} 
	
	
	
	

	if(iValMM < 0 || iValMM > 12)
	{
		strMsg += strZone + " : La zone contient une plage de date invalide 0000\r\n";
		return false;
	}
	if(strVal.length == 10)
	{
		if(iValYYYY <= 1950 || iValYYYY > 9999)
		{
			strMsg += strZone + " : La zone contient une plage de date invalide\r\n";
			return false;
		}
	}
	else
	{
		if(iValYYYY > 99)
		{
			strMsg += strZone + " : La zone contient une plage de date invalide\r\n";
			return false;
		}
	}
	
	
	
	
	if(iValYYYY < An)
	{
		
		strMsg += strZone + " : La date n'est pas valable!\r\n" ;
	
		return false ;
		
		
  } 
  else if(iValYYYY == An)
  {
		
		if((iValMM < Mois) && (iValDD < Jour))
		{
			strMsg += strZone + " : La date n'est pas valable!\r\n" ;
		
			return false ;
		}
		if(iValMM < Mois)
		{
			//alert(Mois + "-" + iValMM);
			strMsg += strZone + " : La date n'est pas valable!\r\n" ;
		
			return false ;
		}
		else if(iValMM == Mois)
		{
			if(iValDD < Jour)
			{
				strMsg += strZone + " : La date n'est pas valable!\r\n" ;
	
				return false ;
			} 
		}
  }



	return true;
}



