//<script language="javascript">	
	function DisableControl(oControl, bDisable)
	{
		with (oControl) {
			disabled = (bDisable) ? true : false;
			style.backgroundColor = (bDisable) ? "#EEEEEE" : "";
			style.cursor = (bDisable) ? "default" : "";
		}
	}
	function DisableLabel(oLabel, bDisable)
	{
		oLabel.style.color = (bDisable) ? "#777777" : "";
	}
	function FormatDate(sDate)
	{
		var bValid = true;
		var vReturnValue;
		
		if (sDate.length != 0) {
			var oDate = new Date(sDate);
			
			if (isNaN(oDate)) bValid = false;
			
		} else {
			bValid = false;
		}
		
		if (bValid) {
			var dd = oDate.getDate().toString();
			var mm = (oDate.getMonth() + 1).toString();
			var yyyy = oDate.getFullYear().toString();
				
			mm = (mm.length==1) ? "0" + mm : mm;
			dd = (dd.length==1) ? "0" + dd : dd;
			yyyy = (yyyy < 1900) ? 1900 : yyyy;
			yyyy = (yyyy > 2050) ? 2050 : yyyy;
			
			vReturnValue = mm + "/" + dd + "/" + yyyy;
			
		} else {
			vReturnValue = "";
		}
		
		return vReturnValue;
	}
	
	function FormatMonthYear(sDate)
	{
		var bValid = true;
		var vReturnValue;
		var sMonth;
		var sYear;
		
		if (sDate.length != 0) {
			sMonth = sDate.substring(0, sDate.indexOf("/"));		
			sMonth = (sMonth.length==1) ? "0" + sMonth : sMonth;
			sYear = sDate.substring(sDate.indexOf("/") + 1);
			sYear = (sYear.length < 3) ? "20" + sYear  : sYear;
			sDate = sMonth + "/01/" + sYear;
			//sDate = sMonth + "/01/" + sDate.substring(sDate.indexOf("/") + 1);
			var oDate = new Date(sDate);
			
			if (isNaN(oDate)) bValid = false;
			
		} else {
			bValid = false;
		}
		
		if (bValid) {
			//var dd = oDate.getDate().toString();
			var mm = (oDate.getMonth() + 1).toString();
			var yyyy = oDate.getFullYear().toString();
				
			mm = (mm.length==1) ? "0" + mm : mm;
			//dd = (dd.length==1) ? "0" + dd : dd;
			yyyy = (yyyy < 1900) ? 1900 : yyyy;
			yyyy = (yyyy > 2050) ? 2050 : yyyy;
			
			vReturnValue = mm + "/" + yyyy;
			
		} else {
			vReturnValue = "";
		}
		
		return vReturnValue;
	}	
	
	function CheckBirthYear(sDate)
	{
		var bValid = true;
		var vReturnValue;
		var sMonth;
		var sYear;
		
		
		if (sDate.length != 0) {
		sDate = "01/01/" + sDate
			var oDate = new Date(sDate);
			
			if (isNaN(oDate)) bValid = false;
			
		} else {
			bValid = false;
		}
		
		if (bValid) {
			var yyyy = oDate.getFullYear().toString();
				
			yyyy = (yyyy < 1900) ? "" : yyyy;
			yyyy = (yyyy > 2002) ? "" : yyyy;
			
			if (yyyy == "1900")
				vReturnValue = "";
			else	
				vReturnValue = yyyy;
			
		} else {
			vReturnValue = "";
		}
		
		return vReturnValue;
	}	
	
		
	function FormatMoney(sMoney)
	{
		var bValid = true;
		var bNegative = (sMoney.indexOf("-") != -1 || sMoney.indexOf("(") != -1) ? true : false;
		var sParsed = ParseChar(sMoney, GetParseChars("money"));
		var vReturnValue;
		
		if (isNaN(parseFloat(sParsed))) bValid = false;
		if (sParsed.length == 0) bValid = false;
		
		if (bValid) {
			vReturnValue = ((Math.round(parseFloat(sParsed) * 100)) / 100).toString();
			
			if (vReturnValue.indexOf(".") == -1) vReturnValue = vReturnValue + ".00";
			if (vReturnValue.indexOf(".") == (vReturnValue.length - 1)) vReturnValue = vReturnValue + "00";
			if (vReturnValue.indexOf(".") == (vReturnValue.length - 2)) vReturnValue = vReturnValue + "0";
			
			if (vReturnValue.indexOf(".") > 3)
			{
				var dollars = vReturnValue.substring(0, vReturnValue.indexOf("."));
				var cents = vReturnValue.substring(vReturnValue.indexOf(".") + 1);
				var bucks = "";
							
				while (dollars.length > 3) {
					bucks =  "," + dollars.substring(dollars.length-3) + bucks;
					dollars = dollars.substring(0, dollars.length-3);
				}
							
				vReturnValue = dollars + bucks + "." + cents;
			}
			vReturnValue = "$" + vReturnValue;
				
			if (bNegative) vReturnValue = "-" + vReturnValue;
			
		} else {
			vReturnValue = "";
		}
		
		return vReturnValue;
	}
	
	function FormatDecimal(sDecimal)
	{
		var bValid = true;
		var vReturnValue;		
		var bNegative = (sDecimal.indexOf("-") != -1 || sDecimal.indexOf("(") != -1) ? true : false;
		
		if (isNaN(sDecimal)) return "";
		//if (bValid) return
		var sParsed = ParseChar(sDecimal, GetParseChars("money"));
		
		if (isNaN(parseFloat(sParsed))) bValid = false;
		if (sParsed.length == 0) bValid = false;
		
		if (bValid) {
			vReturnValue = ((Math.round(parseFloat(sParsed) * 100)) / 100).toString();
			
			if (vReturnValue.indexOf(".") == -1) vReturnValue = vReturnValue + ".00";
			if (vReturnValue.indexOf(".") == (vReturnValue.length - 1)) vReturnValue = vReturnValue + "00";
			if (vReturnValue.indexOf(".") == (vReturnValue.length - 2)) vReturnValue = vReturnValue + "0";
			
			if (vReturnValue.indexOf(".") > 3)
			{
				var dollars = vReturnValue.substring(0, vReturnValue.indexOf("."));
				var cents = vReturnValue.substring(vReturnValue.indexOf(".") + 1);
				var bucks = "";
							
				while (dollars.length > 3) {
					//bucks =  "," + dollars.substring(dollars.length-3) + bucks;
					dollars = dollars.substring(0, dollars.length-3);
				}
							
				vReturnValue = dollars + bucks + "." + cents;
				//if ((Math.float(vReturnValue)) > 4)
				//	return "";
			}
			vReturnValue = vReturnValue;
				
			if (bNegative) vReturnValue = "-" + vReturnValue;
			
		} else {
			vReturnValue = "";
		}
		
		return vReturnValue;
	}	
	
	function FormatNumber(sCurrentValue)
	{
		var sParsed = "";
		var sReturnNumber = "";
		var sValidChars = "0123456789";
		
		for (var i=0; i < sCurrentValue.length; i++) {
			
			var j = i + 1;
			
			sParsed = sCurrentValue.substring(i, j).toString();
			
			if (sValidChars.indexOf(sParsed) != -1) {
				sReturnNumber = sReturnNumber + sParsed.toString();
			}
		}
						
		return sReturnNumber;
	}
	function FormatPhone(sPhoneNumber)
	{
		var bValid = true;
		var sParsed = ParseChar(sPhoneNumber, GetParseChars("phone"));
		var vReturnValue;
		
		if (isNaN(parseInt(sParsed))) bValid = false;
		if (sParsed.length > 10 && sParsed.substring(0, 1) == 1) sParsed = sParsed.slice(1);
		
		vReturnValue = (bValid) ? "(" + sParsed.substring(0,3) + ") " + sParsed.substring(3,6) + "-" + sParsed.substring(6,15) : "";
		
		return vReturnValue;
	}
	function FormatSSN(sSSN)
	{
		var bValid = true;
		var sParsed = ParseChar(sSSN, GetParseChars("ssn"));
		var vReturnValue;
		
		if (isNaN(parseInt(sParsed))) bValid = false;
		
		vReturnValue = (bValid) ? sParsed.substring(0, 3) + "-" + sParsed.substring(3, 5) + "-" + sParsed.substring(5, 9) : "";
		
		return vReturnValue;
	}
	function FormatZipCode(sZipCode)
	{
		var bValid = true;
		var sParsed = ParseChar(sZipCode, GetParseChars("zipcode"));
		var vReturnValue;
		
		if (isNaN(parseInt(sParsed))) bValid = false;
		if (sParsed.length < 5) bValid = false;
		
		if (bValid) {
			vReturnValue = (sParsed.length < 9) ? sParsed.substring(0, 5) : sParsed.substring(0, 5) + "-" + sParsed.substring(5, 9);
		} else {
			vReturnValue = "";
		}
		
		return vReturnValue;
	}
	function GetParseChars(sParseType)
	{
		var aParseChars;
		
		switch (sParseType) {
			case "money":
				aParseChars = new Array("$", " ", ",", "(", ")", "-");
				break;
			case "phone":
				aParseChars = new Array("(", ")", ".", "-", " ");
				break;
			case "ssn":
				aParseChars = new Array("-", ".", " ");
				break;
			case "zipcode":
				aParseChars = new Array("-", ".", " ");
				break;
		}
		
		return aParseChars;
	}
	function LimitText(oControl, nMaxLength)
	{
		nMaxLength = parseInt(nMaxLength);
		
		if (oControl.value.length > nMaxLength) {
			oControl.value = oControl.value.substring(0, nMaxLength);
		}
	}
	function LockControl(oControl, bLock)
	{
		with (oControl) {
			readOnly = (bLock) ? true : false;
			style.backgroundColor = (bLock) ? "#EEEEEE" : "";
			style.cursor = (bLock) ? "default" : "";
		}
	}
	function ParseChar(myString, parseArray)
	{
	    for (var i=0; i < parseArray.length; i++) {
	        var parsedString = "";
	        var beginAt = 0;
	        var endAt = myString.indexOf(parseArray[i]);
			
	        while (endAt != -1) {
	            parsedString += myString.substring(beginAt, endAt);
	            beginAt = endAt + 1;
	            endAt = myString.indexOf(parseArray[i], beginAt);
	        }
	        parsedString += myString.substring(myString.lastIndexOf(parseArray[i]) + 1, myString.length);
			        
	        myString = parsedString;
	    }
			    
	    return parsedString;
	}
	
