From 9d5a542a4e1b70ea9c1a094552bca1a637289e91 Mon Sep 17 00:00:00 2001 From: Carl Schwan Date: Thu, 19 May 2022 19:09:12 +0200 Subject: Improve two factor admin settings - Port more of it to vue - Use new nextcloud vue components for the setting section - Add a bit of spacing between the elements Signed-off-by: Carl Schwan --- apps/settings/lib/Settings/Admin/Security.php | 27 +++++++------- apps/settings/src/components/AdminTwoFactor.vue | 42 +++++++++++++--------- .../settings/templates/settings/admin/security.php | 6 +--- .../settings/tests/Settings/Admin/SecurityTest.php | 4 ++- 4 files changed, 43 insertions(+), 36 deletions(-) (limited to 'apps') diff --git a/apps/settings/lib/Settings/Admin/Security.php b/apps/settings/lib/Settings/Admin/Security.php index 2580c0a3d00..f84ef03b61b 100644 --- a/apps/settings/lib/Settings/Admin/Security.php +++ b/apps/settings/lib/Settings/Admin/Security.php @@ -31,30 +31,26 @@ use OCP\AppFramework\Http\TemplateResponse; use OCP\AppFramework\Services\IInitialState; use OCP\Encryption\IManager; use OCP\IUserManager; +use OCP\IURLGenerator; use OCP\Settings\ISettings; class Security implements ISettings { - - /** @var IManager */ - private $manager; - - /** @var IUserManager */ - private $userManager; - - /** @var MandatoryTwoFactor */ - private $mandatoryTwoFactor; - - /** @var IInitialState */ - private $initialState; + private IManager $manager; + private IUserManager $userManager; + private MandatoryTwoFactor $mandatoryTwoFactor; + private IInitialState $initialState; + private IURLGenerator $urlGenerator; public function __construct(IManager $manager, IUserManager $userManager, MandatoryTwoFactor $mandatoryTwoFactor, - IInitialState $initialState) { + IInitialState $initialState, + IURLGenerator $urlGenerator) { $this->manager = $manager; $this->userManager = $userManager; $this->mandatoryTwoFactor = $mandatoryTwoFactor; $this->initialState = $initialState; + $this->urlGenerator = $urlGenerator; } /** @@ -77,6 +73,11 @@ class Security implements ISettings { $this->mandatoryTwoFactor->getState() ); + $this->initialState->provideInitialState( + 'two-factor-admin-doc', + $this->urlGenerator->linkToDocs('admin-2fa') + ); + $parameters = [ // Encryption API 'encryptionEnabled' => $this->manager->isEnabled(), diff --git a/apps/settings/src/components/AdminTwoFactor.vue b/apps/settings/src/components/AdminTwoFactor.vue index bfec05e331b..435348f30ab 100644 --- a/apps/settings/src/components/AdminTwoFactor.vue +++ b/apps/settings/src/components/AdminTwoFactor.vue @@ -1,23 +1,21 @@ - diff --git a/apps/settings/templates/settings/admin/security.php b/apps/settings/templates/settings/admin/security.php index f0689b948af..e285e393e20 100644 --- a/apps/settings/templates/settings/admin/security.php +++ b/apps/settings/templates/settings/admin/security.php @@ -28,11 +28,7 @@ script('settings', 'vue-settings-admin-security'); ?> -
-

t('Two-Factor Authentication'));?>

- -
-
+

t('Server-side encryption')); ?>

diff --git a/apps/settings/tests/Settings/Admin/SecurityTest.php b/apps/settings/tests/Settings/Admin/SecurityTest.php index da4ce62d9cd..8bb330469fb 100644 --- a/apps/settings/tests/Settings/Admin/SecurityTest.php +++ b/apps/settings/tests/Settings/Admin/SecurityTest.php @@ -33,6 +33,7 @@ use OCA\Settings\Settings\Admin\Security; use OCP\AppFramework\Http\TemplateResponse; use OCP\AppFramework\Services\IInitialState; use OCP\IUserManager; +use OCP\IURLGenerator; use PHPUnit\Framework\MockObject\MockObject; use Test\TestCase; @@ -59,7 +60,8 @@ class SecurityTest extends TestCase { $this->manager, $this->userManager, $this->mandatoryTwoFactor, - $this->initialState + $this->initialState, + $this->createMock(IURLGenerator::class) ); } -- cgit v1.2.3