<?php
// admin/buscar_correlativo.php
require '../db.php';

$gestion = isset($_GET['gestion']) ? intval($_GET['gestion']) : date('Y');

// 🔍 EL TRUCO TÉCNICO: "numero_carta + 0" obliga a MySQL a ordenar numéricamente
// Además, filtramos que numero_carta NO sea 'S/N' o nulo para que no rompa el conteo
$sql = "SELECT MAX(numero_carta + 0) AS maximo 
        FROM cartas 
        WHERE gestion_anio = ? 
          AND tipo = 'enviada' 
          AND numero_carta IS NOT NULL 
          AND numero_carta != 'S/N' 
          AND numero_carta REGEXP '^[0-8]';"; // Asegura que empiece con dígitos numéricos

$stmt = $conn->prepare($sql);
$stmt->bind_param("i", $gestion);
$stmt->execute();
$resultado = $stmt->get_result();

$siguiente = 1; // Por si es la primera carta del año

if ($fila = $resultado->fetch_assoc()) {
    if ($fila['maximo'] !== null) {
        $siguiente = intval($fila['maximo']) + 1;
    }
}

// Devolvemos solo el número limpio para que el JavaScript lo capture
echo $siguiente;
?>