function ValidateTime(theTextBox)
// Client side validation of a time.
// Used in the TimeCtl.ascx user control to validate times when a user leaves the time field.
{
	var bError = false;
	var sTimeString = theTextBox.value;
	var sValidTimeString = "";
	var sMessage = "Please enter a using Time valid the format: 999999 or 99:99.99";
    var sValidChars = "0123456789:. ";
	var sValidNums  = "0123456789";
    var iNumCount = 0;
	
	function StripFormatting(sAString)
	//Remove any character that is not a valid number
	{
		sCleanString = "";
		for (var i = 0; i < sAString.length; i++) 
		{
			if (sValidNums.indexOf(sAString.charAt(i)) >= 0)
			{
				sCleanString = sCleanString + sAString.charAt(i);
			}
		}
			return sCleanString;
	}
	
	function PadLeft(sAString, iLength, cPadCharacter)
	//Create a string of a given length left-padded with the given character
	{
		var sPadding = ""
		if (sAString.length > iLength )
		{
			return sAString;
		}
		
		for (var i = 0; i < iLength - sAString.length; i++)
		{
			sPadding = sPadding + cPadCharacter;
		}
		return sPadding + sAString;
	}
	
	function FormatTime(sAString)
	//Given a string of 6 unformatted numbers, format as a time MM:SS.TH
	{
		return sAString.substring(0,2) + ":" + sAString.substring(2,4) + "." + sAString.substring(4,6);
	}
	

	if (sTimeString.length == 0)
	{
		return;
	}

    for (var i = 0; i < sTimeString.length; i++) 
    {
       if (sValidChars.indexOf(sTimeString.charAt(i)) == -1)
       {
			sMessage = "The time can only contain numbers, ':' and '.' characters.\n" + sMessage;
			alert(sMessage);
			theTextBox.focus();
			return;
       }
       
       if (sValidNums.indexOf(sTimeString.charAt(i)) >= 0)       
       {	
			iNumCount = iNumCount + 1;			
       }
    }

	
	if ((iNumCount < 4) || (iNumCount > 6))
	{	
		sMessage = "The time must contain between 4 and 6 numbers.\n" + sMessage;
		alert(sMessage);
		theTextBox.focus();
		return;
	}

	sValidTimeString = StripFormatting(sTimeString);
	sValidTimeString = PadLeft(sValidTimeString,6,"0");
	sValidTimeString = FormatTime(sValidTimeString);
	theTextBox.value = sValidTimeString;
	
	if (sValidTimeString.substring(0,2) > 59)
	{
		sMessage = "The minutes cannot be > 59.\n" + sMessage;
		alert(sMessage);
		theTextBox.focus();
		return;
	}
	if (sValidTimeString.substring(3,5) > 59)
	{
		sMessage = "The seconds cannot be > 59.\n" + sMessage;
		alert(sMessage);
		theTextBox.focus();
		return;
	}
	
	
	return;
}


