let employeeDropdown = {
align: 'Center', cssClass: 'e-schedule-employee-dropdown-parent'
};
args.items.push(employeeDropdown);
let employeeDropdownParentDiv = _scheduler.element.querySelector('.e-schedule-employee-dropdown-parent');
employeeDropdownParentDiv.appendChild(new ej.base.createElement('div', {
className: 'e-schedule-employee-dropdown'
}));
let employeeDropdownDiv = _scheduler.element.querySelector('.e-schedule-employee-dropdown');
resourcesDropDownListObject.appendTo(employeeDropdownDiv);
let _resourcesData = _resources;
if (_initialEmployee !== "allStaff") {
_resourcesData = _resources.filter(function (resource) {return resource.id === _initialEmployee; });
}
resources: [{
field: 'EmployeeId',
title: 'Employee',
name: _resourcesGroupId,
allowMultiple: false,
dataSource: _resourcesData,
textField: 'name',
idField: 'id',
colorField: 'calendarColor'
}],
//resourcesSelectObject - all resources + AllStaff item//resourcesObject - all resources ( Resource1, Resource2, ... )let resourcesDropDownListObject = new ej.dropdowns.DropDownList({
dataSource: resourcesSelectObject,
fields: {value: 'id', text: 'name'},
value: _initialEmployee,
change: function (args) {
_scheduler.removeResource(resourcesObject, _resourcesGroupId);
if (args.value === "allStaff") {
for (let i = 0; i < resourcesObject.length; i++) {
_scheduler.addResource(resourcesObject[i], _resourcesGroupId);
}
_scheduler.currentView = "Day";
return;
}
let resourceData = resourcesObject.filter(function (resource) {return resource.id === args.value; });
_scheduler.addResource(resourceData[0], _resourcesGroupId);
}
});
|
onChange(args: MultiSelectChangeEventArgs) {
let resourcePredicate;
for (var a = 0; a < args.value.length; a++) {
var predicate = new Predicate("CalendarId", "equal", args.value[a]);
resourcePredicate = resourcePredicate ? resourcePredicate.or(predicate) : predicate;
}
let resourceQuery = resourcePredicate ? new Query().where(resourcePredicate) : new Query();
this.scheduleObj.resources[0].query = resourceQuery;
} |