8000 [9.x] Add passwordTimeout to RequirePassword middleware as a paramete… · laravel/framework@7620a54 · GitHub
[go: up one dir, main page]

Skip to content

Commit 7620a54

Browse files
Alin IonutAlin Musattaylorotwell
authored
[9.x] Add passwordTimeout to RequirePassword middleware as a parameter (#35531)
* add passwordTimeout to RequirePassword middleware as a parameter * Update RequirePassword.php Co-authored-by: Alin Musat <alin@boostit.com> Co-authored-by: Taylor Otwell <taylor@laravel.com>
1 parent a974ad6 commit 7620a54

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

src/Illuminate/Auth/Middleware/RequirePassword.php

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,11 +50,12 @@ public function __construct(ResponseFactory $responseFactory, UrlGenerator $urlG
5050
* @param \Illuminate\Http\Request $request
5151
* @param \Closure $next
5252
* @param string|null $redirectToRoute
53+
* @param int|null $passwordTimeoutSeconds
5354
* @return mixed
5455
*/
55-
public function handle($request, Closure $next, $redirectToRoute = null)
56+
public function handle($request, Closure $next, $redirectToRoute = null, $passwordTimeoutSeconds = null)
5657
{
57-
if ($this->shouldConfirmPassword($request)) {
58+
if ($this->shouldConfirmPassword($request, $passwordTimeoutSeconds)) {
5859
if ($request->expectsJson()) {
5960
return $this->responseFactory->json([
6061
'message' => 'Password confirmation required.',
@@ -73,12 +74,13 @@ public function handle($request, Closure $next, $redirectToRoute = null)
7374
* Determine if the confirmation timeout has expired.
7475
*
7576
* @param \Illuminate\Http\Request $request
77+
* @param int|null $passwordTimeoutSeconds
7678
* @return bool
7779
*/
78-
protected function shouldConfirmPassword($request)
80+
protected function shouldConfirmPassword($request, $passwordTimeoutSeconds = null)
7981
{
8082
$confirmedAt = time() - $request->session()->get('auth.password_confirmed_at', 0);
8183

82-
return $confirmedAt > $this->passwordTimeout;
84+
return $confirmedAt > ($passwordTimeoutSeconds ?? $this->passwordTimeout);
8385
}
8486
}

0 commit comments

Comments
 (0)
0