var itemDivId = {
   't1' : 'LabT1',
   't2' : 'LabT2',
   't3' : 'LabT3',
   't4' : 'LabT4',
   't5' : 'LabT5',
   't6' : 'LabT6'
   };
var menuId = {
   't1' : 'MenuT1',
   't2' : 'MenuT2',
   't3' : 'MenuT3',
   't4' : 'MenuT4',
   't5' : 'MenuT5',
   't6' : 'MenuT6'
   };
var itemTimeout = null;
var menuItemTimeout = null;
var timer = null;
var fontOn = '#333333';
var fontOff = '#ffffff';
var bgOn = '#ffcc00';
var bgOff = '#333333';
var currentMenu = null;

function topnavItemOn(section) {
   if (!currentMenu || currentMenu != document.getElementById(menuId[section])) {
      topnavCurrentItemOff();
      currentMenu = document.getElementById(menuId[section]);
      currentMenuItem = document.getElementById(itemDivId[section]);
      currentMenu.style.visibility = 'visible';
      //currentMenuItem.style.color = fontOn;
      currentMenuItem.className = 'LabelMenuOn';
      //currentMenuItem.style.backgroundColor = bgOn;
      //currentMenuItem.childNodes[0].style.color= fontOn;
   }
}

function topnavCurrentItemOff() {
   if (currentMenu != null) {
      currentMenu.style.visibility = 'hidden';
      currentMenuItem.className='LabelMenu';
	  //currentMenuItem.style.color = fontOff;
      //currentMenuItem.style.backgroundColor = bgOff;
      //currentMenuItem.childNodes[0].style.color = fontOff;
      currentMenu = null;
      currentMenuItem = null;
      //remove click-to-hide-menu handler
      document.onmouseup = function() {}
   }
}
function setvar(item) {
 topnavItemOn(item);
}

function openMenu(n,nn) {
 var i = 0
 for(i=1;i<n+1;i++) {
  var sel = document.getElementById('menu'+i);
  sel.style.display = 'none';
 }
 var sel = document.getElementById('menu'+nn);
 sel.style.display = 'block';
}

function chcolor(ele) {
 ele.className='color2';
}

function rpcolor(ele) {
 ele.className='color1';
}

function chcolor2(ele) {
 ele.className='color4';
}

function rpcolor2(ele) {
 ele.className='color3';
}

//  AJAX LIBRARY FUNCTION
function HTML_into( url, divname, dothisatend ) {
  if ( !url ) return;
  var req = false; // use local variable to allow simultaneous calls
  // branch for native XMLHttpRequest object
  if(window.XMLHttpRequest) {
    try {
      req = new XMLHttpRequest();
      //netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
    } catch(e) {
      req = false;
    }
  // branch for IE/Windows ActiveX version
  } else if(window.ActiveXObject) {
    try {
      req = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e) {
      try {
        req = new ActiveXObject("Microsoft.XMLHTTP");
      } catch(e) {
        req = false;
      }
    }
  }

  function processReqChange() {
    if ( req.readyState == 4 ) {  // only if req shows "loaded"
      if ( req.status == 200 || req.status == 0 ) {  // only if "OK"
        //alert("The result is:\n" + req.responseText);
        if(divname){
          var obj = document.getElementById(divname);
          if(obj) {
            obj.innerHTML = req.responseText; // obj is exactly the second parameter
          }
        }else{
          eval(req.responseText);
        }
        if(dothisatend) dothisatend(); // call back to callee
      } else {
        if( confirm("There was a problem retrieving the XML data:\n#" + req.status + ": " + req.statusText + "\nDo you want to see response?") ) {
          var dwin = open('','');
          dwin.document.write(req.responseText);
          dwin.document.close();
        }
      }
    }
  }

  if( req ) {
    req.onreadystatechange = processReqChange;
    req.open("GET", url, true); // yes, it's asynchronous
    req.setRequestHeader( "If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT" );
    req.send("");
  }
}
