var TRACK_CSVEHICLEENQUIRY = true;

function validateEnquiry(btn, isphonereq)
{
	var parentId = btn.id.substring(0, btn.id.lastIndexOf("_")+1);
	var contactname = document.getElementById(parentId+"contactname");
	var email = document.getElementById(parentId+"email");
	var postcode = document.getElementById(parentId+"postcode");
	var homephone = document.getElementById(parentId+"homephone");
	var mobilephone = document.getElementById(parentId+"mobilephone");
	var businessphone = document.getElementById(parentId + "businessphone");
	var comments = document.getElementById(parentId + "comments");
	
	if (Trim(contactname.value) == "")
	{
		alert("The Name field cannot be blank - please re-enter");
		contactname.focus();
		return false;
	}
	if (Trim(email.value) == "")
	{
		alert("The Email field cannot be blank - please re-enter");
		email.focus();
		return false;
	}
	if (isValidEmail(email.value)==false)
	{
		alert("Please enter a valid email address");
		email.focus();
		return false;
	}
	if (Trim(postcode.value) == "")
	{
		alert("The Postcode field cannot be blank - please re-enter");
		postcode.focus();
		return false;
	}
	if (isNaN(Trim(postcode.value)))
	{		
		alert("Postcode must be a valid value");
		postcode.focus();
		return false;	
	}
	if (Trim(postcode.value).length != 4) 
	{
		alert("The Postcode field must contain four digits - please re-enter");
		postcode.focus();
		return false;	
	}
	var home = homephone.value.replace(/\s/g, "");
	var mobile = mobilephone.value.replace(/\s/g, "");
	var work = businessphone.value.replace(/\s/g, "");

	if (isphonereq && home == "" && mobile == "" && work == "")
	{
		alert("Please enter at least one telephone number for contact purposes");
		mobilephone.focus();
		return false;
	}
	if (home != "" && (msg = phoneNumberErrorMsg(home)))
	{
	    alert(msg);
		homephone.focus();
		return false;
	}
    if (mobile != "" && (msg = phoneNumberErrorMsg(mobile)))
	{
	    alert(msg);
		mobilephone.focus();
		return false;
	}
    if (work != "" && (msg = phoneNumberErrorMsg(work)))
	{
	    alert(msg);
		businessphone.focus();
		return false;
    }

    if (comments.value.length > 4000) 
    {
        alert("The comments field is limited to 4,000 characters. You have exceed this limit. Please revise text.");
        comments.focus();
        return false;
    }
	return true;
}

function phoneNumberErrorMsg(phone)
{
    var match10 = /^0[1-9]\d{8}$/,
        match8 = /^[1-9]\d{7}$/,
        matchAlphabet = /[^\d]/;

    if (matchAlphabet.test(phone))
        return "Phone number fields can only contain numbers (eg: 04xx xxxx xxxx or 9xxx xxxx)";

    if (phone.charAt(0) == '0')
    {
        if (!match10.test(phone))
            return "Phone number fields can only contain numbers of 10 characters (eg: 04xx xxxx xxxx)";
        return false;
    }

    if (!match8.test(phone))
        return "Phone number fields can only contain numbers of 8 characters (eg: 9xxx xxxx)";
    return false;
}

function validateDealerEnquiry(btn)
{
	var parentId = btn.id.substring(0, btn.id.lastIndexOf("_")+1);
	var name = document.getElementById(parentId+"txtName");
	var email = document.getElementById(parentId+"txtEmail");
	var comments = document.getElementById(parentId+"txtComments");
	
	if (Trim(name.value) == "")
	{
		alert("The Name field cannot be blank - please re-enter");
		name.focus();
		return false;
	}
	if (Trim(email.value) == "")
	{
		alert("The Email field cannot be blank - please re-enter");
		email.focus();
		return false;
	}
	if (isValidEmail(email.value)==false)
	{
		alert("Please enter a valid email address");
		email.focus();
		return false;
	}
	if (Trim(comments.value) == "")
	{
		alert("The comments field cannot be blank - please re-enter");
		comments.focus();
		return false;
	}
	return true;
}

function validateAdvertiseDealership(btn) 
{
	var parentid = btn.id.substring(0, btn.id.lastIndexOf("_")+1);
	var name = document.getElementById(parentid+"txtName");
	var email = document.getElementById(parentid+"txtEmail");	
	var dealership = document.getElementById(parentid+"txtDealershipName");	
	var comment = document.getElementById(parentid+"txtComments");	
	
	if (Trim(name.value) == "")
	{
		alert("The Name field cannot be blank - please re-enter");
		name.focus();
		return false;	
	}		
	if (Trim(dealership.value) == "")
	{
		alert("The dealer name field cannot be blank - please re-enter");
		dealership.focus();
		return false;	
	}
	if (Trim(email.value) == "")
	{
		alert("The Email field cannot be blank - please re-enter");
		email.focus();
		return false;
	}
	if (isValidEmail(email.value)==false)
	{
		alert("Please enter a valid email address");
		email.focus();
		return false;
	}
	if (Trim(comment.value) == "")
	{
		alert("The request field cannot be blank - please re-enter");
		comment.focus();
		return false;	
	}	
	return true;
}
function Trim(str){
	while(str.charAt(0) == (" ") )	{
		str = str.substring(1);
	}

	while(str.charAt(str.length-1) == " " ){
		str = str.substring(0,str.length-1);
	}

	return str;
}
function isValidEmail (str)
{
  // Return immediately if an invalid value was passed in
  if (str+"" == "undefined" || str+"" == "null")
   return false;

  else
  {
   if (str+"" == "")
	return true;  // email is not required
   else

	 str += "";
	 namestr = str.substring(0, str.indexOf("@"));  // everything before the '@'
	 domainstr = str.substring(str.indexOf("@")+1, str.length); // everything after the '@'

	 // Rules:
	 // namestr must contain something before the '@'
	 // domainstr must contain a period that is not the first character (i.e. right after
	 // the '@').
	 if ((namestr.length == 0) || (domainstr.indexOf(".") <= 0) || (domainstr.indexOf("@") != -1))
	  return false;
	 }

	return true;
}

