function loadLHNav() {
	if (window.lhnavArray) {
		generateLHNav(lhnavArray);
	}
}

function generateLHNav(navArray) {
	
	nav = '<ul id="lhnavLevel1">';
	
	for (var i=0; i < navArray.length; i++)	{
		if ((navArray[i][4] == 0) || ((typeof(telstra_global_loginState) != "undefined") && (navArray[i][4] == telstra_global_loginState)))	{
			if ((typeof(telstra_global_lhnav_id) != "undefined") && (telstra_global_lhnav_id.substring(0, 3) == navArray[i][0])) {
				// If this is active item
				if (telstra_global_lhnav_id == navArray[i][0]) {
					nav += '<li><a class="active" href="'+navArray[i][2]+'" title="'+navArray[i][1]+'">'+navArray[i][1]+'</a>';
				} else if ((telstra_global_lhnav_id.substring(0, 3) == navArray[i][0]) && (navArray[i][3] != null)) {
					nav += '<li><a class="expanded" href="'+navArray[i][2]+'" title="'+navArray[i][1]+'">'+navArray[i][1]+'</a>';
				}/*	else {
					//just a backup
					nav += '<li><a href="'+navArray[i][2]+'" title="'+navArray[i][1]+'">'+navArray[i][1]+' - nothing</a>';
				}*/

				// If Primary has Secondary items
				if (navArray[i][3] != null)	{
					nav += '<ul id="lhnavLevel2">';
					
					for (var j=0; j < navArray[i][3].length; j++)	{
						if ((navArray[i][3][j][4] == 0) || ((typeof(telstra_global_loginState) != "undefined") && (navArray[i][3][j][4] == telstra_global_loginState)))	{
							// If selection is within this tree
				
							lhnav_id = telstra_global_lhnav_id.split("_");
							lhnav_id = lhnav_id[0] + "_" + lhnav_id[1];
							
							//if (telstra_global_lhnav_id.substring(0, 5) == navArray[i][3][j][0]) {
							if (lhnav_id == navArray[i][3][j][0]) {
								
								// If this is active item
								if (telstra_global_lhnav_id == navArray[i][3][j][0]) {
									
									nav += '<li><a class="active" href="'+navArray[i][3][j][2]+'" title="'+navArray[i][3][j][1]+'">'+navArray[i][3][j][1]+'</a>';
								} else if ((lhnav_id == navArray[i][3][j][0]) && (navArray[i][3][j][3] != null)) {
									
									nav += '<li><a class="expanded" href="'+navArray[i][3][j][2]+'" title="'+navArray[i][3][j][1]+'">'+navArray[i][3][j][1]+'</a>';
								}/*	else {
									// just a backup
									nav += '<li><a href="'+navArray[i][3][j][2]+'" title="'+navArray[i][3][j][1]+'">'+navArray[i][3][j][1]+' - normal</a>';
								}*/

								// If Secondary has Tertiary items
								if (navArray[i][3][j][3] != null)	{
									nav +='<ul id="lhnavLevel3">';
									for (var k=0; k < navArray[i][3][j][3].length; k++)	{
										if ((navArray[i][3][j][3][k][4] == 0) || ((typeof(telstra_global_loginState) != "undefined") && (navArray[i][3][j][3][k][4] == telstra_global_loginState)))	{
											// If this is active item
											if (telstra_global_lhnav_id == navArray[i][3][j][3][k][0]) {
												nav += '<li><a class="active" href="'+ navArray[i][3][j][3][k][2]+'" title="'+navArray[i][3][j][3][k][1]+'">'+navArray[i][3][j][3][k][1]+'</a></li>';
											}	else {
												nav += '<li><a href="'+navArray[i][3][j][3][k][2]+'" title="'+navArray[i][3][j][3][k][1]+'">'+navArray[i][3][j][3][k][1]+'</a></li>';
											}
											
										}
										
									}
									nav += '</ul>';
								}
								nav += '</li>';
							}	else {
								nav += '<li><a href="'+navArray[i][3][j][2]+'" title="'+navArray[i][3][j][1]+'"';
								// If Secondary has Tertiary items
								if (navArray[i][3][j][3] != null)	{
									nav += ' class="flyout" onmouseover="openMenuRl(\'' +  navArray[i][3][j][0] + '\',this)" onmouseout="closeMenu(\'' + navArray[i][3][j][0] + '\')"';
								}
								nav += '>'+navArray[i][3][j][1]+'</a></li>';
							}
						}
					}
					nav += '</ul>';
				}
				nav += '</li>';
			}	else {
				if (navArray[i][0] != "end") {
					nav += '<li><a href="'+navArray[i][2]+'"';

					// If this has child items
					if (navArray[i][3] != null)	{
						nav +=' class="flyout" onmouseover="openMenuRl(\'' +  navArray[i][0] + '\',this)" onmouseout="closeMenu(\'' + navArray[i][0] + '\')"';
					}
					nav += ' title="'+navArray[i][1]+'">'+navArray[i][1]+'</a></li>';
				}
			}
		}
	}
	
	nav += '</ul>';
	document.write(nav);
}

function loadLHNavFlyouts() {
	if (window.lhnavArray) {
		generateLHNavFlyouts(lhnavArray, 0);
	}
}


/* http://www.dustindiaz.com/getelementsbyclass/ */
function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}

function generateLHNavFlyouts(navArray, callDepth) {
	
	// fix for IE 6 not stretching content to match menu
	menuFix = true;
	
	var tabWrap = getElementsByClass("tabWrap", document, "div");
	if (tabWrap.length > 0) {
		menuFix = false;
	}
	
	if (menuFix) {
		if (typeof document.body.style.maxHeight == "undefined") {
			var objLcX = document.getElementById('leftcol').offsetHeight;
			var objMcX = document.getElementById('maincol').offsetHeight;
			if (objMcX < objLcX) { document.getElementById('maincol').style.height = (objLcX+5)+'px'; }
		}
	}
	
	for (var i=0; i < navArray.length; i++) {
		if ((navArray[i][4] == 0) || ((typeof(telstra_global_loginState) != "undefined") && (navArray[i][4] == telstra_global_loginState)))	{
			if ((navArray[i][3] != null) && (callDepth < 1)) {
				document.write('<li id="' + navArray[i][0] + '"><a href="' + navArray[i][2] + '" title="' + navArray[i][1] + '">' + navArray[i][1] + '</a><ul>');
				for (var j=0; j < navArray[i][3].length; j++)	{
					if ((navArray[i][3][j][4] == 0) || ((typeof(telstra_global_loginState) != "undefined") && (navArray[i][3][j][4] == telstra_global_loginState)))	{
						if (navArray[i][3][j][3] != null)	{
							document.write('<li><a href="' + navArray[i][3][j][2] + '" title="' + navArray[i][3][j][1] +  '">' + navArray[i][3][j][1] +  '</a><ul>');
							generateLHNavFlyouts(navArray[i][3][j][3], callDepth + 1);
							document.write('</ul></li>');
						}	else {
							document.write('<li><a href="' + navArray[i][3][j][2] + '" title="' + navArray[i][3][j][1] +  '">' + navArray[i][3][j][1] +  '</a></li>');
						}
					}
				}
				document.write('</ul></li>');
				for (var k=0; k < navArray[i][3].length; k++)	{
					if ((navArray[i][3][k][4] == 0) || ((typeof(telstra_global_loginState) != "undefined") && (navArray[i][3][k][4] == telstra_global_loginState)))	{
						if (navArray[i][3][k][3] != null)	{
							document.write('<li id="' + navArray[i][3][k][0] + '"><a href="' + navArray[i][3][k][2] + '" title="' + navArray[i][3][k][1] +  '">' + navArray[i][3][k][1] +  '</a><ul>');
							generateLHNavFlyouts(navArray[i][3][k][3], callDepth + 1);
							document.write('</ul></li>');
						}
					}
				}
			}	else if (callDepth > 0)	{
				document.write('<li><a href="' + navArray[i][2] + '" title="' + navArray[i][1] +  '">' + navArray[i][1] +  '</a></li>');
			}
		}
	}
}
