<?php
require_once '../config.php';

// Mise à jour de la structure de la table events
$alterTableQuery = "
    -- Sauvegarde des données existantes
    CREATE TABLE events_backup AS SELECT * FROM events;
    
    -- Suppression de la table existante
    DROP TABLE events;
    
    -- Création de la nouvelle table avec la structure mise à jour
    CREATE TABLE events (
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        title TEXT NOT NULL,
        description TEXT,
        location TEXT,
        start_date DATE NOT NULL,
        end_date DATE,
        start_time TIME,
        end_time TIME,
        category_id INTEGER,
        max_participants INTEGER DEFAULT 0,
        registration_required BOOLEAN DEFAULT 0,
        registration_deadline DATE,
        status TEXT DEFAULT 'scheduled', -- scheduled, completed, cancelled
        image TEXT,
        created_by INTEGER,
        created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
        FOREIGN KEY (category_id) REFERENCES categories(id),
        FOREIGN KEY (created_by) REFERENCES users(id)
    );
    
    -- Restauration des données (uniquement les colonnes communes)
    INSERT INTO events (id, title, description, start_date, start_time, end_time, location, category_id, status)
    SELECT id, title, description, event_date, start_time, end_time, location, category_id, status
    FROM events_backup;
    
    -- Suppression de la table de sauvegarde
    DROP TABLE events_backup;
";

try {
    // Exécution des requêtes
    $db->exec($alterTableQuery);
    echo "<div style='background-color: #d4edda; color: #155724; padding: 15px; border-radius: 5px; margin: 20px;'>
            <h3>✅ Mise à jour réussie</h3>
            <p>La structure de la table 'events' a été mise à jour avec succès.</p>
            <p>Les colonnes suivantes ont été ajoutées :</p>
            <ul>
                <li>end_date</li>
                <li>max_participants</li>
                <li>registration_required</li>
                <li>registration_deadline</li>
                <li>image</li>
                <li>created_by</li>
                <li>created_at</li>
            </ul>
            <p>Les données existantes ont été préservées.</p>
            <p><a href='../events/add.php' style='color: #155724; text-decoration: underline;'>Retourner à la page d'ajout d'événements</a></p>
          </div>";
} catch (PDOException $e) {
    echo "<div style='background-color: #f8d7da; color: #721c24; padding: 15px; border-radius: 5px; margin: 20px;'>
            <h3>❌ Erreur</h3>
            <p>Une erreur s'est produite lors de la mise à jour de la table 'events' :</p>
            <pre>{$e->getMessage()}</pre>
            <p><a href='../index.php' style='color: #721c24; text-decoration: underline;'>Retourner à l'accueil</a></p>
          </div>";
}
?>
