// JavaScript Document - STM Menu System, copyright STM Systems 2005

	var MAIN_TAG_NAME = "SPAN" ;
	var POP_TAG_NAME = "SPAN" ;
	var POP_OFFSET = 10 ;
	var activeMainItem = 0 ;
  var activeSubItem  = 0 ;
	var mainclassNameOut = "mnuMainItem" ;
	var mainclassNameOver = "mnuMainItem_active" ;
	var subclassNameOut = "mnuSubItem" ;
	var subclassNameOver = "mnuSubItem_active" ;
	var popclassNameOut = "mnuPopupItem" ;
	var popclassNameOver = "mnuPopupItem_active" ;
  var clrPODBlue ="#657FB2";
	var clrGreen ="#00FF00";
	var clrRed ="#751806";
	var clrWhite="#ffffff";
	var clrLiteBLue = "#00ccff" ;
	var clrBlack = "#000000" ;
	var fontset1="Tahoma, Verdana,Helvetica" ;
	var fontsize1= 8;
  var popitemHeight = 30 ;	
  var popitemWidth = 135 ;	
	var mainTop = 90 ;
	var mainLeft = 310;
	var submainTop = 120 ;
	var submainLeft = 40;
	var mainHeight = 30 ;
	var mainitemWidth = 96 ;
 
aMenus = new Array() ;
// Main Menu Initalisation
var MNUTYPE_MAIN = 0 ;
var MNUTYPE_SUBMAIN = 1 ;
var MNUTYPE_POPUP = 2 ;
var MNUTYPE_SUBPOP = 3;
var MNU_HOME = 0 ;
var MNU_NEWS = 1 ;
var  MNU_CONTAINER = "stmMenus" ;
var  MNU_MAIN = "mnuMain" ;
var  ITM_MAIN_01 = 0 ;
var  ITM_MAIN_02 = 1 ;
var  ITM_MAIN_03 = 2 ;
var  ITM_MAIN_04 = 3 ;
var  ITM_MAIN_05 = 4 ;
var  ITM_MAIN_06 = 5 ;
var  POP_MNU_01 = 0 ;  // News Menu
var  POP_MNU_02 = 1 ;  // Company Menu
var  POP_MNU_03 = 2 ;  // Master Plan Menu
var  POP_MNU_04 = 3 ;  // Property Menu
var  POP_MNU_05 = 4 ;  // Development Menu
var  POP_MNU_MAX = 0
var  POP_MNU_06 = 5 ;
var  POP_MNU_07 = 6 ;
var  SUBPOP_MNU_MAX = 0 ;
var  ITM_POP_01 = 0 ;
var  ITM_POP_02 = 1 ;
var  ITM_POP_03 = 2 ;
var  ITM_POP_04 = 3 ;
var  ITM_POP_05 = 4 ;
var  ITM_POP_06 = 5 ;
var  ITM_POP_07 = 6 ;
var  ITM_POP_08 = 7 ;
var  ITM_POP_09 = 8 ;
var  ITM_POP_10 = 9 ;
var  aPopIDs = ["mnuPop01"] ; // ,"mnuPop02","mnuPop03","mnuPop04","mnuPop05","mnuPop06","mnuPop07"] ;

function initMenu(actMainItem, actSubMenu, actSubItem ) {
	var i, obj, mainMenu, popMenus = new Array() ;
// hide the menus
  obj = document.getElementById? document.getElementById(MNU_MAIN) : document.all(MNU_MAIN);
	obj.style.visibility ="hidden" ;
  for (i = 0; i < aPopIDs.length ; i++) {
	  obj = document.getElementById? document.getElementById(aPopIDs[i]) : document.all(aPopIDs[i]);
		obj.style.visibility ="hidden" ;
	}
		
//	elemcontain = document.getElementById? document.getElementById(MNU_CONTAINER) : document.all(MNU_CONTAINER);
//	elemcontain.style.position = "absolute" ;
//	elemcontain.className=MNU_CONTAINER;
	// Home Menu
  mainMenu = Menu(MNU_MAIN,MNUTYPE_MAIN,actMainItem) ;
	for (i = 0 ; i <= POP_MNU_MAX; i++) {
		if (i == actSubMenu)
		  popMenus[i] = Menu(aPopIDs[i],MNUTYPE_SUBMAIN,actSubItem) ;
		else
			popMenus[i] = PopMenu(aPopIDs[i], mainMenu,mainMenu.items[i+1],MNUTYPE_POPUP) ;
	}
	// End of Popup Menu Initalisation
	// Sub Popups
/*	
	if (POP_MNU_04 != actSubMenu && popMenus[POP_MNU_04].items[ITM_POP_02].innerText) 
			popMenus[POP_MNU_04].items[ITM_POP_02].innerText += "   ...";
	popMenus[POP_MNU_06] = PopMenu(aPopIDs[POP_MNU_06], popMenus[POP_MNU_04],popMenus[POP_MNU_04].items[ITM_POP_02],MNUTYPE_SUBPOP) ;	
	if (POP_MNU_01 != actSubMenu && popMenus[POP_MNU_01].items[ITM_POP_02].innerText) 
			popMenus[POP_MNU_01].items[ITM_POP_02].innerText += "   ...";
	popMenus[POP_MNU_07] = PopMenu(aPopIDs[POP_MNU_07], popMenus[POP_MNU_01],popMenus[POP_MNU_01].items[ITM_POP_02],MNUTYPE_SUBPOP) ;	
*/
// show the menus
	elemcontain = document.getElementById? document.getElementById(MNU_CONTAINER) : document.all(MNU_CONTAINER);
	elemcontain.style.visibility = "visible" ;
  obj = document.getElementById? document.getElementById(MNU_MAIN) : document.all(MNU_MAIN);
	obj.style.visibility ="visible" ;
  if( actSubMenu >= 0) {
	  obj = document.getElementById? document.getElementById(aPopIDs[actSubMenu]) : document.all(aPopIDs[actSubMenu]);
		obj.style.visibility ="visible" ;
	}


}
function Menu(elemID,mnuType, activeElem) {
	var i, obj;
	obj = document.getElementById? document.getElementById(elemID) : document.all(elemID) ;
	obj.type = mnuType ;
	if (mnuType == MNUTYPE_MAIN) { 	
		obj.top = mainTop ;
		obj.left = mainLeft ;
		obj.classOut = mainclassNameOut ;
		obj.classOver= mainclassNameOver ;
	}
	else {
		obj.top = submainTop ;
		obj.left = submainLeft ;
		obj.classOut = subclassNameOut ;
		obj.classOver = subclassNameOver ;
	}
	obj.height = mainHeight ;
//	obj.style.position = "absolute";
	obj.style.top = obj.top + "px" ;
	obj.style.left =  obj.left + "px" ;
	var aElems = obj.getElementsByTagName("A") ; 
	for (i = 0; i < aElems.length; i++) {
		aElems[i].className = mainclassNameOut ;
		aElems[i].classOut = (i == activeElem)? obj.classOver: obj.classOut ;			
	}
	var xLeft = obj.left ;
	obj.items = obj.getElementsByTagName(POP_TAG_NAME) ; 
	obj.width = mainitemWidth * (obj.items.length + 1)
	for (i = 0; i < obj.items.length; i++) {
		obj.items[i].left = xLeft ;
		obj.items[i].classOver = obj.classOver ;
		obj.items[i].classOut = (i == activeElem)? obj.classOver: obj.classOut ;			
		MainItem(obj.items[i], obj) ;
		xLeft += mainitemWidth ;
		
	}
//	obj.shadow = CreateShadow(obj) ;

  return obj ;
}


function MainItem (obj, parent) {
	obj.top = parent.top ;
	obj.height = mainHeight ;
	obj.width = mainitemWidth ;
	obj.bottom = mainTop + mainHeight ;
	obj.fontset = fontset1 ;
	obj.fontsize = fontsize1;
	obj.fontstyle="bold" ;
	obj.fontstyle_active = "bold" ;
	obj.align="center" ;
	obj.foreground= clrGreen ;
	obj.background = clrPODBlue;
	obj.foreground_active= clrWhite;
	obj.background_active = clrRed;
	obj.style.position = "absolute";
	obj.style.top = obj.top + "px" ;
	obj.style.width = obj.width + "px" ;
	obj.style.height = obj.height + "px" ;
	obj.style.left = obj.left + "px" ; // assigned in calling function
//	obj.style.backgroundColor = obj.background ;
//	obj.style.color = obj.foreground ;
	obj.className = obj.classOut ;
 	obj.onmouseover = function () { this.className = this.classOver} ; 
	obj.onmouseout = function () { this.className = this.classOut} ; 
}


function PopMenu(elemID, elMenu, elMenuItem, mnuType) {
	var i, obj;
	obj = document.getElementById? document.getElementById(elemID) : document.all(elemID) ;
	obj.type = mnuType ;
  obj.parent = elMenu ;	
	obj.left = elMenuItem.left + POP_OFFSET ;
	obj.top = elMenuItem.bottom ;
	obj.bottom = obj.top + obj.height ;
	obj.width = popitemWidth ;
  obj.fontset = fontset1 ;
	obj.fontsize = fontsize1;
	obj.fontstyle="bold" ;
	obj.fontstyle_active = "bold" ;
//	obj.align="center" ;
	obj.background = clrPODBlue ; 
	obj.background_active = clrWhite ; 
	obj.foreground = clrWhite  ; 
	obj.foreground_active = clrPODBlue ; 
	obj.style.position = "absolute";
	obj.style.width = popitemWidth + "px" ;
	obj.style.left = obj.left + "px";
	obj.style.top = obj.top + "px" ;
	obj.style.fontFamily = obj.fontset;
	obj.style.fontSize = obj.fontsize ;
	obj.style.zIndex = 10000 ;
	obj.style.borderStyle = "solid" ;
	obj.style.borderColor = clrBlack ;
	obj.style.borderWidth = "1 1 1 1" ;
	obj.style.paddingLeft = "5" ;

//	obj.style.visibility ="hidden" ;
	obj.style.backgroundColor = obj.background ;

	var yBottom = obj.top + popitemHeight ;
	obj.items = obj.getElementsByTagName(POP_TAG_NAME) ; 
	obj.height = (popitemHeight * obj.items.length) 
	if (elMenuItem.attachEvent) {  // firefox doesn't support this
		elMenuItem.attachEvent("onmouseover",toggleElem(elemID,true)) ; 
		elMenuItem.attachEvent("onmouseout",toggleElem(elemID,false)) ; 
		obj.attachEvent("onmouseover",toggleElem(elemID,true)) ; 
		obj.attachEvent("onmouseout",toggleElem(elemID,false)) ; 
	}
	else { //for firefox
		elMenuItem.onmouseover = toggleElem(elemID,true) ; 
		elMenuItem.onmouseout = toggleElem(elemID,false) ; 
		obj.onmouseover = toggleElem(elemID,true) ; 
		obj.onmouseout = toggleElem(elemID,false) ; 
		obj.height += 15 ;
	}
	obj.style.height = obj.height + "px" ;
	for (i = 0; i < obj.items.length; i++) {
		obj.items[i].bottom = yBottom ;
		PopItem(obj.items[i], obj) ;
		obj.items[i].className = popclassNameOut ;
		obj.items[i].classOut = popclassNameOut ;			
		yBottom += popitemHeight ;
		
	}
	var aElems = obj.getElementsByTagName("A") ; 
	for (i = 0; i < aElems.length; i++) {
		aElems[i].className = popclassNameOut ;
//		aElems[i].classOut = popclassNameOut ;			
	}
	obj.shadow = CreateShadow(obj) ;
	return obj ;
}
function PopItem (obj, mnuPop) {
	obj.left = mnuPop.left ;
	obj.top = mnuPop.top ;
	obj.width = popitemWidth ;
	obj.style.height = popitemHeight + "px" ;
	obj.classOver = popclassNameOver ;
	obj.classOut = popclassNameOut ;
	obj.className = popclassNameOut ;
 	obj.onmouseover = function () { this.className = this.classOver} ; 
	obj.onmouseout = function () { this.className = this.classOut} ; 
}
function changeClass(elemID,newName) {
	var obj;
	obj = document.getElementById? document.getElementById(elemID) : document.all(elemID) ;
	obj.className = newName;
}
function toggleElem(elemID, flag) {
	var obj ;
	obj = document.getElementById? document.getElementById(elemID) : document.all(elemID) ;
	return function () {
		toggleDisplay(obj,flag) ;
	}
}
function toggleDisplay(obj, flag) {
	obj.style.visibility = flag? "visible":"hidden";
	obj.shadow.style.visibility = flag? "visible":"hidden";
	if(obj.parent && obj.parent.type == MNUTYPE_POPUP) {
  	 obj.parent.style.visibility = flag? "visible":"hidden";
  	 obj.parent.shadow.style.visibility = flag? "visible":"hidden";
  }
}
	
function ToggleShow(elemID,bFlag) {
	var obj ;
	obj = document.getElementById? document.getElementById(elemID) : document.all(elemID) ;
	obj.style.visibility = bFlag? "visible":"hidden";
	obj.shadow.style.visibility = bFlag? "visible":"hidden";
	if(obj.parent && obj.parent.type == MNUTYPE_POPUP) {
  	 obj.parent.style.visibility = bFlag? "visible":"hidden";
  	 obj.parent.shadow.style.visibility = bFlag? "visible":"hidden";
  }
}

function CreateShadow(menu) {
	var elem ;
	elem = document.createElement(MAIN_TAG_NAME);
	elem.style.visibility = "hidden";
	elem.style.backgroundColor = clrBlack;
	elem.style.position = "absolute";
	elem.left = menu.left + 2;
	elem.top = menu.top + 2 ;
	elem.height = menu.height ;
	elem.style.zIndex = menu.style.zIndex - 1000 ;
	elem.style.left = elem.left  + "px";
	elem.style.top = elem.top  + "px" ;
	elem.style.height = elem.height + "px";
	elem.style.width = menu.width;
	document.body.appendChild(elem);
	return elem ;
}