45 lines
1.5 KiB
PHP
45 lines
1.5 KiB
PHP
<?php
|
|
|
|
use App\Livewire\Actions\Logout;
|
|
use Illuminate\Auth\Events\Verified;
|
|
use Illuminate\Foundation\Auth\EmailVerificationRequest;
|
|
use Illuminate\Support\Facades\Route;
|
|
use Livewire\Volt\Volt;
|
|
|
|
Route::middleware('guest')->group(function () {
|
|
Volt::route('register', 'pages.auth.register')
|
|
->name('register');
|
|
|
|
Volt::route('login', 'pages.auth.login')
|
|
->name('login');
|
|
|
|
Volt::route('forgot-password', 'pages.auth.forgot-password')
|
|
->name('password.request');
|
|
|
|
Volt::route('reset-password/{token}', 'pages.auth.reset-password')
|
|
->name('password.reset');
|
|
});
|
|
|
|
Route::middleware('auth')->group(function () {
|
|
Volt::route('verify-email', 'pages.auth.verify-email')
|
|
->name('verification.notice');
|
|
|
|
Route::get('verify-email/{id}/{hash}', function (EmailVerificationRequest $request) {
|
|
if ($request->user()->hasVerifiedEmail()) {
|
|
return redirect()->intended(route('dashboard', absolute: false).'?verified=1');
|
|
}
|
|
if ($request->user()->markEmailAsVerified()) {
|
|
event(new Verified($request->user()));
|
|
}
|
|
return redirect()->intended(route('dashboard', absolute: false).'?verified=1');
|
|
})->middleware(['signed', 'throttle:6,1'])->name('verification.verify');
|
|
|
|
Volt::route('confirm-password', 'pages.auth.confirm-password')
|
|
->name('password.confirm');
|
|
|
|
Route::post('logout', function (Logout $logout) {
|
|
$logout();
|
|
return redirect()->route('login');
|
|
})->name('logout');
|
|
});
|