/** * Start search widget script */ (function ($, elementor) { 'use strict'; var serachTimer; var widgetAjaxSearch = function ($scope, $) { var $searchContainer = $scope.find('.bdt-search-container'), $searchWidget = $scope.find('.bdt-ajax-search'); $($scope).find('.bdt-navbar-dropdown-close').on('click', function () { bdtUIkit.drop($scope.find('.bdt-navbar-dropdown')).hide(); }); let $search; if (!$searchWidget.length) { return; } var $resultHolder = $($searchWidget).find('.bdt-search-result'), $settings = $($searchWidget).data('settings'), $connectSettings = $($searchContainer).data('settings'), $target = $($searchWidget).attr('anchor-target'); if ('yes' === $target) { $target = '_blank'; } else { $target = '_self'; } clearTimeout(serachTimer); if ($connectSettings && $connectSettings.element_connect) { $($connectSettings.element_selector).hide(); } $($searchWidget).on('keyup keypress', function (e) { var keyCode = e.keyCode || e.which; if (keyCode === 13) { e.preventDefault(); return false; } }); $searchWidget.find('.bdt-search-input').keyup(function () { $search = $(this).val(); serachTimer = setTimeout(function () { $($searchWidget).addClass('bdt-search-loading'); jQuery.ajax({ url: window.ElementPackConfig.ajaxurl, type: 'post', data: { action: 'element_pack_search', s: $search, settings: $settings, }, success: function (response) { var response = $.parseJSON(response); if (response.results.length > 0) { if ($search.length >= 3) { var output = `

${window.ElementPackConfig.search.search_result}

${window.ElementPackConfig.search.more_result}
`; $resultHolder.html(output); $resultHolder.show(); $(".bdt-search-result-close-btn").on("click", function (e) { $(".bdt-search-result").hide(); $(".bdt-search-input").val(""); }); $($searchWidget).removeClass("bdt-search-loading"); $(".bdt-search-more").on("click", function (event) { event.preventDefault(); $($searchWidget).submit(); }); } else { $resultHolder.hide(); } } else { if ($search.length > 3) { var not_found = `

${window.ElementPackConfig.search.search_result}

${$search} ${window.ElementPackConfig.search.not_found}
`; $resultHolder.html(not_found); $resultHolder.show(); $(".bdt-search-result-close-btn").on("click", function (e) { $(".bdt-search-result").hide(); $(".bdt-search-input").val(""); }); $($searchWidget).removeClass("bdt-search-loading"); if ($connectSettings && $connectSettings.element_connect) { $resultHolder.hide(); setTimeout(function () { $($connectSettings.element_selector).show(); }, 1500); } } else { $resultHolder.hide(); $($searchWidget).removeClass("bdt-search-loading"); } } } }); }, 450); }); }; jQuery(window).on('elementor/frontend/init', function () { elementorFrontend.hooks.addAction('frontend/element_ready/bdt-search.default', widgetAjaxSearch); }); //window.elementPackAjaxSearch = widgetAjaxSearch; })(jQuery, window.elementorFrontend); /** * End search widget script */