-- sql/install.sql
-- Base de données pour "Protéger l'Étoile de Destinée de son Enfant"

-- Table des utilisateurs
CREATE TABLE IF NOT EXISTS `etoile2_utilisateurs` (
    `id` INT(11) NOT NULL AUTO_INCREMENT,
    `civilite` VARCHAR(10) NOT NULL,
    `sexe` VARCHAR(5) NOT NULL,
    `nom` VARCHAR(100) NOT NULL,
    `prenom` VARCHAR(100) NOT NULL,
    `date_naissance` DATE DEFAULT NULL,
    `tranche_age` VARCHAR(50) DEFAULT NULL,
    `statut_marital` VARCHAR(50) NOT NULL,
    `telephone` VARCHAR(20) NOT NULL,
    `indicatif_telephone` VARCHAR(10) NOT NULL,
    `email` VARCHAR(255) NOT NULL UNIQUE,
    `ville` VARCHAR(100) NOT NULL,
    `pays` VARCHAR(100) NOT NULL,
    `mot_de_passe` VARCHAR(255) NOT NULL,
    `origine` VARCHAR(100) DEFAULT NULL,
    `role` ENUM('admin', 'user') DEFAULT 'user',
    `status` ENUM('en_attente', 'actif', 'bloque') DEFAULT 'en_attente',
    `date_inscription` DATETIME DEFAULT CURRENT_TIMESTAMP,
    `derniere_connexion` DATETIME DEFAULT NULL,
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- Table des sessions de webinaire
CREATE TABLE IF NOT EXISTS `etoile2_sessions` (
    `id` INT(11) NOT NULL AUTO_INCREMENT,
    `titre` VARCHAR(255) NOT NULL,
    `description` TEXT,
    `duree` INT(11) DEFAULT 90,
    `video_url` VARCHAR(500) DEFAULT NULL,
    `ordre` INT(11) DEFAULT 0,
    `actif` TINYINT(1) DEFAULT 1,
    `date_creation` DATETIME DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- Table des prises de notes
CREATE TABLE IF NOT EXISTS `etoile2_notes` (
    `id` INT(11) NOT NULL AUTO_INCREMENT,
    `utilisateur_id` INT(11) NOT NULL,
    `session_id` INT(11) NOT NULL,
    `titre` VARCHAR(255) DEFAULT NULL,
    `contenu` TEXT,
    `points_cles` TEXT,
    `prieres` TEXT,
    `proclamations` TEXT,
    `actions` TEXT,
    `date_creation` DATETIME DEFAULT CURRENT_TIMESTAMP,
    `date_modification` DATETIME DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
    PRIMARY KEY (`id`),
    FOREIGN KEY (`utilisateur_id`) REFERENCES `etoile2_utilisateurs`(`id`) ON DELETE CASCADE,
    FOREIGN KEY (`session_id`) REFERENCES `etoile2_sessions`(`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- Table des progrès des participants
CREATE TABLE IF NOT EXISTS `etoile2_progres` (
    `id` INT(11) NOT NULL AUTO_INCREMENT,
    `utilisateur_id` INT(11) NOT NULL,
    `session_id` INT(11) NOT NULL,
    `termine` TINYINT(1) DEFAULT 0,
    `temps_visionnage` INT(11) DEFAULT 0,
    `date_debut` DATETIME DEFAULT NULL,
    `date_fin` DATETIME DEFAULT NULL,
    PRIMARY KEY (`id`),
    FOREIGN KEY (`utilisateur_id`) REFERENCES `etoile2_utilisateurs`(`id`) ON DELETE CASCADE,
    FOREIGN KEY (`session_id`) REFERENCES `etoile2_sessions`(`id`) ON DELETE CASCADE,
    UNIQUE KEY `unique_progres` (`utilisateur_id`, `session_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- Insertion des sessions par défaut
INSERT INTO `etoile2_sessions` (`titre`, `description`, `duree`, `ordre`) VALUES
('Introduction - Pourquoi protéger l''étoile de son enfant ?', 'Fondement biblique et présentation du webinaire', 10, 1),
('Diagnostic - Identifier les attaques', 'Reconnaître les signes d''un vol d''étoile chez l''enfant', 15, 2),
('Combat Spirituel - La couverture parentale', 'Stratégies de protection et rupture des pactes', 20, 3),
('Les Voleurs d''Étoiles', 'Identifier les influences négatives et les fréquentations toxiques', 15, 4),
('Stratégies Avancées', 'Jeûne, délivrance et clés pour la restauration', 15, 5),
('Conclusion et Proclamation', 'Récapitulation et prière puissante de clôture', 15, 6);

-- Insertion d'un admin par défaut (à modifier après installation)
-- Mot de passe: Admin123!
INSERT INTO `etoile2_utilisateurs` (`civilite`, `sexe`, `nom`, `prenom`, `email`, `ville`, `pays`, `telephone`, `indicatif_telephone`, `statut_marital`, `mot_de_passe`, `role`, `status`) 
VALUES ('M', 'H', 'Admin', 'System', 'admin@etoile.com', 'Paris', 'France', '0000000000', '+33', 'marie', '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', 'admin', 'actif');