// functions
function browserDetails()
{
	this.ver=navigator.appVersion
	this.agent=navigator.userAgent
	this.dom=document.getElementById?1:0
	this.opera5=(navigator.userAgent.indexOf("Opera")>-1 && document.getElementById)?1:0
	this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0; 
	this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
	this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
	this.ie=this.ie4||this.ie5||this.ie6
	this.mac=this.agent.indexOf("Mac")>-1
	this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
	this.ns4=(document.layers && !this.dom)?1:0;
	this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
	return this;
}

function getElementById(obj,parent)
{
	return(new createElementRef(obj,parent));
}

function createElementRef(obj,parent)
{
	var nsobj = 'document.layers.' + obj;
	if (parent != null) nsobj = 'document.layers.' + parent + '.' + nsobj;
	alert(nsobj);

	this.ref = bw.dom ? document.getElementById(obj):
			   bw.ie4 ? document.all[obj]:
			   bw.ns4 ? eval(nsobj + '.document'):
			   0;
	this.style = bw.dom ? document.getElementById(obj).style:
				 bw.ie4 ? document.all[obj].style:
				 bw.ns4 ? eval(nsobj):
				 0;
				 
	// visibility
	this.setVisible = function(state)
	{
		this.style.display = state ? '' : 'none';
		if(bw.ns4)	{	this.style.visibility = state ? 'visible' : 'hidden';	}
	}
				 
	return this;
}


// global variables
var bw = browserDetails();

