// Loan calculation stuff

var InterestRate = '6.99';

function calcLoanAmount() {	
	var rate = InterestRate;	
	var monthly  = parseFloat(document.getElementById('c1Monthly').value.replace(/[\$,]/g,''));
	var down     = parseFloat(document.getElementById('c1DownPayment').value.replace(/[\$,]/g,''));

	var termCtrl = document.getElementById('c1Terms');
	var terms 	 = termCtrl.options[termCtrl.selectedIndex].value * 12;
	var c1Result = document.getElementById('c1Result');
	
	c1Result.innerHTML = '';
	if ( !isNaN(monthly) && !isNaN(down) ) {
		rate = rate/1200;
		total = monthly * (Math.pow(1+rate,terms)-1)/ (rate*Math.pow(1+rate,terms));
		if ( !isNaN(total) ) {
			c1ValueMask = new Mask("$#,###.00", "number");
			c1Result.innerHTML = c1ValueMask.format(roundIt(total+down,2));		
		}
	} 	
} // calcLoanAmount

function calcMonthlyPayment() {
	var rate     = InterestRate;
	var amount   = parseFloat(document.getElementById('c2Amount').value.replace(/[\$,]/g,''));
	var down     = parseFloat(document.getElementById('c2DownPayment').value.replace(/[\$,]/g,''));
	
	var termCtrl = document.getElementById('c2Terms');	
	var terms 	 = termCtrl.options[termCtrl.selectedIndex].value * 12;
	var c2Result = document.getElementById('c2Result');
	
	c2Result.innerHTML = '';	
	if ( !isNaN(amount) && !isNaN(down) ) {
		total = (rate/1200) * (amount-down) / ( 1 - Math.pow(1+(rate/1200), -terms) );
		if ( !isNaN(total) ) {
			c2ValueMask = new Mask("$#,###.00", "number");
			c2Result.innerHTML = c2ValueMask.format(roundIt(total,2));		
		}
	} 	
} // calcMonthlyPayment

///
/// Utility Methods
///

function addListener(element, event, listener, bubble) {
  if(element.addEventListener) {
    if(typeof(bubble) == "undefined") bubble = false;
    element.addEventListener(event, listener, bubble);
  } else if(this.attachEvent) {
    element.attachEvent("on" + event, listener);
  }
}


function roundIt(inputNum, desiredPrecision){
	var precisionGuide = Math.pow(10, desiredPrecision);
 	return( Math.round(inputNum * precisionGuide) / precisionGuide );
}

function checkValid(el) {
	if ( el.value.replace(/^\s+|\s+$/g,'') == '' ) {
		el.value = '$0.00';		
		return false;
	}
	return true;
}


