aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files_external
diff options
context:
space:
mode:
Diffstat (limited to 'apps/files_external')
-rw-r--r--apps/files_external/l10n/uk.js14
-rw-r--r--apps/files_external/l10n/uk.json14
-rw-r--r--apps/files_external/lib/Command/Verify.php1
-rw-r--r--apps/files_external/lib/Controller/GlobalStoragesController.php4
-rw-r--r--apps/files_external/lib/Controller/StoragesController.php10
-rw-r--r--apps/files_external/lib/Controller/UserGlobalStoragesController.php9
-rw-r--r--apps/files_external/lib/Controller/UserStoragesController.php8
-rw-r--r--apps/files_external/lib/MountConfig.php4
-rw-r--r--apps/files_external/src/init.ts2
9 files changed, 41 insertions, 25 deletions
diff --git a/apps/files_external/l10n/uk.js b/apps/files_external/l10n/uk.js
index f697df74fcb..36ca4ecc62a 100644
--- a/apps/files_external/l10n/uk.js
+++ b/apps/files_external/l10n/uk.js
@@ -64,6 +64,7 @@ OC.L10N.register(
"Enable Path Style" : "Включити стиль шляху",
"Legacy (v2) authentication" : "Застарілий метод авторизації (v2) ",
"Enable multipart copy" : "Дозволити множинне копіювання",
+ "SSE-C encryption key" : "Ключ шифрування SSE-C",
"WebDAV" : "WebDAV",
"URL" : "URL",
"Remote subfolder" : "Віддалений підкаталог",
@@ -83,6 +84,7 @@ OC.L10N.register(
"Case sensitive file system" : "Файлова система, чутлива до регістру символів",
"Disabling it will allow to use a case insensitive file system, but comes with a performance penalty" : "Вимкнення цього параметра дозволить використовувати файлову систему, нечутливу до регістру, але це також призведе до зниження продуктивності",
"Verify ACL access when listing files" : "Перевірте доступ до ACL під час переліку файлів",
+ "Check the ACL's of each file or folder inside a directory to filter out items where the account has no read permissions, comes with a performance penalty" : "Перевірте ACL для кожного файлу або папки в каталозі, щоб відфільтрувати елементи, на які обліковий запис не має дозволів на читання, що призводить до зниження продуктивності",
"Timeout" : "Час вичерпано",
"SMB/CIFS using OC login" : "SMB/CIFS з використанням входу OC",
"Login as share" : "Увійти під спільним доступом",
@@ -95,10 +97,18 @@ OC.L10N.register(
"External storage" : "Зовнішнє сховище",
"External storage support" : "Підтримка зовнішнього сховища",
"Adds basic external storage support" : "Додає базову підтримку зовнішньої пам’яті",
+ "This application enables administrators to configure connections to external storage providers, such as FTP servers, S3 or SWIFT object stores, other Nextcloud servers, WebDAV servers, and more. Administration can choose which types of storage to enable and can mount these storage locations for an account, a group, or the entire system. Users will see a new folder appear in their root Nextcloud directory, which they can access and use like any other Nextcloud folder. External storage also allows people to share files stored in these external locations. In these cases, the credentials for the owner of the file are used when the recipient requests the file from external storage, thereby ensuring that the recipient can access the shared file.\n\nExternal storage can be configured using the GUI or at the command line. This second option provides the administration with more flexibility for configuring bulk external storage mounts and setting mount priorities. More information is available in the external storage GUI documentation and the external storage Configuration File documentation." : "Ця програма дозволяє адміністраторам налаштовувати підключення до зовнішніх сховищ, таких як FTP-сервери, сховища об'єктів S3 або SWIFT, інші сервери Nextcloud, WebDAV-сервери тощо. Адміністрація може вибирати, які типи сховищ увімкнути, і може монтувати ці сховища для облікового запису, групи або всієї системи. Користувачі побачать нову папку в кореневому каталозі Nextcloud, до якої вони зможуть отримати доступ і використовувати її як будь-яку іншу папку Nextcloud. Зовнішнє сховище також дозволяє користувачам ділитися файлами, що зберігаються в цих зовнішніх сховищах. У цих випадках облікові дані власника файлу використовуються, коли одержувач запитує файл із зовнішнього сховища, таким чином гарантуючи, що одержувач зможе отримати доступ до файлу, до якого надано спільний доступ.\n\nЗовнішнє сховище можна налаштувати за допомогою графічного інтерфейсу або командного рядка. Другий варіант надає адміністратору більше можливостей для налаштування масового монтування зовнішнього сховища і встановлення пріоритетів монтування. Докладнішу інформацію можна знайти у документації до графічного інтерфейсу зовнішнього сховища та документації до файлу конфігурації зовнішнього сховища.",
"Confirm" : "Підтвердити",
+ "Storage credentials" : "Облікові дані для зберігання",
+ "To access the storage, you need to provide the authentication credentials." : "Щоб отримати доступ до сховища, вам потрібно надати облікові дані для автентифікації.",
+ "Enter the storage login" : "Введіть логін до сховища",
+ "Enter the storage password" : "Введіть пароль до сховища",
"Unable to update this external storage config. {statusMessage}" : "Не вдалося оновити конфігурацію цього зовнішнього сховища. {statusMessage}",
"New configuration successfully saved" : "Нову конфігурацію успішно збережено",
"Enter missing credentials" : "Зазначте відсутні дані авторизації",
+ "Credentials successfully set" : "Облікові дані успішно встановлено",
+ "Error while setting credentials: {error}" : "Помилка під час встановлення облікових даних: {error}",
+ "Checking storage …" : "Перевірка сховища ...",
"There was an error with this external storage." : "З цим зовнішнім сховищем виникла помилка.",
"We were unable to check the external storage {basename}" : "Нам не вдалося перевірити зовнішнє сховище {basename}",
"Examine this faulty external storage configuration" : "Перевірте цю несправну конфігурацію зовнішнього сховища",
@@ -125,6 +135,7 @@ OC.L10N.register(
"Once every direct access" : "Один раз при кожному прямому доступі",
"Read only" : "Тільки читання",
"Disconnect" : "Від'єднати",
+ "Unknown backend: {backendName}" : "Невідомий бекенд: {backendName}",
"Admin defined" : "Визначено адміністратором",
"Automatic status checking is disabled due to the large number of configured storages, click to check status" : "Автоматична перевірка статусу вимкнена через велику кількість налаштованих сховищ, натисніть, щоб перевірити статус",
"Are you sure you want to disconnect this external storage? It will make the storage unavailable in Nextcloud and will lead to a deletion of these files and folders on any sync client that is currently connected but will not delete any files and folders on the external storage itself." : "Ви впевнені, що бажаєте від’єднати це зовнішнє сховище? Це призведе до того, що сховище стане недоступним у хмарі Nextcloud, а також вилучить файли та каталоги на клієнтських пристроях, які наразі синхронізуються з хмарою. Файли та каталоги у зовнішньому сховищі не буде вилучено.",
@@ -133,8 +144,11 @@ OC.L10N.register(
"Saved" : "Збережено",
"Saving …" : "Збереження …",
"Save" : "Зберегти",
+ "Failed to save global credentials" : "Не вдалося зберегти глобальні облікові дані",
+ "Failed to save global credentials: {message}" : "Не вдалося зберегти глобальні облікові дані: {повідомлення}",
"No external storage configured or you don't have the permission to configure them" : "Зовнішнє сховище не налаштовано або ви не маєте дозволу на їх налаштування",
"Open documentation" : "Відкрити документацію",
+ "External storage enables you to mount external storage services and devices as secondary Nextcloud storage devices. You may also allow people to mount their own external storage services." : "Зовнішнє сховище дає змогу підключати зовнішні сервіси та пристрої для зберігання даних як вторинні пристрої Nextcloud. Ви також можете дозволити користувачам монтувати власні зовнішні сховища.",
"Folder name" : "Назва каталогу",
"Authentication" : "Авторизація",
"Configuration" : "Налаштування",
diff --git a/apps/files_external/l10n/uk.json b/apps/files_external/l10n/uk.json
index a650d9d93ce..6bed2dc94c7 100644
--- a/apps/files_external/l10n/uk.json
+++ b/apps/files_external/l10n/uk.json
@@ -62,6 +62,7 @@
"Enable Path Style" : "Включити стиль шляху",
"Legacy (v2) authentication" : "Застарілий метод авторизації (v2) ",
"Enable multipart copy" : "Дозволити множинне копіювання",
+ "SSE-C encryption key" : "Ключ шифрування SSE-C",
"WebDAV" : "WebDAV",
"URL" : "URL",
"Remote subfolder" : "Віддалений підкаталог",
@@ -81,6 +82,7 @@
"Case sensitive file system" : "Файлова система, чутлива до регістру символів",
"Disabling it will allow to use a case insensitive file system, but comes with a performance penalty" : "Вимкнення цього параметра дозволить використовувати файлову систему, нечутливу до регістру, але це також призведе до зниження продуктивності",
"Verify ACL access when listing files" : "Перевірте доступ до ACL під час переліку файлів",
+ "Check the ACL's of each file or folder inside a directory to filter out items where the account has no read permissions, comes with a performance penalty" : "Перевірте ACL для кожного файлу або папки в каталозі, щоб відфільтрувати елементи, на які обліковий запис не має дозволів на читання, що призводить до зниження продуктивності",
"Timeout" : "Час вичерпано",
"SMB/CIFS using OC login" : "SMB/CIFS з використанням входу OC",
"Login as share" : "Увійти під спільним доступом",
@@ -93,10 +95,18 @@
"External storage" : "Зовнішнє сховище",
"External storage support" : "Підтримка зовнішнього сховища",
"Adds basic external storage support" : "Додає базову підтримку зовнішньої пам’яті",
+ "This application enables administrators to configure connections to external storage providers, such as FTP servers, S3 or SWIFT object stores, other Nextcloud servers, WebDAV servers, and more. Administration can choose which types of storage to enable and can mount these storage locations for an account, a group, or the entire system. Users will see a new folder appear in their root Nextcloud directory, which they can access and use like any other Nextcloud folder. External storage also allows people to share files stored in these external locations. In these cases, the credentials for the owner of the file are used when the recipient requests the file from external storage, thereby ensuring that the recipient can access the shared file.\n\nExternal storage can be configured using the GUI or at the command line. This second option provides the administration with more flexibility for configuring bulk external storage mounts and setting mount priorities. More information is available in the external storage GUI documentation and the external storage Configuration File documentation." : "Ця програма дозволяє адміністраторам налаштовувати підключення до зовнішніх сховищ, таких як FTP-сервери, сховища об'єктів S3 або SWIFT, інші сервери Nextcloud, WebDAV-сервери тощо. Адміністрація може вибирати, які типи сховищ увімкнути, і може монтувати ці сховища для облікового запису, групи або всієї системи. Користувачі побачать нову папку в кореневому каталозі Nextcloud, до якої вони зможуть отримати доступ і використовувати її як будь-яку іншу папку Nextcloud. Зовнішнє сховище також дозволяє користувачам ділитися файлами, що зберігаються в цих зовнішніх сховищах. У цих випадках облікові дані власника файлу використовуються, коли одержувач запитує файл із зовнішнього сховища, таким чином гарантуючи, що одержувач зможе отримати доступ до файлу, до якого надано спільний доступ.\n\nЗовнішнє сховище можна налаштувати за допомогою графічного інтерфейсу або командного рядка. Другий варіант надає адміністратору більше можливостей для налаштування масового монтування зовнішнього сховища і встановлення пріоритетів монтування. Докладнішу інформацію можна знайти у документації до графічного інтерфейсу зовнішнього сховища та документації до файлу конфігурації зовнішнього сховища.",
"Confirm" : "Підтвердити",
+ "Storage credentials" : "Облікові дані для зберігання",
+ "To access the storage, you need to provide the authentication credentials." : "Щоб отримати доступ до сховища, вам потрібно надати облікові дані для автентифікації.",
+ "Enter the storage login" : "Введіть логін до сховища",
+ "Enter the storage password" : "Введіть пароль до сховища",
"Unable to update this external storage config. {statusMessage}" : "Не вдалося оновити конфігурацію цього зовнішнього сховища. {statusMessage}",
"New configuration successfully saved" : "Нову конфігурацію успішно збережено",
"Enter missing credentials" : "Зазначте відсутні дані авторизації",
+ "Credentials successfully set" : "Облікові дані успішно встановлено",
+ "Error while setting credentials: {error}" : "Помилка під час встановлення облікових даних: {error}",
+ "Checking storage …" : "Перевірка сховища ...",
"There was an error with this external storage." : "З цим зовнішнім сховищем виникла помилка.",
"We were unable to check the external storage {basename}" : "Нам не вдалося перевірити зовнішнє сховище {basename}",
"Examine this faulty external storage configuration" : "Перевірте цю несправну конфігурацію зовнішнього сховища",
@@ -123,6 +133,7 @@
"Once every direct access" : "Один раз при кожному прямому доступі",
"Read only" : "Тільки читання",
"Disconnect" : "Від'єднати",
+ "Unknown backend: {backendName}" : "Невідомий бекенд: {backendName}",
"Admin defined" : "Визначено адміністратором",
"Automatic status checking is disabled due to the large number of configured storages, click to check status" : "Автоматична перевірка статусу вимкнена через велику кількість налаштованих сховищ, натисніть, щоб перевірити статус",
"Are you sure you want to disconnect this external storage? It will make the storage unavailable in Nextcloud and will lead to a deletion of these files and folders on any sync client that is currently connected but will not delete any files and folders on the external storage itself." : "Ви впевнені, що бажаєте від’єднати це зовнішнє сховище? Це призведе до того, що сховище стане недоступним у хмарі Nextcloud, а також вилучить файли та каталоги на клієнтських пристроях, які наразі синхронізуються з хмарою. Файли та каталоги у зовнішньому сховищі не буде вилучено.",
@@ -131,8 +142,11 @@
"Saved" : "Збережено",
"Saving …" : "Збереження …",
"Save" : "Зберегти",
+ "Failed to save global credentials" : "Не вдалося зберегти глобальні облікові дані",
+ "Failed to save global credentials: {message}" : "Не вдалося зберегти глобальні облікові дані: {повідомлення}",
"No external storage configured or you don't have the permission to configure them" : "Зовнішнє сховище не налаштовано або ви не маєте дозволу на їх налаштування",
"Open documentation" : "Відкрити документацію",
+ "External storage enables you to mount external storage services and devices as secondary Nextcloud storage devices. You may also allow people to mount their own external storage services." : "Зовнішнє сховище дає змогу підключати зовнішні сервіси та пристрої для зберігання даних як вторинні пристрої Nextcloud. Ви також можете дозволити користувачам монтувати власні зовнішні сховища.",
"Folder name" : "Назва каталогу",
"Authentication" : "Авторизація",
"Configuration" : "Налаштування",
diff --git a/apps/files_external/lib/Command/Verify.php b/apps/files_external/lib/Command/Verify.php
index 18cbc5a6774..ecebbe0f7e6 100644
--- a/apps/files_external/lib/Command/Verify.php
+++ b/apps/files_external/lib/Command/Verify.php
@@ -97,7 +97,6 @@ class Verify extends Base {
MountConfig::getBackendStatus(
$backend->getStorageClass(),
$storage->getBackendOptions(),
- false
)
);
} catch (InsufficientDataForMeaningfulAnswerException $e) {
diff --git a/apps/files_external/lib/Controller/GlobalStoragesController.php b/apps/files_external/lib/Controller/GlobalStoragesController.php
index 132295f6b35..e7274c9cfb6 100644
--- a/apps/files_external/lib/Controller/GlobalStoragesController.php
+++ b/apps/files_external/lib/Controller/GlobalStoragesController.php
@@ -133,7 +133,6 @@ class GlobalStoragesController extends StoragesController {
* @param array $applicableUsers users for which to mount the storage
* @param array $applicableGroups groups for which to mount the storage
* @param int $priority priority
- * @param bool $testOnly whether to storage should only test the connection or do more things
*
* @return DataResponse
*/
@@ -148,7 +147,6 @@ class GlobalStoragesController extends StoragesController {
$applicableUsers,
$applicableGroups,
$priority,
- $testOnly = true,
) {
$storage = $this->createStorage(
$mountPoint,
@@ -181,7 +179,7 @@ class GlobalStoragesController extends StoragesController {
);
}
- $this->updateStorageStatus($storage, $testOnly);
+ $this->updateStorageStatus($storage);
return new DataResponse(
$storage->jsonSerialize(true),
diff --git a/apps/files_external/lib/Controller/StoragesController.php b/apps/files_external/lib/Controller/StoragesController.php
index 18f8d3164b7..df3a4528054 100644
--- a/apps/files_external/lib/Controller/StoragesController.php
+++ b/apps/files_external/lib/Controller/StoragesController.php
@@ -213,9 +213,8 @@ abstract class StoragesController extends Controller {
* on whether the remote storage is available or not.
*
* @param StorageConfig $storage storage configuration
- * @param bool $testOnly whether to storage should only test the connection or do more things
*/
- protected function updateStorageStatus(StorageConfig &$storage, $testOnly = true) {
+ protected function updateStorageStatus(StorageConfig &$storage) {
try {
$this->manipulateStorageConfig($storage);
@@ -226,8 +225,6 @@ abstract class StoragesController extends Controller {
MountConfig::getBackendStatus(
$backend->getStorageClass(),
$storage->getBackendOptions(),
- false,
- $testOnly
)
);
} catch (InsufficientDataForMeaningfulAnswerException $e) {
@@ -268,15 +265,14 @@ abstract class StoragesController extends Controller {
* Get an external storage entry.
*
* @param int $id storage id
- * @param bool $testOnly whether to storage should only test the connection or do more things
*
* @return DataResponse
*/
- public function show(int $id, $testOnly = true) {
+ public function show(int $id) {
try {
$storage = $this->service->getStorage($id);
- $this->updateStorageStatus($storage, $testOnly);
+ $this->updateStorageStatus($storage);
} catch (NotFoundException $e) {
return new DataResponse(
[
diff --git a/apps/files_external/lib/Controller/UserGlobalStoragesController.php b/apps/files_external/lib/Controller/UserGlobalStoragesController.php
index 5f428db9661..88a9f936401 100644
--- a/apps/files_external/lib/Controller/UserGlobalStoragesController.php
+++ b/apps/files_external/lib/Controller/UserGlobalStoragesController.php
@@ -97,15 +97,14 @@ class UserGlobalStoragesController extends StoragesController {
* Get an external storage entry.
*
* @param int $id storage id
- * @param bool $testOnly whether to storage should only test the connection or do more things
* @return DataResponse
*/
#[NoAdminRequired]
- public function show($id, $testOnly = true) {
+ public function show($id) {
try {
$storage = $this->service->getStorage($id);
- $this->updateStorageStatus($storage, $testOnly);
+ $this->updateStorageStatus($storage);
} catch (NotFoundException $e) {
return new DataResponse(
[
@@ -133,7 +132,6 @@ class UserGlobalStoragesController extends StoragesController {
*
* @param int $id storage id
* @param array $backendOptions backend-specific options
- * @param bool $testOnly whether to storage should only test the connection or do more things
*
* @return DataResponse
*/
@@ -142,7 +140,6 @@ class UserGlobalStoragesController extends StoragesController {
public function update(
$id,
$backendOptions,
- $testOnly = true,
) {
try {
$storage = $this->service->getStorage($id);
@@ -167,7 +164,7 @@ class UserGlobalStoragesController extends StoragesController {
);
}
- $this->updateStorageStatus($storage, $testOnly);
+ $this->updateStorageStatus($storage);
$this->sanitizeStorage($storage);
return new DataResponse(
diff --git a/apps/files_external/lib/Controller/UserStoragesController.php b/apps/files_external/lib/Controller/UserStoragesController.php
index 7b0c858e51b..7b564d57f7e 100644
--- a/apps/files_external/lib/Controller/UserStoragesController.php
+++ b/apps/files_external/lib/Controller/UserStoragesController.php
@@ -85,8 +85,8 @@ class UserStoragesController extends StoragesController {
* {@inheritdoc}
*/
#[NoAdminRequired]
- public function show(int $id, $testOnly = true) {
- return parent::show($id, $testOnly);
+ public function show(int $id) {
+ return parent::show($id);
}
/**
@@ -152,7 +152,6 @@ class UserStoragesController extends StoragesController {
* @param string $authMechanism authentication mechanism identifier
* @param array $backendOptions backend-specific options
* @param array $mountOptions backend-specific mount options
- * @param bool $testOnly whether to storage should only test the connection or do more things
*
* @return DataResponse
*/
@@ -165,7 +164,6 @@ class UserStoragesController extends StoragesController {
$authMechanism,
$backendOptions,
$mountOptions,
- $testOnly = true,
) {
$storage = $this->createStorage(
$mountPoint,
@@ -195,7 +193,7 @@ class UserStoragesController extends StoragesController {
);
}
- $this->updateStorageStatus($storage, $testOnly);
+ $this->updateStorageStatus($storage);
return new DataResponse(
$storage->jsonSerialize(true),
diff --git a/apps/files_external/lib/MountConfig.php b/apps/files_external/lib/MountConfig.php
index a7d9e6f2603..5637ee71ec1 100644
--- a/apps/files_external/lib/MountConfig.php
+++ b/apps/files_external/lib/MountConfig.php
@@ -76,7 +76,7 @@ class MountConfig {
* @return int see self::STATUS_*
* @throws \Exception
*/
- public static function getBackendStatus($class, $options, $isPersonal, $testOnly = true) {
+ public static function getBackendStatus($class, $options) {
if (self::$skipTest) {
return StorageNotAvailableException::STATUS_SUCCESS;
}
@@ -93,7 +93,7 @@ class MountConfig {
$storage = new $class($options);
try {
- $result = $storage->test($isPersonal, $testOnly);
+ $result = $storage->test();
$storage->setAvailability($result);
if ($result) {
return StorageNotAvailableException::STATUS_SUCCESS;
diff --git a/apps/files_external/src/init.ts b/apps/files_external/src/init.ts
index 3f33e9cf5b6..a8a265500dd 100644
--- a/apps/files_external/src/init.ts
+++ b/apps/files_external/src/init.ts
@@ -5,7 +5,7 @@
import { loadState } from '@nextcloud/initial-state'
import { translate as t } from '@nextcloud/l10n'
import { View, getNavigation, Column, registerFileAction } from '@nextcloud/files'
-import FolderNetworkSvg from '@mdi/svg/svg/folder-network.svg?raw'
+import FolderNetworkSvg from '@mdi/svg/svg/folder-network-outline.svg?raw'
import { action as enterCredentialsAction } from './actions/enterCredentialsAction'
import { action as inlineStorageCheckAction } from './actions/inlineStorageCheckAction'