// JCreated by CTS
//Contains functions to validate the input fields in the form and sent it as request to Sevvion system and get response.

// To validate the inputs and return to calling page
function submitForm(thisForm) 
{
	if (validate_form(thisForm)) 
	{
		return true;
	}
	else
	{
		return false;
	}
}
					
function ValidateEmailAddress(Element) 
{

	   var varRegExp='^[A-Z0-9!#\\$%&\'\\*\\+\\-/=\\?\\^_`\\{\\|\\}~][A-Z0-9!#\\$%&\'\\*\\+\\-/=\\?\\^_`\\{\\|\\}~\\.]{0,62}@([A-Z0-9](?:[A-Z0-9\\-]{0,61}[A-Z0-9])?(\\.[A-Z0-9](?:[A-Z0-9\\-]{0,61}[A-Z0-9])?)+)$';

	   if ((Element) && (Element.value != '')) {

	      var reg = new RegExp(varRegExp,"i");

	      var match = reg.exec(Element.value);

	         if ((match) && (match.length=3) && (match[1].length<=255) && ((match[2].length>=3) & (match[2].length<=7)))

	            return true;

		}

	   return false;
}

function validate_empty(field)
{
	with (field)
	{
	if(value == "Please Select")
	{
		value = "";
	}
	if(value == "")

 	{return false;}

	else {return true;}

	}

}

function validate_form(thisform)
{
	var errmsg = "";
	with (thisform)
	{
	if (validate_empty(C_FirstName)==false)
	  {
	   errmsg = errmsg + "Form Field First Name is required \n";
	  C_FirstName.className = "elqFieldValidation";

	  }
	if (validate_empty(C_LastName)==false)
	  {
	  errmsg = errmsg + "Form Field Last Name is required \n";
	  C_LastName.className = "elqFieldValidation";
	  }
	if (validate_empty(C_BusPhone)==false)
	  {
	  errmsg = errmsg + "Form Field Business Phone is required \n";
	  C_BusPhone.className = "elqFieldValidation";
	  }
	if (validate_empty(C_EmailAddress)==false)
	  {
	  errmsg = errmsg + "Form Field Email address is required \n";
	  C_EmailAddress.className = "elqFieldValidation";
	  }
	  else
	  {
	  if(ValidateEmailAddress(C_EmailAddress)==false)
		{
			errmsg = errmsg + "Enter valid email address (Format eg:xyz@example.com) \n";
			C_EmailAddress.className = "elqFieldValidation";
		}
	  }
	 
	 if (validate_empty(C_Company)==false)
	  {
		errmsg = errmsg + "Form Field Company is required \n";
		C_Company.className = "elqFieldValidation";
	 }
	if (validate_empty(C_Address1)==false)
	  {
		errmsg = errmsg + "Form Field Address 1  is required \n";
		C_Address1.className = "elqFieldValidation";
	 }
	 if (validate_empty(C_City)==false)
	  {
		errmsg = errmsg + "Form Field City is required \n";
		C_City.className = "elqFieldValidation";
	 }
	  if (validate_empty(Province)==false)
	  {
		errmsg = errmsg + "Form Field Province is required \n";
		Province.className = "elqFieldValidation";
	 }
	if (validate_empty(C_PostalCode)==false)
	  {
		errmsg = errmsg + "Form Field PostalCode  is required \n";
		C_PostalCode.className = "elqFieldValidation";
	}
	else
	{
	if(isValidPostalcode(C_PostalCode.value)==false)
		{
			errmsg = errmsg + "Enter valid Postal Code (Format eg:X9X9X9)\n";
			C_PostalCode.className = "elqFieldValidation";	
		}
	}
	
	}

	if(errmsg !="")
	{
	alert(errmsg);
	return false;
	}

	return true;
}

function resetstyle(relement)
{
	relement.className = "elqField";
}

function isValidPostalcode(postalcode)
{ 
	if (postalcode.length == 6 && postalcode.search(/^[a-zA-Z]\d[a-zA-Z]\d[a-zA-Z]\d$/) != -1) 
	{ return true; }
	else 
	{ return false; }
}
