WikiMiNET

La documentation technique et administrative

Outils pour utilisateurs

Outils du site


wiki:services:adh5:script_preinscription

Préinscriptions

Pour soulager les permanences, notamment pendant l'arrivée des summer schools, il existe un script permettant d'effectuer des préinscriptions. Il permet de n'avoir plus qu'à valider l'inscription une fois la charte signée.

Utilisation

Il faut d'abord préparer un fichier .csv avec comme champs, dans l'ordre suivant, pour chaque futur adhérent :

  • son nom
  • son prénom
  • son email
  • le (futur) login
  • le mot de passe
  • le numéro de chambre
  • la durée de cotisation (1 mois : 30 jusqu'à 5 mois : 150, un an : 360, sans chambre : 365)

La première ligne du fichier ne sera pas prise en compte, autant y laisser le nom des champs, ça permet au moins de ne pas les inverser.

Ce fichier csv est à placer dans le dossier lib. En fait, il devrait s'appeler summer_school.csv, si besoin, cela peut se modifier dans le script, qui se situe dans lib/tasks/import.rake.

Une fois que tout est en place :

$ source /home/deploy/.rvm/scripts/rvm 
$ rvm use 2.0
$ RAILS_ENV=production rake import:inscription

Dans le cas où vous voudriez tester le script en local, utilisez les instructions de Installer ADH5 en local, puis

rake import:inscription

devrait suffire. Pour l'utiliser sur adh5-dev, utiliser plutôt RAILS_ENV=uat.

Sur la prod, si vous n'arrivez pas à utiliser rake, il y aura peut-être besoin d'utiliser

gem install bundler -v=1.16.6
gem install rake -v=10.4.2

Une fois le script exécuté, vous devriez voir les inscriptions sur la page d'accueil sous “Inscriptions en cours”. Il ne reste plus qu'à modifier des informations si nécessaire, choisir le moyen de paiement et faire signer la charte avant de valider.

Génération d'un pdf

Une fois l'inscription effectuée, si vous avez généré le login et le mot de passe, il peut être bien de donner un petit papier avec les identifiants pour se connecter. Voici un script qui s'occupe de faire ça, avec pandoc qui va transformer un fichier markdown en un beau pdf !

Il faut avoir dans le même dossier le csv (à passer en argument), et le logo MiNET (minet.png).

#! /bin/bash
 
if [ $# -ne 1 ]; then
    echo "Usage : $0 csv_file" >&2
    exit 1
fi
 
f=liste_summer_school.md
 
echo "\sffamily" > $f 
echo "![](minet.png){width=0.01%}" >> $f
echo "" >> $f
 
 
while read x; do
    nom=$(echo $x | cut -d',' -f1)
    prenom=$(echo $x | cut -d',' -f2)
    login=$(echo $x | cut -d',' -f4)
    escape="\_"
    login=${login/_/$escape}
    password=$(echo $x | cut -d',' -f5)
 
    echo "\begin{center}" >> $f
    echo "\includegraphics[width=.2\textwidth]{minet.png}" >> $f
    echo "\end{center}" >> $f
    echo "" >> $f
    echo "Pour $prenom $nom" >> $f
    echo "" >> $f
    echo "Login : \texttt{$login}  " >> $f
    echo "Mot de passe : \texttt{$password}" >> $f
    echo "" >> $f
    echo "---" >> $f
    echo "" >> $f
done < $1
 
pandoc -f markdown -t latex -V geometry:margin=2cm --pdf-engine=pdflatex -o liste_summer_school.pdf $f
 
exit 0
wiki/services/adh5/script_preinscription.txt · Dernière modification: 2019/07/02 11:53 par gabery