2017-10-11 12 views
0

당신이 잘 지내기를 바랍니다.YUI SchedulerEventRecorder 팝업

빌드해야하는 것은 내 사용자가 캘린더를 통해 자신의 가용성을 제공하고이를 db에 저장하는 캘린더입니다. 저는 SchedulerEventRecorder를 가지고 놀고 있습니다. 그리고 지금까지 나는 그 피의 냉담함을 생각합니다. 텍스트를 선택 목록으로 대체하여 내 사용자가 옵션 (사용할 수 없음, 사용 가능, x, y)으로 제한되도록 이벤트를 추가 할 때 팝업에 약간의 조정을하고 싶습니다. , z).

나는 두뇌를 긁어 내고 문서를 이해하려고 노력하고 있으며,이 문제를 어떻게 해결할 지 모릅니다. 모든 팁은 appriciated 것입니다.

내 코드는 지금까지입니다 (PHP 코드 변명) :

<script> 
    YUI().use(
     'aui-scheduler', 
     function(Y) 
     { 
      <?php if($availability_count > 0) { ?> 
      var events = [ 
       <?php 
       foreach($availability as $a) 
       { 
       ?> 
       { 
        color: '<?php echo $cb->Get_booking_status_colour($a['booking_status'])?>', 
        borderColor: '<?php echo $cb->Get_booking_status_colour($a['booking_status'])?>', 
        content: '<?php echo $cb->Get_booking_status_name($a['booking_status'])?>', 
        endDate: new Date(<?php echo format_date($a['date_end'], 'Y')?>, <?php echo date('m', strtotime($a['date_end']. '-1 month'))?>, <?php echo format_date($a['date_end'], 'd')?>), 
        startDate: new Date(<?php echo format_date($a['date_start'], 'Y')?>, <?php echo date('m', strtotime($a['date_start']. '-1 month'))?>, <?php echo format_date($a['date_start'], 'd')?>) 
       }, 
       <?php 
       } 
       ?> 
      ]; 
      <?php } ?> 

      var monthView = new Y.SchedulerMonthView({ isoTime: true }); 
      var eventRecorder = new Y.SchedulerEventRecorder({ 
       on: { 
        save: function(event) { 
         alert('Save Event:' + this.isNew() + ' --- ' + this.getContentNode().val() + ' --- ' + this.getClearStartDate() + ' --- ' + this.getClearEndDate()); 
         console.log(this.serializeForm()); 
        }, 
        edit: function(event) { 
         alert('Edit Event:' + this.isNew() + ' --- ' + this.getContentNode().val() + ' --- ' + this.getClearStartDate() + ' --- ' + this.getClearEndDate()); 
         console.log(this.serializeForm()); 
        }, 
        delete: function(event) { 
         alert('Delete Event:' + this.isNew() + ' --- ' + this.getContentNode().val() + ' --- ' + this.getClearStartDate() + ' --- ' + this.getClearEndDate()); 
         console.log(this.serializeForm()); 
        } 
       }, 
       dateFormat: '%a, %B %d, %Y', 
       content: '', 
       repeated: true 
      }); 
      eventRecorder.setTitle('test'); 
      eventRecorder.setContent('test 2'); 

      new Y.Scheduler(
       { 
       activeView: monthView, 
       boundingBox: '#myScheduler', 
       date: new Date(<?php echo date('Y')?>, <?php echo date('m', strtotime('-1 month'))?>, <?php echo date('d')?>), 
       eventRecorder: eventRecorder, 
       items: events, 
       render: true, 
       views: [monthView] 
       } 
      ); 
     } 
    ); 
</script> 

감사

주권을

답변

0

좋아, 코드에 주위 파고 일부는, 나는에 아래의 사용 후 eventRecorder 객체.

headerTemplate: '<select name=""><option value="5">Available</option><option value="6">Unavailable</option></select>'