//check car enquiry form
function checkForm(formType) {
	var errorMsg;

	var badFields = getBadFields(formType);

	var badFieldsLength = badFields.length;
	if (badFieldsLength > 0) {
		errorMsg = 'The following fields are required:\n';
		for (i = 0; i < badFieldsLength; i++) {
			errorMsg += '- ' + badFields[i].name + '\n';
		}
		// damn FF bug 236791
		document.getElementById(badFields[0].id).setAttribute('autocomplete', 'off');
		document.getElementById(badFields[0].id).focus();
		document.getElementById(badFields[0].id).setAttribute('autocomplete', '');
		alert(errorMsg);
		return false;
	}
	else {
		return true;
	}
}


function checkFields(frm, fields) {
	var badFields = new Array();
	var frm = document.getElementById(frm);

	for (id in fields) {
		var fld = fields[id];
		var obj = frm[fld];
		var type = typeof obj;
		if (type != 'object') {
			continue;
		}
		if (obj.nodeName) {
			if (!obj.value || obj.value == '') {
				badFields.push({id: id, name: fld});
			}
		}
		else {
			var checked = false;
			for (var j = 0; j < obj.length; j++) {
				if (obj[j].checked) {
					checked = true;
				}
			}
			if (!checked) {
				badFields.push({id: id, name: fld});
			}
		}
	}
	return badFields;
}

function getBadFields(formType) {
	var badFields = new Array();

	switch(formType) {
		case 'contactForm':
			var fields = {
				fldName: 'Name',
				fldTel: 'Telephone',
				fldEmail: 'Email',
				fldAddress: 'Address',
				fldCompany: 'Company'
			};
			badFields = checkFields('EnquiryForm', fields);
			break;
		default:
			if (document.getElementById('name').value == '') {
				badFields.push({id: 'name', name: 'name'});
			}
			if (document.getElementById('email').value == '') {
				badFields.push({id: 'email', name: 'email address'});
			}
	}

	return badFields;
}