function MonthlyAmort(principal, years, apr, amort) {
	msg=window.open("", "DisplayWindow","toolbar=no,scrollbars=yes,menubar=no,width=500,height=470");
	
	var payments = years * 12;
	var monthlyInterest = apr/12;
	pennies = apr * 10000;
	pennies = Math.round(pennies);
	strPennies = "" + pennies;
	len = strPennies.length;
	interestRate = strPennies.substring(0, len - 2) + "." + strPennies.substring((len - 2), len);
	
	var monthlyPayment = rounding(principal*monthlyInterest / (1 - (1 / Math.pow(1 + monthlyInterest, payments))));
	
	msg.document.write("<font face=Arial size=2><center><h3>Amortization Table</h3><font size=3><i>Results</i></font><P><BR><table border=1 cellspacing=0 cellpadding=5><TR>");
	msg.document.write("<td align=center colspan=6><font size=+1 face=Arial>$" + principal + " at " + interestRate + "% over a " + years + " year period.<p>Monthly payment: $" + monthlyPayment + "</th></tr>");
	msg.document.write("<tr><th bgcolor=#300B66><br></th><th colspan=2 bgcolor=#007EA0><font face=Arial size=2 color=#FFFFFF>Current Payment</th><th bgcolor=#300B66 colspan=3><br></th></tr><tr><th><font face=Arial size=2>Payment<br>Number</th><th><font face=Arial size=2>Interest<br><i>this payment</i></th><th><font face=Arial size=2>Principal<br><i>this payment</i></th><th><font face=Arial size=2>Interest Paid<br>to Date</th><th><font face=Arial size=2>Principal Paid<br>to Date</th><th><font face=Arial size=2>Balance<br>to Date</th></tr>");
	
	principalPaid = 0;
	interestPaid = 0;

	
	//firstInt = monthlyInterest * principal;
	//avTotal = (firstInt + mthPmt)/principal * 1200
	
	avTotal = 0
	  for (var i = 1; i <= payments; i++) {
		var amortMod = i % amort;
		var interestPayment1 = principal * monthlyInterest;
		var intPay = (interestPayment1 + 12)/principal * 1200;
		avTotal = avTotal + intPay;
		pennies = interestPayment1 * 100;
		pennies = Math.round(pennies);
		strPennies = "" + pennies;
		len = strPennies.length;
		interestPayment =  strPennies.substring(0, len - 2) + "." + strPennies.substring((len - 2), len);
	
		var principalPayment1 = monthlyPayment - interestPayment;
	
		pennies = principalPayment1 * 100;
		pennies = Math.round(pennies);
		strPennies = "" + pennies;
		len = strPennies.length;
		principalPayment =  strPennies.substring(0, len - 2) + "." + strPennies.substring((len - 2), len);
	
		principal1 = principal - principalPayment;
	
		pennies = principal1 * 100;
		pennies = Math.round(pennies);
		strPennies = "" + pennies;
		len = strPennies.length;
		principal =  strPennies.substring(0, len - 2) + "." + strPennies.substring((len - 2), len);
	
		principalPaid1 = -(-principalPayment - principalPaid);
	
		pennies = principalPaid1 * 100;
		pennies = Math.round(pennies);
		strPennies = "" + pennies;
		len = strPennies.length;
		principalPaid =  strPennies.substring(0, len - 2) + "." + strPennies.substring((len - 2), len);
	
		interestPaid1 = -(-interestPayment - interestPaid);
	
		pennies = interestPaid1 * 100;
		pennies = Math.round(pennies);
		strPennies = "" + pennies;
		len = strPennies.length;
		interestPaid =  strPennies.substring(0, len - 2) + "." + strPennies.substring((len - 2), len);
	
		if (amortMod == 0) {
			msg.document.write("<tr><td><font face=Arial size=2>" + i + "</td>");
			msg.document.write("<td><font face=Arial size=2>$" + interestPayment + "</td><td><font face=Arial size=2>$" + principalPayment + "</td><td><font face=Arial size=2>$" + interestPaid + "</td><td><font face=Arial size=2>$" + principalPaid + "</td><td><font face=Arial size=2>$" + principal + "</td></tr>");
	    }
	  }
	  avTotal = avTotal / (payments);
	msg.document.write("</table></center><P><BR>Don't forget - if you have chosen to view amortization on a six monthly or yearly basis, there will have been payments made between the ones you view.");
}

function compute(form) {

  if ((form.principal.value.length != 0 ) && (form.apr.value.length != 0 ) && (form.years.value.length != 0 )) {
	principal = parseFloat(form.principal.value);
	apr = parseFloat(form.apr.value) / 100.0;
	years = parseFloat(form.years.value);
     var amort = get_selection(form.amort);
	MonthlyAmort(principal, years, apr, amort.value);

  }
  else {
	alert("You must fill in all the fields!");
  }
}
  function select_item(name, value) {
        this.name = name;
        this.value = value;
    }


    function get_selection(select_object) {
        contents = new select_item();
        for(var i=0;i<select_object.options.length;i++)
           if(select_object.options[i].selected == true) {
                contents.name = select_object.options[i].text;
                contents.value = select_object.options[i].value;
            }
        return contents;
    }
function rounding(n)
{
	pennies = n * 100;
	pennies = Math.round(pennies);
	strPennies = "" + pennies;
	len = strPennies.length;
	return strPennies.substring(0, len - 2) + "." + strPennies.substring((len - 2), len);
}
