From c80837a9e6a1d5049a03fbb608b2b650c1b0f92d Mon Sep 17 00:00:00 2001 From: Klaus Weidenbach Date: Sun, 18 Mar 2018 02:13:05 +0100 Subject: :arrow_up: Update libraries. michelf/php-markdown (1.7.0 => 1.8.0) ezyang/htmlpurifier (v4.9.3 => v4.10.0) commerceguys/intl (v0.7.4 => v0.7.5) sabre/http (4.2.3 => v4.2.4) sabre/vobject (4.1.3 => 4.1.5) --- vendor/sabre/vobject/lib/ITip/Broker.php | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) (limited to 'vendor/sabre/vobject/lib/ITip/Broker.php') diff --git a/vendor/sabre/vobject/lib/ITip/Broker.php b/vendor/sabre/vobject/lib/ITip/Broker.php index effa74317..b9a30611b 100644 --- a/vendor/sabre/vobject/lib/ITip/Broker.php +++ b/vendor/sabre/vobject/lib/ITip/Broker.php @@ -849,6 +849,7 @@ class Broker { $exdate = []; foreach ($calendar->VEVENT as $vevent) { + $rrule = []; if (is_null($uid)) { $uid = $vevent->UID->getValue(); @@ -889,6 +890,18 @@ class Broker { } sort($exdate); } + if (isset($vevent->RRULE)) { + foreach ($vevent->select('RRULE') as $rr) { + foreach ($rr->getParts() as $key => $val) { + // ignore default values (https://github.com/sabre-io/vobject/issues/126) + if ($key === 'INTERVAL' && $val == 1) { + continue; + } + $rrule[] = "$key=$val"; + } + } + sort($rrule); + } if (isset($vevent->STATUS)) { $status = strtoupper($vevent->STATUS->getValue()); } @@ -953,19 +966,16 @@ class Broker { $significantChangeHash .= $prop . ':'; if ($prop === 'EXDATE') { - $significantChangeHash .= implode(',', $exdate) . ';'; - + } elseif ($prop === 'RRULE') { + $significantChangeHash .= implode(',', $rrule) . ';'; } else { - foreach ($propertyValues as $val) { $significantChangeHash .= $val->getValue() . ';'; } - } } } - } $significantChangeHash = md5($significantChangeHash); -- cgit v1.2.3