function vpaytamt(str) {
  str = document.amorform.strfield.value             
  falseflg = 0
  if (str == "") {
    document.amorform.paytamt.focus();
    alert("Please enter a numeric-only Monthly Payment Amount")
    falseflg = 1
  }
  for (var i = 0; i < str.length; i++) {
    var digit = str.substring(i, i+1)
    if ((digit < "0" || digit > "9") && digit != "." && digit != ",") {
      document.amorform.paytamt.focus();
      alert("Please enter a numeric-only (eg. xx,xxx.xx) Monthly Payment Amount");
      falseflg = 1
      break
    }
  } 
  var paytamtStr = document.amorform.paytamt.value
  var commaloc = paytamtStr.indexOf(",", 0)
  if (commaloc != -1) { 
    var string1 = paytamtStr.substring(0, commaloc)
    var string2 = paytamtStr.substring(commaloc + 1, paytamtStr.length)
    var newstring = string1 + string2
    document.amorform.paytamt.value = newstring
  }
}
function vannint(str) {             
  str = document.amorform.strfield.value             
  falseflg = 0
  if (str == "") {
    document.amorform.annint.focus();
    alert("Please enter a numeric-only Annual Interest rate")
    falseflg = 1
  }
  for (var i = 0; i < str.length; i++) {
    var digit = str.substring(i, i+1)
    if ((digit < "0" || digit > "9") && digit != ".") {
       document.amorform.annint.focus();
      alert("Please enter a numeric-only Annual Interest rate");
      falseflg = 1
      break
    }
  } 
}
function vloanterm(str) {             
  str = document.amorform.strfield.value             
  falseflg = 0
  if (str == "") {
    document.amorform.loanterm.select();
    alert("Please enter a numeric-only Loan Term")
    falseflg = 1
  }
  for (var i = 0; i < str.length; i++) {
    var digit = str.substring(i, i+1)
    if (digit < "0" || digit > "9") {
      document.amorform.loanterm.focus();
      alert("Please enter a numeric-only Loan Term");
      falseflg = 1
      break
    }
  } 
}
function clear () {
  document.amorform.loanamt.value = 0
  document.amorform.annint.value = 0
  document.amorform.loanterm.value = 0
  document.amorform.paytamt.value = 0
  document.amorform.totint.value = 0
  document.amorform.amount.value = 0
}
function calculate () {
  vpaytamt(document.amorform.paytamt.value)
  if (falseflg == "0") {
    finchk12 ()
  }
}
function finchk12 () { 
  if (document.amorform.paytamt.value == 0) {
    errorm("Fill in Monthly Payment Amount") }
  else { finchk2 () }
}
function finchk2 () {
  vannint(document.amorform.annint.value)
  if (falseflg == "0") {
    finchk22 ()
  }
}
function finchk22 () {
  if (document.amorform.annint.value == 0) {
    errorm("Fill in Ann. Int. Rate") }
  else { finchk3 () }
}
function finchk3 () {
  vloanterm(document.amorform.loanterm.value)
  if (falseflg == "0") {
    finchk32 ()
  }
}
function finchk32 () {
  if (document.amorform.loanterm.value == 0) {
    errorm("Fill in Loan Term") }
  else { gogo () }
}
function gogo () {
  var paytamt = document.amorform.paytamt.value-0
  var annint = document.amorform.annint.value-0
  var loanterm = document.amorform.loanterm.value-0
  var perint = (annint/100)/12
  var numpayts = Math.round((loanterm*12)*100)/100
  var base = 1 + perint
  var temp = paytamt * ((1 - (1/Math.pow(base, numpayts)))/perint)
  var loanamt = Math.round(temp*100)/100
  document.amorform.loanamt.value = loanamt
  var amount = Math.round((paytamt * numpayts)*100)/100
  var totint = Math.round((amount - loanamt)*100)/100
  document.amorform.amount.value = amount
  document.amorform.totint.value = totint  
}
function errorm(msg) {
  alert(msg)
}
function focuscop() {
  document.amorform.paytamt.focus()
  alert("Sorry ... Calculated field! Click outside field to regain control")
}

