
/*********************************************************************************************************************************************
*	(c) Ger Versluis 2000 version 5.41 24 December 2001						*
*	HV Menu found on Dynamic Drive ONLY may be used on both commercial and non commerical sites	*
*	For info write to menus@burmees.nl							        *
*       This script featured on Dynamic Drive DHTML code library: http://www.dynamicdrive.com
**********************************************************************************************************************************************/

	var AgntUsr=navigator.userAgent.toLowerCase();
	var DomYes=document.getElementById?1:0;
	var NavYes=AgntUsr.indexOf('mozilla')!=-1&&AgntUsr.indexOf('compatible')==-1?1:0;
	var ExpYes=AgntUsr.indexOf('msie')!=-1?1:0;
	var Opr=AgntUsr.indexOf('opera')!=-1?1:0;
	var DomNav=DomYes&&NavYes?1:0;
 	var DomExp=DomYes&&ExpYes?1:0;
	var Nav4=NavYes&&!DomYes&&document.layers?1:0;
	var Exp4=ExpYes&&!DomYes&&document.all?1:0;
	var PosStrt=(NavYes||ExpYes)&&!Opr?1:0;

	var FrstLoc,ScLoc,DcLoc;
	var ScWinWdth,ScWinHght,FrstWinWdth,FrstWinHght;
	var ScLdAgainWin;
	var FirstColPos,SecColPos,DocColPos;
	var RcrsLvl=0;
	var FrstCreat=1,Loadd=0,Creatd=0,IniFlg,AcrssFrms=1;
	var FrstCntnr=null,CurrntOvr=null,CloseTmr=null;
	var CntrTxt,TxtClose,CntrTxt_1,TxtClose_1,ImgStr;
	var Ztop=100;
	var ShwFlg=0;
	var M_StrtTp=StartTop,M_StrtLft=StartLeft;
	var StaticPos=0;
	var LftXtra=DomNav?LeftPaddng:0;
	var TpXtra=DomNav?TopPaddng:0;
	var M_Hide=Nav4?'hide':'hidden';
	var M_Show=Nav4?'show':'visible';
	var Par=parent.frames[0]&&FirstLineFrame!=SecLineFrame?parent:window;
	var Doc=Par.document;
	var Bod=Doc.body;
	var Trigger=NavYes?Par:Bod;

	MenuTextCentered=MenuTextCentered==1||MenuTextCentered=='center'?'center':MenuTextCentered==0||MenuTextCentered!='right'?'left':'right';
	if (typeof(window["MenuTextCentered_1"]) != "undefined")
		MenuTextCentered_1 = MenuTextCentered_1==1||MenuTextCentered_1=='center'?'center':MenuTextCentered_1==0||MenuTextCentered_1!='right'?'left':'right';
	else
		MenuTextCentered_1 = MenuTextCentered;
	
	WbMstrAlrts=["Item not defined: ","Item needs height: ","Item needs width: "];
	
	//*
	if( (typeof(window["OverwriteHVOnload"]) == "undefined") || (OverwriteHVOnload==null) || (OverwriteHVOnload==false) )	{
		if(Trigger.onload)Dummy=Trigger.onload;
		if(DomNav&&!Opr)Trigger.addEventListener('load',Go,false);
		else Trigger.onload=Go;
	}
	//*/
	
	/*
	if(Trigger.onload)Dummy=Trigger.onload;
	if(DomNav&&!Opr)Trigger.addEventListener('load',Go,false);
	else Trigger.onload=Go;
	//*/
	
	
function Dummy(){return}

function CnclSlct(){return false}

function RePos(){
	FrstWinWdth=ExpYes?FrstLoc.document.body.clientWidth:FrstLoc.innerWidth;
	FrstWinHght=ExpYes?FrstLoc.document.body.clientHeight:FrstLoc.innerHeight;
	ScWinWdth=ExpYes?ScLoc.document.body.clientWidth:ScLoc.innerWidth;
	ScWinHght=ExpYes?ScLoc.document.body.clientHeight:ScLoc.innerHeight;
	if(MenuCentered=='justify'&&FirstLineHorizontal){
		FrstCntnr.style.width=FrstWinWdth;
		ClcJus();
		var P=FrstCntnr.FrstMbr,W=Menu1[5],i;
		for(i=0;i<NoOffFirstLineMenus;i++){
			P.style.width=W;P=P.PrvMbr
		}
	}
	StaticPos=-1;
	if(TargetLoc)ClcTrgt();
	if(MenuCentered)ClcLft();
	if(MenuVerticalCentered)ClcTp();
	PosMenu(FrstCntnr,StartTop,StartLeft);
}

function UnLoaded(){
	if(CloseTmr)clearTimeout(CloseTmr);
	Loadd=0; Creatd=0;
	if(HideTop){
		var FCStyle=Nav4?FrstCntnr:FrstCntnr.style;
		FCStyle.visibility=M_Hide;
	}
}

function ReDoWhole(){
	if(ScWinWdth!=ScLoc.innerWidth||ScWinHght!=ScLoc.innerHeight||FrstWinWdth!=FrstLoc.innerWidth||FrstWinHght!=FrstLoc.innerHeight)Doc.location.reload();
}

function Check(WMnu,NoOf){
	var i,array,ArrayLoc;
	ArrayLoc=parent.frames[0]?parent.frames[FirstLineFrame]:self;
	for(i=0;i<NoOf;i++){
		array=WMnu+eval(i+1);
		if(!ArrayLoc[array]){WbMstrAlrt(0,array); return false}
		if(i==0){
			if(!ArrayLoc[array][4]){WbMstrAlrt(1,array); return false}
			if(!ArrayLoc[array][5]){WbMstrAlrt(2,array); return false}
		}
		if(ArrayLoc[array][3])if(!Check(array+'_',ArrayLoc[array][3])) return false;
	}
	return true;
}

function WbMstrAlrt(No,Xtra){
	return confirm(WbMstrAlrts[No]+Xtra+'   ');
}

function Go(){
	Dummy();
	if(Loadd||!PosStrt)return;
	BeforeStart();
	Creatd=0; Loadd=1;
	status='Building menu';
	if(FrstCreat){
		if(FirstLineFrame =="" || !parent.frames[FirstLineFrame]){
			FirstLineFrame=SecLineFrame;
			if(FirstLineFrame =="" || !parent.frames[FirstLineFrame]){
				FirstLineFrame=SecLineFrame=DocTargetFrame;
				if(FirstLineFrame =="" || !parent.frames[FirstLineFrame])FirstLineFrame=SecLineFrame=DocTargetFrame='';
			}
		}
		if(SecLineFrame =="" || !parent.frames[SecLineFrame]){
			SecLineFrame=DocTargetFrame;
			if(SecLineFrame =="" || !parent.frames[SecLineFrame])SecLineFrame=DocTargetFrame=FirstLineFrame;
		}
		if(DocTargetFrame =="" || !parent.frames[DocTargetFrame])DocTargetFrame=SecLineFrame;
		if(WebMasterCheck){
			if(!Check('Menu',NoOffFirstLineMenus)){
				status='build aborted';
				return;
			}
		}
		FrstLoc=FirstLineFrame!=""?parent.frames[FirstLineFrame]:window;
		ScLoc=SecLineFrame!=""?parent.frames[SecLineFrame]:window;
		DcLoc=DocTargetFrame!=""?parent.frames[DocTargetFrame]:window;
		if (FrstLoc==ScLoc) AcrssFrms=0;
		if (AcrssFrms)FirstLineHorizontal=MenuFramesVertical?0:1;
		FrstWinWdth=ExpYes?FrstLoc.document.body.clientWidth:FrstLoc.innerWidth;
		FrstWinHght=ExpYes?FrstLoc.document.body.clientHeight:FrstLoc.innerHeight;
		ScWinWdth=ExpYes?ScLoc.document.body.clientWidth:ScLoc.innerWidth;
		ScWinHght=ExpYes?ScLoc.document.body.clientHeight:ScLoc.innerHeight;
		if(Nav4){
			CntrTxt=MenuTextCentered!='left'?"<div align='"+MenuTextCentered+"'>":"";
			TxtClose="</font>"+MenuTextCentered!='left'?"</div>":"";
			
			CntrTxt_1=MenuTextCentered_1!='left'?"<div align='"+MenuTextCentered_1+"'>":"";
			TxtClose_1="</font>"+MenuTextCentered_1!='left'?"</div>":"";
		}
	}
	FirstColPos=Nav4?FrstLoc.document:FrstLoc.document.body;
	SecColPos=Nav4?ScLoc.document:ScLoc.document.body;
	DocColPos=Nav4?DcLoc.document:ScLoc.document.body;
	if (TakeOverBgColor)FirstColPos.bgColor=AcrssFrms?SecColPos.bgColor:DocColPos.bgColor;
	if(MenuCentered=='justify'&&FirstLineHorizontal)ClcJus();
	if(FrstCreat){
		FrstCntnr=CreateMenuStructure('Menu',NoOffFirstLineMenus);
		FrstCreat=AcrssFrms?0:1;
	}
	else CreateMenuStructureAgain('Menu',NoOffFirstLineMenus);
	if(TargetLoc)ClcTrgt();
	if(MenuCentered)ClcLft();
	if(MenuVerticalCentered)ClcTp();
	PosMenu(FrstCntnr,StartTop,StartLeft);
	IniFlg=1;
	Initiate();
	Creatd=1;
	ScLdAgainWin=ExpYes?ScLoc.document.body:ScLoc;
	ScLdAgainWin.onunload=UnLoaded;
	Trigger.onresize=Nav4?ReDoWhole:RePos;
	AfterBuild();
	if(MenuVerticalCentered=='static'&&!AcrssFrms)setInterval('KeepPos()',250);
	status='Menu ready for use';
}

function KeepPos(){
	var TS=ExpYes?FrstLoc.document.body.scrollTop:FrstLoc.pageYOffset;
	if(TS!=StaticPos){
		var FCStyle=Nav4?FrstCntnr:FrstCntnr.style;
		FCStyle.top=FrstCntnr.OrgTop=StartTop+TS;StaticPos=TS;
	}
}

function ClcJus(){
	var a=BorderBtwnElmnts?1:2,b=BorderBtwnElmnts?BorderWidth:0;
	var Size=Math.round(((FrstWinWdth-a*BorderWidth)/NoOffFirstLineMenus)-b),i,j;
	for(i=1;i<NoOffFirstLineMenus+1;i++){
		j=eval('Menu'+i);
		j[5]=Size;
	}
	StartLeft=0;
}

function ClcTrgt(){
	var TLoc=Nav4?FrstLoc.document.layers[TargetLoc]:DomYes?FrstLoc.document.getElementById(TargetLoc):FrstLoc.document.all[TargetLoc];
	StartTop=M_StrtTp;
	StartLeft=M_StrtLft;
	if(DomYes){
		while(TLoc){
			StartTop+=TLoc.offsetTop;
			StartLeft+=TLoc.offsetLeft;
			TLoc=TLoc.offsetParent;
		}
	}
	else{
		StartTop+=Nav4?TLoc.pageY:TLoc.offsetTop;
		StartLeft+=Nav4?TLoc.pageX:TLoc.offsetLeft;
	}
}

function ClcLft(){
	if(MenuCentered!='left'&&MenuCentered!='justify'){
		var Size=FrstWinWdth-(!Nav4?parseInt(FrstCntnr.style.width):FrstCntnr.clip.width);
		StartLeft=M_StrtLft;
		StartLeft+=MenuCentered=='right'?Size:Size/2;
	}
}

function ClcTp(){
	if(MenuVerticalCentered!='top'&&MenuVerticalCentered!='static'){
		var Size=FrstWinHght-(!Nav4?parseInt(FrstCntnr.style.height):FrstCntnr.clip.height);
		StartTop=M_StrtTp;
		StartTop+=MenuVerticalCentered=='bottom'?Size:Size/2;
	}
}

function PosMenu(CntnrPntr,Tp,Lt){
	var Topi,Lefti,Hori;
	var Cntnr=CntnrPntr;
	var Mmbr=Cntnr.FrstMbr;
	var CntnrStyle=!Nav4?Cntnr.style:Cntnr;
	var MmbrStyle=!Nav4?Mmbr.style:Mmbr;
	var PadL=Mmbr.value.indexOf('<')==-1?LftXtra:0;
	var PadT=Mmbr.value.indexOf('<')==-1?TpXtra:0;
	var MmbrWt=!Nav4?parseInt(MmbrStyle.width)+PadL:MmbrStyle.clip.width;
	var MmbrHt=!Nav4?parseInt(MmbrStyle.height)+PadT:MmbrStyle.clip.height;
	var CntnrWt=!Nav4?parseInt(CntnrStyle.width):CntnrStyle.clip.width;
	var CntnrHt=!Nav4?parseInt(CntnrStyle.height):CntnrStyle.clip.height;
	var SubTp,SubLt;
	RcrsLvl++;
	if (RcrsLvl==1 && AcrssFrms)!MenuFramesVertical?Tp=FrstWinHght-CntnrHt+(Nav4?4:0):Lt=RightToLeft?0:FrstWinWdth-CntnrWt+(Nav4?4:0);
	if (RcrsLvl==2 && AcrssFrms)!MenuFramesVertical?Tp=0:Lt=RightToLeft?ScWinWdth-CntnrWt:0;
	if (RcrsLvl==2 && AcrssFrms){Tp+=VerCorrect;Lt+=HorCorrect}
	CntnrStyle.top=RcrsLvl==1?Tp:0;
	Cntnr.OrgTop=Tp;
	CntnrStyle.left=RcrsLvl==1?Lt:0;
	Cntnr.OrgLeft=Lt;
	if (RcrsLvl==1 && FirstLineHorizontal){
		Hori=1;Lefti=CntnrWt-MmbrWt-2*BorderWidth;Topi=0;
	}
	else{
		Hori=Lefti=0;
		Topi=CntnrHt-MmbrHt-2*BorderWidth;
	}
	while(Mmbr!=null){
		MmbrStyle.left=Lefti+BorderWidth;
		MmbrStyle.top=Topi+BorderWidth;
		if(Nav4)Mmbr.CmdLyr.moveTo(Lefti+BorderWidth,Topi+BorderWidth);
		if(Mmbr.ChildCntnr){
			if(RightToLeft)ChldCntnrWdth=Nav4?Mmbr.ChildCntnr.clip.width:parseInt(Mmbr.ChildCntnr.style.width);
			if(Hori){
				SubTp=Topi+MmbrHt+2*BorderWidth;
				SubLt=RightToLeft?Lefti+MmbrWt-ChldCntnrWdth:Lefti;
			}
			else{
				SubLt=RightToLeft?Lefti-ChldCntnrWdth+ChildOverlap*MmbrWt+BorderWidth:Lefti+(1-ChildOverlap)*MmbrWt+BorderWidth;
				SubTp=RcrsLvl==1&&AcrssFrms?Topi:Topi+ChildVerticalOverlap*MmbrHt;
			}
			PosMenu(Mmbr.ChildCntnr,SubTp,SubLt);
		}
		Mmbr=Mmbr.PrvMbr;
		if(Mmbr){
			MmbrStyle=!Nav4?Mmbr.style:Mmbr;
			PadL=Mmbr.value.indexOf('<')==-1?LftXtra:0;
			PadT=Mmbr.value.indexOf('<')==-1?TpXtra:0;
			MmbrWt=!Nav4?parseInt(MmbrStyle.width)+PadL:MmbrStyle.clip.width;
			MmbrHt=!Nav4?parseInt(MmbrStyle.height)+PadT:MmbrStyle.clip.height;
			Hori?Lefti-=BorderBtwnElmnts?(MmbrWt+BorderWidth):(MmbrWt):Topi-=BorderBtwnElmnts?(MmbrHt+BorderWidth):(MmbrHt);
		}
	}
	RcrsLvl--;
}

function Initiate(){
	if(IniFlg){
		Init(FrstCntnr);IniFlg=0;
		if(ShwFlg)AfterCloseAll();ShwFlg=0;
	}
}

function Init(CntnrPntr){
	var Mmbr=CntnrPntr.FrstMbr;
	var MCStyle=Nav4?CntnrPntr:CntnrPntr.style;
	RcrsLvl++;
	MCStyle.visibility=RcrsLvl==1?M_Show:M_Hide;
	while(Mmbr!=null){
		if(Mmbr.Hilite){Mmbr.Hilite=0;if(KeepHilite)LowItem(Mmbr);}
		if(Mmbr.ChildCntnr) Init(Mmbr.ChildCntnr);
		Mmbr=Mmbr.PrvMbr;
	}
	RcrsLvl--;
}

function ClearAllChilds(Pntr){
	var CPCCStyle;
	while (Pntr){
		if(Pntr.Hilite){
			Pntr.Hilite=0;
			if(KeepHilite)LowItem(Pntr);
			if(Pntr.ChildCntnr){
				CPCCStyle=Nav4?Pntr.ChildCntnr:Pntr.ChildCntnr.style;
				CPCCStyle.visibility=M_Hide;
				ClearAllChilds(Pntr.ChildCntnr.FrstMbr);
			}
			break;
		}
		Pntr=Pntr.PrvMbr;
	}
}

function GoTo(){
	if(this.LinkTxt){
		status='';
		var HP=Nav4?this.LowLyr:this;
		LowItem(HP);
		this.LinkTxt.indexOf('javascript:')!=-1?eval(this.LinkTxt):DcLoc.location.href=this.LinkTxt;
	}
}

function HiliteItem(P){
	if(Nav4){
		if(P.ro)P.document.images[P.rid].src=P.ri2;
		else{
			if(P.HiBck)P.bgColor=P.HiBck;
			if(P.value.indexOf('<img')==-1){
				P.document.write(P.Ovalue);
				P.document.close();
			}
		}
	}
	else{
		if(P.ro){
			var Lc=P.Level==1?FrstLoc:ScLoc;
			Lc.document.images[P.rid].src=P.ri2;
		}
		else{
			if(P.HiBck)P.style.backgroundColor=P.HiBck;
			if(P.HiFntClr)P.style.color=P.HiFntClr;
		}
	}
	P.Hilite=1;
}

function LowItem(P){
	if(P.ro){
		if(Nav4)
			P.document.images[P.rid].src=P.ri1;
		else{
			var Lc=P.Level==1?FrstLoc:ScLoc;
			Lc.document.images[P.rid].src=P.ri1;
		}
	}
	else{
		if(Nav4){
			//if(P.LoBck)P.bgColor=P.LoBck;
			if( (LowBgColor && P.LoBck==LowBgColor) || (P.LoBck==LowSubBgColor) )
				P.bgColor=P.LoBck;
			else
				P.bgColor="";	// Clear top level
			
			if(P.value.indexOf('<img')==-1){
				P.document.write(P.value);
				P.document.close();
			}
		}
		else{
			//if(P.LoBck)P.style.backgroundColor=P.LoBck;
			if( (  LowBgColor && P.LoBck==LowBgColor) || (P.LoBck==LowSubBgColor))
				P.style.backgroundColor=P.LoBck;
			else
				P.style.backgroundColor="";	 // Clear top level if nothing supplies
			
			if(P.LwFntClr)P.style.color=P.LwFntClr;
		}
	}
}

function OpenMenu(){	
	if(!Loadd||!Creatd||(typeof(Loadd) == 'undefined')) return;
	var TpScrlld=ExpYes?ScLoc.document.body.scrollTop:ScLoc.pageYOffset;
	var LScrlld=ExpYes?ScLoc.document.body.scrollLeft:ScLoc.pageXOffset;
	var CCnt=Nav4?this.LowLyr.ChildCntnr:this.ChildCntnr;
	var ThisHt=Nav4?this.clip.height:parseInt(this.style.height);
	var ThisWt=Nav4?this.clip.width:parseInt(this.style.width);
	var ThisLft=AcrssFrms&&this.Level==1&&!FirstLineHorizontal?0:Nav4?this.Container.left:parseInt(this.Container.style.left);
	var ThisTp=AcrssFrms&&this.Level==1&&FirstLineHorizontal?0:Nav4?this.Container.top:parseInt(this.Container.style.top);
	var HP=Nav4?this.LowLyr:this;
	CurrntOvr=this;
	IniFlg=0;
	ClearAllChilds(this.Container.FrstMbr);
	HiliteItem(HP);
	if(CCnt!=null){
		if(!ShwFlg){
			ShwFlg=1;
			BeforeFirstOpen();
		}
		var CCW=Nav4?this.LowLyr.ChildCntnr.clip.width:parseInt(this.ChildCntnr.style.width);
		var CCH=Nav4?this.LowLyr.ChildCntnr.clip.height:parseInt(this.ChildCntnr.style.height);
		var ChCntTL=Nav4?this.LowLyr.ChildCntnr:this.ChildCntnr.style;
		var SubLt=AcrssFrms&&this.Level==1?CCnt.OrgLeft+ThisLft+LScrlld:CCnt.OrgLeft+ThisLft;
		var SubTp=AcrssFrms&&this.Level==1?CCnt.OrgTop+ThisTp+TpScrlld:CCnt.OrgTop+ThisTp;
		if(MenuWrap){
			if(RightToLeft){
				if(SubLt<LScrlld)SubLt=this.Level==1?LScrlld:SubLt+(CCW+(1-2*ChildOverlap)*ThisWt);
				if(SubLt+CCW>ScWinWdth+LScrlld)SubLt=ScWinWdth+LScrlld-CCW}
			else{
				if(SubLt+CCW>ScWinWdth+LScrlld)SubLt=this.Level==1?ScWinWdth+LScrlld-CCW:SubLt-(CCW+(1-2*ChildOverlap)*ThisWt);
				if(SubLt<LScrlld)SubLt=LScrlld;
			}
			if(SubTp+CCH>TpScrlld+ScWinHght)SubTp=this.Level==1?SubTp=TpScrlld+ScWinHght-CCH:SubTp-CCH+(1-2*ChildVerticalOverlap)*ThisHt;
			if(SubTp<TpScrlld)SubTp=TpScrlld;
		}
		ChCntTL.top=SubTp;ChCntTL.left=SubLt;ChCntTL.visibility=M_Show;
	}
	status=this.LinkTxt;
}

function OpenMenuClick(){
	if(!Loadd||!Creatd||(typeof(Loadd) == 'undefined')) return;
	var HP=Nav4?this.LowLyr:this;
	CurrntOvr=this;
	IniFlg=0;
	ClearAllChilds(this.Container.FrstMbr);
	HiliteItem(HP);
	status=this.LinkTxt;
}

function CloseMenu(){
	if(!Loadd||!Creatd||(typeof(Loadd) == 'undefined')) return;
	if(!KeepHilite){
		var HP=Nav4?this.LowLyr:this;
		LowItem(HP);
	}
	status='';
	if(this==CurrntOvr){
		IniFlg=1;
		if(CloseTmr)clearTimeout(CloseTmr);
		CloseTmr=setTimeout('Initiate(CurrntOvr)',DissapearDelay);
	}
}

function CntnrSetUp(Wdth,Hght,NoOff){
	var x=RcrsLvl==1?BorderColor:BorderSubColor;
	this.FrstMbr=null;
	this.OrgLeft=this.OrgTop=0;
	if(x && RcrsLvl!=1) this.bgColor=x;
	if(Nav4){
		this.visibility='hide';
		this.resizeTo(Wdth,Hght);
	}
	else{
		if(x && RcrsLvl!=1) this.style.backgroundColor=x;
		this.style.width=Wdth;
		this.style.height=Hght;
		this.style.fontFamily=FontFamily;
		
		if(typeof(FontWeight) == "undefined")
		{
			if(FontBold)
			{
				FontWeight = "bold";
			}
			else
			{
				FontWeight = "normal";
			}
		}
		
		this.style.fontWeight=FontWeight;
		this.style.fontStyle=FontItalic?'italic':'normal';
		
		if(typeof(FontSize) != "string")//if it isn't a string, it doesn't have a unit, give it pt
		{
			FontSize = FontSize + "pt";
		}
		if(typeof(FontSize.substring(FontSize.length-2)) != "string")//if it doesn't end in a string it doesn't have a unit, give it pt
		{
			FontSize = FontSize +"pt";
		}
		this.style.fontSize=FontSize;
		this.style.zIndex=RcrsLvl+Ztop;
	}
}

function MbrSetUp(MmbrCntnr,PrMmbr,WhatMenu,Wdth,Hght){
	var Location=RcrsLvl==1?FrstLoc:ScLoc;
	var MemVal=eval(WhatMenu+'[0]');
	var t,T,L,W,H,S;
	var a,b,c,d;

	var temp_lvl = getMenuLevel(WhatMenu);

	var style = getStyleForMenu(temp_lvl, "FontSize");
	var end_data = "";
	if(style)
	{
		if(typeof(style) != "string")
		{
			end_data = "pt";
		}
		else if(typeof(style.substring(style.length -2)) != "string")
		{
			end_data = "pt";
		}
	}

	setStyleForMenu(this, WhatMenu, "fontSize", "FontSize", end_data);
	setStyleForMenu(this, WhatMenu, "fontFamily", "FontFamily");
	
	var boldness = getStyleForMenu(temp_lvl, "FontWeight");
	end_data = "";
	if(typeof(boldness) == "undefined")
	{
		if(getStyleForMenu(temp_lvl, "FontBold"))
		{
			end_data = "bold";
		}
		else
		{
			end_data = "normal";
		}
	}
	
	setStyleForMenu(this, WhatMenu, "fontWeight", "FontWeight", end_data);
	setStyleForMenu(this, WhatMenu, "fontStyle", "FontItalic");

	this.PrvMbr=PrMmbr;
	this.Level=RcrsLvl;
	this.LinkTxt=eval(WhatMenu+'[1]');
	this.Container=MmbrCntnr;
	this.ChildCntnr=null;
	this.Hilite=0;
	this.style.overflow='hidden';
	this.style.cursor=ExpYes&&(this.LinkTxt||(RcrsLvl==1&&UnfoldsOnClick))?'hand':'default';
	this.ro=0;
	if(MemVal.indexOf('rollover')!=-1){
		this.ro=1;
		this.ri1=MemVal.substring(MemVal.indexOf(':')+1,MemVal.lastIndexOf(':'));
		this.ri2=MemVal.substring(MemVal.lastIndexOf(':')+1,MemVal.length);
		this.rid=WhatMenu+'i';MemVal="<img src='"+this.ri1+"' name='"+this.rid+"'>";
	}
	this.value=MemVal;
	if(RcrsLvl==1){
		a=LowBgColor;
		b=HighBgColor;
		c=FontLowColor;
		d=FontHighColor;
	}
	else{
		a=LowSubBgColor;
		b=HighSubBgColor;
		c=FontSubLowColor;
		d=FontSubHighColor;
	}
	this.LoBck=a;
	this.LwFntClr=c;
	this.HiBck=b;
	this.HiFntClr=d;
	this.style.color=this.LwFntClr;
	if(this.LoBck)this.style.backgroundColor=this.LoBck;

	if(RcrsLvl==1){
		this.style.textAlign=MenuTextCentered_1;
	}
	else	{
		this.style.textAlign=MenuTextCentered;
	}
	
	if(eval(WhatMenu+'[2]'))this.style.backgroundImage="url(\'"+eval(WhatMenu+'[2]')+"\')";
	if(MemVal.indexOf('<')==-1){
		this.style.width=Wdth-LftXtra;
		this.style.height=Hght-TpXtra;
		this.style.paddingLeft=LeftPaddng;
		this.style.paddingTop=TopPaddng;
	}
	else{
		this.style.width=Wdth;
		this.style.height=Hght;
	}
	if(MemVal.indexOf('<')==-1&&DomYes){
		t=Location.document.createTextNode(MemVal);
		this.appendChild(t);
	}
	else this.innerHTML=MemVal;
	if(eval(WhatMenu+'[3]')&&ShowArrow){
		a=RcrsLvl==1&&FirstLineHorizontal?3:RightToLeft?6:0;
		S=Arrws[a];
		W=Arrws[a+1];
		H=Arrws[a+2];
		T=RcrsLvl==1&&FirstLineHorizontal?Hght-H-2:(Hght-H)/2;
		L=RightToLeft?2:Wdth-W-2;
		if(DomYes){
			t=Location.document.createElement('img');
			this.appendChild(t);
			t.style.position='absolute';
			t.src=S;
			t.style.width=W;
			t.style.height=H;
			t.style.top=T;
			t.style.left=L;
		}
		else{
			MemVal+="<div style='position:absolute; top:"+T+"; left:"+L+"; width:"+W+"; height:"+H+";visibility:inherit'><img src='"+S+"'></div>";
			this.innerHTML=MemVal;
		}
	}
	if(ExpYes){this.onselectstart=CnclSlct;
		this.onmouseover=RcrsLvl==1&&UnfoldsOnClick?OpenMenuClick:OpenMenu;
		this.onmouseout=CloseMenu;
		this.onclick=RcrsLvl==1&&UnfoldsOnClick&&eval(WhatMenu+'[3]')?OpenMenu:GoTo;
	}
	else{
		RcrsLvl==1&&UnfoldsOnClick?this.addEventListener('mouseover',OpenMenuClick,false):this.addEventListener('mouseover',OpenMenu,false);
		this.addEventListener('mouseout',CloseMenu,false);
		RcrsLvl==1&&UnfoldsOnClick&&eval(WhatMenu+'[3]')?this.addEventListener('click',OpenMenu,false):this.addEventListener('click',GoTo,false);
	}
}

function NavMbrSetUp(MmbrCntnr,PrMmbr,WhatMenu,Wdth,Hght){
	var a,b,c,d;
	if(RcrsLvl==1){
		a=LowBgColor;
		b=HighBgColor;
		c=FontLowColor;
		d=FontHighColor;
	}
	else {
		a=LowSubBgColor;
		b=HighSubBgColor;
		c=FontSubLowColor;
		d=FontSubHighColor;
	}
	this.value=eval(WhatMenu+'[0]');
	this.ro=0;
	if(this.value.indexOf('rollover')!=-1){
		this.ro=1;
		this.ri1=this.value.substring(this.value.indexOf(':')+1,this.value.lastIndexOf(':'));
		this.ri2=this.value.substring(this.value.lastIndexOf(':')+1,this.value.length);
		this.rid=WhatMenu+'i';this.value="<img src='"+this.ri1+"' name='"+this.rid+"'>";
	}
	if(LeftPaddng&&this.value.indexOf('<')==-1&& ( ((RcrsLvl==1)?MenuTextCentered_1=='left':MenuTextCentered=='left') ) )this.value='&nbsp\;'+this.value;
	this.Ovalue=this.value;
	this.value=this.value.fontcolor(c);
	this.Ovalue=this.Ovalue.fontcolor(d);
	
	// If there is a value defined for the current level then set it.
	// Otherwise it should use the default value.
	var curMenuLevel = getMenuLevel(WhatMenu);
	// FONT BOLD
	if(typeof(FontWeight) == "undefined")
	{
		if (getStyleForMenu(curMenuLevel, "FontBold")) {
			if (getStyleForMenu(curMenuLevel, "FontBold")=="bold") {
				this.value=this.value.bold();
			}
		}
		else {
			if(FontBold)this.value=this.value.bold();
		}
	}
	else
	{
		if (getStyleForMenu(curMenuLevel, "FontWeight")) 
		{
			if (getStyleForMenu(curMenuLevel, "FontWeight")==700) 
			{
				this.value=this.value.bold();
			}
		}
		else 
		{
			if(FontWeight == 700)this.value=this.value.bold();
		}
	}

	// FONT ITALIC
	if (getStyleForMenu(curMenuLevel, "FontItalic")) {
		if (getStyleForMenu(curMenuLevel, "FontItalic")=="italic") {
			this.value=this.value.italics();
		}
	}
	else {
		if(FontItalic)this.value=this.value.italics();
	}
	var nsFontFamily = FontFamily;
	var nsFontSize = FontSize;
	// FONT FAMILY
	if (getStyleForMenu(curMenuLevel, "FontFamily")) {
		nsFontFamily = getStyleForMenu(curMenuLevel, "FontFamily");
	}
	// FONT SIZE
	if (getStyleForMenu(curMenuLevel, "FontSize")) {
		nsFontSize = getStyleForMenu(curMenuLevel, "FontSize");
	}
	if(RcrsLvl==1){
		this.value=CntrTxt_1+"<font face='"+nsFontFamily+"' point-size='"+nsFontSize+"'>"+this.value+TxtClose_1;
		this.Ovalue=CntrTxt_1+"<font face='"+nsFontFamily+"' point-size='"+nsFontSize+"'>"+this.Ovalue+TxtClose_1;
	}
	else	{
		this.value=CntrTxt+"<font face='"+nsFontFamily+"' point-size='"+nsFontSize+"'>"+this.value+TxtClose;
		this.Ovalue=CntrTxt+"<font face='"+nsFontFamily+"' point-size='"+nsFontSize+"'>"+this.Ovalue+TxtClose;
	}
	this.LoBck=a;
	this.HiBck=b;
	this.ChildCntnr=null;
	this.PrvMbr=PrMmbr;
	this.Hilite=0;
	this.visibility='inherit';
	if(this.LoBck)this.bgColor=this.LoBck;
	this.resizeTo(Wdth,Hght);
	if(!AcrssFrms&&eval(WhatMenu+'[2]'))this.background.src=eval(WhatMenu+'[2]');
	this.document.write(this.value);
	this.document.close();
	this.CmdLyr=new Layer(Wdth,MmbrCntnr);
	this.CmdLyr.Level=RcrsLvl;
	this.CmdLyr.LinkTxt=eval(WhatMenu+'[1]');
	this.CmdLyr.visibility='inherit';
	this.CmdLyr.onmouseover=RcrsLvl==1&&UnfoldsOnClick?OpenMenuClick:OpenMenu;
	this.CmdLyr.onmouseout=CloseMenu;
	this.CmdLyr.captureEvents(Event.MOUSEUP);
	this.CmdLyr.onmouseup=RcrsLvl==1&&UnfoldsOnClick&&eval(WhatMenu+'[3]')?OpenMenu:GoTo;
	this.CmdLyr.LowLyr=this;
	this.CmdLyr.resizeTo(Wdth,Hght);
	this.CmdLyr.Container=MmbrCntnr;
	if(eval(WhatMenu+'[3]')&&ShowArrow){
		a=RcrsLvl==1&&FirstLineHorizontal?3:RightToLeft?6:0;
		this.CmdLyr.ImgLyr=new Layer(Arrws[a+1],this.CmdLyr);
		this.CmdLyr.ImgLyr.visibility='inherit';
		this.CmdLyr.ImgLyr.top=RcrsLvl==1&&FirstLineHorizontal?Hght-Arrws[a+2]-2:(Hght-Arrws[a+2])/2;
		this.CmdLyr.ImgLyr.left=RightToLeft?2:Wdth-Arrws[a+1]-2;
		this.CmdLyr.ImgLyr.width=Arrws[a+1];
		this.CmdLyr.ImgLyr.height=Arrws[a+2];
		ImgStr="<img src='"+Arrws[a]+"' width='"+Arrws[a+1]+"' height='"+Arrws[a+2]+"'>";
		this.CmdLyr.ImgLyr.document.write(ImgStr);
		this.CmdLyr.ImgLyr.document.close();
	}
}

function CalcMaxWidth(MName, NumberOf) {
	var max_width = 0;
	for (var i=1; i <= NumberOf; i++) {
		/* OLD - is now determined by PHP and written directly to hv_menu_tree_#.js
		var temp_width = CalcWidth(MName+i);
		if (temp_width > max_width) {
			max_width = temp_width;
		}
		*/
		
		var temp_width = eval(MName+i+'[5]');
		if (temp_width > max_width) {
			max_width = temp_width;
		}
	}
	return max_width;
}

function CalcWidth(MName) {
	var menu_text = eval(MName+'[0]');
	var arial = new Array();
	arial['a'] = 7; arial['A'] = 10;
	arial['b'] = 7; arial['B'] = 10;
	arial['c'] = 7; arial['C'] = 10;
	arial['d'] = 7; arial['D'] = 10;
	arial['e'] = 7; arial['E'] = 10;
	arial['f'] = 7; arial['F'] = 10;
	arial['g'] = 7; arial['G'] = 10;
	arial['h'] = 7; arial['H'] = 10;
	arial['i'] = 7; arial['I'] = 10;
	arial['j'] = 7; arial['J'] = 10;
	arial['k'] = 7; arial['K'] = 10;
	arial['l'] = 7; arial['L'] = 10;
	arial['m'] = 7; arial['M'] = 10;
	arial['n'] = 7; arial['N'] = 10;
	arial['o'] = 7; arial['O'] = 10;
	arial['p'] = 7; arial['P'] = 10;
	arial['q'] = 7; arial['Q'] = 10;
	arial['r'] = 7; arial['R'] = 10;
	arial['s'] = 7; arial['S'] = 10;
	arial['t'] = 7; arial['T'] = 10;
	arial['u'] = 7; arial['U'] = 10;
	arial['v'] = 7; arial['V'] = 10;
	arial['w'] = 10; arial['W'] = 10;
	arial['x'] = 7; arial['X'] = 10;
	arial['y'] = 7; arial['Y'] = 10;
	arial['z'] = 7; arial['Z'] = 10;
	arial[' '] = 5; arial['&'] = 10;
			
	var len = 0;
	var increment = 0;
	var menu_text_arr = menu_text.split("");
	for (var i=0; i<menu_text.length; i++) {
		increment = ((arial[menu_text_arr[i]]) ? arial[menu_text_arr[i]] : 8);
		len += increment;
	}
	return len;
}

function CreateMenuStructure(MName,NumberOf){
	RcrsLvl++;
	var i,NoOffSubs,Mbr,Wdth=0,Hght=0;
	var PrvMmbr=null;
	var WMnu=MName+'1';

	var MenuWidth=eval(WMnu+'[5]');
//	var MenuWidth=CalcWidth(WMnu);
	if ((RcrsLvl==1) && !FirstLineHorizontal) {
		MenuWidth=CalcMaxWidth(MName, NumberOf);
	}
	var MenuHeight=eval(WMnu+'[4]');
	var Location=RcrsLvl==1?FrstLoc:ScLoc;
	if (RcrsLvl==1&&FirstLineHorizontal){
		for(i=1;i<NumberOf+1;i++){
			WMnu=MName+eval(i);
			Wdth=((eval(WMnu+'[5]')) ? Wdth+eval(WMnu+'[5]') : Wdth+MenuWidth);
		}
		Wdth=BorderBtwnElmnts?Wdth+(NumberOf+1)*BorderWidth:Wdth+2*BorderWidth;Hght=MenuHeight+2*BorderWidth;
	}
	else {
		for(i=1;i<NumberOf+1;i++) {
			WMnu=MName+eval(i);
			Hght=eval(WMnu+'[4]')?Hght+eval(WMnu+'[4]'):Hght+MenuHeight;
		}
		Hght=BorderBtwnElmnts?Hght+(NumberOf+1)*BorderWidth:Hght+2*BorderWidth;Wdth=MenuWidth+2*BorderWidth;
	}
	if(DomYes){
		var MmbrCntnr=Location.document.createElement("div");
		MmbrCntnr.style.position='absolute';
		MmbrCntnr.style.visibility='hidden';
		Location.document.body.appendChild(MmbrCntnr);
	}
	else {
		if(Nav4) {
			var MmbrCntnr=new Layer(Wdth,Location)
		}
		else {
			WMnu+='c';
			Location.document.body.insertAdjacentHTML("AfterBegin","<div id='"+WMnu+"' style='visibility:hidden; position:absolute;'><\/div>");
			var MmbrCntnr=Location.document.all[WMnu];
		}
	}
	MmbrCntnr.SetUp=CntnrSetUp;
	MmbrCntnr.SetUp(Wdth,Hght,NumberOf);
	if(Exp4) {
		MmbrCntnr.InnerString='';
		for(i=1;i<NumberOf+1;i++) {
			WMnu=MName+eval(i);
			MmbrCntnr.InnerString+="<div id='"+WMnu+"' style='position:absolute;'><\/div>";
		}
		MmbrCntnr.innerHTML=MmbrCntnr.InnerString;
	}
	for(i=1;i<NumberOf+1;i++) {
		WMnu=MName+eval(i);
		NoOffSubs=eval(WMnu+'[3]');
		Wdth=((RcrsLvl==1&&FirstLineHorizontal) ? ((eval(WMnu+'[5]')) ? eval(WMnu+'[5]') : MenuWidth) : MenuWidth);
		Hght=((RcrsLvl==1&&FirstLineHorizontal) ? MenuHeight : ((eval(WMnu+'[4]')) ? eval(WMnu+'[4]') : MenuHeight));
		if(DomYes) {
			Mbr=Location.document.createElement("div");
			Mbr.style.position='absolute';
			Mbr.style.visibility='inherit';
			MmbrCntnr.appendChild(Mbr);
		}
		else {
			Mbr=Nav4?new Layer(Wdth,MmbrCntnr):Location.document.all[WMnu];
		}
		Mbr.SetUp=Nav4?NavMbrSetUp:MbrSetUp;
		Mbr.SetUp(MmbrCntnr,PrvMmbr,WMnu,Wdth,Hght);
		if(NoOffSubs) {
			Mbr.ChildCntnr=CreateMenuStructure(WMnu+'_',NoOffSubs);
		}
		PrvMmbr=Mbr;
	}
	MmbrCntnr.FrstMbr=Mbr;
	RcrsLvl--;
	return(MmbrCntnr);
}

function CreateMenuStructureAgain(MName,NumberOf){
	var i,WMnu,NoOffSubs,PrvMmbr,Mbr=FrstCntnr.FrstMbr;
	RcrsLvl++;
	for(i=NumberOf;i>0;i--) {
		WMnu=MName+eval(i);
		NoOffSubs=eval(WMnu+'[3]');
		PrvMmbr=Mbr;
		if(NoOffSubs)Mbr.ChildCntnr=CreateMenuStructure(WMnu+'_',NoOffSubs);
		Mbr=Mbr.PrvMbr;
	}
	RcrsLvl--;
}

function getMenuLevel(whatMenu) {
	var temp_arr = whatMenu.split("_");
	return temp_arr.length;
}

function setStyleForMenu(obj, WhatMenu, the_style, the_style_var, end_data) {
	if(typeof(end_data)=="undefined") {
		var end_data = "";
	}
	var curMenuLevel = getMenuLevel(WhatMenu);
	if (eval("typeof("+the_style_var+"_"+curMenuLevel+")!=\"undefined\"")) {
		eval("obj.style."+the_style+"=(getStyleForMenu(curMenuLevel, the_style_var)+end_data)");
	}
}

function getStyleForMenu(curMenuLevel, the_style_var) {
	if (eval("typeof("+the_style_var+"_"+curMenuLevel+")!=\"undefined\"")) {
		return eval(the_style_var+"_"+curMenuLevel);
	}
	else {
		return false;
	}
}