/**
 * Script pour appliquer la migration newsletter
 */
import { pool } from '../db.js';
import fs from 'fs';
import { fileURLToPath } from 'url';
import { dirname, join } from 'path';

const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);

async function applyMigration() {
  try {
    console.log('📦 Application de la migration newsletter...');

    // Lire le fichier SQL
    const migrationPath = join(__dirname, '../database/migrations/add-newsletter-table.sql');
    const sql = fs.readFileSync(migrationPath, 'utf8');

    console.log('📄 Fichier SQL lu:', migrationPath);

    // Exécuter la migration
    await pool.query(sql);

    console.log('✅ Migration appliquée avec succès!');
    console.log('📊 Table newsletters créée');

    // Vérifier que la table existe
    const result = await pool.query(
      "SELECT table_name FROM information_schema.tables WHERE table_name = 'newsletters'"
    );

    if (result.rows.length > 0) {
      console.log('✅ Vérification: Table newsletters trouvée dans la base de données');
    } else {
      console.log('❌ Erreur: Table newsletters non trouvée après migration');
    }

    process.exit(0);
  } catch (error) {
    console.error('❌ Erreur lors de l\'application de la migration:', error.message);
    console.error(error);
    process.exit(1);
  }
}

applyMigration();
