-- Script de migration pour sécuriser les images payantes
-- Les images sont maintenant servies via l'API avec vérification de possession

-- ============================================================
-- MISE À JOUR DES AVATARS
-- ============================================================

-- Avatars animaux (1-380) : /avatars/380_animal_avatard/X.svg -> /api/avatars/X/image
UPDATE avatar_pack_images
SET image_path = CONCAT('/api/avatars/', 
    SUBSTRING_INDEX(SUBSTRING_INDEX(image_path, '/', -1), '.', 1), 
    '/image')
WHERE image_path LIKE '/avatars/380_animal_avatard/%';

-- Avatars cool : /avatars/avatard_cool/... -> /api/avatars/cool_X/image  
UPDATE avatar_pack_images
SET image_path = CONCAT('/api/avatars/cool_',
    SUBSTRING_INDEX(SUBSTRING_INDEX(image_path, '/', -1), '.', 1),
    '/image')
WHERE image_path LIKE '/avatars/avatard_cool/%';

-- ============================================================
-- MISE À JOUR DES BILLES (déjà protégées mais vérification)
-- ============================================================

-- Les billes utilisent déjà /api/ball-skins/:skinId/image
-- Vérification que les chemins sont corrects
SELECT 
    COUNT(*) as total_skins,
    SUM(CASE WHEN image_path LIKE '/api/ball-skins/%' THEN 1 ELSE 0 END) as secured_skins,
    SUM(CASE WHEN image_path LIKE '/images/billes/%' THEN 1 ELSE 0 END) as public_skins
FROM ball_skin_packs;

-- Si des billes ont encore des chemins publics, les corriger
-- (normalement déjà fait dans les migrations précédentes)

-- ============================================================
-- VÉRIFICATION
-- ============================================================

-- Vérifier qu'il ne reste plus de chemins publics pour les avatars payants
SELECT 
    'Avatars avec chemins publics' as type,
    COUNT(*) as count
FROM avatar_pack_images
WHERE image_path LIKE '/avatars/380_animal_avatard/%'
   OR image_path LIKE '/avatars/avatard_cool/%'
UNION ALL
SELECT 
    'Avatars avec API sécurisée' as type,
    COUNT(*) as count
FROM avatar_pack_images
WHERE image_path LIKE '/api/avatars/%';

-- Vérifier les avatars de base (doivent rester publics)
SELECT 
    'Avatars de base (publics OK)' as type,
    COUNT(*) as count
FROM avatar_pack_images
WHERE image_path LIKE '/avatars/base/%';
