summaryInclude=100; var fuseOptions = { shouldSort: true, includeMatches: true, threshold: 0.0, tokenize: true, location: 0, distance: 100, maxPatternLength: 32, minMatchCharLength: 1, keys: [ { name: "title" , weight: 0.9 }, { name: "tags" , weight: 0.7 }, { name: "contents" , weight: 0.5 }, { name: "categories" , weight: 0.3 } ] }; var searchQuery = param("s"); if(searchQuery){ var inputBox = document.getElementById('search-query'); inputBox.value = searchQuery || ""; executeSearch(searchQuery, false); } else { $('#search-results').append("
Please enter a word or phrase above, or see all tags.
"); } function executeInlineSearch(){ $(".search-results-empty").remove(); $(".search-results-summary").remove(); var query = document.getElementById("search-query").value; if(query){ executeSearch(query, true); } else { $('#search-results').append("Please enter a word or phrase above, or see all tags.
"); } } function executeSearch(searchQuery, clear_list){ $.getJSON( jsonfile, function( data ) { var pages = data; var fuse = new Fuse(pages, fuseOptions); var result = fuse.search(searchQuery); if(result.length > 0){ populateResults(result); } else { if (clear_list) { $(".search-results-empty").remove(); } $('#search-results').append("No matches found
"); } }); } function populateResults(result){ searchQuery = document.getElementById("search-query").value; $.each(result,function(key,value){ var contents= value.item.contents; var snippet = ""; var snippetHighlights=[]; var tags =[]; if( fuseOptions.tokenize ){ snippetHighlights.push(searchQuery); } else { $.each(value.matches,function(matchKey,mvalue) { if(mvalue.key == "tags" || mvalue.key == "categories") { snippetHighlights.push(mvalue.value); } else if(mvalue.key == "contents") { start = mvalue.indices[0][0]-summaryInclude>0?mvalue.indices[0][0]-summaryInclude:0; end = mvalue.indices[0][1]+summaryInclude