Встраивание в календарь
Плейсмент CALENDAR_GRIDVIEW позволяет встроиться в календарный вид (вверху - там где день/неделя/месяц/список).
Пример
Как можно забиндить (привязать) приложение к календарной встройке::
BX24.callMethod('placement.bind', { PLACEMENT:'CALENDAR_GRIDVIEW', HANDLER: 'http://svd.org/svdapp.php', TITLE: 'Custom tab' }, (result) => {console.log(result)});
Если в самом приложении вызвать
echo "<pre>"; print_r($_REQUEST); echo "</pre>";
то увидим, что туда приходят определенные параметры. В частности:
[PLACEMENT_OPTIONS] => { "viewRangeFrom":"2018-09-30", "viewRangeTo":"2018-11-04" }
Также при работе во встройке есть определенный интерфейс: методы и события.
Методы (js методы)
Метод | Описание |
---|---|
getEvents |
Получение событий
var dateFrom = new Date(); var dateTo = new Date(dateFrom.getTime() + 86400 * 30); dateFrom.setHours(0, 0, 0, 0); dateTo.setHours(0, 0, 0, 0); BX24.placement.call('getEvents', { dateFrom: dateFrom, dateTo: dateTo }, function(events) { console.log('getEvents responce:'); console.dir(events); } ); |
viewEvent |
Просмотр события (открытие карточки просмотра)
BX24.placement.call('viewEvent', { id: "1431170", - id события dateFrom: "11.07.2018" - дата события (не обязательно, но важно для регулярных) }, function(){} ); |
addEvent |
Добавление нового события (открытие карточки)
BX24.placement.call('addEvent', function(){}); |
editEvent |
Редактирование события (открытие карточки)
BX24.placement.call('editEvent', {uid: "1431171|19.07.2018"}, function(){}); |
deleteEvent |
Удаление события
BX24.placement.call('deleteEvent', { id: "1431169" }, function(){} ); |
События, которые можно отслеживать в плейсменте
События | Описание |
---|---|
Calendar.customView:refreshEntries | Обновление событий. |
Calendar.customView:decreaseViewRangeDate | Нажимаем на стрелочку назад, т.е. отматываем календарь на предыдущие даты (на какие точно - может решать автор плейсмента). |
Calendar.customView:increaseViewRangeDate | Нажимаем на стрелочку вперед, т.е. отматываем календарь на следующие даты (на какие точно - может решать автор плейсмента). |
Calendar.customView:adjustToDate | Переход к конкретной дате (она передается в параметре). |
Дополнительно
Встраивание приложений (REST).
Встраивание приложений в курсе Маркетплейс Битрикс24.
Встраивание приложений в виде пользовательских типов полей в учебном курсе.
Добавление своих методов REST API в учебном курсе.
© «Битрикс», 2001-2024, «1С-Битрикс», 2024