var timerId = null;
var timerId2 = null;
var navContainer = "primarynav";
var selectOn = false;
var className = (document.all) ? "className" : "class";
var lang = document.getElementsByTagName("html")[0].getAttribute("xml:lang");
var selectDefault = (lang == 'en') ? "Select..." : "Choisir...";

// Initialize
window.onload = function() {
  setPrimaryNavEvents();
}


// Primary Navigation
// **********************************************

// Set mouseover and tabbing events on primary navigation
function setPrimaryNavEvents() {
  var primarynav = document.getElementById(navContainer);
  var topnav = primarynav.getElementsByTagName("ul")[0];
  var navItems = primarynav.getElementsByTagName("li");

  // set events on all navigation items
  for (var i = 0; i < navItems.length; i++) {
    // mouse events
    if (navItems[i].getElementsByTagName("ul")[0] || navItems[i].parentNode == topnav) {
      navItems[i].onmouseover = function() { applyMenuClass(this, " over"); }
      navItems[i].onmouseout = function() { applyMenuClass(this, ""); }
      //navItems[i].style.zIndex = 200; /* Fix IE */
    }

    // keyboard events
    navItems[i].getElementsByTagName("a")[0].onfocus = function() { showMenu(this.parentNode); }
    navItems[i].getElementsByTagName("a")[0].onblur = function() { hideMenus(this.parentNode); }
  }
}

// Show menu: mouse hover
function applyMenuClass(obj, cname) {
  var className = (document.all) ? "className" : "class";
  var oClass = obj.getAttribute(className);

  if (cname) {
    obj.className += cname;
    if (obj.id=='nav6') hideInputFields();
  } else {
    obj.className = oClass.substring(0, oClass.indexOf(" "));
    if (obj.id=='nav6') hideInputFields(1);
  }
}

// Show menu: tabbing
function showMenu(obj) {
  // hide previous menu
  clearTimeout(timerId);
  hideAllMenus(obj);

  // show menu or highlight link
  var className = (document.all) ? "className" : "class";
  var oClass = obj.getAttribute(className);
  if (obj.className.indexOf("over") == -1) {
    obj.className += " over";
  }

}

// Hide menus
function hideMenus(obj) {
  // set timer to hide menus
  timeoutHide();

  // remove style from navigation link
  var className = (document.all) ? "className" : "class";
  var oClass = obj.className;
  if (obj.getElementsByTagName("li").length == 0) {
    obj.className = oClass.substring(0, oClass.indexOf(" "));
  }
}

// Hide all menus
function hideAllMenus(obj) {
  var i, oClass;
  var parent = (obj) ? obj.parentNode : document.getElementById(navContainer);
  var navItems = parent.getElementsByTagName("li");
  var className = (document.all) ? "className" : "class";

  // hide menus from parent navigation items (ignore current menu)
  for (i = 0; i < navItems.length; i++) {
    oClass = navItems[i].className;
    if (oClass && oClass.indexOf("over") != -1) {
      navItems[i].className = oClass.substring(0, oClass.indexOf(" "));
    }
  }
}

// Set timer to hide menus
function timeoutHide() {
  timerId = window.setTimeout("hideAllMenus()", 10);
}

