var _navTopTabIdPrefix = "topNav";
var _navTopTabLinkIdPrefix = "secNav";
var _navTopActiveTab = 0;
var _navTopCurrentTab = 0;
var _navTimerId = null;
var _navInitialized = false;
var _navShowLink = false;

function jsfKillTimer(){
  if (_navTimerId){
    clearTimeout(_navTimerId); 
    _navTimerId = null; 
  } 
}

function jsfTopNavActivate(index){
  _navTopActiveTab = _navTopCurrentTab = index;
  jsfSetTabCssClass(_navTopActiveTab, "selected");
  jsfShowTabLinks(_navTopActiveTab, true);
  _navInitialized = true; 
}

function jsfTopNavLeave(obj){
  if (_navInitialized){ 
    jsfKillTimer();
    _navShowLink = true;
    _navTimerId = setTimeout("jsfSecNavShow()", 2000); 
  } 
}

function jsfTopNavSelect(obj){
  if (_navInitialized){
    jsfKillTimer();
    _navShowLink = false;
  } 
}

function jsfTopNavEnter(obj){
    if (_navInitialized){
      _navShowLink = false;
      jsfKillTimer();
      jsfSetTabCssClass(_navTopCurrentTab, "");
      jsfSetTabCssClass(_navTopActiveTab, "selected");
      jsfShowTabLinks(_navTopCurrentTab, false);
      jsfShowTabLinks(_navTopActiveTab, false);
      obj.className = "selected";
      _navTopCurrentTab = obj.id.substr(6, obj.id.length - 1);
      if (_navTopCurrentTab != _navTopActiveTab){
        jsfSetTabCssClass(_navTopCurrentTab, "light");
      }
      jsfShowTabLinks(_navTopCurrentTab, true);
    } 
}

function jsfSecNavShow(){
    if (_navInitialized && _navShowLink){
      jsfShowTabLinks(_navTopCurrentTab, false);
      jsfSetTabCssClass(_navTopCurrentTab, "");
      jsfShowTabLinks(_navTopActiveTab, true);
      jsfSetTabCssClass(_navTopActiveTab, "selected");
    } 
}

function jsfSecNavLeave(obj){
  jsfKillTimer();
  _navShowLink = true;
  _navTimerId = setTimeout("jsfSecNavShow()", 2000);
}

function jsfSetTabCssClass(index, cssClass){
    var tab = document.getElementById(_navTopTabIdPrefix + index);
    if (tab != null){
      tab.className = cssClass;
    } 
}

function jsfShowTabLinks(index, show){
    var tabGroup = document.getElementById(_navTopTabLinkIdPrefix + index);
    if (tabGroup != null){
      tabGroup.style.display = show ? "" : "none";
    } 
}
