From eeb60fb5bbe7a2889fe1be909e004e4e51dbef8d Mon Sep 17 00:00:00 2001 From: Steve Boyd Date: Thu, 20 Feb 2025 14:41:45 +1300 Subject: [PATCH 1/2] DEP Add conflict with older versions of silverstripe/admin --- composer.json | 1 + 1 file changed, 1 insertion(+) diff --git a/composer.json b/composer.json index 42aa7d2..9e4d883 100644 --- a/composer.json +++ b/composer.json @@ -40,6 +40,7 @@ "phpstan/extension-installer": "^1.3" }, "conflict": { + "silverstripe/admin": "<2.4.0", "silverstripe/subsites": "<2.2.2 || 2.3.0", "silverstripe/webauthn-authenticator": "<4.5.0" }, From c03941773707dbf90a9fdcb4c303e5f80e5d206d Mon Sep 17 00:00:00 2001 From: Steve Boyd Date: Thu, 20 Feb 2025 15:36:19 +1300 Subject: [PATCH 2/2] ENH Use interface defined method --- src/Authenticator/LoginHandler.php | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/Authenticator/LoginHandler.php b/src/Authenticator/LoginHandler.php index f752db4..5bad53c 100644 --- a/src/Authenticator/LoginHandler.php +++ b/src/Authenticator/LoginHandler.php @@ -579,10 +579,7 @@ protected function doPerformLogin(HTTPRequest $request, Member $member) { // Deactivate sudo mode that was activated in doLogin() $service = $this->getSudoModeService(); - // Check if the service has a deactivate method, because it is not defined on the interface - if (ClassInfo::hasMethod($service, 'deactivate')) { - call_user_func([$service, 'deactivate'], $this->getRequest()->getSession()); - } + $service->deactivate($request->getSession()); // Load the previously stored data from session and perform the login using it... $data = $request->getSession()->get(static::SESSION_KEY . '.additionalData') ?: [];