 
function CheckFees(input) { 
  if (input.value < 0 || input.value > 1000000 ) { 
     input.value = "*ERR*"; 
  } 
  return; 
} 
 
function CheckAmnt(input) { 
  if (input.value < 1 || input.value > 1000000 ) { 
    input.value = "*ERR*"; 
  } 
  return; 
} 
 
function CheckInt(input) { 
  if (input.value < 1) { 
    input.value = "*ERR*"; 
  }
//   
  return; 
} 
 
function CheckYr(input) { 
  if (input.value < 1 || input.value > 100) { 
    input.value = "*ERR*"; 
  } 
  return; 
} 
 
function CheckPnts(input) { 
  if (input.value < 0 || input.value > 10) { 
//   form.points.value = 0
    input.value = "*ERR*"; 
  } 
  return; 
} 
 
 
function CalcLoanPayment(Loan_Amount, Interest_Rate, Term_Years) { 
  var A = Loan_Amount; 
  var i = Interest_Rate; 
  var n = Term_Years; 
  return A/CalcPv(i/12, n*12); 
} 
 
function CalcPv(i,n) 
{ 
  return (1-Math.pow(1+i,-n))/i; 
} 
 
function CalcAPR(form,Interest_Rate, Term_Years, Points, Fees, Loan_Amount) { 
  var i = parseFloat(Interest_Rate); 
  var n = parseInt(Term_Years); 
  var p = parseFloat(Points * 1); 
  var fe = parseFloat(Fees *1); 
  var A = parseFloat(Loan_Amount); 
 
 
  var f = 0; 
  var f1 = 0; 
  var iflag = 0; 
 
  p = (A * (p * .01)); 
  f1=(A-(p+fe))/(CalcLoanPayment(A,i,n)*12); 

  f = 999; 
  i = 0; 
  while (f > f1) { i = i + .01;      f = CalcPv(i/12,n*12)/12; } 
  while (f < f1) { i = i - .001;     f = CalcPv(i/12,n*12)/12; }  
  while (f > f1) { i = i + .0001;    f = CalcPv(i/12,n*12)/12; }  
  while (f < f1) { i = i - .00001;   f = CalcPv(i/12,n*12)/12; }  
  while (f > f1) { i = i + .000001;  f = CalcPv(i/12,n*12)/12; }  
 
  return(i); 
} 
 
function computeForm(form) 
{ 
    if ((form.term.value == null || form.term.value.length == 0) || (form.interest.value == null || form.interest.value.length == 0) )
// || (form.points.value == null || form.points.value.length == 0)
    { 
       return; 
    } 
 
    var i = form.interest.value * .01; 
    var n = form.term.value; 
    var p = form.points.value; 
//    if (form.points.value == null) {p = ".001"}

    var fee = form.fees.value; 
//    if (form.fees.value = null)    {fee = ".001" }; 
 
    var A = form.amnt.value; 
 
 
  form.interest.value = roundOff(form.interest.value,3)
  form.points.value = roundOff(form.points.value,3)
  form.fees.value = roundOff(form.fees.value,0)
  form.PmntResult.value = roundOff(CalcLoanPayment(A, i, n),2); 
  i = CalcAPR(form,i, n, p, fee, A); 
  form.AprResult.value = roundOff((i*100),3);
  form.TotalPayment.value = (TaxInsur * 1) + (form.PmntResult.value *1 )
  return; 
} 

var TaxInsur = "";

function PostTaxInsur(form){
TaxInsur = 	form.TaxInsur.value *1
}

function roundOff(value, precision) {
        value = "" + value                                        //convert value to string
        precision = parseInt(precision);                          //Make Sure whole number
        var whole = "" + Math.round(value * Math.pow(10, precision));
        var decPoint = whole.length - precision;        if(decPoint != 0)
        {                result = whole.substring(0, decPoint);
                result += ".";
                result += whole.substring(decPoint, whole.length);        }
        else        {                result = whole;        }
        return result;
}
 



