[FEATURE] Add config and use composer autoloader.
We use composer already to install SabreDAV. Include config composer.(json|lock) to install and manage more dependencies in future. Also provide PSR-4 autoloading for our namespaced classes, e.g. "Zotlabs\". To regenerate autoloader maps use: $ composer install --optimize-autoloader --no-dev We could also remove the whole vendor/ folder from our repository, but that would need changes in deployment and how to install hubs and needs more discussion first.
This commit is contained in:
12
vendor/sabre/vobject/lib/Recur/EventIterator.php
vendored
12
vendor/sabre/vobject/lib/Recur/EventIterator.php
vendored
@@ -325,7 +325,7 @@ class EventIterator implements \Iterator {
|
||||
$index = [];
|
||||
foreach ($this->overriddenEvents as $key => $event) {
|
||||
$stamp = $event->DTSTART->getDateTime($this->timeZone)->getTimeStamp();
|
||||
$index[$stamp] = $key;
|
||||
$index[$stamp][] = $key;
|
||||
}
|
||||
krsort($index);
|
||||
$this->counter = 0;
|
||||
@@ -372,8 +372,9 @@ class EventIterator implements \Iterator {
|
||||
// overridden event may cut ahead.
|
||||
if ($this->overriddenEventsIndex) {
|
||||
|
||||
$offset = end($this->overriddenEventsIndex);
|
||||
$offsets = end($this->overriddenEventsIndex);
|
||||
$timestamp = key($this->overriddenEventsIndex);
|
||||
$offset = end($offsets);
|
||||
if (!$nextDate || $timestamp < $nextDate->getTimeStamp()) {
|
||||
// Overridden event comes first.
|
||||
$this->currentOverriddenEvent = $this->overriddenEvents[$offset];
|
||||
@@ -383,7 +384,10 @@ class EventIterator implements \Iterator {
|
||||
$this->currentDate = $this->currentOverriddenEvent->DTSTART->getDateTime($this->timeZone);
|
||||
|
||||
// Ensuring that this item will only be used once.
|
||||
array_pop($this->overriddenEventsIndex);
|
||||
array_pop($this->overriddenEventsIndex[$timestamp]);
|
||||
if (!$this->overriddenEventsIndex[$timestamp]) {
|
||||
array_pop($this->overriddenEventsIndex);
|
||||
}
|
||||
|
||||
// Exit point!
|
||||
return;
|
||||
@@ -451,7 +455,7 @@ class EventIterator implements \Iterator {
|
||||
/**
|
||||
* Overridden event index.
|
||||
*
|
||||
* Key is timestamp, value is the index of the item in the $overriddenEvent
|
||||
* Key is timestamp, value is the list of indexes of the item in the $overriddenEvent
|
||||
* property.
|
||||
*
|
||||
* @var array
|
||||
|
||||
@@ -718,6 +718,11 @@ class RRuleIterator implements Iterator {
|
||||
|
||||
case 'BYMONTH' :
|
||||
$this->byMonth = (array)$value;
|
||||
foreach ($this->byMonth as $byMonth) {
|
||||
if (!is_numeric($byMonth) || (int)$byMonth < 1 || (int)$byMonth > 12) {
|
||||
throw new InvalidDataException('BYMONTH in RRULE must have value(s) betweeen 1 and 12!');
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 'BYSETPOS' :
|
||||
|
||||
Reference in New Issue
Block a user