
	function AreEqual (ElementName1,ElementName2)
	{
		var ElementValue1 = document.getElementById (ElementName1).value;
		var ElementValue2 = document.getElementById (ElementName2).value;
		
		if (ElementValue1 != ElementValue2)
			return false;
		else
			return true;
	}
	
	function ChangeTabFocus (ElementNameOld, ElementNameNew, MaxLength)
	{
		if (document.getElementById (ElementNameOld).value.length >= MaxLength)
		{
			document.getElementById (ElementNameNew).focus ();
			document.getElementById (ElementNameNew).select ();
		}
	}
	
	function DivClose (ElementName)
	{
		document.getElementById (ElementName).style.display = 'none';
	}
	
	function DivOpen (ElementName)
	{
		document.getElementById (ElementName).style.display = 'inline';
	}
	
	function EncodeURL (Query)
	{
		var SAFECHARS = "0123456789" +
						"ABCDEFGHIJKLMNOPQRSTUVWXYZ" +
						"abcdefghijklmnopqrstuvwxyz" +
						"-_.!~*'()";
		var HEX = "0123456789ABCDEF";

		var plaintext = Query;
		var encoded = "";
		for (var i = 0; i < plaintext.length; i++ ) {
			var ch = plaintext.charAt(i);
			if (ch == " ") {
				encoded += "+";
			} else if (SAFECHARS.indexOf(ch) != -1) {
				encoded += ch;
			} else {
				var charCode = ch.charCodeAt(0);
				if (charCode > 255) {
					alert( "Unicode Character '" 
							+ ch 
							+ "' cannot be encoded using standard URL encoding.\n" +
							"(URL encoding only supports 8-bit characters.)\n" +
							"A space (+) will be substituted." );
					encoded += "+";
				} else {
					encoded += "%";
					encoded += HEX.charAt((charCode >> 4) & 0xF);
					encoded += HEX.charAt(charCode & 0xF);
				}
			}
		}

		return encoded;
	}
	
	function FormatCurrency(num) 
	{
		num = num.toString().replace(/\$|\,/g,'');
		if(isNaN(num))
		num = "0";
		sign = (num == (num = Math.abs(num)));
		num = Math.floor(num*100+0.50000000001);
		cents = num%100;
		num = Math.floor(num/100).toString();
		if(cents<10)
		cents = "0" + cents;
		for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
		num = num.substring(0,num.length-(4*i+3))+','+
		num.substring(num.length-(4*i+3));
		return (((sign)?'':'-') + '$' + num + '.' + cents);
	}
	
	function IsAmount (ElementName)
	{
		var sValue = document.getElementById (ElementName).value;
		if (sValue >= 10 && sValue <= 100000)
			return true;
		else
			return false;
	}
	
	function IsBlank (ElementName)
	{
		var ElementValue = document.getElementById (ElementName).value;
		var len = ElementValue.length
		var i
		
		for ( i = 0; i < len; i++ )
		{
			if ( ElementValue.charAt ( i ) != " " ) 
			 	return false;
		}
		return true;
	}
	
	function IsChecked (ElementName)
	{
		return document.getElementById (ElementName).checked;
	}
	
	function IsDate (ElementName)
	{
		var sValue = document.getElementById (ElementName).value;
		var sValidFormat=/^\d{2}\/\d{2]\/\d{4}$/;
		var bFlag = true;

		if (sValue == 'mm/dd/yyyy')
			bFlag = false;
		else
		{
			if (!sValidFormat.test(sValue))
			{
				var sMonth = sValue.split("/")[0];
				var sDay = sValue.split("/")[1];
				var sYear = sValue.split("/")[2];
				
				var dDate = new Date (sYear,sMonth-1,sDay);
				if ((dDate.getMonth() + 1 != sMonth) || (dDate.getDate () != sDay) || (dDate.getFullYear () != sYear))
					bFlag = false;
				else
					bFlag = true;
			}
		}
		
		return bFlag;
	}
	
	function IsDatePicker (ElementName)
	{
		var sValue = document.getElementById (ElementName).value;
		var sValidFormat=/^\d{2}\/\d{2]\/\d{4}$/;
		var bFlag = true;

		if (sValue == 'mm/dd/yyyy')
			bFlag = true;
		else
		{
			if (!sValidFormat.test(sValue))
			{
				var sMonth = sValue.split("/")[0];
				var sDay = sValue.split("/")[1];
				var sYear = sValue.split("/")[2];
				
				var dDate = new Date (sYear,sMonth-1,sDay);
				if ((dDate.getMonth() + 1 != sMonth) || (dDate.getDate () != sDay) || (dDate.getFullYear () != sYear))
					bFlag = false;
				else
					bFlag = true;
			}
		}
		
		return !bFlag;
	}

	function IsDecimal(ElementName)
	{
		var sValue = document.getElementById (ElementName).value;
		var bFlag = true;
		
		bFlag = sValue.match(/^\d+\.\d{2}$/)
		
		if (!bFlag)
		{
			bFlag = sValue.match(/^\d+\.\d{1}$/)
			if (!bFlag)
				bFlag = IsNumeric (ElementName);
		}
		
		return bFlag;
	}
	
	function IsEmailAddress (ElementName)
	{
		var ElementValue=document.getElementById (ElementName).value;
		var at="@";
		var dot=".";
		var lat=ElementValue.indexOf(at);
		var lElementValue=ElementValue.length;
		var ldot=ElementValue.indexOf(dot);
		var flag = true;
			
		if (ElementValue.indexOf(at)==-1)
			flag = false;
		else if (ElementValue.indexOf(at)==-1 || ElementValue.indexOf(at)==0 || ElementValue.indexOf(at)==lElementValue)
			flag = false;
		else if (ElementValue.indexOf(dot)==-1 || ElementValue.indexOf(dot)==0 || ElementValue.indexOf(dot)==lElementValue)
		if (ElementValue.indexOf(at,(lat+1))!=-1)
			flag = false;
		else if (ElementValue.subElementValueing(lat-1,lat)==dot || ElementValue.subElementValueing(lat+1,lat+2)==dot)
			flag = false;
		else if (ElementValue.indexOf(dot,(lat+2))==-1)
			flag = false;
		else if (ElementValue.indexOf(" ")!=-1)
			flag = false;
		
		return flag;
	}
	
	function IsNumeric (ElementName)
	{
		var sValue = document.getElementById (ElementName).value;
		var sValidFormat=/^\d+$/;

		return sValidFormat.test(sValue);
	}
	
	function IsPassword (ElementName)
	{
		var ElementValue = document.getElementById (ElementName).value;
		
		return (ElementValue.length > 5);
	}
	
	function IsPhoneNumber (ElementName)
	{
		var sValue = document.getElementById (ElementName + '1').value + document.getElementById (ElementName + '2').value + document.getElementById (ElementName + '3').value;
		var sValidFormat=/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/;

		return sValidFormat.test(sValue);
	}

	function IsURL ( ElementName )
	{
		var RegularExpression1 = new RegExp(/^http:\/\/.+/);
		var RegularExpression2 = new RegExp(/^https:\/\/.+/);
        var ElementValue = document.getElementById (ElementName).value;
		if (ElementValue.match(RegularExpression1) || ElementValue.match(RegularExpression2))
      		return true;
      	else
      		return false;
	}
	
	function IsZipCode (ElementName)
	{
		var sValue = document.getElementById (ElementName).value;
		var sValidFormat=/[0-9][0-9][0-9][0-9][0-9]/;

		return sValidFormat.test(sValue);
	}
	
	function IsZipCode4 (ElementName)
	{
		var sValue = document.getElementById (ElementName).value;
		var sValidFormat=/[0-9][0-9][0-9][0-9]/;

		return sValidFormat.test(sValue);

	}
	
	function SetElement ( flag, ElementName, ElementType, Message )
	{
		if (flag)
		{
			document.getElementById ('Element' + ElementName).className = 'Element'; 
			document.getElementById ('ElementError' + ElementName).style.display = "none";
			document.getElementById ('ElementErrorMessage' + ElementName).innerHTML = Message;
		}
		else
		{
			document.getElementById ('Element' + ElementName).className = 'ElementError'; 
			document.getElementById ('ElementError' + ElementName).style.display = "inline";
			document.getElementById ('ElementErrorMessage' + ElementName).innerHTML = '<strong>Error: </strong>' + Message;
			try
			{
				document.getElementById (ElementType + ElementName).focus ();
			}
			catch (err)
			{
				try
				{
					document.getElementById (ElementType + ElementName + '1').focus ();
				}
				catch (err)
				{
				}
			}
		}
	}
	
	function SetFocus ( ElementName, ElementType)
	{
		document.getElementById (ElementType + ElementName).focus ();
	}
	
	function SetRow ( flag, ElementName )
	{
		if (flag)
		{
			document.getElementById(ElementName).style.cursor='pointer'; 
			document.getElementById(ElementName).style.backgroundColor='#EEEDD9'; 
		}
		else
		{
			document.getElementById(ElementName).style.cursor=''; 
			document.getElementById(ElementName).style.backgroundColor=''; 
		}
	}	
	
	function WindowPopUp(URL,Name,Width,Height)
	{
		window.open(URL,Name,'fullscreen=0,resizable=1,menubar=0,scrollbars=1,status=0,location=0,toolbar=1,directories=0,width=' + Width + ',height=' + Height + ',top=0,left=0');
	}