/*********************************************************************************/
// SHARP Navigation
//
// February 2002
// by silke - energis-ision interactive design
/*********************************************************************************/
// 
//
//
/**********************************************************************************/
var subdiv;
var buttonleft=0;
// EDIT
var menus;
var initialisedF = false;
var operaTopPosArr = new Array(72,87,102,117,132,147,162,177,192);
var operaSubmenuLeft = BUTTON_WID;

function menu(i){
	this.id = i;
	this.name = 'menu'+i;
	this.subs = eval('menu'+i);
	this.top = (opera) ? NAVI_TOP+(i*BUTTON_HEI) : 0;
	this.left = (opera) ? buttonleft+BUTTON_WID : 0; 
	this.hei = 0;
	this.wid = 0;
	this.opened = false;
	this.show = showSub;
	this.hide = hideSub;
	
	/*
	if(!window.menus) window.menus=new Array();
	window.menus[window.menus.length]=this;	
	*/
	if(!menus) menus=new Array();
	menus[menus.length]=this;	
}


function showSub(e){
// debug
//alert("showSub:"+this.id);
//

	hideNow();
	if(this.subs.length==0) return true;
	var i, cont,charcnt=1;
	var x=getEventX(e) + BUTTON_WID;
	var y=getEventY(e);
	var linkstart ='<a style="color:#000066;text-decoration:none" href="';
	var cont=(nn) ? '<span style="font-family:Verdana,Arial,Helvetica,sans-serif;font-size:10px;padding:1px;border:1px solid;">' :'';
	for(i=0;i<this.subs[0].length;i++){
			cont = cont + linkstart + this.subs[1][i]+'">'+this.subs[0][i] + '</a><br>';
			if(this.subs[0][i].length>charcnt) charcnt=this.subs[0][i].length;
		}
	if(nn) cont = cont+'</span>';
	
	if((nn6)&&(!opera)){
			subdiv.style.top = y+'px';
			this.top = y;
			subdiv.style.left = x+'px';
			this.left = x;
			subdiv.innerHTML = cont;
			this.hei = subdiv.style.height  = this.subs[0].length*LINE_HEI;
			this.wid = subdiv.style.width  = charcnt*CHAR_WID+MENUPADD*2;
			subdiv.style.visibility='visible';	
	}else{
		if((nn)&&(!opera)){
					subdiv.top = this.top = y;
					subdiv.left = this.left = x;
					subdiv.document.open();
					subdiv.document.write(cont);
					subdiv.document.close();
					this.hei = subdiv.clip.height;
					this.wid = subdiv.clip.width;
					subdiv.visibility = 'visible';
		}else{
		 	if((ie)&&(!opera)){
				subdiv.style.pixelTop = this.top = y;
				subdiv.style.pixelLeft = this.left= x;
				subdiv.innerHTML = cont;
				this.hei = subdiv.style.pixelHeight = this.subs[0].length*LINE_HEI;
				this.wid = subdiv.style.pixelWidth = charcnt*CHAR_WID+MENUPADD*2;
				subdiv.style.visibility='visible';
			}else{
				if(opera){
					ref = FIND("submenu_"+this.id);
					ref.style.top = this.top;
					ref.style.left = this.left;
					//subdiv.innerHTML = cont;
					if(ref.style.height){
						this.hei = ref.style.height;
						this.wid = ref.style.width;
					}else{
						this.hei = this.subs[0].length*LINE_HEI;
						this.wid = charcnt*CHAR_WID+MENUPADD*2;
					}
					// show it
					ref.style.visibility = 'visible';
				}else{
					subdiv.style.pixelTop = this.top;
					subdiv.style.pixelLeft = this.left;
					t = document.createTextNode(cont);
					subdiv.appendChild(t);
					//subdiv.innerHTML = cont;
					this.hei = subdiv.style.pixelHeight;
					this.wid = subdiv.style.pixelWidth;
					subdiv.style.visibility='visible';
				}
			}
		}
	}

	this.opened = true;   
}

function hideSub(){
	if(opera){
	//alert("hideSub");
		ref = FIND("submenu_"+this.id);
		ref.style.visibility = 'hidden';
	}else{
		if((nn)&&(!opera)){
			subdiv.visibility = 'hidden';
		}else{
			subdiv.style.visibility ='hidden';
		}
	}
	this.opened = false;
}

//+++
//watching mouse-position
function mouseMove(e) {
	var i;
	//get mouse-position on page
	var yabs = getMouseY(e);
	var xabs = getMouseX(e);
	
	//check for opened menu
	for(i=0;i<window.menus.length;i++){
		if(window.menus[i].opened){
	
			//...is mouse outside of menu? -> hide it (timeout)
			var m = window.menus[i];
			//if(!m.fini) return;
			var top = m.top;
			var btm = m.top + m.hei;
			var lft = m.left;
			var rgt = m.left + m.wid;
			if((xabs>rgt || xabs<(lft-BUTTON_WID) || yabs<top || yabs>btm && xabs>lft) ||  (yabs>(NAVI_TOP+M_COUNT*BUTTON_HEI)) && xabs<lft){
				m.hide();
			}
			break; //exit for
		}
	}
}
//+++

function hideNow(){
	for(var i=0;i<window.menus.length;i++){
		if(window.menus[i].opened){
			window.menus[i].hide();
			break;
		}
	}
}
	
function getButtonLeft(){
	var wid = getWindowWidth();
	return ((opera) ? 0 : ( (wid - TABLE_WID)/2));
}

function init(){
	if(!initialisedF){
		var i, m;
		buttonleft = getButtonLeft();
		//construct menu objects
		for(i=0;i<M_COUNT;i++){
			m = new menu(i);
		}
		//get div for sub-menus
		subdiv = (nn) ? document.layers['submenu'] : FIND('submenu');
	
		document.onmousemove = mouseMove;
		if ((nn) &&(!opera))document.captureEvents(Event.MOUSEMOVE);
		if((nn6)&&(!opera)) document.addEventListener("mousemove", mouseMove, false);
		// init flag
		initialisedF = true;
	}
}



function writeSubDiv(){
	if(opera){
		// if not initialised - do it
		if(!initialisedF){
			init();
		}
		// for all menus
		var linkstart = '<a style="color:#000066;text-decoration:none" href="';
		for(i=0;i<menus.length;i++){
			// for all subs
				cont = '';		
				if(menus[i].subs.length > 0){
					for(j=0;j<menus[i].subs[0].length;j++){
					//alert("J: "+j);
						cont = cont + linkstart + menus[i].subs[1][j] + '">' + menus[i].subs[0][j] + '</a><br>';
					}
				}// if menus.length > 0
				var styles = 'style="position:absolute;left:0px;top:0px;visibility:hidden;background-color:#AECCE8;font-size:10px;layer-background-color:#AECCE8;color:#000000;border:1px solid;padding-left:2px;z-index:10;"';
				// writing submenu div
				document.write('<div id="submenu_'+i+'" '+styles+'>'+cont+'</div>');
				
				//document.write('<div id="submenu_'+i+'" class="opera_submenu">'+cont+'</div>');
			}
	}else{
		document.write('<div id="submenu">lalala</div>');
	}
}



function showIt(what, e){
	if(!menus) return;
	//if(iewin) window.scroll(0,0);
	menus[what].show(e);
}