-- ============================================================
-- TABLES MODULE CHAT — JeTeGageQue (sans emojis)
-- ============================================================

-- Table icônes chat
CREATE TABLE IF NOT EXISTS chat_icons (
    id               INT(11)      NOT NULL AUTO_INCREMENT PRIMARY KEY,
    emoji            VARCHAR(10)  NOT NULL,
    label            VARCHAR(50)  DEFAULT NULL,
    category         VARCHAR(30)  DEFAULT 'general',
    required_tier    ENUM('free','premium','premium_plus','admin') DEFAULT 'free',
    required_points  INT(11)      DEFAULT 0,
    sort_order       INT(11)      DEFAULT 0,
    is_active        TINYINT(1)   DEFAULT 1
) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

-- Table messages automatiques de dérapage
CREATE TABLE IF NOT EXISTS chat_auto_messages (
    id         INT(11)      NOT NULL AUTO_INCREMENT PRIMARY KEY,
    message    VARCHAR(255) NOT NULL,
    is_active  TINYINT(1)  DEFAULT 1,
    created_at TIMESTAMP   DEFAULT CURRENT_TIMESTAMP
) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

-- Messages automatiques sans emojis
INSERT INTO chat_auto_messages (message) VALUES
('Tu dérapes ! Reviens-nous.'),
('Attention ! Ce type de message n''est pas bienvenu ici.'),
('On garde ca respectueux dans ce cercle.'),
('Message signalé. L''Oracle te surveille.'),
('Ce message a été signalé. Reste dans les limites du fair-play !'),
('Parfois il vaut mieux se taire. L''Oracle a parlé.');

-- Table signalements chat
CREATE TABLE IF NOT EXISTS chat_reports (
    id          INT(11)  NOT NULL AUTO_INCREMENT PRIMARY KEY,
    message_id  INT(11)  NOT NULL,
    reporter_id INT(11)  DEFAULT NULL,
    created_at  TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    UNIQUE KEY unique_report (message_id, reporter_id)
);

-- Colonnes supplémentaires pour messages
ALTER TABLE messages ADD COLUMN IF NOT EXISTS icon_emoji  VARCHAR(10)  DEFAULT NULL;
ALTER TABLE messages ADD COLUMN IF NOT EXISTS text_color  VARCHAR(7)   DEFAULT NULL;
ALTER TABLE messages ADD COLUMN IF NOT EXISTS photo_path  VARCHAR(255) DEFAULT NULL;
ALTER TABLE messages ADD COLUMN IF NOT EXISTS is_flagged  TINYINT(1)   DEFAULT 0;
ALTER TABLE messages ADD COLUMN IF NOT EXISTS flag_count  INT(11)      DEFAULT 0;

-- Convertir messages en utf8mb4
ALTER TABLE messages CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
