function IsNumeric(strString)
{
	var strValidChars = "-0123456789";
	var strChar;
	var blnResult = true;

	if (strString.length == 0) return false;
	//  test strString consists of valid characters listed above
	for (i = 0; i < strString.length && blnResult == true; i++)
	{
		strChar = strString.charAt(i);
		if (strValidChars.indexOf(strChar) == -1)
		{
		blnResult = false;
		}
	}
	return blnResult;
}

function free_check()
{
	var msg = '';
	var s_form = document.freeconsult;
	var fname = trim(s_form.first_name.value);
	var lname = trim(s_form.last_name.value);
	var company = trim(s_form.company.value);	
	var phone = trim(s_form.phone.value);
	var email = trim(s_form.email.value);
	
	if(fname.length <= 0)
	{
		msg += "-Please fill in your first name.\n";
	}
	
	if(lname.length <= 0)
	{
		msg += "-Please fill in your last name.\n";
	}
	
	if(company.length <= 0)
	{
		msg += "-Please fill in Company Name.\n";
	}										

	if(phone.length <= 0 || phone.length < 10)
	{
		msg += "-Please provide a phone number to contact you with.\n";
	}else if(IsNumeric(phone)==false){
		msg += "-Please provide a valid valid phone number. Area code first, example: 310-577-9111.\n";
	}
		
	if(email.length <= 0)
	{
		msg += "-Please provide a valid email address.\n";
	}else{
		var apos = email.indexOf("@");
		var dotpos = email.lastIndexOf(".");
		if ( apos < 1 || dotpos-apos < 2) 
		{
			msg += "-Invalid Email Address.\n"; 
		}
	}
	
	if(msg.length <= 0)
	{
		s_form.submit();
		return true;
	}
	else
	{
		alert("Form Validation Error:\n\n" + msg)
		return false;
	}	
}

function trim(str)
{
	return str.replace(/^[\s]+/,'').replace(/[\s]+$/,'').replace(/[\s]{2,}/,' '); 
}