AdminChouettos c'est l'outil de gestion des membres et backend du planning de La Chouette Coop construit avec Symfony
Adminchouettos est une application symfony qui permet la gestion du LDAP. Les données rentrées dans adminchouettos sont toutes enregistrées dans une base de données. Une partie de ces données sont ensuite transférées dans le LDAP (sous openLDAP), c'est à dire le nom, le mot de passe et le codebarre de l'utilisateur. Le reste des données sont uniquement dans la base de données locale. Adminchouettos offre une methode api pour se connecter au ldap. C'est à dire qu'on envoi les données
[ROLE_ADMIN]
dans le champs role d'un utilisateur dans la base.src/Admin : Contient tous les fichiers de configuration pour avoir l'interface d'administration via le module Sonata Admin
src/Controller : LdapController contient tous les services pour administrer le ldap, PlanningController toutes les fonctions pour la partie planning du projet, SecurityController permet l'enregistrement et le changement d'user et des mots de passe.
src/Entity : la définition des entity, gérées ensuite par doctrine
src/Form : le formulaire d'ajout de nouvel utilisateur
src/Repository : pour les requetes en BDD
src/Security : Les méthodes d'authentification, par login pour se connecter à la partie administration, par jeton d'api pour le planning et autre.
templates : les vues de l'application
toute les nuits : exportGHCodeBarreAction()
notificationReserve()
notificationParticipation()
compterPiafAttendues()
compterPiafEffectuees()
generateCreneaux()
Pour la 1ere exécution, il faut configurer la database :
cp docker-compose.yaml.dev docker-compose.yaml # Ou docker-compose.yaml.prod
# Pour la production, mettre à jour les variables MARIADB_ROOT_PASSWORD, MARIADB_PASSWORD et SYMFONY_DATABASE_PASSWORD
docker-compose up -d database
docker-compose exec database bash
# Puis dans le docker `database` :
mysql -p # Enter the $MARIADB_ROOT_PASSWORD
CREATE USER 'adminchouettos'@'symfony' IDENTIFIED BY '...';
GRANT ALL ON adminchouettos.* TO 'adminchouettos'@'symfony';
# Vous pouvez quitter le docker
Pour restaurer un dump :
# put the backup.sql file in ./data
mysql -p adminchouettos < /var/lib/mysql/backup.sql
Si vous voulez importer la db de prod vous devez copier tout le dossier data et non juste le fichier .sql. Maria db n'importe pas les séquences des PK et donc les
CREATE
ne fonctionne pas.
Une fois que la database est confgurée :
cp .env .env.local
* Modifier le fichier .env.local avec les paramètres du LDAP, du mailer et de la BDD
docker-compose build
docker-compose up -d