Double Booking Prevention

Sometimes it is necessary to guarantee that events don't overlap - eg. when scheduling workorders, interacting with a work calendar. You can reject the updates or additions and let the user know about it.

The event overlap can be turned on/off on an event basis or globally on the instance.

  • On an event basis - by setting the overlap property to false the specified event cannot overlap.
  • Globally on the instance - by setting eventOverlap option to false overlap is disbled globally.

If set to false, the event settings have precedence over the global calendar eventOverlap option.

Give feedback to the user - optionally, a toast can be displayed to explain why an event cannot be dropped, moved or created. For this we can use the onEventCreateFailed and onEventUpdateFailed lifecycle events.

Looking to implement time off or block out ranges?  Learn how to add lunch breaks, working hours and disable weekends →
Download and try example

Demo

Control the interaction globally (all events)
Events cannot overlap eventOverlap=false
mobiscroll.eventcalendar('#calendar', {
    view: {calendar: { type: 'month', labels: 'all' }},
    // relevant events
    data: [{
        start: '2026-10-21T00:00',
        end: '2026-10-23T00:00',
        title: 'Event 2 (no event overlap)',
        overlap: false
    }, {
        start: '2026-10-26T00:00',
        end: '2026-10-28T00:00',
        title: 'Event 4 (no event overlap)',
        overlap: false
    }],
    dragToMove: true,
    dragToResize: true,
    clickToCreate: true,
    dragToCreate: true,
    eventOverlap: true,
    exclusiveEndDates: true,
});
Prevent overlapping events in a event calendar — block double bookings per event or across all events with in-calendar conflict alerts.

Duplicate Session

You have signed in on a different machine. To keep everything in sync, you have been signed out of this session.

If you need to invite team members, manage seats and accounts you can do it from the licenses page.

Duplicate Session

We noticed you are logged in on a different machine and have closed your old session.

If you need to invite team members, manage seats and accounts you can do it from the licenses page.