SPIP - Contrib

SPIP - Contrib

[ar] [en] [es] [fr] [it]

136 visiteurs en ce moment

Gestion des inscriptions à des conférences

jeudi 10 novembre 2005, par fleg

Cette contribution à pour objectif d’expliquer comment gérer automatiquement les inscriptions à des colloques sous SPIP.

Introduction

Cet article est maintenant obsolete. Une version de cette contribution existe sous forme de plugin gestion des inscriptions à des conférences.

Un problème qui se pose pour les gestionnaires de sites d’associations ou d’institutions organisant des colloques est de gérer efficacement les inscriptions des participants. Cette contrib propose une solution simple et pratique pour le faire.

Fonctionnalités

Les fonctionnalités de cette contrib sont les suivantes :

- On peut gérer simultanément autant de colloque que l’on veut (chaque colloque est associé à l’article dans lequel la page d’inscription est insérée).
- L’ajout d’une page d’inscription est extrêmement simple pour les contributeurs : il suffit d’insérer un tag <registration adresse@de.notification.fr> (ou <fastregistration adresse@de.notification.fr> pour un formulaire simplifié) dans le texte de l’article.
- Lorsque quelqu’un s’inscrit ou se désinscrit, un mail de notification est automatiquement envoyé à l’adresse email de son choix (adresse@de.notification.fr).
- Toute les infos sont enregistrées dans la base de donnée (comme ça les personnes qui se sont inscrite une fois n’ont pas à redonner leurs coordonnées pour le second colloque).
- Normalement le formulaire généré est XHTML conforme.

Installation

- Il faut tout d’abord ajouter un filtre sur le texte pour détecter la présence de la balise . Pour ma part, j’ai regroupé tous mes filtres perso dans un "meta filtre" que j’appelle sur le contenu de mes articles. Mais vous n’êtes pas obligé de faire pareil et vous pouvez appeller directement le filtre fl_registrationform. Mon fichier mes_fonctions.php3 contient donc le code suivant :

Ensuite, il faut appeller le filtre. Cela se fait dans le squelette. Dans le squelette, il faudra aussi tester si le formulaire a été demandé et si oui inclure le formulaire. Tout cela se fait en mettant les lignes suivantes dans le squelette "article.html".

Maintenant, il faut copier le fichier registrationform.php ci joint à la racine de votre site [1]. Il faudra aussi ajouter à la racine du site le fichier objets.inc.php (attention, si vous ne le mettez pas à la racine, il faudra changer son appel dans registrationform.php).

Zip - 3.9 ko
registrationform.php
The registration form.
Zip - 3.5 ko
objets.inc.php
Classes de gestion des colloques.

Configurez les variables $adresse_site et $adresse_email_defaut dans registrationform.php (adresse de votre site et adresse email d’où seront envoyé les emails de notification. On doit pouvoir utiliser l’adresse web défini pour le site, mais j’ai pas pris le temps de regarder comment... avis aux amateurs ! ).

Pour que ça s’afiche correctement, il faut aussi ajouter les styles correspondant. Je conseille de les inclure une feuille de style séparée appelée registration.css placée à la racine (ou ailleurs).

Cascading Style Sheet - 815 octets
registration.css
Feuille de style pour les formulaires d’inscription.

Pour cela ajouter

dans les entêtes des pages (entre les balises <head> et </head>).

Il faut également ajouter le fichier contenant le javascript Onglet.js à la racine du site.

Zip - 1.3 ko
Onglet.js
Javascript pour basculer de la fiche d’inscription à la liste des participants.

Dernière étape, créer les tables dans la base. Voici le code de création des tables :

Connectez-vous à votre base de données (phpmyadmin) et executez le code SQL ci-dessus pour créer les tables.

Voila, normalement, ça devrait fonctionner. Chez moi, ça fonctionne avec spip 1.7.2 et 1.8.1. Bonne chance.

Liens concernants la gestion de conférences (suggèrés par Minh)

ConfTool

OpenConf

Discussion

Notes

[1] ou dans un autre répertoire, par exemple "squelettes", si vous modifiez include("registrationform.php") ; en include("squelettes/registrationform.php") ; dans article.html

Répondre à cet article

Ça discute par ici

SPIP | Squelette | | Plan du site | Suivre la vie du site RSS 2.0