-- Migration 01 — inscription libre + validation manuelle par l'administrateur
-- À passer après sql/schema_app.sql


ALTER TABLE app_user
    -- 'actif' par défaut pour ne pas casser les comptes déjà créés à la main.
    -- Les inscriptions publiques arrivent en 'en_attente'.
    ADD COLUMN status ENUM('en_attente','actif','refuse') NOT NULL DEFAULT 'actif' AFTER role,
    ADD COLUMN company_declared VARCHAR(160) DEFAULT NULL AFTER full_name,
    ADD COLUMN phone            VARCHAR(32)  DEFAULT NULL AFTER company_declared,
    ADD COLUMN signup_message   TEXT         DEFAULT NULL AFTER phone,
    ADD COLUMN signup_ip        VARBINARY(16) DEFAULT NULL,
    ADD COLUMN reviewed_at      DATETIME     DEFAULT NULL,
    ADD COLUMN reviewed_by      INT UNSIGNED DEFAULT NULL,
    ADD COLUMN reject_reason    VARCHAR(255) DEFAULT NULL,
    ADD KEY idx_user_status (status);

-- Les comptes existants restent actifs et rattachés.
UPDATE app_user SET status = 'actif' WHERE is_active = 1;
