var useField;
function restrictNumbersOnly(keyEvent,input) {
	if (input.name == 'fin_loan' || input.name == 'fin_deposit') {
		 useField = input.name;				   
	} else {
		useField == 'fin_purchaseprice';
	}
	var charCode = (keyEvent.charCode) ? keyEvent.charCode : ((keyEvent.keyCode) ? keyEvent.keyCode : ((keyEvent.which) ? keyEvent.which : 0));
	if ((charCode >= 48 && charCode <= 57) //between 0 and 9					
		|| charCode == 8 //Backspace
		|| charCode == 9 ) //Tab
	{
		return true;
	}
	return false;
}

function restrictNumbersWithDecimalOnly(keyEvent) {
	var charCode = (keyEvent.charCode) ? keyEvent.charCode : ((keyEvent.keyCode) ? keyEvent.keyCode : ((keyEvent.which) ? keyEvent.which : 0));
	if ((charCode >= 48 && charCode <= 57) //between 0 and 9
		|| charCode == 46 //Decimal Point
		|| charCode == 8 //Backspace
		|| charCode == 9 ) //Tab
	{
		return true;
	}

	return false;
}

function calculate(calc) {
	if (useField == 'fin_monthlypayment') {
		return check_payment(calc);
		document.getElementById('finance_input').style.display='none';
		document.getElementById('finance_results').style.display='block';
	} else {
		document.getElementById('finance_input').style.display='none';
		document.getElementById('finance_results').style.display='block';
		return add_input(calc);
	}
}

function add_input(calc) {
	
	if (document.getElementById('fin_rate').value !== '0') {
		
		var total_cost;
		total_cost = (document.getElementById('fin_loan').value * 1 - document.getElementById('fin_deposit').value);
		var i = document.getElementById('fin_rate').value;
		i = i / 100.0;
		i /= 12;
		var pow = 1;
		for (var j = 0; j < document.getElementById('fin_months').value; j++) {
			pow = pow * (1 + i);
		}
		document.getElementById('fin_pay').value = Math.round((total_cost * pow * i) / (pow - 1));
		if(isNaN(document.getElementById('fin_pay').value)) {
			document.getElementById('fin_pay').value = "0";
		}
		document.getElementById('fin_pay').value = '$' + document.getElementById('fin_pay').value;
		return false;
		
	} else {
		
		var total_cost;
		total_cost = (document.getElementById('fin_loan').value * 1 - document.getElementById('fin_deposit').value);
		var pow = 1;
		for (var j = 0; j < document.getElementById('fin_months').value; j++) {
			pow = pow * (1);
		}
		document.getElementById('fin_pay').value = Math.round((total_cost) / j);
		if(isNaN(document.getElementById('fin_pay').value)) {
			document.getElementById('fin_pay').value = "0";
		}
		document.getElementById('fin_pay').value = '$' + document.getElementById('fin_pay').value;
		return false;
		
	}
	
}

function check_payment(calc) {
	var purchase;
	purchase = document.getElementById('fin_pay').value;

	var i = document.getElementById('fin_rate').value;
	i = i / 100.0;
	i /= 12;
	var pow = 1;
	for (var j = 0; j < document.getElementById('fin_months').options[document.getElementById('fin_months').selectedIndex].value; j++) {
		pow = pow * (1 + i);
	}
	var total_cost = (document.getElementById('fin_pay').value * (pow - 1)) / (pow * i);
	total_cost = ((total_cost * 1) + (document.getElementById('fin_deposit').value * 1));
	document.getElementById('fin_loan').value = Math.round(total_cost);
	document.getElementById('fin_pay').value = purchase;

	return false;
}

function selectField(field) {
	field.select();
}