diff options
author | Mario <mario@mariovavti.com> | 2022-02-11 09:23:29 +0000 |
---|---|---|
committer | Mario <mario@mariovavti.com> | 2022-02-11 09:23:29 +0000 |
commit | 5468de2c6ad5187cd51201cda929c3e54cc2938f (patch) | |
tree | 3520a10665bd2956c6a032c508f63019fed19307 /vendor/sabre/vobject/lib/TimezoneGuesser/FindFromOffset.php | |
parent | 6d8aabab2347feabdd804b609dcd4513f09f78d4 (diff) | |
download | volse-hubzilla-5468de2c6ad5187cd51201cda929c3e54cc2938f.tar.gz volse-hubzilla-5468de2c6ad5187cd51201cda929c3e54cc2938f.tar.bz2 volse-hubzilla-5468de2c6ad5187cd51201cda929c3e54cc2938f.zip |
composer libs minor version updates add new files
Diffstat (limited to 'vendor/sabre/vobject/lib/TimezoneGuesser/FindFromOffset.php')
-rw-r--r-- | vendor/sabre/vobject/lib/TimezoneGuesser/FindFromOffset.php | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/vendor/sabre/vobject/lib/TimezoneGuesser/FindFromOffset.php b/vendor/sabre/vobject/lib/TimezoneGuesser/FindFromOffset.php new file mode 100644 index 000000000..990ac9692 --- /dev/null +++ b/vendor/sabre/vobject/lib/TimezoneGuesser/FindFromOffset.php @@ -0,0 +1,31 @@ +<?php + +declare(strict_types=1); + +namespace Sabre\VObject\TimezoneGuesser; + +use DateTimeZone; + +/** + * Some clients add 'X-LIC-LOCATION' with the olson name. + */ +class FindFromOffset implements TimezoneFinder +{ + public function find(string $tzid, bool $failIfUncertain = false): ?DateTimeZone + { + // Maybe the author was hyper-lazy and just included an offset. We + // support it, but we aren't happy about it. + if (preg_match('/^GMT(\+|-)([0-9]{4})$/', $tzid, $matches)) { + // Note that the path in the source will never be taken from PHP 5.5.10 + // onwards. PHP 5.5.10 supports the "GMT+0100" style of format, so it + // already gets returned early in this function. Once we drop support + // for versions under PHP 5.5.10, this bit can be taken out of the + // source. + // @codeCoverageIgnoreStart + return new DateTimeZone('Etc/GMT'.$matches[1].ltrim(substr($matches[2], 0, 2), '0')); + // @codeCoverageIgnoreEnd + } + + return null; + } +} |