;(function($){
"use strict";
$(document).ready(function(){
$('.woolentor_widget_psa input').keyup(function(e){
var $this=$(this);
clearTimeout($.data(this, 'timer') );
if(e.keyCode==13){
doSearch($this);
}else{
doSearch($this);
$(this).data('timer', setTimeout(doSearch, 100) );
}});
$('.woolentor_widget_psa_clear_icon').on('click', function(){
$(this).closest(".woolentor_widget_psa").find('#woolentor_psa_results_wrapper').html('');
$(this).parents('.woolentor_widget_psa').removeClass('woolentor_widget_psa_clear');
$(this).siblings('input[type="search"]').val('');
});
$(document).mouseup(function(e){
var container=$(".woolentor_widget_psa");
var hidecontainer=$('#woolentor_psa_results_wrapper');
if(!container.is(e.target)&&container.has(e.target).length===0){
hidecontainer.hide();
}else{
hidecontainer.show();
}});
});
function doSearch($this=''){
if($this.length > 0){
var searchString=$this.val(),
catagoryValue=$this.closest(".woolentor_widget_psa").find(".woolentor_widget_psa_category select").find(':selected').attr('data-value'),
searchResultWrap=$this.closest(".woolentor_widget_psa").find("#woolentor_psa_results_wrapper");
if(searchString==''){
searchResultWrap.html('');
$this.parents('.woolentor_widget_psa').removeClass('woolentor_widget_psa_clear');
}
if(searchString.length < 2) return;
var wrapper_width=$this.parents('.woolentor_widget_psa').width(),
settings=$this.parents('.woolentor_widget_psa form').data('settings'),
limit=settings.limit ? parseInt(settings.limit):10;
$.ajax({
url: woolentor_addons.woolentorajaxurl,
data: {
'action': 'woolentor_ajax_search',
'category': catagoryValue,
's':searchString,
'limit':limit,
'nonce':woolentor_addons.ajax_nonce
},
beforeSend:function(){
$this.parents('.woolentor_widget_psa').addClass('woolentor_widget_psa_loading');
},
success:function(response){
searchResultWrap.css({'width': wrapper_width});
searchResultWrap.html(response);
$this.parents('.woolentor_widget_psa').removeClass('woolentor_widget_psa_loading');
},
error: function(errorThrown){
console.log(errorThrown);
}}).done(function(response){
$this.parents('.woolentor_widget_psa').addClass('woolentor_widget_psa_clear');
});
}}
})(jQuery);