var tocData;
var treeOutput = new Array();
function renderTree(tree)
{
for (var i=0; i < tree.length; i++)
{
if (tree[i].heading)
{
// render a heading
} else {
if (tree[i].sectiontitle) {
treeOutput.push('
' + tree[i].title + '');
}
}
}
}
function hookupTOCEvents()
{
// do after tree render
$('.expand-menu').on('click touchstart', function(elem) {
// menu = elem.currentTarget.nextElementSibling
menu = elem.currentTarget.parentElement
if (menu.classList.contains("menu-closed")) {
menu.classList.remove("menu-closed")
menu.classList.add("menu-open")
} else {
menu.classList.add("menu-closed")
menu.classList.remove("menu-open")
}
return false;
});
$(".currentPage").each(function(){
$(this).parentsUntil($('.docsidebarnav_section')).addClass("active").removeClass("menu-closed").addClass("menu-open");
});
}
jQuery(document).ready(function(){
$.getJSON( "/toc.txt", function( data ) {
tocData = data;
renderTree(data.toc);
$(".nav-sub").html(treeOutput.join(''));
hookupTOCEvents();
});
$("#TableOfContents ul").empty();
var prevH2Item = null;
var prevH2List = null;
var index = 0;
var currentHeader = 0, lastHeader = 0;
var output = "";
$("h2, h3, h4").each(function() {
var li= "" + $(this).text().replace("ΒΆ","") + "";
lastHeader = currentHeader;
if( $(this).is("h2") ){
// h2
currentHeader = 2;
} else if( $(this).is("h3") ){
// h3
currentHeader = 3;
} else if( $(this).is("h4") ) {
// h4
currentHeader = 4;
}
if (currentHeader > lastHeader)
{
// nest further
output += "" + li;
} else if (lastHeader < currentHeader)
{
// close nesting
output += "
" + li
} else {
// continue, no change in nesting
output += li;
}
/*
if( $(this).is("h2") ){
prevH2List = $("");
prevH2Item = $(li);
prevH2Item.append(prevH2List);
prevH2Item.appendTo("#TableOfContents ul");
} else {
prevH2List.append(li);
}
index++;*/
});
output += "";
$("#TableOfContents").html(output);
});