If the problem is that "nothing happens" i.e. the user gets no visual feedback you can use a different approach:
Instead of definining moveDisabled:true on the event set a special custom property with the status value, e.g.
{
start: "2015-10-06T08:00:00",
// ...
tags: { status: "missing-details" }
}
Add onEventMoving handler, detect the status there and display a hint:
dp.onEventMoving = function(args) {
if (args.e.data.tags.status === "missing-details") {
args.allowed = false; // forbid moving
args.left.enabled = false;
args.right.enabled = true;
args.right.html = "You need to define details before moving this event";
}
};
> This also brings up another question - what is the difference between onEventClick and onEventClicked ?
onEventClick is fired before the default action and onEventClicked is fired after the default action. The default action is set using eventClickHandling. The initial value is "Enabled" which does nothing - so in this case there is no difference.
If you set eventClickHandling to a different value (e.g. "Select") you will have a chance to cancel the action on onEventClick using args.preventDefault() if it doesn't meet the rules.
See also:
http://api.daypilot.org/daypilot-scheduler-eventclickhandling/