// JScript source code
function makeArray() 
{
	this[0] = makeArray.arguments.length;
	for (i = 0; i<makeArray.arguments.length; i++)
	this[i+1] = makeArray.arguments[i];
}
var daysofmonth  = new makeArray( 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
var daysofmonthLY= new makeArray( 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

function LeapYear(year) 
{
	if ((year/4)   != Math.floor(year/4))   return false;
	if ((year/100) != Math.floor(year/100)) return true;
	if ((year/400) != Math.floor(year/400)) return false;
	return true;
}
	
function ValidDate(day,month,year) 
{
	if ((day<1) || (month<1) || (month>12) || (LeapYear(year) && (day > daysofmonthLY[month])) ||(!LeapYear(year) && (day > daysofmonth[month])))
		return false;
	else
		return true;
}
function VerificaDt(dt,formato)
{
	switch (formato)
	{ 
		case "gg/mm/yy" : 
	      	len1 = 8; len2 = 6; break;
		case "gg/mm/yyyy" : 
	      	len1 = 10; len2 = 8; break;
		case "ggmmyy" : 
	      	len1 = 6; len2 = 6; break;
		case "ggmmyyyy" : 
	      	len1 = 8; len2 = 8; break;
		default : 
		alert("PARAMETRO NON PREVISTO")
	} 
			
	if(dt.length != len1) return false
			
	var myRe = new RegExp("/", "gi");
	dt = dt.replace(myRe,"")
	if((dt.length != len2) || isNaN(dt)) return false
			
	dd = dt.substr(0,2)
	mm = dt.substr(2,2)
	yyyy = dt.substr(4,dt.length)
			
	if(yyyy.length < 4)
	{
		if((0 + yyyy) <= 50) yyyy = "20" + yyyy
		else 	yyyy = "19" + yyyy
	}
			
	if (! ValidDate(parseInt(dd, 10),parseInt(mm, 10),parseInt(yyyy, 10)) )	return false;
			
	return true;
}