//<![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).childNodes;

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

          if (cLIs.item(j).nodeType == 1 && cLIs.item(j).tagName.toLowerCase() == 'li') {

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

            for(var k=0; k < cLIs.item(j).childNodes.length; k++)

              if (cLIs.item(j).childNodes.item(k).nodeType == 1 && cLIs.item(j).childNodes.item(k).tagName.toLowerCase() == 'ul') {

                var siblingNodes = cLIs.item(j).childNodes.item(k).childNodes;

                var cWidth = siblingNodes.item(0).childNodes.item(0).offsetWidth;

                for(var l=0; 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 > 0 && cWidth > siblingNodes.item(0).childNodes.item(0).offsetWidth)

                  siblingNodes.item(0).childNodes.item(0).style.width = cWidth + 'px';

                var dw = siblingNodes.item(0).childNodes.item(0).offsetWidth - cWidth;

                for(var l=0; l < siblingNodes.length; l++)

                  if ((cWidth - dw) > 0 && siblingNodes.item(l).nodeType == 1 && siblingNodes.item(l).tagName.toLowerCase() == 'li')

                    siblingNodes.item(l).childNodes.item(0).style.width = cWidth - dw + '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';
*/

      }

    }
  }
//]]>