//Javascript adapted from Wikipedia

function changeText(el, newText) {
  // Safari work around
  if (el.innerText)
    el.innerText = newText;
  else if (el.firstChild && el.firstChild.nodeValue)
    el.firstChild.nodeValue = newText;
}

function toggleToc() {
	var toc = document.getElementById('toc').getElementsByTagName('ul')[0];
	var toc_table = document.getElementById('toc');
	var tutorial_content = document.getElementById('tutorialContent');
	var toggleLink = document.getElementById('togglelink')
  
 	if(toc && toggleLink && toc.style.display == 'none') {
		changeText(toggleLink, tocHideText);
 		toc.style.display = 'block';
 		//tutorial_content.style.marginRight = "200px";
		toc_table.style.width = "200px"; 		
		document.cookie = "hidetoc=0";
	} else {
		changeText(toggleLink, tocShowText);
		toc.style.display = 'none';
		//tutorial_content.style.marginRight = "100px";
		toc_table.style.width = "auto";
		document.cookie = "hidetoc=1";
	}
}

function showTocToggle() {
  if (document.createTextNode) {
    // Uses DOM calls to avoid document.write + XHTML issues
    var linkHolder = document.getElementById('toctitle')
    if (!linkHolder) return;

    var outerSpan = document.createElement('span');
    outerSpan.className = 'toctoggle';

    var toggleLink = document.createElement('a');
    toggleLink.id = 'togglelink';
    toggleLink.className = 'internal';
    toggleLink.href = 'javascript:toggleToc()';
    toggleLink.appendChild(document.createTextNode(tocHideText));

    outerSpan.appendChild(document.createTextNode('['));
    outerSpan.appendChild(toggleLink);
    outerSpan.appendChild(document.createTextNode(']'));

    linkHolder.appendChild(document.createTextNode(' '));
    linkHolder.appendChild(outerSpan);

    var cookiePos = document.cookie.indexOf("hidetoc=");
    if (cookiePos > -1 && document.cookie.charAt(cookiePos + 8) == 1)
     toggleToc();
  }
}
