function isCurrency(val){
	val = val.replace(/[^\d\.]+/gi, '');
	var RegEx = /^[\d]+(\.[\d]+)?$/i;
	if (RegEx.test(val)){
		val = parseFloat(val);
	}else{
		val = 0;
	}
	return val.toFixed(2);
}

function calcLeasing(){
	var ids = new Array("price","warranty","downpayment");
	var cval = 0;
	for (var i=0; i<ids.length; i++){
		cval = isCurrency(document.getElementById(ids[i]).value);
		if (document.getElementById(ids[i]).value != cval.toString()){
			document.getElementById(ids[i]).value = cval;
		}
	}
	if (parseFloat(document.getElementById('downpayment').value) > parseFloat(document.getElementById('price').value) + parseFloat(document.getElementById('warranty').value)){
		var newdown = parseFloat(document.getElementById('price').value) + parseFloat(document.getElementById('warranty').value);
		document.getElementById('downpayment').value = newdown.toFixed(2);
	}
	var total = parseFloat(document.getElementById('price').value) + parseFloat(document.getElementById('warranty').value) - parseFloat(document.getElementById('downpayment').value);
	document.getElementById('financed').value = total.toFixed(2);
	var taxsavings = (parseFloat(document.getElementById('price').value) + parseFloat(document.getElementById('warranty').value)) * 0.35;
	if (taxsavings > (250000*0.35)){
		taxsavings = 250000*0.35;
	}
	document.getElementById('taxsavings').value = taxsavings.toFixed(2);
	
	var apr_rate = parseFloat(document.getElementById('apr').value)/100;
	var monthlycost = 0;
	var monthlyrate = 0;
	var terms = new Array(24,36,48,60);
	for (var i=0; i<terms.length; i++){
		monthlyrate = (1 - 12/(12 + apr_rate))/((12/(12+apr_rate))*(1-Math.pow(12/(12+apr_rate),terms[i])));
		monthlycost = monthlyrate*total;
		document.getElementById('month' + terms[i]).value = monthlycost.toFixed(2);
	}
}

var canhighlight = false;
function prepHighlight(event){
	var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
	if (keyCode == 9){
		canhighlight = true;
	}else if (keyCode == 13){
		event.keyCode = 9;
		canhighlight = true;
	}
	document.onkeyup = function(){
		canhighlight = false;
		document.onkeyup = "";
	};
	return event.keyCode
}

function doHighlight(obj,force){
	if (obj.readOnly == false && obj.value != '0.00'){
		return false;
	}
	if (canhighlight || force){
		obj.select();
	}
}
