Чтобы настроить содержимое события и определить, какие данные отображать, используйте шаблоны. Разные режимы просмотра используют различные шаблоны, и чтобы узнать, какие именно применяются в конкретном режиме, обратитесь к статье Форматирование меток, дат, стилей.
В этой статье рассматривается, как изменять шаблоны для наиболее часто используемых представлений — Дневной вид и Week View.
В этих представлениях для настройки текста события используются два шаблона:
Также существует шаблон event_bar_text, который задаёт текст для событий, продолжающихся несколько дней. Этот шаблон используется в Месячный вид и Вид "Timeline".
Рекомендуется переопределять шаблоны внутри функции-обработчика для события onTemplatesReady, чтобы ваш шаблон не был перезаписан стандартным.
Заголовок события формируется с помощью шаблона event_header.
// стандартное определение
scheduler.templates.event_header = function(start,end,ev){
return scheduler.templates.event_date(start)+" - "+
scheduler.templates.event_date(end);
};
Предположим, что в ваших объектах данных есть булево свойство important, которое определяет важность события. Вы хотите выделить важные события, добавив красную иконку с галочкой и выделив длительность события оранжевым цветом.
Вот пример кода для реализации этого:
scheduler.attachEvent("onTemplatesReady", function(){
scheduler.templates.event_header = function(start,end,ev){
if (event.important == true){
return ("<img src='red_check.png'/> <b style='color:#F08080'>"+
scheduler.templates.event_date(start)+" - "+
} else {
return(scheduler.templates.event_date(start)+" - "+
scheduler.templates.event_date(end))
}
};
});
...
scheduler.init('scheduler_here', new Date(2019, 6, 5), "week");
Текст события задаётся с помощью шаблона event_text.
// стандартное определение
scheduler.templates.event_text = function(start,end,ev){
return ev.text;
};
Допустим, в ваших объектах данных есть дополнительное свойство location, указывающее место проведения события. Вы хотите отображать место проведения вместе с текстом события внутри блока события.
Вот как это можно реализовать:
scheduler.attachEvent("onTemplatesReady", function(){
scheduler.templates.event_text=function(start,end,event){
return "<b>" + event.text + "</b><br><i>" + event.location + "</i>";
}
});
...
scheduler.init('scheduler_here', new Date(2019, 6, 5), "week");
Наверх