_docs-v4/event-dragging-resizing/eventAllow.md
Exact programmatic control over where an event can be dropped.
<div class='spec' markdown='1'> function(dropInfo, draggedEvent) </div>After it has been determined that the eventOverlap and eventConstraint settings will allow the user to drop an event at a given position on the calendar, the eventAllow callback will be called. It will be called for every new potential droppable position as the user is dragging.
If specified, it must return either true or false as to whether the calendar will allow the given event (draggedEvent) to be dropped at the given location (dropInfo).
eventAllow: function(dropInfo, draggedEvent) {
if (draggedEvent.id === '999') {
return dropInfo.start < new Date(2016, 0, 1); // a boolean
}
else {
return true;
}
}
The dropInfo object has the following properties:
In line with the discussion about the Event object, it is important to stress that the end date property is exclusive.
In addition to receiving information about which date the user is attempting to drop the event upon, it will also receive information about the resource:
eventAllow: function(dropInfo, draggedEvent) {
return /^a/.test(dropInfo.resource.id); // starts with 'a' ?
}
Only available with the Scheduler plugin.