타임 슬롯에서 중복 이벤트 방지하기
여러 상황에서 동일한 시간대에 예약할 수 있는 이벤트 수를 제한하는 것이 중요할 수 있습니다. 예를 들어, 이미 해당 시간대에 하나의 이벤트가 예약되어 있다면 두 번째 이벤트 추가를 막고 싶을 수 있습니다.
충돌 감지 활성화하기
하나의 시간대에 허용되는 이벤트 수를 관리하려면 collision 확장 기능을 사용할 수 있습니다.
'collision' 확장 기능 활성화하기
scheduler.plugins({
collision: true
});
이 확장 기능을 페이지에 활성화하면, 사용자가 새로운 이벤트를 생성하거나 기존 이벤트를 이동할 때 동일한 시간대에 두 개의 이벤트가 배치되는 것을 자동으로 방지합니다.
시간대별 허용 이벤트 수 관리하기
기본적으로 하나의 시간대에는 한 개의 이벤트만 허용됩니다. 이 제한을 변경하려면 collision_limit 속성을 사용하세요:
시간대별 2개 이상의 이벤트 생성 방지
scheduler.config.collision_limit = 2; // 한 시간대에 2개의 이벤트만 허용
Controlling the number of events in a time slot
'collision' 확장 기능이 활성화된 상태에서 사용자가 이미 이벤트가 있는 시간대에 이벤트를 추가하거나 이동하려고 하면, 스케줄러는 onEventCollision 이벤트를 발생시킵니다. 이 이벤트는 collision_limit 속성에 설정된 제한을 확인합니다.
참고로, onEventCollision 이벤트는 데이터 로딩 중에는 발생하지 않습니다. 데이터 로딩 시에도 이벤트 제한을 적용하려면 다음과 같이 코드를 추 가해야 합니다:
시간대별 2개 이상의 이벤트 생성/로딩 방지
scheduler.config.collision_limit = 2; // 한 시간대에 2개의 이벤트만 허용
scheduler.attachEvent("onEventLoading", function(ev){ /*!*/
return scheduler.checkCollision(ev); /*!*/
}); /*!*/
checkCollision 메서드는 이벤트가 기존 이벤트와 겹치는지 확인하고, 필요시 onEventCollision 이벤트를 발생시킵니다.