protected function processRecurringEvents(\DateTime $fromDate, \DateTime $toDate, $limit = null)
	{
		if ($this->recurrenceFactory) {
			foreach ($this->recurrenceFactory->getRecurrenceTypes() as $recurrence) {
				$recurrenceType = new $recurrence();

				$occurrences = $recurrenceType->generateOccurrences($this->recurrentEvents, $fromDate, $toDate, $limit);

				$this->recurrentEvents = array_merge($this->recurrentEvents, $occurrences);
			}
		}

		// Remove recurring events that do not occur within the date range
		$this->recurrentEvents = array_filter($this->recurrentEvents, function ($event) use ($fromDate, $toDate) {

			if (! $event->getRecurrenceType()) {
				return true;
			} elseif ($event->getStartDate() <= $toDate  && $event->getEndDate() >= $fromDate) {
				return true;
			}

			return false;
		});

		$this->allEvents = array_merge($this->allEvents, $this->recurrentEvents);
	}
protected function processRecurringEvents(\DateTime $fromDate, \DateTime $toDate, $limit = null)
	{
		if ($this->recurrenceFactory) {
			foreach ($this->recurrenceFactory->getRecurrenceTypes() as $recurrence) {
				$recurrenceType = new $recurrence();

				$occurrences = $recurrenceType->generateOccurrences($this->recurrentEvents, $fromDate, $toDate, $limit);

				$this->recurrentEvents = array_merge($this->recurrentEvents, $occurrences);
			}
		}

		// Remove recurring events that do not occur within the date range
		$this->recurrentEvents = array_filter($this->recurrentEvents, function ($event) use ($fromDate, $toDate) {

			if (! $event->getRecurrenceType()) {
				return true;
			} elseif ($event->getStartDate() <= $toDate  && $event->getEndDate() >= $fromDate) {
				return true;
			}

			return false;
		});

		$this->allEvents = array_merge($this->allEvents, $this->recurrentEvents);
	}
protected function processRecurringEvents ( \ DateTime $ fromDate , \ DateTime $ toDate , $ limit = null ) { if ( $ this -> recurrenceFactory ) { foreach ( $ this -> recurrenceFactory -> getRecurrenceTypes ( ) as $ recurrence ) { $ recurrenceType = new $ recurrence ( ) ; $ occurrences = $ recurrenceType -> generateOccurrences ( $ this -> recurrentEvents , $ fromDate , $ toDate , $ limit ) ; $ this -> recurrentEvents = array_merge ( $ this -> recurrentEvents , $ occurrences ) ; } } // Remove recurring events that do not occur within the date range $ this -> recurrentEvents = array_filter ( $ this -> recurrentEvents , function ( $ event ) use ( $ fromDate , $ toDate ) { if ( ! $ event -> getRecurrenceType ( ) ) { return true ; } elseif ( $ event -> getStartDate ( ) <= $ toDate && $ event -> getEndDate ( ) >= $ fromDate ) { return true ; } return false ; } ) ; $ this -> allEvents = array_merge ( $ this -> allEvents , $ this -> recurrentEvents ) ; }
Generates the occurrences for recurring events if a recurrence factory is present.

@param \DateTime	$fromDate
@param \DateTime	$toDate
@param int		$limit
Generates the occurrences for recurring events if a recurrence factory is present .