function DCH_validateForm()
{
// defaults for the script
   var errors = '';
   var oMyForm = document.appform;
// regular expression patterns
   var validemail    = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
   var validname     = /^([a-zA-Z\-'])+ *([a-zA-Z\- '])*$/;
   var validdate     = /^\d{1,2}\D+\d{1,2}\D+\d{2,4}$/;
   var validphone    = /^[\d \-]{10,}$/;
   var validpostcode = /^[a-zA-Z0-9 ]{5,}$/;
   var validcurrency   = /^[0-9\$£\.,]{4,}$/;

// test for basic mandatory form field values
   if(!validname.test(oMyForm.name.value))
         {errors+='Provide your full name.\n';}
   if(!oMyForm.address.value)
         {errors+='Provide your address.\n';}
   if(!validemail.test(oMyForm.email.value))
         {errors+='Provide a valid email address.\n';}
   if(!validphone.test(oMyForm.number.value))
         {errors+='Provide contact telephone number.\n';}
   if(   (oMyForm.secured.checked == false) 
	   && (oMyForm.remortgage.checked == false) 
	   && (oMyForm.debtmanagement.checked == false)
	   && (oMyForm.iva.checked == false)
	   && (oMyForm.creditcard.checked == false)
	   && (oMyForm.carfinance.checked == false)
	   && (oMyForm.unsecured.checked == false)
	   && (oMyForm.insurances.checked == false)
	   && (oMyForm.overseasmortgage.checked == false)
	   && (oMyForm.otherlead.value == '')
	  )
         {errors+='Provide at least one type of lead.\n';}
//   if((oMyForm.payment[0].checked == false) && (oMyForm.payment[1].checked == false) && (oMyForm.payment[2].checked == false))
//         {errors+='Provide method of payment.\n';}

// show errors or submit form
   if (errors){alert('We cannot accept your application until the following fields are completed\n-----------------------------------------------------------------------------\n'+errors);}
   else{oMyForm.submit();}
}