예제 #1
0
 /**
  * Process data provider and get calendar items.
  * @param CalendarItemsDataProvider $dataProvider
  * @return boolean
  */
 public static function processDataProviderAndGetCalendarItems(CalendarItemsDataProvider $dataProvider)
 {
     $calendarItems = $dataProvider->getData(true);
     $fullCalendarItems = array();
     for ($k = 0; $k < count($calendarItems); $k++) {
         $fullCalendarItem = array();
         $calItem = $calendarItems[$k];
         $fullCalendarItem['title'] = $calItem->getTitle();
         $fullCalendarItem['start'] = $calItem->getStartDateTime();
         if (!DateTimeUtil::isDateTimeStringNull($calItem->getEndDateTime())) {
             $fullCalendarItem['end'] = $calItem->getEndDateTime();
         } else {
             $fullCalendarItem['end'] = '';
         }
         $fullCalendarItem['color'] = $calItem->getColor();
         $fullCalendarItem['modelClass'] = $calItem->getModelClass();
         $fullCalendarItem['modelId'] = $calItem->getModelId();
         $fullCalendarItem['calendarId'] = $calItem->getCalendarId();
         $fullCalendarItem['allDay'] = true;
         $fullCalendarItems[] = $fullCalendarItem;
     }
     if (count($fullCalendarItems) > 0) {
         ArrayUtil::sortArrayByElementField('compareCalendarItemsByDateTime', 'usort', $fullCalendarItems, 'CalendarUtil');
     }
     return $fullCalendarItems;
 }