How to run an event or function when a user verifies their account by using a Laravel listener.
Start by creating a listener in Artisan
php artisan make:listener SendVerifiedWelcomeMail
You can find this file in app/Listeners
.
Inside SendVerifiedWelcomeMail.php
you will find a function called handle()
this function will be run when a user verifies their account.
public function handle(Verified $event) { Mail::to($event->user->email)->send(new Welcome()); }
Above is a sample send mail call.
Finally, the most important part is to register this listener in the app/Providers/EventServiceProvider.php
file in the $listen
array:
Verified::class => [ SendVerifiedWelcomeMail::class ],
Now when Verified gets broadcast (automatically) SendVerifiedWelcomeMail will be called upon.