Sélection de l'événement dans la vue semaine
This commit is contained in:
@@ -149,6 +149,7 @@ class _CalendarPageState extends State<CalendarPage> {
|
||||
onEventSelected: (event) {
|
||||
setState(() {
|
||||
_selectedEvent = event;
|
||||
_selectedDay = event.startDateTime;
|
||||
});
|
||||
},
|
||||
onSwitchToMonth: () {
|
||||
@@ -156,6 +157,33 @@ class _CalendarPageState extends State<CalendarPage> {
|
||||
_calendarFormat = CalendarFormat.month;
|
||||
});
|
||||
},
|
||||
onDaySelected: (selectedDay) {
|
||||
final eventsForDay = eventProvider.events
|
||||
.where((e) =>
|
||||
e.startDateTime.year == selectedDay.year &&
|
||||
e.startDateTime.month == selectedDay.month &&
|
||||
e.startDateTime.day == selectedDay.day)
|
||||
.toList();
|
||||
eventsForDay
|
||||
.sort((a, b) => a.startDateTime.compareTo(b.startDateTime));
|
||||
setState(() {
|
||||
_selectedDay = selectedDay;
|
||||
if (eventsForDay.isNotEmpty) {
|
||||
_selectedEvent = eventsForDay.first;
|
||||
} else {
|
||||
_selectedEvent = null;
|
||||
}
|
||||
});
|
||||
if (eventsForDay.isEmpty) {
|
||||
ScaffoldMessenger.of(context).showSnackBar(
|
||||
const SnackBar(
|
||||
content: Text("Aucun événement ne démarre à cette date."),
|
||||
duration: Duration(seconds: 2),
|
||||
),
|
||||
);
|
||||
}
|
||||
},
|
||||
selectedEvent: _selectedEvent,
|
||||
);
|
||||
} else {
|
||||
return MonthView(
|
||||
|
||||
Reference in New Issue
Block a user