var daysInMonth = new Array(12);
daysInMonth[1] = 31;
daysInMonth[2] = 29;
daysInMonth[3] = 31;
daysInMonth[4] = 30;
daysInMonth[5] = 31;
daysInMonth[6] = 30;
daysInMonth[7] = 31;
daysInMonth[8] = 31;
daysInMonth[9] = 30;
daysInMonth[10] = 31;
daysInMonth[11] = 30;
daysInMonth[12] = 31;

function IsTime(strTime) {
	var TimeFormat = /^(\d{1,2}):(\d{1,2})[AaPp][Mm]$/
	if (!TimeFormat.test(strTime)) return false;
	var hour = parseInt(RegExp.$1);
	if (hour > 12 || hour < 0) return false;
	var minute = parseInt(RegExp.$2);
	if (minute > 59 || minute < 0) return false;
	return true;
}

function daysInFebruary (year)
{   
	return (  ((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0) ) ) ? 29 : 28 );
}

function IsDate (strDate)
{   
	var DateFormat = /^(\d{1,2})\/(\d{1,2})\/(\d\d\d\d)$/
	if (!DateFormat.test(strDate)) return false;
    var intYear = parseInt(RegExp.$3);
    var intMonth = parseInt(RegExp.$1);
    var intDay = parseInt(RegExp.$2);
		
	if (intMonth > 12 || intMonth < 0) return false;
	if (intYear < 1900) return false;
    if (intDay < 0 || intDay > daysInMonth[intMonth]) return false; 
    if ((intMonth == 2) && (intDay > daysInFebruary(intYear))) return false;

    return true;
}