mirror of
https://github.com/cupcakearmy/coolify.git
synced 2024-10-22 08:04:19 +02:00
Add: server timezone seeder
This commit is contained in:
parent
00f20c708f
commit
3e3b92638b
@ -33,6 +33,7 @@ public function run(): void
|
||||
ScheduledDatabaseBackupSeeder::class,
|
||||
ScheduledDatabaseBackupExecutionSeeder::class,
|
||||
OauthSettingSeeder::class,
|
||||
ServerTimezoneSeeder::class,
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
@ -79,7 +79,8 @@ public function run(): void
|
||||
],
|
||||
[
|
||||
'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 @@ public function run(): void
|
||||
|
||||
$oauth_settings_seeder = new OauthSettingSeeder;
|
||||
$oauth_settings_seeder->run();
|
||||
|
||||
$server_timezone_seeder = new ServerTimezoneSeeder;
|
||||
$server_timezone_seeder->run();
|
||||
}
|
||||
}
|
||||
|
38
database/seeders/ServerTimezoneSeeder.php
Normal file
38
database/seeders/ServerTimezoneSeeder.php
Normal file
@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
namespace Database\Seeders;
|
||||
|
||||
use App\Models\Server;
|
||||
use Illuminate\Database\Seeder;
|
||||
use App\Livewire\Server\Form;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
class ServerTimezoneSeeder extends Seeder
|
||||
{
|
||||
public function run(): void
|
||||
{
|
||||
$defaultTimezone = config('app.timezone');
|
||||
|
||||
Server::whereHas('settings', function ($query) {
|
||||
$query->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();
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user