-- Table complète cupidose_categories avec Saveur_ID et Usine_ID
-- Date: 2025-12-08
-- Description: Table pour gérer la hiérarchie Catégorie > Sous-catégorie > Type > Marque

-- Supprimer la table si elle existe (ATTENTION: cela supprimera toutes les données)
-- DROP TABLE IF EXISTS `cupidose_categories`;

-- Créer la table complète
CREATE TABLE IF NOT EXISTS `cupidose_categories` (
    `ID` INT AUTO_INCREMENT PRIMARY KEY,
    `Nom` VARCHAR(255) NOT NULL,
    `Parent_ID` INT NULL,
    `Niveau` INT DEFAULT 1,
    `Category_ID` INT NULL,
    `Subcategory_ID` INT NULL,
    `Type_ID` INT NULL,
    `Marque_ID` INT NULL,
    `Usine_fabrication` VARCHAR(255) NULL,
    `Usine_ID` INT NULL,
    `Saveur` VARCHAR(255) NULL,
    `Saveur_ID` INT NULL,
    `Images` TEXT NULL,
    `Videos` TEXT NULL,
    `Created_at` DATETIME DEFAULT CURRENT_TIMESTAMP,
    INDEX (`Parent_ID`),
    INDEX (`Niveau`),
    INDEX (`Category_ID`),
    INDEX (`Type_ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- Si la table existe déjà, ajouter uniquement les colonnes manquantes
ALTER TABLE `cupidose_categories` 
ADD COLUMN IF NOT EXISTS `Usine_ID` INT NULL AFTER `Usine_fabrication`;

ALTER TABLE `cupidose_categories` 
ADD COLUMN IF NOT EXISTS `Saveur_ID` INT NULL AFTER `Saveur`;

-- Vérifier la structure de la table
DESCRIBE `cupidose_categories`;

-- Notes d'utilisation:
-- Niveau 1: Catégorie (Parent_ID = NULL)
-- Niveau 2: Sous-catégorie (Parent_ID = ID de la catégorie)
-- Niveau 3: Type (Parent_ID = ID de la sous-catégorie)
-- Niveau 4: Marque (Parent_ID = ID du type, contient Saveur, Saveur_ID, Usine_fabrication, Usine_ID)
--
-- Saveur_ID et Usine_ID sont générés automatiquement par le code PHP:
-- - 0 = "Aucune" (saveur) ou "Aucun" (usine)
-- - 1, 2, 3... = IDs séquentiels uniques par Type_ID
