diff --git a/plugins/calendar/calendar.php b/plugins/calendar/calendar.php index caead9b3..dd33a0ba 100644 --- a/plugins/calendar/calendar.php +++ b/plugins/calendar/calendar.php @@ -1157,6 +1157,7 @@ class calendar extends rcube_plugin } return array( + '_id' => $event['calendar'] . ':' . $event['id'], // unique identifier for fullcalendar 'start' => $this->adjust_timezone($event['start'])->format('c'), 'end' => $this->adjust_timezone($event['end'])->format('c'), 'title' => strval($event['title']), diff --git a/plugins/calendar/calendar_ui.js b/plugins/calendar/calendar_ui.js index 07c3a0c7..4a54ca54 100644 --- a/plugins/calendar/calendar_ui.js +++ b/plugins/calendar/calendar_ui.js @@ -2006,7 +2006,7 @@ function rcube_calendar_ui(settings) var event = p.update; event.temp = false; event.editable = source.editable; - var existing = fc.fullCalendar('clientEvents', function(e){ return (e.id == event.id && e.calendar == event.calendar); }); + var existing = fc.fullCalendar('clientEvents', event._id); if (existing.length) { $.extend(existing[0], event); fc.fullCalendar('updateEvent', existing[0]);