Проблема: я использую FullCalendar 4 и хочу создать «календарь встреч», и я использую rrule для выбора свободного места.
Если я добавлю новую встречу на определенную дату, я хочу удалить существующее свободное место и вставить новое событие.
Как: начало: 2019-10-10Т10: 00 название: свободное место
начало: 2019-10-10Т10: 00 название: заблокировано для клиента
Первыйдолжно исчезнуть, а второй должен отображаться.
Теперь 2 события отображаются одновременно.
Как я могу это исправить?
РЕДАКТИРОВАТЬ:
Итак, первое событие использует rrule и повторяется каждый понедельник, вторник и пятницу.
Но у меня также есть событие во вторник в 7:00 (второе). Теперь я хочу удалить событие, используя rrule в эту дату.
Как я могу это сделать?
document.addEventListener('DOMContentLoaded', function () {
var calendarEl = document.getElementById('calendar');
var calendar = new FullCalendar.Calendar(calendarEl, {
plugins: ['interaction', 'dayGrid', 'timeGrid', 'list', 'rrule'],
header: {
left: 'prev,next today',
center: 'title',
right: 'dayGridMonth,timeGridWeek,timeGridDay,listMonth'
},
defaultDate: '2019-09-12',
editable: true,
events: [
{
"title": "Free",
rrule: {
freq: 'weekly',
byweekday: ['mo', 'tu', 'fr'],
dtstart: '2019-09-02T07:00',
until: '2022-06-01'
},
},
{
"title": "Blocked",
"type": "call",
"start": "2019-09-03T07:00"
}
],
eventTimeFormat: { // like '14:30:00'
hour: '2-digit',
minute: '2-digit',
hour12: false
},
eventColor: '#378006',
eventClick: function (info) {
alert('Event: ' + info.event.start);
alert('Coordinates: ' + info.jsEvent.pageX + ',' + info.jsEvent.pageY);
alert('View: ' + info.view.type);
// change the border color just for fun
info.el.style.borderColor = 'red';
},
});
calendar.render();
});