var gTheMenuTable = ''
var gOtherMenuTables = ''
var gMenuTableVisibleMenu = 0

function makeMenuDiv(homepageURL, menuNotes) {
    gMenuTableDiv = document.createElement("div")
    gMenuTableDiv.id = "menuTableDiv"
    gMenuTableDiv.className = "menuTableDiv"

    gMenuTableNotes = document.createElement("input")
    gMenuTableNotes.id = "menuTableNotes"
    gMenuTableNotes.type = 'hidden'
    gMenuTableNotes.value = menuNotes
    gMenuTableNotes.alt = homepageURL
    gMenuTableDiv.appendChild(gMenuTableNotes)

    return gMenuTableDiv
}

function drawMenuTables() {
    var temp = document.getElementById("menuTableNotes")
    var menuNotes = temp.value
    var homepageURL = temp.alt

    gMenuTableDiv = document.getElementById("menuTableDiv")
    var oldMenu = document.getElementById("menuTable")
    if (oldMenu != null) {
//	removeAllChildren(gMenuTableDiv)
	gMenuTableDiv.removeChild(oldMenu)
	if (1 == 2) {				// menu bar doesn't work so copy footer instead
//alert('browserString is '+navigator.appName)
	    var temp = document.getElementById("footer")
	    var newPart = document.createElement("div")
	    newPart.innerHTML = temp.innerHTML
	    newPart.className = "footer"
	    gMenuTableDiv.appendChild(newPart)
	}
    }

    var levelArray = new Array()
    var menuNameArray = new Array()
    var URLArray = new Array()
    var notesArray = menuNotes.split('|')
    for (var i in notesArray) {
	var thisLineArray = notesArray[i].split('^')

	levelArray.push(thisLineArray[0])
	menuNameArray.push(thisLineArray[1])
	URLArray.push('/' + thisLineArray[2])
    }

    gTheMenuTable = document.createElement("table")
    gTheMenuTable.id = "menuTable"
    gTheMenuTable.className = "menuTable"

    gTheMenuTableBody = document.createElement("tbody")
    gTheMenuTable.appendChild(gTheMenuTableBody)

    gTheMenuTableRow = document.createElement("tr")
    gTheMenuTableRow.className = "menuTableTopRow"
    gTheMenuTableBody.appendChild(gTheMenuTableRow)

// the cell at 0,0 is the 'home' cell.  To the right of that menus start

// now fill the home cell

	    var thisCell = document.createElement("td")
	    thisCell.className = 'menuTableItemCell'

	    if (usingIE()) {
		thisCell.onmouseup = menuTableClickOnMenuItem
	    } else {
		//thisCell.addEventListener("click", menuTableClickOnMenuItem, true)
		thisCell.addEventListener("mouseup", menuTableClickOnMenuItem, true)
	    }

	    var thisAnchor = document.createElement("a")
	    thisAnchor.className = "menuTableHomeCell"
	    thisAnchor.href = homepageURL

	    thisAnchor.appendChild(document.createTextNode('Home'))
	    thisCell.appendChild(thisAnchor)
	gTheMenuTableRow.appendChild(thisCell)

// now fill the other header cells and the cells of the submenus

    gOtherMenuTables = new Array()
    gOtherMenuTbodies = new Array()
    currentMenuNumber = 0
    for (var i in levelArray) {
	if (levelArray[i] == '1') {

	    ++currentMenuNumber

	    var thisCell = document.createElement("td")		// make a cell for the submenu header
	    thisCell.className = 'menuTableItemCellHeader'
	    thisCell.name = currentMenuNumber
	    thisCell.appendChild(document.createTextNode(menuNameArray[i]))
	    if (usingIE()) {
		thisCell.onmouseup = menuTableMouseDownOnMenuName
	    } else {
		//thisCell.addEventListener("click", menuTableMouseDownOnMenuName, false)
		thisCell.addEventListener("mouseup", menuTableMouseDownOnMenuName, false)
	    }

	    gTheMenuTableRow.appendChild(thisCell)

	    var newMenu = document.createElement("table")	// make a table for the submenu
	    newMenu.id = "submenuTable"
	    newMenu.className = "submenuTable"
	    var newBody = document.createElement("tbody")
	    newMenu.appendChild(newBody)
	    gOtherMenuTables[currentMenuNumber] = newMenu
	    gOtherMenuTbodies[currentMenuNumber] = newBody

	} else if (levelArray[i] == '2') {	// assume it's level 2

	    var thisRow = document.createElement("tr")
	    thisRow.className = 'submenuTableRow'
	    var thisCell = document.createElement("td")
	    thisCell.className = 'menuTableItemCell'
	    thisCell.id = URLArray[i]
	    thisCell.name = currentMenuNumber

	    var thisAnchor = document.createElement("a")
	    thisAnchor.className = "menuTableItemAnchor"
	    thisAnchor.href = URLArray[i]

	    thisAnchor.appendChild(document.createTextNode(menuNameArray[i]))
	    thisCell.appendChild(thisAnchor)

//	    if (usingIE()) {
//		thisCell.onmouseup = menuTableClickOnMenuItem
//	    } else {
//		//thisCell.addEventListener("click", menuTableClickOnMenuItem, false)
//		thisCell.addEventListener("mouseup", menuTableClickOnMenuItem, false)
//	    }

	    thisRow.appendChild(thisCell)
	    gOtherMenuTbodies[currentMenuNumber].appendChild(thisRow)
	    
	}
    }

    gMenuTableDiv.appendChild(gTheMenuTable)

    gMenuTableVisibleMenu = 0

    return gMenuTableDiv
}

function menuTableMouseDownOnMenuName(theEvent) {
    var theClickCell = getCurrentTarget(theEvent)
    var theEventMenuNumber = theClickCell.name
    if (theEventMenuNumber == gMenuTableVisibleMenu) {

	menuTableHideVisibleMenu(theEvent)

    } else {

	menuTableHideVisibleMenu(theEvent)
	menuTableShowMenuNumber(theEvent)

    }
}

function menuTableShowMenuNumber(theEvent) {
// show this menu
    var theFixedWidthTable = document.getElementById("fixedWidthTable")
    var theClickCell = getCurrentTarget(theEvent)
    var theClickRow = theClickCell.parentNode
    var theLeft = theFixedWidthTable.offsetLeft + theClickRow.offsetLeft + theClickCell.offsetLeft + gMenuTableDiv.offsetLeft
    var theTop = theFixedWidthTable.offsetTop + theClickRow.offsetTop + theClickCell.offsetTop + gMenuTableDiv.offsetTop
    var theBottom = theTop + theClickCell.offsetHeight

    var theEventMenuNumber = theClickCell.name
    var thisTable = gOtherMenuTables[theEventMenuNumber]
    thisTable.style.left = theLeft+'px'
    thisTable.style.top = theBottom+'px'

    gMenuTableDiv.appendChild(thisTable)

    gMenuTableVisibleMenu = theEventMenuNumber
}

function menuTableHideVisibleMenu(theEvent) {
    if (gMenuTableVisibleMenu != 0) {
	var activeSubmenu = document.getElementById("submenuTable")
	gMenuTableDiv.removeChild(activeSubmenu)
    }

    gMenuTableVisibleMenu = 0
}

function menuTableClickOnMenuItem(theEvent) {
// hide previous menu
    menuTableHideVisibleMenu(theEvent)

    var theClickCell = getCurrentTarget(theEvent)
    var newURL = theClickCell.id
    document.location = "http://www.psych.lancs.ac.uk"+newURL
}
