Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| cf5d107fd5 | |||
| 148d85121a |
@@ -47,6 +47,35 @@ class ServicesProvider
|
|||||||
return $classMapper;
|
return $classMapper;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns a callback that forwards to dashboard if user is already logged in.
|
||||||
|
*
|
||||||
|
* @return callable
|
||||||
|
*/
|
||||||
|
$container['redirect.onAlreadyLoggedIn'] = function ($c) {
|
||||||
|
/*
|
||||||
|
* This method is invoked when a user attempts to perform certain public actions when they are already logged in.
|
||||||
|
*
|
||||||
|
* @todo Forward to user's landing page or last visited page
|
||||||
|
* @param \Psr\Http\Message\ServerRequestInterface $request
|
||||||
|
* @param \Psr\Http\Message\ResponseInterface $response
|
||||||
|
* @param array $args
|
||||||
|
* @return \Psr\Http\Message\ResponseInterface
|
||||||
|
*/
|
||||||
|
return function (Request $request, Response $response, array $args) use ($c) {
|
||||||
|
/** @var \UserFrosting\Sprinkle\Account\Authorize\AuthorizationManager */
|
||||||
|
$authorizer = $c->authorizer;
|
||||||
|
|
||||||
|
$currentUser = $c->authenticator->user();
|
||||||
|
|
||||||
|
if ($authorizer->checkAccess($currentUser, 'uri_dashboard')) {
|
||||||
|
return $response->withRedirect($c->router->pathFor('dashboard'));
|
||||||
|
} else {
|
||||||
|
return $response->withRedirect($c->router->pathFor('index'));
|
||||||
|
}
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Returns a callback that handles setting the `UF-Redirect` header after a successful login.
|
* Returns a callback that handles setting the `UF-Redirect` header after a successful login.
|
||||||
*
|
*
|
||||||
|
|||||||
Reference in New Issue
Block a user