SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

288 Plugins, 197 contribs sur SPIP-Zone, 272 visiteurs en ce moment

Accueil > Améliorations de l’espace privé > Champs extra > Un site web d’anciens élèves grâce aux Champs Extras

Un site web d’anciens élèves grâce aux Champs Extras

31 octobre 2011 – par elm31rugby

7 votes

Ceci est une « contribution pédagogique », qui montre par l’exemple comment développer une nouvelle fonctionnalité pour SPIP.

J’ai réalisé un site pour une association d’anciens élèves, avec une dimension un peu "communautaire". Même si, dès le début, j’avais bien précisé que je ne voulais pas ré-inventer Facebook, nous avons néanmoins mis en place certaines fonctionnalités qui pourraient être utiles à d’autres, pour des sites semblables.

Il existe des plugins pour Association, mais ils ne faisaient pas exactement ce que nous voulions, tout en présentant des fonctionnalités dont nous n’avions pas besoin. Donc, ... j’ai trouvé plus simple de mettre en place notre propre produit, dont le principe est décrit ci-dessous.

Présentation

faire un site sur lequel les anciens élèves :

-   peuvent s’inscrire
-   peuvent remplir une fiche personnelle
-   peuvent modifier leur fiche personnelle (sans qu’elle soit modifiable par un petit camarade, cela s’entend...)
-   s’ils sont connectés, peuvent voir la liste des membres de l’association
-   peuvent faire une recherche (rechercher tous les anciens qui habitent la même ville, ou qui ont fait les mêmes études après le lycée, etc)

Rem : Il y avait initialement d’autres conditions, entre autre sur le paiement en ligne de la cotisation. Ensuite, pour se connecter, il fallait s’assurer que l’ancien élève était à jour de sa cotisation. Pour l’instant, cette clause du cahier des charges a été abandonnée.

Pour réaliser ce cahier des charges, j’ai besoin :

-   du plugin Champs extra 2
-   du plugin Interface pour champs extras.

Installez ces deux plugins, en suivant au besoin les instructions pour installer un plugin. Les spécificités de Champs extras et Interface pour champs extras sont bien décrites dans leur page sur Spip-Contrib (entre autre, besoin d’installer les plugins Bonux et Saisies)

1. Configuration

La fiche de chaque élève

Pour réaliser la fiche de chaque élève, nous allons modifier grâce aux champs extras le formulaire « auteur ».

Pour ajouter un champ :

-   cliquez sur « Configuration » : vous voyez s’afficher l’écran suivant

-   cliquez sur « Champs extras » et suivez la procédure classique pour ajouter un champ.

-  Répétez l’opération pour chaque champs de votre formulaire, tel que vous voulez que votre fiche "élève" soit configurée.

Une fois tous vos champs ajoutés, en fonction du formulaire que vous souhaitez, vous devriez avoir une liste de champs extras qui ressemble plus ou moins à cela :

Comme vous le voyez, presque tous mes champs sont de type « ligne », sauf deux, qui sont de type « Bloc » (les deux champs pour lesquels l’ancien élève a le plus de choses à dire, son « cursus universitaire », et son « Etat civil »)

Vérifiez, dans l’espace privé, que votre fiche "Auteur" est bien modifiée en conséquence.

Une fois que la fiche Auteur est prête, passons à la configuration de notre site

Recherche dans les champs extras

Pour ce qui est de la recherche, j’ai longtemps cherché (c’est le cas de le dire) jusqu’à trouver que, dans la définition des champs extras, on peut décider de l’inclure ou non dans une recherche... Donc, si cette fonctionnalité vous intéresse, ne l’oubliez pas.

Configuration du site :

Vous voulez permettre l’inscription de visiteurs sur le site public, mais vous ne souhaitez pas qu’ils accèdent au site privé. Ce sont des visiteurs, pas des rédacteurs. N’oubliez pas de configurer votre site en conséquence, c’est à dire :

Bouton "Configuration", onglet "Interactivité" :

-  Refusez l’inscription automatique des nouveaux rédacteurs.
-  Acceptez l’inscription de visiteurs du site public.

2. Les squelettes

Tout d’abord, créez deux rubriques :

-  une rubrique intitulée "Fiche Personnelle"
-  une rubrique intitulée "Membres"

REM : Comme je voulais que ces rubriques apparaissent dans ma liste des rubriques sur le site public, j’ai créé dans chacune d’entre elles un article vide.

Voici le code de la rubrique "Fiche Personnelle"

  1. [(#SESSION|oui) <p>Vous êtes authentifié,<a href='#URL_LOGOUT'>cliquez ici pour vous déconnecter</a></p>
  2. <p>... ici le contenu en accès restreint, réservé aux membres de l'Association des Anciens de Hautefeuille</p>
  3. <p>Les champs marqués d'un &laquo;&nbsp;*&nbsp;&raquo; sont obligatoires</p>
  4. #FORMULAIRE_EDITER_AUTEUR{#SESSION{id_auteur}}]
  5. [(#SESSION|non)<p class="restreint">Cette partie est en accès restreint. Pour accéder à votre fiche personnelle, connectez-vous. Si vous n'êtes pas inscrit, allez sur la page <a href="#URL_PAGE{page_inscription}">Inscription</a> pour recevoir votre mot de passe]

Télécharger

-  si le visiteur est logué, il accède à sa fiche, grâce à #SESSIONid_auteur (et donc, il n’accède pas à la fiche du voisin)
-  s’il n’est pas logué, on lui dit de le faire
-  et on précise que, s’il n’est pas inscrit, il doit passer par le formulaire d’inscription pour recevoir son mot de passe et pouvoir se loguer.

Voici maintenant le code pour la liste des membres

  1. [(#SESSION|oui) <p>Vous êtes authentifié,
  2. <a href='#URL_LOGOUT'>cliquez ici pour vous déconnecter</a></p>
  3. <p>Vous êtes connecté. Voici la liste des membres de l'Association des Anciens de Hautefeuille.</p>
  4. <p><em><small>Les adresses mail sont filtrées, pour éviter d'être spammées</small></em></p>
  5. <h3><img src="#DOSSIER_SQUELETTE/img/list.png" alt="liste des membres de l'association des anciens de Hautefeuille" />Liste des membres de l'Association des Anciens de Hautefeuille</h3>
  6. #FORMULAIRE_RECHERCHE
  7. <INCLURE{fond=./boucle/inc-boucle_auteurs}>]
  8. [(#SESSION|non)<p class="restreint">Cette partie est en accès restreint. Pour accéder à votre fiche personnelle, connectez-vous. Si vous n'êtes pas inscrit, allez sur la page <a href="#URL_PAGE{page_inscription}">Inscription</a> pour recevoir votre mot de passe]

Télécharger

Même principe : si l’élève n’est pas logué, on lui dit de le faire, etc.

Pour avoir la liste des membres, je fais une boucle "Auteurs", triée par "nom_de_famille", (qui est le titre de mon champs extra correspondant au nom de famille de l’élève), et dans la boucle, j’utilise les balises de mes champs extras : #PROMOTION, #VILLE, etc. Tout cela est décrit dans la page consacrée à l’utilisation de Champs Extras.

Cette boucle "Auteurs" est placée dans un squelette à part, que j’appelle dans ma balise #SESSION. Le squelette s’appelle inc-balise_auteurs.html, et il est placé dans le sous-répertoire "boucle".

REM : j’utilise la lame du Couteau Suisse qui empêche que les adresses mails soient spammées.

Enfin, pour la première inscription, j’ai créé une page "page_inscription", dans laquelle je place la balise #FORMULAIRE_INSCRIPTION.

Le visiteur s’inscrit, reçoit son mot de passe, et dans le courrier de confirmation d’inscription, nous encourageons la personne à compléter sa fiche personnelle.

Dernière modification de cette page le 31 octobre 2011

Retour en haut de la page

Répondre à cet article

Qui êtes-vous ?

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 Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Envoyer des fichiers avec un formulaire Formidable

    2 janvier – 34 commentaires

    La version 3.0.0 du plugin Formidable permet de créer des formulaires comprenant des envois de fichiers. Cet article regroupe la documentation relative à cette fonctionnalité. Pour une présentation générale de Formidable, voir « Formidable, le (...)

  • Albums 3

    8 août 2014 – 236 commentaires

    Le plugin « Albums » évolue dans une version 3 pour SPIP 3. Avant d’effectuer une mise à jour depuis la version 1 ou 2, consultez les notes sur la rétro-compatibilité. Les modèles, notamment, on reçut quelques changements pour la bonne cause. En (...)

  • COG : Toutes les communes, départements, régions ... françaises

    29 janvier 2013 – 16 commentaires

    Ajouter facilement les codes officiels géographiques tel que défini et fourni par l’INSEE( Institut national de la statistique et des études économiques). Voir : . Nota SPIP-Contrib : Cette spécificité « justifie » l’existence de ce plugin qui fut (...)

  • Utilisez le framework Foundation dans vos squelettes !

    13 août 2013 – 83 commentaires

    Foundation est un framework CSS et Javascript très complet pour réaliser des sites sur une grille propre et homogène. Mais surtout, il permet de rendre un site responsive très facilement ! Ce plugin ajoute le framework Foundation sur l’espace (...)

  • Court-circuit 2

    17 octobre 2011 – 77 commentaires

    Court-circuit 2 permet de rediriger certaines rubriques vers un article particulier. Vous pouvez configurer, dans l’espace privé, les règles de redirection à appliquer. Historique Court-circuit 2 est une évolution de Court-circuit 1, reprenant (...)

Ça spipe par là