<?php

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

header('Content-Type: application/json');

header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");
header("Pragma: no-cache");
header("Expires: 0");

$documentRoot = realpath(__DIR__ . '/../..');
$logFile = $documentRoot . "/php/api/log_encuesta.json";

//$logFile = '/var/www/vhosts/cst.cat/subdomains/pefir/httpdocs/php/api/log_encuesta.json';

// Obtener el número que se usará para eliminar un registro (pasado como parámetro GET)
$uniqueNumber = isset($_GET['uniqueNumber']) ? (int)$_GET['uniqueNumber'] : null;

if ($uniqueNumber === null) {
    echo json_encode(['status' => 'error', 'message' => 'No se proporcionó un número para eliminar.']);
    exit;
}

if (file_exists($logFile)) {
    $jsonContent = file_get_contents($logFile);
    $logs = json_decode($jsonContent, true);

    if ($logs === null) {
        echo json_encode(['status' => 'error', 'message' => 'No se pudo decodificar el archivo de log.']);
        exit;
    }

    // Filtrar y eliminar el registro con el número exacto
    $filteredLogs = array_filter($logs, function($log) use ($uniqueNumber) {
        return isset($log['uniqueNumber']) && (int)$log['uniqueNumber'] !== $uniqueNumber;
    });

    // Guardar los registros filtrados en el archivo de log
    if (file_put_contents($logFile, json_encode(array_values($filteredLogs), JSON_PRETTY_PRINT))) {
        echo json_encode(['status' => 'success', 'message' => 'Registro eliminado.']);
    } else {
        echo json_encode(['status' => 'error', 'message' => 'No se pudo guardar el archivo de log.']);
    }
} else {
    echo json_encode(['status' => 'error', 'message' => 'Archivo de log no encontrado.']);
}
?>
