var dontHideSelects = false;
var mainNavTableMode = false;
var alignLastRight = false;

 function Open_faq(cat, faqID, larg, haut){
	f = document.forms[0];
	var TheUrl = './dispatch.do?def=site.doc.faqID&id='+ faqID+'&cat='+cat;
//	alert(TheUrl);
	win = window.open(TheUrl,'fenetreAide','width='+larg+',height='+haut+',scrollbars=yes,resizable=yes');
	win.focus();
}

function initMainNavItem(id, items) {
//Create the dropdown menu
  if (document.getElementById) {
    if (items && items.length > 0) {
      var item = document.getElementById(id);
      var dropdown = document.createElement('ul');

      if (!item) return;
		// for each submenu we create a list element
      for (var i = 0; i < items.length; i++) {
         var li = document.createElement('li');
         var b = document.createElement('b');
         var a = document.createElement('a');
         var text = document.createTextNode(' ' + items[i].text); // text
         a.href = items[i].href;
         a.onclick = function() { intern = true; };
         a.appendChild(b);
         a.appendChild(text);
         li.appendChild(a);
				 if (i == 0) li.className="link2";					// class of link
				 if (i == items.length-1) li.className="link2";
         dropdown.appendChild(li);
      }
      item.appendChild(dropdown);
    }
  }
}

function cssjsmenu(menuid)
{
  var i;
  var j;
  var node;
  var child;
  var parent;

  // if the browser doesn't even support
  // document.getElementById, give up now.
  if (!document.getElementById)
  {
    return true;
  }

  // check for downlevel browsers
  // Opera 6, IE 5/Mac are not supported

  var version;
  var offset;

  offset = navigator.userAgent.indexOf('Opera');
  if (offset != -1)
  {
    version = parseInt('0' + navigator.userAgent.substr(offset + 6), 10);
    if (version < 7)
    {
      return true;
    }
  }

  offset = navigator.userAgent.indexOf('MSIE');
  if (offset != -1)
  {
    if (navigator.userAgent.indexOf('Mac') != -1)
    {
      return true;
    }
  }

  var menudiv = document.getElementById(menuid);
	var index = 0;

	 if (navigator.userAgent.indexOf('Gecko') != -1)
    {
      index=1;
    }


  if (mainNavTableMode) {
   menudiv = menudiv.getElementsByTagName("TABLE")[0];
	menudiv = menudiv.childNodes[index];
	menudiv = menudiv.childNodes[index];
  }

  // ul

  var ul = new Array();

  for (i = 0; i < menudiv.childNodes.length; i++)
  {
    node = menudiv.childNodes[i];
    if (node.nodeName == 'UL')
    {
      ul[ul.length] = node;
    }
  }

  var ul = [menudiv];

  // ul > li
  var ul_gt_li = new Array();

  for (i = 0; i < ul.length; i++)
  {
    node = ul[i];
    for (j = 0; j < node.childNodes.length; j++)
    {
      child = node.childNodes[j];
      if ( (!mainNavTableMode && child.nodeName == 'DIV') || (mainNavTableMode && child.nodeName == 'TD') )
      {
        ul_gt_li[ul_gt_li.length] = child;
//         child.style.display = 'inline';
//         child.style.listStyle = 'none';
//        child.style.position = 'static';
      }
    }
  }

  // ul > li > ul
  var ul_gt_li_gt_ul = new Array();

  for (i = 0; i < ul_gt_li.length; i++)
  {
    node = ul_gt_li[i];

    for (j = 0; j < node.childNodes.length; j++)
    {
      child = node.childNodes[j];
      if (child.nodeName == 'UL')
      {
        ul_gt_li_gt_ul[ul_gt_li_gt_ul.length] = child;
        child.style.position = 'absolute';
        child.style.left = '-13em';
        child.style.visibility = 'hidden';

        // attach hover to parent li
        parent = child.parentNode;
        parent.onmouseover = function (e)
        {
          var i;
          var child;
          var point;

          // stop the pure css hover effect
          this.style.paddingBottom = '5';

          for (i = 0; i < this.childNodes.length; i++)
          {
            child = this.childNodes[i];
            if (child.nodeName == 'UL')
            {
              point = getPageXY(this);
              if (alignLastRight && !this.nextSibling)
                setPageXY(child, point.x - child.offsetWidth + this.offsetWidth, point.y + this.offsetHeight);
              else
                setPageXY(child, point.x, point.y + this.offsetHeight);
              child.style.visibility = 'visible';
              if (!dontHideSelects) hideSelectElements(false);
            }
          }
          return false;
        };
        parent.onmouseout = function (e)
        {
          var relatedTarget = null;
          if (e)
          {
            relatedTarget = e.relatedTarget;
            // work around Gecko Linux only bug where related target is null
            // when clicking on menu links or when right clicking and moving
            // into a context menu.
      if (navigator.product == 'Gecko' && navigator.platform.indexOf('Linux') != -1 && !relatedTarget)
      {
        relatedTarget = e.originalTarget;
      }
          }
          else if (window.event)
          {
            relatedTarget = window.event.toElement;
          }

          if (elementContains(this, relatedTarget))
          {
            return false;
          }

          var i;
          var child;
          for (i = 0; i < this.childNodes.length; i++)
          {
            child = this.childNodes[i];
            if (child.nodeName == 'UL')
            {
                child.style.visibility = 'hidden';
                if (!dontHideSelects) hideSelectElements(true);
            }
          }

          return false;
        };
      }
    }
  }
  return true;
}

function elementContains(elmOuter, elmInner)
{
  while (elmInner && elmInner != elmOuter)
  {
    elmInner = elmInner.parentNode;
  }
  if (elmInner == elmOuter)
  {
    return true;
  }
  return false;
}

function getPageXY(elm)
{
  var point = { x: 0, y: 0 };
  while (elm)
  {
    point.x += elm.offsetLeft;
    point.y += elm.offsetTop;
    elm = elm.offsetParent;
  }
  return point;
}

function setPageXY(elm, x, y)
{
  var parentXY = {x: 0, y: 0 };

  if (elm.offsetParent)
  {
    parentXY = getPageXY(elm.offsetParent);
  }

  elm.style.left = (x - parentXY.x) + 'px';
  elm.style.top  = (y - parentXY.y) + 'px';
}


var arrayOfSelects = null;

function hideSelectElements(visible) {

  if (!document.getElementsByTagName) return;

  if (!arrayOfSelects)
    arrayOfSelects = document.getElementsByTagName("SELECT");

  if (arrayOfSelects && arrayOfSelects.length) {
    for (var i = 0; i < arrayOfSelects.length; i++) {
      if (arrayOfSelects[i] && arrayOfSelects[i].style) {
        arrayOfSelects[i].style.visibility = (visible ? "visible" : "hidden")
      }
    }
  }
}
