Bonjour,

D'après la documentation Symfony, pour ajouter les assets pour le bundle FullCalendar avec EasyAdmin on doit :

"Use the configureAssets() method in the dashboard and/or the CRUD controllers to add your own CSS and JavaScript files"

J'ai donc rajouté les assets de FullCalendar comme suit :

class DashboardController extends AbstractDashboardController
{

//... 
   public function configureAssets(): Assets
    {
        return parent::configureAssets()
            ->addWebpackEncoreEntry('admin')
            ->addCssFile('https://cdn.jsdelivr.net/npm/fullcalendar@5.11.3/main.min.css')
            ->addJsFile('https://cdn.jsdelivr.net/npm/fullcalendar@5.11.3/main.min.js');

    }

//...

 #[Route('/admin', name: 'admin')]
    public function index(): Response
    {
        return $this->render('admin/index.html.twig');
    }

}

admin/index.html.twig :

// ...
{% block main %}
    <div id="booking"></div>

{% endblock %}

{% block javascripts %}

    <script>
        document.addEventListener('DOMContentLoaded', function () {
var calendarEl = document.getElementById('booking');
var calendar = new FullCalendar.Calendar(calendarEl, {
initialView: 'dayGridMonth',
locale: 'fr',
buttonText: {
today: 'Aujourd\'hui',
month: 'Mois',
week: 'Semaine'
},
timeZone: 'Europe/Paris',
headerToolbar: {
start: 'prev,next today',
center: 'title',
end: 'dayGridMonth,timeGridWeek'
},
events: {{ data|raw }},
navLinks: true

});
calendar.render();
});
    </script>

{% endblock %}

Je souhaite que le calendrier s'affiche dans le div ayant pour id booking.

Hélas rien ne s'affiche, malgré mes recherches je ne trouve pas l'explication.

Merci pour votre aide !

Aucune réponse