Changeset View
Changeset View
Standalone View
Standalone View
lib/kolab_sync_timezone_converter.php
Show First 20 Lines • Show All 51 Lines • ▼ Show 20 Lines | class kolab_sync_timezone_converter | ||||
* @var array | * @var array | ||||
*/ | */ | ||||
protected $_knownTimezones = array( | protected $_knownTimezones = array( | ||||
'0AIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==' => array( | '0AIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==' => array( | ||||
'Pacific/Kwajalein' => 'MHT' | 'Pacific/Kwajalein' => 'MHT' | ||||
) | ) | ||||
); | ); | ||||
protected $_legacyTimezones = array( | |||||
# This is an outdated timezone that outlook keeps sending because of an outdate timezone database on windows | |||||
'Lv///0kAcgBhAG4AIABTAHQAYQBuAGQAYQByAGQAIABUAGkAbQBlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkABAADABcAOwA7AOcDAAAAAEkAcgBhAG4AIABEAGEAeQBsAGkAZwBoAHQAIABUAGkAbQBlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAwAEAAAAAAAAAAAAxP///w==' => array( | |||||
'Asia/Tehran' => '+0330' | |||||
) | |||||
); | |||||
/** | /** | ||||
* don't use the constructor. Use the singleton. | * don't use the constructor. Use the singleton. | ||||
* | * | ||||
* @param $_logger | * @param $_logger | ||||
*/ | */ | ||||
private function __construct() | private function __construct() | ||||
{ | { | ||||
} | } | ||||
▲ Show 20 Lines • Show All 67 Lines • ▼ Show 20 Lines | class kolab_sync_timezone_converter | ||||
* | * | ||||
* @return array | * @return array | ||||
*/ | */ | ||||
public function getListOfTimezones($_offsets) | public function getListOfTimezones($_offsets) | ||||
{ | { | ||||
if (is_string($_offsets) && isset($this->_knownTimezones[$_offsets])) { | if (is_string($_offsets) && isset($this->_knownTimezones[$_offsets])) { | ||||
$timezones = $this->_knownTimezones[$_offsets]; | $timezones = $this->_knownTimezones[$_offsets]; | ||||
} | } | ||||
elseif (is_string($_offsets) && isset($this->_legacyTimezones[$_offsets])) { | |||||
$timezones = $this->_legacyTimezones[$_offsets]; | |||||
} | |||||
else { | else { | ||||
if (is_string($_offsets)) { | if (is_string($_offsets)) { | ||||
// unpack timezone info to array | // unpack timezone info to array | ||||
$_offsets = $this->_unpackTimezoneInfo($_offsets); | $_offsets = $this->_unpackTimezoneInfo($_offsets); | ||||
} | } | ||||
if (!$this->_validateOffsets($_offsets)) { | if (!$this->_validateOffsets($_offsets)) { | ||||
return array(); | return array(); | ||||
▲ Show 20 Lines • Show All 477 Lines • Show Last 20 Lines |