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

addMarkedTimespan

Description​

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

addMarkedTimespan: (config: any) => number

Parameters​

  • config - (required) object - объект конфигурации временного интервала, который нужно пометить/заблокировать

Returns​

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

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, определяющий начало ограничения
// запрещает создание событий с 2027-05-03 по 'end_date'
start_date: new Date(2027, 4, 3)
end_date объект Date, определяющий конец ограничения
// запрещает создание событий с 'start_date'
// по 2027-09-03
end_date: new Date(2027, 8, 3)
days дни, которые будут ограничены
days: [0, 2, 6] // ограничивает воскресенье, вторник и субботу
days: "fullweek" // ограничивает всю неделю
days: new Date(2027, 6, 1) // блокирует 2027-07-01
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
const config = {
days: 1,
zones: [9 * 60, 15 * 60],
css: "cssClassName",
sections: {
unit: 5
}
};
  • start_date
  • end_date
  • css
  • html
  • type
  • sections
const config = {
start_date: new Date(2027, 7, 13),
end_date: new Date(2027, 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.