PageSourceSearch

https://bullion.fkjewellers.com/wp-content/plugins/templatemela-co…/search-advanced.min.js?ver=3.4.7

js fkjewellers.com collected 2026-09-24 11:33:21 UTC 4,020 bytes, 132 lines download raw bytes

1/* global searchAdvancedConfig */
2/**
3 * Ajax Search Results.
4 */
5//alert(searchAdvancedConfig.ajaxURL);
6(function($) {
7	'use strict';
8	window.searchAdvanced = {
9		/**
10		 * Find the search products and open it.
11		 */
12		triggerAjaxSearch: function() {
13			var search_cat = '';
14			if (window.innerWidth <= 1024) {
15				var search_text = $('#mobile-header .header-search-advanced .search-field')?.val();
16				var search_cat = $('#mobile-header .header-search-advanced .search-select')?.find(":selected")?.val();
17			} else {
18				var search_text = $('#main-header .header-search-advanced .search-field').val();
19				var search_cat = $('#main-header .header-search-advanced .search-select')?.find(":selected")?.val();
20				
21			}
22			//console.log(search_cat);
23			// No point if no drawers.
24			if ( ! search_text ) {
25				return;
26			}
27			if( search_text.length > 1 && search_text != "" ){
28		
29				$.ajax({
30					url: searchAdvancedConfig.ajaxURL,
31					type: 'post',
32					data: { action: 'search_data_fetch', keyword: search_text, category: search_cat },
33					success: function(data) {
34						$('.header-search-advanced .search-results #datafetch').html( data );
35						$( '.header-search-advanced .search-results' ).show();
36						$( '.header-search-advanced .loader-container' ).hide();
37					}
38				});
39			} else {
40				$('.header-search-advanced .search-results #datafetch').html("");
41				$( '.header-search-advanced .loader-container' ).hide();
42			}
43		},
44
45		/**
46		 * Close the product search.
47		 */
48		clearSearch: function() {
49			$( '.header-search-advanced .search-results' ).hide();
50		},
51
52		/**
53		 * Initiate the script to toggle search when product is added.
54		 */
55		initSearchToggle: function() {
56			var searching = null;
57			
58			$( '.header-search-advanced .search-field' ).on( 'keyup', function() {
59				var $field = $( this );
60				clearTimeout( searching );
61				searching = setTimeout( function() {
62					if ( $field.val().length > 2 ) {
63						$( '.header-search-advanced .loader-container' ).show();
64						window.searchAdvanced.triggerAjaxSearch();
65					} else {
66						window.searchAdvanced.clearSearch();
67						$( '.header-search-advanced .loader-container' ).hide();
68					}
69				}, 100 );
70			} );
71
72			$(".header-search-advanced .search-field").focus(function(){
73				if($('.header-search-advanced .search-results #datafetch').children().length > 0) {
74					$( '.header-search-advanced .search-results' ).show();
75					$( '.header-search-advanced .loader-container' ).hide();
76				}
77			});
78		},
79
80		/**
81		 * Close the product search.
82		 */
83		clearSearchOnCross: function() {
84			$( '.header-search-advanced .search-field' ).on("search", function(event) {
85				window.searchAdvanced.clearSearch();
86				$('#main-header .header-search-advanced .search-field').val = '';
87			});
88		},
89
90		/**
91		 * Close the product search.
92		 */
93		clearSearchOutside: function() {
94			$(document).on("mouseup", function(event) {
95
96				var container = $(".header-search-advanced");
97
98				// if the target of the click isn't the container nor a descendant of the container
99				if (!container.is(event.target) && container.has(event.target).length === 0) {
100					window.searchAdvanced.clearSearch();
101				}
102				//window.searchAdvanced.clearSearch();
103				//$('#main-header .header-search-advanced .search-field').val = '';
104			});
105		},
106
107		// Initiate the search when the DOM loads.
108		init: function() {
109			window.searchAdvanced.initSearchToggle();
110			window.searchAdvanced.clearSearchOnCross();
111			window.searchAdvanced.clearSearchOutside();
112		}
113	}
114	if ( 'loading' === document.readyState ) {
115		// The DOM has not yet been loaded.
116		document.addEventListener( 'DOMContentLoaded', window.searchAdvanced.init );
117	} else {
118		// The DOM has already been loaded.
119		window.searchAdvanced.init();
120	}
121})(jQuery);
122
123// For Customizer 
124( function( $ ) {
125	if(typeof wp.customize === 'function'){
126		wp.customize( 'header_search_advanced_placeholder', function( value ) {
127			value.bind( function( to ) {
128				$( '.search-field' ).attr("placeholder", to);
129			} );
130		} );
131	}	
132} )( jQuery );

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.