// GLOBAL VARIABLES

var isWin, isMac, isIE, isIE4, isIE5, isNav, isNav6, isOld

// browser detection
function browserCheck() {
	// is Win
	isWin = (navigator.platform.indexOf('Win')!=-1) ? true:false
	// is Mac
	isMac = (navigator.platform.indexOf('Mac')!=-1) ? true:false


	// is IE4
	isIE4 = (document.all && !document.getElementById) ? true:false
	// is IE5
	isIE5 = (document.all && document.getElementById) ? true:false
	// is IE4, IE5
 	isIE = (isIE4 || isIE5) ? true:false


	// is Netscape 4
	isNav = (document.layers) ? true:false
	// is Netscape 6
	isNav6 = (!document.all && document.getElementById) ? true:false

	// Work around for Netscape 6
	if(isNav6){
		document.all=document.getElementsByTagName("*");
	}

	// is older than version 4
	isOld = (parseInt(navigator.appVersion) < 4) ? true:false

	var useragent = navigator.userAgent;
	var bName = navigator.appName;
	var pos = useragent.indexOf('MSIE');
	if (pos > -1) {
		bVer = useragent.substring(pos + 5);
		var pos = bVer.indexOf(';');
		var bVer = bVer.substring(0,pos);
	}

	if (bName == "Netscape") {
		var bVer = useragent.substring(8);
		var pos = bVer.indexOf(' ');
		var bVer = bVer.substring(0, pos);
	}

	if (bName == "Netscape" && parseInt(navigator.appVersion) >= 5) {
		var pos = useragent.lastIndexOf('/');
		var bVer = useragent.substring(pos + 1);
		isNav6 = true;
	}
}

browserCheck();

function getNetNav4Object(layer,parent) {
	var obj = "";
	if(parent) {
		for(i=0; i<parent.length; i++) {
			obj = obj+"document.layers['"+parent[i]+"'].";
		}
	}
	obj = obj+"document.layers['"+layer+"']";
	return obj;
}

// layer manipulation
function showLayer(layer,parent){
	if(isNav) {
		eval(getNetNav4Object(layer,parent)+".visibility = 'show'");
	}
	else {
		if(isNav6) {
			document.getElementById(layer).style.visibility = 'visible';
		}
		else {
			document.all[layer].style.visibility = 'visible';
		}
	}
}

function hideLayer(layer,parent){
	if(isNav) {
		eval(getNetNav4Object(layer,parent)+".visibility = 'hide'");
	}
	else {
		if(isNav6) {
			document.getElementById(layer).style.visibility = 'hidden';
		}
		else {
			document.all[layer].style.visibility = 'hidden';
		}
	}
}

function getLayerHeight(layer,parent) {
	if(isNav) {
		return eval(getNetNav4Object(layer,parent)+".clip.height");
	}
	else {
		if(isNav6) {
			if(!parseInt(document.getElementsByTagName('div')[layer].offsetHeight)) {
				return parseInt(document.getElementById(layer).style.height);
			}
			else {
				return parseInt(document.getElementsByTagName('div')[layer].offsetHeight);
			}
		}
		else {
	//		return document.all[layer].style.pixelHeight;
			return document.all[layer].scrollHeight;
		}
	}
}

function incLayerTop(t,layer,parent) {
	if(isNav) {
		eval(getNetNav4Object(layer,parent)+".top += "+t);
	}
	else {
		if(isNav6) {
			document.getElementById(layer).style.top=parseInt(document.getElementById(layer).style.top)+t+"px";
		}
		else {
			document.all[layer].style.pixelTop += t;
		}
	}
}

function decLayerTop(t,layer,parent) {
	if(isNav) {
		eval(getNetNav4Object(layer,parent)+".top -= "+t);
	}
	else {
		if(isNav6) {
			document.getElementById(layer).style.top=parseInt(document.getElementById(layer).style.top)-t+"px";
		}
		else {
			document.all[layer].style.pixelTop -= t;
		}
	}
}

function getClip(layer,which) {
	if (isNav) {
		if (which=="t") return document.layers[layer].clip.top
		if (which=="r") return document.layers[layer].clip.right
		if (which=="b") return document.layers[layer].clip.bottom
		if (which=="l") return document.layers[layer].clip.left
	}
	else {
		if(isNav6) {
			var clipv = document.getElementById(layer).style.clip.split("rect(")[1].split(")")[0].split("px");
			if (which=="t") return Number(clipv[0]);
			if (which=="r") return Number(clipv[1]);
			if (which=="b") return Number(clipv[2]);
			if (which=="l") return Number(clipv[3]);
		}
		else {
			var clipv = document.all[layer].style.clip.split("rect(")[1].split(")")[0].split("px")
			if (which=="t") return Number(clipv[0])
			if (which=="r") return Number(clipv[1])
			if (which=="b") return Number(clipv[2])
			if (which=="l") return Number(clipv[3])
		}
	}
}

function setClip(layer,t,r,b,l) {
	if (isNav) {
		document.layers[layer].clip.top = t;
		document.layers[layer].clip.right = r;
		document.layers[layer].clip.bottom = b;
		document.layers[layer].clip.left = l;
	}
	else {
		if(isNav6) {
			document.getElementById(layer).style.clip = "rect("+t+"px "+r+"px "+b+"px "+l+"px)";
		}
		else {
			document.all[layer].style.clip = "rect("+t+"px "+r+"px "+b+"px "+l+"px)";
		}
	}
}
function incClip(layer,t,r,b,l) {
	if (isNav) {
		document.layers[layer].clip.top = getClip(layer,'t') + t
		document.layers[layer].clip.right = getClip(layer,'r') + r
		document.layers[layer].clip.bottom = getClip(layer,'b') + b
		document.layers[layer].clip.left = getClip(layer,'l') + l
	}
	else {
		if(isNav6) {
			document.getElementById(layer).style.clip = "rect("+(getClip(layer,"t") + t)+"px "+(getClip(layer,"r") + r)+"px "+(getClip(layer,"b") + b)+"px "+(getClip(layer,"l") + l)+"px)";
		}
		else {
			document.all[layer].style.clip = "rect("+(this.getClip(layer,'t')+t)+"px "+(this.getClip(layer,'r')+r)+"px "+Number(this.getClip(layer,'b')+b)+"px "+Number(this.getClip(layer,'l')+l)+"px)"
		}
	}

}

function decClip(layer,t,r,b,l) {
	if (isNav) {
		document.layers[layer].clip.top = getClip(layer,'t') - t
		document.layers[layer].clip.right = getClip(layer,'r') - r
		document.layers[layer].clip.bottom = getClip(layer,'b') - b
		document.layers[layer].clip.left = getClip(layer,'l') - l
	}
	else {
		if(isNav6) {
			document.getElementById(layer).style.clip = "rect("+(getClip(layer,"t") - t)+"px "+(getClip(layer,"r") - r)+"px "+(getClip(layer,"b") - b)+"px "+(getClip(layer,"l") - l)+"px)";
		}
		else {
			document.all[layer].style.clip = "rect("+(this.getClip(layer,'t')-t)+"px "+(this.getClip(layer,'r')-r)+"px "+Number(this.getClip(layer,'b')-b)+"px "+Number(this.getClip(layer,'l')-l)+"px)"
		}
	}
}

function layerRewriter(layer,str) {
	if(isNav){
		lyr = document.layers[layer];
		lyr.document.open();
		lyr.document.write(str);
		lyr.document.close();
	}
	else {
		if(isNav6) {
			document.getElementById(layer).innerHTML = str;
		}
		else {
			document.all[layer].innerHTML = str;
		}
	}
}

function getIndex(name,stringPart) {
	var str = name
	var pos = eval("str.replace(/"+stringPart+"/i, \"\")")
	return pos
}

function changeImageWithinLayer(imageName,newImage,layer) {
	if (isNav) {
		document.layers[layer].document.images[imageName].src = newImage;
	}
	else {
		document.images[imageName].src = newImage;
	}
}
