function isNumber(num) {
  var strMsg = '';
  for (var i = 0; i < num.value.length; i++) {
    if ((num.value.substring(i, i + 1) < "0" || "9" < num.value.substring(i, i + 1)) && num.value.substring(i, i + 1) != ".") {
      strMsg = 'Invalid number. Please check your entries to ensure proper entry.';
    }
  }

  if (strMsg.length == 0) {
    return true;
  } else {
    alert(strMsg);
    return false;
  }
}

function calculate(forma) {
  form = forma.form;

  //Check for null values
  if (form.amount.value.length == 0 || form.downpayment.value.length == 0 || form.tradein.value.length == 0) { return false; }

  //Check for valid numbers
  if (!isNumber(form.amount) || !isNumber(form.downpayment) || !isNumber(form.tradein)) { return false; }

  //Adjust Interest
  var interest = form.rate.value / 100.0;
  interest /= 12;

  //Get total loan amount
  var total = form.amount.value - form.downpayment.value - form.tradein.value;

  //Calculate payment
  var temp = 1;
  for (var j = 0; j < form.term.value; j++) temp = temp * (1 + interest);
  payment = "" + .01 * Math.round(100*(total * temp * interest) / (temp - 1));

  //Format proper decimal places
  var wholenum = true;
  for (i = 0; i < payment.length; i++) {
    if (payment.charAt(i) == ".") wholenum = false;
  }

  if (wholenum) {
    payment = payment + ".00";
  } else {
    if (payment.charAt(payment.length-2) == ".") {
      payment = payment + "0";
    } else {
      payment = Math.round(payment*100)/100;
    }
  }

  form.payment.value = '$'+payment;
}

function powercalculate(forma) {
  form = forma.form;

  //Check for null values
  if (form.poweramount.value.length == 0 || form.powerdownpayment.value.length == 0 || form.powertradein.value.length == 0) { return false; }

  //Check for valid numbers
  if (!isNumber(form.poweramount) || !isNumber(form.powerdownpayment) || !isNumber(form.powertradein)) { return false; }

  //Adjust Interest
  var interest = form.powerrate.value / 100.0;
  interest /= 12;

  //Calculate total amount
  var temp = 1;
  for (var j = 0; j < form.powerterm.value; j++) temp = temp * (1 + interest);
  var total = ((temp-1)*(form.poweramount.value)) / (temp * interest) +.5;
  total = Math.round(total);
  total = parseFloat(total) + parseFloat(form.powerdownpayment.value) + parseFloat(form.powertradein.value);

  //Format proper decimal places
  var wholenum = true;
  for (i = 0; i < total.length; i++) {
    if (total.charAt(i) == ".") wholenum = false;
  }
  if (wholenum) {
    total = total + ".00";
  } else {
    if (total.charAt(total.length-2) == ".") {
      total = total + "0";
    } else {
      total = Math.round(total*100)/100;
    }
  }
  form.power.value = '$'+total;
}
