1 line
5.5 KiB
JavaScript
1 line
5.5 KiB
JavaScript
"use strict";var instock_notifier={init:function(){jQuery(document).on("click",".stock_alert_button",this.subscribe_form),jQuery(document).on("click",".unsubscribe_button",this.unsubscribe_form),jQuery(".single_variation_wrap").on("show_variation",this.perform_upon_show_variation)},perform_upon_show_variation:function(e,i){var s=i.variation_id;jQuery(".stock_notifier-subscribe-form").hide(),jQuery(".stock_notifier-subscribe-form-"+s).show()},is_email:function(e){return!!/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(e)},unsubscribe_form:function(e){e.preventDefault(),jQuery(this).text(woo_stock_alert_script_data.processing),jQuery(this).addClass("stk_disabled");var i={action:"unsubscribe_button",customer_email:jQuery(this).closest(".stock_notifier-subscribe-form").find(".subscribed_email").val(),product_id:jQuery(this).closest(".stock_notifier-subscribe-form").find(".product_id").val(),var_id:jQuery(this).closest(".stock_notifier-subscribe-form").find(".variation_id").val()},s=woo_stock_alert_script_data.alert_unsubscribe_message;s=s.replace("%customer_email%",i.customer_email),jQuery.post(woo_stock_alert_script_data.ajax_url,i,function(e){jQuery(this).removeClass("stk_disabled"),!0==e?jQuery(".stock_notifier-subscribe-form").html('<div class="registered_message">'+s+"</div>"):jQuery(".stock_notifier-subscribe-form").html('<div class="registered_message">'+woo_stock_alert_script_data.error_occurs+'<a href="'+window.location+'"> '+woo_stock_alert_script_data.try_again+"</a></div>")})},subscribe_form:function(e){e.preventDefault();var i=woo_stock_alert_script_data.recaptcha_enabled,s=woo_stock_alert_script_data.recaptcha_version,t=jQuery(this).closest(".stock_notifier-subscribe-form").find(".stock_alert_email").val(),r=jQuery(this).closest(".stock_notifier-subscribe-form").find(".current_product_id").val(),a=jQuery(this).closest(".stock_notifier-subscribe-form").find(".current_product_name").val(),o=jQuery(this).closest(".stock_notifier-subscribe-form").find(".current_variation_id").val();if(i){if("v2"==s)grecaptcha&&grecaptcha.getResponse().length>0?instock_notifier.process_form():alert("Oops, you have to check the recaptcha!");else if("v3"==s){var c=jQuery(this).closest(".stock_notifier-subscribe-form").find("#recaptchav3_secretkey").val(),n=jQuery(this).closest(".stock_notifier-subscribe-form").find("#recaptchav3_response").val();jQuery.post(woo_stock_alert_script_data.ajax_url,{action:"recaptcha_validate_ajax",captcha_secret:c,captcha_response:n},function(e){1==e?instock_notifier.process_form():alert("Oops, recaptcha not varified!")})}}else instock_notifier.process_form(t,r,o,a)},process_form:function(e,i,s,t){var r=woo_stock_alert_script_data.alert_text_html,a=woo_stock_alert_script_data.button_html,o=woo_stock_alert_script_data.alert_success,c=woo_stock_alert_script_data.alert_email_exist,n=woo_stock_alert_script_data.valid_email,l=woo_stock_alert_script_data.ban_email_domin,d=woo_stock_alert_script_data.ban_email_address,u=woo_stock_alert_script_data.double_opt_in_success,f=woo_stock_alert_script_data.unsubscribe_button,p=woo_stock_alert_script_data.alert_fields,o=o.replace("%product_title%",t),o=o.replace("%customer_email%",e),c=c.replace("%product_title%",t),c=c.replace("%customer_email%",e);if(jQuery(this).addClass("stk_disabled"),e&&instock_notifier.is_email(e)){jQuery(this).toggleClass("alert_loader").blur();for(var m={action:"alert_ajax",email:e,product_id:i,variation_id:s},b=0;b<woo_stock_alert_script_data.additional_fields.length;b++)m[woo_stock_alert_script_data.additional_fields[b]]=jQuery(this).parent().find("."+woo_stock_alert_script_data.additional_fields[b]).val();jQuery.post(woo_stock_alert_script_data.ajax_url,m,function(n){"0"==n?jQuery(".stock_notifier-subscribe-form").html('<div class="registered_message">'+woo_stock_alert_script_data.error_occurs+'<a href="'+window.location+'"> '+woo_stock_alert_script_data.try_again+"</a></div>"):"/*?%already_registered%?*/"==n?jQuery(".stock_notifier-subscribe-form").html('<div class="registered_message">'+c+"</div>"+f+'<input type="hidden" class="subscribed_email" value="'+e+'" /><input type="hidden" class="product_id" value="'+i+'" /><input type="hidden" class="variation_id" value="'+s+'" />'):"/*?%ban_email_address%?*/"==n?jQuery(".stock_notifier-subscribe-form").html(r+'<div class="woo_fields_wrap">'+p+a+'</div><p style="color:#e2401c;" class="stock_alert_error_message">'+d+'</p><input type="hidden" class="current_product_id" value="'+i+'" /> <input type="hidden" class="current_variation_id" value="'+s+'" /><input type="hidden" class="current_product_name" value="'+t+'" />'):"/*?%ban_email_domain%?*/"==n?jQuery(".stock_notifier-subscribe-form").html(r+'<div class="woo_fields_wrap">'+p+a+'</div><p style="color:#e2401c;" class="stock_alert_error_message">'+l+'</p><input type="hidden" class="current_product_id" value="'+i+'" /> <input type="hidden" class="current_variation_id" value="'+s+'" /><input type="hidden" class="current_product_name" value="'+t+'" />'):"/*?%double_opt_in%?*/"==n?jQuery(".stock_notifier-subscribe-form").html('<div class="registered_message">'+u+"</div>"):jQuery(".stock_notifier-subscribe-form").html('<div class="registered_message">'+o+"</div>")})}else jQuery(".stock_notifier-subscribe-form").html(r+'<div class="woo_fields_wrap">'+p+a+'</div><p style="color:#e2401c;" class="stock_alert_error_message">'+n+'</p><input type="hidden" class="current_product_id" value="'+i+'" /> <input type="hidden" class="current_variation_id" value="'+s+'" /><input type="hidden" class="current_product_name" value="'+t+'" />')}};instock_notifier.init(); |