//Declares random Math values for variables used in equation
var NumA=(Math.floor(Math.random()*11));
var NumB=(Math.floor(Math.random()*11));
var NumC=NumA+NumB;

//-------------

//This function trims whitespace
function trim(s)
{
  return s.replace(/^\s+|\s+$/, '');
} 


function checkform (form)
{
//Validates First Name value
    var error = "";
  
    if (form.senderFname.value.length == 0) {
	form.senderFname.focus();
        form.senderFname.style.background = 'Yellow'; 
        alert("You didn't enter your First name.");
        return false;
    } else {
        form.senderFname.style.background = 'White';
        //return true;
    }

//-------------

//Validates Last Name value
    var error = "";
  
    if (form.senderLname.value.length == 0) {
	form.senderLname.focus();
        form.senderLname.style.background = 'Yellow'; 
        alert("You didn't enter your Last name.");
        return false;
    } else {
        form.senderLname.style.background = 'White';
        //return true;
    }
	
//-------------

//Validates Address Number-Street value
    var error = "";
  
    if (form.AddyNum.value.length == 0) {
	form.AddyNum.focus();
        form.AddyNum.style.background = 'Yellow'; 
        alert("You didn't enter your Property address.");
        return false;
    } else {
        form.AddyNum.style.background = 'White';
        //return true;
    }

//-------------

//Validates Address City value
    var error = "";
  
    if (form.AddyCity.value.length == 0) {
	form.AddyCity.focus();
        form.AddyCity.style.background = 'Yellow'; 
        alert("You didn't enter the City your property is located in.");
        return false;
    } else {
        form.AddyCity.style.background = 'White';
        //return true;
    }
	
//-------------

//Validates Address State value
    var error = "";
  
    if (form.AddyState.value.length == 0) {
	form.AddyState.focus();
        form.AddyState.style.background = 'Yellow'; 
        alert("You didn't enter the State your property is located in.");
        return false;
    } else {
        form.AddyState.style.background = 'White';
        //return true;
    }

//-------------

//Validates Address Zip value
    var error = "";
  
    if (form.AddyZip.value.length == 0) {
	form.AddyZip.focus();
        form.AddyZip.style.background = 'Yellow'; 
        alert("You didn't enter the Zip Code of your property.");
        return false;
    } else {
        form.AddyZip.style.background = 'White';
        //return true;
    }

//-------------

//Validates Plan to Buy value
    var error = "";
  
    if (form.planBuy.value.length == 0) {
	form.planBuy.focus();
        form.planBuy.style.background = 'Yellow'; 
        alert("You didn't input when you plan on buying.");
        return false;
    } else {
        form.planBuy.style.background = 'White';
        //return true;
    }
    
//-------------

//Validates Price Range value
    var error = "";
  
    if (form.priceRange.value.length == 0) {
	form.priceRange.focus();
        form.priceRange.style.background = 'Yellow'; 
        alert("You didn't enter your Price Range.");
        return false;
    } else {
        form.priceRange.style.background = 'White';
        //return true;
    }

//-------------

//Validates Number Bedrooms value
    var error = "";
  
    if (form.numberBeds.value.length == 0) {
	form.numberBeds.focus();
        form.numberBeds.style.background = 'Yellow'; 
        alert("You didn't enter the number of Bedrooms you prefer.");
        return false;
    } else {
        form.numberBeds.style.background = 'White';
        //return true;
    }
    
//-------------

//Validates Number of Baths value
    var error = "";
  
    if (form.numberBaths.value.length == 0) {
	form.numberBaths.focus();
        form.numberBaths.style.background = 'Yellow'; 
        alert("You didn't enter the number of Bathrooms you prefer.");
        return false;
    } else {
        form.numberBaths.style.background = 'White';
        //return true;
    }

//-------------

//Validates Square Feet value
//    var error = "";
//  
//    if (form.squareFeet.value.length == 0) {
//	form.squareFeet.focus();
//        form.squareFeet.style.background = 'Yellow'; 
//        alert("You didn't enter the Square Feet you prefer.");
//        return false;
//    } else {
//        form.squareFeet.style.background = 'White';
        //return true;
//    }

//-------------

//Validates Phone Number value

	if(form.senderPhone.value.search(/\d{3}\-\d{3}\-\d{4}/)==-1)
   {
      alert("The phone number you entered is not valid.\r\nPlease enter a phone number with the format xxx-xxx-xxxx.");
	  form.senderPhone.style.background = 'Yellow'; 
	  form.senderPhone.focus();
      return false;
   }  else {
        form.senderPhone.style.background = 'White';
   }
	
//-------------

//Validates Sender contact time of day value
    var error = "";
  
    if (form.senderContact.value.length == 0) {
	form.senderContact.focus();
        form.senderContact.style.background = 'Yellow'; 
        alert("Please enter the best time of day for us to reach you.");
        return false;
    } else {
        form.senderContact.style.background = 'White';
        //return true;
    }
//-------------

//Validates Sender Email Value
    var error="";
    var tfld = trim(form.senderEmail.value);        // value of field with whitespace trimmed off
    var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/ ;
    var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/ ;
    
    if (form.senderEmail.value == "") {
	form.senderEmail.focus();
        form.senderEmail.style.background = 'Yellow';
        alert("You didn't enter a sender email address.");
        return false;
    } else if (!emailFilter.test(tfld)) {              //test email for illegal characters
	form.senderEmail.focus();
        form.senderEmail.style.background = 'Yellow';
        alert("Please enter a valid sender email address.");
        return false;
    } else if (form.senderEmail.value.match(illegalChars)) {
	form.senderEmail.focus();
        form.senderEmail.style.background = 'Yellow';
        alert("The sender email address contains illegal characters.");
        return false;
    } else {
        form.senderEmail.style.background = 'White';
		//return true; 
   }
   
//Validates Sender Email Value, confirms that user input correctly
   
    if (form.confirmEmail.value != form.senderEmail.value) {
	form.confirmEmail.focus();
        form.confirmEmail.style.background = 'Yellow';
        alert("The two email addresses entered do not match.");
        return false;
    } else {
        form.confirmEmail.style.background = 'White';
		//return true; 
   }
    
//---------------

//Validates Math Value

  if (form.math.value != NumC) {
    form.math.focus();
    form.math.style.background = 'Yellow'; //changes form field background upon validation
    alert("Please enter the correct Math Validation sum.");
    return false ;
  }
  form.math.style.background = 'White';
  return true ;
}//closing tag
// End of Javascript