#!/usr/bin/env python3
"""Script pour vérifier l'état du bonus d'un utilisateur par email"""

import mysql.connector
from datetime import datetime
import sys
from python.db_config import DB_CONFIG

# Configuration de la connexion à la base de données
db_config = DB_CONFIG

def check_user_bonus(email):
    try:
        conn = mysql.connector.connect(**db_config)
        cursor = conn.cursor(dictionary=True)
        
        # Trouver l'utilisateur
        cursor.execute("SELECT id, email FROM users WHERE email = %s", (email,))
        user = cursor.fetchone()
        
        if not user:
            print(f"❌ Aucun utilisateur trouvé avec l'email: {email}")
            return
        
        user_id = user['id']
        print(f"👤 Utilisateur: {user['email']} - ID: {user_id}")
        print()
        
        # Vérifier le bonus quotidien
        cursor.execute("""
            SELECT * FROM daily_bonus WHERE user_id = %s
        """, (user_id,))
        bonus = cursor.fetchone()
        
        print("📊 État du bonus quotidien:")
        if bonus:
            print(f"   Dernière réclamation: {bonus['last_claim_date']}")
            print(f"   Jours consécutifs: {bonus['consecutive_days']}")
            print(f"   Total hints gagnés: {bonus['total_hints_earned']}")
            print(f"   Total solutions gagnées: {bonus['total_solutions_earned']}")
        else:
            print("   ⚠️  Aucune entrée de bonus (normal pour un nouveau compte)")
        print()
        
        # Vérifier le wallet
        cursor.execute("SELECT * FROM wallets WHERE user_id = %s", (user_id,))
        wallet = cursor.fetchone()
        
        print("💰 Wallet actuel:")
        if wallet:
            print(f"   Points: {wallet['points']}")
            print(f"   Hints: {wallet['hints']}")
            print(f"   Undos: {wallet['undos']}")
            print(f"   Replays: {wallet['replays']}")
        else:
            print("   ⚠️  Aucun wallet trouvé")
        
        cursor.close()
        conn.close()
        
    except mysql.connector.Error as err:
        print(f"❌ Erreur de connexion à la base de données: {err}")

if __name__ == "__main__":
    email = sys.argv[1] if len(sys.argv) > 1 else "bruno@taaazzz.be"
    check_user_bonus(email)
