Я использую пакет «jrean / laravel-user-validation». Когда я нажимаю на ссылку с токеном, я хочу перенаправить на мою домашнюю страницу и быть уже зарегистрированным. Как я могу это реализовать? Спасибо)
Laravel: 5,4
Версия пакета: 4,1
Решить эту проблему. Добавить в мой регистр функция (RegisterController) событие:
public function register(VerificationRequest $request)
{
...
event(new Registered($user));
...
}
Сreate слушатель:
<?php
namespace App\Listeners;
use Illuminate\Auth\AuthManager;
use Jrean\UserVerification\Events\UserVerified;
/**
* Class UserVerifiedListener
* @package App\Listeners
*/
class UserVerifiedListener
{
/**
* @var AuthManager
*/
private $auth;
/**
* Create the event listener.
*
* @param AuthManager $auth
*/
public function __construct(AuthManager $auth)
{
$this->auth = $auth;
}
/**
* Handle the event.
*
* @param UserVerified $event
* @return void
*/
public function handle(UserVerified $event)
{
$this->auth->guard()->login($event->user);
}
}
И зарегистрируйте это в:
app/Providers/EventServiceProvider.php
<?php
namespace App\Providers;
use App\Listeners\UserVerifiedListener;
use Illuminate\Support\Facades\Event;
use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider;
use Jrean\UserVerification\Events\UserVerified;
class EventServiceProvider extends ServiceProvider
{
/**
* The event listener mappings for the application.
*
* @var array
*/
protected $listen = [
UserVerified::class => [
UserVerifiedListener::class
],
];
/**
* Register any events for your application.
*
* @return void
*/
public function boot()
{
parent::boot();
//
}
public function register()
{
$this->app->bind(UserVerifiedListener::class, function () {
return new UserVerifiedListener(
$this->app->make('auth')
);
});
}
}
Других решений пока нет …