Prevent Event Overlap

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, per resource or globally on the instance.

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

If set to false, the resource and 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.

Get started with this example

Demo

Control the interaction globally (all events/resources)
Events cannot overlap eventOverlap=false
html<mbsc-eventcalendar
    [view]="{ timeline: { type: 'day' }}"
    [data]="myData"
    [resources]="myResources"
    [dragToMove]="true"
    [dragToResize]="true"
    [eventOverlap]="true"
    [clickToCreate]="true"
    [dragToCreate]="true"
>
</mbsc-eventcalendar>
ts// relevant events
const myData = [{
    start: '2026-10-23T16:00',
    end: '2026-10-23T18:00',
    title: 'Event 2 (no event overlap)',
    overlap: false,
    resource: 1
},{
    start: '2026-10-23T08:00',
    end: '2026-10-23T10:00',
    title: 'Event 4 (no event overlap)',
    overlap: false,
    resource: 2
}];
// relevant resource
const myResources = [{
    id: 4,
    name: 'Resource 4 - no event overlap allowed',
    eventOverlap: false
}];
Prevent double booking on the Timeline — block overlaps per event, per resource, or globally, and show a toast on conflict.

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.