

/** new functions **/

function isEmail(elm) {
		 if (elm.value.indexOf("@") != "-1" &&
		 elm.value.indexOf(".") != "-1" &&
		 elm.value != "")
	return true;
	else return false;
}

function isFilled(elm) {
		 if(elm.value=="" ||
		 elm.value== null)
	return false;
	else return true;
}

function isInt(elm) {
	var elmstr = elm.value + "";
	if (elmstr == "") return false;
	for (var i=0; i < elmstr.length; i++) {
		if (elmstr.charAt(i) < "0" || elmstr.charAt(i) > "9") {
			return false;
		}
	}
	return true;
}

function isInt2(elm) {
	var elmstr = elm + "";
	if (elmstr == "") return false;
	for (var i=0; i < elmstr.length; i++) {
		if (elmstr.charAt(i) < "0" || elmstr.charAt(i) > "9") {
			return false;
		}
	}
	return true;
}

function isNumber(elm) {
var elmstr = elm.value + "";
	if (elmstr == "") return false;
	for (var i=0; i <elmstr.length; i++) {
		if ((elmstr.charAt(i) < "0" ||
		elmstr.charAt(i) > "9") &&
		(elmstr.charAt(i) != ","))
		 {
	return false;
	}
	}
return true;
}

function OpenWin(page,width,height) {
	var test;
	window.open(page,"","resizeable,width=" + width + ",height=" + height + ",scrollbars");
}
// ARM CAlculator
  function showHideText(txt){
    var msgBox = document.getElementById('msg');
    msgBox.innerHTML = txt;
  }

  function calculate(){
    //inputs
    var LoanAmount = document.getElementById('LoanAmount');
    var Margin = document.getElementById('Margin');
    var CurrentIndex = document.getElementById('CurrentIndex');
    var IndexMargin = (1*toNumber(Margin.value) + 1*toNumber(CurrentIndex.value));
    var StartRate = document.getElementById('StartRate');
    var LoanTerm30 = 30;
    var LoanTerm40 = 40;
    var LoanTerm15 = 15;

    LoanAmount.value = toNumber(LoanAmount.value);
    Margin.value = toNumber(Margin.value);
    CurrentIndex.value = toNumber(CurrentIndex.value);
    StartRate.value = toNumber(StartRate.value);

    //outputs
    var IndexMarginDisplay = document.getElementById('IndexMargin');
    var MinPayment = document.getElementById('MinPayment');
    var InterestOnlyPayment = document.getElementById('InterestOnlyPayment');
    var FullPayment = document.getElementById('FullPayment');
    var Payment40 = document.getElementById('YearPayment40');
    var Payment15 = document.getElementById('YearPayment15');

   //output margin + index
   IndexMarginDisplay.innerHTML = IndexMargin;

   //compute min monthly payment
    var MinPaymentCalc = compute_payment(LoanAmount.value, StartRate.value, 12*LoanTerm30, 12);

    //compute the interest only payment
    var IOPayment = (LoanAmount.value * IndexMargin) / 12 / 100;
    InterestOnlyPayment.innerHTML = formatAsMoney(IOPayment);

    //compute full payment
    var FullPaymentCalc = compute_payment(LoanAmount.value, IndexMargin, 12*LoanTerm30, 12);

    //compute full payment
    var Payment40Calc = compute_payment(LoanAmount.value, IndexMargin, 12*LoanTerm40, 12);
    Payment40.innerHTML = formatAsMoney(Payment40Calc);

    //compute full payment
    var Payment15Calc = compute_payment(LoanAmount.value, IndexMargin, 12*LoanTerm15, 12);
    Payment15.innerHTML = formatAsMoney(Payment15Calc);

    //compute the 5 year min payments and monthly savings
    var Yr1Min = document.getElementById('Yr1Min');
    var Yr1Savings = document.getElementById('Yr1Savings');
    var Yr1fixed30 = document.getElementById('Yr1fixed30');
    Yr1MinCalc = MinPaymentCalc;
    Yr1Min.innerHTML = formatAsMoney(Yr1MinCalc);
    Yr1Savings.innerHTML = formatAsMoney(FullPaymentCalc - Yr1MinCalc);
    Yr1fixed30.innerHTML = formatAsMoney(FullPaymentCalc);
    lastYrVal = Yr1MinCalc;

    for(i = 2; i <= 5; i++){
      eval('var Yr'+i+'Min = document.getElementById(\'Yr'+i+'Min\');');
      eval('var Yr'+i+'Savings = document.getElementById(\'Yr'+i+'Savings\');');
      eval('var Yr'+i+'fixed30 = document.getElementById(\'Yr'+i+'fixed30\');');
      eval('var Yr'+i+'MinCalc = lastYrVal * 1.075;');
      eval('Yr'+i+'Min.innerHTML = formatAsMoney(Yr'+i+'MinCalc);');
      eval('Yr'+i+'Savings.innerHTML = formatAsMoney(FullPaymentCalc - Yr'+i+'MinCalc);');
      eval('Yr'+i+'fixed30.innerHTML = formatAsMoney(FullPaymentCalc);');
      eval('lastYrVal = Yr'+i+'MinCalc;');
    }
  }

  function computeFullyIndexed(objField){
    var returnvar = false;
    returnvar = checkField(objField,'Float',true);
    if(returnvar) {
      var Margin = document.getElementById('Margin');
      var CurrentIndex = document.getElementById('CurrentIndex');
      var IndexMargin = document.getElementById('IndexMargin');
      IndexMargin.innerHTML = 1*toNumber(Margin.value) + 1*toNumber(CurrentIndex.value);
    }
  }

  function formatAsMoney(mnt) {
    mnt -= 0;
    mnt = (Math.round(mnt*100))/100;
    return (mnt == Math.floor(mnt)) ? mnt + '.00'
              : ( (mnt*10 == Math.floor(mnt*10)) ?
                       mnt + '0' : mnt);
  }

  function toNumber(fnum){
    var strBuffer = new String(fnum);
    var rString = '';
    var periodCount = 0;
    for (nPos = 0; nPos < strBuffer.length; nPos++){
        if ((strBuffer.charAt(nPos) >= '0' && strBuffer.charAt(nPos) <= '9') ||
            strBuffer.charAt(nPos) == '.'){
          if(strBuffer.charAt(nPos) == ','){
            periodCount++;
          }
          if(periodCount > 1){
            return 1*rString;
          }
          rString += strBuffer.charAt(nPos);
        }
    }
    return 1*rString;
  } 