add_shortcode('agenda_auto', function() {
    $dir = '/var/www/html/wp-content/uploads/';
    $files = glob($dir . "*.ics");

    if (!$files) return "Aucun fichier calendrier trouvé.";

    // Trouver le fichier le plus récent
    usort($files, function($a, $b) {
        return filemtime($b) - filemtime($a);
    });

    // LIRE LE CONTENU DU FICHIER
    $ics_content = file_get_contents($files[0]);
    
    // Nettoyage pour éviter les erreurs JS (on enlève les retours à la ligne bizarres)
    $ics_content_safe = str_replace(["\r", "\n"], "\\n", addslashes($ics_content));

    return '
    <script src="https://cdn.jsdelivr.net/npm/fullcalendar@6.1.8/index.global.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/@fullcalendar/icalendar@6.1.8/index.global.min.js"></script>
    
    <div id="calendar-auto" style="height: 600px; background: white; padding: 10px; border: 1px solid #ddd; color: black;"></div>
    
    <script>
      document.addEventListener("DOMContentLoaded", function() {
        var calendarEl = document.getElementById("calendar-auto");
        var calendar = new FullCalendar.Calendar(calendarEl, {
          initialView: "dayGridMonth",
          locale: "fr",
          headerToolbar: { 
            left: "prev,next today", 
            center: "title", 
            right: "dayGridMonth,listMonth" 
          },
          // On injecte le contenu directement ici
          events: {
            ics: "' . $ics_content_safe . '",
            format: "ics"
          },
          eventClick: function(info) {
            alert("Événement : " + info.event.title);
          }
        });
        calendar.render();
      });
    </script>';
});