<div id="{{ name|default('full_calendar') }}"></div><script>document.addEventListener('DOMContentLoaded', function () {if (typeof FullCalendar === 'undefined') {console.error("Error: FullCalendar no está definido. Verifica que los archivos JS están correctamente cargados.");return;}var calendarEl = document.getElementById('{{ name|default('full_calendar') }}');var initialDate = null;{% if positionOnFirstEvent is defined and positionOnFirstEvent and events is not empty %}var eventsInitialDate = JSON.parse('{{ events|raw }}');initialDate = eventsInitialDate[0].start;{% endif %}if (calendarEl) {var calendar = new FullCalendar.Calendar(calendarEl, {initialView: 'dayGridMonth',locale: 'es',events: {{ events|raw }},initialDate: initialDate,dayCellDidMount: function(info) {let events = calendar.getEvents().filter(event => event.startStr === info.date.toISOString().split('T')[0]);let dayNumberEl = info.el.querySelector('.fc-daygrid-day-number');if (events.length > 0) {dayNumberEl.classList.add('event-day');}}});calendar.render();} else {console.error("Error: No se encontró el contenedor #full_calendar en el DOM.");}});</script>