fix: Caricamento routes quando il DB non esiste
This commit is contained in:
parent
504a5521d0
commit
ef92a05c73
|
@ -18,6 +18,10 @@ class CheckConfigurationMiddleware
|
||||||
{
|
{
|
||||||
public function handle(Request $request, Closure $next): Response|SymfonyResponse
|
public function handle(Request $request, Closure $next): Response|SymfonyResponse
|
||||||
{
|
{
|
||||||
|
// Skip log viewer routes
|
||||||
|
if (str_starts_with($request->route()->getName(), 'log-viewer.')) {
|
||||||
|
return $next($request);
|
||||||
|
}
|
||||||
$checks = [
|
$checks = [
|
||||||
'database' => static fn (): bool => ! empty(DB::connection()->getDatabaseName()) && DB::connection()->getPdo() instanceof PDO,
|
'database' => static fn (): bool => ! empty(DB::connection()->getDatabaseName()) && DB::connection()->getPdo() instanceof PDO,
|
||||||
'admin_user' => static fn (): bool => ! empty(User::exists()),
|
'admin_user' => static fn (): bool => ! empty(User::exists()),
|
||||||
|
|
|
@ -3,18 +3,23 @@
|
||||||
namespace App\Http\Middleware;
|
namespace App\Http\Middleware;
|
||||||
|
|
||||||
use Closure;
|
use Closure;
|
||||||
|
use Illuminate\Database\QueryException;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
|
|
||||||
class LocaleMiddleware
|
class LocaleMiddleware
|
||||||
{
|
{
|
||||||
public function handle(Request $request, Closure $next): mixed
|
public function handle(Request $request, Closure $next): mixed
|
||||||
{
|
{
|
||||||
app()->setLocale($request
|
try {
|
||||||
->user()
|
app()->setLocale($request
|
||||||
?->settings()
|
->user()
|
||||||
->get('locale', app()->getLocale())
|
?->settings()
|
||||||
?? session('locale', app()->getLocale())
|
->get('locale', app()->getLocale())
|
||||||
);
|
?? session('locale', app()->getLocale())
|
||||||
|
);
|
||||||
|
} catch (QueryException) {
|
||||||
|
// Do nothing, since DB is not configured yet
|
||||||
|
}
|
||||||
|
|
||||||
return $next($request);
|
return $next($request);
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,7 +35,7 @@
|
||||||
'user' => Route::currentRouteName() !== 'setup.index' && auth()->user(),
|
'user' => Route::currentRouteName() !== 'setup.index' && auth()->user(),
|
||||||
'VERSION' => trim(file_get_contents(base_path('VERSION'))),
|
'VERSION' => trim(file_get_contents(base_path('VERSION'))),
|
||||||
'REVISION' => trim(file_get_contents(base_path('REVISION'))),
|
'REVISION' => trim(file_get_contents(base_path('REVISION'))),
|
||||||
'settings' => (!empty(DB::connection()->getDatabaseName()) && DB::connection()->getPdo() instanceof PDO) ? [
|
'settings' => !str_starts_with(Route::getCurrentRoute()?->getName() ?? '', 'setup.') ? [
|
||||||
'date_format' => settings('date_format_long'),
|
'date_format' => settings('date_format_long'),
|
||||||
'date_format_short' => settings('date_format_short'),
|
'date_format_short' => settings('date_format_short'),
|
||||||
'time_format' => settings('time_format'),
|
'time_format' => settings('time_format'),
|
||||||
|
|
|
@ -16,8 +16,7 @@ use Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
Route::name('setup.')
|
Route::name('setup.')
|
||||||
->middleware(CheckConfigurationMiddleware::class)
|
->withoutMiddleware([EnsureFrontendRequestsAreStateful::class, CheckConfigurationMiddleware::class]) // TODO: Add configuration check middleware when setup is done
|
||||||
->withoutMiddleware([EnsureFrontendRequestsAreStateful::class])
|
|
||||||
->group(static function () {
|
->group(static function () {
|
||||||
Route::post('setup/test', [SetupController::class, 'testDatabase'])
|
Route::post('setup/test', [SetupController::class, 'testDatabase'])
|
||||||
->name('test');
|
->name('test');
|
||||||
|
|
Loading…
Reference in New Issue