226 lines
8.2 KiB
Markdown
226 lines
8.2 KiB
Markdown
# NODE.JS
|
|
bonsoir bonjour
|
|
## DÉMARRAGE DU PROJET
|
|
cd /Users/juliechaumard/Documents/GitHub/Aduzuki_v2
|
|
npm start
|
|
|
|
# DOCUMENTATION
|
|
- Dans ce dossier sous /documentation
|
|
- MindMap : GoogleDrive-juliechaumard@gmail.com/Mon Drive/Projets/Suzuki/Adusuki/dev
|
|
- Notion
|
|
|
|
# DOMAIN
|
|
inscription.afpedagogiesuzuki.fr
|
|
DOMAIN_EXTERNE="https://inscription.afpedagogiesuzuki.fr/"
|
|
|
|
|
|
# SITE DE DEV
|
|
|
|
## NEW
|
|
### URL
|
|
aduzuki.darkweb.land
|
|
|
|
|
|
|
|
# URLs
|
|
|
|
## ACCUEIL
|
|
https://www.adhesion.afpedagogiesuzuki.fr/inscription/accueil
|
|
|
|
## FORMULAIRE ADHÉSION
|
|
http://localhost:8890/adhesion
|
|
https://www.adusuki.juliechaumard.paris/adhesion
|
|
https://inscription.afpedagogiesuzuki.fr/adhesion
|
|
|
|
|
|
### GESTION DES ADHÉSION
|
|
https://inscription.afpedagogiesuzuki.fr/adhesion/maj_googlesheet
|
|
https://www.inscription.afpedagogiesuzuki.fr/adhesion/maj_googlesheet
|
|
|
|
## ENVOIE CARTE ADHÉRENT ET JUSTIFICATIF DE DON MANUEL
|
|
http://localhost:8888/inscription/adhesion/carte_manuelle
|
|
https://www.adusuki.juliechaumard.paris/inscription/adhesion/carte_manuelle
|
|
https://inscription.afpedagogiesuzuki.fr/adhesion/carte_manuelle
|
|
|
|
## SYNC PROF ANNUAIRE ADUZUKI <=> STRAPI
|
|
http://localhost:8890/adhesion/sync_prof_strapi
|
|
https://inscription.afpedagogiesuzuki.fr/adhesion/sync_prof_strapi
|
|
|
|
## STAGE ANNUEL
|
|
http://localhost:8890/stagenational
|
|
https://adusuki.juliechaumard.paris/stagenational
|
|
https://inscription.afpedagogiesuzuki.fr/stagenational
|
|
|
|
### GESTION DU STAGE
|
|
https://www.inscription.afpedagogiesuzuki.fr/adhesion/admin
|
|
|
|
## RASSEMBLEMENT IDF
|
|
http://localhost:8890/rassemblementidf
|
|
https://www.adusuki.juliechaumard.paris/rassemblementidf
|
|
https://inscription.afpedagogiesuzuki.fr/rassemblementidf
|
|
|
|
## RASSEMBLEMENT RA
|
|
http://localhost:8890/rassemblementra
|
|
https://adusuki.juliechaumard.paris/rassemblementra
|
|
https://inscription.afpedagogiesuzuki.fr/rassemblementra
|
|
|
|
## CONCERT UNESCO
|
|
http://localhost:8890/concert
|
|
https://www.adusuki.juliechaumard.paris/concert
|
|
https://www.inscription.afpedagogiesuzuki.fr/concert
|
|
https://inscription.afpedagogiesuzuki.fr/
|
|
https://inscription.afpedagogiesuzuki.fr/concert/concert_paiement/annule?id={CHECKOUT_SESSION_ID}
|
|
https://inscription.afpedagogiesuzuki.fr/concert/concert_paiement/reussi?id={CHECKOUT_SESSION_ID}
|
|
|
|
## BOUTIQUE
|
|
### VIDÉOS
|
|
https://inscription.afpedagogiesuzuki.fr/boutique/videos
|
|
|
|
|
|
# MISE EN PROD
|
|
- varirable d'environnement pour stipe dans les controllers l'envoi vers Stripe et celui de retour de Stripe (STRIPE_PRIVATE_KEY, STRIPE_PRIVATE_KEY_TEST)
|
|
|
|
|
|
## DEV
|
|
|
|
### GNROK
|
|
https://bf89-2a01-e0a-5ee-1510-4021-f309-9a2c-823.ngrok-free.app/wh_stripe
|
|
https://9243-2a01-e0a-5ee-1510-4c7b-ac31-5c89-f077.ngrok-free.app
|
|
|
|
## MODULES
|
|
npm-node14 install htmltopdf-weasyprint
|
|
|
|
|
|
|
|
# ABBRÉVIATIONS
|
|
SN ou stn = STAGE NATIONAL
|
|
|
|
# LOGGING
|
|
Exemples de traces
|
|
|
|
N'importe où
|
|
logger.info("NOUS SOMMES DANS LE FICHIER : " + __filename,
|
|
{ label: __filename });
|
|
|
|
Dans une fonction req res :
|
|
logger.info('bonjour Julie',
|
|
{ numsession: req.session.id });
|
|
logger.info('process.env.PORT : ' + process.env.PORT),
|
|
{ numsession: req.session.id }, { label: __filename };
|
|
|
|
|
|
logger.info("XXX" + ZZZ, { numsession: req.session.id }, { label: __filename });
|
|
|
|
|
|
# ENV
|
|
Si on change une variable d'environnement, il faut redémarrer le projet
|
|
|
|
# HTACCESS
|
|
--ORIGINAL
|
|
RewriteEngine On
|
|
RewriteCond %{ENV:HTTPS} !on
|
|
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
|
|
|
|
# PDF
|
|
try {
|
|
var pdf_html = fs.readFileSync(path.resolve(__dirname,"../pdf/template/carte_adherent.html"), "utf8");
|
|
var pdf_buffer = await weasyprint(pdf_html);
|
|
fs.writeFileSync("juju.pdf", pdf_buffer);
|
|
} catch (error) {
|
|
logger.info("Erreur durant la création du PDF : " + error, { numsession: req.session.id });
|
|
}
|
|
|
|
# STRIPE
|
|
TEST CARD
|
|
|
|
ok normal
|
|
4242424242424242
|
|
4242 4242 4242 4242
|
|
|
|
ok 3DS
|
|
4000000000003063
|
|
|
|
pb
|
|
4000000000000002
|
|
|
|
RETOUR
|
|
https://www.adusuki.afpedagogiesuzuki.fr/inscription/adhesion_paiement/reussi?id=cs_test_b1teU2a5wbTFwdPKGefvrKS1N6deBGPK86xFhdbxqKo9dtmgCzwoYZ8fJ6
|
|
|
|
Rassemblement Rhône-Alpes
|
|
25€ ou 40€
|
|
|
|
|
|
|
|
# INSCRIPTION MAJ Google Sheet automatique
|
|
CRON
|
|
- le cron est lancé par la librairie cron de NodeJS
|
|
- fichier modules/adhesion/majgs_webhook.js
|
|
- mise en prod
|
|
- ne pas oublier de changer l'URL à lancer dans le fichier majgs_webhook.js : commenter l'URL de dev localhost et décommenter l'URL de prod
|
|
- pm2 start /var/www/aduzuki/modules/adhesion/majgs_webhook.js --name majgs_webhook
|
|
|
|
|
|
# MAINTENANCE
|
|
## ADHESION REQUETE SAISON
|
|
|
|
> [!NOTE]
|
|
> Vérifier que le champ saison soit au bon format
|
|
|
|
```sql
|
|
SELECT *
|
|
FROM aduzuki.adherent_professeur
|
|
WHERE saison != '2025/2026'
|
|
|
|
UPDATE aduzuki.adherent_professeur
|
|
SET saison = '2025/2026'
|
|
WHERE saison != '2025/2026'
|
|
|
|
# DATABASE
|
|
|
|
## Stage NATIONAL
|
|
CREATE TABLE `stn_participant` (
|
|
`ID_participant` int NOT NULL AUTO_INCREMENT,
|
|
`identifiant` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`date_maj` datetime DEFAULT NULL,
|
|
`stn_part_nom` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`stn_part_prenom` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`prise_charge_famille` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`stn_part_date_naiss` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`stn_part_age` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`stn_part_profilage` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`stn_role` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`stn_profil` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`stn_transport` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`stn_arret` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`instrument` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`instrument_ensemble` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`instrument_collectif` varchar(50) COLLATE utf8mb4_unicode_520_ci DEFAULT NULL,
|
|
`cahier` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`piece` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`prof_nom` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`prof_mail` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`concert_solo_piece` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`concert_solo_cahier` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`cours_individuel` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`decouverte_alto` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`option_choral` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`option_rythmique` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`option_eveil` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
|
|
`option_collectif` varchar(40) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci DEFAULT NULL,
|
|
`option_ensemble` varchar(40) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci DEFAULT NULL,
|
|
`option_particulier` varchar(40) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci DEFAULT NULL,
|
|
`cout_hebergement` int DEFAULT NULL,
|
|
`cout_transport` int DEFAULT NULL,
|
|
`eveil_cout` int DEFAULT NULL,
|
|
`dalcroze_cout` int DEFAULT NULL,
|
|
`collectif_cout` int DEFAULT NULL,
|
|
`ensemble_cout` int DEFAULT NULL,
|
|
`particulier_cout` int DEFAULT NULL,
|
|
`observation_cout` int DEFAULT NULL,
|
|
`cours_cout` int DEFAULT NULL,
|
|
`coursindividuel_cout` int DEFAULT NULL,
|
|
`decouvrealto_cout` int DEFAULT NULL,
|
|
`chant_cout` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci DEFAULT NULL,
|
|
`statut_suppression` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci DEFAULT NULL,
|
|
PRIMARY KEY (`ID_participant`)
|
|
) ENGINE=InnoDB AUTO_INCREMENT=393 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci |