jQuery(function() {
	jQ("input.calcFinanceField").keyup(function() {
		this.value = this.value.toString().replace(/[^0-9\,\.]/g,'');
		calcMonthlyPayment();
	});
	
	jQ("input.calcAffordField").keyup(function() {
		this.value = this.value.toString().replace(/[^0-9\,\.]/g,'');
		calcFinanceAmount();
	});
});

function calcMonthlyPayment() {
	var amtFinance = parseInt( jQ("#amount_financed").val().toString().replace(/\,/g, '') );
	var downPayment = parseInt( jQ("#finance_down_payment").val().toString().replace(/\,/g, '') );
	var rate = parseFloat( jQ("#finance_interest_rate").val().toString().replace(/\,/g, '') )/1200;
	var term = parseInt( jQ("#finance_term").val().toString().replace(/\,/g, '') );
	
	var loanAmount = amtFinance;
	
	if (!isNaN(downPayment) && downPayment > 0) {
		loanAmount = loanAmount - downPayment;
	}
	
	if (isNaN(rate)) {
		rate = 0;
	}
	
	var monthlyPayment = "";
	
	if (rate == 0) {
		monthlyPayment = loanAmount/term;
	}
	else {
		monthlyPayment = ( loanAmount*rate*Math.pow(1 + rate, term) )/ ( Math.pow(1 + rate, term) - 1 );
	}
	
	if (!isNaN(monthlyPayment)) {
		jQ("#monthlyPayment").html(formatCurrency(monthlyPayment, true));
	}
	else {
		jQ("#monthlyPayment").html('');
	}
	
}

function calcFinanceAmount() {
	var monthlyPayment = parseFloat( jQ("#monthly_payment").val().toString().replace(/\,/g, '') );
	var downPayment = parseInt( jQ("#afford_down_payment").val().toString().replace(/\,/g, '') );
	var rate = parseFloat( jQ("#afford_interest_rate").val().toString().replace(/\,/g, '') )/1200;
	var term = parseInt( jQ("#afford_term").val().toString().replace(/\,/g, '') );
	
	var amtFinanced = "";
	
	if (isNaN(downPayment)) {
		downPayment = 0;
	}
	
	if (isNaN(rate)) {
		rate = 0;
	}
	
	if (rate == 0) {
		amtFinanced = ( monthlyPayment * term ) + downPayment;
	}
	else {
		amtFinanced = monthlyPayment * ( ( 1 - ( 1 / Math.pow( 1 + rate, term ) ) ) / rate ) + downPayment;
	}
	
	if (!isNaN(amtFinanced)) {
		jQ("#vehicleCostAfford").html(formatCurrency(amtFinanced, true));
	}
	else {
		jQ("#vehicleCostAfford").html('');
	}
}