Modules/User/Observers/v1/UserObserver.php
class UserObserver{ public function creating(User $user) { if ($user->role == null) { $role = Role::getName('writer')->first(); $user->role_id = $role->id; } } public function created(User $user) { $user->statuses()->create([ 'name' => 'pending', 'reason' => 'needs verification' ]); if (App::environment('local')) { // verify with mobile or mail(mobile is priority) $verify = new Verify; $verify->verify(new EmailVerify($user->withoutRelations())); } }}