}\r
}\r
\r
+ // Allow user to filter sidebar box entries by name\r
+ var enableSearchPageField = function(filterSelector) {\r
+ var div = $(document.createElement("div"))\r
+ .addClass("nitdoc-ui-searchpage-filter")\r
+ .append(\r
+ $(document.createElement("input"))\r
+ .addClass("nitdoc-ui-searchpage-field")\r
+ .addClass("nitdoc-ui-filter-field-notused")\r
+ .attr("type", "text")\r
+ .attr("value", "filter...")\r
+ .keyup(function() {\r
+ var box = $(this).parents(".content.fullpage").find("article.filterable");\r
+ var value = $(this).val();\r
+ box.find("ul li:not(:icontains('" + value + "'))").hide();\r
+ box.find("ul li:icontains('" + value + "')").show();\r
+ })\r
+ .focusout(function() {\r
+ if($(this).val() == "") {\r
+ $(this).addClass("nitdoc-ui-filter-field-notused");\r
+ $(this).val("filter...");\r
+ }\r
+ })\r
+ .focusin(function() {\r
+ if($(this).val() == "filter...") {\r
+ $(this).removeClass("nitdoc-ui-filter-field-notused");\r
+ $(this).val("");\r
+ }\r
+ })\r
+ );\r
+ $(filterSelector).after(div);\r
+ preloadSearchPageField();\r
+ }\r
+\r
+ // Prealod filter using search query\r
+ var preloadSearchPageField = function() {\r
+ var anchor = Nitdoc.Utils.extractAnchor(document.location.hash);\r
+ if(!anchor || anchor.indexOf("q=") == -1) return;\r
+\r
+ var query = anchor.substring(2);\r
+ if(!query) return;\r
+\r
+ $(".nitdoc-ui-searchpage-field")\r
+ .val(query)\r
+ .removeClass("nitdoc-ui-notused")\r
+ .trigger("keyup");\r
+ }\r
+\r
// Public interface\r
var ui = {\r
enableFolding: enableFolding,\r
enableCopyToClipboard: enableCopyToClipboard,\r
enableSidebarTextFilters: enableSidebarTextFilters,\r
- enableSidebarTypeFilters: enableSidebarTypeFilters\r
+ enableSidebarTypeFilters: enableSidebarTypeFilters,\r
+ enableSearchPageField: enableSearchPageField\r
};\r
\r
return ui;\r
Nitdoc.UI.enableCopyToClipboard(".signature");\r
Nitdoc.UI.enableSidebarTextFilters("nav.filterable h3");\r
Nitdoc.UI.enableSidebarTypeFilters("nav.filterable");\r
+ Nitdoc.UI.enableSearchPageField(".content.fullpage h1:contains('Search')");\r
});\r
\r
/*\r
return (obj.textContent.replace(/\[[0-9]+\]/g, "") || obj.innerText.replace(/\[[0-9]+\]/g, "") || jQuery(obj).text().replace(/\[[0-9]+\]/g, "") || '').toLowerCase().indexOf(meta[3].toLowerCase()) >= 0;\r
};\r
\r
-//rename file\r
-//commit\r