From 09c4a83debb9a7d3773903b2755984bbce7e0b20 Mon Sep 17 00:00:00 2001 From: Yoga Pangestu Date: Mon, 2 Mar 2026 10:15:20 +0700 Subject: [PATCH] feat: implement must verify email --- app/Filament/Pages/Auth/Registration.php | 2 ++ routes/web.php | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/app/Filament/Pages/Auth/Registration.php b/app/Filament/Pages/Auth/Registration.php index 3e0a879..12386ac 100644 --- a/app/Filament/Pages/Auth/Registration.php +++ b/app/Filament/Pages/Auth/Registration.php @@ -71,6 +71,8 @@ protected function handleRegistration(array $data): Model $user = $this->getUserModel()::create($data); $user->assignRole('Perusahaan'); + $user->sendEmailVerificationNotification(); + CheerfulNotification::success( 'Selamat Datang! 👋🎉', "Halooo, {$user->name}!, terima kasih sudah bergabung! Akunmu berhasil dibuat. Silakan verifikasi alamat surelmu! 🚀✨" diff --git a/routes/web.php b/routes/web.php index 160b133..c4d4bf1 100644 --- a/routes/web.php +++ b/routes/web.php @@ -7,6 +7,8 @@ use App\Livewire\Home\Index; use App\Livewire\Home\News\Index as NewsIndex; use App\Livewire\Home\News\Show as NewsShow; +use Illuminate\Foundation\Auth\EmailVerificationRequest; +use Illuminate\Http\Request; use Illuminate\Support\Facades\Route; Route::middleware([TrackVisitor::class])->group(function () { @@ -23,3 +25,19 @@ Route::get('/contact-us', ContactUs::class)->name('contact-us'); }); + +Route::get('/email/verify', function () { + return view('auth.verify-email'); +})->middleware('auth')->name('verification.notice'); + +Route::get('/email/verify/{id}/{hash}', function (EmailVerificationRequest $request) { + $request->fulfill(); + + return redirect('/home'); +})->middleware(['auth', 'signed'])->name('verification.verify'); + +Route::post('/email/verification-notification', function (Request $request) { + $request->user()->sendEmailVerificationNotification(); + + return back()->with('message', 'Verification link sent!'); +})->middleware(['auth', 'throttle:6,1'])->name('verification.send');