/** * Miscellaneous js functions for WebHelp * Kasun Gajasinghe, http://kasunbg.blogspot.com * David Cramer, http://www.thingbag.net * */ $(document).ready(function() { // $("#showHideHighlight").button(); //add jquery button styling to 'Go' button //Generate tabs in nav-pane with JQuery $(function() { $("#tabs").tabs({ cookie: { // store cookie for 2 days. expires: 2 } }); }); //Generate the tree $("#ulTreeDiv").css("display","block"); $("#tree").treeview({ collapsed: true, animated: "medium", control: "#sidetreecontrol", persist: "cookie" }); //after toc fully styled, display it. Until loading, a 'loading' image will be displayed $("#tocLoading").css("display", "none"); //$("#ulTreeDiv").attr("style","display:block;"); //.searchButton is the css class applied to 'Go' button $(function() { $("button", ".searchButton").button(); $("button", ".searchButton").click(function() {return false;}); }); //'ui-tabs-1' is the cookie name which is used for the persistence of the tabs.(Content/Search tab) if ($.cookie('ui-tabs-1') === '1') { //search tab is visible if ($.cookie('textToSearch') != undefined && $.cookie('textToSearch').length > 0) { document.getElementById('textToSearch').value = $.cookie('textToSearch'); Verifie('diaSearch_Form'); searchHighlight($.cookie('textToSearch')); //$("#showHideHighlight").css("display","block"); } } syncToc(); //Synchronize the toc tree with the content pane, when loading the page. //$("#doSearch").button(); //add jquery button styling to 'Go' button }); /** * Synchronize with the tableOfContents */ function syncToc(){ var a = document.getElementById("webhelp-currentid"); if (a != undefined) { var b = a.getElementsByTagName("span")[0]; if (b != undefined) { //Setting the background for selected node. //b.setAttribute("style", "color: white; background-color: #a7a9ac;"); b.style.color = "#FFFFFF"; b.style.backgroundColor = "#a7a9ac"; } //shows the node related to current content. //goes a recursive call from current node to ancestor nodes, displaying all of them. while (a.parentNode && a.parentNode.nodeName) { var parentNode = a.parentNode; var nodeName = parentNode.nodeName; if (nodeName.toLowerCase() == "ul") { parentNode.style.display = "block"; // Expand the current entry var u = a.getElementsByTagName("ul")[0]; if (u) { u.style.display = "block"; } } else if (nodeName.toLocaleLowerCase() == "li") { parentNode.setAttribute("class", "collapsable"); parentNode.firstChild.setAttribute("class", "hitarea collapsable-hitarea "); } a = parentNode; } if (b != undefined) { b.scrollIntoView(); } } } /** * Code for Show/Hide TOC * */ function showHideToc() { var showHideButton = $("#showHideButton"); var leftNavigation = $("#leftnavigation"); var content = $("#content"); if (showHideButton != undefined && showHideButton.hasClass("pointLeft")) { //Hide TOC showHideButton.removeClass('pointLeft').addClass('pointRight'); content.css("margin", "0 0 0 0"); leftNavigation.css("display","none"); showHideButton.attr("title", "Show table of contents"); } else { //Show the TOC showHideButton.removeClass('pointRight').addClass('pointLeft'); content.css("margin", "0 0 0 315px"); leftNavigation.css("display","block"); showHideButton.attr("title", "Hide table of contents"); } } /** * Code for searh highlighting */ var highlightOn = true; function searchHighlight(searchText) { highlightOn = true; if (searchText != undefined) { var wList; var sList = new Array(); //stem list //Highlight the search terms searchText = searchText.toLowerCase().replace(/<\//g, "_st_").replace(/\$_/g, "_di_").replace(/\.|%2C|%3B|%21|%3A|@|\/|\*/g, " ").replace(/(%20)+/g, " ").replace(/_st_/g, "