function LN_GetFileName(){
  var path     = window.location.pathname.split("/");
  if(path.length>1){
    var t = path[path.length-1];
    filename = t.substr(0,t.length);
    //filename = t.substr(0,t.indexOf(".")); just FILENAME, no extension
    return(filename);
  }else{
    return("");
  }

}
function LN_ToggleSibling(ele){
  var sub = LN_GetNextSibling(ele);
  if(sub){
    if(sub.style.display=="" || sub.style.display=="none") sub.style.display="block";
    else sub.style.display="none";
    LN_ToggleSibling(sub);
    return(false)
  }else{
    return(true);
  }
}
function LN_GetNextSibling(ele){
  if(ele){
    var n = ele.nextSibling;
    if(!n) return(false);
    var name = n.nodeName.toLowerCase();
    if(name=="#text") return(LN_GetNextSibling(n));
    else if(name=="dt") return(false);
    else return(n);
  }
}


var LN_FILENAME = LN_GetFileName();
var curr_link;

function LN_Init(){
  var leftnav = document.getElementById("leftnav");
  var links = leftnav.getElementsByTagName("a");
  for(var i=0;i<links.length;i++){
    if(links[i].href.indexOf(LN_FILENAME)+1){
      curr_link = links[i];
      break;
    }
  }
  LN_SetMainNav();
  LN_SetNav();
}
function LN_SetNav(){
	if(!curr_link) return;
  LN_MakeChosen(curr_link);
  if(LN_GetNodeName(curr_link.parentNode)=="dt"){
  }else{
    var t = LN_GetParentDD(curr_link.parentNode);
    LN_Show(t);
    LN_ShowDDChildren(t);
  }
}
function LN_GetParentDD(obj){
  //get parent <dd> element
  var p=obj.parentNode; //current <dd> node
  var nn = p.nodeName.toLowerCase();
  if(nn=="dd") return(p);
  else return(LN_GetParentDD(p));
}
function LN_GetNodeName(node){
	if(node){
		return(node.nodeName.toLowerCase());
	}else{
		return("");
	}
}
function LN_Show(obj){
  obj.style.display="block";
}
function LN_Hide(obj){
  obj.style.display="none";
}
function LN_MakeChosen(a_obj){
	if(a_obj){//index pages won't have a selected link
    a_obj.className = a_obj.className+" chosen";
    a_obj.innerHTML = "&gt; "+a_obj.innerHTML;
  }
}
function LN_SetMainNav(){
	//setting main nav to bold the current section
	if(LN_MAINNAV){
		var o = document.getElementById("main-nav-"+LN_MAINNAV);
		if(o) o.style.fontWeight="bold";
	}
}
function LN_ShowDDChildren(obj){
  var eles = obj.getElementsByTagName("dd");
  for(var i=0;i<eles.length;i++){
    LN_Show(eles[i])
  }
}
window.onload=LN_Init;