// <!--

var fMdc=".";
var fMgc=",";
var fMnc="-";
var fMcs="";

function formatMoney(A,W)
{
  var N=Math.abs(Math.round(A*100));
  var S=((N<10)?"00":((N<100)?"0":""))+N;

  S=fMcs+((A<0)?fMnc:"")+fMgroup(S.substring(0,(S.length-2)))+fMdc+
    S.substring((S.length-2),S.length)+((A<0&&fMnc=="(")?")":"");

  return (S.length>W)?"Over":S;
}

function fMgroup(S)
{
  return (S.length<4)?S:(fMgroup(S.substring(0,S.length-3))+
    fMgc+S.substring(S.length-3,S.length));
}



function roundAmount(num)
{
	var result = Math.round(num * 100);
	var sTemp = result.toString(10);
	var sTempLen = sTemp.length;
	result = sTemp.substring(0,sTempLen-2) + "." + sTemp.substring(sTempLen-2,sTempLen);
	result = parseFloat(result);
	return result;
}

function calculate(amt, rate, time)
{
	var exp = -time;
  var j;

	var i = rate;
	i = i / 100;
	i /= 12;

	if (time != 0)
  {
		var term = 1;
		var diff = 1.0;
		var sum = 1.0;
		for (j = 1 ; j < 10; j++) {
			diff = diff * exp / j;
      exp = exp - 1;
      term = term * i;
      sum = sum + diff * term;
    }
 		var result = (amt * (1.0 - sum) / i*100)/100;
 		return result;
  } else {
    return 0;
  }
}

function calcPayment(form)
{
  var form = document.getElementById('affordability-calc-form');
	var monthlyRepayment = form.monthlyRepayment.value;
	var mval = monthlyRepayment.split(",");
	var temp_value;
	
	if (mval.length > 1) {temp_value = mval[0] + mval[1];} else {temp_value = mval[0];}
	if (mval.length > 2) {temp_value = mval[0] + mval[1] + mval[2];}
	
  var mval_n = parseFloat(temp_value);

	if ((form.monthlyRepayment.value != "") || (form.repayMonths.value != "") || (form.repayAPR.value != "")) {
    form.amountToBorrow.value = formatMoney(roundAmount(calculate(mval_n, form.repayAPR.value, form.repayMonths.value)), 12);
  } else {
    form.amountToBorrow.value = 0;
  }
}
// -->
