selectedKey) { $this->selectedKey = null; return; } $this->selectedKey = $key; } public function server() { if (! $this->task) { return null; } if ($this->task->application) { if ($this->task->application->destination && $this->task->application->destination->server) { return $this->task->application->destination->server; } } elseif ($this->task->service) { if ($this->task->service->destination && $this->task->service->destination->server) { return $this->task->service->destination->server; } } return null; } public function getServerTimezone() { $server = $this->server(); if (! $server) { return 'UTC'; } return $server->settings->server_timezone; } public function formatDateInServerTimezone($date) { $serverTimezone = $this->getServerTimezone(); $dateObj = new \DateTime($date); try { $dateObj->setTimezone(new \DateTimeZone($serverTimezone)); } catch (\Exception) { $dateObj->setTimezone(new \DateTimeZone('UTC')); } return $dateObj->format('Y-m-d H:i:s T'); } }