Redirect to page after login? #14280
Answered
by
leandrocfe
stojankukrika
asked this question in
Help
-
PackageForm builder Package Versionv3.0.0 How can we help you?Is there any option to redirect the user to a specific page after login(every time) for one of the roles? |
Beta Was this translation helpful? Give feedback.
Answered by
leandrocfe
Sep 18, 2024
Replies: 1 comment 1 reply
-
|
Create a custom class (app/Http/Responses/CustomLoginResponse.php) <?php
namespace App\Http\Responses;
use Filament\Http\Responses\Auth\Contracts\LoginResponse;
use Illuminate\Http\RedirectResponse;
use Livewire\Features\SupportRedirects\Redirector;
class CustomLoginResponse implements LoginResponse
{
public function toResponse($request): RedirectResponse|Redirector
{
$user = auth()->user();
return redirect()->intended(match (true) {
default => filament()->getUrl(),
$user->hasRole('buyer') => route('listing')
});
}
}Then, add in your PanelProvider use App\Http\Responses\CustomLoginResponse;
use Filament\Http\Responses\Auth\LoginResponse;
...
$panel
->bootUsing(function () {
app()->bind(LoginResponse::class, CustomLoginResponse::class);
})
...You can use the same approach to customize the |
Beta Was this translation helpful? Give feedback.
1 reply
Answer selected by
leandrocfe
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Create a custom class (app/Http/Responses/CustomLoginResponse.php)
Then, add in your PanelProvider