function spamstop(adre,dome,exte)
{
	window.location.replace('mailto:' +adre+ '@' +dome+ '.' +exte+ '?subject=Feedback from www.whiteheadfrancis.co.uk');
}
function MM_findObj(n, d)
{ //v4.01
	var p, i, x;
	if (!d) d = document;
	if ((p = n.indexOf("?")) > 0 && parent.frames.length)
	{
		d = parent.frames[n.substring(p+1)].document;
		n = n.substring(0, p);
	}
	if (!(x = d[n]) && d.all) x = d.all[n];
	for (i = 0; !x && i < d.forms.length; i++) x = d.forms[i][n];
	for (i = 0; !x && d.layers && i < d.layers.length; i++) x = MM_findObj(n,d.layers[i].document);
	if (!x && d.getElementById) x = d.getElementById(n);
	return x;
}
function MM_validateForm()
{ //v1.1 TJS customised
	var i, p, q, nm, nmf, test, num, min, max, errors = '', args = MM_validateForm.arguments;
	for (i = 0; i < (args.length-2); i += 3)
	{
		test = args[i+2];
		val  = MM_findObj(args[i]);
		if (val)
		{
			nm  = args[i+1];
			if ((val = val.value) != '')
			{
				if (val == 'Name')
				{
					errors += '- "' + nm + '" is required.\n';
				}
				if (test.indexOf('isEmail') != -1)
				{
					p = val.indexOf('@');
					if (p < 1 || p == (val.length-1)) errors += '- "' + nm + '" field must contain an e-mail address.\n';
				}
				else if (test != 'R' && test != 'RisAddress' && test != 'RisOther')
				{
					num = parseFloat(val);
					if (isNaN(val)) errors += '- "' + nm + '" must contain a number.\n';
					if (test.indexOf('inRange') != -1)
					{
						p = test.indexOf(':');
						min = test.substring(8, p);
						max = test.substring(p+1);
						if (num < min || max < num) errors += '- "' + nm + '" must contain a number between ' + min + ' and ' + max + '.\n';
					}
				}
			}
			else if (test.charAt(0) == 'R') errors += '- "' + nm + '" is required.\n';
		}
	}
	if (errors) alert('The following error(s) occurred:\n\n' + errors);
	document.MM_returnValue = (errors == '');
}
