
 
function ValidateTimeOnKeyPress(field, evt)
{
	var charCode = (evt.which) ? evt.which : event.keyCode;
	var keychar = String.fromCharCode(charCode);
	
	if (window.event && (window.event.keyCode == 13 || window.event.keyCode == 3) ) {
		calcDays();
		return false;
	}
	
	// only allow 0 - 9, :
	if ((charCode < 48 || charCode > 57) && keychar != ":" && charCode != 8 ) // : and delete
	{
		return false;
	}
	
	// : need to be second or third place
	if (keychar == ":" && field.value.length != 1 && field.value.length != 2) 
	{
		return false;
	}
	
	// only allow one :
	if (keychar == ":" && field.value.indexOf(":") != -1) 
	{
		return false;
	}
	
	// hour must be followed by :
	if (field.value.length == 2 && field.value.indexOf(":") == -1 && keychar != ":" && charCode != 8) 
	{
		return false;
	}
	
	// total length no more than 5
	if (((field.value.indexOf(":") == 2 && field.value.length > 4) || (field.value.indexOf(":") == 3 && field.value.length > 5)) && charCode != 8) 
	{
		return false;
	}
	
	// hour needs to be 0 - 23
	if (field.value.length == 1) 
	{
		hour = parseInt(field.value + keychar);
		
		if(hour > 23) {
			return false;
		}
	}
	
	// minute needs to be 0 - 59
	if (field.value.indexOf(":") != -1) 
	{
		time = field.value.split(":");
		minute = parseInt(time[1] + keychar);
		
		if(minute > 59) {
			return false;
		}
	}

}