// JavaScript Document
var win = null;
function popup_open(mypage,myname,w,h,scroll)
{	
  var winl = (screen.width-w)/2;
  var wint = (screen.height-h)/2;
  var settings  ='height='+h+',';
      settings +='width='+w+',';
      settings +='top='+wint+',';
      settings +='left='+winl+',';
      settings +='scrollbars='+scroll+',';
      settings +='resizable=yes,';
      settings +='status=yes';
  win = window.open('movie.html','Kehoe',settings);
  if(parseInt(navigator.appVersion) >= 4)
  {
	  win.window.focus();
  }
}

var str;

function curr(n) {
      n = "" + Math.round(n*100)/100;
        var k = n.indexOf(".");
        if (k != -1) {
                var n1 = n.substring(0,k);
                var n2 = n.substring(k,n.length);
                if (n2.length == 2){
                        n2 = n2 + "0"
                        }
        }
        else {
                n1 = n;
                 n2=".00";
        }
        var n3 = "";
        for (var i=0; i <= n1.length; i++) {
                n3 = n1.charAt(i) + n3;
        }
        var n4 = "";
        for (var i=0; i < n3.length; i++) {
                if ((i%3 == 0) && (i != 0)) {
                        n4 = n3.charAt(i) + "," + n4;
                }
                else {
                        n4 = n3.charAt(i) + n4;

                }
        }
        return ("$ " + n4 + n2);
  }
  
function EditPrice()
{
   var stp = "";
    for (var pos = 0; pos < str.length; ++pos)
        {
        if (str.substring(pos, pos + 1) == ".")
            break;
        if (!(str.substring(pos, pos + 1) == "$" || str.substring(pos, pos + 1) == ","))
            stp = stp + str.substring(pos, pos + 1);
        }
   str = stp;
   return;
}

function CalcPMT(principle,LoanRate,TermInMonths) 
{
    var apr, princ, nper, irate, r1, power, sum, ratio, pmt
    apr   = parseFloat(LoanRate);
    princ = parseFloat(principle);
    nper  = parseFloat(TermInMonths);
    irate = apr /1200.0;
    r1    = irate + 1.0;
   power = 1.0;
    sum   = 0.0;
    for (i = 0; i < nper; i++)
        {
        power  = power * r1;
        sum   += power;
        }
    power = power * r1;
    ratio = power / sum;
    pmt   = princ * ratio;
    return Math.round (100 * pmt) / 100;
}

function computeForm(form)
{ 
if (isNaN(document.calculate.loanamt.value) || document.calculate.loanamt.value=="" || (isNaN(document.calculate.rate.value)) || document.calculate.rate.value=="") 
{
		document.calculate.amount.value = 'invalid input';}
	else {
		str =  document.calculate.loanamt.value;
		EditPrice();
		if (isNaN(str)|| str == "" ){
                        str = 0}
		LoanRate = document.calculate.rate.value;
		if (isNaN(LoanRate)|| LoanRate == "" ){
                        str = 0 ;
                        LoanRate = 0}
		//LoanRate = document.calculate.rate.options[document.calculate.rate.selectedIndex].value;
		TermInMonths = document.calculate.term.options[document.calculate.term.selectedIndex].value;
document.calculate.amount.value = curr(CalcPMT(str,LoanRate,TermInMonths));
}
        return false;
}

function pv(y,pmt,i) {
        return ( pmt / i * ( 1 - Math.pow( 1 + i, -y)) ) ;
  }
  function pmt(y,pv,i) {
        return ( i * Math.pow( 1 + i, y) * pv  / (1 - Math.pow( 1 + i, y) ) );
  }
  function curr(n) {
        n = "" + Math.round(n*100)/100;
        var k = n.indexOf(".");
        if (k != -1) {
                var n1 = n.substring(0,k);
                var n2 = n.substring(k,n.length);
        }
        else {
               n1 = n;
                 n2=".00";
        }
        var n3 = "";
        for (var i=0; i <= n1.length; i++) {
                n3 = n1.charAt(i) + n3;
        }
        var n4 = "";
        for (var i=0; i < n3.length; i++) {
                if ((i%3 == 0) && (i != 0)) {
                        n4 = n3.charAt(i) + "," + n4;
                }
                else {
                        n4 = n3.charAt(i) + n4;
                }
        }
        return ("$ " + n4 + n2);
  }
  
function CalcPMT(principle,LoanRate,TermInMonths) 
{
    var apr, princ, nper, irate, r1, power, sum, ratio, pmt
    apr   = parseFloat(LoanRate);
    princ = parseFloat(principle);
    nper  = parseFloat(TermInMonths);
    irate = apr /1200.0;
    r1    = irate + 1.0;
    power = 1.0;
    sum   = 0.0;
    for (i = 0; i < nper; i++)
        {
        power  = power * r1;
        sum   += power;
        }
    power = power * r1;
    ratio = power / sum;
    pmt   = princ * ratio;
    return Math.round (100 * pmt) / 100;
}

function Calculatedebt() {
        salary = document.afford.income.value;
        if (isNaN(salary)|| salary == "" ){
                         salary = 0}
        mortgage = document.afford.mortgage.value;
        if (isNaN(mortgage)|| mortgage == "" ){
                         mortgage = 0}
        expenses = document.afford.expenses.value;
        if (isNaN(expenses)|| expenses == "" ){
                         expenses = 0}
        maxpayment = (salary * .45) - mortgage - expenses;
return maxpayment;
}

function Calculate() {
     if (isNaN(document.afford.apr.value) || document.afford.apr.value=="" || (isNaN(document.afford.income.value)) || document.afford.income.value=="" || (isNaN(document.afford.mortgage.value)) || document.afford.mortgage.value=="" || (isNaN(document.afford.expenses.value)) || document.afford.expenses.value=="") {
		document.afford.carcost.value = 'invalid input';
		document.afford.maxpay.value = 'invalid input';}
	else {
        apr1 = document.afford.apr.value;
		if (isNaN(apr1)|| apr1 == "" ){
                         apr1 = 0}
        term = parseInt(document.afford.term.options[document.afford.term.selectedIndex].text);
        apr = apr1 / 1200;
        testpmt = Calculatedebt();
               for ( i = 0; i < testpmt.length; i++) {
                      testchar2 = testpmt.charAt(i);
                   }
//                var payment = Calculatedebt();
                var carCost;
                carCost = pv(term,maxpayment,apr);
                var payment;
                payment = maxpayment;
                if (carCost < 0)
                                       {
                                        document.afford.carcost.value = 0; 
                                        }
                                else    
                                        {
                document.afford.carcost.value = curr(carCost);
                                        }
                 if (payment < 0)
                                        {
                                        document.afford.maxpay.value = 0
                                        }
                                else
                                        {
                                        document.afford.maxpay.value = curr(payment);
                                        }
     }           
  return false;
  }
  
