/*truecost.js for the true cost calculator*/
/*depends: prototype.js, scriptaculous.js, showHide.js*/
var statePrices = {};

function addCommas(x) {

	x = String(x);
	iLen=x.length;
	pos=x.indexOf(".");
	if (pos >-1) {
		iLen=pos;
	}

	temp="";
	temp=x.substring(iLen,x.length);
	for (var i=iLen-1; i>=0; i--)
		if ((iLen-i-1)%3==0&&i!=iLen-1)
			temp=x.charAt(i)+","+temp;
		else
			temp=x.charAt(i)+temp;

	return temp;

}

function calculate(e) {
	if($("entityState").value == "" || isNaN($("hourlyRate").value) || $("hourlyRate").value <= 0) {
		hide("results");
		
		//select state validation
		if($("entityState").value == "") {
			show("selectState");
		} else {
			hide("selectState");
		}

		//hourly rate validation
		if(isNaN($("hourlyRate").value) || $("hourlyRate").value <= 0) {
			show("selectHourlyRate");
		} else {
			hide("selectHourlyRate");
		}

		show("errors");
		new Effect.ScrollTo("errors", {duration: 1.0});
	} else {
		hide("errors");
		$("calculateButton").src = "/images/recalculate.gif";
		//find the selected state based on value
		var stateName = $("entityState").options[$("entityState").selectedIndex].text;
		$("stateName").innerHTML = stateName;
		$("hourlyCost").innerHTML = "$" + addCommas(new Number(($("hourlyRate").value)).toFixed(2));
		var totalPriceNumber = (statePrices[$("entityState").value] + ($("hourlyRate").value * 10)).toFixed(2);
		$("diyCost").innerHTML = "$" + addCommas(totalPriceNumber) + "<br/>($" + addCommas(new Number(($("hourlyRate").value * 10)).toFixed(2)) + " for 10 hours of your time plus <strong>$" + addCommas(new Number(statePrices[$("entityState").value])) + "</strong> in required state fees)";
		$("state_fees_price").innerHTML = "" + addCommas(new Number(statePrices[$("entityState").value]));
		show("results");
		new Effect.ScrollTo("results", {duration: 1.0});

	}
}

function formationQuote() {
	document.location.href = "llc_now.html?state=" + $("entityState").value;
}