isAllDay() public method

public isAllDay ( )
示例#1
0
 /**
  * Adds an event to all the days it covers.
  *
  * @param array $result           The current result list.
  * @param Kronolith_Event $event  An event object.
  * @param Horde_Date $eventStart  The event's start at the actual
  *                                recurrence.
  * @param Horde_Date $eventEnd    The event's end at the actual recurrence.
  * @param boolean $json           Store the results of the events' toJson()
  *                                method?
  */
 public static function addCoverDates(&$results, $event, $eventStart, $eventEnd, $json)
 {
     $loopDate = new Horde_Date($eventStart->year, $eventStart->month, $eventStart->mday);
     $allDay = $event->isAllDay();
     while ($loopDate->compareDateTime($eventEnd) <= 0) {
         if (!$allDay || $loopDate->compareDateTime($eventEnd) != 0) {
             $addEvent = clone $event;
             $addEvent->start = $eventStart;
             $addEvent->end = $eventEnd;
             if ($loopDate->compareDate($eventStart) != 0) {
                 $addEvent->first = false;
             }
             if ($loopDate->compareDate($eventEnd) != 0) {
                 $addEvent->last = false;
             }
             if ($addEvent->recurs() && $addEvent->recurrence->hasCompletion($loopDate->year, $loopDate->month, $loopDate->mday)) {
                 $addEvent->status = Kronolith::STATUS_CANCELLED;
             }
             $results[$loopDate->dateString()][$addEvent->id] = $json ? $addEvent->toJson($allDay) : $addEvent;
         }
         $loopDate->mday++;
     }
 }
示例#2
0
文件: Kronolith.php 项目: horde/horde
 /**
  * Adds an event to all the days it covers.
  *
  * @param array $result              The current result list.
  * @param Kronolith_Event $event     An event object.
  * @param Horde_Date $eventStart     The event's start of the actual
  *                                   recurrence.
  * @param Horde_Date $eventEnd       The event's end of the actual
  *                                   recurrence.
  * @param boolean $json              Store the results of the events'
  *                                   toJson() method?
  * @param Horde_Date $originalStart  The actual starting time of a single
  *                                   event spanning multiple days.
  * @param Horde_Date $originalEnd    The actual ending time of a single
  *                                   event spanning multiple days.
  */
 public static function addCoverDates(&$results, $event, $eventStart, $eventEnd, $json, $originalStart = null, $originalEnd = null, Horde_Date $endDate = null)
 {
     $loopDate = new Horde_Date(array('month' => $eventStart->month, 'mday' => $eventStart->mday, 'year' => $eventStart->year));
     $allDay = $event->isAllDay();
     while ($loopDate->compareDateTime($eventEnd) <= 0 && $loopDate->compareDateTime($endDate) <= 0) {
         if (!$allDay || $loopDate->compareDateTime($eventEnd) != 0) {
             $addEvent = clone $event;
             if ($originalStart) {
                 $addEvent->originalStart = $originalStart;
             }
             if ($originalEnd) {
                 $addEvent->originalEnd = $originalEnd;
             }
             /* If this is the start day, set the start time to
              * the real start time, otherwise set it to
              * 00:00 */
             if ($loopDate->compareDate($eventStart) != 0) {
                 $addEvent->start = clone $loopDate;
                 $addEvent->start->hour = $addEvent->start->min = $addEvent->start->sec = 0;
                 $addEvent->first = false;
             } else {
                 $addEvent->start = $eventStart;
             }
             /* If this is the end day, set the end time to the
              * real event end, otherwise set it to 23:59. */
             if ($loopDate->compareDate($eventEnd) != 0) {
                 $addEvent->end = clone $loopDate;
                 $addEvent->end->hour = 23;
                 $addEvent->end->min = $addEvent->end->sec = 59;
                 $addEvent->last = false;
             } else {
                 $addEvent->end = $eventEnd;
             }
             if ($addEvent->recurs() && $addEvent->recurrence->hasCompletion($loopDate->year, $loopDate->month, $loopDate->mday)) {
                 $addEvent->status = Kronolith::STATUS_CANCELLED;
             }
             $results[$loopDate->dateString()][$addEvent->id] = $json ? $addEvent->toJson(array('all_day' => $allDay)) : $addEvent;
         }
         $loopDate->mday++;
     }
 }