You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: validazione client-side + supporto prefisso IT sulla P.IVA
Validazione step-by-step (UX Flux Checkout):
- assets/wcpicfi.js esegue regex CF, Luhn P.IVA, regex SDI, regex PEC
direttamente al blur/change/input dei campi
- setCustomValidity() + classe woocommerce-invalid + messaggio inline rosso
- Blocca il passaggio di step (Flux Checkout invoca form.checkValidity)
- Event delegation per sopravvivere ai re-render AJAX di update_checkout
- L'omocodia CF resta server-side, qui solo regex strutturale
Prefisso IT sulla P.IVA (server-side):
- Nuovo helper strip_it_prefix() preg_replace('/^IT\s*/i', '', ...)
- check_piva() strip prima della regex/Luhn (accetta IT01835920669 e 01835920669)
- Filtro woocommerce_checkout_posted_data normalizza prima del save WC
- save_address() normalizza $_POST['billing_piva'] prima del save loop di WC
- Block Checkout sanitize_piva() esegue stesso strip
- DB stored: sempre 11 cifre nude (canonical form)
UI:
- billing_piva maxlength 11 → 13
- pattern '(IT)?[0-9]{11}'
- rimosso inputmode="numeric" (su mobile nasconde lettere, incompatibile con IT)
- title hint aggiornato