From d6864c14f549fa615a0e8775d8c153f48ff791ef Mon Sep 17 00:00:00 2001 From: Alexis Saettler Date: Wed, 27 Mar 2024 09:36:00 +0100 Subject: [PATCH] fix --- .../Auth/AuthenticatedSessionController.php | 3 +-- .../Auth/ConfirmablePasswordController.php | 3 +-- ...mailVerificationNotificationController.php | 3 +-- .../EmailVerificationPromptController.php | 3 +-- .../Auth/RegisteredUserController.php | 3 +-- .../Auth/VerifyEmailController.php | 5 ++--- .../Middleware/RedirectIfAuthenticated.php | 3 +-- bootstrap/app.php | 10 ++++----- routes/api.php | 2 +- routes/web.php | 21 +++++++++++-------- tests/Feature/Auth/AuthenticationTest.php | 3 +-- tests/Feature/Auth/EmailVerificationTest.php | 3 +-- tests/Feature/Auth/RegistrationTest.php | 3 +-- 13 files changed, 29 insertions(+), 36 deletions(-) diff --git a/app/Http/Controllers/Auth/AuthenticatedSessionController.php b/app/Http/Controllers/Auth/AuthenticatedSessionController.php index 9ac54c7..7a0ef39 100644 --- a/app/Http/Controllers/Auth/AuthenticatedSessionController.php +++ b/app/Http/Controllers/Auth/AuthenticatedSessionController.php @@ -4,7 +4,6 @@ use App\Http\Controllers\Controller; use App\Http\Requests\Auth\LoginRequest; -use App\Providers\RouteServiceProvider; use Illuminate\Contracts\View\View; use Illuminate\Http\RedirectResponse; use Illuminate\Http\Request; @@ -29,7 +28,7 @@ public function store(LoginRequest $request): RedirectResponse $request->session()->regenerate(); - return redirect()->intended(RouteServiceProvider::HOME); + return redirect()->intended(route('home.index', absolute: false)); } /** diff --git a/app/Http/Controllers/Auth/ConfirmablePasswordController.php b/app/Http/Controllers/Auth/ConfirmablePasswordController.php index 3a82caf..ec92ec6 100644 --- a/app/Http/Controllers/Auth/ConfirmablePasswordController.php +++ b/app/Http/Controllers/Auth/ConfirmablePasswordController.php @@ -3,7 +3,6 @@ namespace App\Http\Controllers\Auth; use App\Http\Controllers\Controller; -use App\Providers\RouteServiceProvider; use Illuminate\Contracts\View\View; use Illuminate\Http\RedirectResponse; use Illuminate\Http\Request; @@ -36,6 +35,6 @@ public function store(Request $request): RedirectResponse $request->session()->put('auth.password_confirmed_at', time()); - return redirect()->intended(RouteServiceProvider::HOME); + return redirect()->intended(route('home.index', absolute: false)); } } diff --git a/app/Http/Controllers/Auth/EmailVerificationNotificationController.php b/app/Http/Controllers/Auth/EmailVerificationNotificationController.php index 96ba772..364650a 100644 --- a/app/Http/Controllers/Auth/EmailVerificationNotificationController.php +++ b/app/Http/Controllers/Auth/EmailVerificationNotificationController.php @@ -3,7 +3,6 @@ namespace App\Http\Controllers\Auth; use App\Http\Controllers\Controller; -use App\Providers\RouteServiceProvider; use Illuminate\Http\RedirectResponse; use Illuminate\Http\Request; @@ -15,7 +14,7 @@ class EmailVerificationNotificationController extends Controller public function store(Request $request): RedirectResponse { if ($request->user()->hasVerifiedEmail()) { - return redirect()->intended(RouteServiceProvider::HOME); + return redirect()->intended(route('home.index', absolute: false)); } $request->user()->sendEmailVerificationNotification(); diff --git a/app/Http/Controllers/Auth/EmailVerificationPromptController.php b/app/Http/Controllers/Auth/EmailVerificationPromptController.php index 03201c3..a757d19 100644 --- a/app/Http/Controllers/Auth/EmailVerificationPromptController.php +++ b/app/Http/Controllers/Auth/EmailVerificationPromptController.php @@ -3,7 +3,6 @@ namespace App\Http\Controllers\Auth; use App\Http\Controllers\Controller; -use App\Providers\RouteServiceProvider; use Illuminate\Contracts\View\View; use Illuminate\Http\RedirectResponse; use Illuminate\Http\Request; @@ -16,7 +15,7 @@ class EmailVerificationPromptController extends Controller public function __invoke(Request $request): RedirectResponse|View { return $request->user()->hasVerifiedEmail() - ? redirect()->intended(RouteServiceProvider::HOME) + ? redirect()->intended(route('home.index', absolute: false)) : view('auth.verify-email'); } } diff --git a/app/Http/Controllers/Auth/RegisteredUserController.php b/app/Http/Controllers/Auth/RegisteredUserController.php index 9883120..ec6f8e4 100644 --- a/app/Http/Controllers/Auth/RegisteredUserController.php +++ b/app/Http/Controllers/Auth/RegisteredUserController.php @@ -4,7 +4,6 @@ use App\Http\Controllers\Controller; use App\Models\User; -use App\Providers\RouteServiceProvider; use App\Services\CreateAccount; use Illuminate\Auth\Events\Registered; use Illuminate\Contracts\View\View; @@ -52,6 +51,6 @@ public function store(Request $request): RedirectResponse Auth::login($user); - return redirect(RouteServiceProvider::HOME); + return redirect(route('home.index', absolute: false)); } } diff --git a/app/Http/Controllers/Auth/VerifyEmailController.php b/app/Http/Controllers/Auth/VerifyEmailController.php index e7257df..ca3cbca 100644 --- a/app/Http/Controllers/Auth/VerifyEmailController.php +++ b/app/Http/Controllers/Auth/VerifyEmailController.php @@ -3,7 +3,6 @@ namespace App\Http\Controllers\Auth; use App\Http\Controllers\Controller; -use App\Providers\RouteServiceProvider; use Illuminate\Auth\Events\Verified; use Illuminate\Foundation\Auth\EmailVerificationRequest; use Illuminate\Http\RedirectResponse; @@ -16,13 +15,13 @@ class VerifyEmailController extends Controller public function __invoke(EmailVerificationRequest $request): RedirectResponse { if ($request->user()->hasVerifiedEmail()) { - return redirect()->intended(RouteServiceProvider::HOME . '?verified=1'); + return redirect()->intended(route('home.index', absolute: false) . '?verified=1'); } if ($request->user()->markEmailAsVerified()) { event(new Verified($request->user())); } - return redirect()->intended(RouteServiceProvider::HOME . '?verified=1'); + return redirect()->intended(route('home.index', absolute: false) . '?verified=1'); } } diff --git a/app/Http/Middleware/RedirectIfAuthenticated.php b/app/Http/Middleware/RedirectIfAuthenticated.php index 5847241..831c789 100644 --- a/app/Http/Middleware/RedirectIfAuthenticated.php +++ b/app/Http/Middleware/RedirectIfAuthenticated.php @@ -2,7 +2,6 @@ namespace App\Http\Middleware; -use App\Providers\RouteServiceProvider; use Closure; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; @@ -21,7 +20,7 @@ public function handle(Request $request, Closure $next, string ...$guards): Resp foreach ($guards as $guard) { if (Auth::guard($guard)->check()) { - return redirect(RouteServiceProvider::HOME); + return redirect(route('home.index', absolute: false)); } } diff --git a/bootstrap/app.php b/bootstrap/app.php index 80cbe0d..0082be0 100644 --- a/bootstrap/app.php +++ b/bootstrap/app.php @@ -9,17 +9,17 @@ web: __DIR__ . '/../routes/web.php', commands: __DIR__ . '/../routes/console.php', api: __DIR__ . '/../routes/api.php', - apiPrefix: 'api', health: '/up', ) ->withMiddleware(function (Middleware $middleware) { - $middleware->append(\Monicahq\Cloudflare\Http\Middleware\TrustProxies::class); + $middleware->replace( + \Illuminate\Http\Middleware\TrustProxies::class, + \Monicahq\Cloudflare\Http\Middleware\TrustProxies::class + ); $middleware->web(append: [ \Pirsch\Http\Middleware\TrackPageview::class, ]); - $middleware->api(prepend: [ - \Illuminate\Routing\Middleware\ThrottleRequests::class . ':api', - ]); + $middleware->throttleApi(); }) ->withExceptions(function (Exceptions $exceptions) { // diff --git a/routes/api.php b/routes/api.php index 889937e..a582334 100644 --- a/routes/api.php +++ b/routes/api.php @@ -9,7 +9,7 @@ |-------------------------------------------------------------------------- | | Here is where you can register API routes for your application. These -| routes are loaded by the RouteServiceProvider and all of them will +| routes are loaded by the bootstrap/app.php file and all of them will | be assigned to the "api" middleware group. Make something great! | */ diff --git a/routes/web.php b/routes/web.php index 3839984..b0e3d6f 100644 --- a/routes/web.php +++ b/routes/web.php @@ -19,6 +19,9 @@ use App\Http\Controllers\StoreNoteForNameInListController; use App\Http\Controllers\TermsController; use App\Http\Controllers\UserNameController; +use App\Http\Middleware\CheckLetter; +use App\Http\Middleware\CheckList; +use App\Http\Middleware\CheckName; use Illuminate\Support\Facades\Route; Route::get('partage/{uuid}', [ShareController::class, 'show'])->name('share.show'); @@ -35,19 +38,19 @@ Route::get('prenoms/filles', [FemaleNameController::class, 'index'])->name('name.fille.index'); Route::get('prenoms/mixtes', [MixteNameController::class, 'index'])->name('name.mixte.index'); -Route::middleware(['letter'])->group(function (): void { - Route::get('prenoms/garcons/{letter}', [MaleNameController::class, 'letter'])->name('name.garcon.letter'); - Route::get('prenoms/filles/{letter}', [FemaleNameController::class, 'letter'])->name('name.fille.letter'); - Route::get('prenoms/mixtes/{letter}', [MixteNameController::class, 'letter'])->name('name.mixte.letter'); - Route::get('prenoms/{letter}', [NameController::class, 'letter'])->name('name.letter'); +Route::middleware([CheckLetter::class])->group(function (): void { + Route::get('prenoms/garcons/{letter}', [MaleNameController::class, 'letter'])->where('letter', '[A-Za-z]{1}')->name('name.garcon.letter'); + Route::get('prenoms/filles/{letter}', [FemaleNameController::class, 'letter'])->where('letter', '[A-Za-z]{1}')->name('name.fille.letter'); + Route::get('prenoms/mixtes/{letter}', [MixteNameController::class, 'letter'])->where('letter', '[A-Za-z]{1}')->name('name.mixte.letter'); + Route::get('prenoms/{letter}', [NameController::class, 'letter'])->where('letter', '[A-Za-z]{1}')->name('name.letter'); }); -Route::middleware(['name'])->group(function (): void { +Route::middleware([CheckName::class])->group(function (): void { Route::get('prenoms/{id}/{name}', [NameController::class, 'show'])->name('name.show'); }); Route::middleware(['auth', 'verified'])->group(function (): void { - Route::middleware(['name'])->group(function (): void { + Route::middleware([CheckName::class])->group(function (): void { // set favorites // used in the list of names @@ -68,7 +71,7 @@ Route::get('listes/nouveau', [ListController::class, 'new'])->name('list.new'); Route::post('listes', [ListController::class, 'store'])->name('list.store'); - Route::middleware(['list'])->group(function (): void { + Route::middleware([CheckList::class])->group(function (): void { Route::get('listes/{liste}/edition', [ListController::class, 'edit'])->name('list.edit'); Route::put('listes/{liste}', [ListController::class, 'update'])->name('list.update'); Route::get('listes/{liste}/suppression', [ListController::class, 'delete'])->name('list.delete'); @@ -92,7 +95,7 @@ Route::delete('profil', [ProfileController::class, 'destroy'])->name('profile.destroy'); }); -Route::middleware(['list'])->group(function (): void { +Route::middleware([CheckList::class])->group(function (): void { Route::get('listes/{liste}', [ListController::class, 'show'])->name('list.show'); Route::get('public/listes/{liste}', [PublicListController::class, 'show'])->name('list.public.show'); diff --git a/tests/Feature/Auth/AuthenticationTest.php b/tests/Feature/Auth/AuthenticationTest.php index c5c8ba1..d7dd561 100644 --- a/tests/Feature/Auth/AuthenticationTest.php +++ b/tests/Feature/Auth/AuthenticationTest.php @@ -3,7 +3,6 @@ namespace Tests\Feature\Auth; use App\Models\User; -use App\Providers\RouteServiceProvider; use Illuminate\Foundation\Testing\RefreshDatabase; use Tests\TestCase; @@ -34,7 +33,7 @@ public function users_can_authenticate_using_the_login_screen(): void ]); $this->assertAuthenticated(); - $response->assertRedirect(RouteServiceProvider::HOME); + $response->assertRedirect(route('home.index', absolute: false)); } /** diff --git a/tests/Feature/Auth/EmailVerificationTest.php b/tests/Feature/Auth/EmailVerificationTest.php index ec0b9af..7c73257 100644 --- a/tests/Feature/Auth/EmailVerificationTest.php +++ b/tests/Feature/Auth/EmailVerificationTest.php @@ -3,7 +3,6 @@ namespace Tests\Feature\Auth; use App\Models\User; -use App\Providers\RouteServiceProvider; use Illuminate\Auth\Events\Verified; use Illuminate\Foundation\Testing\RefreshDatabase; use Illuminate\Support\Facades\Event; @@ -49,7 +48,7 @@ public function email_can_be_verified(): void Event::assertDispatched(Verified::class); $this->assertTrue($user->fresh()->hasVerifiedEmail()); - $response->assertRedirect(RouteServiceProvider::HOME . '?verified=1'); + $response->assertRedirect(route('home.index', absolute: false) . '?verified=1'); } /** diff --git a/tests/Feature/Auth/RegistrationTest.php b/tests/Feature/Auth/RegistrationTest.php index 065cb5b..98fd80e 100644 --- a/tests/Feature/Auth/RegistrationTest.php +++ b/tests/Feature/Auth/RegistrationTest.php @@ -2,7 +2,6 @@ namespace Tests\Feature\Auth; -use App\Providers\RouteServiceProvider; use Illuminate\Foundation\Testing\RefreshDatabase; use Tests\TestCase; @@ -32,6 +31,6 @@ public function new_users_can_register(): void ]); $this->assertAuthenticated(); - $response->assertRedirect(RouteServiceProvider::HOME); + $response->assertRedirect(route('home.index', absolute: false)); } }