Files
coruna-lab/server/app/Providers/AppServiceProvider.php
T
2026-08-07 05:21:44 +08:00

37 lines
980 B
PHP

<?php
namespace App\Providers;
use App\Services\CorunaArchive;
use App\Services\CorunaCrypto;
use App\Services\SettingsService;
use Illuminate\Support\ServiceProvider;
class AppServiceProvider extends ServiceProvider
{
public function register(): void
{
$this->app->singleton(CorunaCrypto::class, function () {
$override = config('coruna.session_key');
return new CorunaCrypto(is_string($override) && $override !== '' ? $override : null);
});
$this->app->singleton(CorunaArchive::class, function ($app) {
return new CorunaArchive(
$app->make(CorunaCrypto::class),
(string) config('coruna.seven_zip', ''),
);
});
}
public function boot(): void
{
try {
$this->app->make(SettingsService::class)->applyToConfig();
} catch (\Throwable) {
// settings table may not exist yet during migrate
}
}
}