"""
Script pour voir les tables contenant des chemins d'images à migrer
"""
import mysql.connector
from python.db_config import DB_CONFIG

def check_image_paths():
    conn = mysql.connector.connect(**DB_CONFIG)
    cursor = conn.cursor(dictionary=True)
    
    print("="*70)
    print("RECHERCHE DES CHEMINS D'IMAGES A MIGRER")
    print("="*70)
    print()
    
    # 1. Table avatars - file_path
    print("1. TABLE avatars - Colonne file_path")
    print("-"*70)
    cursor.execute("""
        SELECT category, file_path, COUNT(*) as count
        FROM avatars
        GROUP BY category, file_path
        ORDER BY category, file_path
        LIMIT 20
    """)
    for row in cursor.fetchall():
        print(f"  {row['category']:15} {row['file_path']:50} ({row['count']})")
    print()
    
    # 2. Table weekly_rewards - avatar_path
    cursor.execute("SHOW TABLES LIKE 'weekly_rewards'")
    if cursor.fetchone():
        print("2. TABLE weekly_rewards")
        print("-"*70)
        cursor.execute("DESCRIBE weekly_rewards")
        cols = cursor.fetchall()
        print("Colonnes:")
        for col in cols:
            print(f"  - {col['Field']:20} {col['Type']}")
        
        cursor.execute("SELECT * FROM weekly_rewards LIMIT 5")
        rows = cursor.fetchall()
        print(f"\nExemples ({len(rows)} lignes):")
        for row in rows:
            print(f"  {row}")
        print()
    
    # 3. Table ball_skin_packs - image_path
    cursor.execute("SHOW TABLES LIKE 'ball_skin_packs'")
    if cursor.fetchone():
        print("3. TABLE ball_skin_packs")
        print("-"*70)
        cursor.execute("DESCRIBE ball_skin_packs")
        cols = cursor.fetchall()
        print("Colonnes:")
        for col in cols:
            print(f"  - {col['Field']:20} {col['Type']}")
        
        cursor.execute("SELECT * FROM ball_skin_packs LIMIT 5")
        rows = cursor.fetchall()
        print(f"\nExemples ({len(rows)} lignes):")
        for row in rows:
            print(f"  {row}")
        print()
    
    # 4. Autres tables avec des colonnes contenant "path" ou "image"
    print("4. TABLES AVEC COLONNES path/image")
    print("-"*70)
    cursor.execute("""
        SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE
        FROM INFORMATION_SCHEMA.COLUMNS
        WHERE TABLE_SCHEMA = %s
        AND (COLUMN_NAME LIKE '%path%' OR COLUMN_NAME LIKE '%image%')
        ORDER BY TABLE_NAME, COLUMN_NAME
    """, [DB_CONFIG['database']])
    
    for row in cursor.fetchall():
        print(f"  {row['TABLE_NAME']:30} {row['COLUMN_NAME']:30} {row['DATA_TYPE']}")
    print()
    
    cursor.close()
    conn.close()

if __name__ == "__main__":
    try:
        check_image_paths()
    except Exception as e:
        print(f"Erreur: {e}")
        import traceback
        traceback.print_exc()
