

// namespace
var cssTabs = {onChange: null};

cssTabs.windowLoad = function ()
{
  var func = null;

  var elements = document.getElementsByTagName('LI');
  for (var n = 0; n < elements.length; n++)
    if (elements[n].parentNode.className.indexOf('tabset') > -1)
    {
      func = "cssTabs.setTab('" + elements[n].id + "');";
      addEventHandler(elements[n], 'click', new Function(func));

      if (elements[n].className.indexOf('active_tab') > -1)
       setTimeout(func, 100);
    }

  elements = document.getElementsByTagName('DIV');
  for (n = 0; n < elements.length; n++)
    if (elements[n].className.indexOf('css_tabs') > -1)
    {
      if (elements[n].id == '')
        elements[n].id = 'css_tabs_' + n;

      func = new Function("cssTabs.resize('" + elements[n].id + "');");
      addEventHandler(window, 'resize', func);
      func();
    }
};
addEventHandler(window, 'load', cssTabs.windowLoad);

cssTabs.setTab = function (id)
{
  var tab = document.getElementById(id);
  var page;
  var tabSet = tab.parentNode;
  var selects;
  var s;

  var elements = document.getElementsByTagName('LI');
  for (var n = 0; n < elements.length; n++)
    if (elements[n].parentNode == tabSet)
    {
      page = document.getElementById(elements[n].id + '_page');
//      selects = page.getElementsByTagName('SELECT');
      if (elements[n].id == id)
      {
//        for (var s = 0; s < selects.length; s++)
//          selects[s].style.display = 'inline';

        elements[n].className = 'active_tab';
        page.style.display = 'block';
//        page.style.zIndex = '1';
      }
      else
      {
        elements[n].className = '';
        page.style.display = 'none';
//        page.style.zIndex = '0';
//
//        for (var s = 0; s < selects.length; s++)
//          selects[s].style.display = 'none';
      }
//GLog.write(elements[n].id + ': ' + page.className);

//      page.style.display = 'block';
    }

  if (this.onChange &&
      ((typeof this.onChange) == 'Function'))
    onChange(id)
};

cssTabs.resize = function (id)
{
  var container = document.getElementById(id);
  if (container)
  {
    var pageSet = null;
    for (var n = 0; n < container.childNodes.length; n++)
      if (container.childNodes[n].className == 'pageset')
      {
        pageSet = container.childNodes[n];
        break;
      }

    var newHeight = (container.offsetHeight - pageSet.offsetTop - 1);
    if (pageSet &&
        (newHeight > 0))
      pageSet.style.height = newHeight + 'px';
  }
};
