function preloadImg(src)
{
	var IMG = new Image();
	IMG.src = src;
}

function swapImg(name, src)
{
     document.images[name].src = src;
}

function commaFormat(value)
{
	if(isNaN(parseInt(value)))
		return "";

	var parts = new Array();
	while(value.length > 3)
	{
		var part = value.substr(value.length-3);
		parts.unshift(part);
		value = value.substr(0,value.length-3);
	}
	if (value.length > 0)
		parts.unshift(value);

	return '$' + parts.join(",");
}

function calcPayment()
{
	var D = parseInt(document.finForm.deposit.value);
	if (isNaN(D)) { D = 0; }
	var P = parseInt(document.finForm.purchase.value) - D;
	var i = parseFloat(document.finForm.iRate.options[document.finForm.iRate.selectedIndex].value) / 1200.0;
	var n = parseInt(document.finForm.term.options[document.finForm.term.selectedIndex].value);
	var B = P * (parseFloat(document.finForm.balloon.options[document.finForm.balloon.selectedIndex].value) / 100.0);
	var payment = (((P * Math.pow((1+i), n)) / (Math.pow((1+i), n) - 1)) + (B / ((1+i) - Math.pow((1+i),(n+1))))) * i;
	payment = payment / parseFloat(4.3);
	document.getElementById("financeAmt").innerHTML = commaFormat("" + Math.round(payment, 1));
}

function setOpacity(el, opacity)
{
	opacity = opacity / 100;
	el.style.opacity = opacity; 
	el.style.filter = "alpha(opacity=" + (opacity * 100) + ")"; 

	if (opacity == 1) opacity = 0.99;
	el.MozOpacity = opacity; 
}

var fadeOutEnqInt;

function fadeOutEnqA()
{
	// Do the fade
	var fadeFrom = document.getElementById("swapDetailsOver");
	var oFrom = parseFloat(fadeFrom.style.opacity) * 100;
	if (oFrom > 0)
	{
		oFrom -= 10.0;
		if (oFrom < 0) oFrom = 0;
		setOpacity(fadeFrom, oFrom);
	}
	else
	{
		setOpacity(fadeFrom, 0);
		clearInterval(fadeOutEnqInt);
		document.body.removeChild(fadeFrom);
	}
}

function fadeOutEnq()
{
	if (document.getElementById("swapDetailsOver"))
		fadeOutEnqInt = setInterval("fadeOutEnqA()", 20);
}

function getTopPos(el)
{
	var pos = 0;
	var cur = el;
	do
	{
		pos += cur.offsetTop;
		cur = cur.offsetParent;
	}
	while (cur && cur.tagName != "HTML")

	return pos;
}

function getLeftPos(el)
{
	var pos = 0;
	var cur = el;
	do
	{
		pos += cur.offsetLeft;
		cur = cur.offsetParent;
	}
	while (cur && cur.tagName != "HTML")

	return pos;
}

function overlayMenu()
{
	var under = document.getElementById("swapDetailsUnder");
	var over = document.createElement("DIV");
	var top = getTopPos(under);
	var left = getLeftPos(under);
	var w = 380;
	var h = 230;

	over.style.position = "absolute";
	over.style.top = (top - 90) + "px";
	over.style.left = left + "px";
	over.style.width = w + "px";
	over.style.height = h + "px";
	over.className = "expBox";
	over.id = "swapDetailsOver";
	over.innerHTML = document.getElementById("swapDetailsForm").innerHTML;

	return over;
}

function showMenu()
{
	var over = overlayMenu();
	document.body.appendChild(over);
	setOpacity(over, 100);
	preloadImg("http://www.boatlocator.com.au/getImg.pl?img=enq");
}

function calcPaymentB()
{
 	var P = parseInt(document.finForm.purchase.value);
 	var i = parseFloat(document.finForm.iRate.options[document.finForm.iRate.selectedIndex].value) / 1200.0;
 	var n = parseInt(document.finForm.term.options[document.finForm.term.selectedIndex].value);
 	var B = P * (parseFloat(document.finForm.balloon.options[document.finForm.balloon.selectedIndex].value) / 100.0);
 	var payment = (((P * Math.pow((1+i), n)) / (Math.pow((1+i), n) - 1)) + (B / ((1+i) - Math.pow((1+i),(n+1))))) * i;
 	payment = payment / parseFloat(4.3);
 	document.getElementById("financeAmt").innerHTML = commaFormat("" + Math.round(payment, 1));
}

function purchase_change()
{
	setTimeout("updatePmt()", 1);
}

function updatePmt()
{
	var price = document.finForm.purchase.value;
 	price = price.replace(/\D/, '');
 	document.finForm.purchase.value = price;
	calcPaymentB();
}
