//--------------------------------------------------------------------------
//MENU//
function MenuClass(strMenuName){
	this.menuName = strMenuName;
	this.arrMenuItem = new Array();

	this.addMenuItem = addMenuItemMethod;
	this.writeMenu = writeMenuMethod;
}

function addMenuItemMethod(ObjMenu){
	this.arrMenuItem[ObjMenu.subName] = ObjMenu;
}

function writeMenuMethod(){
	var strTableStart =	"<table width=129 border=0 cellspacing=0 cellpadding=0>";
	var strTableEnd = "</table>";
	var obj;
	var strTable = "";
	var numCounter = 0;
	
	strTable = strTableStart;

	strTable += "<tr>";
	strTable += "<td width=3 height=1><img src=p.gif width=3 height=1 border=0></td>";
	strTable += "<td width=113><img src=p.gif width=113 height=1 border=0></td>";
	strTable += "<td width=10><img src=p.gif width=10 height=1 border=0></td>";
	strTable += "<td width=3><img src=p.gif width=3 height=1 border=0></td>";
	strTable += "</tr>";
	strTable += "<tr>";
	strTable += "<td height=2 colspan=4><img src=tl.gif width=129 height=2 border=0></td>";
	strTable += "</tr>";
	
	for(var item in this.arrMenuItem){
	
		obj = this.arrMenuItem[item].subName;
		/*numCounter = 0;
		for(var item2 in eval(obj).arrItemLevel){
			numCounter++
		}
		if(numCounter > 0){*/
		if(this.arrMenuItem[item].noSubs == null){
			strTable += "<tr><td height=17><img src=ll.gif width=3 height=17 border=0></td>";
			strTable += "<td class=" + this.arrMenuItem[item].bgcolor + "><a href=\"javascript:void(0)\" onclick=\"e('";
			strTable += obj + "','0','0','0'); return false\" onfocus=\"blur()\" class=\"li\">&nbsp;"
			strTable += this.arrMenuItem[item].content + "</a></td><td class=" + this.arrMenuItem[item].bgcolor + "><a href=\"javascript:void(0)\" onclick=\"e('"
			strTable += obj + "','0','0','0'); return false\" onfocus=\"blur()\"><img src=" + this.arrMenuItem[item].pic + " width=10 height=17 border=0></a></td>";
			strTable += "<td height=17 class=" + this.arrMenuItem[item].bgcolor + "><img src=rl.gif width=3 height=17 border=0></td></tr><tr>";
			strTable += "<td height=2 colspan=4><img src=tl.gif width=129 height=2 border=0></td></tr>";
		}
		else{
			strTable += "<tr><td height=17><img src=ll.gif width=3 height=17 border=0></td>";
			strTable += "<td class=" + this.arrMenuItem[item].noSubs + "><a href=\"javascript:void(0)\" onclick=\"e('";
			strTable += obj + "','0','0','0'); return false\" onfocus=\"blur()\" class=\"li\">&nbsp;"
			strTable += this.arrMenuItem[item].content + "</a></td><td class=" + this.arrMenuItem[item].noSubs + " width=10 height=17>&nbsp;</td>";
			strTable += "<td height=17 class=" + this.arrMenuItem[item].noSubs + "><img src=rl.gif width=3 height=17 border=0></td></tr><tr>";
			strTable += "<td height=2 colspan=4><img src=tl.gif width=129 height=2 border=0></td></tr>";
		}
		strTable += eval(obj).writeSub();
	}
	strTable += strTableEnd + "\n";

	if (isIE){
		document.all.Menu.innerHTML = strTable;
	}
	if(isNav){
		document.layers['Menu'].document.open();
		document.layers['Menu'].document.write(strTable);
		document.layers['Menu'].document.close();
	}
	if(isMoz){
		document.getElementById("Menu").innerHTML = strTable;
	}
	posDiv();
}
//--------------------------------------------------------------------------
var oldObj = "";
var newObj = "";
var isOut = false;	

function e(obj, ID, topID, level){
	oldObj = newObj;
	newObj = obj;
	var tmpObj = oldObj;

	switch(level){
		case '0':
			if((oldObj == newObj) || (oldObj == "")){
					for(var item in eval(obj).arrItemLevel){
						if(eval(obj).arrItemLevel[item] == 1){
							if(eval(obj).arrItemActive[item] == false){
								eval(obj).arrItemActive[item] = true;
							}
							else{
								eval(obj).arrItemActive[item] = false;
								eval(obj).arrItemPicFlag[item] = false;
							}
						}
						else if(eval(obj).arrItemLevel[item] == 2){
							eval(obj).arrItemActive[item] = false;
							eval(obj).arrItemPicFlag[item] = false;
						}
						else if(eval(obj).arrItemLevel[item] == 3){
							eval(obj).arrItemActive[item] = false;
						}
					}
					for(var item in objMenu1.arrMenuItem){
						if(objMenu1.arrMenuItem[item].subName == obj){
							if(objMenu1.arrMenuItem[item].active == false){
								objMenu1.arrMenuItem[item].active = true;
								isOut = true;
							}
							else{
								objMenu1.arrMenuItem[item].active = false;
								isOut = false;
							}
						}
					}
			}
			else{
				for(var loop = 0; loop <= 1; loop++){
					if(isOut == false){
						loop++
						tmpObj = newObj;
					}
					for(var item in eval(tmpObj).arrItemLevel){
						if(eval(tmpObj).arrItemLevel[item] == 1){
							if(eval(tmpObj).arrItemActive[item] == false){
								eval(tmpObj).arrItemActive[item] = true;
							}
							else{
								eval(tmpObj).arrItemActive[item] = false;
								eval(tmpObj).arrItemPicFlag[item] = false;
								eval(tmpObj).arrItemBgcolor[item] = "b";
								eval(tmpObj).arrItemPic[item] = "n2i.gif";
								eval(tmpObj).arrItemLinksColor[item] = "li";
							}
						}
						else if(eval(tmpObj).arrItemLevel[item] == 2){
							eval(tmpObj).arrItemActive[item] = false;
							eval(tmpObj).arrItemPicFlag[item] = false;
						}
						else if(eval(tmpObj).arrItemLevel[item] == 3){
							eval(tmpObj).arrItemActive[item] = false;
						}							
					}
					for(var item in objMenu1.arrMenuItem){
						if(objMenu1.arrMenuItem[item].subName == tmpObj){
							if(objMenu1.arrMenuItem[item].active == false){
								objMenu1.arrMenuItem[item].active = true;
								isOut = true;
							}
							else{
								objMenu1.arrMenuItem[item].active = false;
								objMenu1.arrMenuItem[item].bgcolor = "g";
								objMenu1.arrMenuItem[item].pic = "n1i.gif";
								isOut = false;
							}
						}
					}
					tmpObj = newObj;
				}
			}
			break;
		
		case '1':
			for(var item in eval(obj).arrItemLevel){
				if((eval(obj).arrItemLevel[item] == 2) && (eval(obj).arrItemPrevID[item] == ID)){
					if(eval(obj).arrItemActive[item] == false){
						eval(obj).arrItemActive[item] = true;
					}
					else{
						eval(obj).arrItemActive[item] = false;
						eval(obj).arrItemPicFlag[item] = false;
					}
				}
				else if((eval(obj).arrItemLevel[item] == 3) && (eval(obj).arrItemTopID[item] == topID)){
					eval(obj).arrItemActive[item] = false;
				}							
				if((eval(obj).arrItemPicFlag[item] == false) && (eval(obj).arrItemID[item] == ID)){
					for(item2 in eval(obj).arrItemLevel){					
						if((eval(obj).arrItemLevel[item2] != 1) && (eval(obj).arrItemTopID[item2] == ID)){
							eval(obj).arrItemPicFlag[item] = true;
						}
					}
				}
				else if((eval(obj).arrItemPicFlag[item] == true) && (eval(obj).arrItemID[item] == ID)){
					eval(obj).arrItemPicFlag[item] = false;
				}		
			}
			break;
		
		case '2':
			for(var item in eval(obj).arrItemLevel){
				if((eval(obj).arrItemLevel[item] == 3) && (eval(obj).arrItemPrevID[item] == ID)){
					if(eval(obj).arrItemActive[item] == false){
						eval(obj).arrItemActive[item] = true;
					}
					else{
						eval(obj).arrItemActive[item] = false;
					}
				}
				if((eval(obj).arrItemPicFlag[item] == false) && (eval(obj).arrItemID[item] == ID)){
					for(item2 in eval(obj).arrItemLevel){					
						if(eval(obj).arrItemPrevID[item2] == ID){
							eval(obj).arrItemPicFlag[item] = true;
						}
					}
				}
				else if((eval(obj).arrItemPicFlag[item] == true) && (eval(obj).arrItemID[item] == ID)){
					eval(obj).arrItemPicFlag[item] = false;
				}		
			}
			break;

		default:	
			break;
	}
	
	if(isIE){
		if((document.all.Menu.scrollHeight) > (document.body.clientHeight - 55)){
			document.all.Menu.style.top = 46;
		}
		else{
			document.all.Menu.style.top = 37;
		}
	}
	scrollCounter = null;
	
	makeActive(obj, ID);
	objMenu1.writeMenu();
	status(obj, ID, topID, level);
}

function makeActive(obj, ID){
	for(var item in objMenu1.arrMenuItem){
		if(objMenu1.arrMenuItem[item].subName == obj){
			if(objMenu1.arrMenuItem[item].active == true){
				objMenu1.arrMenuItem[item].bgcolor = "gb";
				objMenu1.arrMenuItem[item].pic = "n1o.gif";
				var strUrl = objMenu1.arrMenuItem[item].openPage;
			}
			else{
				objMenu1.arrMenuItem[item].bgcolor = "g";
				objMenu1.arrMenuItem[item].pic = "n1i.gif";
			}
		}
	}
	for(var item in objMenu1.arrMenuItem){
		var tmp = objMenu1.arrMenuItem[item].subName;
		for(var item2 in eval(tmp).arrItemLevel){
			eval(tmp).arrItemBgcolor[item2] = "b";
		}
	}
	for(var item in eval(obj).arrItemLevel){
		if(eval(obj).arrItemID[item] == ID){
			eval(obj).arrItemBgcolor[item] = "w";
			var strUrl = eval(obj).arrItemAction[item];
			if(eval(obj).arrItemPicFlag[item] == true){
				eval(obj).arrItemPic[item] = "n2o.gif";
				eval(obj).arrItemLinksColor[item] = "lo";
			}
			else{
				eval(obj).arrItemPic[item] = "n2i.gif";
				eval(obj).arrItemLinksColor[item] = "li";
			}
		}
		else{
			if((eval(obj).arrItemActive[item] == false) || (eval(obj).arrItemBgcolor[item] == "w")){
				eval(obj).arrItemBgcolor[item] = "b";
				eval(obj).arrItemPic[item] = "n2i.gif";
				eval(obj).arrItemLinksColor[item] = "li";
			}
		}
	}
	if(isOut){
		goToUrl(strUrl);
	}
	else if(objMenu1.arrMenuItem[obj].noSubs != null){
		goToUrl(objMenu1.arrMenuItem[obj].openPage);
	}
}

function openMenu(obj, ID, topID, level){
	var strUrl = makeMenuTable(obj,ID,topID,level);
	goToUrl(strUrl);
	status(obj, ID, topID, level);
}

function makeMenuTable(obj, ID, topID, level){
	oldObj = newObj;
	newObj = obj;
	isOut = true;
	
	if(oldObj != ""){
		for(var item in objMenu1.arrMenuItem){
			objMenu1.arrMenuItem[item].active = false;
			objMenu1.arrMenuItem[item].bgcolor = "g";
			objMenu1.arrMenuItem[item].pic = "n1i.gif";
		}
		for(var item in eval(oldObj).arrItemLevel){
				eval(oldObj).arrItemActive[item] = false;
				eval(oldObj).arrItemPicFlag[item] = false;
				eval(oldObj).arrItemPic[item] = "n2i.gif";
				eval(oldObj).arrItemLinksColor[item] = "li";
		}
		objMenu1.writeMenu();
	}
	for(var item in objMenu1.arrMenuItem){
		if(objMenu1.arrMenuItem[item].subName == obj){
			if(objMenu1.arrMenuItem[item].active == false){
				objMenu1.arrMenuItem[item].active = true;
				objMenu1.arrMenuItem[item].bgcolor = "gb";
				objMenu1.arrMenuItem[item].pic = "n1o.gif";
			}
		}
	}

	switch(level){
		case '0':
			for(var item in eval(obj).arrItemLevel){
				if(eval(obj).arrItemLevel[item] == 1){
					eval(obj).arrItemActive[item] = true;
					var strUrl = objMenu1.arrMenuItem[obj].openPage;
				}
				eval(obj).arrItemBgcolor[item] = "b";
			}
			break;
		case '1':
			for(var item in eval(obj).arrItemLevel){
				if((eval(obj).arrItemLevel[item] == 1) ||
				 ((eval(obj).arrItemLevel[item] != 3) && (eval(obj).arrItemTopID[item] == topID))){
					eval(obj).arrItemActive[item] = true;
				}
				if(eval(obj).arrItemID[item] == ID){
					eval(obj).arrItemBgcolor[item] = "w";
					var strUrl = eval(obj).arrItemAction[item];
					for(var item2 in eval(obj).arrItemLevel){
						if((eval(obj).arrItemLevel[item2] == 2) && (eval(obj).arrItemPrevID[item2] == ID)){
							eval(obj).arrItemPicFlag[item] = true;
							eval(obj).arrItemPic[item] = "n2o.gif";
							eval(obj).arrItemLinksColor[item] = "lo";
						}
					}
				}
				else{
					eval(obj).arrItemBgcolor[item] = "b";
				}
			}
			break;
			
		case '2':
			for(var item in eval(obj).arrItemLevel){
				if((eval(obj).arrItemLevel[item] == 1) ||
				 ((eval(obj).arrItemLevel[item] == 2) && (eval(obj).arrItemTopID[item] == topID)) ||
				  ((eval(obj).arrItemLevel[item] == 3) && (eval(obj).arrItemPrevID[item] == ID))){
					eval(obj).arrItemActive[item] = true;
				}
				if(eval(obj).arrItemID[item] == ID){
					eval(obj).arrItemBgcolor[item] = "w";
					var strUrl = eval(obj).arrItemAction[item];
					for(var item2 in eval(obj).arrItemLevel){
						if((eval(obj).arrItemLevel[item2] == 3) && (eval(obj).arrItemPrevID[item2] == ID)){
							eval(obj).arrItemPicFlag[item] = true;
							eval(obj).arrItemPic[item] = "n2o.gif";
							eval(obj).arrItemLinksColor[item] = "lo";
						}
					}
				}
				else{
					eval(obj).arrItemBgcolor[item] = "b";
				}
				if((eval(obj).arrItemLevel[item] == 1) && (eval(obj).arrItemTopID[item] == topID)){
					eval(obj).arrItemPicFlag[item] = true;
					eval(obj).arrItemPic[item] = "n2o.gif";
					eval(obj).arrItemLinksColor[item] = "lo";
				} 
			}
			break;
			
		case '3':
			for(var item in eval(obj).arrItemLevel){
				if((eval(obj).arrItemLevel[item] == 1) || (eval(obj).arrItemTopID[item] == topID)){
					eval(obj).arrItemActive[item] = true;
				}
				if(eval(obj).arrItemID[item] == ID){
					eval(obj).arrItemBgcolor[item] = "w";
					var strUrl = eval(obj).arrItemAction[item];
					var tmpPrevID = eval(obj).arrItemPrevID[item];
					for(var item2 in eval(obj).arrItemLevel){
						if(eval(obj).arrItemID[item2] == tmpPrevID){
							eval(obj).arrItemPicFlag[item2] = true;
							eval(obj).arrItemPic[item2] = "n2o.gif";
							eval(obj).arrItemLinksColor[item2] = "lo";
						}
					}
				}
				else{
					eval(obj).arrItemBgcolor[item] = "b";
				}
				if((eval(obj).arrItemLevel[item] == 1) && (eval(obj).arrItemTopID[item] == topID)){
					eval(obj).arrItemPicFlag[item] = true;
					eval(obj).arrItemPic[item] = "n2o.gif";
					eval(obj).arrItemLinksColor[item] = "lo";
				}
			}
			break;
		
		default:
			break;
	}
	objMenu1.writeMenu();
	return strUrl;
}

function goToUrl(strUrl){
	if(strUrl != "none"){
		if(strUrl != null){
		var arrStrUrl = strUrl.split(",");
			switch(parseInt(arrStrUrl[2])){
				case 1:	parent.frames[arrStrUrl[1]].location.href = arrStrUrl[0];
						break;
				case 2: parent.location.href = arrStrUrl[0];
						break;
				case 3: window.open(arrStrUrl[0]);
						break;
				case 4: window.open(arrStrUrl[0],'','toolbar=no,menubar=no,location=no,directories=no,scrollbars=no,status=no,resizeable=no,width='+arrStrUrl[3]+',height='+arrStrUrl[4]+',top=100,left=100');
						break;
				default: parent.frames["content"].location.href = arrStrUrl[0];
				break;
			}
		}
	}
}

function openFlash(FlashURL){
	fonster=window.open (FlashURL,"","toolbar=no,menubar=no,location=no,directories=no,scrollbars=no,status=no,resizeable=no,width=700,height=560,top=100,left=100");
	fonster.focus()
}


//--------------------------------------------------------------------------
function MenuItemClass(subName, content, subID, openPage){
	this.subName = subName;
	this.content = content;
	this.openPage = openPage;
	this.subID = subID;
	this.pic = "n1i.gif";
	this.bgcolor = "g";
	this.active = false;
	this.noSubs = "g"; // Om Huvudrubriken inte har några subnivåer
	
	this.arrItemTopObj = new Array();
	this.arrItemID = new Array();
	this.arrItemPrevID = new Array();
	this.arrItemContent = new Array();
	this.arrItemLevel = new Array();
	this.arrItemAction = new Array();
	this.arrItemActive = new Array();
	this.arrItemPic = new Array();
	this.arrItemBgcolor = new Array();
	this.arrItemPicFlag = new Array();
	this.arrItemLinksColor = new Array();
	this.arrItemTopID = new Array();
	
	this.addSub = addSubMethod;
	this.writeSub = writeSubMethod;
}

function MenuItemClassColor(subName, content, subID, openPage, noSubs){
	this.subName = subName;
	this.content = content;
	this.openPage = openPage;
	this.subID = subID;
	this.pic = "n1i.gif";
	this.bgcolor = "g";
	this.active = false;
	this.noSubs = noSubs; // Om Huvudrubriken inte har några subnivåer
	
	this.arrItemTopObj = new Array();
	this.arrItemID = new Array();
	this.arrItemPrevID = new Array();
	this.arrItemContent = new Array();
	this.arrItemLevel = new Array();
	this.arrItemAction = new Array();
	this.arrItemActive = new Array();
	this.arrItemPic = new Array();
	this.arrItemBgcolor = new Array();
	this.arrItemPicFlag = new Array();
	this.arrItemLinksColor = new Array();
	this.arrItemTopID = new Array();
	
	this.addSub = addSubMethod;
	this.writeSub = writeSubMethod;
}

var addSubCounter = 0;
function addSubMethod(topObj, ID, prevID, topID, content, level, action){
	addSubCounter++

	this.noSubs = null;
	
	this.arrItemTopObj[addSubCounter] = topObj;
	this.arrItemID[addSubCounter] = ID;
	this.arrItemPrevID[addSubCounter] = prevID;
	this.arrItemContent[addSubCounter] = content;
	this.arrItemLevel[addSubCounter] = level;
	this.arrItemAction[addSubCounter] = action;
	this.arrItemActive[addSubCounter] = false;
	this.arrItemPic[addSubCounter] = "n2i.gif";
	this.arrItemBgcolor[addSubCounter] = "b";
	this.arrItemPicFlag[addSubCounter] = false;
	this.arrItemLinksColor[addSubCounter] = "li";
	this.arrItemTopID[addSubCounter] = topID;
}

function writeSubMethod(){
	var strTable = "";
	var flagga = false;
	var numPixelWidth = "";
	
	for(var item in this.arrItemLevel){
		if(this.arrItemActive[item] == true){
			switch(this.arrItemLevel[item]){
				case 1: 
					numPixelWidth = 0;
					break;
				case 2: 
					numPixelWidth = 10;
					break;
				case 3: 
					numPixelWidth = 20;
					break;
				default:
					break;
			}
			
			strTable += "<tr>";
			strTable += "<td height=14><img src=ll2.gif width=3 height=14 border=0></td>";
			strTable += "<td class=" + this.arrItemBgcolor[item] + " colspan=2><img src=p.gif width="
			strTable += numPixelWidth + " height=1 border=0><img src=" + this.arrItemPic[item]
			strTable += " width=5 height=5 border=0><a href=\"javascript:void(0)\" onclick=\"e('" + this.arrItemTopObj[item] + "','"
			strTable += this.arrItemID[item] + "','" + this.arrItemTopID[item] + "','" + this.arrItemLevel[item] + "'); return false\""
			strTable += " class=\"" + this.arrItemLinksColor[item] + "\" onfocus=\"blur()\">&nbsp;" + this.arrItemContent[item] + "</a></td>";			
			strTable += "<td height=14 class=" + this.arrItemBgcolor[item] + "><img src=rl2.gif width=3 height=14 border=0></td>";
			strTable += "</tr>";
		
			flagga = true;
		}
	}
	if(flagga){
		strTable += "<tr>";
		strTable += "<td height=2 colspan=4><img src=tl.gif width=129 height=2 border=0></td>";
		strTable += "</tr>";
	}	
	return strTable;
}

// Docco Menu By Torben Larsson @ framfab

