///////////////////////////////////////////////////////////////////////////////////////////////////
//  Tab Handler (also does question more popup)
///////////////////////////////////////////////////////////////////////////////////////////////////
//  Program Updates
//
//	01.09.2010	2.0.0	DJV		Created.
//	14.09.2010	2.0.1	DJV		Mods for variable heights. Removed commented out code.
//	17.09.2010	2.0.2	DJV		Added event handlers.
//	29.09.2010	2.0.3	DJV		Added question more popup code.
//	28.10.2010	2.0.4	DJV		Added javaAppHide.
//	23.11.2010	2.1.0	DJV		Added suButtons function (not actually in use).
//
///////////////////////////////////////////////////////////////////////////////////////////////////

var	lastTabData = "",
	tabHeights = [150, 50],
	currentTab = -1,
	tabTimer = null,
	tabClosed = false,
	tabIEVer = -1,
	suCnt = 0;

function setTabBox (tb)
{
	// See if we're running on IE6 or earlier

	if (tabIEVer == -1)
	{
		var data = DLibUtilities.systemCheck ();
		var platform = data [0];
		var browser = data [1];
		var version = data [2];
		tabIEVer = 0;

		if (browser == "Internet Explorer" && parseInt (version) < 7) tabIEVer = 6;
	}

	for (var i = 1; i <= 5; i++)
	{
		var tbox = document.getElementById ("tabbox" + i);
		tbox.style.display = (tb == i ? "block" : "none");
		tbox.style.zIndex = (tb == i ? 30000 : 0);
		document.getElementById ("tab" + i).setAttribute ("class", (tb == i ? "tabon" : "taboff"));

		if (i > 3)
		{
			tbox.style.height = tabHeights [i - 4] + "px";
			document.getElementById ((i == 4 ? "help" : "syl") + "inner").style.height =
				tabHeights [i - 4] + "px";

			if (tb == i)
			{
				// Don't bother even trying this on IE6 or earlier

				if (tabIEVer != 6)
				{
					javaAppHide (0);

					if (tbox.addEventListener)
					{
						tbox.addEventListener ('mouseover', tabMouseOver, false);
						tbox.addEventListener ('mouseout', tabMouseOut, false);
					}
					else
					{
						tbox.attachEvent ('onmouseover', tabMouseOver);
						tbox.attachEvent ('onmouseout', tabMouseOut);
					}

					currentTab = tb;
					tabClosed = false;

					if (tabTimer != null) clearTimeout (tabTimer);
					tabTimer = setTimeout ("tabClose()", 3000);
				}
			}
			else
			{
				if (tbox.removeEventListener)
				{
					tbox.removeEventListener ('mouseover', tabMouseOver, false);
					tbox.removeEventListener ('mouseout', tabMouseOut, false);
				}
			}
		}
	}
}

function tabMouseOver ()
{
	if (currentTab > 3)
	{
		clearTimeout (tabTimer);

		if (tabClosed)
		{
			javaAppHide (0);
			var tbox = document.getElementById ("tabbox" + currentTab);
			tbox.style.height = tabHeights [currentTab - 4] + "px";
			var tabi = document.getElementById ((currentTab == 4 ? "help" : "syl") + "inner");
			tabi.style.height = tabHeights [currentTab - 4] + "px";
			tabi.style.background = 'url("/images/tabs/tabgears.png") no-repeat bottom right';
		}
	}
}

function tabMouseOut ()
{
	if (currentTab > 3)
	{
		tabTimer = setTimeout ("tabClose()", 1000);
	}
}

function javaAppHide (md)
{
	var japp = document.getElementById ("javaappqty");

	if (japp)
	{
		var jaqty = japp.value;

		if (jaqty > 0)
		{
			for (var j = 0; j < jaqty; j++)
			{
				document.getElementById ("javaapp" + j).style.visibility = (md == 0 ? "hidden" : "visible");
			}
		}
	}
}

function tabClose ()
{
	if (currentTab > 3)
	{
		javaAppHide (1);
		tabClosed = true;
		var tbox = document.getElementById ("tabbox" + currentTab);
		tbox.style.height = 28 + "px";
		var tabi = document.getElementById ((currentTab == 4 ? "help" : "syl") + "inner");
		tabi.style.height = 20 + "px";
		tabi.style.background = 'none';
	}
}

///////////////////////////////////////////////////////////////////////////////////////////////////

var qmTm = null;
var qmWidthAdd = false;

function showMore ()
{
	var qtp = document.getElementById ("qtitlepopup");
	var qtpw = qtp.offsetWidth;
	var qm = document.getElementById ("qmore");

	var xy = DLibUtilities.findPos (qtp);
	qm.style.display = "block";
	qm.style.position = "absolute";
	qm.style.top = (xy [1] + qtp.offsetHeight + 3) + "px";
	var left = xy [0];
	var n = 0;

	var qmw = parseInt (qm.offsetWidth);
	if (qmw == 0) qmw = qm.clientWidth;

	if (qmw > 0)
	{
		if (!qmWidthAdd)
		{
			qmw += 25;
			qmWidthAdd = true;
			qm.style.width = qmw + "px";
		}

		if (qtpw > qmw) left += parseInt ((qtpw - qmw) / 2);
	}

	qm.style.left = left + "px";
	javaAppHide (0);
	qmTm = setTimeout ("qmoreClose()", 3000);
}

function qmoreOver (e)
{
	if (qmTm != null)
	{
		clearTimeout (qmTm);
		qmTm = null;
	}
}

function qmoreOut (e)
{
	qmTm = setTimeout ("qmoreClose()", 500);
}

function qmoreClose ()
{
	javaAppHide (1);
	clearTimeout (qmTm);
	qmTm = null;
	document.getElementById ("qmore").style.display = "none";
}

///////////////////////////////////////////////////////////////////////////////////////////////////

function suButtons (md)
{
	var su = document.getElementById ("ubuttons").style;

	if (md == 1)	// Open
	{
		su.width = (10 + suCnt * 27) + "px";
	}
	else
	{
		su.width = 0;
	}
}

///////////////////////////////////////////////////////////////////////////////////////////////////

