function toggleMenu(currElem,state) {
  stdBrowser = (document.getElementById('fileMenu')) ? true : false
  menuObj = (stdBrowser) ? document.getElementById(currElem).style : eval("document." + currElem)
  //alert(menuObj)
  menuObj.visibility = (stdBrowser) ? state : false
}


function setClass(currElem,action) {
  stdBrowser = (document.getElementById('fileMenu')) ? true : false
  for (var i = 1; i < 4; i++) {
    temp = currElem;
    setClass = "";
    if (action == "on") {
      alert('booger');
      //setClass = "live" + i;
    } else {
      setClass = "regext";
    }
    temp += i;
    menuObj = (stdBrowser) ? document.getElementById('fileMenu') : eval("document." + currElem)
    menuObj.className = (stdBrowser) ? setClass : false
  }

}


function builder(input,name) {
  var bits = input.split(",");
  this.display = bits[0];
  this.link = bits[1];
  this.folder = bits[2];
  this.hide = bits[3];
  this.id = "";
  if (name) { this.name = name; }

  // Build dynamic ids
  idArray = bits[0].split(" ");
  for (i = 0; i < idArray.length; i++) {
    // Clear out all non-alpha characters
    regexp = /[^a-z]/gi;
    idArray[i] = idArray[i].replace(regexp, "");
    this.id += idArray[i].charAt(0);
  }
}

function parseLink(newLink) {
  endPos = newLink.indexOf('$');
  menuLink = newLink.substring(0, endPos);
  menuPos = menuLink.indexOf('=');
  menuLink = menuLink.substring(menuPos + 1);
  newLink = newLink.substring(endPos + 2);
  return newLink;
}



var menus = new Array();
nextIndex = 0;

function saveMenus(input,name,opener) {
  menus[nextIndex] = input
  menus[nextIndex].name = name
  menus[nextIndex].opener = opener
  nextIndex++
}

var homePage = "";

var newClass = "";
var defClass = "";
var hrefClass = "";

// -------------------------------------------------------------------------
/////////////////////////////////////////////////////////////////
//
//  Script Section
//
//  Please do not change anything below unless you know what you're doing.






//  If browser version is >= 4, go ahead and run the script
if (isOkay > 0)  {
  // Global vars
  var extended = 0;
  var doChange = 0;


  // Find current folder and page name of document
  currURL = document.URL;
  currExtPos = document.URL.lastIndexOf('.');
  currFolderPos = document.URL.lastIndexOf('/');
  currPage = document.URL.substring(currFolderPos+1, currExtPos);
  currFolder = document.URL.substring(0, currFolderPos);
  currFolderPos = currFolder.lastIndexOf('/');
  currFolderPos = currFolderPos+1;
  currFolder = currFolder.substr(currFolderPos);






  function buildLinks(format, newMenu, isExt) {
    //Local vars
    var opener, completed, display, link, folder, hide;
    var menuLink, formatting, isFormat, html;
    var regexp, endPos, menuPos, ext, extended;
    var spacerClass, id, linkOpener, mainMenuOpener;
    var anchor, anchorPos;


    spacerClass = "menuSpacerMain";
    completed = "";
    formatting = "";
    html = "";
    mainMenuOpener = true;


    if (isExt == 1) {
      spacerClass = "menuSpacer";
      opener = newMenu.opener;
      openerTitle = "";
      openerUrl = "";
      completed += "<div id=\"" + newMenu.name + "\"";
      completed += " onMouseOver=\"toggleMenu(this.id, 'visible')";

      if (opener) {
        openerArray = opener.split("-");
        if (openerArray[1]) {
          opener = openerArray[0];
          linkOpener = "";
          menuLength = menus.length;

          for (var j = 0; j < menuLength; j++) {
            if (menus[j].name == opener) {
              mainMenuOpener = false;
              openerTitle = menus[j][openerArray[1]].display;
              linkOpener = menus[j].name;
              linkOpener += menus[j][openerArray[1]].id;
              openerUrl = menus[j][openerArray[1]].link;
            }
          }
          if (mainMenuOpener) {
            openerTitle = links[openerArray[1]].display;
            if (links[openerArray[1]].link) {
              openerUrl = links[openerArray[1]].link;
            }
          }
        }
        openerUrl = parseLink(openerUrl);
        openerUrl = openerUrl.substring(3);
      }
      if (!mainMenuOpener) {
        completed += "\; toggleMenu('" + opener + "', 'visible')";
      }
      completed += "\" onMouseOut=\"";
      if (opener && !mainMenuOpener) {
        //completed += "setClass('" + linkOpener + "', 'on')\; ";
        completed += "toggleMenu('" + opener + "', 'hidden')\; ";
      }
      completed += "toggleMenu(this.id, 'hidden')";
      completed += "\">";
      completed += "<table cellpadding=\"0\" cellspacing=\"0\" width=\"100%\"";
      completed += "\">";
      completed += "<tr><td colspan=\"3\" align=\"center\" class=\"sgtitles\">";
      completed += "....<a href=\"" + openerUrl + "\" class=\"sgtitles\">" + openerTitle + "</a>....</td></tr>";
    }

    // Copy format[] into formatting
    for (var i =0; i < format.length; i++) {
      formatting += escape(format[i]) + "\n";
    }

    // Loop on each newMenu[] item
    for (var i =0; i < newMenu.length; i++) {

      extended = 0;

     // Extract and save vars we will use
      display = escape(newMenu[i].display);
      id = newMenu.name;
      id += newMenu[i].id;
      link = newMenu[i].link;
      regexp = /menu=/;
      if (regexp.test(link)) {
        extended = 1;
        endPos = link.indexOf('$');
        menuLink = link.substring(0, endPos);
        menuPos = menuLink.indexOf('=');
        menuLink = menuLink.substring(menuPos + 1);
        link = link.substring(endPos + 2);
      }
      anchor = "";
      anchorPos = link.indexOf('#');
      if (anchorPos) {
        anchor = link.substring(anchorPos+1);
        anchor = " onClick=\"placeArrow('" + anchor + "')\"";
      }
      urlExtPos = link.lastIndexOf('.');
      urlPagePos = link.lastIndexOf('/');
      linkName = link.substring(urlPagePos+1, urlExtPos);
      folder = newMenu[i].folder;
      hide = newMenu[i].hide;
      if (folder == 1) {
        folder = "";
        hide = 1;
      }

      // Decide if need to change the class
      //if (homePage == document.URL) {doChange = 1};
      if (linkName == currPage) {doChange = 1};
      if (folder == currFolder)  {doChange = 1};
      if (doChange && !isExt) {
        var theClass = newClass;
        var newhrefClass = "";
      }
      else {
        var theClass = defClass;
        var newhrefClass = hrefClass;
      }

      // Copy formatting into temp isFormat and begin
      isFormat = formatting;

      html = "";
      if (hide == 1) {html += '<!-- Hide for now\n'};
      regexp = /--url--/g;
      isFormat = isFormat.replace(regexp, link);
      live1 = "";
      live2 = "";
      live3 = "";
      ext = "";
      if (extended == 1) {
        live1 = " id=\"" + id + "1\"";
        live2 = " id=\"" + id + "2\"";
        live3 = " id=\"" + id + "3\"";
        ext = " onMouseOver=\"toggleMenu('" + menuLink + "', 'visible')\"";
        ext += " onMouseOut=\"toggleMenu('" + menuLink + "', 'hidden')\"";
      }
      regexp = /--ext--/g;
      isFormat = isFormat.replace(regexp, ext);
      regexp = /--def--/g;
      isFormat = isFormat.replace(regexp, theClass);
      regexp = /--href--/g;
      isFormat = isFormat.replace(regexp, newhrefClass);
      regexp = /--anchor--/g;
      isFormat = isFormat.replace(regexp, anchor);
      regexp = /--live1--/g;
      isFormat = isFormat.replace(regexp, live1);
      regexp = /--live2--/g;
      isFormat = isFormat.replace(regexp, live2);
      regexp = /--live3--/g;
      isFormat = isFormat.replace(regexp, live3);
      regexp = /--display--/g;
      isFormat = isFormat.replace(regexp, display);
      regexp = /--spacer--/g;
      isFormat = isFormat.replace(regexp, spacerClass);
      isFormat = unescape(isFormat);
      html += isFormat;
      if (hide == 1) {html += 'end hide // -->\n'};
      completed += html;
      hide = "";
      doChange = "";
      extended = 0;
      anchorPos = 0;
    }
    if (isExt) {
      completed += "</table>";
      completed += "</div>\n"
    }

    //alert(completed);
    return completed;

  }
}