Перейти к основному содержимому

addMarkedTimespan

Description

Отмечает даты, а с определёнными настройками может блокировать их (позволяет применять кастомные стили к границам)

addMarkedTimespan: (config: any) => number

Parameters

  • config - (required) object - объект конфигурации, задающий временной интервал для отметки или блокировки

Returns

  • id - (number) - ID добавленного временного интервала

Example

//отмечает даты
scheduler.addMarkedTimespan({
days: 5, // отмечает каждую пятницу
zones: "fullday", // отмечает весь день
css: "gray_section" // применяется CSS класс
});
scheduler.updateView();

//отмечает и блокирует даты
scheduler.addMarkedTimespan({
days: 5,
zones: "fullday",
css: "gray_section",
type: "dhx_time_block" //фиксированное значение
});
scheduler.updateView();

Details

Этот метод доступен с версии 3.5.

примечание

Метод требует включения плагина limit.

примечание

Учтите, что отметка (блокировка) не применяется сразу после вызова метода. Необходимо вызвать updateView для применения изменений.


Свойства объекта конфигурации

Объект конфигурации может содержать следующие свойства:

Свойство

Описание

start_date объект Date, определяющий начало ограничения
//запрещает создание событий с 3 мая 2012 по 'end_date' 
start_date:new Date(2012,4,3)
end_date объект Date, определяющий конец ограничения
//запрещает создание событий с 'start_date' 
// до 3 сентября 2012
end_date:new Date(2012,8,3)
days дни, которые будут ограничены
days:[0, 2, 6] //ограничивает воскресенье, вторник и субботу
days:"fullweek" //ограничивает всю неделю
days:new Date(2012,6,1) //блокирует 1 июля 2012
zonesвременные интервалы (в минутах), которые будут ограничены
//два блока ограничения: 04:00-08:00 и 12:00-15:00
zones:[4*60,8*60,12*60,15*60]
zones:"fullday" //ограничивает весь день
cssимя CSS класса для применения
css:"gray" //рисует DIV с применённым классом 'gray'
htmlHTML содержимое для отображения в отмеченном диапазоне
//рисует DIV с этим текстом поверх отмеченного диапазона  
html:"<b>Blocked</b>"
typeопределяет тип временного интервала. Значение 'dhx_time_block' применяет блокировку. Любое другое значение просто отмечает интервал без блокировки.
type: "dhx_time_block" //интервал будет отмечен и заблокирован  
invert_zonesуказывает, нужно ли инвертировать временные зоны (указанные в 'zones'), по умолчанию false
//результат: два блока ограничения: 00:00-08:00 и 17:00-24:00
zones: [8*60, 17*60], invert_zones: true
//результат: два блока ограничения: 00:00-08:00 и 17:00-24:00
zones: [0, 8*60, 17*60, 24*60], invert_zones: false
sectionsограничивает блокировку только для определённых элементов в конкретных представлениях.
Даты будут заблокированы только в указанных view.
//блокирует даты только для элемента с id=5 в Unit view 
//и для элементов с id 2 и 3 в Timeline view
sections: { unit: 5, timeline: [2,3]}

Допустимые комбинации свойств config

примечание

Учтите, что days и zones должны использоваться вместе, как и start_date и end_date парой для определения интервала блокировки. Эти пары нельзя смешивать иначе. Например, нельзя комбинировать zones с start_date или использовать days вместе с start_date и end_date одновременно.

Поэтому существует две валидные комбинации свойств:

Набор свойств

Пример

  • days
  • zones
  • invert_zones
  • css
  • html
  • type
  • sections
var config ={
days: 1,
zones: [9*60, 15*60],
css: "cssClassName",
sections: {
unit: 5
}
}

  • start_date
  • end_date
  • css
  • html
  • type
  • sections
var config ={
start_date: new Date(2013,7,13),
end_date: new Date(2013,7,14),
css: "cssClassName",
sections: {
unit: 5
}
}

Сравнение markTimespan() и addMarkedTimespan()

addMarkedTimespan

markTimespan

требуется вызвать updateView для отрисовки DIV для временного интервала

автоматически рисует DIV для временного интервала

временной интервал(ы) сохраняются навсегда

временной интервал(ы) скрываются сразу после любого внутреннего обновления в приложении

возвращает ID настроенного временного интервала(ов)

возвращает DIV элемент или массив DIV элементов

Need help?
Got a question about the documentation? Reach out to our technical support team for help and guidance. For custom component solutions, visit the Services page.