@@ -533,11 +533,19 @@ var KendraSearch = {
533533 _pulse_status : - 1 ,
534534
535535 init : function ( ) {
536+ var filters = { } ;
536537 var params = $ . getQueryParameters ( ) ;
537538 if ( params . q ) {
538539 var query = params . q [ 0 ] ;
539540 $ ( 'input[name="q"]' ) [ 0 ] . value = query ;
540- this . performSearch ( query ) ;
541+
542+ Object . keys ( params ) . forEach ( function ( key ) {
543+ if ( key . startsWith ( "filter" ) ) {
544+ filters [ key ] = true ;
545+ $ ( 'input[name="' + key + '"]' ) [ 0 ] . checked = true ;
546+ }
547+ } ) ;
548+ this . performSearch ( query , filters = filters ) ;
541549 }
542550 } ,
543551
@@ -577,16 +585,16 @@ var KendraSearch = {
577585 /**
578586 * execute search (requires search index to be loaded)
579587 */
580- query : function ( query , pageNumber , pageSize = 10 ) {
581- var url = " https://9cs56celvj.execute-api.us-west-2.amazonaws.com/prod"
588+ query : function ( query , pageNumber , pageSize = 10 , filters = { } ) {
589+ var url = "https://9cs56celvj.execute-api.us-west-2.amazonaws.com/prod"
582590
583591 $ ( '#search-progress' ) . empty ( ) ;
584592
585593 query = KendraSearch . sanitize ( query ) ;
586594
587595 fetch ( url , {
588596 method : 'post' ,
589- body : JSON . stringify ( { "queryText" : query , "pageNumber" : pageNumber , "pageSize" : pageSize , "host" : window . location . host } ) ,
597+ body : JSON . stringify ( { "queryText" : query , "pageNumber" : pageNumber , "pageSize" : pageSize , "filters" : filters , " host" : window . location . host } ) ,
590598 } ) . then ( response => response . json ( ) )
591599 . then ( function ( data ) {
592600 var docs = data [ "ResultItems" ] ;
@@ -602,7 +610,7 @@ var KendraSearch = {
602610 if ( doc_url . includes ( "sagemaker-examples.readthedocs.io" ) ) {
603611 type_badge_html = '<span class="example-badge">Example</span>'
604612 } else if ( doc_url . includes ( "docs.aws.amazon.com" ) ) {
605- type_badge_html = '<span class="aws-doc-badge">AWS Dev Guide</span>'
613+ type_badge_html = '<span class="aws-doc-badge">Dev Guide</span>'
606614 } else if ( doc_url . includes ( "sagemaker.readthedocs.io" ) || doc_url . includes ( "sagemaker-debugger.readthedocs.io" ) ) {
607615 type_badge_html = '<span class="sdk-doc-badge">SDK Guide</span>'
608616 }
@@ -656,7 +664,7 @@ var KendraSearch = {
656664 $ ( element ) . on ( 'click' , function ( ) {
657665 KendraSearch . output . empty ( ) ;
658666 paginationItem . remove ( ) ;
659- KendraSearch . query ( query , parseInt ( $ ( element ) . attr ( 'id' ) . split ( "-" ) [ 1 ] ) ) ;
667+ KendraSearch . query ( query , parseInt ( $ ( element ) . attr ( 'id' ) . split ( "-" ) [ 1 ] ) , pageSize , filters ) ;
660668 } ) ;
661669 } ) ;
662670 }
@@ -670,7 +678,7 @@ var KendraSearch = {
670678 /**
671679 * perform a search for something (or wait until index is loaded)
672680 */
673- performSearch : function ( query ) {
681+ performSearch : function ( query , filters ) {
674682 // create the required interface elements
675683 this . out = $ ( '#search-results' ) ;
676684 this . title = $ ( '<h2>' + _ ( 'Searching...' ) + '</h2>' ) . appendTo ( this . out ) ;
@@ -682,7 +690,7 @@ var KendraSearch = {
682690 $ ( '#search-progress' ) . text ( _ ( 'Preparing search...' ) ) ;
683691 this . startPulse ( ) ;
684692
685- this . query ( query , 1 )
693+ this . query ( query , 1 , pageSize = 10 , filters = filters )
686694 } ,
687695
688696} ;
0 commit comments