// form validation function //
function validate(form) {

  var contactName = form.contactName.value;
  var contactTel = form.contactTel.value;
  var contactEmail = form.contactEmail.value;
  var brideName = form.brideName.value;
  var brideAddress = form.brideAddress.value;
  var groomName = form.groomName.value;
  var groomAddress = form.groomAddress.value;
  var weddingPackage = form.weddingPackage.value;
  var budget = form.budget.value;
  var numberOfGuests = form.numberOfGuests.value;
  var proposedDate = form.proposedDate.value;
  var weddingLocation = form.weddingLocation.value;
  var destinationCountry = form.destinationCountry.value;

  var nameRegex = /^[a-zA-Z]+(([\'\,\.\- ][a-zA-Z ])?[a-zA-Z]*)*$/;
  var emailRegex = /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/;
  var messageRegex = new RegExp(/<\/?\w+((\s+\w+(\s*=\s*(?:".*?"|'.*?'|[^'">\s]+))?)+\s*|\s*)\/?>/gim);

  var goAhead = 'true';

var c_value = "";
for (var i=0; i < document.getElementsByName('bridalPackages[]').length; i++)
   {
   if (document.getElementsByName('bridalPackages[]')[i].checked)
      {
      c_value = c_value + document.getElementsByName('bridalPackages[]').value + "\n";
      }
   }

var d_value = "";
for (var i=0; i < document.getElementsByName('needs[]').length; i++)
   {
   if (document.getElementsByName('needs[]')[i].checked)
      {
      d_value = c_value + document.getElementsByName('needs[]')[i].value + "\n";
      }
   }



    document.getElementById('contactName').innerHTML ='';  
    document.getElementById('contactTel').innerHTML ='';  
    document.getElementById('contactEmail').innerHTML ='';  
    document.getElementById('brideName').innerHTML ='';  
    document.getElementById('brideAddress').innerHTML ='';  
    document.getElementById('groomName').innerHTML ='';  
    document.getElementById('groomAddress').innerHTML ='';  
    document.getElementById('weddingPackage').innerHTML ='';  
    document.getElementById('bridalPackages').innerHTML ='';  
    document.getElementById('budget').innerHTML ='';  
    document.getElementById('numberOfGuests').innerHTML ='';  
    document.getElementById('proposedDate').innerHTML ='';  
    document.getElementById('weddingLocation').innerHTML ='';  
    document.getElementById('destinationCountry').innerHTML ='';  
    document.getElementById('needs').innerHTML ='';  



  if(contactName == "") {
    document.getElementById('contactName').innerHTML ='You must enter the Contact Name. E.g. John Smith.';
    form.contactName.focus();

    return false;
  }
  
  if(!contactName.match(nameRegex)) {
    document.getElementById('contactName').innerHTML ='Please enter your full name E.g John Smith.';
    form.contactName.focus();
    return false;
  }

  if(contactTel.length < 7) {
    document.getElementById('contactTel').innerHTML ='You must enter a Contact Telephone Number.<br /> E.g. 1718-980-8737.';
    form.contactTel.focus();
    return false;
  }
  if(contactEmail.length > 1) {

	  if(!contactEmail.match(emailRegex)) {
	     document.getElementById('contactEmail').innerHTML ='Please enter a valid email adddress.<br /> E.g. johnsmith@gmail.com';
	    form.contactEmail.focus();
	    return false;
	  }
  }

  if(brideName.length < 4) {
    document.getElementById('brideName').innerHTML ='You must enter the Bride\'s Name.<br /> E.g. Miss Lucy Jones';
    form.brideName.focus();
    return false;
  }
  
  if(brideAddress.length < 10) {
     document.getElementById('brideAddress').innerHTML ='You must enter the Bride\'s Address. E.g. Apt 3C, 123 Parkway Drive<br />42nd Street, Brooklyn, <br />New York, 11202, USA';
	form.brideAddress.focus();	
	return false;
  }

  if(groomName.length < 4) {
     document.getElementById('groomName').innerHTML ='You must enter the Groom\'s Name.<br /> E.g. Mr. Jack Persie';
    form.groomName.focus();
    return false;
  }

  if(groomAddress.length < 10 ) {
    document.getElementById('groomAddress').innerHTML ='You must enter the Groom\'s Address. E.g. Apt 3C, 123 Parkway Drive<br />42nd Street, Brooklyn, <br />New York, 11202, USA';
    form.groomAddress.focus();
    return false;
  }

  if(weddingPackage == "") {
     document.getElementById('weddingPackage').innerHTML ='Please select a Wedding Package.<br /> Choose "Other / Custom" for a custom package.';
    form.weddingPackage.focus();
    return false;
  }

  if(c_value== "") {
     document.getElementById('bridalPackages').innerHTML = 'Please select at least one Bridal Package.<br /> Choose "None" if you do not require a bridal package.';
    document.getElementsByName('bridalPackages[]')[0].focus();
    return false;
  }

  if(numberOfGuests == "") {
    document.getElementById('numberOfGuests').innerHTML ='Please enter the number of Guests.<br />E.g. 100';
    form.numberOfGuests.focus();
    return false;
  }
  
   if(budget == "") {
    document.getElementById('budget').innerHTML ='Please enter you approximate budget in US$.<br />E.g. $5,000';
    form.budget.focus();
    return false;
  } 
  
  if(proposedDate == "") {
     document.getElementById('proposedDate').innerHTML ='Please enter the Proposed Date of the wedding.';
    form.proposedDate.focus();
    return false;
  }
  
  if(weddingLocation == "") {
     document.getElementById('weddingLocation').innerHTML ='Please enter a wedding Location.';
    form.weddingLocation.focus();
    return false;
  }
  
  if(destinationCountry == "") {
    document.getElementById('destinationCountry').innerHTML ='Please enter a Destination Country.';
    form.destinationCountry.focus();
    return false;
  }

  if(d_value == "") {
     document.getElementById('needs').innerHTML ='Please select your Necessities. Select "None" if you do not require any.';
   document.getElementsByName('needs[]')[0].focus();
    return false;
  }

  return true;
}

