/////////////////////////////////////////////////
// FICHIER DE TEST
/////////////////////////////////////////////////

/////////////////////////////////////////////////
// LOGGING
/////////////////////////////////////////////////
const logger = require("../../public/js/app/logger_concert");

/////////////////////////////////////////////////
// APPELS DES MODULES
/////////////////////////////////////////////////
const path = require("path");
const fs = require("fs");
// CALCUL DE DATE
const moment = require('moment');
// ENVOIE MAIL GOOGLE MAIL
const nodemailer = require('nodemailer');
// CONNECTION BASE DE DONNÉES
const mysql = require('mysql2');
const mysql_promise = require('mysql2/promise');

// ADOBE PDF
const PDFServicesSdk = require('@adobe/pdfservices-node-sdk');
// FETCH (utile pour nodejs version < 18)
const fetch = require("node-fetch");



/////////////////////////////////////////////////
// APPELS DES FONCTIONS
/////////////////////////////////////////////////
const sleep = require("./../../modules/sleep");

////////////////////////////////////////////////////
// FILE NAME
////////////////////////////////////////////////////
const filename = path.parse(__filename).base;

////////////////////////////////////////////////////
// CONNECTION DB
////////////////////////////////////////////////////


/////////////////////////////////////////////////
// ENVOIE DES PARTICIPANTS A WEEZEVENT
/////////////////////////////////////////////////

const weez_envoie = async function(req, res) {
    logger.info("======================================", { label: filename });
    logger.info("======== FUNCTION weez_envoie ==========", { label: filename });
    logger.info("======================================", { label: filename });


    /////////////////////////////////////////////////
    // CONNEXION WEEZEVENT
    /////////////////////////////////////////////////

    // RÉCUPÉRER LE TOKEN
    let TICKETING_API_BASE_URL = "https://api.weezevent.com/";
    let url = TICKETING_API_BASE_URL;
    url += 'auth/access_token';
    url += '?username=' + process.env.weezevent_USER;
    url += '&password=' + process.env.weezevent_PASSWORD;
    url += '&api_key=' + process.env.weezevent_API_KEY;
    logger.info("url = " + url , { numsession: req.session.id, label: filename});
    let headers = {'content-type':'application/x-www-form-urlencoded;charset=utf-8'};
    let premise_post_token = await fetch(url, {
        method: 'POST',
        headers: headers
    });
    let response_post_token = await premise_post_token.json();
    console.log("response_post_token = ", response_post_token);
    let accessToken = response_post_token.accessToken;
    logger.info("RÉCUPÉRER LE TOKEN // accessToken = " + accessToken , { numsession: req.session.id, label: filename});



    req.session.message2 = "on est dans fonction weez_envoie, accessToken = ", accessToken;
    res.redirect('/concert/maj_googlesheet');


}



/////////////////////////////////////////////////
// EXPORT DES MODULES POUR QU'ILS PUISSENT LUS PAR LES AUTRES FICHIERS JS
/////////////////////////////////////////////////

module.exports = {
    weez_envoie
}
