(function($){ $.fn.btsearch_autocomplete=function(options){ var base=this; var baseClass=base.attr('class'); var cachedResponse=new Array(); var isResults=false; defaultOptions={ formID:'', minChar:1, resultContainerWidth:false, loaderImg:false, loader:false, perPage:10, onSearchStart:function(){ }, onSearchComplete:function(){ }, view_all:false, siteurl:false, }; base.init=function(){ base.requests=Array(); base.runningAjax=true; base.btoptions=$.extend({},defaultOptions, options); base.container=$('#'+base.btoptions.formID+' .bt-search-result-container'); base.on('onKeydown', function (e){ base.onKeydown(e); }); base.on('keyup', function (e){ base.onKeyup(e); }); base.on('blur', function (e){ base.onBlur(e); }); base.on('focus', function (e){ base.onFocus(e); }); $(document).on('click', function (e){ base.hideResults(e); }); $('#'+base.btoptions.formID+' .btsearch-cross').on('click', function (e){ base.val(''); base.hideCross(); }); }; base.onKeydown=function(e){ } base.onKeyup=function(e){ var basevalue=base.val(); if(basevalue.length==0){ base.hideCross(); } if(base.btoptions.minChar <=basevalue.length){ if(isResults==false){ if(base.btoptions.loaderImg==false||base.btoptions.loaderImg==''){ $('#'+base.btoptions.formID+' .btsearch-loader').addClass('btsearch-show').addClass(base.btoptions.loader); }else{ $('#'+base.btoptions.formID+' .btsearch-loader').addClass('btsearch-show').css('backgroundImage','url('+base.btoptions.loaderImg+')'); }}else{ if(base.btoptions.loaderImg==false||base.btoptions.loaderImg==''){ $('#'+base.btoptions.formID+' .btsearch-loader').addClass('btsearch-show').addClass(base.btoptions.loader); }else{ $('#'+base.btoptions.formID+' .btsearch-loader').addClass('btsearch-show').css('backgroundImage','url('+base.btoptions.loaderImg+')'); } base.container.show(); } for(var i=0; i < base.requests.length; i++) base.requests[i].abort(); var data={ 'action': 'btsearch_action', 'keyword':base.val(), 'postType':base.btoptions.postType, 'perPage': base.btoptions.perPage, }; if(isResults){ if(typeof cachedResponse[basevalue]!='undefined'){ base.Response=cachedResponse[basevalue]; base.processResponse(); return; }} base.hideCross(); base.requests.push($.post(base.btoptions.siteurl+"/wp-admin/admin-ajax.php", data, function(response){ isResults=true; base.Response=response; base.runningAjax=true; cachedResponse[basevalue]=response; base.processResponse(); }) ); }} base.onBlur=function(e){ if(base.runningAjax==false){ if(base.val()!=''){ base.showCross(); }} if(base.btoptions.onSearchComplete.call(base.btoptions)===false){ return; }} base.onFocus=function(e){ var basevalue=base.val(); if(typeof cachedResponse[basevalue]!='undefined'){ base.Response=cachedResponse[basevalue]; base.processResponse(); return; } if(base.btoptions.onSearchStart.call(base.btoptions)===false){ return; }} base.processResponse=function(){ var response=$.parseJSON(base.Response); var html=''; $('#'+base.btoptions.formID+' .btsearch-loader').removeClass('btsearch-show'); base.container.html(html); if(base.btoptions.resultContainerWidth!=false){ base.container.css({'width':base.btoptions.resultContainerWidth}); } base.container.show(); base.runningAjax=false; base.showCross(); } base.hideResults=function(event){ if(!$(event.target).closest("#"+base.btoptions.formID+" .bt-search-result-container").length && !$(event.target).closest("#"+base.btoptions.formID+" .bt-search-field").length){ base.container.hide(); }} base.hideCross=function(){ $('#'+base.btoptions.formID+' .btsearch-cross').removeClass('btsearch-cross-show'); } base.showCross=function(){ if(base.val()!=''){ $('#'+base.btoptions.formID+' .btsearch-cross').addClass('btsearch-cross-show'); }} base.init(); };})(jQuery); jQuery(document).ready(function($){ var wacUpdateTimeout=null; wacChange=function(qtyInput){ if(( wooajaxcart.confirm_zero_qty=='yes')&&!wacZeroQuantityCheck(qtyInput)){ return false; } if(qtyInput.val()==0){ var removeLink=qtyInput.closest('.cart_item').find('.product-remove a'); removeLink.trigger('click'); return false; } if(wacUpdateTimeout!==null){ clearTimeout(wacUpdateTimeout); } wacUpdateTimeout=setTimeout(function(){ wacRefreshCart(qtyInput); }, wooajaxcart.ajax_timeout); return true; }; wacRefreshCart=function(qtyInput){ var updateButton=$("button[name='update_cart']:not(.dgfw-add-gift-button),input[name='update_cart']:not(.dgfw-add-gift-button)"); updateButton.removeAttr('disabled') .trigger('click') .val(wooajaxcart.updating_text) .prop('disabled', true); $("a.checkout-button.wc-forward").addClass('disabled') .html(wooajaxcart.updating_text); }; var wacZeroQuantityCheck=function(qtyInput){ if(parseInt(qtyInput.val())==0){ if(!confirm(wooajaxcart.warn_remove_text)){ qtyInput.val(1); return false; }} return true; }; var wacListenQtyChange=function(){ $(document.body).on('change', '.qty', function(e){ if($('.bundle_add_to_cart_button').length){ return true; } if($(this).is('select')&&($(this).attr('max') > 0) && (parseInt($(this).val()) > parseInt($(this).attr('max')))){ $(this).val($(this).attr('max')); e.preventDefault(); return false; } return wacChange($(this)); }); }; var wacListenQtyButtons=function(){ var fnIncrement=function(e){ var inputQty=$(this).parent().parent().parent().find('.qty'); inputQty.val(function(i, oldval){ return ++oldval; }); inputQty.trigger('change'); return false; }; var fnDecrement=function(e){ var inputQty=$(this).parent().parent().parent().find('.qty'); var oldVal=inputQty.val(); if(inputQty.attr('min')!='undefined'&&parseInt(inputQty.attr('min')) >=oldVal){ return false; } inputQty.val(--oldVal); inputQty.trigger('change'); return false; }; if($('.wac-btn-inc').length){ $('.wac-btn-inc').off('click.wac2910').on('click.wac2910', fnIncrement); $('.wac-btn-sub').off('click.wac2911').on('click.wac2911', fnDecrement); if($('.grid').length){ setTimeout(wacListenQtyButtons, 500); } $("").appendTo('head'); }else{ $(document.body).off('click.wac3000').on('click.wac3000', '.wac-btn-inc', fnIncrement); $(document.body).off('click.wac3001').on('click.wac3001', '.wac-btn-sub', fnDecrement); }}; wacListenQtyChange(); wacListenQtyButtons(); $(document).on('wc_fragments_refreshed', function(){ wacListenQtyButtons(); }); $(document.body).on('added_to_cart', function(event, fragments, cart_hash){ if($('.woocommerce-cart-form').length==0){ $('body').append(''); }}); });