From 3e3b92638bfa2c7c00848d1acb6d9c7a81cb4dea Mon Sep 17 00:00:00 2001 From: ayntk-ai <122374094+ayntk-ai@users.noreply.github.com> Date: Fri, 16 Aug 2024 17:09:53 +0200 Subject: [PATCH] Add: server timezone seeder --- database/seeders/DatabaseSeeder.php | 1 + database/seeders/ProductionSeeder.php | 6 +++- database/seeders/ServerTimezoneSeeder.php | 38 +++++++++++++++++++++++ 3 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 database/seeders/ServerTimezoneSeeder.php diff --git a/database/seeders/DatabaseSeeder.php b/database/seeders/DatabaseSeeder.php index b3fac350f..736646ec6 100644 --- a/database/seeders/DatabaseSeeder.php +++ b/database/seeders/DatabaseSeeder.php @@ -33,6 +33,7 @@ class DatabaseSeeder extends Seeder ScheduledDatabaseBackupSeeder::class, ScheduledDatabaseBackupExecutionSeeder::class, OauthSettingSeeder::class, + ServerTimezoneSeeder::class, ]); } } diff --git a/database/seeders/ProductionSeeder.php b/database/seeders/ProductionSeeder.php index c88a35f6a..a3bdab536 100644 --- a/database/seeders/ProductionSeeder.php +++ b/database/seeders/ProductionSeeder.php @@ -79,7 +79,8 @@ class ProductionSeeder extends Seeder ], [ 'name' => 'localhost\'s key', - 'description' => 'The private key for the Coolify host machine (localhost).', 'private_key' => $coolify_key, + 'description' => 'The private key for the Coolify host machine (localhost).', + 'private_key' => $coolify_key, ] ); } else { @@ -180,5 +181,8 @@ uZx9iFkCELtxrh31QJ68AAAAEXNhaWxANzZmZjY2ZDJlMmRkAQIDBA== $oauth_settings_seeder = new OauthSettingSeeder; $oauth_settings_seeder->run(); + + $server_timezone_seeder = new ServerTimezoneSeeder; + $server_timezone_seeder->run(); } } diff --git a/database/seeders/ServerTimezoneSeeder.php b/database/seeders/ServerTimezoneSeeder.php new file mode 100644 index 000000000..fc31eb761 --- /dev/null +++ b/database/seeders/ServerTimezoneSeeder.php @@ -0,0 +1,38 @@ +whereNull('server_timezone')->orWhere('server_timezone', ''); + })->each(function ($server) use ($defaultTimezone) { + DB::transaction(function () use ($server, $defaultTimezone) { + $server->settings->server_timezone = $defaultTimezone; + $server->settings->save(); + + $formComponent = new Form(); + $formComponent->server = $server; + $formComponent->updateServerTimezone($defaultTimezone); + + // Refresh the server settings to ensure we have the latest data + $server->settings->refresh(); + + // Double-check and set the timezone if it's still not set + if (!$server->settings->server_timezone) { + $server->settings->server_timezone = $defaultTimezone; + $server->settings->save(); + } + }); + }); + } +}