// JavaScript Document

	function isFilled(str){ return (str != ""); }

	function isEmail(string) { return (string.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1); }

 	function isDigital(str)	{ return(parseInt(str,10)==(str*1)); /*return(parseFloat(str,10)==(str*1));*/ }

 	function isCurrency(val) { 	var re = /^(\$?\d+\$?|\$?\d+\.\d+\$?)$/; return (re.test(val)); }
	
function validate(req,email,digits,currs)
{
	var field, i;
	var req_len = parseInt(req.length);
	var email_len = parseInt(email.length);
	var digits_len = parseInt(digits.length);
	var currs_len = parseInt(currs.length);
	
	for (i=0;i<req_len;i++)
	{
			var field = document.getElementById(req[i]);
			if (field)
			{
				field.style.border="1px solid #000000";
				if ((field.type == 'checkbox')||(field.type == 'radio'))
				{
					var field = document.getElementsByName(req[i]);
					var chk = false;
					for(l=0;l<field.length;l++)
					{
						if (field[l].checked) chk = true;
					}
					if (!chk) 
					{
						//alert("Field '" + field[0].title + "' is required to be checked correctly before successful submission.");
						alert ("Please select " + field[0].title+"." );
						field[0].style.border="1px solid #FF0000";
						return false; 
						break;
					}
				}
				else
				{
					if (!isFilled(trim(field.value)))
						{
						//alert("Field '" + field.title + "' is required to be filled in before successful submission.");
						alert ("Please fill " + field.title+"." );
						field.value="";
						field.focus();
						field.style.border="1px solid #FF0000";
						return false;
						// break;
						}
				}
			}
			else
				alert(req[i] + " does not exist" );		
	}


		for (i=0;i<email_len;i++)
		{
			var field = document.getElementById(email[i]);
			field.style.border="1px solid #000000";
			if (!isEmail(trim(field.value)))
			 {
				//alert("Field '" + field.title + "' is required to be filled in with valid email addresses before successful submission.");
				alert("Please fill in a valid email address.");
				field.style.border="1px solid #FF0000";
				field.focus();
				return false;
				break;
			}
		}

		for (i=0;i<digits_len;i++)
		{

			var field = document.getElementById(digits[i]);
				field.style.border="1px solid #000000";
			if ( field.value !="")
			{
				if (!isDigital(trim(field.value))) 
				{
					//alert("Field " + field.title + " is required to be filled in only with digits (0-9) and decimal point before successful submission.");
					//alert("Please fill only digits(0-9) and decimal point in "+field.title + ".");
					alert("Please fill only digits(0-9) in "+field.title + ".");
					field.style.border="1px solid #FF0000";
					field.focus();
					return false;
					break;
				}	
			}
		}

		for (i=0;i<currs_len;i++)	{

			var field = document.getElementById(currs[i]);
				field.style.border="1px solid #000000";
			if (!isCurrency(trim(field.value))) {

				//alert("Field " + field.title + " is required to be filled in only with digits (0-9) a decimal point, or a dollar sign before successful submission.");
				alert("Please fill only digits(0-9) and decimal point in "+field.title + ".");
				field.style.border="1px solid #FF0000";
				field.focus();
				return false;
				break;

			}}

		return true;
}
	
	
//-- trim functions
// Removes Leading whitespaces
  function LTrim( value )
			{
				var re = /\s*((\S+\s*)*)/;
				return value.replace(re, "$1");
			}

// Removes ending whitespaces
		function RTrim( value )
			{
				var re = /((\s*\S+)*)\s*/;
				return value.replace(re, "$1");
			}

// Removes leading and ending whitespaces
	function trim( value ) 
		{
			return LTrim(RTrim(value));
		}
