<?php
/**
 * CRON_CLEANUP.PHP
 * Limpieza automática de datos antiguos para mantener el VPS rápido.
 * Se recomienda ejecutar una vez al día (ej: medianoche).
 */

require_once __DIR__ . '/../config.php';

// Definir cuántos días de historial queremos conservar (32 días)
$daysToKeep = 32;

try {
    $pdo = getDBConnection();
    if (!$pdo) {
        die("Error: No se pudo conectar a la base de datos.\n");
    }

    echo "Iniciando limpieza de datos más antiguos a $daysToKeep días...\n";

    // Eliminar registros de la tabla mediciones
    $stmt = $pdo->prepare("DELETE FROM mediciones WHERE fecha < DATE_SUB(NOW(), INTERVAL :days DAY)");
    $stmt->execute([':days' => $daysToKeep]);
    
    $deletedRows = $stmt->rowCount();

    // Optimizar la tabla para recuperar espacio en disco (opcional pero recomendado)
    if ($deletedRows > 0) {
        $pdo->exec("OPTIMIZE TABLE mediciones");
        echo "Limpieza completada. Se eliminaron $deletedRows registros.\n";
    } else {
        echo "No se encontraron registros antiguos para eliminar.\n";
    }

} catch (Exception $e) {
    error_log("Error en CRON Cleanup: " . $e->getMessage());
    echo "ERROR: " . $e->getMessage() . "\n";
}
