|
From: Jon O. <jon...@us...> - 2008-05-21 21:52:49
|
Update of /cvsroot/mxbb/mx_kb/kb/includes/js In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv12377/kb/includes/js Modified Files: management.js.php Log Message: Mainly bugfixes, revealed during work with new project site - Quick List blocks compatible with app mode - The app mode has been rewritten somewhat, related to inline TOCs etc - Print version link fixed Index: management.js.php =================================================================== RCS file: /cvsroot/mxbb/mx_kb/kb/includes/js/management.js.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** management.js.php 2 Jun 2007 20:56:04 -0000 1.1 --- management.js.php 21 May 2008 21:52:14 -0000 1.2 *************** *** 186,198 **** // Only used when the doc is generated as part of the app - inline (scripts are stripped in plain code) function generateTOC(mode) { var contents = ""; ! var link = escape(treeGetId()); contents = '<div><a target="_blank" href="index.php?page='+mxBlock.page_id+'&mode='+mode+'#'+link+'">Permanent Link to this page</a></div>'; ! var all = document.getElementById("tabs-data").childNodes; var contents2 = ""; var text = ""; var found = false; var h3 = false; --- 186,206 ---- // Only used when the doc is generated as part of the app - inline (scripts are stripped in plain code) function generateTOC(mode) { + // + // Create div + // + var tocdiv = document.getElementById("toc"); + tocdiv.innerHTML = '<div id="contents"></div>'; + var contents = ""; ! //var link = escape(treeGetId()); ! var link = treeGetId(); contents = '<div><a target="_blank" href="index.php?page='+mxBlock.page_id+'&mode='+mode+'#'+link+'">Permanent Link to this page</a></div>'; ! var all = document.getElementById("tabs-data").getElementsByTagName('*'); var contents2 = ""; var text = ""; var found = false; + var h2 = false; var h3 = false; *************** *** 200,209 **** for (var i = 0; i < all.length; ++i) { ! if (all[i].nodeName == "H2" || all[i].nodeName == "H3") { ! if (all[i].nodeName == "H2") { ! if (h3) contents2 += '</ul>'; h3 = false; } if (all[i].nodeName == "H3") { if (!h3) contents2 += '<ul>'; --- 208,225 ---- for (var i = 0; i < all.length; ++i) { ! if (all[i].nodeName == "H1" || all[i].nodeName == "H2" || all[i].nodeName == "H3") { ! if (all[i].nodeName == "H1") { ! if (h3 || h2) contents2 += '</ul>'; ! h2 = false; h3 = false; } + + if (all[i].nodeName == "H2") { + if (h3) contents2 += '</ul>'; + if (!h2) contents2 += '<ul>'; + h2 = true; + } + if (all[i].nodeName == "H3") { if (!h3) contents2 += '<ul>'; *************** *** 214,235 **** text = all[i].innerHTML.replace(/<[^>]+>/g,""); all[i].innerHTML = '<a name="'+text+'">'+text+'</a>'; ! contents2 += '<li><a href="index.php?page='+mxBlock.page_id+'&mode='+mode+'#'+text+'">'+text+'</a></li>'; } } contents2 += '</ul>'; if (found) { if (contents) contents += '<br>'; contents += contents2; } if (contents) { ! document.getElementById("contents").className = "contents"; document.getElementById("contents").innerHTML = contents; } - - //alert(document.getElementById("tabs-data").innerHTML); } - // ?? // this snippet doesn't work if there is a folder named "html" // Only used when the doc is generated as part of the app - inline (scripts are stripped in plain code) --- 230,251 ---- text = all[i].innerHTML.replace(/<[^>]+>/g,""); all[i].innerHTML = '<a name="'+text+'">'+text+'</a>'; ! var str_temp = document.URL.split("#", 1); ! contents2 += '<li><a href="'+str_temp+'#'+text+'">'+text+'</a></li>'; } } contents2 += '</ul>'; + if (found) { if (contents) contents += '<br>'; contents += contents2; } + if (contents) { ! //document.getElementById("contents").className = "contents"; document.getElementById("contents").innerHTML = contents; } } // this snippet doesn't work if there is a folder named "html" // Only used when the doc is generated as part of the app - inline (scripts are stripped in plain code) *************** *** 302,306 **** function addTocDiv(html) { ! html = '<div id="contents"></div>' + '<div id="sectioncontents"></div>' + html; return html; } --- 318,322 ---- function addTocDiv(html) { ! html = '<div id="sectioncontents"></div>' + html; return html; } |