1 line
5.3 KiB
JavaScript
1 line
5.3 KiB
JavaScript
function oc_cb_validate_form(){let e=!1;jQuery("#oc_cb_errors").removeClass("show"),jQuery(".oc_cb_spinner").removeClass("success").removeClass("is-active");var r="#banner_text",s=jQuery(r).attr("maxlength"),o="#occb_rem",s=(jQuery(o).html(jQuery(r).val().length+" / "+s),0==jQuery(r).val().length?(jQuery(r).addClass("occberror"),e=!0):(490<=jQuery(r).val().length?jQuery(o).css("display","inline-block"):(jQuery(o).css("display","none"),jQuery(r).removeClass("occberror")),jQuery(r).removeClass("maxlimit")),"#policy_link_text"),o=(jQuery(s+":visible").length&&0==jQuery(s).val().length?(jQuery(s).addClass("occberror"),e=!0):jQuery(s).removeClass("occberror"),"#policy_link_url"),r=new RegExp("(https?://(?:www.|(?!www))[a-zA-Z0-9-]+[a-zA-Z0-9-].[^s]{2,}|https?://(?:www.|(?!www))[a-zA-Z0-9].[^s]{2,}|www.[a-zA-Z0-9].[^s]{2,})"),s=(!jQuery(o+":visible").length||0!=jQuery(o).val().length&&0!=r.test(jQuery(o).val())?jQuery(o).removeClass("occberror"):(jQuery(o).addClass("occberror"),e=!0),"#button_text");return jQuery(s).val().length?jQuery(s).removeClass("occberror"):(jQuery(s).addClass("occberror"),e=!0),e&&jQuery("#cb_enable:checked").length?(jQuery(".oc_cb_btn").attr("disabled","disabled"),!1):(jQuery(".oc_cb_btn").prop("disabled",jQuery("#oc_cb_config_form").serialize()==jQuery(this).data("serialized")),!0)}function check_upsell_view(e){"onEnable"===e&&(e=location.search,jQuery("#oc_um_overlay").show(),ocSetModalData({isPremium:oc_constants.isPremium,feature:"cookie_banner",featureAction:"settings",referrer:e}))}!function(r){function e(){var e=r("#backup-banner").html();1190<r(window).width()?(r("#responsive-cookie-banner").html(""),r("#nonresponsive-cookie-banner").html(e)):(r("#responsive-cookie-banner").html(e),r("#nonresponsive-cookie-banner").html(""))}e(),r(window,document).resize(()=>{e()}),jQuery(".oc_cb_btn").prop("disabled",!0),jQuery(document).on("change","#cb_enable",function(){if(jQuery(this).prop("checked")){if(!oc_constants.isPremium)return jQuery(this).prop("checked",!1),jQuery(".fieldset.cb_fields").removeClass("show"),check_upsell_view("onEnable"),jQuery("#banner_preview, #backup-banner > div").removeClass(),!1;jQuery(".fieldset.cb_fields").removeClass("show").addClass("show")}else if(jQuery(".fieldset.cb_fields").removeClass("show"),!oc_constants.isPremium)return jQuery("#banner_preview, #backup-banner > div").removeClass(),jQuery("#oc_cb_config_form").submit(),!1}),jQuery(document).on("change","#toggle_policy",function(){jQuery(this).prop("checked")?jQuery(".fieldset.policy_fields").removeClass("show").addClass("show"):jQuery(".fieldset.policy_fields").removeClass("show")}),jQuery(this).data("serialized",jQuery("#oc_cb_config_form").serialize()),jQuery(document).on("input","#oc_cb_config_form input, #oc_cb_config_form textarea",function(){setTimeout(function(){oc_cb_validate_form()},200)}),jQuery(document).on("click","#oc_cb_config_form input, #oc_cb_config_form textarea",function(){let e,r;if(e=jQuery('input[name="banner_style"]:checked').val(),!jQuery('input[name="show"]:checked').val())return jQuery("#banner_preview, #backup-banner > div").removeClass(),!0;switch(element=jQuery(this).attr("name")){case"banner_style":e=jQuery(this).val(),r="fill_"+e;break;case"banner_text":r="text_"+e;break;case"policy_link":case"policy_link_text":case"policy_link_url":r="link_"+e;break;case"button_text":r="button_"+e;break;default:r="fill_"+e}jQuery("#banner_preview, #backup-banner > div").removeClass(),jQuery("#banner_preview, #backup-banner > div").addClass(r)}),jQuery(document).on("submit","#oc_cb_config_form",function(e){return e.preventDefault(),oc_cb_validate_form()&&(jQuery("#oc_cb_errors").removeClass("show"),jQuery(".oc_cb_spinner").removeClass("success").addClass("is-active"),e=jQuery("#oc_cb_config_form").serialize(),e={action:"oc_cb_settings",oc_cb_sec:oc_constants.oc_cb_token,settings:e},jQuery.ajax({url:ajaxurl,type:"POST",data:e,dataType:"JSON",error:function(e,r,s){console.log(e.status+" "+e.statusText+"---"+r),jQuery("#oc_cb_errors").html("").html("Failed to save settings. Please reload the page and try again.").addClass("show"),jQuery(".oc_cb_spinner").removeClass("is-active").removeClass("success").addClass("error")},success:function(e){if(e.error)return jQuery(".oc_cb_spinner").removeClass("is-active").removeClass("success").addClass("error"),!1;jQuery(".oc_cb_spinner").removeClass("is-active").addClass("success"),setTimeout(function(){jQuery(".oc_cb_spinner").removeClass("is-active").removeClass("success"),jQuery(".oc_cb_btn").prop("disabled",!0),jQuery(this).data("serialized",jQuery("#oc_cb_config_form").serialize())},2e3)},statusCode:{200:function(){},404:function(){jQuery("#oc_cb_errors").html("").html("Failed to save settings. Please reload the page and try again.").addClass("show")},500:function(){jQuery("#oc_cb_errors").html("").html("Something went wrong; internal server error while processing the request!").addClass("show")}}})),!1}),jQuery(document).ready(function(){var e=new IntersectionObserver(function(e){!0===e[0].isIntersecting?(jQuery(".oc_cb_float_btn").hide(),jQuery(".floating-spinner").hide()):(jQuery(".oc_cb_float_btn").show(),jQuery(".floating-spinner").show())},{threshold:[0]});jQuery(".oc_cb_regular_submit").length&&e.observe(document.querySelector(".oc_cb_regular_submit"))}),jQuery(document).on("click",".oc_cb_btn",function(){jQuery("#oc_cb_config_form").submit()})}(jQuery); |