function check()
{
	var dec = /\./;
	var tempamount = document.calco.amount.value;
	var tempterm = document.calco.term.value;
	var checkamount = tempamount.search(dec);
	var checkterm = tempterm.search(dec);
		
	if(isNaN(document.calco.current.value))
	{
		alert("Your current repayment must be entered as digits only i.e. 0-9");
		document.calco.amount.focus();
	}		
	else if(isNaN(document.calco.amount.value))
	{
		alert("The loan amount must be entered as digits only i.e. 0-9");
		document.calco.amount.focus();
	}
	else if(isNaN(document.calco.term.value))
	{
		alert("The loan term must be entered as digits only i.e. 0-9");
		document.calco.term.focus();
	}
	else if(checkamount > -1)
	{
		alert("The loan amount must not contain any decimal points");
		document.calco.amount.focus();
	}
	else if(checkterm > -1)
	{
		alert("The loan term must not contain any decimal points");
		document.calco.term.focus();
	}
	else if(document.calco.amount.value < 5000 || document.calco.amount.value > 500000)
	{
		alert("The loan amount must be between £5,000 and £500,000");
		document.calco.amount.focus();
	}
	else if(document.calco.term.value < 60 || document.calco.term.value > 300)
	{
		alert("The loan term must be between 60 and 300 months");
		document.calco.term.focus();
	}
	else
		calculate()
}

function calculate()
{
	if(document.calco.amount.value < 10000)
	{
		var roi = 0.01019;
		var apr = "12.9";
	}
	else if(document.calco.amount.value >= 10000 && document.calco.amount.value <= 19999)
	{
		var roi = 0.00907;
		var apr = "11.4";
	}
	else if(document.calco.amount.value >= 20000 && document.calco.amount.value <= 49999)
	{
		var roi = 0.00869;
		var apr = "10.9";
	}
	else if(document.calco.amount.value >= 50000)
	{
		var roi = 0.00793;
		var apr = "9.9";
	}
	
	var reciprocal = 1 / (1 + roi);
	reciprocal = Math.pow(reciprocal,document.calco.term.value);

	var	result = 1 - reciprocal;

	result = result / roi;

	var payment = document.calco.amount.value / result;

	payment = payment + 0.005;
	
	var number = payment;

	number = number + "";
	var checkdot = number.indexOf("."); 
	
	if(checkdot == -1)
	{
		number = number + ".00"; 
		document.calco.result.value = number;
		document.calco.apr.value = apr;
		savings();
	}
	else
	{
		items = new Array();
		items = number.split(".");
		if(items[1].length == 1)
		{
			number = number + "0";
			document.calco.result.value = number;
			document.calco.apr.value = apr;
			savings();
		}
		if(items[1].length > 1)
		{
			var dp = items[1].slice(0, 2);
			if(items[1].charAt(2) > 4)
				dp = (1 * dp) + 1;
			number = items[0] + "." + dp;
			document.calco.result.value = number;
			document.calco.apr.value = apr;
			savings();
		}
	}
	
	function savings()
	{
		var temp = document.calco.current.value - document.calco.result.value;
	
		var number = temp;

		number = number + "";
		var checkdot = number.indexOf("."); 
		
		if(checkdot == -1)
		{
			number = number + ".00"; 
			if(number > 0)
				document.calco.savings.value = number;
			else
				document.calco.savings.value = 0;
		}
		else
		{
			items = new Array();
			items = number.split(".");
			if(items[1].length == 1)
			{
				number = number + "0";
				if(number > 0)
					document.calco.savings.value = number;
				else
					document.calco.savings.value = 0;
			}
			if(items[1].length > 1)
			{
				var dp = items[1].slice(0, 2);
				if(items[1].charAt(2) > 4)
					dp = (1 * dp) + 1;
				number = items[0] + "." + dp;
				if(number > 0)
					document.calco.savings.value = number;
				else
					document.calco.savings.value = 0;
			}
		}
	}
}