

var isDOM = (document.getElementById ? true : false); 
var isIE4 = ((document.all && !isDOM) ? true : false);
var isNS4 = (document.layers ? true : false);

function getRef(id) {
  if (isDOM) return document.getElementById(id);
  if (isIE4) return document.all[id];
  if (isNS4) return document.layers[id];
}

function getSty(id) {
  return (isNS4 ? getRef(id) : getRef(id).style);
} 

// Hide timeout.
var popTimer = 0;

// Array showing highlighted menu items.
var litNow = new Array();

function popOver(menuNum, itemNum) {
  clearTimeout(popTimer);
  hideAllBut(menuNum);
  litNow = getTree(menuNum, itemNum);
  changeCol(litNow, true);
  targetNum = menu[menuNum][itemNum].target;
  if (targetNum > 0) {
    thisX = parseInt(menu[menuNum][0].ref.left) + parseInt(menu[menuNum][itemNum].ref.left);
    thisY = parseInt(menu[menuNum][0].ref.top) + parseInt(menu[menuNum][itemNum].ref.top);
    with (menu[targetNum][0].ref) {
      left = parseInt(thisX + menu[targetNum][0].x);
      top = parseInt(thisY + menu[targetNum][0].y);
      visibility = 'visible';
      }
   }
}

function popOut(menuNum, itemNum) {
  if ((menuNum == 0) && !menu[menuNum][itemNum].target)
    hideAllBut(0)
  else
    popTimer = setTimeout('hideAllBut(0)', 500);
}

function getTree(menuNum, itemNum) {

// Array index is the menu number. The contents are null (if that menu is not a parent)
// or the item number in that menu that is an ancestor (to light it up).
itemArray = new Array(menu.length);

  while(1) {
    itemArray[menuNum] = itemNum;
    // If we've reached the top of the hierarchy, return.
    if (menuNum == 0) return itemArray;
    itemNum = menu[menuNum][0].parentItem;
    menuNum = menu[menuNum][0].parentMenu;
  }
}

// Pass an array and a boolean to specify color change, true = over color.

function changeCol(changeArray, isOver) {
  for (menuCount = 0; menuCount < changeArray.length; menuCount++) {
    if (changeArray[menuCount]) {
      newCol = isOver ? menu[menuCount][0].overCol : menu[menuCount][0].backCol;

      // Change the colors of the div/layer background.
      with (menu[menuCount][changeArray[menuCount]].ref) {
        if (isNS4) bgColor = newCol;
        else backgroundColor = newCol;
      }
    }
  }
}

function hideAllBut(menuNum) {
  var keepMenus = getTree(menuNum, 1);
  for (count = 0; count < menu.length; count++)
  if (!keepMenus[count])
  menu[count][0].ref.visibility = 'hidden';
  changeCol(litNow, false);
}

// *** MENU CONSTRUCTION FUNCTIONS ***

function Menu(isVert, popInd, x, y, width, overCol, backCol, borderClass, textClass) {
  this.isVert = isVert;  // True or false - a vertical menu?
  this.popInd = popInd  // The popout indicator used (if any) for this menu.
  this.x = x;  // Position and size settings.
  this.y = y;
  this.width = width;
  this.overCol = overCol;  // Colors of menu and items.
  this.backCol = backCol;
  this.borderClass = borderClass;  // The stylesheet class used for item borders and the text within items.
  this.textClass = textClass; 
  this.parentMenu = null;  // Parent menu and item numbers, indexed later.
  this.parentItem = null;
  this.ref = null;  // Reference to the object's style properties (set later).
}

function Item(text, href, frame, length, spacing, target) {
  this.text = text;
  this.href = href;
  this.frame = frame;
  this.length = length;
  this.spacing = spacing;
  this.target = target;
  this.ref = null;  // Reference to the object's style properties (set later).
}

function writeMenus() {
  if (!isDOM && !isIE4 && !isNS4) return;

  for (currMenu = 0; currMenu < menu.length; currMenu++) with (menu[currMenu][0]) {
    // Variable for holding HTML for items and positions of next item.
    var str = '', itemX = 0, itemY = 0;

    // Remember, items start from 1 in the array (0 is menu object itself, above).
    // Also use properties of each item nested in the other with() for construction.
    for (currItem = 1; currItem < menu[currMenu].length; currItem++) with (menu[currMenu][currItem]) {
      var itemID = 'menu' + currMenu + 'item' + currItem;

      // The width and height of the menu item - dependent on orientation!
      var w = (isVert ? width : length);
      var h = (isVert ? length : width);

      // Create a div or layer text string with appropriate styles/properties.
      // Thanks to Paul Maden (www.paulmaden.com) for helping debug this in IE4, apparently
      // the width must be a miniumum of 3 for it to work in that browser.
      if (isDOM || isIE4) {
        str += '<div id="' + itemID + '" style="position: absolute; left: ' + itemX 
	+ '; top: ' + itemY + '; width: ' + w + '; height: ' + h + '; visibility: inherit; ';
        if (backCol) str += 'background: ' + backCol + '; ';
        str += '" ';
      } // for isDOM

      if (isNS4) {
        str += '<layer id="' + itemID + '" left="' + itemX + '" top="' + itemY 
	+ '" width="' +  w + '" height="' + h + '" visibility="inherit" ';
        if (backCol) str += 'bgcolor="' + backCol + '" ';
      } // if isNS4

      if (borderClass) str += 'class="' + borderClass + '" ';

      // Add mouseover handlers and finish div/layer.
      str += 'onMouseOver="popOver(' + currMenu + ',' + currItem + ')" onMouseOut="popOut(' 
      + currMenu         + currMenu + ',' + currItem + ')">';

      // Add contents of item (default: table with link inside).
      // In IE/NS6+, add padding if there's a border to emulate NS4's layer padding.
      // If a target frame is specified, also add that to the <a> tag.

      str += '<table width="' + (w - 8) + '" border="0" cellspacing="0" cellpadding="' 
      + (!isNS4 &&       borderClass ? 3 : 0) + '"><tr><td align="left" height="' 
      + (h - 7) + '">' + '<a class="' +       textClass + '" href="' + href + '"' 
      + (frame ? ' target="' + frame + '">' : '>') + text +         '</a></td>';
      if (target > 0) {

        // Set target's parents to this menu item.
        menu[target][0].parentMenu = currMenu;
        menu[target][0].parentItem = currItem;

        // Add a popout indicator.
        if (popInd) str += '<td class="' + textClass + '" align="right">' + popInd + '</td>';
      }  // if target

      str += '</tr></table>' + (isNS4 ? '</layer>' : '</div>');
      if (isVert) itemY += length + spacing;
      else itemX += length + spacing;
    } // for currItem
    if (isDOM) {
      var newDiv = document.createElement('div');
      document.getElementsByTagName('body').item(0).appendChild(newDiv);
      newDiv.innerHTML = str;
      ref = newDiv.style;
      ref.position = 'absolute';
      ref.visibility = 'hidden';
    } // if isDOM

    // Insert a div tag to the end of the BODY with menu HTML in place for IE4.
    if (isIE4) {
      document.body.insertAdjacentHTML('beforeEnd', '<div id="menu' + currMenu + 'div" ' +         
      'style="position: absolute; visibility: hidden">' + str + '</div>');
      ref = getSty('menu' + currMenu + 'div');
    } // isIE4

    // In NS4, create a reference to a new layer and write the items to it.
    if (isNS4) {
      ref = new Layer(0);
      ref.document.write(str);
      ref.document.close();
    } // isNS4

    for (currItem = 1; currItem < menu[currMenu].length; currItem++) {
      itemName = 'menu' + currMenu + 'item' + currItem;
      if (isDOM || isIE4) menu[currMenu][currItem].ref = getSty(itemName);
      if (isNS4) menu[currMenu][currItem].ref = ref.document[itemName];
    } // for currItem
  } // for currMenu

  with(menu[0][0]) {
    ref.left = x;
    ref.top = y;
    ref.visibility = 'visible';
  } // with menu

} // function writeMenus


// Syntaxes: *** START EDITING HERE, READ THIS SECTION CAREFULLY! ***
//
// menu[menuNumber][0] = new Menu(Vertical menu? (true/false), 'popout indicator', left, top,
// width, 'mouseover color', 'background color', 'border stylesheet', 'text stylesheet');
//
// Left and Top are measured on-the-fly relative to the top-left corner of its trigger, or
// for the root menu, the top-left corner of the page.
//
// menu[menuNumber][itemNumber] = new Item('Text', 'URL', 'target frame', length of menu item,
//  additional spacing to next menu item, number of target menu to popout);
//
// If no target menu (popout) is desired, set it to 0. Likewise, if your site does not use
// frames, pass an empty string as a frame target.
//
// Something that needs explaining - the Vertical Menu setup. You can see most menus below
// are 'true', that is they are vertical, except for the first root menu. The 'length' and
// 'width' of an item depends on its orientation -- length is how long the item runs for in
// the direction of the menu, and width is the lateral dimension of the menu. Just look at
// the examples and tweak the numbers, they'll make sense eventually :).

var menu = new Array();

// Default colors passed to most menu constructors (just passed to functions, not
// a global variable - makes things easier to change later in bulk).
var topOver = '#ffff99';  // highlighted top menu item bkgrnd color
var topBack = '#ffffff';  // unhighlighted top menu item bg color
var defOver = '#ffff99';  // highlighted menu item bg color
var defBack = '#ddeeff';  // unhighlighted menu item bg color
var subBack = '#dddddd';  // unhighlighted submenu item bg color
var s = '&nbsp ';  // spacing in front of menu items

// Default 'length' of menu items - item height if menu is vertical, width if horizontal.
var defLength = 22;

// Menu 0 is the special, 'root' menu from which everything else arises.
menu[0] = new Array();

// A non-vertical menu with a few different colors and no popout indicator, as an example.
// *** MOVE ROOT MENU AROUND HERE ***  it's positioned at (5, 0) and is 17px high now.
menu[0][0] = new Menu(false, '', 25, 0, 17, topOver, topBack, '', 'menuText');

// Notice how the targets are all set to nonzero values...
// The 'length' of each of these items is 40, and there is spacing of 10 to the next item.

menu[0][1] = new Item(s+s+'NPS', 'http://www.norman.k12.ok.us', '', 50, 10, 39);
menu[0][2] = new Item(s+s+'Schools', 'http://www.norman.k12.ok.us/002/lib/schools.php', '', 70, 10, 5);
menu[0][3] = new Item(s+s+'Admin', 'http://www.norman.k12.ok.us/directory/?types=admin', '', 60, 10, 6);
// menu[0][4] = new Item(s+s+'DCC', 'http://www.norman.k12.ok.us/002/', '', 45, 10, 2);
menu[0][4] = new Item(s+s+'Technology', 'http://www.norman.k12.ok.us/002/doc/', '', 90, 10, 2);
// An example of a link with a target frame/window as well...
menu[0][5] = new Item(s+s+'Site Map', 'http://www.norman.k12.ok.us/002/lib/schools.php', '', 70, 10, 0);
menu[0][6] = new Item(s+s+'Search', 'http://www.norman.k12.ok.us/002/search/', '', 60, 10, 0);
menu[0][7] = new Item(s+s+'Comments', 'http://www.norman.k12.ok.us/002/lib/comments.php', '', 85, 10, 0);
menu[0][8] = new Item(s+s+'Sign in', 'https://www.norman.k12.ok.us/secure/menu/', '', 65, 10, 0);
// menu[0][10] = new Item(s+s+'TEST MENU!', 'http://www.norman.k12.ok.us/002/lib/_test.php', '', 120, 10, 0);



// Menu: DCC - currently unused !!! 
menu[1] = new Array();
// The File menu is positioned 0px across and 22 down from its trigger, and is 80 wide.
// All text in this menu has the stylesheet class 'item' -- see the <style> section above.
// We've passed a 'greater-than' sign '>' as a popout indicator. Try an image...?
menu[1][0] = new Menu(true, '+', 0, 22, 130, defOver, defBack, 'menuBorder', 'menuText');
menu[1][1] = new Item(s+'Site Contact List', 'http://www.norman.k12.ok.us/002/lib/scontacts.php', '', defLength, 0, 0);
menu[1][2] = new Item(s+'Site Visit Schedule', 'http://www.norman.k12.ok.us/002/lib/sitevisits.php', '', defLength, 0, 0);
// Non-zero target means this will trigger a popout -- menu[4] which is the 'Reopen' menu.
menu[1][3] = new Item(s+'Internet Filter', 'http://www.norman.k12.ok.us/002/lib/internet.php', '', defLength, 0, 0);
menu[1][4] = new Item(s+'School Boundaries', 'http://www.norman.k12.ok.us/002/lib/boundaries.php', '', defLength, 0, 0);
menu[1][5] = new Item(s+'Tech Work Request', 'http://www.norman.k12.ok.us/002/lib/techworkreq.php', '', defLength, 0, 0);
menu[1][6] = new Item(s+'Links', 'http://www.norman.k12.ok.us/002/lib/links.php', '', defLength, 0, 0);


// Non-zero target means this will trigger a popout -- menu[4] which is the 'Reopen' menu.
// menu[1][3] = new Item('Reopen', 'http://www.normanfirst.org/ministry.htm', '', defLength, 0, 4);


// Menu: Tech Help
menu[2] = new Array();
menu[2][0] = new Menu(true, '+', 0, 22, 140, defOver, defBack, 'menuBorder', 'menuText');
menu[2][1] = new Item(s+'New Equipment', 'http://www.norman.k12.ok.us/002/lib/newequip.php', '', defLength, 0, 4);
menu[2][2] = new Item(s+'Technology Vendors', 'http://www.norman.k12.ok.us/002/lib/vendors.php', '', defLength, 0, 0);
menu[2][3] = new Item(s+'DCC Home Page', 'http://www.norman.k12.ok.us/002/', '', defLength, 0, 0);
menu[2][4] = new Item(s+'ISC Home Page', 'http://www.norman.k12.ok.us/095/', '', defLength, 0, 0);
menu[2][5] = new Item(s+'NPS Warehouse', 'http://www.norman.k12.ok.us/002/lib/warehouse.php', '', defLength, 0, 0);
menu[2][6] = new Item(s+'Tech Work Request', 'http://www.norman.k12.ok.us/002/lib/techworkreq.php', '', defLength, 0, 0);
menu[2][7] = new Item(s+'Site Contact Info', 'http://www.norman.k12.ok.us/002/sc/', '', defLength, 0, 0);
menu[2][8] = new Item(s+'Wireless Info', 'http://www.norman.k12.ok.us/002/wlan/', '', defLength, 0, 0);
menu[2][9] = new Item(s+'Software', 'http://www.norman.k12.ok.us/002/sw/', '', defLength, 0, 0);
menu[2][10] = new Item(s+'Internet Filter', 'http://www.norman.k12.ok.us/002/lib/internet.php', '', defLength, 0, 0);
menu[2][11] = new Item(s+'Email & Spam', 'http://www.norman.k12.ok.us/002/doc/email/', '', defLength, 0, 0);
menu[2][12] = new Item(s+'Viruses & Malware', 'http://www.norman.k12.ok.us/002/doc/virus/', '', defLength, 0, 0);
menu[2][13] = new Item(s+'Web Pages', 'http://www.norman.k12.ok.us/002/doc/web/', '', defLength, 0, 0);
menu[2][14] = new Item(s+'UDT Tour', 'http://www.norman.k12.ok.us/002/lib/udttour.php', '', defLength, 0, 0);
menu[2][15] = new Item(s+'UDT Compatibility', 'http://www.norman.k12.ok.us/002/lib/udtcomp.php', '', defLength, 0, 0);
menu[2][16] = new Item(s+'Troubleshooting', 'http://www.norman.k12.ok.us/002/lib/links.php#tips', '', defLength, 0, 0);
menu[2][17] = new Item(s+'Windows XP', 'http://www.norman.k12.ok.us/002/doc/xp', '', defLength, 0, 0);
menu[2][18] = new Item(s+'Windows NT4', 'http://www.norman.k12.ok.us/002/doc/nt4', '', defLength, 0, 0);
menu[2][19] = new Item(s+'Windows 95/98', 'http://www.norman.k12.ok.us/002/doc/9x/', '', defLength, 0, 0);
menu[2][20] = new Item(s+'AS400', 'http://www.norman.k12.ok.us/002/doc/as400/', '', defLength, 0, 0);
menu[2][21] = new Item(s+'Macintosh', 'http://www.norman.k12.ok.us/002/doc/mac/', '', defLength, 0, 0);
menu[2][22] = new Item(s+'Lots of Links', 'http://www.norman.k12.ok.us/002/lib/links.php', '', defLength, 0, 0);



// Menu: Hardware
menu[3] = new Array();
menu[3][0] = new Menu(true, '+', 0, 22, 135, defOver, defBack, 'menuBorder', 'menuText');
menu[3][1] = new Item(s+'Dell Support', 'http://www.norman.k12.ok.us/002/lib/dell.php', '', defLength, 0, 0);
menu[3][2] = new Item(s+'Compaq Support', 'http://www.norman.k12.ok.us/002/lib/compaq.php', '', defLength, 0, 0);
menu[3][3] = new Item(s+'Gateway Support', 'http://www.norman.k12.ok.us/002/lib/gateway.php', '', defLength, 0, 0);
menu[3][4] = new Item(s+'Tech Work Request', 'http://www.norman.k12.ok.us/002/lib/techworkreq.php', '', defLength, 0, 0);



// Menu: New Equipment
menu[4] = new Array();
// Leftwards popout with a negative x relative to its trigger.
menu[4][0] = new Menu(true, '+', 125, 0, 90, defOver, subBack, 'menuBorder', 'menuText');
menu[4][1] = new Item(s+'Computers', 'http://www.norman.k12.ok.us/002/lib/newcomputer.php', '', 20, 0, 0);
menu[4][2] = new Item(s+'Printers', 'http://www.norman.k12.ok.us/002/lib/newprinter.php', '', 20, 0, 0);
menu[4][3] = new Item(s+'Wireless', 'http://www.norman.k12.ok.us/002/lib/newap.php', '', 20, 0, 0);
menu[4][4] = new Item(s+'Displays', 'http://www.norman.k12.ok.us/002/lib/newdisplays.php', '', 20, 0, 0);
menu[4][5] = new Item(s+'Scanners', 'http://www.norman.k12.ok.us/002/lib/newscanner.php', '', 20, 0, 0);
menu[4][6] = new Item(s+'Cables', 'http://www.norman.k12.ok.us/002/lib/warehouse.php', '', 20, 0, 0);
menu[4][7] = new Item(s+'Switches', 'http://www.norman.k12.ok.us/002/lib/warehouse.php#switch', '', 20, 0, 0);
menu[4][8] = new Item(s+'Servers', 'http://www.norman.k12.ok.us/002/lib/newserver.php', '', 20, 0, 0);
menu[4][9] = new Item(s+'Cameras', 'http://www.norman.k12.ok.us/002/lib/newcamera.php', '', 20, 0, 0);
menu[4][10] = new Item(s+'Projectors', 'http://www.norman.k12.ok.us/002/lib/newprojector.php', '', 20, 0, 0);



// Menu: Schools
menu[5] = new Array();
menu[5][0] = new Menu(true, '+', 0, 22, 150, defOver, defBack, 'menuBorder', 'menuText');
menu[5][1] = new Item(s+'Elementary Schools', 'http://www.norman.k12.ok.us/directory/?types=es', '', defLength, 0, 8);
menu[5][2] = new Item(s+'Middle Schools', 'http://www.norman.k12.ok.us/directory/?types=ms', '', defLength, 0, 9);
menu[5][3] = new Item(s+'High Schools', 'http://www.norman.k12.ok.us/directory/?types=hs', '', defLength, 0, 10);
menu[5][4] = new Item(s+'Alternative Schools', 'http://www.norman.k12.ok.us/directory/?types=ae', '', defLength, 0, 36);
menu[5][5] = new Item(s+'School Boundaries', 'http://www.norman.k12.ok.us/002/lib/boundaries.php', '', defLength, 0, 0);
menu[5][6] = new Item(s+'Standardized Tests', ' http://staff.norman.k12.ok.us/~donnaw/testing.htm', '', defLength, 0, 0);



// Menu: Admin
menu[6] = new Array();
menu[6][0] = new Menu(true, '+', 0, 22, 260, defOver, defBack, 'menuBorder', 'menuText');
menu[6][1] = new Item(s+'Accounting Department', 'http://www.norman.k12.ok.us/001/acc/', '', defLength, 0, 0);
menu[6][2] = new Item(s+'Administrative Services Center (ASC)', 'http://www.norman.k12.ok.us/001/', '', defLength, 0, 7);
menu[6][3] = new Item(s+'Athletics Department', 'http://www.norman.k12.ok.us/site/athl/', '', defLength, 0, 46);
menu[6][4] = new Item(s+'Central Services Center (CSC)', 'http://www.norman.k12.ok.us/site/095/', '', defLength, 0, 40);
menu[6][5] = new Item(s+'Curriculum Center (CC)', 'http://www.norman.k12.ok.us/088/', '', defLength, 0, 41);
menu[6][6] = new Item(s+'District Computer Center (DCC)', 'http://www.norman.k12.ok.us/002/', '', defLength, 0, 26);
menu[6][7] = new Item(s+'District Forms', 'http://www.norman.k12.ok.us/001/pur/forms.php', '', defLength, 0, 0);
menu[6][8] = new Item(s+'Fine & Performing Arts (FPA)', 'http://www.norman.k12.ok.us/fpa/', '', defLength, 0, 44);
menu[6][9] = new Item(s+'Gifted & Testing', 'http://staff.norman.k12.ok.us/~donnaw/', '', defLength, 0, 0);
menu[6][10] = new Item(s+'Indian Education', 'http://www.norman.k12.ok.us/site/indianed/', '', defLength, 0, 45);
menu[6][11] = new Item(s+'Instructional Services Center (ISC)', 'http://www.norman.k12.ok.us/092/', '', defLength, 0, 27);
menu[6][12] = new Item(s+'Personnel Department', 'http://www.norman.k12.ok.us/site/personnel/', '', defLength, 0, 49);
menu[6][13] = new Item(s+'Professional Development Center (PDC)', 'http://www.norman.k12.ok.us/090/', '', defLength, 0, 28);
menu[6][14] = new Item(s+'Public Relations / &nbsp&nbspCommunications', 'http://www.norman.k12.ok.us/001/pr/', '', defLength, 0, 0);
menu[6][15] = new Item(s+'Purchasing Department', 'http://www.norman.k12.ok.us/001/pur/', '', defLength, 0, 0);
menu[6][16] = new Item(s+'Safety & Security', 'http://www.norman.k12.ok.us/directory/?types=admin', '', defLength, 0, 42);
menu[6][17] = new Item(s+'Special Services', 'http://www.norman.k12.ok.us/directory/?types=admin', '', defLength, 0, 43);
menu[6][18] = new Item(s+'Transportation', 'http://www.norman.k12.ok.us/site/095/', '', defLength, 0, 47);
menu[6][19] = new Item(s+'Video Resource Center (VRC)', 'http://www.norman.k12.ok.us/087/', '', defLength, 0, 29);

// Menu: ASC
menu[7] = new Array();
menu[7][0] = new Menu(true, '+', 250, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
// menu[7][0] = new Menu(true, '+', 250, 0, 120, defOver, subBack, 'menuBorder', 'menuText');
// menu[7][1] = new Item(s+'ASC Home Page', 'http://www.norman.k12.ok.us/001/', '', defLength, 0, 0);
menu[7][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=001', '', defLength, 0, 0);
// menu[7][2] = new Item(s+'District Forms', 'http://www.norman.k12.ok.us/001/pur/forms.php', '', defLength, 0, 0);
// menu[7][3] = new Item(s+'Accounting', 'http://www.norman.k12.ok.us/001/acc/', '', defLength, 0, 0);
// menu[7][4] = new Item(s+'Personnel', 'http://www.norman.k12.ok.us/site/personnel/', '', defLength, 0, 0);
// menu[7][5] = new Item(s+'Purchasing', 'http://www.norman.k12.ok.us/001/pur/', '', defLength, 0, 0);
// menu[7][6] = new Item(s+'Public Relations / &nbsp&nbspCommunications', 'http://www.norman.k12.ok.us/001/pr/', '', defLength, 0, 0);


// Menu: Elementary Schools
menu[8] = new Array();
menu[8][0] = new Menu(true, '+', 140, 0, 105, defOver, subBack, 'menuBorder', 'menuText');
menu[8][1] = new Item(s+'Adams', 'http://www.norman.k12.ok.us/110/', '', defLength, 0, 11);
menu[8][2] = new Item(s+'Cleveland', 'http://www.norman.k12.ok.us/112/', '', defLength, 0, 12);
menu[8][3] = new Item(s+'Eisenhower', 'http://www.norman.k12.ok.us/140/', '', defLength, 0, 13);
menu[8][4] = new Item(s+'Jackson', 'http://www.norman.k12.ok.us/115/', '', defLength, 0, 14);
menu[8][5] = new Item(s+'Jefferson', 'http://www.norman.k12.ok.us/120/', '', defLength, 0, 15);
menu[8][6] = new Item(s+'Kennedy', 'http://www.norman.k12.ok.us/122/', '', defLength, 0, 16);
menu[8][7] = new Item(s+'Lakeview', 'http://www.norman.k12.ok.us/107/', '', defLength, 0, 17);
menu[8][8] = new Item(s+'Lincoln', 'http://www.norman.k12.ok.us/125/', '', defLength, 0, 18);
menu[8][9] = new Item(s+'Madison', 'http://www.norman.k12.ok.us/130/', '', defLength, 0, 19);
menu[8][10] = new Item(s+'McKinley', 'http://www.norman.k12.ok.us/135/', '', defLength, 0, 20);
menu[8][11] = new Item(s+'Monroe', 'http://www.norman.k12.ok.us/150/', '', defLength, 0, 21);
menu[8][12] = new Item(s+'Roosevelt', 'http://www.norman.k12.ok.us/153/', '', defLength, 0, 22);
menu[8][13] = new Item(s+'Truman', 'http://www.norman.k12.ok.us/155/', '', defLength, 0, 23);
menu[8][14] = new Item(s+'Washington', 'http://www.norman.k12.ok.us/160/', '', defLength, 0, 24);
menu[8][15] = new Item(s+'Wilson', 'http://www.norman.k12.ok.us/145/', '', defLength, 0, 25);


// Menu: Middle Schools
menu[9] = new Array();
menu[9][0] = new Menu(true, '+', 140, 0, 95, defOver, subBack, 'menuBorder', 'menuText');
menu[9][1] = new Item(s+'Alcott', 'http://www.norman.k12.ok.us/501/', '', defLength, 0, 30);
menu[9][2] = new Item(s+'Irving', 'http://www.norman.k12.ok.us/500/', '', defLength, 0, 31);
menu[9][3] = new Item(s+'Longfellow', 'http://www.norman.k12.ok.us/502/', '', defLength, 0, 32);
menu[9][4] = new Item(s+'Whittier', 'http://www.norman.k12.ok.us/504/', '', defLength, 0, 33);

// Menu: High Schools
menu[10] = new Array();
menu[10][0] = new Menu(true, '+', 140, 0, 135, defOver, subBack, 'menuBorder', 'menuText');
menu[10][1] = new Item(s+'Norman HS', 'http://www.norman.k12.ok.us/705/', '', defLength, 0, 34);
menu[10][2] = new Item(s+'Norman North HS', 'http://www.norman.k12.ok.us/710/', '', defLength, 0, 35);

// Menu: Adams
menu[11] = new Array();
menu[11][0] = new Menu(true, '+', 95, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[11][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=110', '', defLength, 0, 0);

// Menu: Cleveland
menu[12] = new Array();
menu[12][0] = new Menu(true, '+', 95, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[12][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=112', '', defLength, 0, 0);

// Menu: Eisenhower
menu[13] = new Array();
menu[13][0] = new Menu(true, '+', 95, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[13][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=140', '', defLength, 0, 0);

// Menu: Jackson
menu[14] = new Array();
menu[14][0] = new Menu(true, '+', 95, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[14][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=115', '', defLength, 0, 0);

// Menu: Jefferson
menu[15] = new Array();
menu[15][0] = new Menu(true, '+', 95, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[15][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=120', '', defLength, 0, 0);

// Menu: Kennedy
menu[16] = new Array();
menu[16][0] = new Menu(true, '+', 95, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[16][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=122', '', defLength, 0, 0);

// Menu: Lakeview
menu[17] = new Array();
menu[17][0] = new Menu(true, '+', 95, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[17][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=107', '', defLength, 0, 0);

// Menu: Lincoln
menu[18] = new Array();
menu[18][0] = new Menu(true, '+', 95, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[18][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=125', '', defLength, 0, 0);

// Menu: Madison
menu[19] = new Array();
menu[19][0] = new Menu(true, '+', 95, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[19][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=130', '', defLength, 0, 0);

// Menu: McKinley
menu[20] = new Array();
menu[20][0] = new Menu(true, '+', 95, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[20][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=135', '', defLength, 0, 0);

// Menu: Monroe
menu[21] = new Array();
menu[21][0] = new Menu(true, '+', 95, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[21][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=150', '', defLength, 0, 0);

// Menu: Roosevelt
menu[22] = new Array();
menu[22][0] = new Menu(true, '+', 95, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[22][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=153', '', defLength, 0, 0);

// Menu: Truman
menu[23] = new Array();
menu[23][0] = new Menu(true, '+', 95, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[23][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=155', '', defLength, 0, 0);

// Menu: Washington
menu[24] = new Array();
menu[24][0] = new Menu(true, '+', 95, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[24][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=160', '', defLength, 0, 0);

// Menu: Wilson
menu[25] = new Array();
menu[25][0] = new Menu(true, '+', 95, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[25][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=145', '', defLength, 0, 0);

// Menu: DCC
menu[26] = new Array();
menu[26][0] = new Menu(true, '+', 250, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[26][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=002', '', defLength, 0, 0);
// menu[11][2] = new Item(s+'DCC Home Page', 'http://www.norman.k12.ok.us/002/', '', defLength, 0, 0);

// Menu: ISC
menu[27] = new Array();
menu[27][0] = new Menu(true, '+', 250, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[27][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=092', '', defLength, 0, 0);

// Menu: PDC
menu[28] = new Array();
menu[28][0] = new Menu(true, '+', 250, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[28][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=090', '', defLength, 0, 0);

// Menu: VRC
menu[29] = new Array();
menu[29][0] = new Menu(true, '+', 250, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[29][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=087', '', defLength, 0, 0);

// Menu: Alcott
menu[30] = new Array();
menu[30][0] = new Menu(true, '+', 85, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[30][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=501', '', defLength, 0, 0);

// Menu: Irving
menu[31] = new Array();
menu[31][0] = new Menu(true, '+', 85, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[31][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=500', '', defLength, 0, 0);

// Menu: Longfellow
menu[32] = new Array();
menu[32][0] = new Menu(true, '+', 85, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[32][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=502', '', defLength, 0, 0);

// Menu: Whittier
menu[33] = new Array();
menu[33][0] = new Menu(true, '+', 85, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[33][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=504', '', defLength, 0, 0);

// Menu: NHS
menu[34] = new Array();
menu[34][0] = new Menu(true, '+', 125, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[34][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=705', '', defLength, 0, 0);

// Menu: NNHS
menu[35] = new Array();
menu[35][0] = new Menu(true, '+', 125, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[35][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=710', '', defLength, 0, 0);

// Menu: Alternative Schools
menu[36] = new Array();
menu[36][0] = new Menu(true, '+', 140, 0, 150, defOver, subBack, 'menuBorder', 'menuText');
menu[36][1] = new Item(s+'Alternative Education', 'http://www.norman.k12.ok.us/111/', '', defLength, 0, 37);
menu[36][2] = new Item(s+'J.D. McCarty Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=113', '', defLength, 0, 0);
menu[36][3] = new Item(s+'Leland Wolf', 'http://www.norman.k12.ok.us/111/leland.htm', '', defLength, 0, 38);

// Menu: Alternative Education
menu[37] = new Array();
menu[37][0] = new Menu(true, '+', 140, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[37][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=865', '', defLength, 0, 0);

// Menu: Leland Wolf
menu[38] = new Array();
menu[38][0] = new Menu(true, '+', 140, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[38][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=867', '', defLength, 0, 0);

// Menu: NPS
menu[39] = new Array();
menu[39][0] = new Menu(true, '+', 0, 22, 190, defOver, defBack, 'menuBorder', 'menuText');
menu[39][1] = new Item(s+'NPS Home Page', 'http://www.norman.k12.ok.us', '', defLength, 0, 0);
menu[39][2] = new Item(s+'District Profile', 'http://www.norman.k12.ok.us/misc/profile/', '', defLength, 0, 0);
menu[39][3] = new Item(s+'Board of Education', 'http://www.norman.k12.ok.us/directory/boe/', '', defLength, 0, 0);
menu[39][4] = new Item(s+'Staff Web Pages', 'http://staff.norman.k12.ok.us', '', defLength, 0, 0);
menu[39][5] = new Item(s+'2009-2010 School Calendar', 'http://www.norman.k12.ok.us/calendar/cal2010.pdf', '', defLength, 0, 0);
menu[39][6] = new Item(s+'2010-2011 School Calendar', 'http://www.norman.k12.ok.us/calendar/cal2011.pdf', '', defLength, 0, 0);
menu[39][7] = new Item(s+'Schedule of Events', 'http://www.norman.k12.ok.us/calendar/', '', defLength, 0, 0);
menu[39][8] = new Item(s+'Job openings', 'http://www.norman.k12.ok.us/services/personnel/jobs/', '', defLength, 0, 0);
menu[39][9] = new Item(s+'Google SafeSearch', 'http://www.norman.k12.ok.us/002/search/', '', defLength, 0, 0);

// Menu: CSC
menu[40] = new Array();
menu[40][0] = new Menu(true, '+', 250, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[40][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=095', '', defLength, 0, 0);

// Menu: Curriculum Center
menu[41] = new Array();
menu[41][0] = new Menu(true, '+', 250, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[41][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=088', '', defLength, 0, 0);

// Menu: Safety & Security Submenu
menu[42] = new Array();
menu[42][0] = new Menu(true, '+', 250, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[42][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=900', '', defLength, 0, 0);

// Menu: Special Services
menu[43] = new Array();
menu[43][0] = new Menu(true, '+', 250, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[43][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=089', '', defLength, 0, 0);

// Menu: Fine & Performing Arts
menu[44] = new Array();
menu[44][0] = new Menu(true, '+', 250, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[44][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/fpa/admin.htm', '', defLength, 0, 0);

// Menu: Indian Education
menu[45] = new Array();
menu[45][0] = new Menu(true, '+', 250, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[45][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/site/indianed/#Staff', '', defLength, 0, 0);

// Menu: Athletics
menu[46] = new Array();
menu[46][0] = new Menu(true, '+', 250, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[46][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/site/athl/athdirectors.htm', '', defLength, 0, 0);

// Menu: Transportation
menu[47] = new Array();
menu[47][0] = new Menu(true, '+', 250, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[47][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=096', '', defLength, 0, 0);

// Menu: Curriculum Center
menu[48] = new Array();
menu[48][0] = new Menu(true, '+', 250, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[48][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/directory/roster.spy?site=088', '', defLength, 0, 0);

// Menu: Personnel
menu[49] = new Array();
menu[49][0] = new Menu(true, '+', 250, 0, 45, defOver, subBack, 'menuBorder', 'menuText');
menu[49][1] = new Item(s+'Staff', 'http://www.norman.k12.ok.us/site/personnel/contact_info/contact_info.htm', '', defLength, 0, 0);










// *** OPTIONAL CODE FROM HERE DOWN ***

// These two lines handle the window resize bug in NS4. See <body onResize="...">.
// I recommend you leave this here as otherwise when you resize NS4's width menus are hidden.

var popOldWidth = window.innerWidth;
nsResizeHandler = new Function('if (popOldWidth != window.innerWidth) location.reload()');


// This is a quick snippet that captures all clicks on the document and hides the menus
// every time you click. Use if you want.

if (isNS4) document.captureEvents(Event.CLICK);
document.onclick = clickHandle;

function clickHandle(evt)
{
 if (isNS4) document.routeEvent(evt);
 hideAllBut(0);
}


// This is just the moving command for the example.

function moveRoot()
{
 with(menu[0][0].ref) left = ((parseInt(left) < 100) ? 100 : 5);
}

