diff --git a/apps/settings/src/components/Encryption.vue b/apps/settings/src/components/Encryption/EncryptionSettings.vue similarity index 55% rename from apps/settings/src/components/Encryption.vue rename to apps/settings/src/components/Encryption/EncryptionSettings.vue index 1fa1cd2b65023..f4cc1348f00d3 100644 --- a/apps/settings/src/components/Encryption.vue +++ b/apps/settings/src/components/Encryption/EncryptionSettings.vue @@ -7,32 +7,30 @@ - +

+ {{ textExistingFilesNotEncrypted }} + {{ t('settings', 'To encrypt all existing files run this OCC command:') }} +

+ +
occ encryption:encrypt-all
+
+ + + {{ t('settings', 'Enable server-side encryption') }} +

+ {{ t('settings', 'Disabling server side encryption is only possible using OCC, please refer to the documentation.') }} +

- - -
+ - diff --git a/apps/settings/src/components/Encryption/EncryptionWarningDialog.vue b/apps/settings/src/components/Encryption/EncryptionWarningDialog.vue new file mode 100644 index 0000000000000..c45268e81eefd --- /dev/null +++ b/apps/settings/src/components/Encryption/EncryptionWarningDialog.vue @@ -0,0 +1,88 @@ + + + + + + + diff --git a/apps/settings/src/components/Encryption/sharedTexts.ts b/apps/settings/src/components/Encryption/sharedTexts.ts new file mode 100644 index 0000000000000..94d23be07f231 --- /dev/null +++ b/apps/settings/src/components/Encryption/sharedTexts.ts @@ -0,0 +1,7 @@ +/*! + * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ +import { t } from '@nextcloud/l10n' + +export const textExistingFilesNotEncrypted = t('settings', 'For performance reasons, when you enable encryption on a Nextcloud server only new and changed files are encrypted.') diff --git a/apps/settings/src/main-admin-security.js b/apps/settings/src/main-admin-security.js index 2893c7fa0485b..5248ff3b5fe20 100644 --- a/apps/settings/src/main-admin-security.js +++ b/apps/settings/src/main-admin-security.js @@ -7,7 +7,7 @@ import { loadState } from '@nextcloud/initial-state' import Vue from 'vue' import AdminTwoFactor from './components/AdminTwoFactor.vue' -import Encryption from './components/Encryption.vue' +import EncryptionSettings from './components/Encryption/EncryptionSettings.vue' import store from './store/admin-security.js' // eslint-disable-next-line camelcase @@ -28,5 +28,5 @@ new View({ store, }).$mount('#two-factor-auth-settings') -const EncryptionView = Vue.extend(Encryption) +const EncryptionView = Vue.extend(EncryptionSettings) new EncryptionView().$mount('#vue-admin-encryption')