/*
	Init layers for 4+ Browsers
----------------------------------------*/

var d   = document;
var agt = navigator.userAgent.toLowerCase();
var w3c = (d.getElementById) ? true : false;
var xxx = ((agt.indexOf('opera') != -1) || (agt.indexOf('webtv') != -1) || (agt.indexOf('omniweb') != -1)) ? true : false;

var ieX = ((agt.indexOf('msie')  != -1) && w3c && !xxx) ? true : false;
var ie4 = ((agt.indexOf('msie')  != -1) && (d.all) && !w3c && !xxx) ? true : false;
var ns6 = ((agt.indexOf('gecko') != -1) && w3c && !xxx) ? true : false;
var ns4 = (d.layers && !w3c && !xxx) ? true : false;

var isWin = (navigator.appVersion.indexOf('Windows') != -1) ? true : false;

/*
	Function to Show Layers
----------------------------------------*/

function show(id) {
	if (ieX || ns6) d.getElementById(id).style.visibility = 'visible';
	if (ie4) d.all[id].style.visibility = 'visible';
	if (ns4) d.layers[id].visibility = 'show';
}

/*
	Function to Hide Layers
----------------------------------------*/
// do not override already defined implementation of "hide"
if ("undefined" == typeof hide) hide = function (id) {
	if (ieX || ns6) d.getElementById(id).style.visibility = 'hidden';
	if (ie4) d.all[id].style.visibility = 'hidden';
	if (ns4) d.layers[id].visibility = 'hide';
}

/*
	Tool Tips
----------------------------------------*/

var actDyn   = true;
var skin	 = null;
var Xoffset	 = -10;	// layer Xoffset from link mouseover event
var Yoffset	 = 0;	// layer Yoffset from link mouseover event
var toolW	 = 0;	// width of layer

var bgcolor1 = '#666666';
var bgcolor2 = '#999999';
var bgcolor3 = '#ffffff';

var x        = 0;
var y        = 0;
var yyy      = -1000;

var aSrc     = '<img src="images/toolTipA.gif" border="0" />';

if (document.images) 
{
	a = new Image();
	a.src = 'images/toolTipA.gif';
};

document.write('<div id="ttip"></div>');
	
function initTip() 
{
	skin = (ieX || ns6 || xxx) ? document.getElementById('ttip').style 
		:  (ie4) ? document.all('ttip').style 
		:  (ns4) ? document.ttip 
		:  null;
};

function getMouse(e) 
{
	if (ieX || ie4) 
	{
		e = window.event;
		x = e.clientX + document.body.scrollLeft;
		y = e.clientY + document.body.scrollTop;
	}
	if (ns4 || ns6) 
	{
		x = e.pageX;
		y = e.pageY;
	}
	skin.left = x + Xoffset;
	skin.top  = y + yyy;
	nudge(x);
};

function nudge(x) 
{
	var extreme, overflow, temp;
	
	if (ieX || ie4) extreme = (document.body.clientWidth - toolW);
	if (ns4 || ns6) extreme = (window.innerWidth - toolW);
	if (ns6) extreme -= 25;

	if (parseInt(skin.left) > extreme) 
	{
		overflow = parseInt(skin.left) - extreme;
		temp = parseInt(skin.left);
		temp -= overflow;
		skin.left = temp;
		if (overflow > 85) overflow = 85;
		if (ieX || ns6)	document.getElementById('arrow').style.left = overflow;
		if (ie4) document.all('arrow').style.left = overflow;
		if (ns4) document.ttip.document.arrow.left = overflow;
	}
	if (parseInt(skin.left) < 1) 
	{
		overflow = parseInt(skin.left) - 1;
		temp = parseInt(skin.left);
		temp -= overflow;
		skin.left = temp;
	}
};

function toolTip(Yoffset, tWidth, msg) 
{
	initTip();
	if (skin && (actDyn == true))
	{
		if (ns4) document.captureEvents(Event.MOUSEMOVE);
		document.onmousemove = getMouse;
		
		if (Yoffset == null) Yoffset = -30;	// sets the Yoffset if not defined
		if (Yoffset == 2) Yoffset = -38;	// sets the Yoffset if 2 lines
		if (Yoffset == 3) Yoffset = -48;	// sets the Yoffset if 3 lines
		if (ieX || ie4) Yoffset -= 3;
		if (agt.indexOf('mac') != -1) Yoffset -= 3;
		yyy = Yoffset;
		
		toolW = tWidth;
		if (tWidth == null) toolW = 185;
		
		var content = ''
			+ 	'<table cellpadding="0" cellspacing="0" border="0">'
			+		'<tr>'
			+			'<td bgcolor="' + bgcolor1 + '" colspan="3" height="1"><spacer type="block" width="1" height="1" /></td>'
			+			'<td bgcolor="' + bgcolor2 + '" rowspan="4" width="1"><spacer type="block" width="1" height="1" /></td>'
			+		'</tr>'
			+		'<tr>'
			+			'<td bgcolor="' + bgcolor1 + '" width="1"><spacer type="block" width="1" height="1" /></td>'
			+			'<td bgcolor="' + bgcolor3 + '" valign="top">'
			+				'<div id="msg" class="toolTip"> &nbsp; ' 
			+ 				msg 
			+ 				' &nbsp; &nbsp; </div></td>'
			+			'<td bgcolor="' + bgcolor1 + '" width="1"><spacer type="block" width="1" height="1" /></td>'
			+		'</tr>'
			+		'<tr>'
			+			'<td bgcolor="' + bgcolor1 + '" colspan="3" height="1"><spacer type="block" width="1" height="1" /></td>'
			+		'</tr>'
			+		'<tr>'
			+			'<td bgcolor="' + bgcolor2 + '" colspan="3" height="1"><spacer type="block" width="1" height="1" /></td>'
			+		'</tr>'
			+	'</table>'
			+	'<div id="arrow">' + aSrc + '</div>'
			+ '';
		
		if (ieX || ns6) 
		{
			document.getElementById('ttip').innerHTML = content;
			skin.visibility = 'visible';
			skin.display    = 'inline';	// fixes a scrollbar bug in IE5 for Mac - still not happy with it
			skin.filter     = 'alpha(opacity = 85)';
			document.getElementById('msg').style.filter = 'alpha(opacity = 100)';
			//skin.MozOpacity = 85 + '%';
			//document.getElementById('msg').style.MozOpacity = 100 + "%";
		}
		if (ie4) 
		{
			document.all('ttip').innerHTML = content;
			skin.visibility = 'visible';
			skin.display    = 'inline';	// fixes a scrollbar bug in IE5 for Mac - still not happy with it
		}
		if (ns4) 
		{
			skin.document.open();
			skin.document.write(content);
			skin.document.close();
			skin.visibility = 'show';
		}
		skin.width = toolW;
	}
	else return;
};
	
function fizz() 
{
	if (skin)
	{
		yyy = -1000;
		skin.width = 0;
		if (ieX || ie4 || ns6) 
		{
			skin.visibility = 'hidden';
			skin.display    = 'none';	// fixes a scrollbar bug in IE5 for Mac - still not happy with it
		}
		if (ns4) skin.visibility = 'hide';
	}
	else return;
};

