J'ai construit un formulaire d'inscription à un événement et j'aimerais éviter que des personnes s'y inscrivent à plusieurs reprises.
Est-ce que je peux paramétrer mon formulaire BreezingForms à cet effet ?
Niveau :
Facile
Version BF minimale requise :
BreezingForms Lite
Compatibilité Joomla! 4/5 :
✅
Une fois de plus, BreezingForms permet ce type de paramétrage, mais pas sans petites interventions. Dans le pire des cas, vous devriez écrire divers scripts (JavaScript et PHP), dans le meilleur des cas, installer le package que je vous fournis. Je vous ai préparé le travail afin que ce soit accessible à tous.
Je vous invite à télécharger le package suivant et l'enregistrer sur votre poste de travail. Ensuite dézippez-le afin d'en extraire le fichier Verification_soumission_double.xml.
Vous devez être enregistré et connecté pour accéder aux téléchargements.
Installation
Afin d'installer ce package, rendez-vous dans l'administration de votre site Joomla! → Composants → BreezingForms → Configuration.
Cliquez ensuite le bouton Installer le package. Dans la vue suivante, cliquez le bouton Parcourir et sélectionnez le fichier XML préalablement extrait. Dans la barre d'outils, cliquez le bouton Installer le Package. L'installation ne prend qu'une seconde. Les différents scripts nécessaires sont désormais installés sur votre version de BreezingForms.
Préparation
Si votre formulaire d'inscription n'est pas encore construit, vous pouvez maintenant le créer.
Les scripts appliqués au formulaire vérifieront que l'e-mail ne soit pas déjà enregistré pour ce dernier, assurez-vous qu'il propose un champ de renseignement de l'e-mail de l'utilisateur. Nommez ce champ email.
Lorsque votre formulaire est terminé et avant d'aller plus loin, enregistrez-le une première fois afin d'avoir accès à ses propriétés avancées.
Les scripts…
- Votre formulaire enregistré, passez par ses Propriétés avancées → Plus d'options.
- Activez l'onglet Pièces de formulaire et dans la partie Avant le formulaire, activez l'option Bibliothèque et choisissez le script FF::ff_emailDouble.
- Activez l'onglet Envoyer des pièces et dans la partie Début de soumission, activez l'option Bibliothèque et choisissez le script FF::ff_double_mail.
- Enregistrez et sortez de la vue à l'aide du bouton Annuler afin de revenir sur le formulaire.
- Sélectionnez le champ email et dans ses propriétés, partie Validation, cochez la case Obligatoire et indiquez un message d'erreur, p. ex. Vous êtes déjà inscrit à cet événement !
- Activez l'option Bibliothèque et sélectionnez le script FF::ff_emailDouble.
- Passez dans les propriétés avancées de ce champ email et dans la partie Script Action, activez l'option Bibliothèque puis choisissez le script FF::ff_doublemail.
- Enregistrez les modifications apportées à ce champ par le bouton Enregistrer les propriétés puis enregistrez de nouveau votre formulaire.
Vérification
Vous pouvez tester votre formulaire. Saisissez les données qu'il nécessite et validez. Le formulaire enregistre une première fois les données.
Ressaisissez les données avec la même adresse e-mail et validez à nouveau pour voir le refus d'enregistrer une seconde fois le formulaire avec le même e-mail.
L'article qui m'a inspiré propose les scripts à insérer à divers emplacements. J'en ai créé des Scripts et Pièces de bibliothèque afin qu'ils soient accessibles depuis n'importe quel formulaire et afin de faciliter la mise en place par tous.