//VALIDATION //http://ajax.aspnetcdn.com/ajax/jquery.validate/1.13.1/localization/messages_it.js (function( factory ) { if ( typeof define === "function" && define.amd ) { define( ["jquery", "../jquery.validate"], factory ); } else { factory( jQuery ); } }(function( $ ) { // Calcolo del codice fiscale // (c) Copyright 2017 dot4all S.r.l // Autore: // ----------------------------- // Luca Organtini // ----------------------------- // Variables: // -------------------------------------------------------------------------- var strCodFis = ""; var CFisc={} CFisc.tavola_mesi=['A','B','C','D','E','H','L','M','P','R','S','T'] CFisc.tavola_omocodie=['L','M','N','P','Q','R','S','T','U','V'] CFisc.tavola_carattere_di_controllo_valore_caratteri_dispari={ 0:1, 1:0, 2:5, 3:7, 4:9, 5:13, 6:15, 7:17, 8:19, 9:21, A:1, B:0, C:5, D:7, E:9, F:13, G:15, H:17, I:19, J:21, K:2, L:4, M:18, N:20, O:11, P:3, Q:6, R:8, S:12, T:14, U:16, V:10, W:22, X:25, Y:24, Z:23 } CFisc.tavola_carattere_di_controllo_valore_caratteri_pari={ 0:0, 1:1, 2:2, 3:3, 4:4, 5:5, 6:6, 7:7, 8:8, 9:9, A:0, B:1, C:2, D:3, E:4, F:5, G:6, H:7, I:8, J:9, K:10, L:11, M:12, N:13, O:14, P:15, Q:16, R:17, S:18, T:19, U:20, V:21, W:22, X:23, Y:24, Z:25 } CFisc.tavola_carattere_di_controllo="ABCDEFGHIJKLMNOPQRSTUVWXYZ" CFisc.calcola_carattere_di_controllo=function(codice_fiscale){ var i,val=0 for(i=0;i<15;i++){ var c=codice_fiscale[i] if(i%2) val+=this.tavola_carattere_di_controllo_valore_caratteri_pari[c] else val+=this.tavola_carattere_di_controllo_valore_caratteri_dispari[c] } val=val%26 return this.tavola_carattere_di_controllo.charAt(val) } CFisc.affronta_omocodia=function(codice_fiscale,numero_omocodia){ // non funziona var cifre_disponibili=[14,13,12,10,9,7,6] var cifre_da_cambiare=[] while(numero_omocodia>0 && cifre_disponibili.length){ var i=numero_omocodia%cifre_disponibili.length numero_omocodia=Math.floor(numero_omocodia/cifre_disponibili.length) cifre_da_cambiare.push(cifre_disponibili.splice(i-1,1)[0]) } } CFisc.ottieni_consonanti=function(str){ return str.replace(/[^BCDFGHJKLMNPQRSTVWXYZ]/gi,'') } CFisc.ottieni_vocali=function(str){ return str.replace(/[^AEIOU]/gi,'') } CFisc.calcola_codice_cognome=function(cognome){ var codice_cognome=this.ottieni_consonanti(cognome) codice_cognome+=this.ottieni_vocali(cognome) codice_cognome+='XXX' codice_cognome=codice_cognome.substr(0,3) return codice_cognome.toUpperCase() } CFisc.calcola_codice_nome=function(nome){ var codice_nome=this.ottieni_consonanti(nome) if(codice_nome.length>=4){ codice_nome= codice_nome.charAt(0)+ codice_nome.charAt(2)+ codice_nome.charAt(3) }else{ codice_nome+=this.ottieni_vocali(nome) codice_nome+='XXX' codice_nome=codice_nome.substr(0,3) } return codice_nome.toUpperCase() } CFisc.calcola_codice_data=function(gg,mm,aa,sesso){ var d=new Date() d.setYear(aa); d.setMonth(mm-1); d.setDate(gg); var anno="0"+d.getFullYear() anno=anno.substr(anno.length-2,2); var mese=this.tavola_mesi[d.getMonth()] var giorno=d.getDate() if(sesso.toUpperCase()=='F') giorno+=40; giorno="0"+giorno giorno=giorno.substr(giorno.length-2,2); return ""+anno+mese+giorno } CFisc.trova_comune=function(pattern_comune){ var codice,comune,ret=[] var quoted=pattern_comune.replace(/([\\\.\+\*\?\[\^\]\$\(\)\{\}\=\!\<\>\|\:])/g, "\\$1"); var re=new RegExp(quoted,'i') for(codice in this.codici_catastali) { comune=this.codici_catastali[codice] if(comune.match(re)) ret.push([comune,codice]) } return ret } CFisc.calcola_codice_comune=function(pattern_comune){ if(pattern_comune.match(/^[A-Z]\d\d\d$/i)) return pattern_comune; return this.trova_comune(pattern_comune)[0][1]; } CFisc.calcola_codice=function(nome,cognome,sesso,giorno,mese,anno,codice_comune){ var codice= this.calcola_codice_cognome(cognome)+ this.calcola_codice_nome(nome)+ this.calcola_codice_data(giorno,mese,anno,sesso)+ codice_comune codice+=this.calcola_carattere_di_controllo(codice) return codice } //SELECT DATA FROM CHECKOUT FIELDS // -------------------------------------------------------------------------- // END OF SCRIPT // -------------------------------------------------------------------------- jQuery('#calcola').click(function () { jQuery(this).text('Attendere...') var codice=CFisc.calcola_codice( jQuery('#nome').val(), jQuery('#cognome').val(), jQuery('#sesso option:selected').val(), jQuery('#giorno option:selected').val(), jQuery('#mese option:selected').val(), jQuery('#anno option:selected').val(), jQuery('#comune option:selected').val() ) jQuery('#billing_cf').val(codice); jQuery('#billing_first_name').val(jQuery('#nome').val()); jQuery('#billing_last_name').val(jQuery('#cognome').val()); jQuery('#billing_city').val(jQuery.trim(jQuery('#comune option:selected').text().replace(/\s+\(.+?\)/g, ''))); tb_remove(); }); /* * Translated default messages for the jQuery validation plugin. * Locale: IT (Italian; Italiano) */ $.extend($.validator.messages, { required: "Campo obbligatorio.", remote: "Controlla questo campo.", email: "Inserisci un indirizzo email valido.", url: "Inserisci un indirizzo web valido.", date: "Inserisci una data valida.", dateISO: "Inserisci una data valida (ISO).", number: "Inserisci un numero valido.", digits: "Inserisci solo numeri.", creditcard: "Inserisci un numero di carta di credito valido.", equalTo: "Il valore non corrisponde.", extension: "Inserisci un valore con un'estensione valida.", maxlength: $.validator.format("Non inserire più di {0} caratteri."), minlength: $.validator.format("Inserisci almeno {0} caratteri."), rangelength: $.validator.format("Inserisci un valore compreso tra {0} e {1} caratteri."), range: $.validator.format("Inserisci un valore compreso tra {0} e {1}."), max: $.validator.format("Inserisci un valore minore o uguale a {0}."), min: $.validator.format("Inserisci un valore maggiore o uguale a {0}."), nifES: "Inserisci un NIF valido.", nieES: "Inserisci un NIE valido.", cifES: "Inserisci un CIF valido.", require_from_group: $.validator.format("Inserisci almeno {0} dei 2 campi tra indirizzo PEC e Codice Destinatario."), cf_or_piva: $.validator.format("Inserisci un Codice Fiscale o P.IVA validi."), public_cf: $.validator.format("Inserisci un Codice Fiscale valido."), }); })); //js file for select2 script jQuery(document).ready(function($) { //VALIDATION //validate $(".woocommerce-account .woocommerce form,form.checkout").validate({ focusInvalid: false, invalidHandler: function(event,validator) { if (!validator.numberOfInvalids()) return; $('html, body').animate({ scrollTop: $(validator.errorList[0].element).offset().top -150 }, 2000); } }); //CF GENERATOR /*$(document).on('click', 'a[data-action="calculate-cf"]', function (event) { //CALCULATE CF var $this = $(this); event.stopImmediatePropagation(); event.preventDefault(); event.stopPropagation(); tb_show("Genera codice fiscale", wcpicfi.plugin_url+'templates/calculate-cf.php?city='+$('#billing_city').val().toLowerCase()+'&TB_iframe=true'); return false; });*/ //CHECK IF FORM IS VALID $( 'form.checkout' ).on( 'checkout_place_order', function () { $this = $(this) if(!$this.valid()){ $this.unblock(); return false; } return; }) //CUSTOM METHOD //cf jQuery.validator.addMethod("cf", function(cf, element) { const regexCF = /^[a-zA-Z]{6}\d{2}[a-zA-Z]{1}\d{2}[a-zA-Z]{1}\d{3}[a-zA-Z]{1}$/; return this.optional(element) || cf.length == 16 && regexCF.exec(cf); }, wcpicfi.incorrect_cf); //piva jQuery.validator.addMethod("piva", function(piva, element) { const regexPIVA = /^([0-9]{11})$/i; return this.optional(element) || regexPIVA.exec(piva); }, wcpicfi.incorrect_piva); //cf enti e pubblica amministrazione jQuery.validator.addMethod("public_cf", function(cf, element) { const regexPIVA = /^([0-9]{11})$/i; return this.optional(element) || regexPIVA.exec(cf); }, wcpicfi.incorrect_public_cf); //cf or piva jQuery.validator.addMethod("cf_or_piva", function(cf, element) { const regexPIVA = /^([0-9]{11})$/i; const regexCF = /^[a-zA-Z]{6}\d{2}[a-zA-Z]{1}\d{2}[a-zA-Z]{1}\d{3}[a-zA-Z]{1}$/; return this.optional(element) || regexPIVA.exec(cf) || (cf.length == 16 && regexCF.exec(cf)); }, wcpicfi.incorrect_piva_or_cf); jQuery.validator.addMethod( "require_from_group", function( value, element, options ) { var $fields = jQuery( options[ 1 ], element.form ), $fieldsFirst = $fields.eq( 0 ), validator = $fieldsFirst.data( "valid_req_grp" ) ? $fieldsFirst.data( "valid_req_grp" ) : jQuery.extend( {}, this ), isValid = $fields.filter( function() { return validator.elementValue( this ); } ).length >= options[ 0 ]; //alert(value); // Store the cloned validator for future validation $fieldsFirst.data( "valid_req_grp", validator ); // If element isn't being validated, run each require_from_group field's validation rules if ( !jQuery( element ).data( "being_validated" ) ) { $fields.data( "being_validated", true ); $fields.each( function() { validator.element( this ); } ); $fields.data( "being_validated", false ); } return isValid; }); var $block_notice_scroll = Boolean(wcpicfi.block_notice_scroll); if($block_notice_scroll){ // FIX SCROLL TOP NOTICE jQuery( document ).ajaxComplete( function() { if ( jQuery( 'body' ).hasClass( 'woocommerce-checkout' ) ) { jQuery( 'html, body' ).stop(); } } ); } // check IT country remove field from checkout //wc3.4.0 fix jQuery('.woocommerce-checkout #billing_invoice_type_field label span.optional').remove(); jQuery('.woocommerce-checkout #billing_vat_system_field label span.optional').remove(); jQuery('.woocommerce-checkout #billing_piva_field label span.optional').remove(); jQuery('.woocommerce-checkout #billing_cf_field label span.optional').remove(); jQuery('.woocommerce-checkout #billing_vat_system_field').hide(); //alert($choose_first_value); var $choose_first_value = wcpicfi.choose_first_value; jQuery('.logged-out.woocommerce-checkout #billing_invoice_type').val($choose_first_value); var $choose_first_value_vat = wcpicfi.choose_first_value_vat; jQuery('.logged-out.woocommerce-checkout #billing_vat_system').val($choose_first_value_vat); var $hide_piva_for_not_italy = wcpicfi.hide_piva_for_not_italy; //alert(jQuery('.woocommerce-checkout #billing_cf_field label').html()); //FATTURAZION ELETTRONICA jQuery('.woocommerce-checkout #billing_pec_field label span.optional').remove(); jQuery('.woocommerce-checkout #billing_pa_code_field label span.optional').remove(); jQuery('#billing_country').on('change',function(){ if(jQuery(this).val() != 'IT'){ jQuery("#billing_invoice_type_field").show(); if($hide_piva_for_not_italy && jQuery("#billing_invoice_type").val() != 'invoice') jQuery(".woocommerce-checkout .woocommerce #billing_piva_field").hide(); else jQuery(".woocommerce-checkout .woocommerce #billing_piva_field").show(); jQuery(".woocommerce-checkout .woocommerce #billing_cf_field").show(); //FATTURAZIONE ELETTRONICA jQuery(".woocommerce-checkout .woocommerce #billing_pec_field").hide(); jQuery(".woocommerce-checkout .woocommerce #billing_pa_code_field").hide(); jQuery('#billing_company_field').show().find('input').rules("add", { required:false }); jQuery(".woocommerce #billing_cf_field").show().find('input').rules("add", { required:false, cf:false, }); if($hide_piva_for_not_italy && jQuery("#billing_invoice_type").val() != 'invoice') jQuery(".woocommerce #billing_piva_field").hide().find('input').rules("add", {required:false,piva:false,}); else jQuery(".woocommerce #billing_piva_field").show().find('input').rules("add", {required:false,piva:false,}); if(jQuery('.woocommerce #billing_company_field label abbr.required').length){ jQuery(".woocommerce #billing_company_field label abbr.required").remove(); } if(jQuery('.woocommerce #billing_cf_field label abbr.required').length){ jQuery(".woocommerce #billing_cf_field label abbr.required").remove(); } if(jQuery('.woocommerce #billing_piva_field label abbr.required').length){ jQuery(".woocommerce #billing_piva_field label abbr.required").remove(); } }else { jQuery("#billing_invoice_type_field").show(); jQuery(".woocommerce-checkout .woocommerce #billing_piva_field").show(); jQuery(".woocommerce-checkout .woocommerce #billing_cf_field").show(); ////////////////////////// jQuery("#billing_invoice_type").change();//Trigger Change to show correct fields } })//.change();//trigger change jQuery("#billing_invoice_type").select2({minimumResultsForSearch: Infinity}); jQuery("#billing_vat_system").select2({minimumResultsForSearch: Infinity}); jQuery(".force_required label").append("*"); /*jQuery('#billing_pec_field').on('focusout', function() { alert(jQuery('#billing_pec_field input').val()); });*/ jQuery("#billing_invoice_type").change(function(){ if(jQuery('#billing_country').val() != 'IT'){ jQuery(".woocommerce-checkout .woocommerce #billing_pec_field").hide(); jQuery(".woocommerce-checkout .woocommerce #billing_pa_code_field").hide(); if(jQuery("#billing_invoice_type").val() == 'invoice'){ $('#billing_company_field').show().find('input').rules("add", { required:true, minlength:3, }); $('#billing_piva_field').show().find('input').rules("add", { required:true, piva:false }); if(!jQuery('.woocommerce #billing_piva_field label abbr.required').length){ jQuery(".woocommerce #billing_piva_field label").append("*"); } if(!jQuery('.woocommerce #billing_company_field label abbr.required').length){ jQuery(".woocommerce #billing_company_field label").append("*"); } }else{ $('#billing_company_field').show().find('input').rules("add", { required:false, }); //nascondi campo piva per estero privato if($hide_piva_for_not_italy) $('#billing_piva_field').hide().find('input').rules("add", {required:false,piva:false}); else $('#billing_piva_field').show().find('input').rules("add", {required:false,piva:false}); if(jQuery('.woocommerce #billing_company_field label abbr.required').length){ jQuery(".woocommerce #billing_company_field label abbr.required").remove(); } if(jQuery('.woocommerce #billing_piva_field label abbr.required').length){ jQuery(".woocommerce #billing_piva_field label abbr.required").remove(); } } } else{ var $show_einvoice_fields = Boolean(wcpicfi.show_einvoice_fields); var $ei_force_required = Boolean(wcpicfi.ei_force_required); switch(jQuery("#billing_invoice_type").val()){ case 'invoice': var $show_cf_required = Boolean(wcpicfi.show_cf_required_for_company_invoice); var $show_cf_not_required = Boolean(wcpicfi.show_cf_not_required_for_company_invoice); var $cont_options = 0; jQuery('#billing_vat_system > option').each(function() { //alert('a'); $cont_options = $cont_options + 1; }); if($cont_options > 1){ jQuery('.woocommerce-checkout #billing_vat_system_field').show(); } $('#billing_company_field').show().find('input').rules("add", { required:true, minlength:3, }); $('#billing_piva_field').show().find('input').rules("add", { required:true, piva:true }); // FATTURAZIONE ELETTRONICA if($show_einvoice_fields){ if(!$ei_force_required){ $('#billing_pec_field').show().find('input').rules("add", { require_from_group: [1, ".einvoice-group input"], email:true }); $('#billing_pa_code_field').show().find('input').rules("add", { require_from_group: [1, ".einvoice-group input"], minlength:7, maxlength:7 }); }else{ $('#billing_pec_field').show().find('input').rules("add", { required: false, email:true }); $('#billing_pa_code_field').show().find('input').rules("add", { required: false, minlength:7, maxlength:7 }); } } //jQuery(".woocommerce #billing_cf_field").hide().find('input').rules("remove", "required"); if($show_cf_required){ $('#billing_cf_field').show().find('input').rules("add", { required:$show_cf_required, cf_or_piva:true, public_cf: false //cf:false }); $('#billing_cf_field').find('small').hide(); }else if($show_cf_not_required){ $('#billing_cf_field').show().find('input').rules("add", { required:!$show_cf_not_required, cf_or_piva:false, public_cf: false //cf:false }); $("#billing_cf_field").find('input').rules("remove", "required"); if(jQuery('.woocommerce #billing_cf_field label abbr.required').length){ //alert($("#billing_cf_field label abbr.required").html()); jQuery("#billing_cf_field label abbr.required").remove(); } $('#billing_cf_field').find('small').hide(); }else{ $("#billing_cf_field").hide().find('input').rules("remove", "required"); } if(!jQuery('.woocommerce #billing_piva_field label abbr.required').length){ jQuery(".woocommerce #billing_piva_field label").append("*"); } if(!jQuery('.woocommerce #billing_company_field label abbr.required').length){ jQuery(".woocommerce #billing_company_field label").append("*"); } /*if(!jQuery('.woocommerce #billing_cf_field label abbr.required').length){ jQuery(".woocommerce #billing_cf_field label").append("*"); }*/ // FATTURAZIONE ELETTRONICA if(!$ei_force_required){ if(!jQuery('.woocommerce #billing_pec_field label abbr.required').length){ jQuery(".woocommerce #billing_pec_field label").append("*"); } if(!jQuery('.woocommerce #billing_pa_code_field label abbr.required').length){ jQuery(".woocommerce #billing_pa_code_field label").append("*"); } } break; case 'professionist_invoice': jQuery('.woocommerce-checkout #billing_vat_system_field').hide(); jQuery('.woocommerce-checkout #billing_company_field').hide(); var $force_required = Boolean(wcpicfi.force_required); $('#billing_cf_field').find('small').show(); if($force_required){ $('#billing_piva_field').show().find('input').rules("add", { required:false, piva:true }); $('#billing_cf_field').show().find('input').rules("add", { required:false, cf:false, cf_or_piva:false, public_cf: false }); jQuery("#billing_cf_field").find('input').rules("remove", "required"); if(jQuery('.woocommerce #billing_cf_field label abbr.required').length){ jQuery("#billing_cf_field label abbr.required").remove(); } if(jQuery('.woocommerce #billing_piva_field label abbr.required').length){ //alert($("#billing_cf_field label abbr.required").html()); jQuery("#billing_piva_field label abbr.required").remove(); } }else{ $('#billing_piva_field').show().find('input').rules("add", { required:true, piva:true }); $('#billing_cf_field').show().find('input').rules("add", { required:true, cf:true, cf_or_piva:false, public_cf: false }); } // FATTURAZIONE ELETTRONICA if($show_einvoice_fields){ $('#billing_pec_field').show().find('input').rules("add", { require_from_group: [1, ".einvoice-group input"], email:true }); $('#billing_pa_code_field').show().find('input').rules("add", { require_from_group: [1, ".einvoice-group input"], minlength:6, maxlength:7 }); } if(!$force_required){ if(!jQuery('.woocommerce #billing_piva_field label abbr.required').length){ jQuery(".woocommerce #billing_piva_field label").append("*"); } if(!jQuery('.woocommerce #billing_cf_field label abbr.required').length){ jQuery(".woocommerce #billing_cf_field label").append("*"); } } if(!jQuery('.woocommerce #billing_company_field label abbr.required').length){ jQuery(".woocommerce #billing_company_field label ").append("*"); } // FATTURAZIONE ELETTRONICA if(!$ei_force_required){ if(!jQuery('.woocommerce #billing_pec_field label abbr.required').length){ jQuery(".woocommerce #billing_pec_field label").append("*"); } if(!jQuery('.woocommerce #billing_pa_code_field label abbr.required').length){ jQuery(".woocommerce #billing_pa_code_field label").append("*"); } } break; case 'cf_invoice': case 'public_invoice': if($cont_options > 1){ jQuery('.woocommerce-checkout #billing_vat_system_field').show(); } $('#billing_cf_field').find('small').hide(); $('#billing_company_field').show().find('input').rules("add", { required:true, minlength:3, }); jQuery(".woocommerce #billing_piva_field").hide().find('input').rules("remove", "required");; $('#billing_cf_field').show().find('input').rules("add", { required:true, piva:false, cf_or_piva:false, public_cf: true }); // FATTURAZIONE ELETTRONICA if($show_einvoice_fields){ if(!$ei_force_required){ $('#billing_pec_field').show().find('input').rules("add", { require_from_group: [1, ".einvoice-group input"], email:true }); $('#billing_pa_code_field').show().find('input').rules("add", { require_from_group: [1, ".einvoice-group input"], minlength:6, maxlength:6 }); }else{ $('#billing_pec_field').show().find('input').rules("add", { required:false, email:true }); $('#billing_pa_code_field').show().find('input').rules("add", { required:false, minlength:6, maxlength:6 }); } } if(!jQuery('.woocommerce #billing_cf_field label abbr.required').length){ jQuery(".woocommerce #billing_cf_field label").append("*"); } if(!jQuery('.woocommerce #billing_company_field label abbr.required').length){ jQuery(".woocommerce #billing_company_field label ").append("*"); } // FATTURAZIONE ELETTRONICA if(!$ei_force_required){ if(!jQuery('.woocommerce #billing_pec_field label abbr.required').length){ jQuery(".woocommerce #billing_pec_field label").append("*"); } if(!jQuery('.woocommerce #billing_pa_code_field label abbr.required').length){ jQuery(".woocommerce #billing_pa_code_field label").append("*"); } } break; case 'receipt': jQuery('.woocommerce-checkout #billing_vat_system_field').hide(); var $cf_is_mandatory = Boolean(wcpicfi.cf_force_mandatory_for_receipt); var $hide_cf_for_receipt = Boolean(wcpicfi.hide_cf_for_receipt); $('#billing_company_field').hide().find('input').rules("remove","required"); jQuery(".woocommerce #billing_piva_field").hide().find('input').rules("remove", "required"); // FATTURAZIONE ELETTRONICA if($show_einvoice_fields){ $('#billing_pec_field').hide().find('input').rules("remove","required"); $('#billing_pa_code_field').hide(); } if($hide_cf_for_receipt){ jQuery(".woocommerce #billing_cf_field").hide().find('input').rules("remove", "required"); }else{ jQuery(".woocommerce #billing_cf_field").show().find('input').rules("add", { required:$cf_is_mandatory, cf:$cf_is_mandatory, cf_or_piva: false, public_cf: false }); $('#billing_cf_field').find('small').show(); } //REMOVE MANDATORY LABEL if(jQuery('.woocommerce #billing_cf_field label abbr.required').length && !$cf_is_mandatory){ jQuery(".woocommerce #billing_cf_field label abbr.required").remove(); } break; case 'private_invoice': default: jQuery('.woocommerce-checkout #billing_vat_system_field').hide(); var $cf_not_required_for_private = Boolean(wcpicfi.cf_not_required_for_private); //alert($cf_not_required_for_private); $('#billing_cf_field').find('small').show(); jQuery('.woocommerce #billing_company_field').hide().find('input').rules("remove","required"); jQuery(".woocommerce #billing_piva_field").hide().find('input').rules("remove", "required"); // FATTURAZIONE ELETTRONICA if($show_einvoice_fields){ jQuery(".woocommerce #billing_pec_field").hide().find('input').rules("remove", "required"); jQuery(".woocommerce #billing_pa_code_field").hide(); } if($cf_not_required_for_private){ jQuery(".woocommerce #billing_cf_field").show().find('input').rules("add", { required:false, cf:true, cf_or_piva:false, public_cf: false }); if(jQuery('.woocommerce #billing_cf_field label abbr.required').length){ jQuery(".woocommerce #billing_cf_field label abbr.required").remove(); } }else{ jQuery(".woocommerce #billing_cf_field").show().find('input').rules("add", { required:true, cf:true, cf_or_piva:false, public_cf: false }); if(!jQuery('.woocommerce #billing_cf_field label abbr.required').length){ jQuery(".woocommerce #billing_cf_field label").append("*"); } } break; } } //$('#billing_cf').rules("remove", "required"); }); jQuery(window).on("load", function (){ jQuery("#billing_invoice_type").change(); }); });