2020-04-26 05:09:32 +01:00
|
|
|
<?php
|
|
|
|
|
|
|
|
/*
|
2020-10-10 16:30:26 +00:00
|
|
|
* Copyright © 2020 Miguel Nogueira
|
|
|
|
*
|
|
|
|
* This file is part of Raspberry Staff Manager.
|
|
|
|
*
|
|
|
|
* Raspberry Staff Manager is free software: you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU General Public License as published by
|
|
|
|
* the Free Software Foundation, either version 3 of the License, or
|
|
|
|
* (at your option) any later version.
|
|
|
|
*
|
|
|
|
* Raspberry Staff Manager is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU General Public License
|
|
|
|
* along with Raspberry Staff Manager. If not, see <https://www.gnu.org/licenses/>.
|
|
|
|
*/
|
2020-04-26 05:09:32 +01:00
|
|
|
|
2025-08-06 10:10:42 +01:00
|
|
|
use Illuminate\Foundation\Application;
|
|
|
|
use Illuminate\Foundation\Configuration\Middleware;
|
|
|
|
use Illuminate\Foundation\Configuration\Exceptions;
|
2020-04-26 05:09:32 +01:00
|
|
|
|
|
|
|
|
2025-08-06 10:10:42 +01:00
|
|
|
return Application::configure(dirname(__DIR__))
|
|
|
|
->withRouting(
|
|
|
|
web: __DIR__.'/../routes/web.php',
|
|
|
|
commands: __DIR__.'/../routes/console.php',
|
|
|
|
health: '/up',
|
|
|
|
)
|
|
|
|
->withMiddleware(function (Middleware $middleware): void {
|
|
|
|
|
|
|
|
// Global middleware
|
|
|
|
$middleware->append([
|
|
|
|
\App\Http\Middleware\TrustProxies::class,
|
|
|
|
\Illuminate\Http\Middleware\HandleCors::class,
|
|
|
|
\App\Http\Middleware\CheckForMaintenanceMode::class,
|
|
|
|
\Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
|
|
|
|
\App\Http\Middleware\TrimStrings::class,
|
|
|
|
\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
|
|
|
|
]);
|
|
|
|
|
|
|
|
// Web middleware
|
|
|
|
$middleware->appendToGroup('web', [
|
|
|
|
\App\Http\Middleware\EncryptCookies::class,
|
|
|
|
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
|
|
|
|
\Illuminate\Session\Middleware\StartSession::class,
|
|
|
|
// \Illuminate\Session\Middleware\AuthenticateSession::class,
|
|
|
|
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
|
|
|
|
\App\Http\Middleware\VerifyCsrfToken::class,
|
|
|
|
\Illuminate\Routing\Middleware\SubstituteBindings::class,
|
|
|
|
]);
|
|
|
|
|
|
|
|
// API middleware
|
|
|
|
$middleware->appendToGroup('api', [
|
|
|
|
\Illuminate\Routing\Middleware\SubstituteBindings::class
|
|
|
|
]);
|
|
|
|
|
|
|
|
// Route middleware (aliases)
|
|
|
|
$middleware->alias([
|
|
|
|
'auth' => \App\Http\Middleware\Authenticate::class,
|
|
|
|
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
|
|
|
|
'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
|
|
|
|
'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class,
|
|
|
|
'can' => \Illuminate\Auth\Middleware\Authorize::class,
|
|
|
|
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
|
|
|
|
'password.confirm' => \Illuminate\Auth\Middleware\RequirePassword::class,
|
|
|
|
'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class,
|
|
|
|
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
|
|
|
|
'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,
|
|
|
|
'eligibility' => \App\Http\Middleware\ApplicationEligibility::class,
|
|
|
|
'usernameUUID' => \App\Http\Middleware\UsernameUUID::class,
|
|
|
|
'forcelogout' => \App\Http\Middleware\ForceLogoutMiddleware::class,
|
|
|
|
'2fa' => \PragmaRX\Google2FALaravel\Middleware::class,
|
|
|
|
'passwordexpiration' => \App\Http\Middleware\PasswordExpirationMiddleware::class,
|
|
|
|
'passwordredirect' => \App\Http\Middleware\PasswordExpirationRedirectMiddleware::class,
|
|
|
|
'localize' => \Mcamara\LaravelLocalization\Middleware\LaravelLocalizationRoutes::class,
|
|
|
|
'localizationRedirect' => \Mcamara\LaravelLocalization\Middleware\LaravelLocalizationRedirectFilter::class,
|
|
|
|
'localeSessionRedirect' => \Mcamara\LaravelLocalization\Middleware\LocaleSessionRedirect::class,
|
|
|
|
'localeCookieRedirect' => \Mcamara\LaravelLocalization\Middleware\LocaleCookieRedirect::class,
|
|
|
|
'localeViewPath' => \Mcamara\LaravelLocalization\Middleware\LaravelLocalizationViewPath::class,
|
|
|
|
]);
|
|
|
|
|
|
|
|
})
|
|
|
|
->withExceptions(function (Exceptions $exceptions): void {
|
|
|
|
|
|
|
|
})->create();
|