[Bug]: There is no way to use forgot password / reset password features when filament has a panel with login
Closed this issue · 3 comments
What happened?
With a panel like this:
$panel
->default()
->id('app')
->path('app')
->login()
->registration()
->passwordReset()
->emailVerification()
By default the package rediret jetstream auth pages to the panel pages:
Route::redirect('/login', '/app/login')->name('login');
Route::redirect('/register', '/app/register')->name('register');
Route::redirect('/dashboard', '/app')->name('dashboard');
It works for GET routes, but did not work for Reset Password routes
I tried by adding to the web.php file the routes, but it did not work
Route::middleware('guest')->group(function () {
Route::get('/app/reset-password/{token}', [NewPasswordController::class, 'create'])
->name('password.reset');
Route::post('/app/reset-password', [NewPasswordController::class, 'store'])
->name('password.store');
});
How to reproduce the bug
Install Filament with a panel id and path app
, then install the filament jetstream package and try to use forgot password feature
Package Version
2
PHP Version
8.2
Laravel Version
11
Which operating systems does with happen with?
No response
Notes
I tried in different ways, I was able to track changes to: namespace Filament\Pages\Auth\PasswordReset\RequestPasswordReset
in line 72 I found that the Notification builds by default the forgot password with Filament, the issue is that the base notification that is Illuminate\Auth\Notifications\ResetPassword
uses a predefined named route and here I think that is the issue.
Hi @stephenjude thanks I create a new project, but now I test the forgot password from filament first and then installed the package, I found that as Laravel 11 set by default in the .env
file:
QUEUE_CONNECTION=database
Then it works, but it requires to run queues, in this case I change it to:
QUEUE_CONNECTION=sync
And it works at the moment, then I try to install your jetstream package and it works like a charm, just to check I also create another panel so I have app
and admin
panels and in both cases everything works fine.
Congrats for the package, as far as I can dive into the code I found that you rely authentication features in filament and set jetstream for all the features internally, overriding the files that makes all the jetstream features available for a filament app, thanks for your great package, I also try to set both panels with jetstream copying the configuration from the panel that uses filament to other panel and all works.
Thanks, sorry for adding a unexisting issue
You are welcome.