//global variables
var a = new Array();
var aSub = new Array();
var mainMenu = new Array();
var und;
var tr = 0;

//default value for undefined params
//global constants
var DEFAULT_VAL = 0;

//getMainMenu contstant
var TOP_ONHOVER = 1;

function initTabmenu(tophighlightMode, bottomhighlightMode, ulcontainerObj){
	if(!tophighlightMode)
		tophighlightMode = DEFAULT_VAL;
	if(!bottomhighlightMode)
		bottomhighlightMode = DEFAULT_VAL;

	//render menu only if ul container defined.
	if(ulcontainerObj){
		getSub(ulcontainerObj);	
		gege();
		document.getElementById("secondContainer").innerHTML =getMainMenu2();
		document.getElementById("firstContainer").innerHTML = getMainMenu(tophighlightMode);
		checkActive(bottomhighlightMode);
	}
}

function getSub(ulparam){
	var x = 0;
	var ctr = 0;
    //flag for IE8 activation
	var level = 1;


do{

	//<ul id=nav_xxxx><li>... </ul>
	//mainMenu[ctr] = [label, href]
	if(ulparam.getElementsByTagName("li")[x].className.split("mainLists").length > 1){
    	//mainMenu[ctr++] = [ulparam.getElementsByTagName("li")[x].getElementsByTagName("a")[0].innerHTML,ulparam.getElementsByTagName("li")[x].getElementsByTagName("a")[0].href];
		mainMenu[ctr] = [ulparam.getElementsByTagName("li")[x].getElementsByTagName("a")[0].innerHTML,ulparam.getElementsByTagName("li")[x].getElementsByTagName("a")[0].href, ctr];
		ctr++;

// Menard bug-fix 05/28
// add condition for IE8 bug mainLists class name not found on li
	}else if(ulparam.getElementsByTagName("li")[x].className == 'selected' && level < 2){
    	//mainMenu[ctr++] = [ulparam.getElementsByTagName("li")[x].getElementsByTagName("a")[0].innerHTML,ulparam.getElementsByTagName("li")[x].getElementsByTagName("a")[0].href,];
		mainMenu[ctr] = [ulparam.getElementsByTagName("li")[x].getElementsByTagName("a")[0].innerHTML,ulparam.getElementsByTagName("li")[x].getElementsByTagName("a")[0].href, ctr];
				ctr++;
               level++;
     }

	x++;
	}while(ulparam.getElementsByTagName("li").length > x);


}
//******************************************
function over(obj){
	x=0;
	var ob = document.getElementById("secondContainer").getElementsByTagName("ul");
	var fobjlis = document.getElementById("firstContainer").getElementsByTagName("li");
	
	//get li index
	var activeindex = -1;
	for(var i=0; i < fobjlis.length; i++){ 
		if(obj.innerHTML == fobjlis[i].getElementsByTagName("a")[0].innerHTML){
			activeindex = i;
			break;
		}
	}
	

	while(ob.length > x){
	//	if((ob[x].id.split("sub_")[1] == obj.id) || (ob[x].id == ""))
		if(ob[x].id.split("sub_")[1] == activeindex)
			ob[x].style.display="block";
		else
			ob[x].style.display="none";
		
		x++;
	}
}

//******************************************
function gege(){
//set	a[] global variable to parent <ul>s of  2nd level <li>s
	var ss ="";
	var n;
	var sid="";
	var h;
	var x = 0;
	var ctr = 0;
	var undef,ddd;
	
// traverse all <li>
do{
		

  //if <li class> has "subLists_"
	if((document.getElementsByTagName("li")[x].className.split("subLists_").length > 1)){
	
//unused
//		n = document.getElementsByTagName("li")[x].getElementsByTagName("a")[0].innerHTML;
//		h = document.getElementsByTagName("li")[x].getElementsByTagName("a")[0].href;
	
		{trimToArray(document.getElementsByTagName("li")[x]);}

	}
	x++;

}while(document.getElementsByTagName("li").length > x);


}

//******************************************
function trimToArray(obj_){
//obj_ - <li> with class "subLists_"
//obj  - <li> parent of sublist <li>
//iid  - label of parent <li> 
	obj = obj_.parentNode.parentNode;
	var iid = obj.getElementsByTagName("a")[0].innerHTML;
	var n = 0;
	
	
//	alert("iid: "+ iid +" __a[iid]: " + obj.getElementsByTagName("ul")[0]);
	
	//a[iid] = obj.parentNode.getElementsByTagName("ul")[0];

	/*	while(obj.getElementsByTagName("ul")[0].length > n){
			a[iid] = obj.getElementsByTagName("ul")[n].getElementsByTagName("li");
			n++;
			}*/
	a[iid] = obj.getElementsByTagName("ul")[0];
	
}
//******************************************
function trim(str) {
	var	str = str.replace(/^\s\s*/, ''),
		ws = /\s/,
		i = str.length;
	while (ws.test(str.charAt(--i)));
	return str.slice(0, i + 1);
}

//******************************************
Array.prototype.clean = function(to_delete)
{
   var a;
   for (a = 0; a < this.length; a++)
   {
      if (this[a] == to_delete)
      {
         this.splice(a, 1);
         a--;
      }
   }
   return this;
};


//******************************************
function getMainMenu(highlightParam){
	var und;
	var str="";
	x=0;

	//menard bug fix
	/*me = 0;
	for(me=0;me < mainMenu.length; me++){
		   alert(mainMenu[me][0]);
	}
	*/
	str += ("<ul>\n");

	do{
		i = 1;
		//if menu has to appear on mouseover 
		if(highlightParam && highlightParam == TOP_ONHOVER){
                       // delete span 
                        var delspan = mainMenu[x][0].replace(/\<span\>/, "");
                        var delspan2 = delspan.replace(/\<\/span\>/, "");
                        var delspace = delspan2.replace(/ /g,"_");
			str+=("<li><a onmouseover='over(this)' id='"+delspace+"' href='"+mainMenu[x][1]+"'>"+mainMenu[x][0]+"</a></li>\n");
               }
		//default setting
		else{
                       // delete span 
                        var delspan = mainMenu[x][0].replace(/\<span\>/, "");
                        var delspan2 = delspan.replace(/\<\/span\>/, "");
                        var delspace = delspan2.replace(/ /g,"_");
			str+=("<li><a onclick='over(this)' id='"+delspace+"' href='"+mainMenu[x][1]+"'>"+mainMenu[x][0]+"</a></li>\n");
		}	
		x++;
	}while(mainMenu.length > x);

	str +=("</ul>");
	return str += '<div class="clearB2"></div>';
}

//******************************************
function getMainMenu2(){

var suber = document.getElementById("secondContainer");

var subStr="",str="";
var ptr = 0;
x=0;
var xx = 0;
var anch="",name="";
var i = 0;
var undefind;

//alert("a[]: " + a.length + "\nmainMenu[]: " + mainMenu);


do{
	
	//alert("[] : " + a[mainMenu[i][0]]);
	//if(a[mainMenu[i][0]] != undefind){
	
//	alert("mainMenu[i][0]: " + mainMenu[i][0] + "__ a[mainMenu[i][0]]:" + a[mainMenu[i][0]] );
	if(a[mainMenu[i][0]]){
	
  	  //Warren bug-fix 06/15
		  //use sub_x as naming convention for ul id where x is the index of the top level menu associated with the 2nd level ul
		  //str += ("<ul id='sub_"+mainMenu[i][0]+"' style='display:none'>\n");
		  str += ("<ul id='sub_" + mainMenu[i][2] +"' style='display:none'>\n");
		
	  	if((a[mainMenu[i][0]].getElementsByTagName("ul").length > 0)){
		
				  while(a[mainMenu[i][0]].getElementsByTagName("ul").length > x){
				      anch = a[mainMenu[i][0]].getElementsByTagName("ul")[x].parentNode.getElementsByTagName("a")[0].href;
				      name = a[mainMenu[i][0]].getElementsByTagName("ul")[x].parentNode.getElementsByTagName("a")[0].innerHTML;
				      str += "<li><a id='"+name+"' href='"+anch+"'>"+name+"</a></li>";
				
					    x++;
				  }
		  
			}else{
					str += a[mainMenu[i][0]].innerHTML;
			}
	
			//*************
			if(a[mainMenu[i][0]].getElementsByTagName("ul").length == 1){
	
	    		while(a[mainMenu[i][0]].getElementsByTagName("li").length > xx){
	
		  				if((a[mainMenu[i][0]].getElementsByTagName("li")[xx].className.split("subLists_").length > 1) && !(a[mainMenu[i][0]].getElementsByTagName("li")[xx].getElementsByTagName("ul").length > 0))
		    				str += "<li><a id='"+a[mainMenu[i][0]].getElementsByTagName("li")[xx].getElementsByTagName("a")[0].innerHTML+"' href='"+a[mainMenu[i][0]].getElementsByTagName("li")[xx].getElementsByTagName("a")[0].href+"'>"+a[mainMenu[i][0]].getElementsByTagName("li")[xx].getElementsByTagName("a")[0].innerHTML+"</a></li>";
		 		
		 					xx++;
	    		}
  		}
	
	
	str += '\n</ul>\n';
	x = 0;
	}
	
	i++;

}while(mainMenu.length > i);

//alert("menu2 str= " + str);

return str += '<div class="clearB2"></div>';

}

//******************************************
function trimAnchor(st){

var s ="";

s = st.split("</a>")[0];
s = s.split(">")[1];


return s;
}

//******************************************
function gege2(s){
	var arr = new Array();
	var n;
	var sid;
	var h;
	var x = 0;
	var ctr = 0;
	
do{

		
	if(document.getElementsByTagName("li")[x].className.split(s).length > 1 ){

	sid = document.getElementsByTagName("li")[x].parentNode.parentNode.getElementsByTagName("a")[0].innerHTML;
	n = document.getElementsByTagName("li")[x].getElementsByTagName("a")[0].innerHTML;
	h = document.getElementsByTagName("li")[x].getElementsByTagName("a")[0].href;
	
	arr[ctr++] = [sid,n,h];
	
	}
	x++;
	}while(document.getElementsByTagName("li").length > x);

return arr;

}