Как изменить длину (продолжительность) события по умолчанию в dhtmlxScheduler

dhtmlxScheduler, без сомнения, является одним из самых мощных компонентов планировщика с открытым исходным кодом / платным планировщиком, который вы можете найти в Интернете для создания потрясающего планировщика с различными режимами просмотра и даже временной шкалой. Во многих случаях вам нужно будет установить длительность по умолчанию для событий, чтобы ускорить процесс планирования вашего клиента, к счастью, dhtmlxScheduler позволяет это простым способом для общих представлений (и временной шкалы с небольшим фокусом), и мы покажем Вы, как это легко сделать в этой статье.

Режим просмотра недели и дня

Чтобы изменить продолжительность планировщика по умолчанию в представлении дня, недели и месяца, вы сможете изменить продолжительность добавляемого события по умолчанию, установив event_duration собственность config планировщика (Узнайте больше об этой опции здесь):

// 1. Set the auto end date option to true, so the end date will be added
//    automatically and set the "event_duration" to an integer value that
//    is represented in minutes e.g 60 minutes.
scheduler.config.event_duration = 60;
scheduler.config.auto_end_date = true;
// 2. Initialize your scheduler as usual and rest of configuration
scheduler.init('scheduler_here', new Date(2018, 05, 11), "week");

Таким образом, если вы щелкнете один раз в области планировщика, начальная продолжительность события составит 60 минут (1 час).

График

Если вы используете компонент Premium Timeline в dhtmlxScheduler, вы заметите, что предыдущий способ установить время по умолчанию для события не будет работать в этом представлении. К сожалению, нет никаких настроек для настройки такой вещи в режиме временной шкалы, однако вы сможете реализовать небольшой трюк при создании события в планировщике.

Хитрость заключается в том, чтобы установить дату окончания события вручную, имея в качестве точки отсчета дату начала, где вы можете изменить добавление минут / часов и т. Д., Чтобы у вас была желаемая «длительность события по умолчанию» в этом режиме:

scheduler.attachEvent("onEventCreated", function(id, e){
// Check if the selected view is timeline
if(scheduler.getState().mode == "timeline"){
// Retrieve the event object by its temporal id
var event = scheduler.getEvent(id);
// Set the end date of the scheduler. The scheduler date helper allows you to add minutes to a date
// easily, so the duration would depend on the minutes added to the start date
event.end_date = scheduler.date.add(ev.start_date, 60, "minute");
}
});

После щелчка один раз на временной шкале продолжительность события по умолчанию в этом представлении составит 60 минут.

Ссылка на основную публикацию
Adblock
detector