
<!-- THIS FILE IS USED FOR DATE VALIDATIONS -->

function validateDate(objName, objSpan, flagCheckNull, dateFormat){
	
	//alert(" javascript called ")
	//alert(objName);
	var obj, strDate;
	obj = document.getElementById(objName);
	//alert(obj.value);
	strDate = obj.value;
	
	if(strDate == "")
	{
		//alert(" Null ")
		var objSpn;
		objSpn = document.getElementById(objSpan);
		objSpn.innerHTML = "Please Enter Date";
		objSpn.style.display = "inline";
	 return false;
	}
		
	if(flagCheckNull){
		if(strDate == ""){
			//alert(" Textbox null...");
			return false;
		}
	}
	else{
		if(strDate == "") return true;
	}

	switch(dateFormat){
		case "DD/MM/YYYY":
		  
			if(strDate.length != 10){
				var objSpn;
				objSpn = document.getElementById(objSpan);
				objSpn.innerHTML = "Enter Date in 'DD/MM/YYYY' Format";
				objSpn.style.display = "inline";
				return false;
			}

			/*for(var i = 0; i < strDate.length; i++){
				digit = strDate.substring(i, i+1);
				if( digit < "0" || digit > "9" ){
					alert("Enter digits only 3 ");
					return;
				}
			} */
			
			//alert(" strDate " + strDate);
			//alert(strDate.charAt(2));
			if(strDate.charAt(2) != '/' || strDate.charAt(5) != '/') 
			{
				var objSpn;
				objSpn = document.getElementById(objSpan);
				objSpn.innerHTML = "Enter Date in 'DD/MM/YYYY' Format";
				objSpn.style.display = "inline";
				return false;
			}

			var strday = strDate.substr(0, 2);
			var day = parseInt(strday, 10);
			
			var strmonth = strDate.substr(3, 2);
			var month = parseInt(strmonth, 10);

			var stryear = strDate.substr(6, 4);
			var year = parseInt(stryear, 10);

			var today = new Date();
			var tempYYstr = String(today.getFullYear());
			var tempYY = parseInt(tempYYstr.substr(tempYYstr.length - 4), 10);
			var curr_century = today.getFullYear() - tempYY;
			year = year + curr_century;
			break;
	
	}
    //alert(month)
	if(month < 1 || month > 12 || isNaN(strmonth) == true){
		//alert(" Enter Month Between 1 and 12");
		var objSpn;
		objSpn = document.getElementById(objSpan);
		objSpn.innerHTML = "Enter Month Between 1 and 12";
		objSpn.style.display = "inline";
		return false;
	}

	var monthDays = getMonthDays(month, year);
	if(day < 1 || isNaN(strday) == true) {
		//alert(" Days can not be less than 1");
		var objSpn;
		objSpn = document.getElementById(objSpan);
		objSpn.innerHTML = "Days can not be less than 1";
		objSpn.style.display = "inline";
		return false;
	}
	else if(day > monthDays){
		//alert(" There are not more than " + monthDays + " days in this month");
		var objSpn;
		objSpn = document.getElementById(objSpan);
		objSpn.innerHTML = "There are not more than " + monthDays + " days in this month";
		objSpn.style.display = "inline";
		return false;
	}
	/*var objSpn;
		objSpn = document.getElementById(objSpan)
		objSpn.style.display = "none";*/
	return true;
}

function getMonthDays(month, year){
	var maxdays;
	if(month == 2){
		if(isLeapYear(year)) maxdays = 29;
		else maxdays = 28;
	}
	else{
		if(month == 4 || month == 6 || month == 9 || month == 11) maxdays = 30;
		else maxdays = 31;
	}

	return maxdays;
}

function isLeapYear(year){
	var div4 = year % 4;
	var div100 = year % 100;
	var div400 = year % 400;
	var flagLeapyear;

	if( div4 == 0 && div100 != 0) flagLeapYear = true;
	else if(div100 == 0 && div400 == 0) flagLeapYear = true;
	else flagLeapYear = false;

	return flagLeapYear;
}

<!-- END -->
