2016-11-29 14 views
0

LIMITが4に達すると、特定の日に今後のイベントを停止するために、FullCalendarで毎日のイベントの合計数をカウントしようとしています。FullCalendar総額1日あたりのクライアントイベントの合計数

これは、4に届いたばかりの日常的なイベントでうまく動作しますが、qtyを超えています。私が欲しいもの

var eventCounter = 0; 

$('#calendar').fullCalendar('clientEvents', function(event) { 
    if(moment(start).format('YYYY-MM-DD HH:mm:ss') == event.start.format('YYYY-MM-DD HH:mm:ss')) { 
     eventCounter++; 
    } 
}); 

if(eventCounter < 4) { 
    $('#ModalAdd #start').val(moment(start).format('YYYY-MM-DD HH:mm:ss')); 
    $('#ModalAdd #end').val(moment(end).format('YYYY-MM-DD HH:mm:ss')); 
    $('#ModalAdd').modal('show'); 
} else { 
    swal({ 
     title: "Maximum Bookings", 
     text: "Sorry, the maximum number of bookings are taken for this day. Please select another date.", 
     type: "warning" 
    }); 
} 

は、一日あたりevent[]はなく、イベントのqtyカウントです。

イベントの配列の例。

events: [ 
    { 
     id: '233', 
     title: 'Tandem Jump', 
     qty: '4', 
     start: '2016-11-29 00:00:00', 
     end: '2016-11-29 00:00:00' 
    }, 
    { 
     id: '239', 
     title: 'Tandem Jump', 
     qty: '2', 
     start: '2016-11-30 00:00:00', 
     end: '2016-11-30 00:00:00' 
    }, 
] 

ありがとうございます。

答えて

0

私はそれはあなたが必要なものですかどうかわからないんだけど、これは(月ビューでの)日をクリックした後、特定の日内のイベントの数をカウントします:

$('#calendar').fullCalendar({ 
    weekends: true, 
    defaultView: 'month', 
    allDaySlot: false, 
    header: { 
     left: 'month,agendaWeek,agendaDay,listDay', 
     center: 'title', 
     right: 'prev,next today' 
    }, 
    events: [{ 
     title: 'event 1', 
     start: '2016-12-05T16:00:00', 
     end: '2016-12-05T18:00:00' 
    }, { 
     title: 'event 2', 
     start: '2016-12-05T18:00:00', 
     end: '2016-12-05T20:00:00' 
    }, { 
     title: 'event 3', 
     start: '2016-12-07T16:00:00', 
     end: '2016-12-07T18:00:00' 
    }, { 
     title: 'event 7', 
     start: '2016-12-07T12:00:00', 
     end: '2016-12-07T14:00:00' 
    }, { 
     title: 'event 4', 
     start: '2016-12-07T11:00:00', 
     end: '2016-12-07T12:00:00' 
    }, { 
     title: 'event 5', 
     start: '2016-12-08T16:00:00', 
     end: '2016-12-08T18:00:00' 
    }], 
    height: 'auto', 
    editable: true, 
    dayClick: function(date, allDay, jsEvent, view) { 
     if (!allDay) { 
     // strip time information 
     date = new Date(date.getFullYear(), date.getMonth(), date.getDay()); 
     } 
     var ar = $('#calendar').fullCalendar('clientEvents', function(event) { 
     if (event.start.year() == date.year() && event.start.month() == date.month() && event.start.day() == date.day()) { 
      return true; 
     } 
     return false; 
     }); 
     console.log(ar.length); 
    } 
    }); 

https://jsfiddle.net/jzajf4e8/

・ホープこれは役に立ちます
お礼
クルシシュフ

関連する問題