Add the Chronological
This commit is contained in:
33
vendor/sabre/vobject/lib/TimezoneGuesser/GuessFromLicEntry.php
vendored
Normal file
33
vendor/sabre/vobject/lib/TimezoneGuesser/GuessFromLicEntry.php
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Sabre\VObject\TimezoneGuesser;
|
||||
|
||||
use DateTimeZone;
|
||||
use Sabre\VObject\Component\VTimeZone;
|
||||
use Sabre\VObject\TimeZoneUtil;
|
||||
|
||||
/**
|
||||
* Some clients add 'X-LIC-LOCATION' with the olson name.
|
||||
*/
|
||||
class GuessFromLicEntry implements TimezoneGuesser
|
||||
{
|
||||
public function guess(VTimeZone $vtimezone, bool $failIfUncertain = false): ?DateTimeZone
|
||||
{
|
||||
if (!isset($vtimezone->{'X-LIC-LOCATION'})) {
|
||||
return null;
|
||||
}
|
||||
|
||||
$lic = (string) $vtimezone->{'X-LIC-LOCATION'};
|
||||
|
||||
// Libical generators may specify strings like
|
||||
// "SystemV/EST5EDT". For those we must remove the
|
||||
// SystemV part.
|
||||
if ('SystemV/' === substr($lic, 0, 8)) {
|
||||
$lic = substr($lic, 8);
|
||||
}
|
||||
|
||||
return TimeZoneUtil::getTimeZone($lic, null, $failIfUncertain);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user