function mark_mandatory (setting) {

	if (setting == 'new') {

		$(".newclient").show();

	} else if (setting == "existing") {

		$(".newclient").hide();

	}

}

function checkData(form) {


	var reqd_fields_existing = new Array (
	'first_name',
	'last_name',
	'trading_name',
	'debtor_first_name',
	'debtor_last_name',
	'debt',
	'date_due',
	'desc_debt'
	);

	var reqd_radio_fields = new Array (
	'trader',
	'personal_guarantee',
	'pay_costs'
	);


	var reqd_fields_new = new Array (
	'first_name',
	'last_name',
	'trading_name',
	'postal_address',
	'phone',
	'fax',
	'email',
	'debtor_first_name',
	'debtor_last_name',
	'debt',
	'date_due',
	'desc_debt'
	);
 	var errstr = '';
	var errstr2 = '';

	for(i=0; i<form.cust.length; i++) {

		if(form.cust[i].checked) {

				var customer=form.cust[i].value;
		}
	 }
	for(i=0; i<form.trader.length; i++) {

		if(form.trader[i].checked) {

				var trader=form.trader[i].value;
		}
	 }
	for(i=0; i<form.personal_guarantee.length; i++) {

		if(form.personal_guarantee[i].checked) {

				var personal_guarantee=form.personal_guarantee[i].value;
		}
	 }
	for(i=0; i<form.pay_costs.length; i++) {

		if(form.pay_costs[i].checked) {

				var pay_costs=form.pay_costs[i].value;
		}
	 }
	


	//regex for phone number
	var regph=/^[+0-9\s#extsion.]{6,22}$/;	
	var regmb=/^[+0-9\s]{6,22}$/;	
	//var regeml=/^([a-zA-Z0-9-\._]+[a-zA-Z]{1})@([a-zA-Z]{1}[0-9a-zA-Z-\._]+)\.([a-zA-Z]{2,3})$/;
	var regeml=/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9])+$/;

	if (customer == 'existing') {

		for (i=0; i< reqd_fields_existing.length; i++) {
			var a = reqd_fields_existing[i];
			
			var obj = eval('form.'+a+'.value');

			if (obj=='') {
				var reqd = a.replace(/_/g,' ');
				errstr += '\t - ' + reqd+' is required\n';
				var fld = eval('form.'+a);
				fld.style.borderColor="#FF0000";
			}
		}

		
	} else if (customer == 'new') {

		for (i=0; i< reqd_fields_new.length; i++) {
			var a = reqd_fields_new[i];
			//alert (a);
			var val = eval('form.'+a+'.value');

			if (val=='') {
				var reqd = a.replace(/_/g,' ');
				errstr += '\t - ' + reqd+' is required\n';
				var fld = eval('form.'+a);
				fld.style.borderColor="#FF0000";
			} 
		}

	} else {

		var errstr3 = 'Please indicate if you are an Existing or New customer and then ensure you complete all fields marked with an asterix.\n\nThank you.';
	}
	if (customer != null) {
		for (i=0; i< reqd_radio_fields.length; i++) {

			var a = reqd_radio_fields[i];
			
			var rval = eval(a);
			if (rval== null) {
				var reqd = a.replace(/_/g,' ');
				if (reqd == 'trader'){
					reqd = 'type of entity';
					var dv = document.getElementById('trader_type');
					dv.style.color="#FF0000";
					
				} else if (reqd == 'personal guarantee') {
					var dv = document.getElementById('personal_guarantee');
					dv.style.color="#FF0000";

				} else if (reqd == 'pay costs') {
					reqd = 'is there an agreement to pay costs';
					var dv = document.getElementById('pay_costs');
					dv.style.color="#FF0000";

				} else if (reqd == 'desc debt') {
					reqd = 'description of debt';
					var dv = document.getElementById('desc_debt');
					dv.style.color="#FF0000";
				}
				errstr += '\t - ' + reqd+' is required\n';

			
			}

		}
	}
	if (form.phone.value!='')  {
		var mb = form.phone.value;
		var res = mb.match(regph);
		if (res == null) errstr2  += ' - the entry for Phone is not valid - please correct it\n';
	}
	if (form.fax.value!='')  {
		var mb = form.fax.value;
		var res = mb.match(regph);
		if (res == null) errstr2  += ' - the entry for Fax is not valid - please correct it\n';
	}
	if (form.email.value!='') {
		var eml = form.email.value;
		var res = eml.match(regeml);
		if (res == null) errstr2  += ' - the entry for Email is not valid - please correct it now\n';
	}
	if (form.mobile.value!='')  {
		var mb = form.mobile.value;
		var res = mb.match(regmb);
		if (res == null) errstr2  += ' - the entry for Mobile is not valid - please correct it\n';
	}

	if (errstr||errstr2||errstr3) {
		if (errstr) var bl = 1;
		if (errstr) {
			errstr = 'Before successfully submitting this form please complete required fields:\n\n'+errstr;
		} else if (errstr2) { 
			errstr = 'The following concerns fields that presently have incorrect data:\n\n';
		}
		if (errstr2 && bl) errstr += '\nAlso:\n';
		errstr += errstr2;

		if (errstr && errstr3) {
			errstr = errstr3 + errstr;
		} else if (errstr3) {

			errstr = errstr3;
		}

		alert (errstr);
		return false;
	}
	
}

// Toggle on/off from headline 
function toggle(targetId) {
	var target = document.getElementById(targetId); 
	if (target.style.display == "none"){
		target.style.display="inline"; 
	} else {
		target.style.display="none"; 
	} 
} 
// Usage: 
// Anchor: onClick="toggle(id)" 
// Link: <div id="id" style="display: none;"><? include("path/filename"); ?></div> 

//Countdown characters in textarea while typing.
 // function parameters are: field - the string field, count - the field for remaining characters  number and max - the maximum number of characters  
 function CountLeft(field, count, max) {
	 // if the length of the string in the input field is greater than the max value, trim it 
	 if (field.value.length > max)
	 field.value = field.value.substring(0, max);
	 else
	 // calculate the remaining characters  
	 count.value = max - field.value.length;
 }

// Usage:
// <input name="text" type="text" size="40" onKeyDown="CountLeft(this.form.name,this.form.left,50);" onKeyUp="CountLeft(this.form.name,this.form.left,50);">
// <input readonly type="text" name="left" size=3 maxlength=3 value="50">characters left
// at every key up and key down event the upper function is called 


