Custom redirect after login from livewire component
Hello everyone!
I want to redirect to the right panel based on user role.
I have two panels: -- Role1Panel -- Role2Panel
and i have three type of users:
-- admin user: he have to redirect to Role1Panel but he can switch the panel (i use Panel Switch by Bezhan Salleh) -- role1 user: he have to redirect to Role1Panel and he cannot switch the panel -- role2 user: he have to redirect to Role2Panel and he cannot switch the panel
Each users have a panel column for identify own panel.
I want the"/login" route, i don't need the default login routes of both panels, so i create a Login Livewire component that it use "cleaned" authenticate function, copied by Filament Login page.
The first time login everything works but from there on I am always redirected to the panel of the first login and i don't know why.
This is my authenticate function:
public function authenticate(){ if (! Filament::auth()->attempt(['email' => $this->email, 'password' => $this->password], true)) { $this->throwFailureValidationException(); }
session()->regenerate();
return app(LoginResponse::class); }
And my LoginResponse class:
namespace App\Http\Responses; use Filament\Http\Responses\Auth\Contracts\LoginResponse as LoginResponseContract; class LoginResponse implements LoginResponseContract {