//<![CDATA[
/*
  devosc, developing open source code
  http://www.devosc.com

  Copyright (c) 2005 devosc

  Released under the GNU General Public License
*/
  var jcssMenuDelay = 500;
  var jcssMenuTimer = null;
  var jcssMenuPtr   = null;

  function jcssMenuMouseOut(elementId)
  {
    if (jcssMenuTimer != null && jcssMenuPtr == elementId) {

      cULs = document.getElementById(elementId).parentNode.getElementsByTagName('ul');

      for(i=0; i < cULs.length; i++)

        cULs.item(i).style.visibility = 'hidden';

    }
  }

  function jcssMenuMouseOver(elementId)
  {
    if (jcssMenuTimer != null && jcssMenuPtr != null) {

      cULs = document.getElementById(jcssMenuPtr).getElementsByTagName('ul');

      for(i=0; i < cULs.length; i++)

        cULs.item(i).style.visibility = 'hidden';

      window.clearTimeout(jcssMenuTimer);

      jcssMenuTimer = null;
    }

    jcssMenuPtr = elementId;

    cULs = document.getElementById(jcssMenuPtr).getElementsByTagName('ul');

    if (cULs.length > 0)

      cULs.item(0).style.visibility = 'visible';
  }

  function jcssMenu(eleId)
  {
    var elementId = (eleId == null) ? 'jcssMenu' : eleId;

    if (document.getElementById(elementId)) {

      var cULs = document.getElementById(elementId).getElementsByTagName('ul');

      for(var i=0; i < cULs.length; i++) {

        var cLIs = cULs.item(i).getElementsByTagName('li');

        for(var j=0; j < cLIs.length; j++) {

          cLIs.item(j).setAttribute('id', elementId + i + j);

          var childNodes = cLIs.item(j).childNodes;
          for(var k=0; k < childNodes.length; k++)
            if (childNodes.item(k).nodeType == 1 && childNodes.item(k).tagName.toLowerCase() == 'ul') {
              var siblingNodes = childNodes.item(k).childNodes;
              var cWidth = siblingNodes.item(0).childNodes.item(0).offsetWidth;
              for(var l=1; l < siblingNodes.length; l++)
                if (siblingNodes.item(l).nodeType == 1 && siblingNodes.item(l).tagName.toLowerCase() == 'li' && siblingNodes.item(l).childNodes.item(0).offsetWidth > cWidth)
                  cWidth = siblingNodes.item(l).childNodes.item(0).offsetWidth;
                if (siblingNodes.item(l-1).nodeType == 1 && siblingNodes.item(l-1).tagName.toLowerCase() == 'li')
                  siblingNodes.item(l-1).style.borderBottomWidth = '1px';
              if (cWidth > siblingNodes.item(0).childNodes.item(0).offsetWidth) {
                 siblingNodes.item(0).childNodes.item(0).style.width = cWidth + 'px';
                 dw = siblingNodes.item(0).childNodes.item(0).offsetWidth - cWidth;
                for(var l=0; l < siblingNodes.length; l++)
                  if (siblingNodes.item(l).nodeType == 1 && siblingNodes.item(l).tagName.toLowerCase() == 'li')
                    if (navigator.appVersion.indexOf('MSIE') == -1) {
                      siblingNodes.item(l).childNodes.item(0).style.width = cWidth - dw + 'px';
                      siblingNodes.item(l).style.width = cWidth + 'px';
                    } else {
                      siblingNodes.item(l).childNodes.item(0).style.width = cWidth + 'px';
                    }
              }
            }

          cLIs.item(j).onmouseover = function() {

            jcssMenuMouseOver(
              this.getAttribute('id')
            );

          };

          cLIs.item(j).onmouseout = function() {

            jcssMenuTimer = window.setTimeout(
              "jcssMenuMouseOut('"+this.getAttribute('id')+"');",
              jcssMenuDelay
            );

          };

        }

        cLIs.item(j-1).style.borderBottomWidth = '1px';

/*
        if (cLIs.item(i).parentNode.parentNode.tagName == 'li' && cLIs.item(i).lastChild.tagName == 'ul')

            if (cLIs.item(i).firstChild.firstChild.firstChild.className != 'submenu')

              cLIs.item(i).firstChild.firstChild.firstChild.className = 'submenu';
*/
      }

    }
  }
//]]>