
function calcDouble()
{
	var dblCalc = document.forms[0]
	var varRate = dblCalc.txtRate.value

	if (varRate == "")
	{
		alert("You must enter a rate.")
		dblCalc.txtRate.focus()
		dblCalc.txtRate.select()
	}
	
	wkRate = parseFloat(varRate)

	if ((wkRate < 0) || (wkRate > 999))
	{
		alert("Rate must be a numeric value.")
		dblCalc.txtRate.focus()
		dblCalc.txtRate.select()
	}

	var wkYears = 72 / wkRate

	dblCalc.txtYears2.value = parseInt(wkYears)
}

function format (expr, decplaces)
{
	// raise incoming value by power of 10 times the
	// number of decimal places; round to an integer; convert to string
	var str = "" + Math.round (eval(expr) * Math.pow(10, decplaces));

	// pad small value strings with zeros to the left of the rounded number
	while (str.length <= decplaces)
	{
		str = "0" + str;
	}

	// establish location of decimal point
	var decpoint = str.length - decplaces;

	// assemble final result from (a) the string up to the position of
	// the decimal point; (b) the decimal point; and (c) the balance
	// of the string.  Return finished product.
	return str.substring(0,decpoint) + "." + str.substring(decpoint,str.length);

}

// turn incoming expression into a formatted value
function dollarize (expr)
{
	return format(expr,2)
	
}

function calcDoubleCD()
{
	var dblCalcCD = document.forms[1]
	var varRateCD = dblCalcCD.txtRate2.value
	var varBracketCD = dblCalcCD.txtBracket.value

	if (varRateCD == "")
	{
		alert("You must enter a rate.")
		dblCalcCD.txtRate2.focus()
		dblCalcCD.txtRate2.select()
	}
	
	wkRateCD = parseFloat(varRateCD)

	if ((wkRateCD < 0.00) || (wkRateCD > 999.00))
	{
		alert("Rate must be a numeric value.")
		dblCalcCD.txtRate2.focus()
		dblCalcCD.txtRate2.select()
	}

	if (varBracketCD == "")
	{
		alert("You must enter a tax bracket.")
		dblCalcCD.txtBracket.focus()
		dblCalcCD.txtBracket.select()
	}
	
	wkBracketCD = parseInt(varBracketCD)

	if ((wkBracketCD < 0) || (wkBracketCD > 999))
	{
		alert("Bracket must be a numeric value.")
		dblCalcCD.txtBracket.focus()
		dblCalcCD.txtBracket.select()
	}

	wkBracketCD = parseInt(varBracketCD)

	var wkYears = parseFloat(72 / ((100 - wkBracketCD) * (wkRateCD / 100)))

	dblCalcCD.txtYears.value = dollarize(wkYears)
}

function calcDoubleY()
{
	var dblCalcY = document.forms[2]
	var varRateY = dblCalcY.txtRate22.value
	var varBracketY = dblCalcY.txtBracket2.value

	if (varRateY == "")
	{
		alert("You must enter a rate.")
		dblCalcY.txtRate22.focus()
		dblCalcY.txtRate22.select()
	}
	
	wkRateY = parseFloat(varRateY)

	if ((wkRateY < 0.00) || (wkRateY > 999.00))
	{
		alert("Rate must be a numeric value.")
		dblCalcY.txtRate22.focus()
		dblCalcY.txtRate22.select()
	}

	if (varBracketY == "")
	{
		alert("You must enter a tax bracket.")
		dblCalcY.txtBracket2.focus()
		dblCalcY.txtBracket2.select()
	}
	
	wkBracketY = parseInt(varBracketY)

	if ((wkBracketY < 0) || (wkBracketY > 999))
	{
		alert("Bracket must be a numeric value.")
		dblCalcY.txtBracket2.focus()
		dblCalcY.txtBracket2.select()
	}

	wkBracketY = 100 - parseInt(varBracketY)

	var wkYield = parseFloat((wkRateY / wkBracketY) * 100)

	dblCalcY.txtYield.value = dollarize(wkYield)
}
