Web Content Viewer
Actions

odx-search-results-title 6y435

{{#if _source.elements.summary}} {{_source.elements.summary}} {{else}} {{{searchBodyFormat _source.elements.body}}} {{/if}}
Published on {{searchDateFormat _source.publishedDate}}
{{/each}}
`; $( document ).ready(function () { var urlParams = new URLSearchParams( window.location.search ), searchQuery = urlParams.get( 'search_query' ); if ( !searchQuery ) { searchQuery = '*'; } $( '#search-query-text' ).text( searchQuery ).show(); $( '#wpthemeSearchBoxInput' ).val( searchQuery ); OHIO.ODX.actions.applyMultilingualLabels( '#singleColumn', 'span.multilingual' ); Handlebars.Helper('searchDateFormat', function ( value ) { return new Date( value ).toDateString(); }); Handlebars.Helper('searchUrlFormat', function ( value ) { return ( window.location.origin + '/wps/portal/gov' + value.substring( value.indexOf( '/' ) ) ); }); Handlebars.Helper('searchBodyFormat', function ( value ) { if ( !value ) return ''; var safeValue = value.replace(/<\/?[^>]+(>|$)/g, ''); return safeValue.length > 400 ? safeValue.substring(0, 398) + "..." : safeValue; }); var compiledTemplate = Handlebars.compile( searchedResultsTemplate ); window.displaySearchPage = function (index) { var Language = OHIO.ODX.actions.getLanguageByCookie(); var pageSize = 10, navPageLimit = 5, navPageLimitOffset = 2; var fuzzySearchQuery = searchQuery.replace(/([\(\):])/g, "\\$1") + "~1"; var searchIndex = window.siteId + "." + Language; var searchQueryES = { from: index * pageSize, size: pageSize, query: { bool: { should: [ { query_string: { query: fuzzySearchQuery, // "analyzer": "snowball", fields: [ "name", "title", "elements.summary", "elements.body", "description", ], }, }, { match: { keywords: { query: fuzzySearchQuery, boost: 4, }, }, }, ], must_not: [ { match: { authoringTemplate: "Ad" } }, { match: { authoringTemplate: "Long Text Translation", }, }, { match: { authoringTemplate: "Label Translations", }, }, { match: { authoringTemplate: "TaxForm" } }, { match: { authoringTemplate: "application" } }, ], }, }, }; $.ajax({ type: "POST", contentType: "application/json", url: "/wps/odx-common/content/search/" + searchIndex, data: JSON.stringify( searchQueryES ), dataType: "json", }).done(function ( data ) { var totalPages = Math.ceil( data.hits.total.value / pageSize ); var maxIndex = totalPages - 1; var pageStart = index - navPageLimitOffset, pageEnd = index + navPageLimitOffset; if ( maxIndex < navPageLimit ) { pageStart = 0; pageEnd = maxIndex; } else { if ( maxIndex - index < navPageLimitOffset ) { pageEnd = maxIndex; pageStart = maxIndex - (navPageLimit - 1); } if ( index < 2 ) { pageStart = 0; pageEnd = pageStart + (navPageLimit - 1); } } var pageArray = []; for (i = pageStart; i <= pageEnd; i++) { pageArray[i] = { pageNumber: i + 1, inactive: i === index ? true : false, }; } data.hits.pagination = { hasLessPages: index >= 1 ? true : false, hasMorePages: index < maxIndex ? true : false, prevIndex: index - 1, nextIndex: index + 1, pageArray: pageArray, }; $( '#searchResults' ).html( compiledTemplate( data.hits ) ); var $paginationLinks = $( '.b-pagination .odx-pagination a' ); $paginationLinks.on("click", function ( event ) { var pageNumber = $( this ).data( 'go-to-page' ); displaySearchPage( pageNumber ); }); $paginationLinks.on("keypress", function ( event ) { if ( event.key === "Enter" ) { var pageNumber = $( this ).data( 'go-to-page' ); displaySearchPage( pageNumber ); } }); $( [document.documentElement, document.body] ).animate( { scrollTop: 0, }, 500 ); }); }; //Start at the first page, which has index=0 displaySearchPage(0); }); var getRootSiteAreas = '2f234854-741f-4952-a046-f0639aaaa5d7';