<?php
header('Content-Type: application/json; charset=utf-8');
require_once __DIR__ . '/../config.php';
try {
    $db = getDB();
    $mesInicio = '2026-02-01';
    $mesFin    = '2026-02-28';
    
    // Buscar un distribuidor que tenga muchos directos en inversionista
    $stmt = $db->query("SELECT idprom, COUNT(*) as total_directos FROM inversionista WHERE idprom > 0 GROUP BY idprom ORDER BY total_directos DESC LIMIT 5");
    $top = $stmt->fetchAll(PDO::FETCH_ASSOC);
    
    // Tomar el primero y ver sus directos con compras en febrero
    $topId = $top[0]['idprom'];
    $stmt2 = $db->prepare(
        "SELECT i2.id_inver, i2.referencia, SUM(d.puntos) as puntos
         FROM inversionista i2
         JOIN transacciones t ON t.inversionista_id_inver = i2.id_inver
         JOIN depositos d ON d.transacciones_idtransacciones = t.idtransacciones
         WHERE i2.idprom = ?
           AND (t.tipostr_idtipostr = 10 OR t.tipostr_idtipostr = 12)
           AND t.fechat BETWEEN ? AND ?
         GROUP BY i2.id_inver
         HAVING SUM(d.puntos) >= 624
         LIMIT 10"
    );
    $stmt2->execute([$topId, $mesInicio, $mesFin]);
    $directos = $stmt2->fetchAll(PDO::FETCH_ASSOC);
    
    // Info del distribuidor top
    $stmt3 = $db->prepare("SELECT id_inver, referencia, nombre FROM inversionista WHERE id_inver = ?");
    $stmt3->execute([$topId]);
    $info = $stmt3->fetch(PDO::FETCH_ASSOC);
    
    echo json_encode([
        'top_patrocinadores' => $top,
        'patrocinador_info' => $info,
        'directos_calificados_feb2026' => $directos,
        'total_directos_calificados' => count($directos)
    ], JSON_UNESCAPED_UNICODE);
} catch (Throwable $e) {
    echo json_encode(['error' => $e->getMessage()]);
}
