// JavaScript Document





/**
 * Used to swap images with their corresponding 'over' state. 
 * Adds '-<state>' to the src path if specified.
 * Otherwise, removes string between last occurence of '-' & '.'
 * Usage: use with onmouseover/onmouseout events. 
 *		onmouseover="modImageState(this, 'over');"
 *		onmouseout="modImageState(this, '');"
 */
function modImageState(img, state) {
	var src = img.src;
	var newSrc, ext;
	var extPos, modStr;
	
	extPos = src.lastIndexOf(".");
	ext = src.slice(extPos, src.length);
	if (state != "") {
		newSrc = src.slice(0, extPos);
		newSrc = newSrc + "-" + state + ext;			
	} else {
		newSrc = src.slice(0, src.lastIndexOf("-"));
		newSrc = newSrc + ext; 
	}
	img.src = newSrc;
}


function MM_findObj(n, d) { //v4.01
	var p,i,x;	if(!d) d=document;	if((p=n.indexOf("?"))>0&&parent.frames.length) {
		d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
	if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
	for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
	if(!x && d.getElementById) x=d.getElementById(n); return x;
}

/* Thanks to Scott Andrew */
function addEvent(obj, evType, fn){
	if (obj)	{
		if (obj.addEventListener) {
			obj.addEventListener(evType, fn, true);
			return true;
		} else if (obj.attachEvent) {
			var r = obj.attachEvent("on"+evType, fn);
			return r;
		} else {
			return false;
		}
	}
	return false;
}

function padZero(sVal, iLen)	{
	var arrTemp;
	sVal = sVal + '';
	if (sVal.length < iLen)	{
		arrTemp = new Array(iLen - sVal.length + 1);
		return arrTemp.join('0') + sVal;
	}
	return sVal;
}

/*
var sHoverTextID = "";

function ShowHoverText(sID)	{
	var objHoverText;
	if (sHoverTextID != sID)	{
		sHoverTextID.style.display = "none";
	}
		objHoverText = MM_findObj(sID);
	
}
*/

var eDiv = null;

function ClearHoverText()	{
	var divHover = MM_findObj("HoverText");
	
	if (divHover)	{
		divHover.style.display = "none";
	}
}

addEvent(window, "scroll", ClearHoverText);

function ShowHoverText(e, sID) {
	var divHover = MM_findObj(sID);
	var tempX, tempY;
	
	if (document.all) { // grab the x-y pos.s if browser is IE
		tempX = event.clientX + document.documentElement.scrollLeft + 10;
		tempY = event.clientY + document.documentElement.scrollTop + 6;
	} else {  // grab the x-y pos.s if browser is NS
		tempX = e.pageX + 15;
		tempY = e.pageY + 20;
	}  
	// catch possible negative values in NS4
	if (tempX < 0){tempX = 0}
	if (tempY < 0){tempY = 0} 
	
	if (divHover)	{
		if (eDiv == null)	{
			eDiv = document.createElement("div");
			eDiv.id = "HoverText";
			eDiv.className = "HoverText";
			document.body.appendChild(eDiv);
		}
		eDiv.innerHTML = divHover.innerHTML;
		eDiv.style.top = tempY + "px";
		eDiv.style.left = tempX + "px";
		if (eDiv.style.display != "block")	{
			eDiv.style.display = "block";
		}
	}

	return true
}

function findPosX(obj)	{
	var curleft = 0;
	if (obj.offsetParent)	{
		while (obj.offsetParent)	{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;

	return curleft;
}

function findPosY(obj)	{
	var curtop = 0;
	if (obj.offsetParent)	{
		while (obj.offsetParent)	{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	
	return curtop;
}
