From d85a9588d309385b7d33579e70401a36de4d5377 Mon Sep 17 00:00:00 2001 From: "Phil E. Taylor" Date: Sun, 28 Mar 2021 17:45:02 +0100 Subject: [PATCH 1/3] after authentication failure, return to the login page with a get Signed-off-by: Phil E. Taylor --- .../com_login/src/Controller/DisplayController.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/administrator/components/com_login/src/Controller/DisplayController.php b/administrator/components/com_login/src/Controller/DisplayController.php index 6bfb271180718..ac47103212c27 100644 --- a/administrator/components/com_login/src/Controller/DisplayController.php +++ b/administrator/components/com_login/src/Controller/DisplayController.php @@ -84,7 +84,7 @@ public function login() // Only redirect to an internal URL. if (Uri::isInternal($return)) { - // If &tmpl=component - redirect to index.php + // If &tmpl=component don't redirect to index.php if (strpos($return, 'tmpl=component') === false) { $app->redirect($return); @@ -95,8 +95,10 @@ public function login() } } } - - $this->display(); + else + { + $app->redirect('index.php'); + } } /** From 631913146bb640f5e3e8a8f45f536b14ee4e069f Mon Sep 17 00:00:00 2001 From: "Phil E. Taylor" Date: Sun, 28 Mar 2021 17:56:19 +0100 Subject: [PATCH 2/3] Simplify the code nesting Signed-off-by: Phil E. Taylor --- .../src/Controller/DisplayController.php | 26 +++++++------------ 1 file changed, 9 insertions(+), 17 deletions(-) diff --git a/administrator/components/com_login/src/Controller/DisplayController.php b/administrator/components/com_login/src/Controller/DisplayController.php index ac47103212c27..0dfcd3ff74aaa 100644 --- a/administrator/components/com_login/src/Controller/DisplayController.php +++ b/administrator/components/com_login/src/Controller/DisplayController.php @@ -77,27 +77,19 @@ public function login() $credentials = $model->getState('credentials'); $return = $model->getState('return'); - $result = $app->login($credentials, array('action' => 'core.login.admin')); + $app->login($credentials, array('action' => 'core.login.admin')); - if ($result && !($result instanceof \Exception)) + if (Uri::isInternal($return)) { - // Only redirect to an internal URL. - if (Uri::isInternal($return)) + // If &tmpl=component don't redirect to index.php + if (strpos($return, 'tmpl=component') === false) { - // If &tmpl=component don't redirect to index.php - if (strpos($return, 'tmpl=component') === false) - { - $app->redirect($return); - } - else - { - $app->redirect('index.php'); - } + $app->redirect($return); + } + else + { + $app->redirect('index.php'); } - } - else - { - $app->redirect('index.php'); } } From 5fe0333f498dde7e87a44a97498b35164d29daa4 Mon Sep 17 00:00:00 2001 From: "Phil E. Taylor" Date: Sun, 28 Mar 2021 17:58:11 +0100 Subject: [PATCH 3/3] Further simplify the code Signed-off-by: Phil E. Taylor --- .../src/Controller/DisplayController.php | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/administrator/components/com_login/src/Controller/DisplayController.php b/administrator/components/com_login/src/Controller/DisplayController.php index 0dfcd3ff74aaa..db93e6ebdb584 100644 --- a/administrator/components/com_login/src/Controller/DisplayController.php +++ b/administrator/components/com_login/src/Controller/DisplayController.php @@ -79,17 +79,13 @@ public function login() $app->login($credentials, array('action' => 'core.login.admin')); - if (Uri::isInternal($return)) + if (Uri::isInternal($return) && strpos($return, 'tmpl=component') === false) { - // If &tmpl=component don't redirect to index.php - if (strpos($return, 'tmpl=component') === false) - { - $app->redirect($return); - } - else - { - $app->redirect('index.php'); - } + $app->redirect($return); + } + else + { + $app->redirect('index.php'); } }