<?php
// =========================================================================
// sieka/llm/api/clear_cache_otomatis.php - ROBOT TUKANG SAPU (CRON JOB)
// Developer: Sikawarsito, S.Kom
// =========================================================================

// Proteksi Keamanan: Hanya eksekusi yang membawa token benar yang diizinkan
$secret_token = "sika-cron-12345";
if (!isset($_GET['token']) || $_GET['token'] !== $secret_token) {
    http_response_code(403);
    die("Akses Ditolak. Token keamanan tidak valid.");
}

// Mundur 2 langkah karena file ini ada di sieka/llm/api/
include '../../config/database.php';

try {
    // 1. Cek pengaturan jadwal dari database
    $q_setting = @mysqli_query($conn, "SELECT cache_auto_clear FROM settings WHERE id = 1");
    
    if ($q_setting && mysqli_num_rows($q_setting) > 0) {
        $setting_data = mysqli_fetch_assoc($q_setting);
        $jam_kadaluarsa = (int)$setting_data['cache_auto_clear'];
        
        // 2. Jika jadwal tidak dinonaktifkan (lebih dari 0)
        if ($jam_kadaluarsa > 0) {
            $query = "DELETE FROM cache_llm WHERE last_used < NOW() - INTERVAL $jam_kadaluarsa HOUR";
            $eksekusi = @mysqli_query($conn, $query);
            
            if ($eksekusi) {
                $jumlah_terhapus = mysqli_affected_rows($conn);
                echo "SUKSES: Cron Job berjalan. $jumlah_terhapus data cache basi berhasil dibersihkan.";
            } else {
                echo "GAGAL: Terjadi kesalahan pada query database.";
            }
        } else {
            echo "INFO: Fitur Auto-Clear sedang dinonaktifkan dari panel Admin.";
        }
    } else {
        echo "GAGAL: Tidak dapat membaca tabel settings.";
    }
} catch (Exception $e) {
    echo "ERROR: " . $e->getMessage();
}
?>