PageSourceSearch

https://bodo.su/wa-apps/shop/plugins/quickorder/js/frontend.min.js?2.13.1

js bodo.su collected 2026-09-24 12:08:53 UTC 38,514 bytes, 1 lines download raw bytes

1if("undefined"==typeof jQuery){var script=document.createElement("script");script.src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js",document.getElementsByTagName("head")[0].appendChild(script)}$.quickorder={features:{},messages:{},init:function(i){var e=this;e.options=i,e.messages=i.messages,console&&"1"==i.isDebug&&console.log("* * * Quickorder plugin.Version "+i.version+" * * *\nen - https://www.webasyst.com/store/plugin/shop/quickorder/\nru - https://www.webasyst.ru/store/plugin/shop/quickorder/"),e.loadForms(),$(document).on("click",e.options.productButton+","+e.options.cartButton,function(){return e.show($(this)),!1}),$(document).on("change","form",function(i){e.onFormChange($(this))}),$(window).resize(function(){e.quickorderResize()}),e.quickorderResize(),$("[data-quickorder-product-button], [data-quickorder-cart-button]").length&&$("input[name='product_id']").each(function(){e.onFormChange($(this).closest("form"))})},quickorderResize:function(){$("[data-quickorder-product-button], [data-quickorder-cart-button], [data-quickorder-inline-form]").each(function(){var i=$(this),e=i.parent().width();e<=600?i.addClass("quickorder600 quickorder760"):e<=760?i.addClass("quickorder760"):i.removeClass("quickorder760 quickorder600")}),$(".quickorder-popup").css("marginLeft",-1*Math.max(0,$(".quickorder-popup").outerWidth()/2)+"px")},onFormChange:function(i){var e=this,r=i.find("input[name='product_id']").val(),t=$(e.options.productButton+'[data-quickorder-product-id="'+r+'"]');r&&t.length&&setTimeout(function(){e.checkAvailability(i,r,t)},100)},show:function(i){var e=this,r=i.is(e.options.productButton)?"product":"cart",t={},o=$(document).find("input[name='product_id'][value='"+i.data("quickorder-product-id")+"']").closest("form");t[r]={},t[r][i.data("quickorder-sku-id")]={product_id:i.data("quickorder-product-id"),params:o.serialize(),inline:0,add_css:"cart"==r&&!$("#quickorder-inline-styles").length||!$("#quickorder-inline-styles").data("inline-css")?1:0},new igaponovDialog({loadingContent:!0,onOpen:function(i,r){$.post(e.options.urls.load,t,function(t){if("ok"==t.status&&t.data.length){var o=t.data[0];if(i.addClass("q-loaded"),r.$block.html(o.html),void 0!==o.css&&""!==o.css&&($("#quickorder-inline-styles").length?$("#quickorder-inline-styles").replaceWith(o.css):$("head").append(o.css)),e.initForm(r),window.grecaptcha&&window.onloadWaRecaptchaCallback)try{window.onloadWaRecaptchaCallback()}catch(i){}}else r.$block.html("<div class='quickorder-form-content quickorder-center quickorder-empty-cart'>"+$.quickorder.translate("The shopping cart is empty")+"</div>")}).always(function(){i.find(".quickorder-product").length||(r.$block.html("<div class='quickorder-form-content quickorder-center quickorder-empty-cart'>"+$.quickorder.translate("The shopping cart is empty")+"</div>"),i.removeClass("q-loaded"))})},onBgClick:function(i,r){!e.options.popupClose&&r.$wrapper.hasClass("q-loaded")||r.close()}})},checkAvailability:function(i,e,r){i.find(":radio[name='sku_id']").length?function(i,e){i.data("disabled")?e.hide():e.attr("data-quickorder-sku-id",i.val()).css("display","inline"==e.attr("data-button-display")?"inline-block":"table")}(i.find(":radio[name='sku_id']:checked"),r):(i.find(".quickorder-sku-feature").length||i.find("[name^='features[']").length)&&function(i,r){"undefined"!=typeof sku_features&&void 0!==$.quickorder.features&&void 0===$.quickorder.features[e]&&($.quickorder.features[e]=sku_features);if(void 0===$.quickorder.features||void 0===$.quickorder.features[e]){if(void 0===r.data("features"))return!1;$.quickorder.features[e]=r.data("features")}var t="";(i.find(".quickorder-sku-feature").length?i.find(".quickorder-sku-feature"):i.find("[name^='features[']")).filter("select, :checked, :hidden").each(function(){t+=$(this).data("feature-id")+":"+$(this).val()+";"});var o=$.quickorder.features[e][t];o&&o.available?r.attr("data-quickorder-sku-id",o.id).css("display","inline"==r.attr("data-button-display")?"inline-block":"table"):r.hide()}(i,r)},loadForms:function(){var i=this;if($(".quickorder-temp-container").length){var e={product:{},cart:{}};$(".quickorder-temp-container").each(function(){var i=$(this);e[i.data("type")][i.data("sku-id")]={product_id:i.data("product-id"),inline:i.data("inline")}}),$.post(i.options.urls.load,e,function(i){"ok"==i.status&&i.data.length&&$(i.data).each(function(i,e){$('.quickorder-temp-container[data-type="'+e.type+'"][data-sku-id="'+e.sku_id+'"][data-product-id="'+e.product_id+'"]').replaceWith(e.html)})}).always(function(){$(".quickorder-temp-container").length&&console&&console.log("Quickorder plugin. Deleted forms: "+$(".quickorder-temp-container").length+"\
1nCheck log files. This is bad behaviour my friend"),$(".quickorder-temp-container").remove(),i.initForm()})}},initForm:function(i){var e=this;$(".quickorder-form.not-inited").each(function(){var r=$(this);new QuickorderPluginFrontend({form:r,urls:e.options.urls,currency:e.options.currency,minimal:e.options.minimal,usingPlugins:e.options.usingPlugins,dialog:i,analytics:e.options.analytics[void 0!==r.data("data-quickorder-cf")?"cart":"product"]})})},translate:function(i){return this.messages[i]?this.messages[i]:i},currencyFormat:function(i,e){var r,t,o=this.options.currency.frac_digits,a=this.options.currency.decimal_point,n=this.options.currency.thousands_sep;isNaN(o=Math.abs(o))&&(o=2),null==a&&(a=","),null==n&&(n="."),(t=(r=parseInt(i=(+i||0).toFixed(o))+"").length)>3?t%=3:t=0,i=(t?r.substr(0,t)+n:"")+r.substr(t).replace(/(\d{3})(?=\d)/g,"$1"+n)+(o&&i-r?a+Math.abs(i-r).toFixed(o).replace(/-/,0).slice(2):"");var d=e?this.options.currency.sign:this.options.currency.sign_html;return this.options.currency.sign_position?i+this.options.currency.sign_delim+d:d+this.options.currency.sign_delim+i}};var QuickorderPluginFrontend=function(i){return(QuickorderPluginFrontend=function(i){this.$form=i.form,this.$submitBtn=this.$form.find("[data-quickorder-submit-button]"),this.$submitField=this.$submitBtn.closest(".quickorder-submit"),this.$totalFld=this.$form.find("[data-quickorder-total]"),this.$totalData=this.$form.find("[data-quickorder-total-data]"),this.$discountFld=this.$form.find("[data-quickorder-discount]"),this.$affiliateBlock=this.$form.find(".quickorder-affiliate-wrap"),this.dialog=i.dialog||"",this.urls=i.urls,this.xhr=!1,this.xhrSkus=!1,this.timer=!1,this.is_locked=0,this.is_autosubmit=0,this.minimal=i.minimal,this.usingPlugins=i.usingPlugins,this.analytics=i.analytics,this.loading=' <i class="quickorder-loading"></i>',this.initClass()}).prototype.initClass=function(){var e=this;e.$form.find(".quickorder-shipping-methods").length&&new QuickorderPluginFrontendShipping(e),e.bindEvents(),setTimeout(function(){e.initPhoneMask()},100),e.bindCart(),e.$form.removeClass("not-inited"),i.quickorder.quickorderResize(),e.reachGoal("inited"),e.$form.data("quickorder-inline-form")||e.reachGoal("fopen")},QuickorderPluginFrontend.prototype.bindEvents=function(){var e=this;e.$form.find(".quickorder-quantity-wrapper").each(function(){new QuantityQuickorder({$wrapper:i(this),QuickorderPluginFrontend:e})}),e.$form.find(".quickorder-js-show-more").click(function(){i(this).closest(".quickorder-row").hide().siblings().show()}),e.$form.on("click",".quickorder-service input[type=checkbox]",function(){var r=i(this),t=e.$form.find('.quickorder-service select[name="quickorder_product[service_variant]['+r.val()+']"]');t.length&&(r.is(":checked")?t.removeAttr("disabled"):t.attr("disabled","disabled")),e.update()}),e.$form.on("change",".quickorder-service select",function(){var r=i(this);r.closest(".quickorder-service").find(":checkbox").attr("data-price",r.find(":selected").attr("data-price")),e.update()}),e.$form.find(".js-quickorder-product-skus").click(function(){e.showSkusPopup(i(this))}),e.$form.on("closeSkus",".quickorder-popup",function(){i(this).remove(),e.$form.removeClass("q-loading"),e.xhrSkus&&e.xhrSkus.abort(),e.xhrSkus=!1,e.updateCartItems()}),e.$form.find(".js-quickorder-remove").click(function(){var r=i(this);r.closest(".quickorder-product").fadeOut(function(){var t=r.closest(".quickorder-form"),o=null;i(this).remove(),!t.find(".quickorder-product").length&&(t.find(".quickorder-form-content").addClass("quickorder-center quickorder-empty-cart").html(i.quickorder.translate("The shopping cart is empty")+" "+e.loading),t.find(".quickorder-form-footer").remove(),o=function(){location.reload()}),e.update(o)})}),e.$form.on("updatePrice",function(){e.update()}),e.$form.on("change",".quickorder-payment-methods input:radio",function(){var r=i(this);e.$form.find(".quickorder-payment-methods .f-quickorder-method").removeClass("selected"),r.is(":checked")&&(e.$form.find(".quickorder-payment-methods .wa-form").hide(),r.closest(".f-quickorder-method").addClass("selected").find(".wa-form").show()),e.usingPlugins&&e.update(
1)}),e.dialog&&parseInt(i.quickorder.options.isMobile)&&e.$form.on("focus",":text, textarea",function(r){r.preventDefault(),r.stopPropagation();const t=i(this),o=e.dialog.$wrapper.find(".w-dialog-wrapper");setTimeout(function(){const i=t.offset().top+o.scrollTop()-o.offset().top-30;o.scrollTop(i)},parseInt(i.quickorder.options.mobileStabDelay))});var r=[];r.push('input[name="quickorder[coupon]"]'),void 0!==i.quickorder.options.contactUpdate&&1===i.quickorder.options.contactUpdate&&r.push(".quickorder-fields input, .quickorder-fields select, .quickorder-fields textarea"),r.push("[data-quickorder-replace-shipping]"),e.$form.on("change",r.join(","),function(){var r=i(this);r.is("[data-quickorder-replace-shipping]")&&r.attr("data-quickorder-replace-flag",1),e.update()}),e.$form.on("focus",".quickorder-error",function(){i(this).removeClass("quickorder-error").siblings(".quickorder-error-popup").remove()}),e.$form.find(".quickorder-js-show-ad").click(function(){i(this).parent().hide(),e.$form.find(".quickorder-fl-ad").show()}),e.$form.on("click",".quickorder-js-affiliate",function(){i(this).next().val(1),e.update()}),e.$form.on("submit",".quickorder-success-payment-block form",function(){let r=i(this);return r.find(":submit").after(e.loading),i.post(e.urls.payment,r.serializeArray(),function(i){if(r.find(".quickorder-loading").remove(),i){let e=window.open();e.document.open().write(i),e.document.close()}}),!1}),e.$form.on("quickorder-unlocked",function(){setTimeout(function(){!e.is_locked&&e.is_autosubmit&&e.submitForm()},300)}),e.$submitBtn.click(function(){e.submitForm()}),i(document).off("quickorder-updated",".quickorder-form").on("quickorder-updated",".quickorder-form",function(){e.updateCartItems()}),i(document).off("wa_order_cart_reloaded.quickorder","#js-order-cart").on("wa_order_cart_reloaded.quickorder","#js-order-cart",function(){e.isCartForm()&&i.quickorder.loadForms()}),i(document).off("wa_order_cart_changed.quickorder","#js-order-cart").on("wa_order_cart_changed.quickorder","#js-order-cart",function(){e.isCartForm()&&e.isInlineForm()&&(e.$form.addClass("quickorder-temp-container q-loading").attr("data-type","cart").attr("data-sku-id",0).attr("data-product-id",0).attr("data-inline",""),i.quickorder.loadForms())})},QuickorderPluginFrontend.prototype.updateCartItems=function(){if(this.isCartForm()&&i("#js-order-cart").length){let r=i("#js-order-cart").data("controller");void 0!==r&&r.reload();var e=i("#js-order-form").data("controller");void 0!==e&&e.update()}},QuickorderPluginFrontend.prototype.isCartForm=function(){return void 0!==this.$form.attr("data-quickorder-cf")},QuickorderPluginFrontend.prototype.isInlineForm=function(){return void 0!==this.$form.attr("data-quickorder-inline-form")},QuickorderPluginFrontend.prototype.bindCart=function(){var e=this;i(document).ajaxComplete(function(i,r,t){return void 0!==t&&(e.endsWith(e.urls.cartSaveUrl.shop,t.url)||e.endsWith(e.urls.cartAddUrl.shop,t.url)||e.endsWith(e.urls.cartDeleteUrl.shop,t.url)||e.endsWith(e.urls.cartSaveUrl.plugin,t.url)||e.endsWith(e.urls.cartAddUrl.plugin,t.url)||e.endsWith(e.urls.cartDeleteUrl.plugin,t.url))&&e.cartChange(),!0})},QuickorderPluginFrontend.prototype.cartChange=function(){i(".quickorder-form").length&&(i(".quickorder-form").addClass("q-loading"),i.post(this.urls.load,{cart:{0:{inline:1}}},function(e){if("ok"==e.status&&e.data.length){var r=e.data[0];i(".quickorder-form").each(function(){i(this).replaceWith(r.html).removeClass("q-loading")})}}).always(function(){i.quickorder.initForm()}))},QuickorderPluginFrontend.prototype.endsWith=function(i,e){return i.substring(i.length-e.length,i.length)===e},QuickorderPluginFrontend.prototype.initPhoneMask=function(){var e=this.$form.find("input[data-type='phone'][data-extra]");if(e.length){var r=e.data("extra");const t={onKeyPress:function(r){i.quickorder.options.replace78&&setTimeout(function(){let i=r.replace(/\D/g,"");i.length>1&&78===parseInt(i.substring(0,2))&&(i=i.substring(0,1)+i.substring(2),e.val(i).trigger("input"),e[0].selectionStart=e[0].selectionEnd=1e4)},0)},translation:{Z:{pattern:/0/,fallback:"0"}}};e.quickorderMask(r,t)}},QuickorderPluginFrontend.prototype.update=function(e,r,t){var o=this;function a(e,r){var t=i("shipping"==r?e.shipping:e.payment),a=o.$form.find(".q-"+r).first().data("id"),n=[];t.find(".f-quickorder-method").each(function(){var t=i(this),d=o.$form.find(".quickorder-"+r+"-"+t.data("id"));a=t.data("id"),n.push(a),d.length?((e.replace_shipping||e.replace_shipping_plugins&&-1!==e.replace_shipping_plugins.indexOf(t.data("plugin")))&&d.replaceWith(t),t.data("hide")?d.hide().find(":radio:checked").prop("checked",!1):t.data("ignore")&&"payment"==r&&d.show()):o.$form.find(".quickorder-"+r+"-"+a).length?o.$form.find(".quickorder-"+r+"-"+a).after(t):o.$form.find(".quickorder-"+r+"-methods").append(t)}),"payment"==r&&n.length<o.$form.find(".quickorder-payment-methods .f-quickorder-method").length&&o.$form.find(".quickorder-payment-methods .f-quickorder-method").each(function(){-1===i.inArray(parseInt(i(this).attr("data-id")),n)&&i(this).hide()})}o.xhr&&o.xhr.abort(),o.$form.data("flexdiscount-pr")?(o.$form.find(".quickorder-product .quickorder-loading").remove(),o.$form.find(".quickorder-product .quickorder-price").html(o.loading)):o.updatePrice(),clearTimeout(o.timer),o.timer=setTimeout(function(){o.lock(),o.xhr=i.post(o.urls.update,o.collectData(),function(t){if(t&&"ok"==t.status&&t.data){if(o.unlock(),e)e.call(o);else{o.$totalFld.length&&o.$totalFld.html(i.quickorder.currencyFormat(t.data.total,!o.$form.data("ruble-sign"))),o.$totalData.attr("data-total",t.data.total),o.$discountFld.length&&(parseFloat(t.data.discount)<=0?o.$discountFld.closest(".quickorder-row").hide():o.$discountFld.html(i.quickorder.currencyFormat(t.data.discount,!o.$form.data("ruble-sign"))).closest(".quickorder-row").show()),""===t.data.shipping||r||(a(t.data,"shipping"),new QuickorderPluginFrontendShipping(o)),""!==t.data.payment&&a(t.data,"payment"),""!==t.data.affiliate&&o.$affiliateBlock.html(t.data.affiliate),function(e){if(e.user_discounts){var r=o.$form.find(".quickorder-fl-ad");r.html(e.user_discounts.html),e.user_discounts.collapse?r.hide():r.show(),""!==e.user_discounts.html?o.$form.find(".quickorder-js-show-ad").parent().show():o.$form.find(".quickorder-js-show-ad").parent().hide()}e.prices&&(i.each(e.prices,function(i,e){var r=o.$form.find('.quickorder-product[data-sku-id="'+i+'"]');r.length&&r.find(".quickorder-price").attr("data-price",e)}),o.updatePrice())}(t.data);const e=parseInt(t.data.is_coupon_valid);e?(o.$form.find(".quickorder-coupon-error").addClass("quickorder-hidden"),1===e?o.$form.find(".quickorder-coupon-success").removeClass("quickorder-hidden"):o.$form.find(".quickorder-coupon-success").addClass("quickorder-hidden")):(o.$form.find(".quickorder-coupon-success").addClass("quickorder-hidden"),o.$form.find(".quickorder-coupon-error").removeClass("quickorder-hidden")),i("[data-quickorder-cart-price]").length&&i("[data-quickorder-cart-price]").html(i.quickorder.currencyFormat(t.data.total,!o.$form.data("ruble-sign"))),i("[data-quickorder-cart-count]").length&&i("[data-quickorder-cart-count]").text(t.data.quantity)}o.reachGoal("updated")}},"json").always(function(){o.xhr=!1,o.unlock(),t&&t.call(o)})},600)},QuickorderPluginFrontend.prototype.updatePrice=function(){var e=this;e.$form.find(".quickorder-product").each(function(){var r=i(this),t=r.find(".quickorder-price"),o=r.find(".quickorder-compare-price"),a=parseFloat(t.attr("data-price")),n=void 0!==t.attr("data-original-price")?parseFloat(t.attr("data-original-price")):0,d=o.length?parseFloat(o.attr("data-price")):0,s=parseFloat(r.find('input[name="quickorder_product[quantity]"]').val()),c=1===parseInt(e.$form.attr("data-multiply"))?s:1;n>a&&(d=n,o.length||t.before('<span class="quickorder-compare-price" data-price="originalPrice"></span>
1')),a*=c,d*=c,r.find(":checkbox:checked").each(function(){a+=parseFloat(i(this).attr("data-price"))*c,d>0&&(d+=parseFloat(i(this).attr("data-price"))*c)}),t.html(i.quickorder.currencyFormat(a,!e.$form.data("ruble-sign"))),d>0?o.html(i.quickorder.currencyFormat(d,!e.$form.data("ruble-sign"))).show():o.hide()})},QuickorderPluginFrontend.prototype.submitForm=function(){var e=this;if(e.is_locked)e.addNotice(i.quickorder.translate("Wait, please..")),e.is_autosubmit=1;else{var r=new QuickorderValidate(e);if(r.validate())return r.display(),!1;e.lock(),i.post(e.urls.send,e.collectData(),function(t){if(t)if("ok"==t.status&&t.data){if(e.reachGoal("submit",t.data.order_id),void 0!==t.data.analytics&&""!==t.data.analytics&&e.$form.append(t.data.analytics),void 0!==t.data.redirect)window.location=t.data.redirect,e.$submitBtn.replaceWith(i.quickorder.translate("Wait, please... Redirecting")+" "+e.loading);else if(void 0!==t.data.html){try{e.$form.find(".quickorder-form-content").html(t.data.html)}catch(i){}e.$form.find(".quickorder-form-footer").remove()}}else if("fail"==t.status&&t.errors){for(var o in e.reachGoal("submit_error"),r.clean(),t.errors){var a=t.errors[o];e.$form.find('[name^="quickorder_fields['+o+']"]').length?r.addError(e.$form.find('[name^="quickorder_fields['+o+']"]'),a):"terms"==o&&e.$form.find(".quickorder-terms-error").length?e.$form.find(".quickorder-terms-error").show():a&&r.addError(null,a),"update_captcha"===o&&e.$form.find(".wa-captcha-img").length&&e.$form.find(".wa-captcha-img").click()}r.display()}},"json").fail(function(){e.reachGoal("submit_error")}).always(function(){e.unlock(),e.removeNotice(),e.is_autosubmit=0})}},QuickorderPluginFrontend.prototype.addNotice=function(i){this.removeNotice(),this.$submitField.prepend("<div class='quickorder-notice'>"+i+"</div>")},QuickorderPluginFrontend.prototype.removeNotice=function(){this.$submitField.find(".quickorder-notice").remove()},QuickorderPluginFrontend.prototype.collectData=function(){var e=i([]),r=[];this.$form.find(".quickorder-product").each(function(){r.push(i(this).find("input,select").serialize())}),e=e.add({name:"products",value:r.length?JSON.stringify(r):""});var t=this.$form.find("input[name='shipping_id']:checked");if(t.length){var o=this.$form.find(".quickorder-shipping-"+t.val());o.find(".quickorder-shipping-rates:hidden").prop("disabled",!0),e=e.add(o.find("input,textarea,select").serializeArray()),o.find(".quickorder-shipping-rates:hidden").prop("disabled",!1)}var a=this.$form.find("input[name='quickorder[payment_id]']:checked");return a.length&&(e=e.add(this.$form.find(".quickorder-payment-"+a.val()).find("input,textarea,select").serializeArray())),e=(e=e.add(this.$form.find("[name*=quickorder]").not("[name^=quickorder_product]").add(this.$form.find("[data-quickorder-captcha] input, [data-quickorder-captcha] textarea")).serializeArray())).add({name:"qformtype",value:void 0!==this.$form.attr("data-quickorder-pf")?"product":"cart"}),this.$form.find("[data-quickorder-replace-flag]").length&&(e=e.add({name:"replace_shipping",value:1}),this.$form.find("[data-quickorder-replace-flag]").removeAttr("data-quickorder-replace-flag")),e},QuickorderPluginFrontend.prototype.lock=function(){this.is_locked=1,this.$submitBtn.addClass("q-disabled"),this.$form.addClass("q-is-locked"),this.$submitBtn.find(".quickorder-loading").length||this.$submitBtn.append(this.loading),this.$discountFld.length&&this.$discountFld.append(this.loading),this.$totalFld.length&&this.$totalFld.append(this.loading),this.$form.find("[data-quickorder-replace-flag]").length&&this.$form.find(".quickorder-shipping-wrap, .quickorder-payment-wrap").addClass("quickorder-temp-blocked")},QuickorderPluginFrontend.prototype.unlock=function(){this.is_locked=0,this.$form.removeClass("q-is-locked"),this.$submitBtn.removeClass("q-disabled").find(".quickorder-loading").remove(),this.$discountFld.length&&this.$discountFld.find(".quickorder-loading").remove(),this.$totalFld.length&&this.$totalFld.find(".quickorder-loading").remove(),this.$form.find(".quickorder-temp-blocked").removeClass("quickorder-temp-blocked"),this.reachGoal("unlocked")},QuickorderPluginFrontend.prototype.showSkusPopup=function(e){i(".quickorder-popup").trigger("closeSkus");var r='    <div class="quickorder-popup is-loading">        <div class="quickorder-popup-head">
1'+i.quickorder.translate("Select product sku")+' <span onclick=\'$(this).closest(".quickorder-popup").trigger("closeSkus");\' data-quickorder-close></span></div>        <div class="quickorder-popup-content">            <span class="quickorder-loading2"></span>        </div>    </div>',t=i(r);this.$form.addClass("q-loading").append(t),t.css({top:e.position().top,marginLeft:-1*Math.max(0,t.outerWidth()/2)+"px"}).data("form",this.$form).data("serviceUrl",this.urls.service).data("sku-id",e.closest(".quickorder-product").attr("data-sku-id")),this.xhrSkus=i.post(this.urls.getProductSkus,{id:e.data("id"),ruble_sign:this.$form.data("ruble-sign"),image_size:this.$form.data("image-size")},function(i){t.removeClass("is-loading").find(".quickorder-popup-content").html(i),t.css({marginLeft:-1*Math.max(0,t.outerWidth()/2)+"px"})})},QuickorderPluginFrontend.prototype.reachGoal=function(e,r){if(this.analytics.ya_counter){var t=window["yaCounter"+this.analytics.ya_counter],o=this.analytics["ya_"+e];o&&("undefined"!=typeof ym?ym(this.analytics.ya_counter,"reachGoal",o):t&&t.reachGoal(o))}var a=this.analytics["ga_category_"+e],n=this.analytics["ga_action_"+e];if(window.ga&&(a||n)){var d="";i.isFunction(ga.getAll)&&(d=ga.getAll()[0]),d?d.send("event",a,n):window.ga("send",{hitType:"event",eventCategory:a,eventAction:n})}this.$form.trigger("quickorder-"+e,[r])},QuickorderPluginFrontend}(jQuery),QuantityQuickorder=function(i){return(QuantityQuickorder=function(i){var e=this;e.$wrapper=i.$wrapper,e.QuickorderPluginFrontend=i.QuickorderPluginFrontend,e.$field=e.$wrapper.find(".quickorder-quantity-field input"),e.$min=e.$wrapper.find(".quickorder-js-decrease"),e.$max=e.$wrapper.find(".quickorder-js-increase"),e.$min_desc=e.$wrapper.find(".quickorder-js-min-description"),e.$max_desc=e.$wrapper.find(".quickorder-js-max-description"),e.denominator=void 0!==e.$field.data("denominator")?e._validate("float",e.$field.data("denominator")):1,e.denominator=e.denominator>0?e.denominator:1,e.min=void 0!==e.$field.data("min")?e._validate("float",e.$field.data("min")):e.denominator,e.min=e.min>0?e.min:1,e.max=void 0!==e.$field.data("max")?e._validate("float",e.$field.data("max")):0,e.max=e.max>=0?e.max:0,e.step=void 0!==e.$field.data("step")?e._validate("float",e.$field.data("step")):1,e.step=e.step>0?e.step:1,e.value=function(){var i=e.$field.val();parseFloat(i)>0||(e.$field.val(e.min),i=e.min);return e.validate(i)}(),e.init()}).prototype.init=function(){var e=this;e.$field.data("controller",e),e.$wrapper.data("controller",e),e.$wrapper.on("click",".quickorder-js-increase",function(r){r.preventDefault(),i(this).hasClass("is-locked")||e.set(e.value+e.step)}),e.$wrapper.on("click",".quickorder-js-decrease",function(r){r.preventDefault(),i(this).hasClass("is-locked")||e.set(e.value-e.step)}),e.$field.on("input",function(){var r=e.$field.val(),t="string"==typeof r?r:""+r;(t=function(e){var r=["0","1","2","3","4","5","6","7","8","9","."],t=[],o=!1;return e=e.replace(/,/g,"."),i.each(e.split(""),function(i,e){"."===e?o||(o=!0,t.push(e)):r.indexOf(e)>=0&&t.push(e)}),t.join("")}(t))!==r&&e.$field.val(t)}),e.$field.on("change",function(){e.set(e.$field.val())}),e.setDescription()},QuantityQuickorder.prototype.set=function(i){i=this.validate(i),this.$field.val(i),this.value=i,this.setDescription(),this.QuickorderPluginFrontend.update(),this.$wrapper.trigger("quantity.changed",[this.value,this])},QuantityQuickorder.prototype.validate=function(i){i="number"!=typeof i?parseFloat(i):i,(i=parseFloat(i.toFixed(3)))>0||(i=this.min),i>0&&i<this.min&&(i=this.min);var e=Math.floor(i/this.denominator);return 1*(this.denominator*e).toFixed(3)!==i&&(i=this.denominator*(e+1)),this.max&&i>this.max&&(i=this.max),this._validate("float",i)},QuantityQuickorder.prototype._validate=function(e,r){var t=r="string"==typeof r?r:""+r;let o,a;switch(e){case"float":var n=parseFloat(r);n>=0&&(t=1*n.toFixed(3));break;case"number":o=["0","1","2","3","4","5","6","7","8","9",".",","],a=[];let d=!1;i.each(r.split(""),function(i,e){"."===e||","===e?(e=".",d||(d=!0,a.push(e))):o.indexOf(e)>=0&&a.push(e)}),t=a.join("");break;case"integer":o=["0","1","2","3","4","5","6","7","8","9"],a=[],i.each(r.split(""),function(i,e){o.indexOf(e)>=0&&a.push(e)}),t=a.join("")}return t},QuantityQuickorder.prototype.update=function(i){var e=void 0!==i.min?this._val
1idate("float",i.min):this.min,r=void 0!==i.max?parseFloat(i.max)>=0?this._validate("float",i.max):0:this.max,t=void 0!==i.step?this._validate("float",i.step):this.step,o=void 0!==i.value?this.validate(i.value):this.value;e>0&&e!==this.min&&(this.min=e),r>=0&&r!==this.max&&(this.max=r),t>0&&t!==this.step&&(this.step=t),o>0&&o!==this.value&&(this.value=o),this.set(this.value)},QuantityQuickorder.prototype.setDescription=function(){var i=this,e="is-locked";function r(r,t,o){r.removeClass(e),i.value===o&&r.addClass(e)}r(i.$min,i.$min_desc,i.min),r(i.$max,i.$max_desc,i.max)},QuantityQuickorder}(jQuery),QuickorderValidate=(jQuery,(QuickorderValidate=function(i){this.parent=i,this.$form=i.$form,this.minimal=i.minimal,this.$errorBlock=this.$form.find(".quickorder-error-block"),this.errors=[],this.termsError=0,this.findErrors(this.$form)}).prototype.findErrors=function(){this.requiredFilter(),this.maskFilter(),this.shippingFilter(),this.paymentFilter(),this.minimalFilter()},QuickorderValidate.prototype.validate=function(){return this.cleanScreen(),!(!this.errors.length&&!this.termsError)},QuickorderValidate.prototype.clean=function(){this.cleanScreen(),this.errors=[],this.termsError=0},QuickorderValidate.prototype.cleanScreen=function(){this.$form.find(".quickorder-error").removeClass("quickorder-error"),this.$form.find(".quickorder-error-popup").remove(),this.$form.find(".quickorder-terms-error").hide(),this.$errorBlock.hide()},QuickorderValidate.prototype.display=function(){if(this.errors.length){var i=[];for(var e in this.errors){var r=this.errors[e];r.field?(r.field.addClass("quickorder-error"),this.showError(r.field,r.message)):"string"==typeof r.message&&i.push(r.message)}i.length&&this.$errorBlock.html(i.join("<br>")).show()}this.termsError&&this.$form.find(".quickorder-terms-error").show()},QuickorderValidate.prototype.showError=function(i,e){i.siblings(".quickorder-error-popup").length||i.after('<div class="quickorder-error-popup"><div>'+e+"</div></div>")},QuickorderValidate.prototype.addError=function(i,e){this.errors.push({field:i,message:e})},QuickorderValidate.prototype.requiredFilter=function(){var i=this,e=0;i.$form.find(".quickorder-required").each(function(){var r=$(this).find(":input,select,textarea"),t=r.val();""==$.trim(t)&&(i.addError(r,$.quickorder.translate("Field is required")),e=1)}),e&&i.addError(null,$.quickorder.translate("Fill in required fields")),i.$form.find(".quickorder-product").length||i.addError(null,$.quickorder.translate("Your order is empty"));var r=i.$form.find("[data-quickorder-captcha]"),t=r.find("input,textarea");r.length&&""==t.val()&&i.addError(null,$.quickorder.translate("Fill in captcha field"));var o=i.$form.find('input[name="quickorder[terms]"]');o.length&&!o.prop("checked")&&(i.termsError=1,i.$form.find(".quickorder-terms-error").length||i.addError(null,$.quickorder.translate("Terms and agreement")))},QuickorderValidate.prototype.maskFilter=function(){var i=this.$form.find("input[data-type='phone']");if(i.length&&void 0!==i.data("extra")&&""!==i.val()){i.trigger("input");var e=i.data("extra");e="^"+e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&").replace(/\s/g,"s").replace(/[0]/g,"\\d").replace(/[Z]/g,"0")+"$";try{new RegExp(e).test(i.val())||(this.addError(i,$.quickorder.translate("Phone format is not correct.<br>Use this one:")+" "+i.data("extra")),this.addError(null,$.quickorder.translate("Fix the errors above")))}catch(e){this.addError(i,$.quickorder.translate("Phone format is not correct.<br>Use this one: ")+i.data("extra")),console&&(console.log("Quickorder plugin. Problems with phone mask. Full error info:"),console.log(e))}}},QuickorderValidate.prototype.shippingFilter=function(){if(this.$form.find(".quickorder-shipping-methods").length){var i=this.$form.find(".quickorder-shipping-methods :radio:checked");i.length&&!i.closest(".f-quickorder-method").hasClass("q-method-error")||this.addError(null,$.quickorder.translate("Shipping method has errors. Please, fix them."))}},QuickorderValidate.prototype.paymentFilter=function(){if(this.$form.find(".quickorder-payment-methods").length){var i=this.$form.find(".quickorder-payment-methods :radio:checked");i.length&&!i.closest(".f-quickorder-method").hasClass("q-method-error")||this.addError(null,$.quickorder.translate("Payment method has errors. Please, fix them."))}},QuickorderValidate.prototype.minimalFilter=function(){var i=this;if(i.minimal){var e=parseFloat(i.parent.$totalData.attr("data-total"));if(void 0!==i.minimal.price&&parseFloat(i.minimal.price)>e&&i.addError(null,$.quickorder.translate("Minimal sum of order is %s").replace("%s",$.quickorder.currencyFormat(parseFloat(i.minimal.price),!i.$form.data("ruble-sign")))),void 0!==i.minimal.product_sum){var r=parseFloat(i.minimal.product_sum);
1i.$form.find(".quickorder-product").each(function(){var e=$(this),t=parseFloat(e.find('[name="quickorder_product[quantity]"]'))*parseFloat(e.find(".quickorder-price").attr("data-price"));if(r>t)return i.addError(null,$.quickorder.translate("Minimal sum of each product is")+" "+$.quickorder.currencyFormat(r,!i.$form.data("ruble-sign"))),!1})}if(void 0!==i.minimal.total_quantity){var t=0;i.$form.find('[name="quickorder_product[quantity]"]').each(function(){t+=parseFloat($(this).val())}),parseFloat(i.minimal.total_quantity)>t&&i.addError(null,$.quickorder.translate("Minimal quantity of products is")+" "+parseFloat(i.minimal.total_quantity))}if(void 0!==i.minimal.product_quantity){var o=parseFloat(i.minimal.product_quantity);i.$form.find('[name="quickorder_product[quantity]"]').each(function(){if(o>parseFloat($(this).val()))return i.addError(null,$.quickorder.translate("Minimal quantity of each product is")+" "+o),!1})}}},QuickorderValidate);$.hideskusQuickorderPlugin={inlineItem:"",inlineRow:"",locale:"",selectedClass:"selected",disabledClass:"hideskus-disabled",disabledRadioClass:"hideskus-radio-disabled",hiddenOptionClass:"hideskus-option-hide",hideNotInStock:0,gotoVisible:1,delayStart:1,force:1,messages:{ru_RU:{Empty:"Отсутствует","Not in stock":"Нет в наличии"}},translate:function(i){return void 0!==this.messages[this.locale]&&this.messages[this.locale][i]?this.messages[this.locale][i]:i},init:function(i){this.hideNotInStock=void 0!==i&&void 0!==i.hide_not_in_stock?parseInt(i.hide_not_in_stock):0,this.gotoVisible=void 0!==i&&void 0!==i.go_to_available?parseInt(i.go_to_available):1,this.delayStart=void 0!==i&&void 0!==i.delay?parseInt(i.delay):1,this.delayStart&&($(document).on("change",".quickorder-sku-feature",function(){this.delayStart=0}),setTimeout(function(){$.hideskusQuickorderPlugin.delayStart&&$(".quickorder-sku-feature").length&&$(".quickorder-sku-feature:first").change()}
1,1e3)),$(function(){var i=$('input:radio[name="quickorder[sku_id]"]');if(i.length){var e=0,r={},t={};i.each(function(){var i=$(this),o=i.closest("form").find("input[name='product_id']").val();if(i.prop("disabled")||1==i.data("disabled")){var a=i.closest("li").length?i.closest("li"):i.closest("div");$.hideskusQuickorderPlugin.hideNotInStock?(a.hide(),i.is(":checked")&&(e=1)):a.addClass($.hideskusQuickorderPlugin.disabledRadioClass).attr("title",$.hideskusQuickorderPlugin.translate("Not in stock"))}else void 0===t[o]&&(r[o]=i,t[o]=1)}),(e||$.hideskusQuickorderPlugin.gotoVisible)&&($.isEmptyObject(r)||setTimeout(function(){$.each(r,function(){$(this).click()})},800))}})},setOptions:function(i){this.inlineItem=void 0!==i&&void 0!==i.inlineItem?i.inlineItem:"",this.inlineRow=void 0!==i&&void 0!==i.inlineRow?i.inlineRow:"",this.selectedClass=void 0!==i&&void 0!==i.selectedClass?i.selectedClass:"selected",this.disabledClass=void 0!==i&&void 0!==i.disabledClass?i.disabledClass:"hideskus-disabled",this.disabledRadioClass=void 0!==i&&void 0!==i.disabledRadioClass?i.disabledRadioClass:"hideskus-radio-disabled"},start:function(i,e){function r(i,e){return e=e||!1,s.inlineItem&&i.closest(s.inlineItem).length?e?i.closest(s.inlineItem).siblings(s.inlineItem).andSelf():i.closest(s.inlineItem).siblings(s.inlineItem):s.inlineItem&&i.siblings(s.inlineItem).length?i.siblings(s.inlineItem):i.siblings("a").length?(s.inlineItem="a",i.siblings("a")):i.parent("label").length?(s.inlineItem="label",e?i.parent().siblings("label").andSelf():i.parent().siblings("label")):{}}function t(i,e){void 0===g[e=e||"disable"][i]&&(g[e][i]=0),g[e][i]++}function o(i,e){if(void 0!==g[e=e||"disable"][i])return g[e][i];var r=0;for(var t in g[e])-1!==t.indexOf(i)&&(r+=g[e][t]);return r||-1}function a(i){return e.split(";").length!==i.split(";").length}function n(i,r,t){!a(i)&&e==i&&t&&(h.findVisible[i]={path:i,skuFeat:r}),h.skuFeat[r.id]={path:i,skuFeat:r}}function d(i,e){e?(void 0===i.attr("data-old-title")&&i.attr("data-old-title",void 0!==i.attr("title")?i.attr("title"):""),i.attr("title",e)):void 0!==i.attr("data-old-title")?i.attr("title",i.attr("data-old-title")):i.removeAttr("title")}var s=this,c=void 0!==i.form?i.form:void 0!==i.$form?i.$form:$(i).closest("form").length?$(i).closest("form"):"",l=void 0!==i.features?i.features:"undefined"!=typeof sku_features?sku_features:"";if(!c||!l)return console&&console.warn('Plugin "hideskus". \r\n'+(c?"":"Form not exists.")+(l?"":"Features not exist.")),!0;var u,p=(c=c instanceof jQuery?c:$(c)).find(".quickorder-sku-feature:first"),f=p.data("feature-id")+":"+p.val()+";",h={findVisible:{},skuFeat:{}},m=0,k={},g={disable:{},hide:{}},v={},q={},y={};if(e=e||(u="",c.find(".quickorder-sku-feature").each(function(){var i=$(this);u+=i.data("feature-id")+":"+i.val()+";"}),u),c.find(".quickorder-sku-feature").each(function(i){var e,t=$(this),o=t.data("feature-id");if(void 0!==y[o])return!0;var a=t.is("input");if(y[o]=1,a){var n=t.siblings(".temp-block"),d=n.length?n:t.parent().find(".temp-block").length?t.parent().find(".temp-block"):"";d.length&&d.remove()}else t.prop("disabled",!1).find(".temp-block").remove();e={id:o,isInput:a,isRadio:t.is("input:radio"),fields:a?r(t,!0):t.find("option").length?t.find("option"):{}},0===i&&(v=e),q.children=e,q=e}),function i(r,c,u,p){var f=c,h=-1!==e.indexOf(f),m=!1;return k[p]=1,$.each(u.fields,function(g,v){var q=void 0!==(v=$(v)).data("value")?v.data("value"):u.isRadio?v.find("input").val():v.val();if(c+=u.id+":"+q+";",void 0!==u.children){var y=i(r,c,u.children,p+1);m||(k[p]=y.hideLimit),c+=y.key}var b=f+u.id+":"+q+";",F=o(b,"hide"),_=o(b)+(-1!==F?F:0),C=_>=k[p]&&h,w=F>=k[p]&&h,x=_<k[p]&&h,Q=F<k[p]&&h,P=1==k[p]&&h;!a(b)&&!l[c]||w?(w||t(f,"hide"),(P||w)&&(v.hide(),u.isInput||v.addClass(s.hiddenOptionClass),n(b,u,1))):C||l[c]&&!l[c].available?(C||t(f,s.hideNotInStock?"hide":"disable"),(P||C)&&(s.hideNotInStock?(v.hide(),u.isInput||v.addClass(s.hiddenOptionClass)):(v.show(),u.isInput||v.removeClass(s.hiddenOptionClass)),u.isInput?(v.addClass(s.disabledClass),d(v,$.hideskusQuickorderPlugin.translate("Not in stock"))):(v.addClass(s.disabledClass),-1!==e.indexOf(b)&&v.closest("select").addClass(s.disabledClass)),n(b,u,s.hideNotInStock?1:s.gotoVisible?1:s.force?1:0))):(x||P||Q)&&(u.isInput?(v.show().removeClass(s.disabledClass),d(v)):(v.show().removeClass(s.disabledClass).removeClass(s.hiddenOptionClass),-1!==e.indexOf(b)&&v.closest("select").removeClass(s.disabledClass))),c=f,m=!0}),{key:c,hideLimit:void 0!==u.children?k[p]*u.fields.length:u.fields.length}}(f,"",v,0),!$.isEmptyObject(h.findVisible))if(function(){if(!$.isEmptyObject(h.findVisible)){var i=function(e){function t(i){var e=i.split(";");for(var t in e)if(""!=e[t]){var o=e[t].split(":"),a=c.find(".quickorder-sku-feature[name='quickorder[features]["+o[0]+"]']");
1if(a.is("input:radio")&&(a=c.find(".quickorder-sku-feature[name='quickorder[features]["+o[0]+"]'][value='"+o[1]+"']")),a.is("input")){var n=s.inlineRow?a.closest(s.inlineRow):a.parent().parent(),d=r(a);if(d.removeClass(s.selectedClass),a.is("input:radio")?(n.find(".quickorder-sku-feature").prop("checked",!1),a.prop("checked",!0)):(a.attr("value",o[1]),d.find("[data-value='"+o[1]+"']").addClass(s.selectedClass),d.filter("[data-value='"+o[1]+"']").addClass(s.selectedClass)),a.parent(".color").length){var l=a.parent(".color").find(".fa-check");if(l.length){var u=a.siblings("[data-value='"+o[1]+"']");u.find(".fa-check").length||(l.remove(),u.append('<i class="fa fa-check"></i>'))}}}else a.find("option").removeClass(s.selectedClass).prop("selected",!1).siblings("[value='"+o[1]+"']").addClass(s.selectedClass).prop("selected",!0),a.val(o[1])}}var o=e.substring(0,e.lastIndexOf(":")),n=2===o.split(":").length,d=null;if(""===o)return!1;for(var u in l)if(!a(u)&&-1!==u.indexOf(o)){if(l[u].available)return t(u),!(m=1);null===d&&u!==e&&n&&(d=u)}return null===d||s.gotoVisible||s.force?i(o):(t(d),!(m=1))};$.each(h.findVisible,function(e,r){i(r.path)})}}(),m){if(m)return p.change(),!1}else $.each(h.skuFeat,function(i,e){if(!e.skuFeat.fields.is(":visible")){var r=e.skuFeat.fields.first(),t=r.clone(),o=t.find("span").length?t.find("span"):t;t.addClass("temp-block "+s.disabledClass).css("display","inline-block"),""!==o.text()&&o.html($.hideskusQuickorderPlugin.translate("Empty")),r.after(t.prop("outerHTML"))}});return!(s.force=0)}};

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.