//var isMinNS4 = (navigator.appName.indexOf("Netscape") >= 0 &&
//                parseFloat(navigator.appVersion) >= 4) ? 1 : 0;
//var isMinIE4 = (document.all) ? 1 : 0;
//var isMinIE5 = (isMinIE4 && navigator.appVersion.indexOf("5.")) >= 0 ? 1 : 0;

function class_menu(name,dlabelid){
	this.name = name;
	this.defaultlabelobj = dlabelid;
	this.labelobj = null;
	this.boxobj = null;
	
	this.start = function(){
		this.defaultlabelobj = MM_findObj(this.defaultlabelobj,null);
		this.sethighlight(this.defaultlabelobj,1);
	}

	this.open = function(labelId,boxId){
//		alert(labelId+','+boxId);
		var labelobj = MM_findObj(labelId,null);
		var boxobj = MM_findObj(boxId,null);
		this.clearReset();
		if(this.boxobj != boxobj){
			if(this.boxobj != null){
				this.setmenuvis(this.labelobj,this.boxobj,0);
			}
			this.labelobj = labelobj;
			this.boxobj = boxobj;
//			this.startalpha(id);
			this.setmenuvis(labelobj,boxobj,1);
		}
	}
	this.onMouseOver = function(ev){
		if (typeof(ev) == 'object'){
			if (this.layers){
				srcid = ev.target.name;
			} else {
				if (!event.srcElement._dm_object){
					menu.open(null);
					return;
				}
				srcid = event.srcElement.id;
			}
		}
		else srcid = ev;
		if (srcid.indexOf('-box') > -1){
			srcid = srcid.substring(0,srcid.indexOf('-box'));
		}
		menu.open(srcid);
	}
	this.onMouseOut = function(ev){
		menu.reset();
	}
	this.reset = function(){
//		alert('reset');
		this.clearReset();
		resettimer = setTimeout(this.name + ".execReset();",500);
	}
	this.execReset = function(){
//		alert('execReset');
		this.clearReset();
		if(this.boxobj != null){
			this.setmenuvis(this.labelobj,this.boxobj,0);
		}
		this.labelobj = null;
		this.boxobj = null;
	}
	this.clearReset = function(){
		if(typeof(resettimer) != 'undefined'){
			clearTimeout(resettimer);
		}
	}
	this.setmenuvis = function(label,box,vis){
//		if (typeof(box) != 'undefined') this.sethighlight(label,vis);
		this.sethighlight(label,vis);
		this.setvis(box,vis);
	}
	this.setvis = function(obj,vis){
		if (typeof(obj) != 'undefined'){
			if (document.layers)
				obj.visibility = (vis? "show" : "hide");
			else
				obj.style.visibility = (vis? "visible" : "hidden");
		}
	}
	this.sethighlight = function(obj,vis){
		if (obj && !(obj == this.defaultlabelobj && !vis)){
			if (document.layers)
				obj.bgColor = (vis? "#000000" : null);
			else
				obj.style.backgroundColor = (vis? "#000000" : "");
		}
	}
}
