/************************************* ClientInfo.js v1.2				** © 2000 - 2002 Ian White			** www.fuzzygroove.com				**									** Based on code by Dan Steinman	 	** www.dansteinman.com				**									*************************************/function Browser() { //modified code from the makers of DynAPI2 (which doesn't support macs but is otherwise an amazing API)	var b=navigator.appName;	if (b=="Netscape") this.b="ns";	else if (b=="Microsoft Internet Explorer") this.b="ie";	else this.b=b;	this.version=navigator.appVersion;	this.v=parseInt(this.version);	this.ns=(this.b=="ns" && this.v>=4);	this.ns4=(this.b=="ns" && this.v==4);	this.ns5=(this.b=="ns" && this.v==5);	this.ie=(this.b=="ie" && this.v>=4);	this.ie4=(this.version.indexOf('MSIE 4')>0);	this.ie5=(this.version.indexOf('MSIE 5')>0);	this.ie55=(this.version.indexOf('MSIE 5.5')>0);	this.opera=(navigator.userAgent.indexOf('Opera') != -1)? true : false;	this.dom=((document.createRange&&(document.createRange().createContextualFragment))?true:false);	this.min=(this.ns||this.ie);	var ua=navigator.userAgent.toLowerCase();	if (ua.indexOf("win")>-1) this.platform="win32";	else if (ua.indexOf("mac")>-1) this.platform="mac";	else this.platform = "other";	this.mac = (this.platform=="mac");	this.win = (this.platform=="win32");}is = new Browser();function doVoid() { x = 1+1; }function getLayerDoc(layerstr,rel) { // returns the crossbrowser path to the document of a layer (for NS 4)	var docLayer = "document";	(rel)? (rel = "." + rel) : (rel = "");	if(is.ns && !is.dom) docLayer += rel + ".layers['" + layerstr + "'].document";		return eval(docLayer);}function getLayer(layerstr, rel) { // returns the crossbrowser path to the document of a layer (for NS 4)	//(rel)? (rel = "document.layers['" + rel + "'].") : (rel = "");	(rel)? (rel = "." + rel) : (rel = "");	var ref = is.dom? document.getElementById(layerstr) : is.ie? document.all[layerstr] : is.ns4? eval( "document" + rel + ".layers['" + layerstr + "']") : false;		return ref;}function getCss(layer) {	var css = is.dom? layer.style : is.ie? layer.style : is.ns4? layer : false;	return css;}function setClip(layer, clip) {	var c = getCss(layer).clip;	if (is.ns4) {		c.top		= clip[0];		c.right		= clip[1];		c.bottom	= clip[2];		c.left		= clip[3];	}	else if (is.ie || is.dom) getCss(layer).clip = "rect("+clip[0]+"px "+clip[1]+"px "+clip[2]+"px "+clip[3]+"px)"}function mouseTrack() {	this.x = 0; this.y = 0;	this.clickX = 0; this.clickY = 0;}mouseTrack.prototype.update = mtMUpdate;mouseTrack.prototype.click = mtCUpdate;function mtMUpdate(e) {	if(is.ie) {		this.x = window.event.clientX;		this.y = window.event.clientY;	} else if(is.ns4 || is.ns5) {        this.x = e.pageX;        this.y = e.pageY;    }}function mtCUpdate(e) {	if(is.ie) {		this.clickX = window.event.clientX;		this.clickY = window.event.clientY;	} else if(is.ns4 || is.ns5) {        this.clickX = e.pageX;        this.clickY = e.pageY;    }}function newImage() { // needed to keep animated gifs moving after a click in ns.	if(is.ns && !is.dom)		return new Image(5,5);	else return new Image();}function showLayer(layer) {	getCss(layer).visibility = is.ns4? 'show' : 'visible';}function hideLayer(layer) {	getCss(layer).visibility = is.ns4? 'hide' : 'hidden';}// modified from code stolen off K10K.netfunction noFocusRect() {	if (is.dom || is.ie) {		if (is.dom) {			var links = document.getElementsByTagName("a");			var selects = document.getElementsByTagName("select");		} else {			var links = document.all.tags("a");			var selects = document.all.tags("select");		}		for(i=0; i<links.length; i++) {			links[i].onfocus = new Function("this.blur()");		}		for(i=0; i<selects.length; i++) {			selects[i].onfocus = new Function("this.blur()");		}	}}