<?php

header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Methods: POST");
header("Access-Control-Allow-Headers: Content-Type");

$documentRoot = realpath(__DIR__ . '/../..');
$file = $documentRoot . "/php/api/log_pdf.json";

// Especificar la ruta del archivo JSON donde se guardarán los datos
//$file = '/var/www/vhosts/cst.cat/subdomains/pefir/httpdocs/php/api/log_pdf.json';

// Leer la entrada JSON enviada desde el cliente
$inputJSON = file_get_contents('php://input');
$inputData = json_decode($inputJSON, true);

// Comprobar si los datos se decodificaron correctamente
if ($inputData !== null) {
    // Leer el contenido existente del archivo JSON
    $currentData = file_exists($file) ? json_decode(file_get_contents($file), true) : [];

    // Añadir los nuevos datos a la lista existente
    $currentData[] = $inputData;

    // Purgar registros con más de 12 meses
    $corte = (time() - 60 * 60 * 24 * 365) * 1000;
    $currentData = array_values(array_filter($currentData, fn($l) => isset($l['uniqueNumber']) && $l['uniqueNumber'] >= $corte));

    // Guardar el contenido actualizado en el archivo JSON
    file_put_contents($file, json_encode($currentData, JSON_PRETTY_PRINT));

    // Responder al cliente con un mensaje de éxito
    echo json_encode(['status' => 'success', 'message' => 'Datos guardados correctamente.']);
} else {
    // Responder al cliente con un mensaje de error
    echo json_encode(['status' => 'error', 'message' => 'Datos no válidos.']);
}
?>
