
<!--
	//checks that data are valid 
	function checkNumber(input, min, max, msg) {

		msg = msg + " field has invalid data: " + input.value;

		//this makes sure that the number is a number
		var str = input.value;
		for (var i = 0; i < str.length; i++) {
			var ch = str.substring( i, i + 1)
			if ((ch < "0" || "9" < ch) && ch != '.') {
				alert(msg);
				return false;
			}
		}

		//this makes sure that the number lies between the min and max values allowed
		var num = 0 + str
		if (num < min || max < num) {
			alert(msg + " not in range [" + min + ".." + max + "]");
			return false;
		}
		input.value = str;
		return true;
	}

	function computeField(input) {
		if (input.value != null && input.value.length != 0)
		{
			input.value = "" + eval(input.value);
		}
		computeForm(input.form);
	}

	function computeForm(form) {
		var A=form.A.value;
		var T=form.T.value;
		var R=form.R.value;

		//making sure that an entry has been made in each field.
		if ((A == null || A.length == 0) ||
			(R == null || R.length == 0)) 
		{
			//alert('not all fields filled in');
			return;
		}

		// making sure that entries are valid by using check number
		if (!checkNumber(form.A, 1, 999999, "Amount") ||
			!checkNumber(form.R, .001, 1000, "Interest Rate") ||
			!checkNumber(form.T, 5, 25, "Period")) 
		{
			form.Cm.value = "Invalid";
			return;
		}

		// maths et al to be computed
		R = R / 100;
		var P = ((A*R)/12) * (1/(1-(Math.pow(1/(1+R),T))));
		form.Cm.value = poundsPence( P );
		P = ((A*0.12)/12) * (1 / (1-(Math.pow((1/1.12),T))));
		form.CCm.value = poundsPence( P );
		P = (A*R)/12;
		form.CI.value = poundsPence( P );
		P = (A*0.12)/12;
		form.CCI.value = poundsPence( P );
	}

	function poundsPence( N ) {
		// don't try this with ie3 because it's rubbish
		if ((navigator.appName.indexOf('Microsoft')>-1)
			&& (navigator.appVersion.indexOf('3.0')>-1) )
		{
			return N;
		}
		S = new String( N );
		var i = S.indexOf('.');
		if (i != -1) {
			S = S.substr( 0, i+3 );
			if (S.length-i < 3)
				S = S + '0';
		}
		return S;
	}

	//clears form
	function clearForm(form) {
		form.A.value = "";
		form.T.value = "";
		form.R.value = "";
	}

//-->
document.writeln("<form method=post>");
document.writeln("<table width=431' border='0' cellpadding='0' cellspacing='0' style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px;'>");
document.writeln("<tr>");
document.writeln("<td style='padding: 5px; background-color: #CC0000; color: #fff; font-size: 18px; font-family: Trebuchet MS, Verdana, Arial, Helvetica, sans-serif;' colspan=4>Britain.tv Mortgage Calculator Tool</td>");
document.writeln("</tr>");
document.writeln("<tr>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=250; font-family: Verdana; font-size: 12px;'>Mortgage required<br>");
document.writeln("</font><font size='-2'>(omit commas)</font></b></td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=10; font-family: Verdana; font-size: 12px;'>£&nbsp;</td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=100'><input type=text size=10 maxlength=8 name=A onChange='computeField(this)'></td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=55'>&nbsp;<br></td>");
document.writeln("</tr>");
document.writeln("<tr>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=250; font-family: Verdana; font-size: 12px;'>Repayment period 5-25 years<br>");
document.writeln("(omit commas)</td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=10;'>&nbsp;&nbsp;</td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=100'><input type=text size=10 maxlength=3 name=T onChange='computeField(this)'></td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=55; font-family: Verdana; font-size: 12px;'>years</td>");
document.writeln("</tr>");
document.writeln("<tr>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=250;font-family: Verdana; font-size: 12px;'>Interest rate<br>(enter 10% as 10)<br></td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=10; font-family: Verdana; font-size: 12px;'>&nbsp;&nbsp;</td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=100; font-family: Verdana; font-size: 12px;'><input type=text size=10 maxlength=4 name=R onChange='computeField(this)'></td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=55; font-family: Verdana; font-size: 12px;'>%<br></td>");
document.writeln("</tr>");
document.writeln("<tr>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 0px dashed; padding: 5px; width=250' colspan='5'></td>");
document.writeln("</tr>");
document.writeln("<tr>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=250'></td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=10'></td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=100'><input type='button' value='Calculate' maxlength='15' onClick='computeForm(this.form)' name='button'><br>");
document.writeln("&nbsp;</td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=55'>&nbsp;</td>");
document.writeln("</tr>");
document.writeln("<tr>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=250; font-family: Verdana; font-size: 12px;'>Monthly repayment<br>(omit commas)<br></td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=10; font-family: Verdana; font-size: 12px;'>£&nbsp;</td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=100'><input type=text size=10 maxlength=12 name=Cm onChange='computeField(this)'></td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=55'>&nbsp;</td>");
document.writeln("</tr>");
document.writeln("<tr>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=250; font-family: Verdana; font-size: 12px;'>(Interest only)<br></td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=10 font-family: Verdana; font-size: 12px;'>£&nbsp;</td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=100'><input type=text size=10 maxlength=12 name=CI onChange='computeField(this)'></td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=55'>&nbsp;</td>");
document.writeln("</tr>");
document.writeln("<tr>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=250; font-family: Verdana; font-size: 12px;'>But be careful, at 12% it will be:<br></td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=10; font-family: Verdana; font-size: 12px;'>£&nbsp;</td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=100'><input type=text size=10 maxlength=12 name=CCm onChange='computeField(this)'></td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=55'>&nbsp;</td>");
document.writeln("</tr>");
document.writeln("<tr>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=250; font-family: Verdana; font-size: 12px;'>(Interest only)</td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=10 font-family: Verdana; font-size: 12px;'>£&nbsp;</td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=100'><input type=text size=10 maxlength=12 name=CCI onChange='computeField(this)'></td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 1px dashed; padding: 5px; width=55'>&nbsp;</td>");
document.writeln("</tr>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 0px dashed; padding: 5px; width=250'>&nbsp;</td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 0px dashed; padding: 5px; width=10'>&nbsp;</td>");
document.writeln("<td style='background-color: #FFFFFF; border-bottom: #ccc 0px dashed; padding: 5px; width=100'>&nbsp;<br>");
document.writeln("<input type='reset' value='&nbsp;&nbsp;&nbsp;&nbsp;Clear&nbsp;&nbsp;&nbsp;&nbsp;' maxlength='15' onClick='clearForm(this.form)' name='reset'>");
document.writeln("</td>");
document.writeln("<tr><td colspan='4' align=center style='text-align: center; font-size: 12px; font-family: Verdana; width: 410px; background-color: #FAFAFF; font-weight: bold;'>Webmasters - get this tool on your website from <a href='http://www.britain.tv'>www.britain.tv</a>, the UK's No.1 information portal!</td></tr></table>");
document.writeln("</table>");
document.writeln("</form>");
