// JavaScript Document

calculate_payment = function(p,r,m) {	
	return (p*(r/12)) / (1-(Math.pow((1+(r/12)),-m)))
}

roundTo = function (base,precision) {
	var m = Math.pow(10, precision);
	var a = Math.round(base * m) /m;
	return a;
}
function formatTo(base,precision) {

	var a = roundTo(base,precision);
	var s = a.toString();
	
	var decomalIndex = s.indexOf(".");
	if (precision > 0 && decimalIndex < 0) {
		decimalIndex = s.length;
		s += '.';
	}
	while (decimalIndex + precision + 1 > s.length) {
		s += '0';	
	}
	return s;
}

process_calculator_form = function() {

	var theForm = document.forms["calculator_form"];
	var amount = parseInt(theForm['amount'].value.replace(/^\$+/,""));
	var intrest = parseInt(theForm['intrest'].value.replace(/%$/,""));
	var length = parseInt(theForm['length'].value);
	var repayment = 0;
	var calculate = true;
	if (typeof(amount) != "number" || amount < 1) {
		alert('The ammount field must be a dollar value');	
		calculate = false;
	}
	if (typeof(intrest) != "number" || intrest < 0.1 || intrest > 100) {
		alert('The intrest field must be a percent value');	
		calculate = false;
	}	
	if (typeof(length) != "number" || length < 1) {
		alert('Please enter the length, in number of months');	
		calculate = false;	
	}
	
	if (calculate) {
		repayment = roundTo(calculate_payment(amount,(intrest/100),length),2);
		theForm['repayment'].value = '$' + repayment;
	}
	
	

}