


function lib_bwcheck(){
	this.ver=navigator.appVersion
	this.agent=navigator.userAgent
	this.dom=document.getElementById?1:0
	this.opera=(navigator.userAgent.indexOf("Opera")>-1 && document.getElementById)?1:0
	this.opera6=(navigator.userAgent.indexOf("Opera 6")>-1 && this.opera)
	this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera)?1:0; 
	this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera)?1:0;
	this.ie4=(document.all && !this.dom && !this.opera)?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.ns7=(this.dom && parseInt(this.ver) >= 7) ?1:0; 
	this.ns4=(document.layers && !this.dom)?1:0;
	return this
}
var ds_browser=lib_bwcheck();


function lib_showversioninfo(){
	var s = "";
	var x = lib_bwcheck();
	s=s+"Versions:\n\nver: " + x.ver;
	s=s+"\nagent:          " + x.agent;
	s=s+"\ndom:            " + x.dom;
	s=s+"\nopera:          " + x.opera;
	s=s+"\nopera6:         " + x.opera6;
	s=s+"\nie5:            " + x.ie5;
	s=s+"\nie6:            " + x.ie6;
	s=s+"\nie4:            " + x.ie4;
	s=s+"\nie:             " + x.ie;
	s=s+"\nns6:            " + x.ns6;
	s=s+"\nns7:            " + x.ns7;
	s=s+"\nns4:            " + x.ns4;
	s=s+"\nmac:            " + x.mac;
	alert ( s );
}



function changecolor_to(e,highlightcolor,tagName) {
	source=ds_browser.ie? event.srcElement : e.target
	if (source.tagName=="TABLE") return
	while(source.tagName!=tagName&&source.tagName!="HTML") {
		source=ds_browser.ns6? source.parentNode : source.parentElement
	}
	if (source.style.backgroundColor!=highlightcolor&&source.id!="ignore") {
		source.style.backgroundColor=highlightcolor
		if (source.id.substr(0,4)=='swap') {
			//Additional swap image required, name is: source.id.substr(4,imagename.length-4)
			additionalimageswaps(source.id.substr(4,source.id.length-4));
		}
	}
}

function changecolor_back(e,originalcolor,tagName){
	if (ds_browser.ie&&(event.fromElement.contains(event.toElement)||source.contains(event.toElement)||source.id=="ignore")||source.tagName=="TABLE"){
		return
	} else if (ds_browser.ns6&&(contains_ns6(source, e.relatedTarget)||source.id=="ignore")){
		return
	}
	if (ie&&event.toElement!=source||ds_browser.ns6&&e.relatedTarget!=source){
		source.style.backgroundColor=originalcolor
		if (source.id.substr(0,4)=='swap') {
			//Reset swap image
			additionalimageswapsrestore(source.id.substr(4,source.id.length-4));
		}
	}
}

