Tutoriel : utiliser Agenda, Formidable et Formulaire de participation pour gérer des inscriptions et des listes d’attente

Le présent article décrit comment nous pouvons utiliser trois plugins pour gérer des inscriptions à des activités, avec listes d’attente. Les trois plugins en question sont :

Le besoin

Nous sommes une association d’éducation populaire aux sciences et techniques qui organise notamment des formations à l’astronomie.
Pour gérer les inscriptions, nous sommes confrontés aux contraintes suivantes :

  • évènements récurrents (par ex. : 4 Week-ends de formation par an, sur le même modèle) ;
  • nombre limité de places ;
  • pour chaque type de formation, un questionnaire spécifique doit permettre de cerner les besoins et attentes ainsi que les aspects logistiques (transports, repas, hébergement) ;
  • il faut pouvoir gérer des listes d’attente.

Les principes retenus

  • Les évènements sont gérés avec le plugin Agenda.
  • Le plugin Formidable nous permet de créer les questionnaires spécifiques.
  • Le plugin Formulaire de participation avec Formidable permet de relier entre eux les deux plugins précédents pour que la réponse à un formulaire entraîne l’inscription à un évènement [1].
  • Comme les questionnaires concernent des besoins spécifiques à une personne et un évènement, nous demandons de remplir un questionnaire par personne et par évènement. Exemple :
    • Si une famille s’inscrit, les enfants n’ont pas forcément les mêmes besoins de formation que les adultes. Nous demandons donc une inscription par personne.
    • Si une personne s’inscrit à deux formations consécutives, elle doit, normalement, progresser entre chaque formation. Par conséquent, ses besoins ne seront pas les mêmes à la deuxième et à la première formation. La réponse au questionnaire ne sera pas la même.

Certains élèments sont gérés « à la main » en dehors du site :

  • le suivi du paiement [2] ;
  • le suivi logistique proprement dit : combien de chambres il faut réserver, comment faut-il gérer les repas, quel matériel apporter, etc. Chaque responsable de formation utilise, pour l’instant, son propre système.
  • En cas de désistement, notifié par email ou autre moyen de communication il faut :
    • dépublier la réponse
    • prévenir la personne suivante sur la liste d’attente que la place se libère

Étape 1 : créer les évènements et indiquer le nombre de places disponibles

La première étape consiste à créer les évènements avec le plugin Agenda. Lors de la création des évènements, nous indiquons que le nombre de places est limité, et nous indiquons le nombre de places disponibles.

Indication du nombre de places disponibles par évènement

Étape 2 : créer le formulaire Formidable

La seconde étape est de créer un formulaire d’inscription pour l’évènement récurrent. Ce formulaire se compose de deux types de saisies :
-  plusieurs saisies de différents types pour poser les questions utiles à la gestion de l’évènement : nom, prénom, contacts, moyen de transport, parcours de formation demandé, spécificité alimentaire, etc. ;
-  une saisie évènement pour choisir la date de l’évènement où l’on s’inscrit.

C’est sur cette dernière saisie que nous allons maintenant nous consacrer.

Voici comment nous configurons la saisie.

Choix des évènements où l’on peut s’inscrire

Dans notre cas, chaque type d’évènement est associé à un article. Ainsi, pour gérer les évènements récurrents, nous demandons simplement de proposer les évènements associés à un article précis.

Choix des évènements à proposer

Par ailleurs, nous ne proposons les inscriptions que pour les évènements ayant lieu dans moins d’un an, ce qui correspond à notre mode de fonctionnement.

N’afficher que les événements à venir, dans moins d’un an

Un seul évènement par réponse de formulaire

De plus, même si nous gérons des évènements récurrents, nous souhaitons avoir une fiche d’inscription par personne et par évènement. C’est pourquoi nous configurons la saisie pour présenter le choix d’évènement sous forme de boutons radio.

Une présentation simplifiée des évènements

Comme le formulaire est lié à un type d’évènement, nous n’affichons que la date de l’évènement, et non pas son titre. De même, nous n’affichons pas l’heure, car cela n’est pas utile. En revanche, nous affichons systématiquement l’année, notamment pour éviter les ambigüités de lecture tant du côté de l’internaute que de la personne qui traite les inscriptions.

Réglage de la présentation des évènements

Prévenir l’internaute qu’ielle est potentiellement sur liste d’attente

Pour chaque évènement proposé :

  • Nous voulons indiquer le nombre de places restantes.
  • S’il n’y a plus de place restante, nous voulons indiquer que la personne est sur liste d’attente.
  • Dans ce dernier cas, nous voulons également qu’elle coche une case où elle reconnaît expressément qu’elle sait être sur liste d’attente.

Nous nous rendons donc dans l’onglet « Gestion des inscriptions » de la Saisie, et nous cochons « Afficher le nombre de places restantes » et « Indiquer qu’il y a une liste d’attente ».

Saisie évènement : réglage de la gestion de liste d’attente

Il nous reste à créer une case à cocher à remplir obligatoirement si la personne est sur liste d’attente. Nous ajoutons donc une saisie « Case à cocher » et la configurons de la manière suivante :

  • Dans l’onglet « Description » :
    • « Label » à remplir avec « Liste d’attente »
    • « Label à placer à côté de la case » : « J’ai conscience d’être sur liste d’attente »
  • Dans l’onglet « Affichage », option « Affichage conditionnel » remplir avec @evenements_1_liste_attente@ =="on". Ceci permet que, si dans la saisie « Evènements » [3], l’internaute choisit un évènement où il ne reste plus de place, alors la case à cocher s’affiche. Dans le cas contraire, la case à cocher est masquée.
  • Dans l’onglet « Validation », rendre obligatoire le « Champ ». Ainsi nous sommes sûrs que la personne a conscience d’être sur liste d’attente.

Étape 3 : configurer le traitement « Participation à un évènement »

Pour nos formulaires nous utilisons quatre traitements :

  • nous envoyons un courriel au(x) responsable(s) de formation ;
  • nous enregistrons en base les réponses ;
  • nous procédons à un paiement, à travers une plateforme spécifique à notre association ;
  • nous enregistrons la réponse comme une inscription à l’évènement.

Nous allons détailler maintenant la configuration du quatrième traitement, fourni par le plugin « Formulaire de participation avec Formidable ».

Voici les options que nous choisissons.

  • « Participation » : « le remplissage du formulaire implique automatiquement la participation à l’évènement », puisque c’est bien le formulaire qui fait office d’inscription.
  • « Champ de l’email » : nous choisissons le champ « Email » dans le formulaire.
  • « Champ du nom », « Champ du prénom » et « Champ de l’organisme », bien que cela ne change pas grand-chose, nous choisissons les bons champs du formulaire. En réalité, cela n’est utile que si nous confions la gestion des inscriptions à Agenda, ce qui n’est pas vraiment le cas ici. Peu importe ce que le plugin « Agenda » reçoit comme information à ce sujet : ce qui compte est ce que nous, nous recevons comme information.
  • « Type d’évènement » : « Évènement variable - dépendant d’un champ »
  • « Champ d’évènement » : nous choisissons la saisie d’évènements créée en étape 1.
Option du traitement « Inscription à un évènement »

Étape 4 : gérer les désistement

Maintenant quand une personne consulte le formulaire, il peut choisir l’évènement en ayant conscience du nombre de places restantes.

Formulaire final

Si une personne se désiste, la démarche à effectuer est la suivante :

  • Prévenir la personne suivante sur liste d’attente que la place s’est libérée.
  • Modifier la réponse enregistrée en base, en la passant en « refusée » ou « à la poubelle » : le compteur d’inscriptions à l’évènement sera automatiquement décrémenté.

Pour aller plus loin

On peut transmettre automatiquement le programme aux personnes inscrites, en utilisant le plugin « Formidable retour étendu ».

Todolist

  • Créer un plugin qui notifie automatiquement les gens sur liste d’attente.

Notes

[1À noter que nous ne prenons pas le plugin Réservation d’événement car nous devons pouvoir gérer en plus de la réservation proprement dite le questionnaire spécifique, ce que nous pouvons faire facilement avec Formidable.

[2Nous utilisons un logiciel de comptabilité. Nous avons également une plateforme de paiement en ligne, spécifique à notre association et branché avec notre base de données d’adhérentes. Nous branchons notre formulaire sur cette plateforme, mais ce n’est pas l’objet du présent tutoriel.

[3Plus précisément evenements_1, la seule saisie « Évènements » dans notre formulaire.

Captures d’écran parfois reprises de l’article « Réservation d’événements ».

Discussion

Une discussion

  • Bonjour,

    Pour ce qui est de l’affichage de la liste de participantes dans l’espace privé, il semble que le plugin Agenda a (désormais ?) une page : ?exec=agenda_inscriptions&id_evenement= (qui inclut prive/objets/liste/evenement_participants).

    Or ce plugin-ci semble remplacer cet affichage par un lien vers les réponses du formulaire.

    Les pipelines ne pourraient-ils pas ajouter ce lien sans toutefois supprimer l’affichage de la liste native du plugin Agenda ?

    N.B. Je travaille sur un site pour lequel je n’ai actuellement pas accès aux squelettes.

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom