//alert("Zoom Zoom ZOom Troniques Lah");
/*

This file contains the necessary functions to manipulate dropdown menu items
... Required File. DOM.js
... Extracted FROM
... Instant JavaScript, Martin Webb, Michel Plungjan, Keith Drakard, by McGraw Hill
... Created by Mariano S. Tanenglian, Jr. www.childoftheworld.com
...
... for Brandon Grossutti, Wolverton Securities
... Copyright © 2002.
*/

var timer, closing = true; outing = false;
var xOffset = 0;
var yOffset = 0;

function closeMenu() {
  closing = true;
  outing = true;
  timer = setTimeout('closeMenuAll()',500);
}

function keepOpen() {
  closing = false;
  outing = false;
  clearTimeout(timer);
}

function closeMenuAll() {
  if (window.DOMObjects && closing) {
    for (var i=0; i<DOMObjects.length; i++) {
      //* Original code blotted out
      //if (DOMObjects[i].id != 'toolbar')
      //*/
      if ((DOMObjects[i].id).indexOf("mbaritem") != -1){
        DOMElementHide(DOMObjects[i]);}
    }
  }
}

function openMenu(menu, x, y) {
  //alert('openMenu');
 
 var arglen = openMenu.arguments.length;
 var ilevel;
 var evalstr;
 var findcount;
 var foundcount;
 var scoreindex;
 var menuids;
 var menutemp;
  	//alert(window.DOMObjects);
  	if (window.DOMObjects) {
		//alert("Baaaaaa");
		//1) Extract IDs for IDs Over the Specified level if Level = 2
		      if (arglen > 3){
		      		//alert("arglen 3");
				ilevel = openMenu.arguments[openMenu.arguments.length - 1];
				//alert(ilevel);
				findcount = ilevel - 1;		    
				foundcount = 1;
				menuids = new Array();
				menutemp = menu;
				menuids[0] = menutemp;
				//alert("FIRST ITEM IS " + menuids[0]);
				for(var i = 1; i < (findcount + 1); i++){
					//alert("In Loop");
					scoreindex = menutemp.lastIndexOf("_");
					//alert(scoreindex);
					if(scoreindex < 0){
						menuids[foundcount] = menutemp;
						//alert("last menu is " + menuids[foundcount]);
						menutemp = "";
						break;
					} else {
						menuids[foundcount] = menutemp.substr(0, scoreindex);
						//alert("extracted MenuID for " + foundcount + " is: " + menuids[foundcount]);
						//alert("MenuID to be prior parse is " + menutemp);
						menutemp = menutemp.substring(0, scoreindex);
						//alert("MenuID to be after parse is " + menutemp);
					}//end if last index
					foundcount ++;
				}//end loop # 1
				evalstr = "";
				for(var i = 0; i < menuids.length; i++){
					if(DOMObjects[menuids[i]]){
						evalstr += "&&(DOMObjects[i].id != \'" + menuids[i] + "\')";
					}//end condition
				}//end loop # 2
				//alert(evalstr);
					evalstr = "((DOMObjects[i].id).indexOf(\"mbaritem\") != -1)" + evalstr;
					evalstr = "(" + evalstr + ")";
					
					//alert("Evaluated String: " + evalstr);
				//alert(eval("DOMObjects[\'toolbar\']"));
				//alert(eval("DOMObjects[\'toolbar\'].id != \'toolbar\'"));
		      } else {
				ilevel = 0
		      }//default ilevel = 0
		      
		//2 DO THE OPENING AND CLOSING OF MENUS
		
	    	for (var i=0; i<DOMObjects.length; i++){
		      //* Original code blotted out
		      //if (DOMObjects[i].id != 'toolbar' && DOMObjects[i].id != menu)
		      //*/
		      if ((arglen <= 3)||(ilevel <= 1)){
				if (((DOMObjects[i].id).indexOf("mbaritem") != -1) && (DOMObjects[i].id != menu)){
					//alert("Special hiding");
					DOMElementHide(DOMObjects[i]);
				}//end if condition if the level is 1 or less
		      } else {
		      		//alert(evalstr);
				qresult = eval(evalstr);
				//qresult = eval("((DOMObjects[i].id != \'toolbar\')&&(DOMObjects[i].id != \'toolbar\')&&((DOMObjects[i].id).indexOf(\"mbaritem\") != -1))");
				//alert(qresult + " : result for " + DOMObjects[i].id);
				//alert("The current item is \'" + DOMObjects[i].id + "\'. The results, mbaritem is found = " + (DOMObjects[i].id).indexOf("mbaritem") + "; not equal to mbaritem1 = " + (DOMObjects[i].id != 'mbaritem1') + "; not equal to mbaritem1_L2a = " + (DOMObjects[i].id != 'mbaritem1_L2a'));
				if(qresult){
					//alert("I am going to hide " + DOMObjects[i].id);
					DOMElementHide(DOMObjects[i]);
				}//				
		      }//end condition that this is a menu higher than level 1
		    keepOpen();

  		}//end for loop
		
		keepOpen();
		//alert("My left is " + (xOffset + x) + " where xOffset  is " + xOffset + " and x is " + x);
		DOMElementSetLeft(DOMObjects[menu],xOffset + x);
		DOMElementSetTop(DOMObjects[menu],yOffset + y);
		DOMElementShow(DOMObjects[menu]);


  	}//end if condition DOM Objects
}//end function openMenu


function start(barheight, xadd) {
//alert("DOMObjects " + DOMObjects);
  if (window.DOMObjects)
    DOMInitialize('span');
  if (window.DOMObjects) {
    //xOffset = DOMElementGetOffsetLeft(DOMObjects['mbaritem1']);
    //yOffset = DOMElementGetOffsetTop(DOMObjects['mbaritem1']) + 71;  
    xOffset = DOMElementGetOffsetLeft(DOMObjects['toolbar']) + xadd;
    yOffset = DOMElementGetOffsetTop(DOMObjects['toolbar']) + barheight;
    //alert(DOMElementGetOffsetTop(DOMObjects['toolbar']));
    //xOffset = absoluteleft;
    //yOffset = 71;

  }
}

