/*
 * Macromedia:
 *  image swapping functions
 *  layer diaplay functions
 * Rackspace:
 *  timed layer hiding functions
 */

//

dom = (document.getElementById) ? true : false;
nn4 = (document.layers) ? true : false;
nn6 = ((navigator.appName == 'Netscape') && parseInt(navigator.appVersion) == 5 && navigator.userAgent.indexOf('Netscape6')!=-1);
ie = (document.all) ? true : false;
ie4 = ie && !dom;
ie5 = ie && !ie4;
ie6 = (ie && (navigator.appVersion.indexOf("MSIE 6")!= -1));
Mac = (navigator.appVersion.indexOf("Mac") != -1);
ie4mac = ie4 && Mac;
opera = (navigator.userAgent.indexOf("Opera")!=-1);
Konqueror = (navigator.userAgent.indexOf("Konqueror")!=-1);
Safari = (navigator.appVersion.indexOf("Safari")!=-1);

function relPosX(which) {
if (nn4) {
return document.layers[which].pageX;
} else {
var elem = (dom)? document.getElementById(which) : document.all[which];
var pos = elem.offsetLeft;
while (elem.offsetParent != null) {
elem = elem.offsetParent;
pos += elem.offsetLeft;
if (elem.tagName == 'BODY') break;
} return pos;
}
}

function relPosY(which) {
if (nn4) {
return document.layers[which].pageY;
} else {
var elem = (dom)? document.getElementById(which) : document.all[which];
var pos = elem.offsetTop;
while (elem.offsetParent != null) {
elem = elem.offsetParent;
pos += elem.offsetTop;
if (elem.tagName == 'BODY') break;
} return pos;
}
}


if (MillisecondsBeforeClose == null) MillisecondsBeforeClose = 500;
if (disableMenus == null) disableMenus = false;

window.onerror = null;
function MM_reloadPage(init) { //reloads the window if Nav4 resized
	if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
		document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
	else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_findObj(n, d) { //v4.0
	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 && document.getElementById) x=document.getElementById(n); return x;
}

function MM_showHideLayers() { //v3.0
	var i,p,v,obj,args=MM_showHideLayers.arguments;
	for (i=0; i<(args.length-2); i+=3) {
		if ((obj=MM_findObj(args[i]))!=null) {
			v=args[i+2];
			(v=='show')?hideElements("SELECT"):showElements("SELECT");
			if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
			obj.visibility=v;
		}
	}
}

function MM_swapImgRestore() { //v3.0
	var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
	var d=document;
	if(d.images) {
		if(!d.MM_p) d.MM_p=new Array();
		var i,j=d.MM_p.length,a=MM_preloadImages.arguments;
		for(i=0; i<a.length; i++)
			if (a[i].indexOf("#")!=0) { d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];/*alert(a[i]);*/}
	}
}

function MM_swapImage() { //v3.0
	var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
	if ((x=MM_findObj(a[i]))!=null) {document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

var WCT_currentmenu = '';
function WCT_enterMenu(whichmenu) {
	WCT_currentmenu=whichmenu;
}

function WCT_leaveMenu(whichmenu,z_selected) {

	WCT_currentmenu='';
	setTimeout("WCT_clearMenu('" + whichmenu + "','"+z_selected+"');", MillisecondsBeforeClose);
}

function WCT_clearMenu(whichmenu,z_selected) {
	if (WCT_currentmenu!=whichmenu) {
		Z_CuraRestore(whichmenu,z_selected); // Z - added
		MM_showHideLayers(whichmenu,'','hide');
	}
}

// Z - added for PG
function Z_overlevel(mId,childsCount) {
	Z_stylize1level(mId,1,"",childsCount);
	// popup width
	var elTd = MM_findObj("a_"+mId);
	var elDiv = MM_findObj("div_"+mId);
	if (elDiv && elTd && getEltPageTop(elDiv) == 0) {
		var wd, wtd;
		wd = getEltWidth(elDiv);
		wtd = getEltWidth(elTd) - 2;
		/*
		if (wtd > wd) {
			wd = wtd + "px";
			setEltWidth(elDiv, wd);
		}
		*/
		var i, w;
		w = wd;
		for(i=0;i<elDiv.childNodes.length;i++) {
			w = getEltWidth(elDiv.childNodes.item(i).childNodes.item(0));
			if (w > wtd) wtd = w;
		}
		wd = wtd + "px";
		setEltWidth(elDiv, wd);
		var e;
		for(i=0;i<elDiv.childNodes.length;i++) {
			e = elDiv.childNodes.item(i);
			setEltWidth(e, wd);
			e.childNodes.item(0).style.display = "block";
		}
	}
	Z_moveDiv(mId);
	MM_showHideLayers('div_'+mId,'','show');
	WCT_enterMenu('div_'+mId);
}

function Z_outlevel(mId,z_selected) {
	WCT_leaveMenu('div_'+mId,z_selected);
}

function Z_moveDiv(mId) {
	var elImg = MM_findObj("a_"+mId);
	var elDiv = MM_findObj("div_"+mId);
	var elPDiv = MM_findObj("top-menu");
	if (elImg && elDiv) {
		var top = getEltPageTop(elPDiv)+getEltHeight(elPDiv);
		if (is.ie4up) top += elPDiv.offsetHeight;
		var left = getEltPageLeft(elImg);
		if (is.opera) top += 1;
		if (left + getEltWidth(elDiv) > getCurrentWinWidth()) {
			left -= getEltWidth(elDiv) - getEltWidth(elImg) + 2;
		}
		//moveEltTo(elDiv,left,top);
		left = relPosX("li_"+mId);
		top = relPosY("li_"+mId) + 26;
		moveEltTo(elDiv,left,top);
	}
}

function Z_stylize1level(mId,f,z_selected,childsCount) {
	// f - on/off flag
	var elA = MM_findObj("a_"+mId);
	if (elA) {
		Z_cura = mId;
		var cn;
		cn = (elA.className.substr(0, 4) == "over")?elA.className.substr(4):elA.className;
		elA.className = (f)?"over" + cn :cn;
	}
}

function Z_stylize2level(mId,f) {
	var elA = MM_findObj("a2_"+mId);
	var elTd2 = MM_findObj("td22_"+mId);
	if (elA && /*elTd1 && */elTd2) {
		elA.style.color = (f)?"#213F8E":"";
		elTd2.style.backgroundColor = (f)?"#FFFFFF":"";
	}
}

var Z_cura = '';
function Z_CuraRestore(mId,z_selected) {
	if (mId.indexOf("_") > -1) {
		var cura = mId.substring(mId.indexOf("_")+1);
	}
	if (cura!=mId) {
		Z_stylize1level(cura,0,z_selected);
	}
}

function rollover(mId,f,level,selected) {
	var elA = MM_findObj("la_"+mId);
	var elTd = MM_findObj("ltd_"+mId);
	if (!elA || !elTd) return;

	if (level==2 && !selected) {
		elA.style.color = (f)?"#213F8E":"";
		elTd.style.backgroundColor = (f)?"#FFFFFF":"";
	}
	else if ((level==3 || level==4) && !selected) {
		elA.style.color = (f)?"#213F8E":"";
		elA.style.fontWeight = (f)?"bold":"";
		elTd.style.backgroundColor = (f)?"#FFFFFF":"";
	}
}

function bOL() {
	//MM_preloadImages("/images/m-b.gif");
	//MM_preloadImages("/images/m-b-l.gif");
}

/* show|hide objects */
function hideElements(tagName)
{
	setVisibility(tagName, false)
}

function showElements(tagName)
{
	setVisibility(tagName, true)
}

function setVisibility(tagName, f)
{
	var elDiv = MM_findObj("div_"+Z_cura);
	if (!elDiv || !is.ie || is.opera) return;

	var divLeft = elDiv.offsetLeft;
	var divRight = divLeft + elDiv.offsetWidth;
	var divTop = elDiv.offsetTop;
	var divBottom = divTop + elDiv.offsetHeight;
	var els = document.all.tags(tagName);
	var i;
	for (i=0; i < els.length; i++) {
		var el = els.item(i)
		var elParent = el;
		var left = 0;
		var top = 0;
		var width = elParent.offsetWidth;
		var height = elParent.offsetHeight;
		while (elParent) {
			left += elParent.offsetLeft
			top += elParent.offsetTop
			elParent = elParent.offsetParent
		}
		if ((left < divRight) && (left + width > divLeft) && (top < divBottom) && (top + height > divTop)) {
			el.style.visibility = (!f) ? "hidden" : "";
		}
	}
}
