diff --git a/backend/app/Http/Controllers/Auth/DeleteUserController.php b/backend/app/Http/Controllers/Auth/DeleteUserController.php new file mode 100644 index 0000000..06376a8 --- /dev/null +++ b/backend/app/Http/Controllers/Auth/DeleteUserController.php @@ -0,0 +1,22 @@ +user()) { + return response(status: 419); + } + + User::destroy($request->user()->id); + + return response()->noContent(); + } +} diff --git a/backend/routes/auth.php b/backend/routes/auth.php index ae6cc20..ce464ea 100644 --- a/backend/routes/auth.php +++ b/backend/routes/auth.php @@ -1,6 +1,7 @@ middleware('guest') - ->name('register'); + ->middleware('guest') + ->name('register'); Route::post('/login', [AuthenticatedSessionController::class, 'store']) - ->middleware('guest') - ->name('login'); + ->middleware('guest') + ->name('login'); Route::post('/forgot-password', [PasswordResetLinkController::class, 'store']) - ->middleware('guest') - ->name('password.email'); + ->middleware('guest') + ->name('password.email'); Route::post('/reset-password', [NewPasswordController::class, 'store']) - ->middleware('guest') - ->name('password.store'); + ->middleware('guest') + ->name('password.store'); Route::get('/verify-email/{id}/{hash}', VerifyEmailController::class) - ->middleware(['auth', 'signed', 'throttle:6,1']) - ->name('verification.verify'); + ->middleware(['auth', 'signed', 'throttle:6,1']) + ->name('verification.verify'); Route::post('/email/verification-notification', [EmailVerificationNotificationController::class, 'store']) - ->middleware(['auth', 'throttle:6,1']) - ->name('verification.send'); + ->middleware(['auth', 'throttle:6,1']) + ->name('verification.send'); Route::post('/logout', [AuthenticatedSessionController::class, 'destroy']) - ->middleware('auth') - ->name('logout'); + ->middleware('auth') + ->name('logout'); + +Route::delete('/user', [DeleteUserController::class, 'destroy']) + ->middleware('auth');