=== 3DIS Multistep Addon CF7 ===
Contributors: 3disdev
Requires at least: 6.4
Requires PHP: 7.4
Requires Plugins: contact-form-7
Stable tag: 0.4.4
License: GPLv2 or later

Transforme les formulaires Contact Form 7 en parcours multi-étapes accessibles, avec validation intermédiaire sans déclencher une soumission finale.

== Fonctionnalités ==
* Balise Étape 3DIS dans l’éditeur CF7.
* Validation navigateur puis validation intermédiaire du schéma CF7 au clic sur Suivant.
* Barre horizontale ou verticale, repères ronds ou carrés, titres et pourcentage.
* Navigation désactivée, limitée aux étapes validées ou libre.
* Transitions, couleurs, libellés, défilement automatique et retour après succès.
* Éditeur d’étapes non destructif : préambule, HTML, CSS, JavaScript, shortcodes, commentaires et champs cachés sont conservés.

== Compatibilité vérifiée dans cette livraison ==
* WordPress : code prévu pour WordPress 6.4 ou version ultérieure.
* PHP : code prévu pour PHP 7.4 ou version ultérieure.
* Contact Form 7 : architecture vérifiée dans le code de CF7 6.1.7 ; la validation intermédiaire exige l’API validate_schema disponible à partir de la version minimale annoncée 6.1.3.

Ces indications ne remplacent pas la recette réelle sur un WordPress représentatif. Les extensions tierces de captcha, antispam, PDF, paiement et stockage restent exécutées uniquement lors de la soumission finale CF7.

== Utilisation ==
Dans l’éditeur CF7, placez le curseur au début d’un groupe de champs puis utilisez « Ajouter une étape 3DIS ». Le bouton insère un marqueur invisible dont le titre reste modifiable dans data-step-title.

Le contenu situé avant le premier marqueur est affiché dans une zone dédiée de l’éditeur visuel. Une structure de marqueur non reconnue désactive l’éditeur visuel et laisse le code source intact.

== Validation intermédiaire personnalisée ==
Les filtres globaux wpcf7_validate et wpcf7_validate_TYPE ne sont volontairement pas exécutés au clic sur Suivant : certains addons supposent alors l’existence d’une véritable soumission CF7 et provoquent des erreurs ou des effets définitifs.

Une règle métier intermédiaire sans effet de bord peut utiliser le filtre 3dis_multistep_validate_step. Voir docs/VALIDATION-INTERMEDIAIRE.md.

== Mise à niveau depuis 0.4.3 ==
La mise à jour ne modifie pas les formulaires ni les réglages enregistrés. Une sauvegarde du site et un export du formulaire sont recommandés. Après installation, ouvrir puis enregistrer un formulaire sans le modifier et vérifier que son code source reste identique. Exécuter ensuite la recette décrite dans docs/RECETTE-0.4.4.md.

== Licence et mises à jour ==
La même archive sert pour l’essai de 15 jours et la licence payante. L’essai est créé et contrôlé par 3DIS License Platform lors de la première ouverture de l’administration. La clé achetée se renseigne dans Extensions > 3DIS Multistep Addon CF7 — Licence.

Les réponses d’autorisation et les métadonnées de mise à jour sont signées. Une archive de mise à jour n’est installée qu’après contrôle de son empreinte SHA-256.

== Changelog ==
= 0.4.4 =
* Corrige l’erreur HTTP 500 causée par des hooks CF7 globaux exécutés sans véritable objet de soumission.
* Isole la validation intermédiaire et réserve captcha, antispam, courriel, PDF, paiement et stockage à la soumission finale.
* Ajoute un filtre documenté pour les règles métier intermédiaires sans effet de bord.
* Préserve le contenu placé avant le premier marqueur et la représentation source du formulaire.
* Préserve les attributs inconnus, guillemets, espaces, scripts, styles, shortcodes, commentaires et champs cachés lors d’un enregistrement sans modification.
* Ajoute des réponses d’erreur structurées, une permission REST pour les formulaires non publiés et l’annulation des requêtes concurrentes.

= 0.4.3 =
* Version de référence avant cette correction.
