// Check Browser Version Andreas Bauer

function browserVersion(path) {

	this.path = (path) ? path : '..code/styles/';

	this.isDynamic = (!window.navigator.appVersion.indexOf('4.') || !window.navigator.appVersion.indexOf('5.'));

	var version = navigator.appVersion

	var v = parseInt(version)

	var agent = navigator.userAgent.toLowerCase();

	this.isMac = (agent.indexOf('mac') >= 0);

	this.isLinux = (agent.indexOf('inux') >= 0);

	this.isOpera = (agent.indexOf('opera') >= 0);

	this.name = window.navigator.appName;

	this.isIE = (this.name == "Microsoft Internet Explorer");	

	this.isNS = (this.name =="Netscape");	

	this.isNS5 = ((this.name=="Netscape" || this.name=="Mozilla" ) && v==5);

	this.css = '<LINK REL="stylesheet" HREF="' + this.path;

	if(this.isMac)	this.css += 'Mac';

	if(this.isLinux) this.css += 'Linux';

	if(this.isIE)	this.css += 'IEStyle';

	else if (this.isNS) this.css += 'NSStyle';

	else this.css += 'IEStyle';

	this.css += (this.css == '' ? '' : '.css" TYPE="text/css">');	

}



function screenInfo() {

	if(b.isDynamic)	{	

		if(b.isIE) {

			this.width = document.body.clientWidth;

			this.height = document.body.clientHeight;

		}

		else if (b.isNS)  {

			this.width = window.innerWidth;	

			this.height = window.innerHeight; 		

		}

	}	

}



function frameLoader(frameset) {

	if(top==self) { 

		this.frameset = (frameset) ? frameset : "../index.htm";

		this.currURL = unescape(window.location.pathname);

		this.newURL = this.frameset + "?" + this.currURL;

		if (b.isDynamic)

			this.redirect = 'location.replace('+this.newURL +')';

		else

			this.redirect = 'location.href ='+ this.newURL;

	}

	else this.redirect = "";

}





//scr = new screenInfo();

function getLayerHandle(id, nestref) {

	var hObj;

	// = (parent.frames.length > 0) frames

	if(b.isIE) hObj = document.all[id].style;

	if(b.isOpera) hObj = document.getElementById(id).style;

	if(b.isNS && !b.isOpera) {

		if(b.isNS5) hObj = document.getElementById(id).style;

		else hObj = (nestref)? eval(nestref+'.document.'+id) : document.layers[id];		

	}

	return hObj;

}

// function which position and show or hide layers - Andreas Bauer

function handleLayer(layername, pixelx, pixely, view, nestref) {

	if(b.isDynamic)	{

		var obj = getLayerHandle(layername,  nestref);

		if(b.isIE || b.isOpera) { 

			obj.pixelLeft = pixelx;

			obj.pixelTop = pixely;

		}

		else {

			obj.left = pixelx;

			obj.top = pixely;

		}

		showLayer(layername,view, nestref);

	}	

}



function moveBy(layername, pixelx, pixely, nestref) {

	if(b.isDynamic){

		var obj = getLayerHandle(layername, nestref);	

		if(b.isNS5)	{

			obj.left = parseInt(obj.left) + pixelx;

			obj.top = parseInt(obj.top) + pixely;

		}

		if (b.isNS && !b.isNS5) {

			obj.moveBy(pixelx,pixely);						

		}

		if(b.isIE) {

			obj.pixelLeft += pixelx;

			obj.pixelTop += pixely;				

		}

	}

}



function isLayerVisible(layername, nestref) {

	var bVisible = false;

	if(b.isDynamic)	{

		var obj = getLayerHandle(layername, nestref);

		 bVisible = (b.isNS) ? ( obj.visibility == "show") : (obj.visibility == "visible");		

	}

	return bVisible;

}



function showLayer(layername,view, nestref) {

	if(b.isDynamic)	{

		var obj = getLayerHandle(layername, nestref);

		if(view) obj.visibility = (b.isNS && !b.isNS5 && !b.isOpera) ? "show" : "visible";

		else obj.visibility = (b.isNS && !b.isNS5 && !b.isOpera) ? "hide" : "hidden";

	}			

}



function writeToLayer(layername,txt, nestref) {

	var hObj;

	if(b.isDynamic) {

		if(b.isIE) document.all[layername].innerHTML = txt;

		else if(b.isOpera) alert("write don't work with Opera");

		else if(b.isNS) {

			if(b.isNS5) document.getElementById(layername).innerHTML = txt;

			else {

				hObj = (nestref)? eval("document."+nestref+".document."+layername+".document") : document.layers[layername].document;  // nestref todo

				with(hObj) {open();	write(txt);	close();}

			}

		}				

	}	

}



function getLayerId(index,nestref) {

	if(b.isIE) returnHtml = document.all.tags("DIV").item(index).id;

	if(b.isNS5) returnHtml = document.getElementsByTagName("DIV").item(index).id;

	if(b.isNS && !b.isNS5) returnHtml = (nestref) ? eval(nestref+'.document.layers["'+index+'"].id') : document.layers[index].id;

	return returnHtml;

}



function getLayerCount(nestref) {

	var nLayers = 0; 

	if(b.isIE) nLayers = document.all.tags("DIV").length; 

	if(b.isNS5) nLayers = document.getElementsByTagName("DIV").length;

	if(b.isNS && !b.isNS5) nLayers = (nestref) ? eval(nestref+".document.layers.length") : document.layers.length; 	

	return nLayers;

}



function resizeIt() {

	if(b.isIE) start();

	else document.location = document.location;

}



function mouseInit(evnt) {

	if (g_isNS) {if (evnt.pageX) {mouseX=(evnt.pageX); mouseY=(evnt.pageY);}  }

 	else {	mouseX=(event.clientX);	mouseY=(event.clientY);	}

	if(hScrollPane) {

		var correct = (GetScreenHeight()-390)/2;

		hScrollPane.scrollTo(mouseY-correct);					

	}

}

function keyInit(evnt) {

	if(g_isIE) {

		if(window.event.keyCode==38) hScrollPane.up();

		if(window.event.keyCode==40) hScrollPane.down();

	}

}

function keyRelease(evnt) {

	hScrollPane.stop();

}

// Window functions

function newWindow(url,name,width,height) {

	var hWindow;

	hWindow = window.open(url,name, "dependent=yes,toolbar=0,location=0,status=0,menubar=0,scrollbars=1,resizable=1,width="+width +",height="+height+"\"");

	hWindow.focus();

}



// Rollover functions

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];}}
}

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;
}

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];}
}

// End Rollover functions






