summaryrefslogtreecommitdiff
path: root/app/Http/RequestHandlers/LoginAction.php
diff options
context:
space:
mode:
authorGreg Roach <fisharebest@webtrees.net>2019-10-27 12:36:19 +0000
committerGreg Roach <fisharebest@webtrees.net>2019-10-27 12:36:19 +0000
commit71359d063ab70c24ff9a63d614303d749ea3653f (patch)
treed24b3d6b56f8c95275325161cb3edf27b52055af /app/Http/RequestHandlers/LoginAction.php
parentb089a1f5ffcc575b43f50f01d25b2df4fb472296 (diff)
downloadwebtrees-71359d063ab70c24ff9a63d614303d749ea3653f.tar.gz
webtrees-71359d063ab70c24ff9a63d614303d749ea3653f.tar.bz2
webtrees-71359d063ab70c24ff9a63d614303d749ea3653f.zip
Fix: #2672 - default redirect after login
Diffstat (limited to 'app/Http/RequestHandlers/LoginAction.php')
-rw-r--r--app/Http/RequestHandlers/LoginAction.php10
1 files changed, 6 insertions, 4 deletions
diff --git a/app/Http/RequestHandlers/LoginAction.php b/app/Http/RequestHandlers/LoginAction.php
index 124d870525..e3e1c4d332 100644
--- a/app/Http/RequestHandlers/LoginAction.php
+++ b/app/Http/RequestHandlers/LoginAction.php
@@ -68,9 +68,9 @@ class LoginAction extends AbstractBaseController
public function handle(ServerRequestInterface $request): ResponseInterface
{
$tree = $request->getAttribute('tree');
- $username = $request->getParsedBody()['username'] ?? '';
- $password = $request->getParsedBody()['password'] ?? '';
- $url = $request->getParsedBody()['url'] ?? route(HomePage::class);
+ $username = $request->getParsedBody()['username'];
+ $password = $request->getParsedBody()['password'];
+ $url = $request->getParsedBody()['url'];
try {
$this->doLogin($username, $password);
@@ -80,6 +80,8 @@ class LoginAction extends AbstractBaseController
}
// Redirect to the target URL
+ $url = $url ?: route(HomePage::class);
+
return redirect($url);
} catch (Exception $ex) {
// Failed to log in.
@@ -104,7 +106,7 @@ class LoginAction extends AbstractBaseController
*/
private function doLogin(string $username, string $password): void
{
- if (!$_COOKIE) {
+ if ($_COOKIE === []) {
Log::addAuthenticationLog('Login failed (no session cookies): ' . $username);
throw new Exception(I18N::translate('You cannot sign in because your browser does not accept cookies.'));
}