|
function OnBeforeAppointmentCreate(args) { // this function will be called while saving an app
var schObj = $("#Schedule1").ejSchedule('instance');
if (ej.isNullOrUndefined(args.appointment[0]))
obj = args.appointment;
else
obj = args.appointment[0];
var predicate = ej.Predicate(schObj._appointmentSettings["startTime"], ej.FilterOperators.lessThanOrEqual, new Date(obj.StartTime)).and(schObj._appointmentSettings["endTime"], ej.FilterOperators.greaterThanOrEqual, new Date(new Date(obj.EndTime)));
// if newly rendered appointment range has an another appointment it will be retrieved here
var newAppList = new ej.DataManager(schObj._processed).executeLocal(new ej.Query().where(predicate));
if (newAppList.length > 0) // 0 indicates no more 1 app should render in same range
args.cancel = true;
} |