aboutsummaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
Diffstat (limited to 'core')
-rw-r--r--core/AppInfo/Application.php90
-rw-r--r--core/AppInfo/ConfigLexicon.php43
-rw-r--r--core/Application.php308
-rw-r--r--core/Command/App/Disable.php1
-rw-r--r--core/Command/App/ListApps.php1
-rw-r--r--core/Command/Config/App/Base.php2
-rw-r--r--core/Command/Config/App/SetConfig.php25
-rw-r--r--core/Command/Config/ListConfigs.php7
-rw-r--r--core/Command/Config/Preset.php71
-rw-r--r--core/Command/Config/System/Base.php1
-rw-r--r--core/Command/Config/System/CastHelper.php76
-rw-r--r--core/Command/Config/System/SetConfig.php77
-rw-r--r--core/Command/Db/ConvertFilecacheBigInt.php1
-rw-r--r--core/Command/Db/ConvertMysqlToMB4.php1
-rw-r--r--core/Command/Db/ConvertType.php8
-rw-r--r--core/Command/Db/Migrations/ExecuteCommand.php1
-rw-r--r--core/Command/Db/Migrations/GenerateCommand.php9
-rw-r--r--core/Command/Encryption/ChangeKeyStorageRoot.php8
-rw-r--r--core/Command/Encryption/EncryptAll.php1
-rw-r--r--core/Command/Encryption/MigrateKeyStorage.php16
-rw-r--r--core/Command/Group/AddUser.php1
-rw-r--r--core/Command/Group/ListCommand.php1
-rw-r--r--core/Command/Group/RemoveUser.php1
-rw-r--r--core/Command/Integrity/CheckApp.php59
-rw-r--r--core/Command/Maintenance/Install.php11
-rw-r--r--core/Command/Maintenance/UpdateTheme.php1
-rw-r--r--core/Command/Memcache/DistributedClear.php47
-rw-r--r--core/Command/Memcache/DistributedDelete.php43
-rw-r--r--core/Command/Memcache/DistributedGet.php40
-rw-r--r--core/Command/Memcache/DistributedSet.php57
-rw-r--r--core/Command/Router/ListRoutes.php129
-rw-r--r--core/Command/Router/MatchRoute.php100
-rw-r--r--core/Command/SetupChecks.php12
-rw-r--r--core/Command/SystemTag/Add.php1
-rw-r--r--core/Command/SystemTag/Delete.php1
-rw-r--r--core/Command/SystemTag/Edit.php1
-rw-r--r--core/Command/SystemTag/ListCommand.php1
-rw-r--r--core/Command/TaskProcessing/EnabledCommand.php7
-rw-r--r--core/Command/TaskProcessing/GetCommand.php1
-rw-r--r--core/Command/TaskProcessing/ListCommand.php1
-rw-r--r--core/Command/TaskProcessing/Statistics.php1
-rw-r--r--core/Command/TwoFactorAuth/Base.php1
-rw-r--r--core/Command/Upgrade.php6
-rw-r--r--core/Command/User/Add.php6
-rw-r--r--core/Command/User/AuthTokens/Add.php4
-rw-r--r--core/Command/User/AuthTokens/Delete.php1
-rw-r--r--core/Command/User/AuthTokens/ListCommand.php1
-rw-r--r--core/Command/User/Info.php1
-rw-r--r--core/Command/User/ListCommand.php1
-rw-r--r--core/Command/User/Profile.php234
-rw-r--r--core/Command/User/ResetPassword.php6
-rw-r--r--core/Command/User/Setting.php3
-rw-r--r--core/Command/User/SyncAccountDataCommand.php1
-rw-r--r--core/Command/User/Welcome.php1
-rw-r--r--core/Controller/AppPasswordController.php2
-rw-r--r--core/Controller/AvatarController.php4
-rw-r--r--core/Controller/CSRFTokenController.php2
-rw-r--r--core/Controller/ClientFlowLoginController.php9
-rw-r--r--core/Controller/ClientFlowLoginV2Controller.php4
-rw-r--r--core/Controller/ContactsMenuController.php1
-rw-r--r--core/Controller/GuestAvatarController.php1
-rw-r--r--core/Controller/LoginController.php4
-rw-r--r--core/Controller/LostController.php4
-rw-r--r--core/Controller/NavigationController.php1
-rw-r--r--core/Controller/OCJSController.php1
-rw-r--r--core/Controller/OCSController.php1
-rw-r--r--core/Controller/PreviewController.php7
-rw-r--r--core/Controller/TaskProcessingApiController.php86
-rw-r--r--core/Controller/TwoFactorChallengeController.php5
-rw-r--r--core/Controller/WalledGardenController.php1
-rw-r--r--core/Controller/WhatsNewController.php1
-rw-r--r--core/Listener/AddMissingIndicesListener.php214
-rw-r--r--core/Listener/AddMissingPrimaryKeyListener.php68
-rw-r--r--core/Listener/FeedBackHandler.php60
-rw-r--r--core/Migrations/Version13000Date20170705121758.php1
-rw-r--r--core/Migrations/Version13000Date20170718121200.php1
-rw-r--r--core/Migrations/Version13000Date20170814074715.php1
-rw-r--r--core/Migrations/Version13000Date20170919121250.php1
-rw-r--r--core/Migrations/Version13000Date20170926101637.php1
-rw-r--r--core/Migrations/Version14000Date20180129121024.php1
-rw-r--r--core/Migrations/Version14000Date20180516101403.php1
-rw-r--r--core/Migrations/Version14000Date20180626223656.php1
-rw-r--r--core/Migrations/Version14000Date20180712153140.php1
-rw-r--r--core/Migrations/Version23000Date20210721100600.php2
-rw-r--r--core/Migrations/Version25000Date20220515204012.php1
-rw-r--r--core/Migrations/Version29000Date20240131122720.php4
-rw-r--r--core/Migrations/Version30000Date20240906095113.php2
-rw-r--r--core/Migrations/Version32000Date20250620081925.php16
-rw-r--r--core/ajax/update.php40
-rw-r--r--core/css/apps.css2
-rw-r--r--core/css/apps.css.map2
-rw-r--r--core/css/apps.scss8
-rw-r--r--core/css/server.css6
-rw-r--r--core/css/server.css.map2
-rw-r--r--core/js/login/grant.js19
-rw-r--r--core/js/tests/specHelper.js7
-rw-r--r--core/js/tests/specs/coreSpec.js87
-rw-r--r--core/js/tests/specs/l10nSpec.js63
-rw-r--r--core/l10n/ar.js16
-rw-r--r--core/l10n/ar.json16
-rw-r--r--core/l10n/ast.js16
-rw-r--r--core/l10n/ast.json16
-rw-r--r--core/l10n/be.js302
-rw-r--r--core/l10n/be.json300
-rw-r--r--core/l10n/bg.js42
-rw-r--r--core/l10n/bg.json42
-rw-r--r--core/l10n/ca.js16
-rw-r--r--core/l10n/ca.json16
-rw-r--r--core/l10n/cs.js51
-rw-r--r--core/l10n/cs.json51
-rw-r--r--core/l10n/da.js16
-rw-r--r--core/l10n/da.json16
-rw-r--r--core/l10n/de.js23
-rw-r--r--core/l10n/de.json23
-rw-r--r--core/l10n/de_DE.js23
-rw-r--r--core/l10n/de_DE.json23
-rw-r--r--core/l10n/el.js16
-rw-r--r--core/l10n/el.json16
-rw-r--r--core/l10n/en_GB.js23
-rw-r--r--core/l10n/en_GB.json23
-rw-r--r--core/l10n/eo.js22
-rw-r--r--core/l10n/eo.json22
-rw-r--r--core/l10n/es.js148
-rw-r--r--core/l10n/es.json148
-rw-r--r--core/l10n/es_EC.js14
-rw-r--r--core/l10n/es_EC.json14
-rw-r--r--core/l10n/es_MX.js16
-rw-r--r--core/l10n/es_MX.json16
-rw-r--r--core/l10n/et_EE.js39
-rw-r--r--core/l10n/et_EE.json39
-rw-r--r--core/l10n/eu.js16
-rw-r--r--core/l10n/eu.json16
-rw-r--r--core/l10n/fa.js533
-rw-r--r--core/l10n/fa.json533
-rw-r--r--core/l10n/fi.js110
-rw-r--r--core/l10n/fi.json110
-rw-r--r--core/l10n/fr.js141
-rw-r--r--core/l10n/fr.json141
-rw-r--r--core/l10n/ga.js23
-rw-r--r--core/l10n/ga.json23
-rw-r--r--core/l10n/gl.js18
-rw-r--r--core/l10n/gl.json18
-rw-r--r--core/l10n/he.js14
-rw-r--r--core/l10n/he.json14
-rw-r--r--core/l10n/hr.js13
-rw-r--r--core/l10n/hr.json13
-rw-r--r--core/l10n/hu.js190
-rw-r--r--core/l10n/hu.json190
-rw-r--r--core/l10n/id.js26
-rw-r--r--core/l10n/id.json26
-rw-r--r--core/l10n/is.js16
-rw-r--r--core/l10n/is.json16
-rw-r--r--core/l10n/it.js140
-rw-r--r--core/l10n/it.json140
-rw-r--r--core/l10n/ja.js23
-rw-r--r--core/l10n/ja.json23
-rw-r--r--core/l10n/ka.js14
-rw-r--r--core/l10n/ka.json14
-rw-r--r--core/l10n/ko.js16
-rw-r--r--core/l10n/ko.json16
-rw-r--r--core/l10n/lt_LT.js10
-rw-r--r--core/l10n/lt_LT.json10
-rw-r--r--core/l10n/lv.js43
-rw-r--r--core/l10n/lv.json43
-rw-r--r--core/l10n/mk.js18
-rw-r--r--core/l10n/mk.json18
-rw-r--r--core/l10n/nb.js16
-rw-r--r--core/l10n/nb.json16
-rw-r--r--core/l10n/nl.js164
-rw-r--r--core/l10n/nl.json164
-rw-r--r--core/l10n/oc.js17
-rw-r--r--core/l10n/oc.json17
-rw-r--r--core/l10n/pl.js140
-rw-r--r--core/l10n/pl.json140
-rw-r--r--core/l10n/pt_BR.js37
-rw-r--r--core/l10n/pt_BR.json37
-rw-r--r--core/l10n/pt_PT.js240
-rw-r--r--core/l10n/pt_PT.json240
-rw-r--r--core/l10n/ro.js14
-rw-r--r--core/l10n/ro.json14
-rw-r--r--core/l10n/ru.js143
-rw-r--r--core/l10n/ru.json143
-rw-r--r--core/l10n/sc.js17
-rw-r--r--core/l10n/sc.json17
-rw-r--r--core/l10n/sk.js91
-rw-r--r--core/l10n/sk.json91
-rw-r--r--core/l10n/sl.js131
-rw-r--r--core/l10n/sl.json131
-rw-r--r--core/l10n/sr.js23
-rw-r--r--core/l10n/sr.json23
-rw-r--r--core/l10n/sv.js16
-rw-r--r--core/l10n/sv.json16
-rw-r--r--core/l10n/sw.js532
-rw-r--r--core/l10n/sw.json530
-rw-r--r--core/l10n/th.js14
-rw-r--r--core/l10n/th.json14
-rw-r--r--core/l10n/tr.js166
-rw-r--r--core/l10n/tr.json166
-rw-r--r--core/l10n/ug.js16
-rw-r--r--core/l10n/ug.json16
-rw-r--r--core/l10n/uk.js60
-rw-r--r--core/l10n/uk.json60
-rw-r--r--core/l10n/uz.js18
-rw-r--r--core/l10n/uz.json18
-rw-r--r--core/l10n/vi.js16
-rw-r--r--core/l10n/vi.json16
-rw-r--r--core/l10n/zh_CN.js31
-rw-r--r--core/l10n/zh_CN.json31
-rw-r--r--core/l10n/zh_HK.js23
-rw-r--r--core/l10n/zh_HK.json23
-rw-r--r--core/l10n/zh_TW.js23
-rw-r--r--core/l10n/zh_TW.json23
-rw-r--r--core/openapi-ex_app.json2
-rw-r--r--core/openapi-full.json43
-rw-r--r--core/openapi.json41
-rw-r--r--core/register_command.php16
-rw-r--r--core/src/OC/dialogs.js8
-rw-r--r--core/src/OC/eventsource.js4
-rw-r--r--core/src/OC/index.js4
-rw-r--r--core/src/OC/requesttoken.js39
-rw-r--r--core/src/OC/requesttoken.ts49
-rw-r--r--core/src/components/AccountMenu/AccountMenuEntry.vue38
-rw-r--r--core/src/components/AppMenuIcon.vue2
-rw-r--r--core/src/components/PublicPageMenu/PublicPageMenuEntry.vue8
-rw-r--r--core/src/components/UnifiedSearch/UnifiedSearchLocalSearchBar.vue4
-rw-r--r--core/src/components/UnifiedSearch/UnifiedSearchModal.vue12
-rw-r--r--core/src/components/login/PasswordLessLoginForm.vue2
-rw-r--r--core/src/components/setup/RecommendedApps.vue9
-rw-r--r--core/src/globals.js2
-rw-r--r--core/src/init.js2
-rw-r--r--core/src/jquery/requesttoken.js4
-rw-r--r--core/src/public-page-user-menu.ts15
-rw-r--r--core/src/session-heartbeat.js168
-rw-r--r--core/src/session-heartbeat.ts158
-rw-r--r--core/src/tests/OC/requesttoken.spec.js44
-rw-r--r--core/src/tests/OC/requesttoken.spec.ts147
-rw-r--r--core/src/tests/OC/session-heartbeat.spec.ts123
-rw-r--r--core/src/twofactor-request-token.ts25
-rw-r--r--core/src/views/AccountMenu.vue2
-rw-r--r--core/src/views/ContactsMenu.vue9
-rw-r--r--core/src/views/Login.vue5
-rw-r--r--core/src/views/PublicPageUserMenu.vue138
-rw-r--r--core/templates/403.php18
-rw-r--r--core/templates/confirmation.php2
-rw-r--r--core/templates/layout.public.php1
-rw-r--r--core/templates/success.php2
-rw-r--r--core/templates/twofactorselectchallenge.php2
-rw-r--r--core/templates/twofactorsetupchallenge.php2
-rw-r--r--core/templates/twofactorsetupselection.php2
-rw-r--r--core/templates/twofactorshowchallenge.php2
250 files changed, 9019 insertions, 2596 deletions
diff --git a/core/AppInfo/Application.php b/core/AppInfo/Application.php
new file mode 100644
index 00000000000..f1fe7d763e3
--- /dev/null
+++ b/core/AppInfo/Application.php
@@ -0,0 +1,90 @@
+<?php
+
+/**
+ * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-FileCopyrightText: 2016 ownCloud, Inc.
+ * SPDX-License-Identifier: AGPL-3.0-only
+ */
+namespace OC\Core\AppInfo;
+
+use OC\Authentication\Events\RemoteWipeFinished;
+use OC\Authentication\Events\RemoteWipeStarted;
+use OC\Authentication\Listeners\RemoteWipeActivityListener;
+use OC\Authentication\Listeners\RemoteWipeEmailListener;
+use OC\Authentication\Listeners\RemoteWipeNotificationsListener;
+use OC\Authentication\Listeners\UserDeletedFilesCleanupListener;
+use OC\Authentication\Listeners\UserDeletedStoreCleanupListener;
+use OC\Authentication\Listeners\UserDeletedTokenCleanupListener;
+use OC\Authentication\Listeners\UserDeletedWebAuthnCleanupListener;
+use OC\Authentication\Notifications\Notifier as AuthenticationNotifier;
+use OC\Core\Listener\AddMissingIndicesListener;
+use OC\Core\Listener\AddMissingPrimaryKeyListener;
+use OC\Core\Listener\BeforeTemplateRenderedListener;
+use OC\Core\Notification\CoreNotifier;
+use OC\TagManager;
+use OCP\AppFramework\App;
+use OCP\AppFramework\Bootstrap\IBootContext;
+use OCP\AppFramework\Bootstrap\IBootstrap;
+use OCP\AppFramework\Bootstrap\IRegistrationContext;
+use OCP\AppFramework\Http\Events\BeforeLoginTemplateRenderedEvent;
+use OCP\AppFramework\Http\Events\BeforeTemplateRenderedEvent;
+use OCP\DB\Events\AddMissingIndicesEvent;
+use OCP\DB\Events\AddMissingPrimaryKeyEvent;
+use OCP\User\Events\BeforeUserDeletedEvent;
+use OCP\User\Events\UserDeletedEvent;
+use OCP\Util;
+
+/**
+ * Class Application
+ *
+ * @package OC\Core
+ */
+class Application extends App implements IBootstrap {
+
+ public const APP_ID = 'core';
+
+ /**
+ * Application constructor.
+ */
+ public function __construct(array $urlParams = []) {
+ parent::__construct(self::APP_ID, $urlParams);
+ }
+
+ public function register(IRegistrationContext $context): void {
+ $context->registerService('defaultMailAddress', function () {
+ return Util::getDefaultEmailAddress('lostpassword-noreply');
+ });
+
+ // register notifier
+ $context->registerNotifierService(CoreNotifier::class);
+ $context->registerNotifierService(AuthenticationNotifier::class);
+
+ // register event listeners
+ $context->registerEventListener(AddMissingIndicesEvent::class, AddMissingIndicesListener::class);
+ $context->registerEventListener(AddMissingPrimaryKeyEvent::class, AddMissingPrimaryKeyListener::class);
+ $context->registerEventListener(BeforeTemplateRenderedEvent::class, BeforeTemplateRenderedListener::class);
+ $context->registerEventListener(BeforeLoginTemplateRenderedEvent::class, BeforeTemplateRenderedListener::class);
+ $context->registerEventListener(RemoteWipeStarted::class, RemoteWipeActivityListener::class);
+ $context->registerEventListener(RemoteWipeStarted::class, RemoteWipeNotificationsListener::class);
+ $context->registerEventListener(RemoteWipeStarted::class, RemoteWipeEmailListener::class);
+ $context->registerEventListener(RemoteWipeFinished::class, RemoteWipeActivityListener::class);
+ $context->registerEventListener(RemoteWipeFinished::class, RemoteWipeNotificationsListener::class);
+ $context->registerEventListener(RemoteWipeFinished::class, RemoteWipeEmailListener::class);
+ $context->registerEventListener(UserDeletedEvent::class, UserDeletedStoreCleanupListener::class);
+ $context->registerEventListener(UserDeletedEvent::class, UserDeletedTokenCleanupListener::class);
+ $context->registerEventListener(BeforeUserDeletedEvent::class, UserDeletedFilesCleanupListener::class);
+ $context->registerEventListener(UserDeletedEvent::class, UserDeletedFilesCleanupListener::class);
+ $context->registerEventListener(UserDeletedEvent::class, UserDeletedWebAuthnCleanupListener::class);
+
+ // Tags
+ $context->registerEventListener(UserDeletedEvent::class, TagManager::class);
+
+ // config lexicon
+ $context->registerConfigLexicon(ConfigLexicon::class);
+ }
+
+ public function boot(IBootContext $context): void {
+ // ...
+ }
+
+}
diff --git a/core/AppInfo/ConfigLexicon.php b/core/AppInfo/ConfigLexicon.php
new file mode 100644
index 00000000000..5dad229267d
--- /dev/null
+++ b/core/AppInfo/ConfigLexicon.php
@@ -0,0 +1,43 @@
+<?php
+
+declare(strict_types=1);
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+namespace OC\Core\AppInfo;
+
+use OCP\Config\Lexicon\Entry;
+use OCP\Config\Lexicon\ILexicon;
+use OCP\Config\Lexicon\Strictness;
+use OCP\Config\ValueType;
+
+/**
+ * Config Lexicon for core.
+ *
+ * Please Add & Manage your Config Keys in that file and keep the Lexicon up to date!
+ */
+class ConfigLexicon implements ILexicon {
+ public const SHAREAPI_ALLOW_FEDERATION_ON_PUBLIC_SHARES = 'shareapi_allow_federation_on_public_shares';
+
+ public function getStrictness(): Strictness {
+ return Strictness::IGNORE;
+ }
+
+ public function getAppConfigs(): array {
+ return [
+ new Entry(
+ key: self::SHAREAPI_ALLOW_FEDERATION_ON_PUBLIC_SHARES,
+ type: ValueType::BOOL,
+ defaultRaw: true,
+ definition: 'adds share permission to public shares to allow adding them to your Nextcloud (federation)',
+ lazy: true,
+ ),
+ ];
+ }
+
+ public function getUserConfigs(): array {
+ return [];
+ }
+}
diff --git a/core/Application.php b/core/Application.php
deleted file mode 100644
index 17640f2ce0d..00000000000
--- a/core/Application.php
+++ /dev/null
@@ -1,308 +0,0 @@
-<?php
-
-/**
- * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
- * SPDX-FileCopyrightText: 2016 ownCloud, Inc.
- * SPDX-License-Identifier: AGPL-3.0-only
- */
-namespace OC\Core;
-
-use OC\Authentication\Events\RemoteWipeFinished;
-use OC\Authentication\Events\RemoteWipeStarted;
-use OC\Authentication\Listeners\RemoteWipeActivityListener;
-use OC\Authentication\Listeners\RemoteWipeEmailListener;
-use OC\Authentication\Listeners\RemoteWipeNotificationsListener;
-use OC\Authentication\Listeners\UserDeletedFilesCleanupListener;
-use OC\Authentication\Listeners\UserDeletedStoreCleanupListener;
-use OC\Authentication\Listeners\UserDeletedTokenCleanupListener;
-use OC\Authentication\Listeners\UserDeletedWebAuthnCleanupListener;
-use OC\Authentication\Notifications\Notifier as AuthenticationNotifier;
-use OC\Core\Listener\BeforeTemplateRenderedListener;
-use OC\Core\Notification\CoreNotifier;
-use OC\TagManager;
-use OCP\AppFramework\App;
-use OCP\AppFramework\Http\Events\BeforeLoginTemplateRenderedEvent;
-use OCP\AppFramework\Http\Events\BeforeTemplateRenderedEvent;
-use OCP\DB\Events\AddMissingIndicesEvent;
-use OCP\DB\Events\AddMissingPrimaryKeyEvent;
-use OCP\EventDispatcher\IEventDispatcher;
-use OCP\Notification\IManager as INotificationManager;
-use OCP\User\Events\BeforeUserDeletedEvent;
-use OCP\User\Events\UserDeletedEvent;
-use OCP\Util;
-
-/**
- * Class Application
- *
- * @package OC\Core
- */
-class Application extends App {
- public function __construct() {
- parent::__construct('core');
-
- $container = $this->getContainer();
-
- $container->registerService('defaultMailAddress', function () {
- return Util::getDefaultEmailAddress('lostpassword-noreply');
- });
-
- $server = $container->getServer();
- /** @var IEventDispatcher $eventDispatcher */
- $eventDispatcher = $server->get(IEventDispatcher::class);
-
- $notificationManager = $server->get(INotificationManager::class);
- $notificationManager->registerNotifierService(CoreNotifier::class);
- $notificationManager->registerNotifierService(AuthenticationNotifier::class);
-
- $eventDispatcher->addListener(AddMissingIndicesEvent::class, function (AddMissingIndicesEvent $event): void {
- $event->addMissingIndex(
- 'share',
- 'share_with_index',
- ['share_with']
- );
- $event->addMissingIndex(
- 'share',
- 'parent_index',
- ['parent']
- );
- $event->addMissingIndex(
- 'share',
- 'owner_index',
- ['uid_owner']
- );
- $event->addMissingIndex(
- 'share',
- 'initiator_index',
- ['uid_initiator']
- );
-
- $event->addMissingIndex(
- 'filecache',
- 'fs_mtime',
- ['mtime']
- );
- $event->addMissingIndex(
- 'filecache',
- 'fs_size',
- ['size']
- );
- $event->addMissingIndex(
- 'filecache',
- 'fs_storage_path_prefix',
- ['storage', 'path'],
- ['lengths' => [null, 64]]
- );
- $event->addMissingIndex(
- 'filecache',
- 'fs_parent',
- ['parent']
- );
- $event->addMissingIndex(
- 'filecache',
- 'fs_name_hash',
- ['name']
- );
-
- $event->addMissingIndex(
- 'twofactor_providers',
- 'twofactor_providers_uid',
- ['uid']
- );
-
- $event->addMissingUniqueIndex(
- 'login_flow_v2',
- 'poll_token',
- ['poll_token'],
- [],
- true
- );
- $event->addMissingUniqueIndex(
- 'login_flow_v2',
- 'login_token',
- ['login_token'],
- [],
- true
- );
- $event->addMissingIndex(
- 'login_flow_v2',
- 'timestamp',
- ['timestamp'],
- [],
- true
- );
-
- $event->addMissingIndex(
- 'whats_new',
- 'version',
- ['version'],
- [],
- true
- );
-
- $event->addMissingIndex(
- 'cards',
- 'cards_abiduri',
- ['addressbookid', 'uri'],
- [],
- true
- );
-
- $event->replaceIndex(
- 'cards_properties',
- ['cards_prop_abid'],
- 'cards_prop_abid_name_value',
- ['addressbookid', 'name', 'value'],
- false,
- );
-
- $event->addMissingIndex(
- 'calendarobjects_props',
- 'calendarobject_calid_index',
- ['calendarid', 'calendartype']
- );
-
- $event->addMissingIndex(
- 'schedulingobjects',
- 'schedulobj_principuri_index',
- ['principaluri']
- );
-
- $event->addMissingIndex(
- 'schedulingobjects',
- 'schedulobj_lastmodified_idx',
- ['lastmodified']
- );
-
- $event->addMissingIndex(
- 'properties',
- 'properties_path_index',
- ['userid', 'propertypath']
- );
- $event->addMissingIndex(
- 'properties',
- 'properties_pathonly_index',
- ['propertypath']
- );
- $event->addMissingIndex(
- 'properties',
- 'properties_name_path_user',
- ['propertyname', 'propertypath', 'userid']
- );
-
-
- $event->addMissingIndex(
- 'jobs',
- 'job_lastcheck_reserved',
- ['last_checked', 'reserved_at']
- );
-
- $event->addMissingIndex(
- 'direct_edit',
- 'direct_edit_timestamp',
- ['timestamp']
- );
-
- $event->addMissingIndex(
- 'preferences',
- 'prefs_uid_lazy_i',
- ['userid', 'lazy']
- );
- $event->addMissingIndex(
- 'preferences',
- 'prefs_app_key_ind_fl_i',
- ['appid', 'configkey', 'indexed', 'flags']
- );
-
- $event->addMissingIndex(
- 'mounts',
- 'mounts_class_index',
- ['mount_provider_class']
- );
- $event->addMissingIndex(
- 'mounts',
- 'mounts_user_root_path_index',
- ['user_id', 'root_id', 'mount_point'],
- ['lengths' => [null, null, 128]]
- );
-
- $event->addMissingIndex(
- 'systemtag_object_mapping',
- 'systag_by_tagid',
- ['systemtagid', 'objecttype']
- );
-
- $event->addMissingIndex(
- 'systemtag_object_mapping',
- 'systag_by_objectid',
- ['objectid']
- );
-
- $event->addMissingIndex(
- 'systemtag_object_mapping',
- 'systag_objecttype',
- ['objecttype']
- );
- });
-
- $eventDispatcher->addListener(AddMissingPrimaryKeyEvent::class, function (AddMissingPrimaryKeyEvent $event): void {
- $event->addMissingPrimaryKey(
- 'federated_reshares',
- 'federated_res_pk',
- ['share_id'],
- 'share_id_index'
- );
-
- $event->addMissingPrimaryKey(
- 'systemtag_object_mapping',
- 'som_pk',
- ['objecttype', 'objectid', 'systemtagid'],
- 'mapping'
- );
-
- $event->addMissingPrimaryKey(
- 'comments_read_markers',
- 'crm_pk',
- ['user_id', 'object_type', 'object_id'],
- 'comments_marker_index'
- );
-
- $event->addMissingPrimaryKey(
- 'collres_resources',
- 'crr_pk',
- ['collection_id', 'resource_type', 'resource_id'],
- 'collres_unique_res'
- );
-
- $event->addMissingPrimaryKey(
- 'collres_accesscache',
- 'cra_pk',
- ['user_id', 'collection_id', 'resource_type', 'resource_id'],
- 'collres_unique_user'
- );
-
- $event->addMissingPrimaryKey(
- 'filecache_extended',
- 'fce_pk',
- ['fileid'],
- 'fce_fileid_idx'
- );
- });
-
- $eventDispatcher->addServiceListener(BeforeTemplateRenderedEvent::class, BeforeTemplateRenderedListener::class);
- $eventDispatcher->addServiceListener(BeforeLoginTemplateRenderedEvent::class, BeforeTemplateRenderedListener::class);
- $eventDispatcher->addServiceListener(RemoteWipeStarted::class, RemoteWipeActivityListener::class);
- $eventDispatcher->addServiceListener(RemoteWipeStarted::class, RemoteWipeNotificationsListener::class);
- $eventDispatcher->addServiceListener(RemoteWipeStarted::class, RemoteWipeEmailListener::class);
- $eventDispatcher->addServiceListener(RemoteWipeFinished::class, RemoteWipeActivityListener::class);
- $eventDispatcher->addServiceListener(RemoteWipeFinished::class, RemoteWipeNotificationsListener::class);
- $eventDispatcher->addServiceListener(RemoteWipeFinished::class, RemoteWipeEmailListener::class);
- $eventDispatcher->addServiceListener(UserDeletedEvent::class, UserDeletedStoreCleanupListener::class);
- $eventDispatcher->addServiceListener(UserDeletedEvent::class, UserDeletedTokenCleanupListener::class);
- $eventDispatcher->addServiceListener(BeforeUserDeletedEvent::class, UserDeletedFilesCleanupListener::class);
- $eventDispatcher->addServiceListener(UserDeletedEvent::class, UserDeletedFilesCleanupListener::class);
- $eventDispatcher->addServiceListener(UserDeletedEvent::class, UserDeletedWebAuthnCleanupListener::class);
-
- // Tags
- $eventDispatcher->addServiceListener(UserDeletedEvent::class, TagManager::class);
- }
-}
diff --git a/core/Command/App/Disable.php b/core/Command/App/Disable.php
index a0a20ef21dd..121ad3f010c 100644
--- a/core/Command/App/Disable.php
+++ b/core/Command/App/Disable.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2016 ownCloud, Inc.
* SPDX-License-Identifier: AGPL-3.0-only
diff --git a/core/Command/App/ListApps.php b/core/Command/App/ListApps.php
index bb59e441119..dc947bea55f 100644
--- a/core/Command/App/ListApps.php
+++ b/core/Command/App/ListApps.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2016 ownCloud, Inc.
* SPDX-License-Identifier: AGPL-3.0-only
diff --git a/core/Command/Config/App/Base.php b/core/Command/Config/App/Base.php
index 07341c4faf9..e90a8e78f5b 100644
--- a/core/Command/Config/App/Base.php
+++ b/core/Command/Config/App/Base.php
@@ -7,12 +7,14 @@ declare(strict_types=1);
*/
namespace OC\Core\Command\Config\App;
+use OC\Config\ConfigManager;
use OCP\IAppConfig;
use Stecman\Component\Symfony\Console\BashCompletion\CompletionContext;
abstract class Base extends \OC\Core\Command\Base {
public function __construct(
protected IAppConfig $appConfig,
+ protected readonly ConfigManager $configManager,
) {
parent::__construct();
}
diff --git a/core/Command/Config/App/SetConfig.php b/core/Command/Config/App/SetConfig.php
index 345067cfd45..1f4ab81bf05 100644
--- a/core/Command/Config/App/SetConfig.php
+++ b/core/Command/Config/App/SetConfig.php
@@ -9,7 +9,6 @@ declare(strict_types=1);
namespace OC\Core\Command\Config\App;
use OC\AppConfig;
-use OCP\Exceptions\AppConfigIncorrectTypeException;
use OCP\Exceptions\AppConfigUnknownKeyException;
use OCP\IAppConfig;
use Symfony\Component\Console\Helper\QuestionHelper;
@@ -161,7 +160,6 @@ class SetConfig extends Base {
}
$value = (string)$input->getOption('value');
-
switch ($type) {
case IAppConfig::VALUE_MIXED:
$updated = $this->appConfig->setValueMixed($appName, $configName, $value, $lazy, $sensitive);
@@ -172,34 +170,19 @@ class SetConfig extends Base {
break;
case IAppConfig::VALUE_INT:
- if ($value !== ((string)((int)$value))) {
- throw new AppConfigIncorrectTypeException('Value is not an integer');
- }
- $updated = $this->appConfig->setValueInt($appName, $configName, (int)$value, $lazy, $sensitive);
+ $updated = $this->appConfig->setValueInt($appName, $configName, $this->configManager->convertToInt($value), $lazy, $sensitive);
break;
case IAppConfig::VALUE_FLOAT:
- if ($value !== ((string)((float)$value))) {
- throw new AppConfigIncorrectTypeException('Value is not a float');
- }
- $updated = $this->appConfig->setValueFloat($appName, $configName, (float)$value, $lazy, $sensitive);
+ $updated = $this->appConfig->setValueFloat($appName, $configName, $this->configManager->convertToFloat($value), $lazy, $sensitive);
break;
case IAppConfig::VALUE_BOOL:
- if (in_array(strtolower($value), ['true', '1', 'on', 'yes'])) {
- $valueBool = true;
- } elseif (in_array(strtolower($value), ['false', '0', 'off', 'no'])) {
- $valueBool = false;
- } else {
- throw new AppConfigIncorrectTypeException('Value is not a boolean, please use \'true\' or \'false\'');
- }
- $updated = $this->appConfig->setValueBool($appName, $configName, $valueBool, $lazy);
+ $updated = $this->appConfig->setValueBool($appName, $configName, $this->configManager->convertToBool($value), $lazy);
break;
case IAppConfig::VALUE_ARRAY:
- $valueArray = json_decode($value, true, flags: JSON_THROW_ON_ERROR);
- $valueArray = (is_array($valueArray)) ? $valueArray : throw new AppConfigIncorrectTypeException('Value is not an array');
- $updated = $this->appConfig->setValueArray($appName, $configName, $valueArray, $lazy, $sensitive);
+ $updated = $this->appConfig->setValueArray($appName, $configName, $this->configManager->convertToArray($value), $lazy, $sensitive);
break;
}
}
diff --git a/core/Command/Config/ListConfigs.php b/core/Command/Config/ListConfigs.php
index 094348dd9ba..b81bfbf4d18 100644
--- a/core/Command/Config/ListConfigs.php
+++ b/core/Command/Config/ListConfigs.php
@@ -7,6 +7,7 @@
*/
namespace OC\Core\Command\Config;
+use OC\Config\ConfigManager;
use OC\Core\Command\Base;
use OC\SystemConfig;
use OCP\IAppConfig;
@@ -22,6 +23,7 @@ class ListConfigs extends Base {
public function __construct(
protected SystemConfig $systemConfig,
protected IAppConfig $appConfig,
+ protected ConfigManager $configManager,
) {
parent::__construct();
}
@@ -44,6 +46,7 @@ class ListConfigs extends Base {
InputOption::VALUE_NONE,
'Use this option when you want to include sensitive configs like passwords, salts, ...'
)
+ ->addOption('migrate', null, InputOption::VALUE_NONE, 'Rename config keys of all enabled apps, based on ConfigLexicon')
;
}
@@ -51,6 +54,10 @@ class ListConfigs extends Base {
$app = $input->getArgument('app');
$noSensitiveValues = !$input->getOption('private');
+ if ($input->getOption('migrate')) {
+ $this->configManager->migrateConfigLexiconKeys(($app === 'all') ? null : $app);
+ }
+
if (!is_string($app)) {
$output->writeln('<error>Invalid app value given</error>');
return 1;
diff --git a/core/Command/Config/Preset.php b/core/Command/Config/Preset.php
new file mode 100644
index 00000000000..4f0278896db
--- /dev/null
+++ b/core/Command/Config/Preset.php
@@ -0,0 +1,71 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+namespace OC\Core\Command\Config;
+
+use OC\Config\ConfigManager;
+use OC\Core\Command\Base;
+use OCP\Config\Lexicon\Preset as ConfigLexiconPreset;
+use OCP\IConfig;
+use Symfony\Component\Console\Input\InputArgument;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Input\InputOption;
+use Symfony\Component\Console\Output\OutputInterface;
+
+class Preset extends Base {
+ public function __construct(
+ private readonly IConfig $config,
+ private readonly ConfigManager $configManager,
+ ) {
+ parent::__construct();
+ }
+
+ protected function configure() {
+ parent::configure();
+ $this->setName('config:preset')
+ ->setDescription('Select a config preset')
+ ->addArgument('preset', InputArgument::OPTIONAL, 'Preset to use for all unset config values', '')
+ ->addOption('list', '', InputOption::VALUE_NONE, 'display available preset');
+ }
+
+ protected function execute(InputInterface $input, OutputInterface $output): int {
+ if ($input->getOption('list')) {
+ $this->getEnum('', $list);
+ $this->writeArrayInOutputFormat($input, $output, $list);
+ return self::SUCCESS;
+ }
+
+ $presetArg = $input->getArgument('preset');
+ if ($presetArg !== '') {
+ $preset = $this->getEnum($presetArg, $list);
+ if ($preset === null) {
+ $output->writeln('<error>Invalid preset: ' . $presetArg . '</error>');
+ $output->writeln('Available presets: ' . implode(', ', $list));
+ return self::INVALID;
+ }
+
+ $this->configManager->setLexiconPreset($preset);
+ }
+
+ $current = ConfigLexiconPreset::tryFrom($this->config->getSystemValueInt(ConfigManager::PRESET_CONFIGKEY, 0)) ?? ConfigLexiconPreset::NONE;
+ $this->writeArrayInOutputFormat($input, $output, [$current->name], 'current preset: ');
+ return self::SUCCESS;
+ }
+
+ private function getEnum(string $name, ?array &$list = null): ?ConfigLexiconPreset {
+ $list = [];
+ foreach (ConfigLexiconPreset::cases() as $case) {
+ $list[] = $case->name;
+ if (strtolower($case->name) === strtolower($name)) {
+ return $case;
+ }
+ }
+
+ return null;
+ }
+}
diff --git a/core/Command/Config/System/Base.php b/core/Command/Config/System/Base.php
index ce39cd4c95b..088d902b4fd 100644
--- a/core/Command/Config/System/Base.php
+++ b/core/Command/Config/System/Base.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/Config/System/CastHelper.php b/core/Command/Config/System/CastHelper.php
new file mode 100644
index 00000000000..f2b838bdf9b
--- /dev/null
+++ b/core/Command/Config/System/CastHelper.php
@@ -0,0 +1,76 @@
+<?php
+
+declare(strict_types=1);
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+namespace OC\Core\Command\Config\System;
+
+class CastHelper {
+ /**
+ * @return array{value: mixed, readable-value: string}
+ */
+ public function castValue(?string $value, string $type): array {
+ switch ($type) {
+ case 'integer':
+ case 'int':
+ if (!is_numeric($value)) {
+ throw new \InvalidArgumentException('Non-numeric value specified');
+ }
+ return [
+ 'value' => (int)$value,
+ 'readable-value' => 'integer ' . (int)$value,
+ ];
+
+ case 'double':
+ case 'float':
+ if (!is_numeric($value)) {
+ throw new \InvalidArgumentException('Non-numeric value specified');
+ }
+ return [
+ 'value' => (float)$value,
+ 'readable-value' => 'double ' . (float)$value,
+ ];
+
+ case 'boolean':
+ case 'bool':
+ $value = strtolower($value);
+ return match ($value) {
+ 'true' => [
+ 'value' => true,
+ 'readable-value' => 'boolean ' . $value,
+ ],
+ 'false' => [
+ 'value' => false,
+ 'readable-value' => 'boolean ' . $value,
+ ],
+ default => throw new \InvalidArgumentException('Unable to parse value as boolean'),
+ };
+
+ case 'null':
+ return [
+ 'value' => null,
+ 'readable-value' => 'null',
+ ];
+
+ case 'string':
+ $value = (string)$value;
+ return [
+ 'value' => $value,
+ 'readable-value' => ($value === '') ? 'empty string' : 'string ' . $value,
+ ];
+
+ case 'json':
+ $value = json_decode($value, true);
+ return [
+ 'value' => $value,
+ 'readable-value' => 'json ' . json_encode($value),
+ ];
+
+ default:
+ throw new \InvalidArgumentException('Invalid type');
+ }
+ }
+}
diff --git a/core/Command/Config/System/SetConfig.php b/core/Command/Config/System/SetConfig.php
index 62ab7f7120f..1b1bdc66a6e 100644
--- a/core/Command/Config/System/SetConfig.php
+++ b/core/Command/Config/System/SetConfig.php
@@ -17,6 +17,7 @@ use Symfony\Component\Console\Output\OutputInterface;
class SetConfig extends Base {
public function __construct(
SystemConfig $systemConfig,
+ private CastHelper $castHelper,
) {
parent::__construct($systemConfig);
}
@@ -57,7 +58,7 @@ class SetConfig extends Base {
protected function execute(InputInterface $input, OutputInterface $output): int {
$configNames = $input->getArgument('name');
$configName = $configNames[0];
- $configValue = $this->castValue($input->getOption('value'), $input->getOption('type'));
+ $configValue = $this->castHelper->castValue($input->getOption('value'), $input->getOption('type'));
$updateOnly = $input->getOption('update-only');
if (count($configNames) > 1) {
@@ -81,80 +82,6 @@ class SetConfig extends Base {
}
/**
- * @param string $value
- * @param string $type
- * @return mixed
- * @throws \InvalidArgumentException
- */
- protected function castValue($value, $type) {
- switch ($type) {
- case 'integer':
- case 'int':
- if (!is_numeric($value)) {
- throw new \InvalidArgumentException('Non-numeric value specified');
- }
- return [
- 'value' => (int)$value,
- 'readable-value' => 'integer ' . (int)$value,
- ];
-
- case 'double':
- case 'float':
- if (!is_numeric($value)) {
- throw new \InvalidArgumentException('Non-numeric value specified');
- }
- return [
- 'value' => (float)$value,
- 'readable-value' => 'double ' . (float)$value,
- ];
-
- case 'boolean':
- case 'bool':
- $value = strtolower($value);
- switch ($value) {
- case 'true':
- return [
- 'value' => true,
- 'readable-value' => 'boolean ' . $value,
- ];
-
- case 'false':
- return [
- 'value' => false,
- 'readable-value' => 'boolean ' . $value,
- ];
-
- default:
- throw new \InvalidArgumentException('Unable to parse value as boolean');
- }
-
- // no break
- case 'null':
- return [
- 'value' => null,
- 'readable-value' => 'null',
- ];
-
- case 'string':
- $value = (string)$value;
- return [
- 'value' => $value,
- 'readable-value' => ($value === '') ? 'empty string' : 'string ' . $value,
- ];
-
- case 'json':
- $value = json_decode($value, true);
- return [
- 'value' => $value,
- 'readable-value' => 'json ' . json_encode($value),
- ];
-
- default:
- throw new \InvalidArgumentException('Invalid type');
- }
- }
-
- /**
* @param array $configNames
* @param mixed $existingValues
* @param mixed $value
diff --git a/core/Command/Db/ConvertFilecacheBigInt.php b/core/Command/Db/ConvertFilecacheBigInt.php
index f5028aacaef..0d96d139701 100644
--- a/core/Command/Db/ConvertFilecacheBigInt.php
+++ b/core/Command/Db/ConvertFilecacheBigInt.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/Db/ConvertMysqlToMB4.php b/core/Command/Db/ConvertMysqlToMB4.php
index 8a2abecc804..926e56c4300 100644
--- a/core/Command/Db/ConvertMysqlToMB4.php
+++ b/core/Command/Db/ConvertMysqlToMB4.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2017 ownCloud GmbH
* SPDX-License-Identifier: AGPL-3.0-only
diff --git a/core/Command/Db/ConvertType.php b/core/Command/Db/ConvertType.php
index bca41407f68..0067bec4d9e 100644
--- a/core/Command/Db/ConvertType.php
+++ b/core/Command/Db/ConvertType.php
@@ -14,6 +14,7 @@ use OC\DB\Connection;
use OC\DB\ConnectionFactory;
use OC\DB\MigrationService;
use OC\DB\PgSqlTools;
+use OCP\App\IAppManager;
use OCP\DB\QueryBuilder\IQueryBuilder;
use OCP\DB\Types;
use OCP\IConfig;
@@ -38,6 +39,7 @@ class ConvertType extends Command implements CompletionAwareInterface {
public function __construct(
protected IConfig $config,
protected ConnectionFactory $connectionFactory,
+ protected IAppManager $appManager,
) {
parent::__construct();
}
@@ -208,11 +210,13 @@ class ConvertType extends Command implements CompletionAwareInterface {
$toMS->migrate($currentMigration);
}
- $apps = $input->getOption('all-apps') ? \OC_App::getAllApps() : \OC_App::getEnabledApps();
+ $apps = $input->getOption('all-apps')
+ ? $this->appManager->getAllAppsInAppsFolders()
+ : $this->appManager->getEnabledApps();
foreach ($apps as $app) {
$output->writeln('<info> - ' . $app . '</info>');
// Make sure autoloading works...
- \OC_App::loadApp($app);
+ $this->appManager->loadApp($app);
$fromMS = new MigrationService($app, $fromDB);
$currentMigration = $fromMS->getMigration('current');
if ($currentMigration !== '0') {
diff --git a/core/Command/Db/Migrations/ExecuteCommand.php b/core/Command/Db/Migrations/ExecuteCommand.php
index cb6edd7c78c..a89072c1ad1 100644
--- a/core/Command/Db/Migrations/ExecuteCommand.php
+++ b/core/Command/Db/Migrations/ExecuteCommand.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors
* SPDX-FileCopyrightText: 2017 ownCloud GmbH
diff --git a/core/Command/Db/Migrations/GenerateCommand.php b/core/Command/Db/Migrations/GenerateCommand.php
index ed29412f00b..a75280fa8b1 100644
--- a/core/Command/Db/Migrations/GenerateCommand.php
+++ b/core/Command/Db/Migrations/GenerateCommand.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors
* SPDX-FileCopyrightText: 2017 ownCloud GmbH
@@ -22,8 +23,8 @@ use Symfony\Component\Console\Output\OutputInterface;
use Symfony\Component\Console\Question\ConfirmationQuestion;
class GenerateCommand extends Command implements CompletionAwareInterface {
- protected static $_templateSimple =
- '<?php
+ protected static $_templateSimple
+ = '<?php
declare(strict_types=1);
@@ -38,6 +39,7 @@ use Closure;
use OCP\DB\ISchemaWrapper;
use OCP\Migration\IOutput;
use OCP\Migration\SimpleMigrationStep;
+use Override;
/**
* FIXME Auto-generated migration step: Please modify to your needs!
@@ -49,6 +51,7 @@ class {{classname}} extends SimpleMigrationStep {
* @param Closure(): ISchemaWrapper $schemaClosure
* @param array $options
*/
+ #[Override]
public function preSchemaChange(IOutput $output, Closure $schemaClosure, array $options): void {
}
@@ -58,6 +61,7 @@ class {{classname}} extends SimpleMigrationStep {
* @param array $options
* @return null|ISchemaWrapper
*/
+ #[Override]
public function changeSchema(IOutput $output, Closure $schemaClosure, array $options): ?ISchemaWrapper {
{{schemabody}}
}
@@ -67,6 +71,7 @@ class {{classname}} extends SimpleMigrationStep {
* @param Closure(): ISchemaWrapper $schemaClosure
* @param array $options
*/
+ #[Override]
public function postSchemaChange(IOutput $output, Closure $schemaClosure, array $options): void {
}
}
diff --git a/core/Command/Encryption/ChangeKeyStorageRoot.php b/core/Command/Encryption/ChangeKeyStorageRoot.php
index 76cde1b8e77..3049fd2ca08 100644
--- a/core/Command/Encryption/ChangeKeyStorageRoot.php
+++ b/core/Command/Encryption/ChangeKeyStorageRoot.php
@@ -123,8 +123,8 @@ class ChangeKeyStorageRoot extends Command {
*/
protected function moveSystemKeys($oldRoot, $newRoot) {
if (
- $this->rootView->is_dir($oldRoot . '/files_encryption') &&
- $this->targetExists($newRoot . '/files_encryption') === false
+ $this->rootView->is_dir($oldRoot . '/files_encryption')
+ && $this->targetExists($newRoot . '/files_encryption') === false
) {
$this->rootView->rename($oldRoot . '/files_encryption', $newRoot . '/files_encryption');
}
@@ -183,8 +183,8 @@ class ChangeKeyStorageRoot extends Command {
$source = $oldRoot . '/' . $user . '/files_encryption';
$target = $newRoot . '/' . $user . '/files_encryption';
if (
- $this->rootView->is_dir($source) &&
- $this->targetExists($target) === false
+ $this->rootView->is_dir($source)
+ && $this->targetExists($target) === false
) {
$this->prepareParentFolder($newRoot . '/' . $user);
$this->rootView->rename($source, $target);
diff --git a/core/Command/Encryption/EncryptAll.php b/core/Command/Encryption/EncryptAll.php
index 684591f4586..f2c991471b6 100644
--- a/core/Command/Encryption/EncryptAll.php
+++ b/core/Command/Encryption/EncryptAll.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
* SPDX-FileCopyrightText: 2016 ownCloud, Inc.
diff --git a/core/Command/Encryption/MigrateKeyStorage.php b/core/Command/Encryption/MigrateKeyStorage.php
index c2090d22d1c..937b17cde5f 100644
--- a/core/Command/Encryption/MigrateKeyStorage.php
+++ b/core/Command/Encryption/MigrateKeyStorage.php
@@ -80,10 +80,10 @@ class MigrateKeyStorage extends Command {
continue;
}
- if ($node['name'] === 'fileKey' ||
- str_ends_with($node['name'], '.privateKey') ||
- str_ends_with($node['name'], '.publicKey') ||
- str_ends_with($node['name'], '.shareKey')) {
+ if ($node['name'] === 'fileKey'
+ || str_ends_with($node['name'], '.privateKey')
+ || str_ends_with($node['name'], '.publicKey')
+ || str_ends_with($node['name'], '.shareKey')) {
$path = $folder . '/' . $node['name'];
$content = $this->rootView->file_get_contents($path);
@@ -127,10 +127,10 @@ class MigrateKeyStorage extends Command {
return (substr($haystack, -$length) === $needle);
};
- if ($node['name'] === 'fileKey' ||
- $endsWith($node['name'], '.privateKey') ||
- $endsWith($node['name'], '.publicKey') ||
- $endsWith($node['name'], '.shareKey')) {
+ if ($node['name'] === 'fileKey'
+ || $endsWith($node['name'], '.privateKey')
+ || $endsWith($node['name'], '.publicKey')
+ || $endsWith($node['name'], '.shareKey')) {
$path = $folder . '/' . $node['name'];
$content = $this->rootView->file_get_contents($path);
diff --git a/core/Command/Group/AddUser.php b/core/Command/Group/AddUser.php
index 1f144b13893..999113390af 100644
--- a/core/Command/Group/AddUser.php
+++ b/core/Command/Group/AddUser.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/Group/ListCommand.php b/core/Command/Group/ListCommand.php
index a3622585d18..01522a23f7f 100644
--- a/core/Command/Group/ListCommand.php
+++ b/core/Command/Group/ListCommand.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/Group/RemoveUser.php b/core/Command/Group/RemoveUser.php
index 7c58f9ac4c4..952fc6e7712 100644
--- a/core/Command/Group/RemoveUser.php
+++ b/core/Command/Group/RemoveUser.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/Integrity/CheckApp.php b/core/Command/Integrity/CheckApp.php
index e1889a35cfe..0145a3f8070 100644
--- a/core/Command/Integrity/CheckApp.php
+++ b/core/Command/Integrity/CheckApp.php
@@ -40,31 +40,58 @@ class CheckApp extends Base {
$this
->setName('integrity:check-app')
->setDescription('Check integrity of an app using a signature.')
- ->addArgument('appid', InputArgument::REQUIRED, 'Application to check')
- ->addOption('path', null, InputOption::VALUE_OPTIONAL, 'Path to application. If none is given it will be guessed.');
+ ->addArgument('appid', InputArgument::OPTIONAL, 'Application to check')
+ ->addOption('path', null, InputOption::VALUE_OPTIONAL, 'Path to application. If none is given it will be guessed.')
+ ->addOption('all', null, InputOption::VALUE_NONE, 'Check integrity of all apps.');
}
/**
* {@inheritdoc }
*/
protected function execute(InputInterface $input, OutputInterface $output): int {
- $appid = $input->getArgument('appid');
- $path = (string)$input->getOption('path');
- if ($path === '') {
- $path = $this->appLocator->getAppPath($appid);
+ if ($input->getOption('all') && $input->getArgument('appid')) {
+ $output->writeln('<error>Option "--all" cannot be combined with an appid</error>');
+ return 1;
}
- if ($this->appManager->isShipped($appid) || $this->fileAccessHelper->file_exists($path . '/appinfo/signature.json')) {
- // Only verify if the application explicitly ships a signature.json file
- $result = $this->checker->verifyAppSignature($appid, $path, true);
- $this->writeArrayInOutputFormat($input, $output, $result);
- if (count($result) > 0) {
- $output->writeln('<error>' . count($result) . ' errors found</error>', OutputInterface::VERBOSITY_VERBOSE);
- return 1;
+
+ if (!$input->getArgument('appid') && !$input->getOption('all')) {
+ $output->writeln('<error>Please specify an appid, or "--all" to verify all apps</error>');
+ return 1;
+ }
+
+ if ($input->getArgument('appid')) {
+ $appIds = [$input->getArgument('appid')];
+ } else {
+ $appIds = $this->appManager->getAllAppsInAppsFolders();
+ }
+
+ $errorsFound = false;
+
+ foreach ($appIds as $appId) {
+ $path = (string)$input->getOption('path');
+ if ($path === '') {
+ $path = $this->appLocator->getAppPath($appId);
}
+
+ if ($this->appManager->isShipped($appId) || $this->fileAccessHelper->file_exists($path . '/appinfo/signature.json')) {
+ // Only verify if the application explicitly ships a signature.json file
+ $result = $this->checker->verifyAppSignature($appId, $path, true);
+
+ if (count($result) > 0) {
+ $output->writeln('<error>' . $appId . ': ' . count($result) . ' errors found:</error>');
+ $this->writeArrayInOutputFormat($input, $output, $result);
+ $errorsFound = true;
+ }
+ } else {
+ $output->writeln('<comment>' . $appId . ': ' . 'App signature not found, skipping app integrity check</comment>');
+ }
+ }
+
+ if (!$errorsFound) {
$output->writeln('<info>No errors found</info>', OutputInterface::VERBOSITY_VERBOSE);
- } else {
- $output->writeln('<comment>App signature not found, skipping app integrity check</comment>');
+ return 0;
}
- return 0;
+
+ return 1;
}
}
diff --git a/core/Command/Maintenance/Install.php b/core/Command/Maintenance/Install.php
index 84fd832e016..6170c5a2638 100644
--- a/core/Command/Maintenance/Install.php
+++ b/core/Command/Maintenance/Install.php
@@ -44,6 +44,7 @@ class Install extends Command {
->addOption('database-user', null, InputOption::VALUE_REQUIRED, 'Login to connect to the database')
->addOption('database-pass', null, InputOption::VALUE_OPTIONAL, 'Password of the database user', null)
->addOption('database-table-space', null, InputOption::VALUE_OPTIONAL, 'Table space of the database (oci only)', null)
+ ->addOption('disable-admin-user', null, InputOption::VALUE_NONE, 'Disable the creation of an admin user')
->addOption('admin-user', null, InputOption::VALUE_REQUIRED, 'Login of the admin account', 'admin')
->addOption('admin-pass', null, InputOption::VALUE_REQUIRED, 'Password of the admin account')
->addOption('admin-email', null, InputOption::VALUE_OPTIONAL, 'E-Mail of the admin account')
@@ -59,8 +60,8 @@ class Install extends Command {
$this->printErrors($output, $errors);
// ignore the OS X setup warning
- if (count($errors) !== 1 ||
- (string)$errors[0]['error'] !== 'Mac OS X is not supported and Nextcloud will not work properly on this platform. Use it at your own risk!') {
+ if (count($errors) !== 1
+ || (string)$errors[0]['error'] !== 'Mac OS X is not supported and Nextcloud will not work properly on this platform. Use it at your own risk!') {
return 1;
}
}
@@ -120,6 +121,7 @@ class Install extends Command {
if ($input->hasParameterOption('--database-pass')) {
$dbPass = (string)$input->getOption('database-pass');
}
+ $disableAdminUser = (bool)$input->getOption('disable-admin-user');
$adminLogin = $input->getOption('admin-user');
$adminPassword = $input->getOption('admin-pass');
$adminEmail = $input->getOption('admin-email');
@@ -142,7 +144,7 @@ class Install extends Command {
}
}
- if (is_null($adminPassword)) {
+ if (!$disableAdminUser && $adminPassword === null) {
/** @var QuestionHelper $helper */
$helper = $this->getHelper('question');
$question = new Question('What is the password you like to use for the admin account <' . $adminLogin . '>?');
@@ -151,7 +153,7 @@ class Install extends Command {
$adminPassword = $helper->ask($input, $output, $question);
}
- if ($adminEmail !== null && !filter_var($adminEmail, FILTER_VALIDATE_EMAIL)) {
+ if (!$disableAdminUser && $adminEmail !== null && !filter_var($adminEmail, FILTER_VALIDATE_EMAIL)) {
throw new InvalidArgumentException('Invalid e-mail-address <' . $adminEmail . '> for <' . $adminLogin . '>.');
}
@@ -161,6 +163,7 @@ class Install extends Command {
'dbpass' => $dbPass,
'dbname' => $dbName,
'dbhost' => $dbHost,
+ 'admindisable' => $disableAdminUser,
'adminlogin' => $adminLogin,
'adminpass' => $adminPassword,
'adminemail' => $adminEmail,
diff --git a/core/Command/Maintenance/UpdateTheme.php b/core/Command/Maintenance/UpdateTheme.php
index f819b9c8e58..3fbcb546cca 100644
--- a/core/Command/Maintenance/UpdateTheme.php
+++ b/core/Command/Maintenance/UpdateTheme.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/Memcache/DistributedClear.php b/core/Command/Memcache/DistributedClear.php
new file mode 100644
index 00000000000..424f21f1e81
--- /dev/null
+++ b/core/Command/Memcache/DistributedClear.php
@@ -0,0 +1,47 @@
+<?php
+
+declare(strict_types=1);
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+namespace OC\Core\Command\Memcache;
+
+use OC\Core\Command\Base;
+use OCP\ICacheFactory;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Input\InputOption;
+use Symfony\Component\Console\Output\OutputInterface;
+
+class DistributedClear extends Base {
+ public function __construct(
+ protected ICacheFactory $cacheFactory,
+ ) {
+ parent::__construct();
+ }
+
+ protected function configure(): void {
+ $this
+ ->setName('memcache:distributed:clear')
+ ->setDescription('Clear values from the distributed memcache')
+ ->addOption('prefix', null, InputOption::VALUE_REQUIRED, 'Only remove keys matching the prefix');
+ parent::configure();
+ }
+
+ protected function execute(InputInterface $input, OutputInterface $output): int {
+ $cache = $this->cacheFactory->createDistributed();
+ $prefix = $input->getOption('prefix');
+ if ($cache->clear($prefix)) {
+ if ($prefix) {
+ $output->writeln('<info>Distributed cache matching prefix ' . $prefix . ' cleared</info>');
+ } else {
+ $output->writeln('<info>Distributed cache cleared</info>');
+ }
+ return 0;
+ } else {
+ $output->writeln('<error>Failed to clear cache</error>');
+ return 1;
+ }
+ }
+}
diff --git a/core/Command/Memcache/DistributedDelete.php b/core/Command/Memcache/DistributedDelete.php
new file mode 100644
index 00000000000..ae0855acb03
--- /dev/null
+++ b/core/Command/Memcache/DistributedDelete.php
@@ -0,0 +1,43 @@
+<?php
+
+declare(strict_types=1);
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+namespace OC\Core\Command\Memcache;
+
+use OC\Core\Command\Base;
+use OCP\ICacheFactory;
+use Symfony\Component\Console\Input\InputArgument;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Output\OutputInterface;
+
+class DistributedDelete extends Base {
+ public function __construct(
+ protected ICacheFactory $cacheFactory,
+ ) {
+ parent::__construct();
+ }
+
+ protected function configure(): void {
+ $this
+ ->setName('memcache:distributed:delete')
+ ->setDescription('Delete a value in the distributed memcache')
+ ->addArgument('key', InputArgument::REQUIRED, 'The key to delete');
+ parent::configure();
+ }
+
+ protected function execute(InputInterface $input, OutputInterface $output): int {
+ $cache = $this->cacheFactory->createDistributed();
+ $key = $input->getArgument('key');
+ if ($cache->remove($key)) {
+ $output->writeln('<info>Distributed cache key <info>' . $key . '</info> deleted</info>');
+ return 0;
+ } else {
+ $output->writeln('<error>Failed to delete cache key ' . $key . '</error>');
+ return 1;
+ }
+ }
+}
diff --git a/core/Command/Memcache/DistributedGet.php b/core/Command/Memcache/DistributedGet.php
new file mode 100644
index 00000000000..bf1b00d312d
--- /dev/null
+++ b/core/Command/Memcache/DistributedGet.php
@@ -0,0 +1,40 @@
+<?php
+
+declare(strict_types=1);
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+namespace OC\Core\Command\Memcache;
+
+use OC\Core\Command\Base;
+use OCP\ICacheFactory;
+use Symfony\Component\Console\Input\InputArgument;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Output\OutputInterface;
+
+class DistributedGet extends Base {
+ public function __construct(
+ protected ICacheFactory $cacheFactory,
+ ) {
+ parent::__construct();
+ }
+
+ protected function configure(): void {
+ $this
+ ->setName('memcache:distributed:get')
+ ->setDescription('Get a value from the distributed memcache')
+ ->addArgument('key', InputArgument::REQUIRED, 'The key to retrieve');
+ parent::configure();
+ }
+
+ protected function execute(InputInterface $input, OutputInterface $output): int {
+ $cache = $this->cacheFactory->createDistributed();
+ $key = $input->getArgument('key');
+
+ $value = $cache->get($key);
+ $this->writeMixedInOutputFormat($input, $output, $value);
+ return 0;
+ }
+}
diff --git a/core/Command/Memcache/DistributedSet.php b/core/Command/Memcache/DistributedSet.php
new file mode 100644
index 00000000000..0f31c22f730
--- /dev/null
+++ b/core/Command/Memcache/DistributedSet.php
@@ -0,0 +1,57 @@
+<?php
+
+declare(strict_types=1);
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+namespace OC\Core\Command\Memcache;
+
+use OC\Core\Command\Base;
+use OC\Core\Command\Config\System\CastHelper;
+use OCP\ICacheFactory;
+use Symfony\Component\Console\Input\InputArgument;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Input\InputOption;
+use Symfony\Component\Console\Output\OutputInterface;
+
+class DistributedSet extends Base {
+ public function __construct(
+ protected ICacheFactory $cacheFactory,
+ private CastHelper $castHelper,
+ ) {
+ parent::__construct();
+ }
+
+ protected function configure(): void {
+ $this
+ ->setName('memcache:distributed:set')
+ ->setDescription('Set a value in the distributed memcache')
+ ->addArgument('key', InputArgument::REQUIRED, 'The key to set')
+ ->addArgument('value', InputArgument::REQUIRED, 'The value to set')
+ ->addOption(
+ 'type',
+ null,
+ InputOption::VALUE_REQUIRED,
+ 'Value type [string, integer, float, boolean, json, null]',
+ 'string'
+ );
+ parent::configure();
+ }
+
+ protected function execute(InputInterface $input, OutputInterface $output): int {
+ $cache = $this->cacheFactory->createDistributed();
+ $key = $input->getArgument('key');
+ $value = $input->getArgument('value');
+ $type = $input->getOption('type');
+ ['value' => $value, 'readable-value' => $readable] = $this->castHelper->castValue($value, $type);
+ if ($cache->set($key, $value)) {
+ $output->writeln('Distributed cache key <info>' . $key . '</info> set to <info>' . $readable . '</info>');
+ return 0;
+ } else {
+ $output->writeln('<error>Failed to set cache key ' . $key . '</error>');
+ return 1;
+ }
+ }
+}
diff --git a/core/Command/Router/ListRoutes.php b/core/Command/Router/ListRoutes.php
new file mode 100644
index 00000000000..8932b549a65
--- /dev/null
+++ b/core/Command/Router/ListRoutes.php
@@ -0,0 +1,129 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+namespace OC\Core\Command\Router;
+
+use OC\Core\Command\Base;
+use OC\Route\Router;
+use OCP\App\AppPathNotFoundException;
+use OCP\App\IAppManager;
+use Symfony\Component\Console\Input\InputArgument;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Input\InputOption;
+use Symfony\Component\Console\Output\OutputInterface;
+
+class ListRoutes extends Base {
+
+ public function __construct(
+ protected IAppManager $appManager,
+ protected Router $router,
+ ) {
+ parent::__construct();
+ }
+
+ protected function configure(): void {
+ parent::configure();
+ $this
+ ->setName('router:list')
+ ->setDescription('Find the target of a route or all routes of an app')
+ ->addArgument(
+ 'app',
+ InputArgument::OPTIONAL | InputArgument::IS_ARRAY,
+ 'Only list routes of these apps',
+ )
+ ->addOption(
+ 'ocs',
+ null,
+ InputOption::VALUE_NONE,
+ 'Only list OCS routes',
+ )
+ ->addOption(
+ 'index',
+ null,
+ InputOption::VALUE_NONE,
+ 'Only list index.php routes',
+ )
+ ;
+ }
+
+ protected function execute(InputInterface $input, OutputInterface $output): int {
+ $apps = $input->getArgument('app');
+ if (empty($apps)) {
+ $this->router->loadRoutes();
+ } else {
+ foreach ($apps as $app) {
+ if ($app === 'core') {
+ $this->router->loadRoutes($app, false);
+ continue;
+ }
+
+ try {
+ $this->appManager->getAppPath($app);
+ } catch (AppPathNotFoundException $e) {
+ $output->writeln('<comment>App ' . $app . ' not found</comment>');
+ return self::FAILURE;
+ }
+
+ if (!$this->appManager->isEnabledForAnyone($app)) {
+ $output->writeln('<comment>App ' . $app . ' is not enabled</comment>');
+ return self::FAILURE;
+ }
+
+ $this->router->loadRoutes($app, true);
+ }
+ }
+
+ $ocsOnly = $input->getOption('ocs');
+ $indexOnly = $input->getOption('index');
+
+ $rows = [];
+ $collection = $this->router->getRouteCollection();
+ foreach ($collection->all() as $routeName => $route) {
+ if (str_starts_with($routeName, 'ocs.')) {
+ if ($indexOnly) {
+ continue;
+ }
+ $routeName = substr($routeName, 4);
+ } elseif ($ocsOnly) {
+ continue;
+ }
+
+ $path = $route->getPath();
+ if (str_starts_with($path, '/ocsapp/')) {
+ $path = '/ocs/v2.php/' . substr($path, strlen('/ocsapp/'));
+ }
+ $row = [
+ 'route' => $routeName,
+ 'request' => implode(', ', $route->getMethods()),
+ 'path' => $path,
+ ];
+
+ if ($output->isVerbose()) {
+ $row['requirements'] = json_encode($route->getRequirements());
+ }
+
+ $rows[] = $row;
+ }
+
+ usort($rows, static function (array $a, array $b): int {
+ $aRoute = $a['route'];
+ if (str_starts_with($aRoute, 'ocs.')) {
+ $aRoute = substr($aRoute, 4);
+ }
+ $bRoute = $b['route'];
+ if (str_starts_with($bRoute, 'ocs.')) {
+ $bRoute = substr($bRoute, 4);
+ }
+ return $aRoute <=> $bRoute;
+ });
+
+ $this->writeTableInOutputFormat($input, $output, $rows);
+ return self::SUCCESS;
+ }
+}
diff --git a/core/Command/Router/MatchRoute.php b/core/Command/Router/MatchRoute.php
new file mode 100644
index 00000000000..3b90463c7b2
--- /dev/null
+++ b/core/Command/Router/MatchRoute.php
@@ -0,0 +1,100 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+namespace OC\Core\Command\Router;
+
+use OC\Core\Command\Base;
+use OC\Route\Router;
+use OCP\App\IAppManager;
+use OCP\Server;
+use Symfony\Component\Console\Input\InputArgument;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Input\InputOption;
+use Symfony\Component\Console\Output\OutputInterface;
+use Symfony\Component\Routing\Exception\MethodNotAllowedException;
+use Symfony\Component\Routing\Exception\ResourceNotFoundException;
+use Symfony\Component\Routing\RequestContext;
+
+class MatchRoute extends Base {
+
+ public function __construct(
+ private Router $router,
+ ) {
+ parent::__construct();
+ }
+
+ protected function configure(): void {
+ parent::configure();
+ $this
+ ->setName('router:match')
+ ->setDescription('Match a URL to the target route')
+ ->addArgument(
+ 'path',
+ InputArgument::REQUIRED,
+ 'Path of the request',
+ )
+ ->addOption(
+ 'method',
+ null,
+ InputOption::VALUE_REQUIRED,
+ 'HTTP method',
+ 'GET',
+ )
+ ;
+ }
+
+ protected function execute(InputInterface $input, OutputInterface $output): int {
+ $context = new RequestContext(method: strtoupper($input->getOption('method')));
+ $this->router->setContext($context);
+
+ $path = $input->getArgument('path');
+ if (str_starts_with($path, '/index.php/')) {
+ $path = substr($path, 10);
+ }
+ if (str_starts_with($path, '/ocs/v1.php/') || str_starts_with($path, '/ocs/v2.php/')) {
+ $path = '/ocsapp' . substr($path, strlen('/ocs/v2.php'));
+ }
+
+ try {
+ $route = $this->router->findMatchingRoute($path);
+ } catch (MethodNotAllowedException) {
+ $output->writeln('<error>Method not allowed on this path</error>');
+ return self::FAILURE;
+ } catch (ResourceNotFoundException) {
+ $output->writeln('<error>Path not matched</error>');
+ if (preg_match('/\/apps\/([^\/]+)\//', $path, $matches)) {
+ $appManager = Server::get(IAppManager::class);
+ if (!$appManager->isEnabledForAnyone($matches[1])) {
+ $output->writeln('');
+ $output->writeln('<comment>App ' . $matches[1] . ' is not enabled</comment>');
+ }
+ }
+ return self::FAILURE;
+ }
+
+ $row = [
+ 'route' => $route['_route'],
+ 'appid' => $route['caller'][0] ?? null,
+ 'controller' => $route['caller'][1] ?? null,
+ 'method' => $route['caller'][2] ?? null,
+ ];
+
+ if ($output->isVerbose()) {
+ $route = $this->router->getRouteCollection()->get($row['route']);
+ $row['path'] = $route->getPath();
+ if (str_starts_with($row['path'], '/ocsapp/')) {
+ $row['path'] = '/ocs/v2.php/' . substr($row['path'], strlen('/ocsapp/'));
+ }
+ $row['requirements'] = json_encode($route->getRequirements());
+ }
+
+ $this->writeTableInOutputFormat($input, $output, [$row]);
+ return self::SUCCESS;
+ }
+}
diff --git a/core/Command/SetupChecks.php b/core/Command/SetupChecks.php
index 60517e224b3..6ef67726839 100644
--- a/core/Command/SetupChecks.php
+++ b/core/Command/SetupChecks.php
@@ -61,12 +61,12 @@ class SetupChecks extends Base {
$description = $this->richTextFormatter->richToParsed($description, $descriptionParameters);
}
$output->writeln(
- "\t\t" .
- ($styleTag !== null ? "<{$styleTag}>" : '') .
- "{$emoji} " .
- ($check->getName() ?? $check::class) .
- ($description !== null ? ': ' . $description : '') .
- ($styleTag !== null ? "</{$styleTag}>" : ''),
+ "\t\t"
+ . ($styleTag !== null ? "<{$styleTag}>" : '')
+ . "{$emoji} "
+ . ($check->getName() ?? $check::class)
+ . ($description !== null ? ': ' . $description : '')
+ . ($styleTag !== null ? "</{$styleTag}>" : ''),
$verbosity
);
}
diff --git a/core/Command/SystemTag/Add.php b/core/Command/SystemTag/Add.php
index 92ed42c37bc..df8b507b07d 100644
--- a/core/Command/SystemTag/Add.php
+++ b/core/Command/SystemTag/Add.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/SystemTag/Delete.php b/core/Command/SystemTag/Delete.php
index 73b3dc8187a..f657f4473ab 100644
--- a/core/Command/SystemTag/Delete.php
+++ b/core/Command/SystemTag/Delete.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/SystemTag/Edit.php b/core/Command/SystemTag/Edit.php
index 614f2798ce4..09c662e58e9 100644
--- a/core/Command/SystemTag/Edit.php
+++ b/core/Command/SystemTag/Edit.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/SystemTag/ListCommand.php b/core/Command/SystemTag/ListCommand.php
index 836869f157d..2c6435d6faf 100644
--- a/core/Command/SystemTag/ListCommand.php
+++ b/core/Command/SystemTag/ListCommand.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/TaskProcessing/EnabledCommand.php b/core/Command/TaskProcessing/EnabledCommand.php
index b382de12a81..7195d19a7a4 100644
--- a/core/Command/TaskProcessing/EnabledCommand.php
+++ b/core/Command/TaskProcessing/EnabledCommand.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
@@ -47,15 +48,15 @@ class EnabledCommand extends Base {
} else {
$taskTypeSettings = json_decode($json, true, flags: JSON_THROW_ON_ERROR);
}
-
+
$taskTypeSettings[$taskType] = $enabled;
-
+
$this->config->setAppValue('core', 'ai.taskprocessing_type_preferences', json_encode($taskTypeSettings));
$this->writeArrayInOutputFormat($input, $output, $taskTypeSettings);
return 0;
} catch (\JsonException $e) {
throw new \JsonException('Error in TaskType DB entry');
}
-
+
}
}
diff --git a/core/Command/TaskProcessing/GetCommand.php b/core/Command/TaskProcessing/GetCommand.php
index a61ddbe1621..5c4fd17f2f8 100644
--- a/core/Command/TaskProcessing/GetCommand.php
+++ b/core/Command/TaskProcessing/GetCommand.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/TaskProcessing/ListCommand.php b/core/Command/TaskProcessing/ListCommand.php
index f4ea76729d9..81eb258d35d 100644
--- a/core/Command/TaskProcessing/ListCommand.php
+++ b/core/Command/TaskProcessing/ListCommand.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/TaskProcessing/Statistics.php b/core/Command/TaskProcessing/Statistics.php
index a3dc9ee0254..86478b34db1 100644
--- a/core/Command/TaskProcessing/Statistics.php
+++ b/core/Command/TaskProcessing/Statistics.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/TwoFactorAuth/Base.php b/core/Command/TwoFactorAuth/Base.php
index 70e33bfd23c..034ea36afca 100644
--- a/core/Command/TwoFactorAuth/Base.php
+++ b/core/Command/TwoFactorAuth/Base.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/Upgrade.php b/core/Command/Upgrade.php
index 1b6fe369ceb..c3d6aacc714 100644
--- a/core/Command/Upgrade.php
+++ b/core/Command/Upgrade.php
@@ -227,9 +227,9 @@ class Upgrade extends Command {
$trustedDomains = $this->config->getSystemValue('trusted_domains', []);
if (empty($trustedDomains)) {
$output->write(
- '<warning>The setting "trusted_domains" could not be ' .
- 'set automatically by the upgrade script, ' .
- 'please set it manually</warning>'
+ '<warning>The setting "trusted_domains" could not be '
+ . 'set automatically by the upgrade script, '
+ . 'please set it manually</warning>'
);
}
}
diff --git a/core/Command/User/Add.php b/core/Command/User/Add.php
index 033d2bdc9a2..4de4e247991 100644
--- a/core/Command/User/Add.php
+++ b/core/Command/User/Add.php
@@ -52,7 +52,7 @@ class Add extends Command {
'password-from-env',
null,
InputOption::VALUE_NONE,
- 'read password from environment variable OC_PASS'
+ 'read password from environment variable NC_PASS/OC_PASS'
)
->addOption(
'generate-password',
@@ -91,10 +91,10 @@ class Add extends Command {
// Setup password.
if ($input->getOption('password-from-env')) {
- $password = getenv('OC_PASS');
+ $password = getenv('NC_PASS') ?: getenv('OC_PASS');
if (!$password) {
- $output->writeln('<error>--password-from-env given, but OC_PASS is empty!</error>');
+ $output->writeln('<error>--password-from-env given, but NC_PASS/OC_PASS is empty!</error>');
return 1;
}
} elseif ($input->getOption('generate-password')) {
diff --git a/core/Command/User/AuthTokens/Add.php b/core/Command/User/AuthTokens/Add.php
index ad4bf732bd0..89b20535c63 100644
--- a/core/Command/User/AuthTokens/Add.php
+++ b/core/Command/User/AuthTokens/Add.php
@@ -62,9 +62,9 @@ class Add extends Command {
}
if ($input->getOption('password-from-env')) {
- $password = getenv('NC_PASS') ?? getenv('OC_PASS');
+ $password = getenv('NC_PASS') ?: getenv('OC_PASS');
if (!$password) {
- $output->writeln('<error>--password-from-env given, but NC_PASS is empty!</error>');
+ $output->writeln('<error>--password-from-env given, but NC_PASS/OC_PASS is empty!</error>');
return 1;
}
} elseif ($input->isInteractive()) {
diff --git a/core/Command/User/AuthTokens/Delete.php b/core/Command/User/AuthTokens/Delete.php
index f2c75a8ad99..2047d2eae2a 100644
--- a/core/Command/User/AuthTokens/Delete.php
+++ b/core/Command/User/AuthTokens/Delete.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/User/AuthTokens/ListCommand.php b/core/Command/User/AuthTokens/ListCommand.php
index 1ebd4a0f0b4..b36aa717505 100644
--- a/core/Command/User/AuthTokens/ListCommand.php
+++ b/core/Command/User/AuthTokens/ListCommand.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/User/Info.php b/core/Command/User/Info.php
index 220bbbf571d..e7fc9286e74 100644
--- a/core/Command/User/Info.php
+++ b/core/Command/User/Info.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/User/ListCommand.php b/core/Command/User/ListCommand.php
index e7fb3de71f0..66b831c793b 100644
--- a/core/Command/User/ListCommand.php
+++ b/core/Command/User/ListCommand.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/User/Profile.php b/core/Command/User/Profile.php
new file mode 100644
index 00000000000..fd5fbed08cd
--- /dev/null
+++ b/core/Command/User/Profile.php
@@ -0,0 +1,234 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+namespace OC\Core\Command\User;
+
+use OC\Core\Command\Base;
+use OCP\Accounts\IAccount;
+use OCP\Accounts\IAccountManager;
+use OCP\Accounts\PropertyDoesNotExistException;
+use OCP\IUser;
+use OCP\IUserManager;
+use Stecman\Component\Symfony\Console\BashCompletion\CompletionContext;
+use Symfony\Component\Console\Input\InputArgument;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Input\InputOption;
+use Symfony\Component\Console\Output\OutputInterface;
+
+class Profile extends Base {
+ public function __construct(
+ protected IUserManager $userManager,
+ protected IAccountManager $accountManager,
+ ) {
+ parent::__construct();
+ }
+
+ protected function configure() {
+ parent::configure();
+ $this
+ ->setName('user:profile')
+ ->setDescription('Read and modify user profile properties')
+ ->addArgument(
+ 'uid',
+ InputArgument::REQUIRED,
+ 'Account ID used to login'
+ )
+ ->addArgument(
+ 'key',
+ InputArgument::OPTIONAL,
+ 'Profile property to set, get or delete',
+ ''
+ )
+
+ // Get
+ ->addOption(
+ 'default-value',
+ null,
+ InputOption::VALUE_REQUIRED,
+ '(Only applicable on get) If no default value is set and the property does not exist, the command will exit with 1'
+ )
+
+ // Set
+ ->addArgument(
+ 'value',
+ InputArgument::OPTIONAL,
+ 'The new value of the property',
+ null
+ )
+ ->addOption(
+ 'update-only',
+ null,
+ InputOption::VALUE_NONE,
+ 'Only updates the value, if it is not set before, it is not being added'
+ )
+
+ // Delete
+ ->addOption(
+ 'delete',
+ null,
+ InputOption::VALUE_NONE,
+ 'Specify this option to delete the property value'
+ )
+ ->addOption(
+ 'error-if-not-exists',
+ null,
+ InputOption::VALUE_NONE,
+ 'Checks whether the property exists before deleting it'
+ )
+ ;
+ }
+
+ protected function checkInput(InputInterface $input): IUser {
+ $uid = $input->getArgument('uid');
+ $user = $this->userManager->get($uid);
+ if (!$user) {
+ throw new \InvalidArgumentException('The user "' . $uid . '" does not exist.');
+ }
+ // normalize uid
+ $input->setArgument('uid', $user->getUID());
+
+ $key = $input->getArgument('key');
+ if ($key === '') {
+ if ($input->hasParameterOption('--default-value')) {
+ throw new \InvalidArgumentException('The "default-value" option can only be used when specifying a key.');
+ }
+ if ($input->getArgument('value') !== null) {
+ throw new \InvalidArgumentException('The value argument can only be used when specifying a key.');
+ }
+ if ($input->getOption('delete')) {
+ throw new \InvalidArgumentException('The "delete" option can only be used when specifying a key.');
+ }
+ }
+
+ if ($input->getArgument('value') !== null && $input->hasParameterOption('--default-value')) {
+ throw new \InvalidArgumentException('The value argument can not be used together with "default-value".');
+ }
+ if ($input->getOption('update-only') && $input->getArgument('value') === null) {
+ throw new \InvalidArgumentException('The "update-only" option can only be used together with "value".');
+ }
+
+ if ($input->getOption('delete') && $input->hasParameterOption('--default-value')) {
+ throw new \InvalidArgumentException('The "delete" option can not be used together with "default-value".');
+ }
+ if ($input->getOption('delete') && $input->getArgument('value') !== null) {
+ throw new \InvalidArgumentException('The "delete" option can not be used together with "value".');
+ }
+ if ($input->getOption('error-if-not-exists') && !$input->getOption('delete')) {
+ throw new \InvalidArgumentException('The "error-if-not-exists" option can only be used together with "delete".');
+ }
+
+ return $user;
+ }
+
+ protected function execute(InputInterface $input, OutputInterface $output): int {
+ try {
+ $user = $this->checkInput($input);
+ } catch (\InvalidArgumentException $e) {
+ $output->writeln('<error>' . $e->getMessage() . '</error>');
+ return self::FAILURE;
+ }
+
+ $uid = $input->getArgument('uid');
+ $key = $input->getArgument('key');
+ $userAccount = $this->accountManager->getAccount($user);
+
+ if ($key === '') {
+ $settings = $this->getAllProfileProperties($userAccount);
+ $this->writeArrayInOutputFormat($input, $output, $settings);
+ return self::SUCCESS;
+ }
+
+ $value = $this->getStoredValue($userAccount, $key);
+ $inputValue = $input->getArgument('value');
+ if ($inputValue !== null) {
+ if ($input->hasParameterOption('--update-only') && $value === null) {
+ $output->writeln('<error>The property does not exist for user "' . $uid . '".</error>');
+ return self::FAILURE;
+ }
+
+ return $this->editProfileProperty($output, $userAccount, $key, $inputValue);
+ } elseif ($input->hasParameterOption('--delete')) {
+ if ($input->hasParameterOption('--error-if-not-exists') && $value === null) {
+ $output->writeln('<error>The property does not exist for user "' . $uid . '".</error>');
+ return self::FAILURE;
+ }
+
+ return $this->deleteProfileProperty($output, $userAccount, $key);
+ } elseif ($value !== null) {
+ $output->writeln($value);
+ } elseif ($input->hasParameterOption('--default-value')) {
+ $output->writeln($input->getOption('default-value'));
+ } else {
+ $output->writeln('<error>The property does not exist for user "' . $uid . '".</error>');
+ return self::FAILURE;
+ }
+
+ return self::SUCCESS;
+ }
+
+ private function deleteProfileProperty(OutputInterface $output, IAccount $userAccount, string $key): int {
+ return $this->editProfileProperty($output, $userAccount, $key, '');
+ }
+
+ private function editProfileProperty(OutputInterface $output, IAccount $userAccount, string $key, string $value): int {
+ try {
+ $userAccount->getProperty($key)->setValue($value);
+ } catch (PropertyDoesNotExistException $exception) {
+ $output->writeln('<error>' . $exception->getMessage() . '</error>');
+ return self::FAILURE;
+ }
+
+ $this->accountManager->updateAccount($userAccount);
+ return self::SUCCESS;
+ }
+
+ private function getStoredValue(IAccount $userAccount, string $key): ?string {
+ try {
+ $property = $userAccount->getProperty($key);
+ } catch (PropertyDoesNotExistException) {
+ return null;
+ }
+ return $property->getValue() === '' ? null : $property->getValue();
+ }
+
+ private function getAllProfileProperties(IAccount $userAccount): array {
+ $properties = [];
+
+ foreach ($userAccount->getAllProperties() as $property) {
+ if ($property->getValue() !== '') {
+ $properties[$property->getName()] = $property->getValue();
+ }
+ }
+
+ return $properties;
+ }
+
+ /**
+ * @param string $argumentName
+ * @param CompletionContext $context
+ * @return string[]
+ */
+ public function completeArgumentValues($argumentName, CompletionContext $context): array {
+ if ($argumentName === 'uid') {
+ return array_map(static fn (IUser $user) => $user->getUID(), $this->userManager->search($context->getCurrentWord()));
+ }
+ if ($argumentName === 'key') {
+ $userId = $context->getWordAtIndex($context->getWordIndex() - 1);
+ $user = $this->userManager->get($userId);
+ if (!($user instanceof IUser)) {
+ return [];
+ }
+
+ $account = $this->accountManager->getAccount($user);
+
+ $properties = $this->getAllProfileProperties($account);
+ return array_keys($properties);
+ }
+ return [];
+ }
+}
diff --git a/core/Command/User/ResetPassword.php b/core/Command/User/ResetPassword.php
index 2f18c3d473e..0e8b1325770 100644
--- a/core/Command/User/ResetPassword.php
+++ b/core/Command/User/ResetPassword.php
@@ -41,7 +41,7 @@ class ResetPassword extends Base {
'password-from-env',
null,
InputOption::VALUE_NONE,
- 'read password from environment variable OC_PASS'
+ 'read password from environment variable NC_PASS/OC_PASS'
)
;
}
@@ -56,9 +56,9 @@ class ResetPassword extends Base {
}
if ($input->getOption('password-from-env')) {
- $password = getenv('OC_PASS');
+ $password = getenv('NC_PASS') ?: getenv('OC_PASS');
if (!$password) {
- $output->writeln('<error>--password-from-env given, but OC_PASS is empty!</error>');
+ $output->writeln('<error>--password-from-env given, but NC_PASS/OC_PASS is empty!</error>');
return 1;
}
} elseif ($input->isInteractive()) {
diff --git a/core/Command/User/Setting.php b/core/Command/User/Setting.php
index 16e851d8252..7fc5aab1dc7 100644
--- a/core/Command/User/Setting.php
+++ b/core/Command/User/Setting.php
@@ -155,7 +155,8 @@ class Setting extends Base {
$user = $this->userManager->get($uid);
if ($user instanceof IUser) {
if ($key === 'email') {
- $user->setEMailAddress($input->getArgument('value'));
+ $email = $input->getArgument('value');
+ $user->setSystemEMailAddress(mb_strtolower(trim($email)));
} elseif ($key === 'display_name') {
if (!$user->setDisplayName($input->getArgument('value'))) {
if ($user->getDisplayName() === $input->getArgument('value')) {
diff --git a/core/Command/User/SyncAccountDataCommand.php b/core/Command/User/SyncAccountDataCommand.php
index 3e3ba3961ee..c353df6fe9f 100644
--- a/core/Command/User/SyncAccountDataCommand.php
+++ b/core/Command/User/SyncAccountDataCommand.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Command/User/Welcome.php b/core/Command/User/Welcome.php
index 35ce32ff174..65637759689 100644
--- a/core/Command/User/Welcome.php
+++ b/core/Command/User/Welcome.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2023 FedericoHeichou <federicoheichou@gmail.com>
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Controller/AppPasswordController.php b/core/Controller/AppPasswordController.php
index 41a45926ba7..e5edc165bf5 100644
--- a/core/Controller/AppPasswordController.php
+++ b/core/Controller/AppPasswordController.php
@@ -77,7 +77,7 @@ class AppPasswordController extends OCSController {
$password = null;
}
- $userAgent = $this->request->getHeader('USER_AGENT');
+ $userAgent = $this->request->getHeader('user-agent');
$token = $this->random->generate(72, ISecureRandom::CHAR_UPPER . ISecureRandom::CHAR_LOWER . ISecureRandom::CHAR_DIGITS);
diff --git a/core/Controller/AvatarController.php b/core/Controller/AvatarController.php
index 4e7a2f8714a..b577b2fd460 100644
--- a/core/Controller/AvatarController.php
+++ b/core/Controller/AvatarController.php
@@ -193,8 +193,8 @@ class AvatarController extends Controller {
}
} elseif (!is_null($files)) {
if (
- $files['error'][0] === 0 &&
- is_uploaded_file($files['tmp_name'][0])
+ $files['error'][0] === 0
+ && is_uploaded_file($files['tmp_name'][0])
) {
if ($files['size'][0] > 20 * 1024 * 1024) {
return new JSONResponse(
diff --git a/core/Controller/CSRFTokenController.php b/core/Controller/CSRFTokenController.php
index 4fdd669e144..edf7c26e94c 100644
--- a/core/Controller/CSRFTokenController.php
+++ b/core/Controller/CSRFTokenController.php
@@ -34,6 +34,8 @@ class CSRFTokenController extends Controller {
*
* 200: CSRF token returned
* 403: Strict cookie check failed
+ *
+ * @NoTwoFactorRequired
*/
#[PublicPage]
#[NoCSRFRequired]
diff --git a/core/Controller/ClientFlowLoginController.php b/core/Controller/ClientFlowLoginController.php
index affb60f2b2e..4464af890c4 100644
--- a/core/Controller/ClientFlowLoginController.php
+++ b/core/Controller/ClientFlowLoginController.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
@@ -17,6 +18,7 @@ use OCP\AppFramework\Http\Attribute\FrontpageRoute;
use OCP\AppFramework\Http\Attribute\NoAdminRequired;
use OCP\AppFramework\Http\Attribute\NoCSRFRequired;
use OCP\AppFramework\Http\Attribute\OpenAPI;
+use OCP\AppFramework\Http\Attribute\PasswordConfirmationRequired;
use OCP\AppFramework\Http\Attribute\PublicPage;
use OCP\AppFramework\Http\Attribute\UseSession;
use OCP\AppFramework\Http\ContentSecurityPolicy;
@@ -64,7 +66,7 @@ class ClientFlowLoginController extends Controller {
}
private function getClientName(): string {
- $userAgent = $this->request->getHeader('USER_AGENT');
+ $userAgent = $this->request->getHeader('user-agent');
return $userAgent !== '' ? $userAgent : 'unknown';
}
@@ -108,8 +110,8 @@ class ClientFlowLoginController extends Controller {
$this->appName,
'error',
[
- 'errors' =>
- [
+ 'errors'
+ => [
[
'error' => 'Access Forbidden',
'hint' => 'Invalid request',
@@ -214,6 +216,7 @@ class ClientFlowLoginController extends Controller {
#[NoAdminRequired]
#[UseSession]
+ #[PasswordConfirmationRequired(strict: false)]
#[FrontpageRoute(verb: 'POST', url: '/login/flow')]
public function generateAppPassword(
string $stateToken,
diff --git a/core/Controller/ClientFlowLoginV2Controller.php b/core/Controller/ClientFlowLoginV2Controller.php
index e21a0cb250d..8c0c1e8179d 100644
--- a/core/Controller/ClientFlowLoginV2Controller.php
+++ b/core/Controller/ClientFlowLoginV2Controller.php
@@ -19,6 +19,7 @@ use OCP\AppFramework\Http\Attribute\FrontpageRoute;
use OCP\AppFramework\Http\Attribute\NoAdminRequired;
use OCP\AppFramework\Http\Attribute\NoCSRFRequired;
use OCP\AppFramework\Http\Attribute\OpenAPI;
+use OCP\AppFramework\Http\Attribute\PasswordConfirmationRequired;
use OCP\AppFramework\Http\Attribute\PublicPage;
use OCP\AppFramework\Http\Attribute\UseSession;
use OCP\AppFramework\Http\JSONResponse;
@@ -228,6 +229,7 @@ class ClientFlowLoginV2Controller extends Controller {
#[NoAdminRequired]
#[UseSession]
+ #[PasswordConfirmationRequired(strict: false)]
#[FrontpageRoute(verb: 'POST', url: '/login/v2/grant')]
public function generateAppPassword(?string $stateToken): Response {
if ($stateToken === null) {
@@ -291,7 +293,7 @@ class ClientFlowLoginV2Controller extends Controller {
#[OpenAPI(scope: OpenAPI::SCOPE_DEFAULT)]
public function init(): JSONResponse {
// Get client user agent
- $userAgent = $this->request->getHeader('USER_AGENT');
+ $userAgent = $this->request->getHeader('user-agent');
$tokens = $this->loginFlowV2Service->createTokens($userAgent);
diff --git a/core/Controller/ContactsMenuController.php b/core/Controller/ContactsMenuController.php
index f4ded1ed42b..d90ee8a1c61 100644
--- a/core/Controller/ContactsMenuController.php
+++ b/core/Controller/ContactsMenuController.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Controller/GuestAvatarController.php b/core/Controller/GuestAvatarController.php
index 818b25a0c80..711158e0708 100644
--- a/core/Controller/GuestAvatarController.php
+++ b/core/Controller/GuestAvatarController.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Controller/LoginController.php b/core/Controller/LoginController.php
index 7e8afd9f083..5a21d27898f 100644
--- a/core/Controller/LoginController.php
+++ b/core/Controller/LoginController.php
@@ -93,8 +93,8 @@ class LoginController extends Controller {
$this->session->close();
if (
- $this->request->getServerProtocol() === 'https' &&
- !$this->request->isUserAgent([Request::USER_AGENT_CHROME, Request::USER_AGENT_ANDROID_MOBILE_CHROME])
+ $this->request->getServerProtocol() === 'https'
+ && !$this->request->isUserAgent([Request::USER_AGENT_CHROME, Request::USER_AGENT_ANDROID_MOBILE_CHROME])
) {
$response->addHeader('Clear-Site-Data', '"cache", "storage"');
}
diff --git a/core/Controller/LostController.php b/core/Controller/LostController.php
index f940a3cfeee..d956f3427f2 100644
--- a/core/Controller/LostController.php
+++ b/core/Controller/LostController.php
@@ -64,7 +64,7 @@ class LostController extends Controller {
private Defaults $defaults,
private IL10N $l10n,
private IConfig $config,
- protected string $from,
+ protected string $defaultMailAddress,
private IManager $encryptionManager,
private IMailer $mailer,
private LoggerInterface $logger,
@@ -281,7 +281,7 @@ class LostController extends Controller {
try {
$message = $this->mailer->createMessage();
$message->setTo([$email => $user->getDisplayName()]);
- $message->setFrom([$this->from => $this->defaults->getName()]);
+ $message->setFrom([$this->defaultMailAddress => $this->defaults->getName()]);
$message->useTemplate($emailTemplate);
$this->mailer->send($message);
} catch (Exception $e) {
diff --git a/core/Controller/NavigationController.php b/core/Controller/NavigationController.php
index 5fc929b4eb4..017061ef979 100644
--- a/core/Controller/NavigationController.php
+++ b/core/Controller/NavigationController.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Controller/OCJSController.php b/core/Controller/OCJSController.php
index 176558b013d..ea372b43b2e 100644
--- a/core/Controller/OCJSController.php
+++ b/core/Controller/OCJSController.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Controller/OCSController.php b/core/Controller/OCSController.php
index b05ddd0e298..fb0280479c4 100644
--- a/core/Controller/OCSController.php
+++ b/core/Controller/OCSController.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Controller/PreviewController.php b/core/Controller/PreviewController.php
index ea90be31078..aac49c06d57 100644
--- a/core/Controller/PreviewController.php
+++ b/core/Controller/PreviewController.php
@@ -152,15 +152,12 @@ class PreviewController extends Controller {
// Is this header is set it means our UI is doing a preview for no-download shares
// we check a header so we at least prevent people from using the link directly (obfuscation)
- $isNextcloudPreview = $this->request->getHeader('X-NC-Preview') === 'true';
+ $isNextcloudPreview = $this->request->getHeader('x-nc-preview') === 'true';
$storage = $node->getStorage();
if ($isNextcloudPreview === false && $storage->instanceOfStorage(ISharedStorage::class)) {
/** @var ISharedStorage $storage */
$share = $storage->getShare();
- $attributes = $share->getAttributes();
- // No "allow preview" header set, so we must check if
- // the share has not explicitly disabled download permissions
- if ($attributes?->getAttribute('permissions', 'download') === false) {
+ if (!$share->canSeeContent()) {
return new DataResponse([], Http::STATUS_FORBIDDEN);
}
}
diff --git a/core/Controller/TaskProcessingApiController.php b/core/Controller/TaskProcessingApiController.php
index cf62b4f6b6b..90a0e9ba14a 100644
--- a/core/Controller/TaskProcessingApiController.php
+++ b/core/Controller/TaskProcessingApiController.php
@@ -20,12 +20,12 @@ use OCP\AppFramework\Http\Attribute\NoAdminRequired;
use OCP\AppFramework\Http\Attribute\NoCSRFRequired;
use OCP\AppFramework\Http\Attribute\PublicPage;
use OCP\AppFramework\Http\Attribute\UserRateLimit;
-use OCP\AppFramework\Http\DataDownloadResponse;
use OCP\AppFramework\Http\DataResponse;
+use OCP\AppFramework\Http\StreamResponse;
use OCP\AppFramework\OCSController;
use OCP\Files\File;
-use OCP\Files\GenericFileException;
use OCP\Files\IAppData;
+use OCP\Files\IMimeTypeDetector;
use OCP\Files\IRootFolder;
use OCP\Files\NotPermittedException;
use OCP\IL10N;
@@ -56,6 +56,7 @@ class TaskProcessingApiController extends OCSController {
private ?string $userId,
private IRootFolder $rootFolder,
private IAppData $appData,
+ private IMimeTypeDetector $mimeTypeDetector,
) {
parent::__construct($appName, $request);
}
@@ -302,7 +303,7 @@ class TaskProcessingApiController extends OCSController {
*
* @param int $taskId The id of the task
* @param int $fileId The file id of the file to retrieve
- * @return DataDownloadResponse<Http::STATUS_OK, string, array{}>|DataResponse<Http::STATUS_INTERNAL_SERVER_ERROR|Http::STATUS_NOT_FOUND, array{message: string}, array{}>
+ * @return StreamResponse<Http::STATUS_OK, array{}>|DataResponse<Http::STATUS_INTERNAL_SERVER_ERROR|Http::STATUS_NOT_FOUND, array{message: string}, array{}>
*
* 200: File content returned
* 404: Task or file not found
@@ -310,12 +311,14 @@ class TaskProcessingApiController extends OCSController {
#[NoAdminRequired]
#[NoCSRFRequired]
#[ApiRoute(verb: 'GET', url: '/tasks/{taskId}/file/{fileId}', root: '/taskprocessing')]
- public function getFileContents(int $taskId, int $fileId): DataDownloadResponse|DataResponse {
+ public function getFileContents(int $taskId, int $fileId): StreamResponse|DataResponse {
try {
$task = $this->taskProcessingManager->getUserTask($taskId, $this->userId);
return $this->getFileContentsInternal($task, $fileId);
} catch (NotFoundException) {
return new DataResponse(['message' => $this->l->t('Not found')], Http::STATUS_NOT_FOUND);
+ } catch (LockedException) {
+ return new DataResponse(['message' => $this->l->t('Node is locked')], Http::STATUS_INTERNAL_SERVER_ERROR);
} catch (Exception) {
return new DataResponse(['message' => $this->l->t('Internal error')], Http::STATUS_INTERNAL_SERVER_ERROR);
}
@@ -326,19 +329,21 @@ class TaskProcessingApiController extends OCSController {
*
* @param int $taskId The id of the task
* @param int $fileId The file id of the file to retrieve
- * @return DataDownloadResponse<Http::STATUS_OK, string, array{}>|DataResponse<Http::STATUS_INTERNAL_SERVER_ERROR|Http::STATUS_NOT_FOUND, array{message: string}, array{}>
+ * @return StreamResponse<Http::STATUS_OK, array{}>|DataResponse<Http::STATUS_INTERNAL_SERVER_ERROR|Http::STATUS_NOT_FOUND, array{message: string}, array{}>
*
* 200: File content returned
* 404: Task or file not found
*/
#[ExAppRequired]
#[ApiRoute(verb: 'GET', url: '/tasks_provider/{taskId}/file/{fileId}', root: '/taskprocessing')]
- public function getFileContentsExApp(int $taskId, int $fileId): DataDownloadResponse|DataResponse {
+ public function getFileContentsExApp(int $taskId, int $fileId): StreamResponse|DataResponse {
try {
$task = $this->taskProcessingManager->getTask($taskId);
return $this->getFileContentsInternal($task, $fileId);
} catch (NotFoundException) {
return new DataResponse(['message' => $this->l->t('Not found')], Http::STATUS_NOT_FOUND);
+ } catch (LockedException) {
+ return new DataResponse(['message' => $this->l->t('Node is locked')], Http::STATUS_INTERNAL_SERVER_ERROR);
} catch (Exception) {
return new DataResponse(['message' => $this->l->t('Internal error')], Http::STATUS_INTERNAL_SERVER_ERROR);
}
@@ -381,12 +386,11 @@ class TaskProcessingApiController extends OCSController {
/**
* @throws NotPermittedException
* @throws NotFoundException
- * @throws GenericFileException
* @throws LockedException
*
- * @return DataDownloadResponse<Http::STATUS_OK, string, array{}>|DataResponse<Http::STATUS_INTERNAL_SERVER_ERROR|Http::STATUS_NOT_FOUND, array{message: string}, array{}>
+ * @return StreamResponse<Http::STATUS_OK, array{}>|DataResponse<Http::STATUS_INTERNAL_SERVER_ERROR|Http::STATUS_NOT_FOUND, array{message: string}, array{}>
*/
- private function getFileContentsInternal(Task $task, int $fileId): DataDownloadResponse|DataResponse {
+ private function getFileContentsInternal(Task $task, int $fileId): StreamResponse|DataResponse {
$ids = $this->extractFileIdsFromTask($task);
if (!in_array($fileId, $ids)) {
return new DataResponse(['message' => $this->l->t('Not found')], Http::STATUS_NOT_FOUND);
@@ -403,7 +407,25 @@ class TaskProcessingApiController extends OCSController {
} elseif (!$node instanceof File) {
throw new NotFoundException('Node is not a file');
}
- return new DataDownloadResponse($node->getContent(), $node->getName(), $node->getMimeType());
+
+ $contentType = $node->getMimeType();
+ if (function_exists('mime_content_type')) {
+ $mimeType = mime_content_type($node->fopen('rb'));
+ if ($mimeType !== false) {
+ $mimeType = $this->mimeTypeDetector->getSecureMimeType($mimeType);
+ if ($mimeType !== 'application/octet-stream') {
+ $contentType = $mimeType;
+ }
+ }
+ }
+
+ $response = new StreamResponse($node->fopen('rb'));
+ $response->addHeader(
+ 'Content-Disposition',
+ 'attachment; filename="' . rawurldecode($node->getName()) . '"'
+ );
+ $response->addHeader('Content-Type', $contentType);
+ return $response;
}
/**
@@ -553,23 +575,51 @@ class TaskProcessingApiController extends OCSController {
#[ApiRoute(verb: 'GET', url: '/tasks_provider/next', root: '/taskprocessing')]
public function getNextScheduledTask(array $providerIds, array $taskTypeIds): DataResponse {
try {
+ $providerIdsBasedOnTaskTypesWithNull = array_unique(array_map(function ($taskTypeId) {
+ try {
+ return $this->taskProcessingManager->getPreferredProvider($taskTypeId)->getId();
+ } catch (Exception) {
+ return null;
+ }
+ }, $taskTypeIds));
+
+ $providerIdsBasedOnTaskTypes = array_filter($providerIdsBasedOnTaskTypesWithNull, fn ($providerId) => $providerId !== null);
+
// restrict $providerIds to providers that are configured as preferred for the passed task types
- $providerIds = array_values(array_intersect(array_unique(array_map(fn ($taskTypeId) => $this->taskProcessingManager->getPreferredProvider($taskTypeId)->getId(), $taskTypeIds)), $providerIds));
+ $possibleProviderIds = array_values(array_intersect($providerIdsBasedOnTaskTypes, $providerIds));
+
// restrict $taskTypeIds to task types that can actually be run by one of the now restricted providers
- $taskTypeIds = array_values(array_filter($taskTypeIds, fn ($taskTypeId) => in_array($this->taskProcessingManager->getPreferredProvider($taskTypeId)->getId(), $providerIds, true)));
- if (count($providerIds) === 0 || count($taskTypeIds) === 0) {
+ $possibleTaskTypeIds = array_values(array_filter($taskTypeIds, function ($taskTypeId) use ($possibleProviderIds) {
+ try {
+ $providerForTaskType = $this->taskProcessingManager->getPreferredProvider($taskTypeId)->getId();
+ } catch (Exception) {
+ // no provider found for task type
+ return false;
+ }
+ return in_array($providerForTaskType, $possibleProviderIds, true);
+ }));
+
+ if (count($possibleProviderIds) === 0 || count($possibleTaskTypeIds) === 0) {
throw new NotFoundException();
}
$taskIdsToIgnore = [];
while (true) {
- $task = $this->taskProcessingManager->getNextScheduledTask($taskTypeIds, $taskIdsToIgnore);
- $provider = $this->taskProcessingManager->getPreferredProvider($task->getTaskTypeId());
- if (in_array($provider->getId(), $providerIds, true)) {
- if ($this->taskProcessingManager->lockTask($task)) {
- break;
+ // Until we find a task whose task type is set to be provided by the providers requested with this request
+ // Or no scheduled task is found anymore (given the taskIds to ignore)
+ $task = $this->taskProcessingManager->getNextScheduledTask($possibleTaskTypeIds, $taskIdsToIgnore);
+ try {
+ $provider = $this->taskProcessingManager->getPreferredProvider($task->getTaskTypeId());
+ if (in_array($provider->getId(), $possibleProviderIds, true)) {
+ if ($this->taskProcessingManager->lockTask($task)) {
+ break;
+ }
}
+ } catch (Exception) {
+ // There is no provider set for the task type of this task
+ // proceed to ignore this task
}
+
$taskIdsToIgnore[] = (int)$task->getId();
}
diff --git a/core/Controller/TwoFactorChallengeController.php b/core/Controller/TwoFactorChallengeController.php
index ef0f420fc82..4791139bb12 100644
--- a/core/Controller/TwoFactorChallengeController.php
+++ b/core/Controller/TwoFactorChallengeController.php
@@ -25,6 +25,7 @@ use OCP\IRequest;
use OCP\ISession;
use OCP\IURLGenerator;
use OCP\IUserSession;
+use OCP\Util;
use Psr\Log\LoggerInterface;
#[OpenAPI(scope: OpenAPI::SCOPE_IGNORE)]
@@ -89,6 +90,7 @@ class TwoFactorChallengeController extends Controller {
'logout_url' => $this->getLogoutUrl(),
'hasSetupProviders' => !empty($setupProviders),
];
+ Util::addScript('core', 'twofactor-request-token');
return new StandaloneTemplateResponse($this->appName, 'twofactorselectchallenge', $data, 'guest');
}
@@ -141,6 +143,7 @@ class TwoFactorChallengeController extends Controller {
if ($provider instanceof IProvidesCustomCSP) {
$response->setContentSecurityPolicy($provider->getCSP());
}
+ Util::addScript('core', 'twofactor-request-token');
return $response;
}
@@ -204,6 +207,7 @@ class TwoFactorChallengeController extends Controller {
'redirect_url' => $redirect_url,
];
+ Util::addScript('core', 'twofactor-request-token');
return new StandaloneTemplateResponse($this->appName, 'twofactorsetupselection', $data, 'guest');
}
@@ -235,6 +239,7 @@ class TwoFactorChallengeController extends Controller {
'template' => $tmpl->fetchPage(),
];
$response = new StandaloneTemplateResponse($this->appName, 'twofactorsetupchallenge', $data, 'guest');
+ Util::addScript('core', 'twofactor-request-token');
return $response;
}
diff --git a/core/Controller/WalledGardenController.php b/core/Controller/WalledGardenController.php
index b55e90675a1..d0bc0665534 100644
--- a/core/Controller/WalledGardenController.php
+++ b/core/Controller/WalledGardenController.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Controller/WhatsNewController.php b/core/Controller/WhatsNewController.php
index b3bb7becbac..af8c3d4853b 100644
--- a/core/Controller/WhatsNewController.php
+++ b/core/Controller/WhatsNewController.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Listener/AddMissingIndicesListener.php b/core/Listener/AddMissingIndicesListener.php
new file mode 100644
index 00000000000..f54dc7e17fe
--- /dev/null
+++ b/core/Listener/AddMissingIndicesListener.php
@@ -0,0 +1,214 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+namespace OC\Core\Listener;
+
+use OCP\DB\Events\AddMissingIndicesEvent;
+use OCP\EventDispatcher\Event;
+use OCP\EventDispatcher\IEventListener;
+
+/**
+ * @template-implements IEventListener<AddMissingIndicesEvent>
+ */
+class AddMissingIndicesListener implements IEventListener {
+
+ public function handle(Event $event): void {
+ if (!($event instanceof AddMissingIndicesEvent)) {
+ return;
+ }
+
+ $event->addMissingIndex(
+ 'share',
+ 'share_with_index',
+ ['share_with']
+ );
+ $event->addMissingIndex(
+ 'share',
+ 'parent_index',
+ ['parent']
+ );
+ $event->addMissingIndex(
+ 'share',
+ 'owner_index',
+ ['uid_owner']
+ );
+ $event->addMissingIndex(
+ 'share',
+ 'initiator_index',
+ ['uid_initiator']
+ );
+
+ $event->addMissingIndex(
+ 'filecache',
+ 'fs_mtime',
+ ['mtime']
+ );
+ $event->addMissingIndex(
+ 'filecache',
+ 'fs_size',
+ ['size']
+ );
+ $event->addMissingIndex(
+ 'filecache',
+ 'fs_storage_path_prefix',
+ ['storage', 'path'],
+ ['lengths' => [null, 64]]
+ );
+ $event->addMissingIndex(
+ 'filecache',
+ 'fs_parent',
+ ['parent']
+ );
+ $event->addMissingIndex(
+ 'filecache',
+ 'fs_name_hash',
+ ['name']
+ );
+
+ $event->addMissingIndex(
+ 'twofactor_providers',
+ 'twofactor_providers_uid',
+ ['uid']
+ );
+
+ $event->addMissingUniqueIndex(
+ 'login_flow_v2',
+ 'poll_token',
+ ['poll_token'],
+ [],
+ true
+ );
+ $event->addMissingUniqueIndex(
+ 'login_flow_v2',
+ 'login_token',
+ ['login_token'],
+ [],
+ true
+ );
+ $event->addMissingIndex(
+ 'login_flow_v2',
+ 'timestamp',
+ ['timestamp'],
+ [],
+ true
+ );
+
+ $event->addMissingIndex(
+ 'whats_new',
+ 'version',
+ ['version'],
+ [],
+ true
+ );
+
+ $event->addMissingIndex(
+ 'cards',
+ 'cards_abiduri',
+ ['addressbookid', 'uri'],
+ [],
+ true
+ );
+
+ $event->replaceIndex(
+ 'cards_properties',
+ ['cards_prop_abid'],
+ 'cards_prop_abid_name_value',
+ ['addressbookid', 'name', 'value'],
+ false,
+ );
+
+ $event->addMissingIndex(
+ 'calendarobjects_props',
+ 'calendarobject_calid_index',
+ ['calendarid', 'calendartype']
+ );
+
+ $event->addMissingIndex(
+ 'schedulingobjects',
+ 'schedulobj_principuri_index',
+ ['principaluri']
+ );
+
+ $event->addMissingIndex(
+ 'schedulingobjects',
+ 'schedulobj_lastmodified_idx',
+ ['lastmodified']
+ );
+
+ $event->addMissingIndex(
+ 'properties',
+ 'properties_path_index',
+ ['userid', 'propertypath']
+ );
+ $event->addMissingIndex(
+ 'properties',
+ 'properties_pathonly_index',
+ ['propertypath']
+ );
+ $event->addMissingIndex(
+ 'properties',
+ 'properties_name_path_user',
+ ['propertyname', 'propertypath', 'userid']
+ );
+
+
+ $event->addMissingIndex(
+ 'jobs',
+ 'job_lastcheck_reserved',
+ ['last_checked', 'reserved_at']
+ );
+
+ $event->addMissingIndex(
+ 'direct_edit',
+ 'direct_edit_timestamp',
+ ['timestamp']
+ );
+
+ $event->addMissingIndex(
+ 'preferences',
+ 'prefs_uid_lazy_i',
+ ['userid', 'lazy']
+ );
+ $event->addMissingIndex(
+ 'preferences',
+ 'prefs_app_key_ind_fl_i',
+ ['appid', 'configkey', 'indexed', 'flags']
+ );
+
+ $event->addMissingIndex(
+ 'mounts',
+ 'mounts_class_index',
+ ['mount_provider_class']
+ );
+ $event->addMissingIndex(
+ 'mounts',
+ 'mounts_user_root_path_index',
+ ['user_id', 'root_id', 'mount_point'],
+ ['lengths' => [null, null, 128]]
+ );
+
+ $event->addMissingIndex(
+ 'systemtag_object_mapping',
+ 'systag_by_tagid',
+ ['systemtagid', 'objecttype']
+ );
+
+ $event->addMissingIndex(
+ 'systemtag_object_mapping',
+ 'systag_by_objectid',
+ ['objectid']
+ );
+
+ $event->addMissingIndex(
+ 'systemtag_object_mapping',
+ 'systag_objecttype',
+ ['objecttype']
+ );
+ }
+}
diff --git a/core/Listener/AddMissingPrimaryKeyListener.php b/core/Listener/AddMissingPrimaryKeyListener.php
new file mode 100644
index 00000000000..1cd6951c9a1
--- /dev/null
+++ b/core/Listener/AddMissingPrimaryKeyListener.php
@@ -0,0 +1,68 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+namespace OC\Core\Listener;
+
+use OCP\DB\Events\AddMissingPrimaryKeyEvent;
+use OCP\EventDispatcher\Event;
+use OCP\EventDispatcher\IEventListener;
+
+/**
+ * @template-implements IEventListener<AddMissingPrimaryKeyEvent>
+ */
+class AddMissingPrimaryKeyListener implements IEventListener {
+
+ public function handle(Event $event): void {
+ if (!($event instanceof AddMissingPrimaryKeyEvent)) {
+ return;
+ }
+
+ $event->addMissingPrimaryKey(
+ 'federated_reshares',
+ 'federated_res_pk',
+ ['share_id'],
+ 'share_id_index'
+ );
+
+ $event->addMissingPrimaryKey(
+ 'systemtag_object_mapping',
+ 'som_pk',
+ ['objecttype', 'objectid', 'systemtagid'],
+ 'mapping'
+ );
+
+ $event->addMissingPrimaryKey(
+ 'comments_read_markers',
+ 'crm_pk',
+ ['user_id', 'object_type', 'object_id'],
+ 'comments_marker_index'
+ );
+
+ $event->addMissingPrimaryKey(
+ 'collres_resources',
+ 'crr_pk',
+ ['collection_id', 'resource_type', 'resource_id'],
+ 'collres_unique_res'
+ );
+
+ $event->addMissingPrimaryKey(
+ 'collres_accesscache',
+ 'cra_pk',
+ ['user_id', 'collection_id', 'resource_type', 'resource_id'],
+ 'collres_unique_user'
+ );
+
+ $event->addMissingPrimaryKey(
+ 'filecache_extended',
+ 'fce_pk',
+ ['fileid'],
+ 'fce_fileid_idx'
+ );
+ }
+}
diff --git a/core/Listener/FeedBackHandler.php b/core/Listener/FeedBackHandler.php
new file mode 100644
index 00000000000..d355b63f1bc
--- /dev/null
+++ b/core/Listener/FeedBackHandler.php
@@ -0,0 +1,60 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-FileCopyrightText: 2016 ownCloud, Inc.
+ * SPDX-License-Identifier: AGPL-3.0-only
+ */
+
+namespace OC\Core\Listener;
+
+use OC\Repair\Events\RepairAdvanceEvent;
+use OC\Repair\Events\RepairErrorEvent;
+use OC\Repair\Events\RepairFinishEvent;
+use OC\Repair\Events\RepairInfoEvent;
+use OC\Repair\Events\RepairStartEvent;
+use OC\Repair\Events\RepairStepEvent;
+use OC\Repair\Events\RepairWarningEvent;
+use OCP\EventDispatcher\Event;
+use OCP\IEventSource;
+use OCP\IL10N;
+
+class FeedBackHandler {
+ private int $progressStateMax = 100;
+ private int $progressStateStep = 0;
+ private string $currentStep = '';
+
+ public function __construct(
+ private IEventSource $eventSource,
+ private IL10N $l10n,
+ ) {
+ }
+
+ public function handleRepairFeedback(Event $event): void {
+ if ($event instanceof RepairStartEvent) {
+ $this->progressStateMax = $event->getMaxStep();
+ $this->progressStateStep = 0;
+ $this->currentStep = $event->getCurrentStepName();
+ } elseif ($event instanceof RepairAdvanceEvent) {
+ $this->progressStateStep += $event->getIncrement();
+ $desc = $event->getDescription();
+ if (empty($desc)) {
+ $desc = $this->currentStep;
+ }
+ $this->eventSource->send('success', $this->l10n->t('[%d / %d]: %s', [$this->progressStateStep, $this->progressStateMax, $desc]));
+ } elseif ($event instanceof RepairFinishEvent) {
+ $this->progressStateMax = $this->progressStateStep;
+ $this->eventSource->send('success', $this->l10n->t('[%d / %d]: %s', [$this->progressStateStep, $this->progressStateMax, $this->currentStep]));
+ } elseif ($event instanceof RepairStepEvent) {
+ $this->eventSource->send('success', $this->l10n->t('Repair step:') . ' ' . $event->getStepName());
+ } elseif ($event instanceof RepairInfoEvent) {
+ $this->eventSource->send('success', $this->l10n->t('Repair info:') . ' ' . $event->getMessage());
+ } elseif ($event instanceof RepairWarningEvent) {
+ $this->eventSource->send('notice', $this->l10n->t('Repair warning:') . ' ' . $event->getMessage());
+ } elseif ($event instanceof RepairErrorEvent) {
+ $this->eventSource->send('error', $this->l10n->t('Repair error:') . ' ' . $event->getMessage());
+ }
+ }
+}
diff --git a/core/Migrations/Version13000Date20170705121758.php b/core/Migrations/Version13000Date20170705121758.php
index 7233cc0302e..17262cf0743 100644
--- a/core/Migrations/Version13000Date20170705121758.php
+++ b/core/Migrations/Version13000Date20170705121758.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Migrations/Version13000Date20170718121200.php b/core/Migrations/Version13000Date20170718121200.php
index 1adbf2f0ea2..d33d489c579 100644
--- a/core/Migrations/Version13000Date20170718121200.php
+++ b/core/Migrations/Version13000Date20170718121200.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Migrations/Version13000Date20170814074715.php b/core/Migrations/Version13000Date20170814074715.php
index 73de1af0e0a..6e7ca19fc3c 100644
--- a/core/Migrations/Version13000Date20170814074715.php
+++ b/core/Migrations/Version13000Date20170814074715.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Migrations/Version13000Date20170919121250.php b/core/Migrations/Version13000Date20170919121250.php
index ae6eff99bcd..b3e9541d605 100644
--- a/core/Migrations/Version13000Date20170919121250.php
+++ b/core/Migrations/Version13000Date20170919121250.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Migrations/Version13000Date20170926101637.php b/core/Migrations/Version13000Date20170926101637.php
index 42bbf74fb74..aca772de313 100644
--- a/core/Migrations/Version13000Date20170926101637.php
+++ b/core/Migrations/Version13000Date20170926101637.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Migrations/Version14000Date20180129121024.php b/core/Migrations/Version14000Date20180129121024.php
index 6da5f2602e8..c16d95ed71b 100644
--- a/core/Migrations/Version14000Date20180129121024.php
+++ b/core/Migrations/Version14000Date20180129121024.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Migrations/Version14000Date20180516101403.php b/core/Migrations/Version14000Date20180516101403.php
index c024b1b93ab..a71673a9674 100644
--- a/core/Migrations/Version14000Date20180516101403.php
+++ b/core/Migrations/Version14000Date20180516101403.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Migrations/Version14000Date20180626223656.php b/core/Migrations/Version14000Date20180626223656.php
index 3a08fb45c20..7d4dea585f6 100644
--- a/core/Migrations/Version14000Date20180626223656.php
+++ b/core/Migrations/Version14000Date20180626223656.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Migrations/Version14000Date20180712153140.php b/core/Migrations/Version14000Date20180712153140.php
index 4d27a60bbb4..b1a295ea2f6 100644
--- a/core/Migrations/Version14000Date20180712153140.php
+++ b/core/Migrations/Version14000Date20180712153140.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
diff --git a/core/Migrations/Version23000Date20210721100600.php b/core/Migrations/Version23000Date20210721100600.php
index 72437337326..a611c0c4b36 100644
--- a/core/Migrations/Version23000Date20210721100600.php
+++ b/core/Migrations/Version23000Date20210721100600.php
@@ -36,7 +36,7 @@ class Version23000Date20210721100600 extends SimpleMigrationStep {
'notnull' => true,
'length' => 200,
]);
-
+
$table->setPrimaryKey(['id']);
$table->addIndex(['group_id'], 'admindel_groupid_idx');
return $schema;
diff --git a/core/Migrations/Version25000Date20220515204012.php b/core/Migrations/Version25000Date20220515204012.php
index 2ec96bc5175..7f7c6b6cee2 100644
--- a/core/Migrations/Version25000Date20220515204012.php
+++ b/core/Migrations/Version25000Date20220515204012.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2019 ownCloud GmbH
* SPDX-License-Identifier: AGPL-3.0-only
diff --git a/core/Migrations/Version29000Date20240131122720.php b/core/Migrations/Version29000Date20240131122720.php
index 14f02331587..abd5e73165a 100644
--- a/core/Migrations/Version29000Date20240131122720.php
+++ b/core/Migrations/Version29000Date20240131122720.php
@@ -29,8 +29,8 @@ class Version29000Date20240131122720 extends SimpleMigrationStep {
$tableProperties = $schema->getTable('properties');
- if ($tableProperties->hasIndex('property_index') &&
- $tableProperties->hasIndex('properties_path_index')) {
+ if ($tableProperties->hasIndex('property_index')
+ && $tableProperties->hasIndex('properties_path_index')) {
$tableProperties->dropIndex('property_index');
}
diff --git a/core/Migrations/Version30000Date20240906095113.php b/core/Migrations/Version30000Date20240906095113.php
index bab03241db4..7c3efe41bc3 100644
--- a/core/Migrations/Version30000Date20240906095113.php
+++ b/core/Migrations/Version30000Date20240906095113.php
@@ -31,7 +31,7 @@ class Version30000Date20240906095113 extends SimpleMigrationStep {
if ($schema->hasTable('taskprocessing_tasks')) {
$table = $schema->getTable('taskprocessing_tasks');
$column = $table->getColumn('error_message');
-
+
if ($column->getLength() < 4000) {
$column->setLength(4000);
}
diff --git a/core/Migrations/Version32000Date20250620081925.php b/core/Migrations/Version32000Date20250620081925.php
new file mode 100644
index 00000000000..13e1ac0f87d
--- /dev/null
+++ b/core/Migrations/Version32000Date20250620081925.php
@@ -0,0 +1,16 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+namespace OC\Core\Migrations;
+
+/**
+ * Run the old migration Version24000Date20211210141942 again.
+ */
+class Version32000Date20250620081925 extends Version24000Date20211210141942 {
+}
diff --git a/core/ajax/update.php b/core/ajax/update.php
index 798a81ff6ee..69665cf62df 100644
--- a/core/ajax/update.php
+++ b/core/ajax/update.php
@@ -5,6 +5,7 @@
* SPDX-FileCopyrightText: 2016 ownCloud, Inc.
* SPDX-License-Identifier: AGPL-3.0-only
*/
+use OC\Core\Listener\FeedBackHandler;
use OC\DB\MigratorExecuteSqlEvent;
use OC\Installer;
use OC\IntegrityCheck\Checker;
@@ -21,7 +22,6 @@ use OCP\EventDispatcher\Event;
use OCP\EventDispatcher\IEventDispatcher;
use OCP\IAppConfig;
use OCP\IConfig;
-use OCP\IEventSource;
use OCP\IEventSourceFactory;
use OCP\IL10N;
use OCP\L10N\IFactory;
@@ -45,44 +45,6 @@ $eventSource = Server::get(IEventSourceFactory::class)->create();
// message
$eventSource->send('success', $l->t('Preparing update'));
-class FeedBackHandler {
- private int $progressStateMax = 100;
- private int $progressStateStep = 0;
- private string $currentStep = '';
-
- public function __construct(
- private IEventSource $eventSource,
- private IL10N $l10n,
- ) {
- }
-
- public function handleRepairFeedback(Event $event): void {
- if ($event instanceof RepairStartEvent) {
- $this->progressStateMax = $event->getMaxStep();
- $this->progressStateStep = 0;
- $this->currentStep = $event->getCurrentStepName();
- } elseif ($event instanceof RepairAdvanceEvent) {
- $this->progressStateStep += $event->getIncrement();
- $desc = $event->getDescription();
- if (empty($desc)) {
- $desc = $this->currentStep;
- }
- $this->eventSource->send('success', $this->l10n->t('[%d / %d]: %s', [$this->progressStateStep, $this->progressStateMax, $desc]));
- } elseif ($event instanceof RepairFinishEvent) {
- $this->progressStateMax = $this->progressStateStep;
- $this->eventSource->send('success', $this->l10n->t('[%d / %d]: %s', [$this->progressStateStep, $this->progressStateMax, $this->currentStep]));
- } elseif ($event instanceof RepairStepEvent) {
- $this->eventSource->send('success', $this->l10n->t('Repair step:') . ' ' . $event->getStepName());
- } elseif ($event instanceof RepairInfoEvent) {
- $this->eventSource->send('success', $this->l10n->t('Repair info:') . ' ' . $event->getMessage());
- } elseif ($event instanceof RepairWarningEvent) {
- $this->eventSource->send('notice', $this->l10n->t('Repair warning:') . ' ' . $event->getMessage());
- } elseif ($event instanceof RepairErrorEvent) {
- $this->eventSource->send('error', $this->l10n->t('Repair error:') . ' ' . $event->getMessage());
- }
- }
-}
-
if (Util::needUpgrade()) {
$config = Server::get(SystemConfig::class);
if ($config->getValue('upgrade.disable-web', false)) {
diff --git a/core/css/apps.css b/core/css/apps.css
index b7a6cd0100c..5964eb1817a 100644
--- a/core/css/apps.css
+++ b/core/css/apps.css
@@ -8,4 +8,4 @@
*//*!
* SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
- */@media screen and (max-width: 1024px){:root{--body-container-margin: 0px !important;--body-container-radius: 0px !important}}html{width:100%;height:100%;position:absolute;background-color:var(--color-background-plain, var(--color-main-background))}body{background-color:var(--color-background-plain, var(--color-main-background));background-image:var(--image-background);background-size:cover;background-position:center;position:fixed;width:100%;height:calc(100vh - env(safe-area-inset-bottom))}h2,h3,h4,h5,h6{font-weight:600;line-height:1.5;margin-top:24px;margin-bottom:12px;color:var(--color-main-text)}h2{font-size:1.8em}h3{font-size:1.6em}h4{font-size:1.4em}h5{font-size:1.25em}h6{font-size:1.1em}em{font-style:normal;color:var(--color-text-maxcontrast)}dl{padding:12px 0}dt,dd{display:inline-block;padding:12px;padding-inline-start:0}dt{width:130px;white-space:nowrap;text-align:end}kbd{padding:4px 10px;border:1px solid #ccc;box-shadow:0 1px 0 rgba(0,0,0,.2);border-radius:var(--border-radius);display:inline-block;white-space:nowrap}#content[class*=app-] *{box-sizing:border-box}#app-navigation:not(.vue){--color-text-maxcontrast: var(--color-text-maxcontrast-background-blur, var(--color-main-text));width:300px;z-index:500;overflow-y:auto;overflow-x:hidden;background-color:var(--color-main-background-blur);backdrop-filter:var(--filter-background-blur);-webkit-backdrop-filter:var(--filter-background-blur);-webkit-user-select:none;position:sticky;height:100%;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column;flex-grow:0;flex-shrink:0}#app-navigation:not(.vue) .app-navigation-caption{font-weight:bold;line-height:var(--default-clickable-area);padding:10px var(--default-clickable-area) 0 var(--default-clickable-area);white-space:nowrap;text-overflow:ellipsis;box-shadow:none !important;user-select:none;pointer-events:none;margin-inline-start:10px}.app-navigation-personal .app-navigation-new,.app-navigation-administration .app-navigation-new{display:block;padding:calc(var(--default-grid-baseline)*2)}.app-navigation-personal .app-navigation-new button,.app-navigation-administration .app-navigation-new button{display:inline-block;width:100%;padding:10px;padding-inline-start:34px;text-align:start;margin:0}.app-navigation-personal li,.app-navigation-administration li{position:relative}.app-navigation-personal>ul,.app-navigation-administration>ul{position:relative;height:100%;width:100%;overflow-x:hidden;overflow-y:auto;box-sizing:border-box;display:flex;flex-direction:column;padding:calc(var(--default-grid-baseline)*2);padding-bottom:0}.app-navigation-personal>ul:last-child,.app-navigation-administration>ul:last-child{padding-bottom:calc(var(--default-grid-baseline)*2)}.app-navigation-personal>ul>li,.app-navigation-administration>ul>li{display:inline-flex;flex-wrap:wrap;order:1;flex-shrink:0;margin:0;margin-bottom:3px;width:100%;border-radius:var(--border-radius-element)}.app-navigation-personal>ul>li.pinned,.app-navigation-administration>ul>li.pinned{order:2}.app-navigation-personal>ul>li.pinned.first-pinned,.app-navigation-administration>ul>li.pinned.first-pinned{margin-top:auto !important}.app-navigation-personal>ul>li>.app-navigation-entry-deleted,.app-navigation-administration>ul>li>.app-navigation-entry-deleted{padding-inline-start:var(--default-clickable-area) !important}.app-navigation-personal>ul>li>.app-navigation-entry-edit,.app-navigation-administration>ul>li>.app-navigation-entry-edit{padding-inline-start:calc(var(--default-clickable-area) - 6px) !important}.app-navigation-personal>ul>li a:hover,.app-navigation-personal>ul>li a:hover>a,.app-navigation-personal>ul>li a:focus,.app-navigation-personal>ul>li a:focus>a,.app-navigation-administration>ul>li a:hover,.app-navigation-administration>ul>li a:hover>a,.app-navigation-administration>ul>li a:focus,.app-navigation-administration>ul>li a:focus>a{background-color:var(--color-background-hover)}.app-navigation-personal>ul>li a:focus-visible,.app-navigation-administration>ul>li a:focus-visible{box-shadow:0 0 0 4px var(--color-main-background);outline:2px solid var(--color-main-text)}.app-navigation-personal>ul>li.active,.app-navigation-personal>ul>li.active>a,.app-navigation-personal>ul>li a:active,.app-navigation-personal>ul>li a:active>a,.app-navigation-personal>ul>li a.selected,.app-navigation-personal>ul>li a.selected>a,.app-navigation-personal>ul>li a.active,.app-navigation-personal>ul>li a.active>a,.app-navigation-administration>ul>li.active,.app-navigation-administration>ul>li.active>a,.app-navigation-administration>ul>li a:active,.app-navigation-administration>ul>li a:active>a,.app-navigation-administration>ul>li a.selected,.app-navigation-administration>ul>li a.selected>a,.app-navigation-administration>ul>li a.active,.app-navigation-administration>ul>li a.active>a{background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.app-navigation-personal>ul>li.active:first-child>img,.app-navigation-personal>ul>li.active>a:first-child>img,.app-navigation-personal>ul>li a:active:first-child>img,.app-navigation-personal>ul>li a:active>a:first-child>img,.app-navigation-personal>ul>li a.selected:first-child>img,.app-navigation-personal>ul>li a.selected>a:first-child>img,.app-navigation-personal>ul>li a.active:first-child>img,.app-navigation-personal>ul>li a.active>a:first-child>img,.app-navigation-administration>ul>li.active:first-child>img,.app-navigation-administration>ul>li.active>a:first-child>img,.app-navigation-administration>ul>li a:active:first-child>img,.app-navigation-administration>ul>li a:active>a:first-child>img,.app-navigation-administration>ul>li a.selected:first-child>img,.app-navigation-administration>ul>li a.selected>a:first-child>img,.app-navigation-administration>ul>li a.active:first-child>img,.app-navigation-administration>ul>li a.active>a:first-child>img{filter:var(--primary-invert-if-dark)}.app-navigation-personal>ul>li.icon-loading-small:after,.app-navigation-administration>ul>li.icon-loading-small:after{inset-inline-start:22px;top:22px}.app-navigation-personal>ul>li.deleted>ul,.app-navigation-personal>ul>li.collapsible:not(.open)>ul,.app-navigation-administration>ul>li.deleted>ul,.app-navigation-administration>ul>li.collapsible:not(.open)>ul{display:none}.app-navigation-personal>ul>li>ul,.app-navigation-administration>ul>li>ul{flex:0 1 auto;width:100%;position:relative}.app-navigation-personal>ul>li>ul>li,.app-navigation-administration>ul>li>ul>li{display:inline-flex;flex-wrap:wrap;padding-inline-start:var(--default-clickable-area);width:100%;margin-bottom:3px}.app-navigation-personal>ul>li>ul>li:hover,.app-navigation-personal>ul>li>ul>li:hover>a,.app-navigation-personal>ul>li>ul>li:focus,.app-navigation-personal>ul>li>ul>li:focus>a,.app-navigation-administration>ul>li>ul>li:hover,.app-navigation-administration>ul>li>ul>li:hover>a,.app-navigation-administration>ul>li>ul>li:focus,.app-navigation-administration>ul>li>ul>li:focus>a{border-radius:var(--border-radius-element);background-color:var(--color-background-hover)}.app-navigation-personal>ul>li>ul>li.active,.app-navigation-personal>ul>li>ul>li.active>a,.app-navigation-personal>ul>li>ul>li a.selected,.app-navigation-personal>ul>li>ul>li a.selected>a,.app-navigation-administration>ul>li>ul>li.active,.app-navigation-administration>ul>li>ul>li.active>a,.app-navigation-administration>ul>li>ul>li a.selected,.app-navigation-administration>ul>li>ul>li a.selected>a{border-radius:var(--border-radius-element);background-color:var(--color-primary-element-light)}.app-navigation-personal>ul>li>ul>li.active:first-child>img,.app-navigation-personal>ul>li>ul>li.active>a:first-child>img,.app-navigation-personal>ul>li>ul>li a.selected:first-child>img,.app-navigation-personal>ul>li>ul>li a.selected>a:first-child>img,.app-navigation-administration>ul>li>ul>li.active:first-child>img,.app-navigation-administration>ul>li>ul>li.active>a:first-child>img,.app-navigation-administration>ul>li>ul>li a.selected:first-child>img,.app-navigation-administration>ul>li>ul>li a.selected>a:first-child>img{filter:var(--primary-invert-if-dark)}.app-navigation-personal>ul>li>ul>li.icon-loading-small:after,.app-navigation-administration>ul>li>ul>li.icon-loading-small:after{inset-inline-start:calc(var(--default-clickable-area)/2)}.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-deleted,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-deleted{margin-inline-start:4px;padding-inline-start:84px}.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-edit,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-edit{margin-inline-start:4px;padding-inline-start:calc(2*var(--default-clickable-area) - 10px) !important}.app-navigation-personal>ul>li,.app-navigation-personal>ul>li>ul>li,.app-navigation-administration>ul>li,.app-navigation-administration>ul>li>ul>li{position:relative;box-sizing:border-box}.app-navigation-personal>ul>li.icon-loading-small>a,.app-navigation-personal>ul>li.icon-loading-small>.app-navigation-entry-bullet,.app-navigation-personal>ul>li>ul>li.icon-loading-small>a,.app-navigation-personal>ul>li>ul>li.icon-loading-small>.app-navigation-entry-bullet,.app-navigation-administration>ul>li.icon-loading-small>a,.app-navigation-administration>ul>li.icon-loading-small>.app-navigation-entry-bullet,.app-navigation-administration>ul>li>ul>li.icon-loading-small>a,.app-navigation-administration>ul>li>ul>li.icon-loading-small>.app-navigation-entry-bullet{background:rgba(0,0,0,0) !important}.app-navigation-personal>ul>li>a,.app-navigation-personal>ul>li>ul>li>a,.app-navigation-administration>ul>li>a,.app-navigation-administration>ul>li>ul>li>a{background-size:16px 16px;background-repeat:no-repeat;display:block;justify-content:space-between;line-height:var(--default-clickable-area);min-height:var(--default-clickable-area);padding-block:0;padding-inline:calc(2*var(--default-grid-baseline));overflow:hidden;box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;border-radius:var(--border-radius-element);color:var(--color-main-text);flex:1 1 0px;z-index:100}.app-navigation-personal>ul>li>a.svg,.app-navigation-personal>ul>li>ul>li>a.svg,.app-navigation-administration>ul>li>a.svg,.app-navigation-administration>ul>li>ul>li>a.svg{padding-block:0;padding-inline:var(--default-clickable-area) 12px}.app-navigation-personal>ul>li>a.svg :focus-visible,.app-navigation-personal>ul>li>ul>li>a.svg :focus-visible,.app-navigation-administration>ul>li>a.svg :focus-visible,.app-navigation-administration>ul>li>ul>li>a.svg :focus-visible{padding-block:0;padding-inline:calc(var(--default-clickable-area) - 2px) 8px}.app-navigation-personal>ul>li>a:first-child img,.app-navigation-personal>ul>li>ul>li>a:first-child img,.app-navigation-administration>ul>li>a:first-child img,.app-navigation-administration>ul>li>ul>li>a:first-child img{margin-inline-end:calc(2*var(--default-grid-baseline)) !important;width:16px;height:16px;filter:var(--background-invert-if-dark)}.app-navigation-personal>ul>li>a>.app-navigation-entry-utils,.app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils,.app-navigation-administration>ul>li>a>.app-navigation-entry-utils,.app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils{display:inline-block}.app-navigation-personal>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-administration>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter{padding-inline-end:0 !important}.app-navigation-personal>ul>li>.app-navigation-entry-bullet,.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-bullet,.app-navigation-administration>ul>li>.app-navigation-entry-bullet,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-bullet{position:absolute;display:block;margin:16px;width:12px;height:12px;border:none;border-radius:50%;cursor:pointer;transition:background 100ms ease-in-out}.app-navigation-personal>ul>li>.app-navigation-entry-bullet+a,.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-bullet+a,.app-navigation-administration>ul>li>.app-navigation-entry-bullet+a,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-bullet+a{background:rgba(0,0,0,0) !important}.app-navigation-personal>ul>li>.app-navigation-entry-menu,.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-menu,.app-navigation-administration>ul>li>.app-navigation-entry-menu,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-menu{top:var(--default-clickable-area)}.app-navigation-personal>ul>li.editing .app-navigation-entry-edit,.app-navigation-personal>ul>li>ul>li.editing .app-navigation-entry-edit,.app-navigation-administration>ul>li.editing .app-navigation-entry-edit,.app-navigation-administration>ul>li>ul>li.editing .app-navigation-entry-edit{opacity:1;z-index:250}.app-navigation-personal>ul>li.deleted .app-navigation-entry-deleted,.app-navigation-personal>ul>li>ul>li.deleted .app-navigation-entry-deleted,.app-navigation-administration>ul>li.deleted .app-navigation-entry-deleted,.app-navigation-administration>ul>li>ul>li.deleted .app-navigation-entry-deleted{transform:translateX(0);z-index:250}.app-navigation-personal.hidden,.app-navigation-administration.hidden{display:none}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button{border:0;opacity:.5;background-color:rgba(0,0,0,0);background-repeat:no-repeat;background-position:center}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:hover,.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:focus,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:hover,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:focus,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus{background-color:rgba(0,0,0,0);opacity:1}.app-navigation-personal .collapsible .collapse,.app-navigation-administration .collapsible .collapse{opacity:0;position:absolute;width:var(--default-clickable-area);height:var(--default-clickable-area);margin:0;z-index:110;inset-inline-start:0}.app-navigation-personal .collapsible .collapse:focus-visible,.app-navigation-administration .collapsible .collapse:focus-visible{opacity:1;border-width:0;box-shadow:inset 0 0 0 2px var(--color-primary-element);background:none}.app-navigation-personal .collapsible:before,.app-navigation-administration .collapsible:before{position:absolute;height:var(--default-clickable-area);width:var(--default-clickable-area);margin:0;padding:0;background:none;background-image:var(--icon-triangle-s-dark);background-size:16px;background-repeat:no-repeat;background-position:center;border:none;outline:none !important;box-shadow:none;content:" ";opacity:0;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);z-index:105;border-radius:50%;transition:opacity 100ms ease-in-out}.app-navigation-personal .collapsible>a:first-child,.app-navigation-administration .collapsible>a:first-child{padding-inline-start:var(--default-clickable-area)}.app-navigation-personal .collapsible:hover:before,.app-navigation-personal .collapsible:focus:before,.app-navigation-administration .collapsible:hover:before,.app-navigation-administration .collapsible:focus:before{opacity:1}.app-navigation-personal .collapsible:hover>a,.app-navigation-personal .collapsible:focus>a,.app-navigation-administration .collapsible:hover>a,.app-navigation-administration .collapsible:focus>a{background-image:none}.app-navigation-personal .collapsible:hover>.app-navigation-entry-bullet,.app-navigation-personal .collapsible:focus>.app-navigation-entry-bullet,.app-navigation-administration .collapsible:hover>.app-navigation-entry-bullet,.app-navigation-administration .collapsible:focus>.app-navigation-entry-bullet{background:rgba(0,0,0,0) !important}.app-navigation-personal .collapsible.open:before,.app-navigation-administration .collapsible.open:before{-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0)}.app-navigation-personal .app-navigation-entry-utils,.app-navigation-administration .app-navigation-entry-utils{flex:0 1 auto}.app-navigation-personal .app-navigation-entry-utils ul,.app-navigation-administration .app-navigation-entry-utils ul{display:flex !important;align-items:center;justify-content:flex-end}.app-navigation-personal .app-navigation-entry-utils li,.app-navigation-administration .app-navigation-entry-utils li{width:var(--default-clickable-area) !important;height:var(--default-clickable-area)}.app-navigation-personal .app-navigation-entry-utils button,.app-navigation-administration .app-navigation-entry-utils button{height:100%;width:100%;margin:0;box-shadow:none}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button button:not([class^=icon-]):not([class*=" icon-"]),.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button button:not([class^=icon-]):not([class*=" icon-"]){background-image:var(--icon-more-dark)}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:hover button,.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:focus button,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:hover button,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:focus button{background-color:rgba(0,0,0,0);opacity:1}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-counter{overflow:hidden;text-align:end;font-size:9pt;line-height:var(--default-clickable-area);padding:0 12px}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted{padding:0;text-align:center}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted span,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted span{padding:2px 5px;border-radius:10px;background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.app-navigation-personal .app-navigation-entry-edit,.app-navigation-administration .app-navigation-entry-edit{padding-inline:5px;display:block;width:calc(100% - 1px);transition:opacity 250ms ease-in-out;opacity:0;position:absolute;background-color:var(--color-main-background);z-index:-1}.app-navigation-personal .app-navigation-entry-edit form,.app-navigation-personal .app-navigation-entry-edit div,.app-navigation-administration .app-navigation-entry-edit form,.app-navigation-administration .app-navigation-entry-edit div{display:inline-flex;width:100%}.app-navigation-personal .app-navigation-entry-edit input,.app-navigation-administration .app-navigation-entry-edit input{padding:5px;margin-inline-end:0;height:38px}.app-navigation-personal .app-navigation-entry-edit input:hover,.app-navigation-personal .app-navigation-entry-edit input:focus,.app-navigation-administration .app-navigation-entry-edit input:hover,.app-navigation-administration .app-navigation-entry-edit input:focus{z-index:1}.app-navigation-personal .app-navigation-entry-edit input[type=text],.app-navigation-administration .app-navigation-entry-edit input[type=text]{width:100%;min-width:0;border-end-end-radius:0;border-start-end-radius:0}.app-navigation-personal .app-navigation-entry-edit button,.app-navigation-personal .app-navigation-entry-edit input:not([type=text]),.app-navigation-administration .app-navigation-entry-edit button,.app-navigation-administration .app-navigation-entry-edit input:not([type=text]){width:36px;height:38px;flex:0 0 36px}.app-navigation-personal .app-navigation-entry-edit button:not(:last-child),.app-navigation-personal .app-navigation-entry-edit input:not([type=text]):not(:last-child),.app-navigation-administration .app-navigation-entry-edit button:not(:last-child),.app-navigation-administration .app-navigation-entry-edit input:not([type=text]):not(:last-child){border-radius:0 !important}.app-navigation-personal .app-navigation-entry-edit button:not(:first-child),.app-navigation-personal .app-navigation-entry-edit input:not([type=text]):not(:first-child),.app-navigation-administration .app-navigation-entry-edit button:not(:first-child),.app-navigation-administration .app-navigation-entry-edit input:not([type=text]):not(:first-child){margin-inline-start:-1px}.app-navigation-personal .app-navigation-entry-edit button:last-child,.app-navigation-personal .app-navigation-entry-edit input:not([type=text]):last-child,.app-navigation-administration .app-navigation-entry-edit button:last-child,.app-navigation-administration .app-navigation-entry-edit input:not([type=text]):last-child{border-end-end-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-start-radius:0;border-start-start-radius:0}.app-navigation-personal .app-navigation-entry-deleted,.app-navigation-administration .app-navigation-entry-deleted{display:inline-flex;padding-inline-start:var(--default-clickable-area);transform:translateX(300px)}.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-description,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-description{position:relative;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;flex:1 1 0px;line-height:var(--default-clickable-area)}.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button{margin:0;height:var(--default-clickable-area);width:var(--default-clickable-area);line-height:var(--default-clickable-area)}.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus{opacity:1}.app-navigation-personal .app-navigation-entry-edit,.app-navigation-personal .app-navigation-entry-deleted,.app-navigation-administration .app-navigation-entry-edit,.app-navigation-administration .app-navigation-entry-deleted{width:calc(100% - 1px);transition:transform 250ms ease-in-out,opacity 250ms ease-in-out,z-index 250ms ease-in-out;position:absolute;inset-inline-start:0;background-color:var(--color-main-background);box-sizing:border-box}.app-navigation-personal .drag-and-drop,.app-navigation-administration .drag-and-drop{-webkit-transition:padding-bottom 500ms ease 0s;transition:padding-bottom 500ms ease 0s;padding-bottom:40px}.app-navigation-personal .error,.app-navigation-administration .error{color:var(--color-error)}.app-navigation-personal .app-navigation-entry-utils ul,.app-navigation-personal .app-navigation-entry-menu ul,.app-navigation-administration .app-navigation-entry-utils ul,.app-navigation-administration .app-navigation-entry-menu ul{list-style-type:none}body[dir=ltr] .app-navigation-personal .app-navigation-new button,body[dir=ltr] .app-navigation-administration .app-navigation-new button{background-position:left 10px center}body[dir=ltr] .app-navigation-personal>ul>li>ul>li>a,body[dir=ltr] .app-navigation-administration>ul>li>ul>li>a{background-position:left 14px center}body[dir=ltr] .app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils,body[dir=ltr] .app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils{float:right}body[dir=rtl] .app-navigation-personal .app-navigation-new button,body[dir=rtl] .app-navigation-administration .app-navigation-new button{background-position:right 10px center}body[dir=rtl] .app-navigation-personal>ul>li>ul>li>a,body[dir=rtl] .app-navigation-administration>ul>li>ul>li>a{background-position:right 14px center}body[dir=rtl] .app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils,body[dir=rtl] .app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils{float:left}#content{box-sizing:border-box;position:static;margin:var(--body-container-margin);margin-top:50px;padding:0;display:flex;width:calc(100% - var(--body-container-margin)*2);height:var(--body-height);border-radius:var(--body-container-radius);overflow:clip}#content:not(.with-sidebar--full){position:fixed}@media only screen and (max-width: 1024px){#content{border-start-start-radius:var(--border-radius-large);border-start-end-radius:var(--border-radius-large)}#app-navigation{border-start-start-radius:var(--border-radius-large)}#app-sidebar{border-start-end-radius:var(--border-radius-large)}}#app-content{z-index:1000;background-color:var(--color-main-background);flex-basis:100vw;overflow:auto;position:initial;height:100%}#app-content>.section:first-child{border-top:none}#app-content #app-content-wrapper{display:flex;position:relative;align-items:stretch;min-height:100%}#app-content #app-content-wrapper .app-content-details{flex:1 1 524px}#app-content #app-content-wrapper .app-content-details #app-navigation-toggle-back{display:none}#app-content::-webkit-scrollbar-button{height:var(--body-container-radius)}#app-sidebar{width:27vw;min-width:300px;max-width:500px;display:block;position:-webkit-sticky;position:sticky;top:50px;inset-inline-end:0;overflow-y:auto;overflow-x:hidden;z-index:1500;opacity:.7px;height:calc(100vh - 50px);background:var(--color-main-background);border-inline-start:1px solid var(--color-border);flex-shrink:0}#app-sidebar.disappear{display:none}#app-settings{margin-top:auto}#app-settings.open #app-settings-content,#app-settings.opened #app-settings-content{display:block}#app-settings-content{display:none;padding:calc(var(--default-grid-baseline)*2);padding-top:0;padding-inline-start:calc(var(--default-grid-baseline)*4);max-height:300px;overflow-y:auto;box-sizing:border-box}#app-settings-content input[type=text]{width:93%}#app-settings-content .info-text{padding-block:5px 7px;padding-inline:22px 0;color:var(--color-text-lighter)}#app-settings-content input[type=checkbox].radio+label,#app-settings-content input[type=checkbox].checkbox+label,#app-settings-content input[type=radio].radio+label,#app-settings-content input[type=radio].checkbox+label{display:inline-block;width:100%;padding:5px 0}#app-settings-header{box-sizing:border-box;background-color:rgba(0,0,0,0);overflow:hidden;border-radius:calc(var(--default-clickable-area)/2);padding:calc(var(--default-grid-baseline)*2);padding-top:0}#app-settings-header .settings-button{display:flex;align-items:center;height:var(--default-clickable-area);width:100%;padding:0;margin:0;background-color:rgba(0,0,0,0);box-shadow:none;border:0;border-radius:calc(var(--default-clickable-area)/2);text-align:start;font-weight:normal;font-size:100%;opacity:.8;color:var(--color-main-text)}#app-settings-header .settings-button.opened{border-top:solid 1px var(--color-border);background-color:var(--color-main-background);margin-top:8px}#app-settings-header .settings-button:hover,#app-settings-header .settings-button:focus{background-color:var(--color-background-hover)}#app-settings-header .settings-button::before{background-image:var(--icon-settings-dark);background-repeat:no-repeat;content:"";width:var(--default-clickable-area);height:var(--default-clickable-area);top:0;inset-inline-start:0;display:block}#app-settings-header .settings-button:focus-visible{box-shadow:0 0 0 2px inset var(--color-primary-element) !important}body[dir=ltr] #app-settings-header .settings-button::before{background-position:left 14px center}body[dir=ltr] #app-settings-header .settings-button:focus-visible{background-position:left 12px center}body[dir=rtl] #app-settings-header .settings-button::before{background-position:right 14px center}body[dir=rtl] #app-settings-header .settings-button:focus-visible{background-position:right 12px center}.section{display:block;padding:30px;margin-bottom:24px}.section.hidden{display:none !important}.section input[type=checkbox],.section input[type=radio]{vertical-align:-2px;margin-inline-end:4px}.sub-section{position:relative;margin-top:10px;margin-inline-start:27px;margin-bottom:10px}.appear{opacity:1;-webkit-transition:opacity 500ms ease 0s;-moz-transition:opacity 500ms ease 0s;-ms-transition:opacity 500ms ease 0s;-o-transition:opacity 500ms ease 0s;transition:opacity 500ms ease 0s}.appear.transparent{opacity:0}.tabHeaders{display:flex;margin-bottom:16px}.tabHeaders .tabHeader{display:flex;flex-direction:column;flex-grow:1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;color:var(--color-text-lighter);margin-bottom:1px;padding:5px}.tabHeaders .tabHeader.hidden{display:none}.tabHeaders .tabHeader:first-child{padding-inline-start:15px}.tabHeaders .tabHeader:last-child{padding-inline-end:15px}.tabHeaders .tabHeader .icon{display:inline-block;width:100%;height:16px;background-size:16px;vertical-align:middle;margin-top:-2px;margin-inline-end:3px;opacity:.7;cursor:pointer}.tabHeaders .tabHeader a{color:var(--color-text-lighter);margin-bottom:1px;overflow:hidden;text-overflow:ellipsis}.tabHeaders .tabHeader.selected{font-weight:bold}.tabHeaders .tabHeader.selected,.tabHeaders .tabHeader:hover,.tabHeaders .tabHeader:focus{margin-bottom:0px;color:var(--color-main-text);border-bottom:1px solid var(--color-text-lighter)}.tabsContainer .tab{padding:0 15px 15px}body[dir=ltr] .tabsContainer{clear:left}body[dir=rtl] .tabsContainer{clear:right}.v-popper__inner div.open>ul>li>a>span.action-link__icon,.v-popper__inner div.open>ul>li>a>span.action-router__icon,.v-popper__inner div.open>ul>li>a>img{filter:var(--background-invert-if-dark)}.v-popper__inner div.open>ul>li>a>span.action-link__icon[src^=data],.v-popper__inner div.open>ul>li>a>span.action-router__icon[src^=data],.v-popper__inner div.open>ul>li>a>img[src^=data]{filter:none}.bubble,.app-navigation-entry-menu,.popovermenu{position:absolute;background-color:var(--color-main-background);color:var(--color-main-text);border-radius:var(--border-radius-large);padding:3px;z-index:110;margin:5px;margin-top:-5px;inset-inline-end:0;filter:drop-shadow(0 1px 3px var(--color-box-shadow));display:none;will-change:filter}.bubble:after,.app-navigation-entry-menu:after,.popovermenu:after{bottom:100%;inset-inline-end:7px;border:solid rgba(0,0,0,0);content:" ";height:0;width:0;position:absolute;pointer-events:none;border-bottom-color:var(--color-main-background);border-width:9px}.bubble.menu-center,.app-navigation-entry-menu.menu-center,.popovermenu.menu-center{transform:translateX(50%);inset-inline-end:50%;margin-inline-end:0}.bubble.menu-center:after,.app-navigation-entry-menu.menu-center:after,.popovermenu.menu-center:after{inset-inline-end:50%;transform:translateX(50%)}.bubble.menu-left,.app-navigation-entry-menu.menu-left,.popovermenu.menu-left{inset-inline:0 auto;margin-inline-end:0}.bubble.menu-left:after,.app-navigation-entry-menu.menu-left:after,.popovermenu.menu-left:after{inset-inline:6px auto}.bubble.open,.app-navigation-entry-menu.open,.popovermenu.open{display:block}.bubble.contactsmenu-popover,.app-navigation-entry-menu.contactsmenu-popover,.popovermenu.contactsmenu-popover{margin:0}.bubble ul,.app-navigation-entry-menu ul,.popovermenu ul{display:flex !important;flex-direction:column}.bubble li,.app-navigation-entry-menu li,.popovermenu li{display:flex;flex:0 0 auto}.bubble li.hidden,.app-navigation-entry-menu li.hidden,.popovermenu li.hidden{display:none}.bubble li>button,.bubble li>a,.bubble li>.menuitem,.app-navigation-entry-menu li>button,.app-navigation-entry-menu li>a,.app-navigation-entry-menu li>.menuitem,.popovermenu li>button,.popovermenu li>a,.popovermenu li>.menuitem{cursor:pointer;line-height:34px;border:0;border-radius:var(--border-radius-large);background-color:rgba(0,0,0,0);display:flex;align-items:flex-start;height:auto;margin:0;font-weight:normal;box-shadow:none;width:100%;color:var(--color-main-text);white-space:nowrap}.bubble li>button span[class^=icon-],.bubble li>button span[class*=" icon-"],.bubble li>button[class^=icon-],.bubble li>button[class*=" icon-"],.bubble li>a span[class^=icon-],.bubble li>a span[class*=" icon-"],.bubble li>a[class^=icon-],.bubble li>a[class*=" icon-"],.bubble li>.menuitem span[class^=icon-],.bubble li>.menuitem span[class*=" icon-"],.bubble li>.menuitem[class^=icon-],.bubble li>.menuitem[class*=" icon-"],.app-navigation-entry-menu li>button span[class^=icon-],.app-navigation-entry-menu li>button span[class*=" icon-"],.app-navigation-entry-menu li>button[class^=icon-],.app-navigation-entry-menu li>button[class*=" icon-"],.app-navigation-entry-menu li>a span[class^=icon-],.app-navigation-entry-menu li>a span[class*=" icon-"],.app-navigation-entry-menu li>a[class^=icon-],.app-navigation-entry-menu li>a[class*=" icon-"],.app-navigation-entry-menu li>.menuitem span[class^=icon-],.app-navigation-entry-menu li>.menuitem span[class*=" icon-"],.app-navigation-entry-menu li>.menuitem[class^=icon-],.app-navigation-entry-menu li>.menuitem[class*=" icon-"],.popovermenu li>button span[class^=icon-],.popovermenu li>button span[class*=" icon-"],.popovermenu li>button[class^=icon-],.popovermenu li>button[class*=" icon-"],.popovermenu li>a span[class^=icon-],.popovermenu li>a span[class*=" icon-"],.popovermenu li>a[class^=icon-],.popovermenu li>a[class*=" icon-"],.popovermenu li>.menuitem span[class^=icon-],.popovermenu li>.menuitem span[class*=" icon-"],.popovermenu li>.menuitem[class^=icon-],.popovermenu li>.menuitem[class*=" icon-"]{min-width:0;min-height:0;background-position:9px center;background-size:16px}.bubble li>button span[class^=icon-],.bubble li>button span[class*=" icon-"],.bubble li>a span[class^=icon-],.bubble li>a span[class*=" icon-"],.bubble li>.menuitem span[class^=icon-],.bubble li>.menuitem span[class*=" icon-"],.app-navigation-entry-menu li>button span[class^=icon-],.app-navigation-entry-menu li>button span[class*=" icon-"],.app-navigation-entry-menu li>a span[class^=icon-],.app-navigation-entry-menu li>a span[class*=" icon-"],.app-navigation-entry-menu li>.menuitem span[class^=icon-],.app-navigation-entry-menu li>.menuitem span[class*=" icon-"],.popovermenu li>button span[class^=icon-],.popovermenu li>button span[class*=" icon-"],.popovermenu li>a span[class^=icon-],.popovermenu li>a span[class*=" icon-"],.popovermenu li>.menuitem span[class^=icon-],.popovermenu li>.menuitem span[class*=" icon-"]{padding:17px 0 17px 34px}.bubble li>button:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>button:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>button:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>a:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>a:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>a:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>.menuitem:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>.menuitem:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>.menuitem:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>button:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>button:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>button:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>a:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>a:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>a:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>.menuitem:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>.menuitem:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>.menuitem:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>button:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>button:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>button:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>a:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>a:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>a:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>.menuitem:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>.menuitem:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>.menuitem:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child{margin-inline-start:34px}.bubble li>button[class^=icon-],.bubble li>button[class*=" icon-"],.bubble li>a[class^=icon-],.bubble li>a[class*=" icon-"],.bubble li>.menuitem[class^=icon-],.bubble li>.menuitem[class*=" icon-"],.app-navigation-entry-menu li>button[class^=icon-],.app-navigation-entry-menu li>button[class*=" icon-"],.app-navigation-entry-menu li>a[class^=icon-],.app-navigation-entry-menu li>a[class*=" icon-"],.app-navigation-entry-menu li>.menuitem[class^=icon-],.app-navigation-entry-menu li>.menuitem[class*=" icon-"],.popovermenu li>button[class^=icon-],.popovermenu li>button[class*=" icon-"],.popovermenu li>a[class^=icon-],.popovermenu li>a[class*=" icon-"],.popovermenu li>.menuitem[class^=icon-],.popovermenu li>.menuitem[class*=" icon-"]{padding:0 9px 0 34px !important}.bubble li>button:hover,.bubble li>button:focus,.bubble li>a:hover,.bubble li>a:focus,.bubble li>.menuitem:hover,.bubble li>.menuitem:focus,.app-navigation-entry-menu li>button:hover,.app-navigation-entry-menu li>button:focus,.app-navigation-entry-menu li>a:hover,.app-navigation-entry-menu li>a:focus,.app-navigation-entry-menu li>.menuitem:hover,.app-navigation-entry-menu li>.menuitem:focus,.popovermenu li>button:hover,.popovermenu li>button:focus,.popovermenu li>a:hover,.popovermenu li>a:focus,.popovermenu li>.menuitem:hover,.popovermenu li>.menuitem:focus{background-color:var(--color-background-hover)}.bubble li>button:focus,.bubble li>button:focus-visible,.bubble li>a:focus,.bubble li>a:focus-visible,.bubble li>.menuitem:focus,.bubble li>.menuitem:focus-visible,.app-navigation-entry-menu li>button:focus,.app-navigation-entry-menu li>button:focus-visible,.app-navigation-entry-menu li>a:focus,.app-navigation-entry-menu li>a:focus-visible,.app-navigation-entry-menu li>.menuitem:focus,.app-navigation-entry-menu li>.menuitem:focus-visible,.popovermenu li>button:focus,.popovermenu li>button:focus-visible,.popovermenu li>a:focus,.popovermenu li>a:focus-visible,.popovermenu li>.menuitem:focus,.popovermenu li>.menuitem:focus-visible{box-shadow:0 0 0 2px var(--color-primary-element)}.bubble li>button.active,.bubble li>a.active,.bubble li>.menuitem.active,.app-navigation-entry-menu li>button.active,.app-navigation-entry-menu li>a.active,.app-navigation-entry-menu li>.menuitem.active,.popovermenu li>button.active,.popovermenu li>a.active,.popovermenu li>.menuitem.active{border-radius:var(--border-radius-element);background-color:var(--color-primary-element-light)}.bubble li>button.action,.bubble li>a.action,.bubble li>.menuitem.action,.app-navigation-entry-menu li>button.action,.app-navigation-entry-menu li>a.action,.app-navigation-entry-menu li>.menuitem.action,.popovermenu li>button.action,.popovermenu li>a.action,.popovermenu li>.menuitem.action{padding:inherit !important}.bubble li>button>span,.bubble li>a>span,.bubble li>.menuitem>span,.app-navigation-entry-menu li>button>span,.app-navigation-entry-menu li>a>span,.app-navigation-entry-menu li>.menuitem>span,.popovermenu li>button>span,.popovermenu li>a>span,.popovermenu li>.menuitem>span{cursor:pointer;white-space:nowrap}.bubble li>button>p,.bubble li>a>p,.bubble li>.menuitem>p,.app-navigation-entry-menu li>button>p,.app-navigation-entry-menu li>a>p,.app-navigation-entry-menu li>.menuitem>p,.popovermenu li>button>p,.popovermenu li>a>p,.popovermenu li>.menuitem>p{width:150px;line-height:1.6em;padding:8px 0;white-space:normal}.bubble li>button>select,.bubble li>a>select,.bubble li>.menuitem>select,.app-navigation-entry-menu li>button>select,.app-navigation-entry-menu li>a>select,.app-navigation-entry-menu li>.menuitem>select,.popovermenu li>button>select,.popovermenu li>a>select,.popovermenu li>.menuitem>select{margin:0;margin-inline-start:6px}.bubble li>button:not(:empty),.bubble li>a:not(:empty),.bubble li>.menuitem:not(:empty),.app-navigation-entry-menu li>button:not(:empty),.app-navigation-entry-menu li>a:not(:empty),.app-navigation-entry-menu li>.menuitem:not(:empty),.popovermenu li>button:not(:empty),.popovermenu li>a:not(:empty),.popovermenu li>.menuitem:not(:empty){padding-inline-end:9px !important}.bubble li>button>img,.bubble li>a>img,.bubble li>.menuitem>img,.app-navigation-entry-menu li>button>img,.app-navigation-entry-menu li>a>img,.app-navigation-entry-menu li>.menuitem>img,.popovermenu li>button>img,.popovermenu li>a>img,.popovermenu li>.menuitem>img{width:16px;padding:9px}.bubble li>button>input.radio+label,.bubble li>button>input.checkbox+label,.bubble li>a>input.radio+label,.bubble li>a>input.checkbox+label,.bubble li>.menuitem>input.radio+label,.bubble li>.menuitem>input.checkbox+label,.app-navigation-entry-menu li>button>input.radio+label,.app-navigation-entry-menu li>button>input.checkbox+label,.app-navigation-entry-menu li>a>input.radio+label,.app-navigation-entry-menu li>a>input.checkbox+label,.app-navigation-entry-menu li>.menuitem>input.radio+label,.app-navigation-entry-menu li>.menuitem>input.checkbox+label,.popovermenu li>button>input.radio+label,.popovermenu li>button>input.checkbox+label,.popovermenu li>a>input.radio+label,.popovermenu li>a>input.checkbox+label,.popovermenu li>.menuitem>input.radio+label,.popovermenu li>.menuitem>input.checkbox+label{padding:0 !important;width:100%}.bubble li>button>input.checkbox+label::before,.bubble li>a>input.checkbox+label::before,.bubble li>.menuitem>input.checkbox+label::before,.app-navigation-entry-menu li>button>input.checkbox+label::before,.app-navigation-entry-menu li>a>input.checkbox+label::before,.app-navigation-entry-menu li>.menuitem>input.checkbox+label::before,.popovermenu li>button>input.checkbox+label::before,.popovermenu li>a>input.checkbox+label::before,.popovermenu li>.menuitem>input.checkbox+label::before{margin:-2px 13px 0}.bubble li>button>input.radio+label::before,.bubble li>a>input.radio+label::before,.bubble li>.menuitem>input.radio+label::before,.app-navigation-entry-menu li>button>input.radio+label::before,.app-navigation-entry-menu li>a>input.radio+label::before,.app-navigation-entry-menu li>.menuitem>input.radio+label::before,.popovermenu li>button>input.radio+label::before,.popovermenu li>a>input.radio+label::before,.popovermenu li>.menuitem>input.radio+label::before{margin:-2px 12px 0}.bubble li>button>input:not([type=radio]):not([type=checkbox]):not([type=image]),.bubble li>a>input:not([type=radio]):not([type=checkbox]):not([type=image]),.bubble li>.menuitem>input:not([type=radio]):not([type=checkbox]):not([type=image]),.app-navigation-entry-menu li>button>input:not([type=radio]):not([type=checkbox]):not([type=image]),.app-navigation-entry-menu li>a>input:not([type=radio]):not([type=checkbox]):not([type=image]),.app-navigation-entry-menu li>.menuitem>input:not([type=radio]):not([type=checkbox]):not([type=image]),.popovermenu li>button>input:not([type=radio]):not([type=checkbox]):not([type=image]),.popovermenu li>a>input:not([type=radio]):not([type=checkbox]):not([type=image]),.popovermenu li>.menuitem>input:not([type=radio]):not([type=checkbox]):not([type=image]){width:150px}.bubble li>button form,.bubble li>a form,.bubble li>.menuitem form,.app-navigation-entry-menu li>button form,.app-navigation-entry-menu li>a form,.app-navigation-entry-menu li>.menuitem form,.popovermenu li>button form,.popovermenu li>a form,.popovermenu li>.menuitem form{display:flex;flex:1 1 auto;align-items:center}.bubble li>button form:not(:first-child),.bubble li>a form:not(:first-child),.bubble li>.menuitem form:not(:first-child),.app-navigation-entry-menu li>button form:not(:first-child),.app-navigation-entry-menu li>a form:not(:first-child),.app-navigation-entry-menu li>.menuitem form:not(:first-child),.popovermenu li>button form:not(:first-child),.popovermenu li>a form:not(:first-child),.popovermenu li>.menuitem form:not(:first-child){margin-inline-start:5px}.bubble li>button>span.hidden+form,.bubble li>button>span[style*="display:none"]+form,.bubble li>a>span.hidden+form,.bubble li>a>span[style*="display:none"]+form,.bubble li>.menuitem>span.hidden+form,.bubble li>.menuitem>span[style*="display:none"]+form,.app-navigation-entry-menu li>button>span.hidden+form,.app-navigation-entry-menu li>button>span[style*="display:none"]+form,.app-navigation-entry-menu li>a>span.hidden+form,.app-navigation-entry-menu li>a>span[style*="display:none"]+form,.app-navigation-entry-menu li>.menuitem>span.hidden+form,.app-navigation-entry-menu li>.menuitem>span[style*="display:none"]+form,.popovermenu li>button>span.hidden+form,.popovermenu li>button>span[style*="display:none"]+form,.popovermenu li>a>span.hidden+form,.popovermenu li>a>span[style*="display:none"]+form,.popovermenu li>.menuitem>span.hidden+form,.popovermenu li>.menuitem>span[style*="display:none"]+form{margin-inline-start:0}.bubble li>button input,.bubble li>a input,.bubble li>.menuitem input,.app-navigation-entry-menu li>button input,.app-navigation-entry-menu li>a input,.app-navigation-entry-menu li>.menuitem input,.popovermenu li>button input,.popovermenu li>a input,.popovermenu li>.menuitem input{min-width:34px;max-height:30px;margin:2px 0;flex:1 1 auto}.bubble li>button input:not(:first-child),.bubble li>a input:not(:first-child),.bubble li>.menuitem input:not(:first-child),.app-navigation-entry-menu li>button input:not(:first-child),.app-navigation-entry-menu li>a input:not(:first-child),.app-navigation-entry-menu li>.menuitem input:not(:first-child),.popovermenu li>button input:not(:first-child),.popovermenu li>a input:not(:first-child),.popovermenu li>.menuitem input:not(:first-child){margin-inline-start:5px}.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>button>form,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>button>input,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>a>form,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>a>input,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>form,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>button>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>button>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>a>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>a>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>input,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>button>form,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>button>input,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>a>form,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>a>input,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>form,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>input{margin-top:7px}.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>button>form,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>button>input,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>a>form,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>a>input,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>form,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>button>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>button>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>a>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>a>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>input,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>button>form,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>button>input,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>a>form,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>a>input,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>form,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>input{margin-bottom:0px}.bubble li>button,.app-navigation-entry-menu li>button,.popovermenu li>button{padding:0}.bubble li>button span,.app-navigation-entry-menu li>button span,.popovermenu li>button span{opacity:1}.popovermenu li>button>img,.popovermenu li>a>img,.popovermenu li>.menuitem>img{width:34px;height:34px}#contactsmenu .contact .popovermenu li>a>img{width:16px;height:16px}.app-content-list{position:-webkit-sticky;position:relative;top:0;border-inline-end:1px solid var(--color-border);display:flex;flex-direction:column;transition:transform 250ms ease-in-out;min-height:100%;max-height:100%;overflow-y:auto;overflow-x:hidden;flex:1 1 200px;min-width:200px;max-width:300px}.app-content-list .app-content-list-item{position:relative;height:68px;cursor:pointer;padding:10px 7px;display:flex;flex-wrap:wrap;align-items:center;flex:0 0 auto}.app-content-list .app-content-list-item>[class^=icon-],.app-content-list .app-content-list-item>[class*=" icon-"],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"]{order:4;width:24px;height:24px;margin:-7px;padding:22px;opacity:.3;cursor:pointer}.app-content-list .app-content-list-item>[class^=icon-]:hover,.app-content-list .app-content-list-item>[class^=icon-]:focus,.app-content-list .app-content-list-item>[class*=" icon-"]:hover,.app-content-list .app-content-list-item>[class*=" icon-"]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"]:focus{opacity:.7}.app-content-list .app-content-list-item>[class^=icon-][class^=icon-star],.app-content-list .app-content-list-item>[class^=icon-][class*=" icon-star"],.app-content-list .app-content-list-item>[class*=" icon-"][class^=icon-star],.app-content-list .app-content-list-item>[class*=" icon-"][class*=" icon-star"],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class^=icon-star],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class*=" icon-star"],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class^=icon-star],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class*=" icon-star"]{opacity:.7}.app-content-list .app-content-list-item>[class^=icon-][class^=icon-star]:hover,.app-content-list .app-content-list-item>[class^=icon-][class^=icon-star]:focus,.app-content-list .app-content-list-item>[class^=icon-][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>[class^=icon-][class*=" icon-star"]:focus,.app-content-list .app-content-list-item>[class*=" icon-"][class^=icon-star]:hover,.app-content-list .app-content-list-item>[class*=" icon-"][class^=icon-star]:focus,.app-content-list .app-content-list-item>[class*=" icon-"][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>[class*=" icon-"][class*=" icon-star"]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class^=icon-star]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class^=icon-star]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class*=" icon-star"]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class^=icon-star]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class^=icon-star]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class*=" icon-star"]:focus{opacity:1}.app-content-list .app-content-list-item>[class^=icon-].icon-starred,.app-content-list .app-content-list-item>[class*=" icon-"].icon-starred,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-].icon-starred,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"].icon-starred{opacity:1}.app-content-list .app-content-list-item:hover,.app-content-list .app-content-list-item:focus,.app-content-list .app-content-list-item.active{background-color:var(--color-background-dark)}.app-content-list .app-content-list-item:hover .app-content-list-item-checkbox.checkbox+label,.app-content-list .app-content-list-item:focus .app-content-list-item-checkbox.checkbox+label,.app-content-list .app-content-list-item.active .app-content-list-item-checkbox.checkbox+label{display:flex}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label,.app-content-list .app-content-list-item .app-content-list-item-star{position:absolute;height:40px;width:40px;z-index:50}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:checked+label,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:hover+label,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:focus+label,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox.active+label{display:flex}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:checked+label+.app-content-list-item-icon,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:hover+label+.app-content-list-item-icon,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:focus+label+.app-content-list-item-icon,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox.active+label+.app-content-list-item-icon{opacity:.7}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label{top:14px;inset-inline-start:7px;display:none}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label::before{margin:0}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label~.app-content-list-item-star{display:none}.app-content-list .app-content-list-item .app-content-list-item-star{display:flex;top:10px;inset-inline-start:32px;background-size:16px;height:20px;width:20px;margin:0;padding:0}.app-content-list .app-content-list-item .app-content-list-item-icon{position:absolute;display:inline-block;height:40px;width:40px;line-height:40px;border-radius:50%;vertical-align:middle;margin-inline-end:10px;color:#fff;text-align:center;font-size:1.5em;text-transform:capitalize;object-fit:cover;user-select:none;cursor:pointer;top:50%;margin-top:-20px}.app-content-list .app-content-list-item .app-content-list-item-line-one,.app-content-list .app-content-list-item .app-content-list-item-line-two{display:block;padding-inline:50px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;order:1;flex:1 1 0px;cursor:pointer}.app-content-list .app-content-list-item .app-content-list-item-line-two{opacity:.5;order:3;flex:1 0;flex-basis:calc(100% - var(--default-clickable-area))}.app-content-list .app-content-list-item .app-content-list-item-details{order:2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px;opacity:.5;font-size:80%;user-select:none}.app-content-list .app-content-list-item .app-content-list-item-menu{order:4;position:relative}.app-content-list .app-content-list-item .app-content-list-item-menu .popovermenu{margin:0;inset-inline-end:-2px}.app-content-list.selection .app-content-list-item-checkbox.checkbox+label{display:flex}.button.primary.skip-navigation:focus-visible{box-shadow:0 0 0 4px var(--color-main-background) !important;outline:2px solid var(--color-main-text) !important}/*# sourceMappingURL=apps.css.map */
+ */@media screen and (max-width: 1024px){:root{--body-container-margin: 0px !important;--body-container-radius: 0px !important}}html{width:100%;height:100%;position:absolute;background-color:var(--color-background-plain, var(--color-main-background))}body{background-color:var(--color-background-plain, var(--color-main-background));background-image:var(--image-background);background-size:cover;background-position:center;position:fixed;width:100%;height:calc(100vh - env(safe-area-inset-bottom))}h2,h3,h4,h5,h6{font-weight:600;line-height:1.5;margin-top:24px;margin-bottom:12px;color:var(--color-main-text)}h2{font-size:1.8em}h3{font-size:1.6em}h4{font-size:1.4em}h5{font-size:1.25em}h6{font-size:1.1em}em{font-style:normal;color:var(--color-text-maxcontrast)}dl{padding:12px 0}dt,dd{display:inline-block;padding:12px;padding-inline-start:0}dt{width:130px;white-space:nowrap;text-align:end}kbd{padding:4px 10px;border:1px solid #ccc;box-shadow:0 1px 0 rgba(0,0,0,.2);border-radius:var(--border-radius);display:inline-block;white-space:nowrap}#content[class*=app-] *{box-sizing:border-box}#app-navigation:not(.vue){--color-text-maxcontrast: var(--color-text-maxcontrast-background-blur, var(--color-main-text));width:300px;z-index:500;overflow-y:auto;overflow-x:hidden;background-color:var(--color-main-background-blur);backdrop-filter:var(--filter-background-blur);-webkit-backdrop-filter:var(--filter-background-blur);-webkit-user-select:none;position:sticky;height:100%;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column;flex-grow:0;flex-shrink:0}#app-navigation:not(.vue) .app-navigation-caption{font-weight:bold;line-height:var(--default-clickable-area);padding:10px var(--default-clickable-area) 0 var(--default-clickable-area);white-space:nowrap;text-overflow:ellipsis;box-shadow:none !important;user-select:none;pointer-events:none;margin-inline-start:10px}.app-navigation-personal .app-navigation-new,.app-navigation-administration .app-navigation-new{display:block;padding:calc(var(--default-grid-baseline)*2)}.app-navigation-personal .app-navigation-new button,.app-navigation-administration .app-navigation-new button{display:inline-block;width:100%;padding:10px;padding-inline-start:34px;text-align:start;margin:0}.app-navigation-personal li,.app-navigation-administration li{position:relative}.app-navigation-personal>ul,.app-navigation-administration>ul{position:relative;height:100%;width:100%;overflow-x:hidden;overflow-y:auto;box-sizing:border-box;display:flex;flex-direction:column;padding:calc(var(--default-grid-baseline)*2);padding-bottom:0}.app-navigation-personal>ul:last-child,.app-navigation-administration>ul:last-child{padding-bottom:calc(var(--default-grid-baseline)*2)}.app-navigation-personal>ul>li,.app-navigation-administration>ul>li{display:inline-flex;flex-wrap:wrap;order:1;flex-shrink:0;margin:0;margin-bottom:3px;width:100%;border-radius:var(--border-radius-element)}.app-navigation-personal>ul>li.pinned,.app-navigation-administration>ul>li.pinned{order:2}.app-navigation-personal>ul>li.pinned.first-pinned,.app-navigation-administration>ul>li.pinned.first-pinned{margin-top:auto !important}.app-navigation-personal>ul>li>.app-navigation-entry-deleted,.app-navigation-administration>ul>li>.app-navigation-entry-deleted{padding-inline-start:var(--default-clickable-area) !important}.app-navigation-personal>ul>li>.app-navigation-entry-edit,.app-navigation-administration>ul>li>.app-navigation-entry-edit{padding-inline-start:calc(var(--default-clickable-area) - 6px) !important}.app-navigation-personal>ul>li a:hover,.app-navigation-personal>ul>li a:hover>a,.app-navigation-personal>ul>li a:focus,.app-navigation-personal>ul>li a:focus>a,.app-navigation-administration>ul>li a:hover,.app-navigation-administration>ul>li a:hover>a,.app-navigation-administration>ul>li a:focus,.app-navigation-administration>ul>li a:focus>a{background-color:var(--color-background-hover)}.app-navigation-personal>ul>li a:focus-visible,.app-navigation-administration>ul>li a:focus-visible{box-shadow:0 0 0 4px var(--color-main-background);outline:2px solid var(--color-main-text)}.app-navigation-personal>ul>li.active,.app-navigation-personal>ul>li.active>a,.app-navigation-personal>ul>li a:active,.app-navigation-personal>ul>li a:active>a,.app-navigation-personal>ul>li a.selected,.app-navigation-personal>ul>li a.selected>a,.app-navigation-personal>ul>li a.active,.app-navigation-personal>ul>li a.active>a,.app-navigation-administration>ul>li.active,.app-navigation-administration>ul>li.active>a,.app-navigation-administration>ul>li a:active,.app-navigation-administration>ul>li a:active>a,.app-navigation-administration>ul>li a.selected,.app-navigation-administration>ul>li a.selected>a,.app-navigation-administration>ul>li a.active,.app-navigation-administration>ul>li a.active>a{background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.app-navigation-personal>ul>li.active:first-child>img,.app-navigation-personal>ul>li.active>a:first-child>img,.app-navigation-personal>ul>li a:active:first-child>img,.app-navigation-personal>ul>li a:active>a:first-child>img,.app-navigation-personal>ul>li a.selected:first-child>img,.app-navigation-personal>ul>li a.selected>a:first-child>img,.app-navigation-personal>ul>li a.active:first-child>img,.app-navigation-personal>ul>li a.active>a:first-child>img,.app-navigation-administration>ul>li.active:first-child>img,.app-navigation-administration>ul>li.active>a:first-child>img,.app-navigation-administration>ul>li a:active:first-child>img,.app-navigation-administration>ul>li a:active>a:first-child>img,.app-navigation-administration>ul>li a.selected:first-child>img,.app-navigation-administration>ul>li a.selected>a:first-child>img,.app-navigation-administration>ul>li a.active:first-child>img,.app-navigation-administration>ul>li a.active>a:first-child>img{filter:var(--primary-invert-if-dark)}.app-navigation-personal>ul>li.icon-loading-small:after,.app-navigation-administration>ul>li.icon-loading-small:after{inset-inline-start:22px;top:22px}.app-navigation-personal>ul>li.deleted>ul,.app-navigation-personal>ul>li.collapsible:not(.open)>ul,.app-navigation-administration>ul>li.deleted>ul,.app-navigation-administration>ul>li.collapsible:not(.open)>ul{display:none}.app-navigation-personal>ul>li>ul,.app-navigation-administration>ul>li>ul{flex:0 1 auto;width:100%;position:relative}.app-navigation-personal>ul>li>ul>li,.app-navigation-administration>ul>li>ul>li{display:inline-flex;flex-wrap:wrap;padding-inline-start:var(--default-clickable-area);width:100%;margin-bottom:3px}.app-navigation-personal>ul>li>ul>li:hover,.app-navigation-personal>ul>li>ul>li:hover>a,.app-navigation-personal>ul>li>ul>li:focus,.app-navigation-personal>ul>li>ul>li:focus>a,.app-navigation-administration>ul>li>ul>li:hover,.app-navigation-administration>ul>li>ul>li:hover>a,.app-navigation-administration>ul>li>ul>li:focus,.app-navigation-administration>ul>li>ul>li:focus>a{border-radius:var(--border-radius-element);background-color:var(--color-background-hover)}.app-navigation-personal>ul>li>ul>li.active,.app-navigation-personal>ul>li>ul>li.active>a,.app-navigation-personal>ul>li>ul>li a.selected,.app-navigation-personal>ul>li>ul>li a.selected>a,.app-navigation-administration>ul>li>ul>li.active,.app-navigation-administration>ul>li>ul>li.active>a,.app-navigation-administration>ul>li>ul>li a.selected,.app-navigation-administration>ul>li>ul>li a.selected>a{border-radius:var(--border-radius-element);background-color:var(--color-primary-element-light)}.app-navigation-personal>ul>li>ul>li.active:first-child>img,.app-navigation-personal>ul>li>ul>li.active>a:first-child>img,.app-navigation-personal>ul>li>ul>li a.selected:first-child>img,.app-navigation-personal>ul>li>ul>li a.selected>a:first-child>img,.app-navigation-administration>ul>li>ul>li.active:first-child>img,.app-navigation-administration>ul>li>ul>li.active>a:first-child>img,.app-navigation-administration>ul>li>ul>li a.selected:first-child>img,.app-navigation-administration>ul>li>ul>li a.selected>a:first-child>img{filter:var(--primary-invert-if-dark)}.app-navigation-personal>ul>li>ul>li.icon-loading-small:after,.app-navigation-administration>ul>li>ul>li.icon-loading-small:after{inset-inline-start:calc(var(--default-clickable-area)/2)}.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-deleted,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-deleted{margin-inline-start:4px;padding-inline-start:84px}.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-edit,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-edit{margin-inline-start:4px;padding-inline-start:calc(2*var(--default-clickable-area) - 10px) !important}.app-navigation-personal>ul>li,.app-navigation-personal>ul>li>ul>li,.app-navigation-administration>ul>li,.app-navigation-administration>ul>li>ul>li{position:relative;box-sizing:border-box}.app-navigation-personal>ul>li.icon-loading-small>a,.app-navigation-personal>ul>li.icon-loading-small>.app-navigation-entry-bullet,.app-navigation-personal>ul>li>ul>li.icon-loading-small>a,.app-navigation-personal>ul>li>ul>li.icon-loading-small>.app-navigation-entry-bullet,.app-navigation-administration>ul>li.icon-loading-small>a,.app-navigation-administration>ul>li.icon-loading-small>.app-navigation-entry-bullet,.app-navigation-administration>ul>li>ul>li.icon-loading-small>a,.app-navigation-administration>ul>li>ul>li.icon-loading-small>.app-navigation-entry-bullet{background:rgba(0,0,0,0) !important}.app-navigation-personal>ul>li>a,.app-navigation-personal>ul>li>ul>li>a,.app-navigation-administration>ul>li>a,.app-navigation-administration>ul>li>ul>li>a{background-size:16px 16px;background-repeat:no-repeat;display:block;justify-content:space-between;line-height:var(--default-clickable-area);min-height:var(--default-clickable-area);padding-block:0;padding-inline:calc(2*var(--default-grid-baseline));overflow:hidden;box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;border-radius:var(--border-radius-element);color:var(--color-main-text);flex:1 1 0px;z-index:100}.app-navigation-personal>ul>li>a.svg,.app-navigation-personal>ul>li>ul>li>a.svg,.app-navigation-administration>ul>li>a.svg,.app-navigation-administration>ul>li>ul>li>a.svg{padding-block:0;padding-inline:var(--default-clickable-area) 12px}.app-navigation-personal>ul>li>a.svg :focus-visible,.app-navigation-personal>ul>li>ul>li>a.svg :focus-visible,.app-navigation-administration>ul>li>a.svg :focus-visible,.app-navigation-administration>ul>li>ul>li>a.svg :focus-visible{padding-block:0;padding-inline:calc(var(--default-clickable-area) - 2px) 8px}.app-navigation-personal>ul>li>a:first-child img,.app-navigation-personal>ul>li>ul>li>a:first-child img,.app-navigation-administration>ul>li>a:first-child img,.app-navigation-administration>ul>li>ul>li>a:first-child img{margin-inline-end:calc(2*var(--default-grid-baseline)) !important;width:16px;height:16px;filter:var(--background-invert-if-dark)}.app-navigation-personal>ul>li>a>.app-navigation-entry-utils,.app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils,.app-navigation-administration>ul>li>a>.app-navigation-entry-utils,.app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils{display:inline-block}.app-navigation-personal>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-administration>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter{padding-inline-end:0 !important}.app-navigation-personal>ul>li>.app-navigation-entry-bullet,.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-bullet,.app-navigation-administration>ul>li>.app-navigation-entry-bullet,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-bullet{position:absolute;display:block;margin:16px;width:12px;height:12px;border:none;border-radius:50%;cursor:pointer;transition:background 100ms ease-in-out}.app-navigation-personal>ul>li>.app-navigation-entry-bullet+a,.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-bullet+a,.app-navigation-administration>ul>li>.app-navigation-entry-bullet+a,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-bullet+a{background:rgba(0,0,0,0) !important}.app-navigation-personal>ul>li>.app-navigation-entry-menu,.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-menu,.app-navigation-administration>ul>li>.app-navigation-entry-menu,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-menu{top:var(--default-clickable-area)}.app-navigation-personal>ul>li.editing .app-navigation-entry-edit,.app-navigation-personal>ul>li>ul>li.editing .app-navigation-entry-edit,.app-navigation-administration>ul>li.editing .app-navigation-entry-edit,.app-navigation-administration>ul>li>ul>li.editing .app-navigation-entry-edit{opacity:1;z-index:250}.app-navigation-personal>ul>li.deleted .app-navigation-entry-deleted,.app-navigation-personal>ul>li>ul>li.deleted .app-navigation-entry-deleted,.app-navigation-administration>ul>li.deleted .app-navigation-entry-deleted,.app-navigation-administration>ul>li>ul>li.deleted .app-navigation-entry-deleted{transform:translateX(0);z-index:250}.app-navigation-personal.hidden,.app-navigation-administration.hidden{display:none}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button{border:0;opacity:.5;background-color:rgba(0,0,0,0);background-repeat:no-repeat;background-position:center}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:hover,.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:focus,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:hover,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:focus,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus{background-color:rgba(0,0,0,0);opacity:1}.app-navigation-personal .collapsible .collapse,.app-navigation-administration .collapsible .collapse{opacity:0;position:absolute;width:var(--default-clickable-area);height:var(--default-clickable-area);margin:0;z-index:110;inset-inline-start:0}.app-navigation-personal .collapsible .collapse:focus-visible,.app-navigation-administration .collapsible .collapse:focus-visible{opacity:1;border-width:0;box-shadow:inset 0 0 0 2px var(--color-primary-element);background:none}.app-navigation-personal .collapsible:before,.app-navigation-administration .collapsible:before{position:absolute;height:var(--default-clickable-area);width:var(--default-clickable-area);margin:0;padding:0;background:none;background-image:var(--icon-triangle-s-dark);background-size:16px;background-repeat:no-repeat;background-position:center;border:none;outline:none !important;box-shadow:none;content:" ";opacity:0;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);z-index:105;border-radius:50%;transition:opacity 100ms ease-in-out}.app-navigation-personal .collapsible>a:first-child,.app-navigation-administration .collapsible>a:first-child{padding-inline-start:var(--default-clickable-area)}.app-navigation-personal .collapsible:hover:before,.app-navigation-personal .collapsible:focus:before,.app-navigation-administration .collapsible:hover:before,.app-navigation-administration .collapsible:focus:before{opacity:1}.app-navigation-personal .collapsible:hover>a,.app-navigation-personal .collapsible:focus>a,.app-navigation-administration .collapsible:hover>a,.app-navigation-administration .collapsible:focus>a{background-image:none}.app-navigation-personal .collapsible:hover>.app-navigation-entry-bullet,.app-navigation-personal .collapsible:focus>.app-navigation-entry-bullet,.app-navigation-administration .collapsible:hover>.app-navigation-entry-bullet,.app-navigation-administration .collapsible:focus>.app-navigation-entry-bullet{background:rgba(0,0,0,0) !important}.app-navigation-personal .collapsible.open:before,.app-navigation-administration .collapsible.open:before{-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0)}.app-navigation-personal .app-navigation-entry-utils,.app-navigation-administration .app-navigation-entry-utils{flex:0 1 auto}.app-navigation-personal .app-navigation-entry-utils ul,.app-navigation-administration .app-navigation-entry-utils ul{display:flex !important;align-items:center;justify-content:flex-end}.app-navigation-personal .app-navigation-entry-utils li,.app-navigation-administration .app-navigation-entry-utils li{width:var(--default-clickable-area) !important;height:var(--default-clickable-area)}.app-navigation-personal .app-navigation-entry-utils button,.app-navigation-administration .app-navigation-entry-utils button{height:100%;width:100%;margin:0;box-shadow:none}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button button:not([class^=icon-]):not([class*=" icon-"]),.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button button:not([class^=icon-]):not([class*=" icon-"]){background-image:var(--icon-more-dark)}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:hover button,.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:focus button,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:hover button,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:focus button{background-color:rgba(0,0,0,0);opacity:1}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-counter{overflow:hidden;text-align:end;font-size:9pt;line-height:var(--default-clickable-area);padding:0 12px}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted{padding:0;text-align:center}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted span,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted span{padding:2px 5px;border-radius:10px;background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.app-navigation-personal .app-navigation-entry-edit,.app-navigation-administration .app-navigation-entry-edit{padding-inline:5px;display:block;width:calc(100% - 1px);transition:opacity 250ms ease-in-out;opacity:0;position:absolute;background-color:var(--color-main-background);z-index:-1}.app-navigation-personal .app-navigation-entry-edit form,.app-navigation-personal .app-navigation-entry-edit div,.app-navigation-administration .app-navigation-entry-edit form,.app-navigation-administration .app-navigation-entry-edit div{display:inline-flex;width:100%}.app-navigation-personal .app-navigation-entry-edit input,.app-navigation-administration .app-navigation-entry-edit input{padding:5px;margin-inline-end:0;height:38px}.app-navigation-personal .app-navigation-entry-edit input:hover,.app-navigation-personal .app-navigation-entry-edit input:focus,.app-navigation-administration .app-navigation-entry-edit input:hover,.app-navigation-administration .app-navigation-entry-edit input:focus{z-index:1}.app-navigation-personal .app-navigation-entry-edit input[type=text],.app-navigation-administration .app-navigation-entry-edit input[type=text]{width:100%;min-width:0;border-end-end-radius:0;border-start-end-radius:0}.app-navigation-personal .app-navigation-entry-edit button,.app-navigation-personal .app-navigation-entry-edit input:not([type=text]),.app-navigation-administration .app-navigation-entry-edit button,.app-navigation-administration .app-navigation-entry-edit input:not([type=text]){width:36px;height:38px;flex:0 0 36px}.app-navigation-personal .app-navigation-entry-edit button:not(:last-child),.app-navigation-personal .app-navigation-entry-edit input:not([type=text]):not(:last-child),.app-navigation-administration .app-navigation-entry-edit button:not(:last-child),.app-navigation-administration .app-navigation-entry-edit input:not([type=text]):not(:last-child){border-radius:0 !important}.app-navigation-personal .app-navigation-entry-edit button:not(:first-child),.app-navigation-personal .app-navigation-entry-edit input:not([type=text]):not(:first-child),.app-navigation-administration .app-navigation-entry-edit button:not(:first-child),.app-navigation-administration .app-navigation-entry-edit input:not([type=text]):not(:first-child){margin-inline-start:-1px}.app-navigation-personal .app-navigation-entry-edit button:last-child,.app-navigation-personal .app-navigation-entry-edit input:not([type=text]):last-child,.app-navigation-administration .app-navigation-entry-edit button:last-child,.app-navigation-administration .app-navigation-entry-edit input:not([type=text]):last-child{border-end-end-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-start-radius:0;border-start-start-radius:0}.app-navigation-personal .app-navigation-entry-deleted,.app-navigation-administration .app-navigation-entry-deleted{display:inline-flex;padding-inline-start:var(--default-clickable-area);transform:translateX(300px)}.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-description,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-description{position:relative;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;flex:1 1 0px;line-height:var(--default-clickable-area)}.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button{margin:0;height:var(--default-clickable-area);width:var(--default-clickable-area);line-height:var(--default-clickable-area)}.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus{opacity:1}.app-navigation-personal .app-navigation-entry-edit,.app-navigation-personal .app-navigation-entry-deleted,.app-navigation-administration .app-navigation-entry-edit,.app-navigation-administration .app-navigation-entry-deleted{width:calc(100% - 1px);transition:transform 250ms ease-in-out,opacity 250ms ease-in-out,z-index 250ms ease-in-out;position:absolute;inset-inline-start:0;background-color:var(--color-main-background);box-sizing:border-box}.app-navigation-personal .drag-and-drop,.app-navigation-administration .drag-and-drop{-webkit-transition:padding-bottom 500ms ease 0s;transition:padding-bottom 500ms ease 0s;padding-bottom:40px}.app-navigation-personal .error,.app-navigation-administration .error{color:var(--color-error)}.app-navigation-personal .app-navigation-entry-utils ul,.app-navigation-personal .app-navigation-entry-menu ul,.app-navigation-administration .app-navigation-entry-utils ul,.app-navigation-administration .app-navigation-entry-menu ul{list-style-type:none}body[dir=ltr] .app-navigation-personal .app-navigation-new button,body[dir=ltr] .app-navigation-administration .app-navigation-new button{background-position:left 10px center}body[dir=ltr] .app-navigation-personal>ul>li>ul>li>a,body[dir=ltr] .app-navigation-administration>ul>li>ul>li>a{background-position:left 14px center}body[dir=ltr] .app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils,body[dir=ltr] .app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils{float:right}body[dir=rtl] .app-navigation-personal .app-navigation-new button,body[dir=rtl] .app-navigation-administration .app-navigation-new button{background-position:right 10px center}body[dir=rtl] .app-navigation-personal>ul>li>ul>li>a,body[dir=rtl] .app-navigation-administration>ul>li>ul>li>a{background-position:right 14px center}body[dir=rtl] .app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils,body[dir=rtl] .app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils{float:left}#content{box-sizing:border-box;position:static;margin:var(--body-container-margin);margin-top:var(--header-height);padding:0;display:flex;width:calc(100% - var(--body-container-margin)*2);height:var(--body-height);border-radius:var(--body-container-radius);overflow:clip}#content:not(.with-sidebar--full){position:fixed}@media only screen and (max-width: 1024px){#content{border-start-start-radius:var(--border-radius-large);border-start-end-radius:var(--border-radius-large)}#app-navigation{border-start-start-radius:var(--border-radius-large)}#app-sidebar{border-start-end-radius:var(--border-radius-large)}}#app-content{z-index:1000;background-color:var(--color-main-background);flex-basis:100vw;overflow:auto;position:initial;height:100%}#app-content>.section:first-child{border-top:none}#app-content #app-content-wrapper{display:flex;position:relative;align-items:stretch;min-height:100%}#app-content #app-content-wrapper .app-content-details{flex:1 1 524px}#app-content #app-content-wrapper .app-content-details #app-navigation-toggle-back{display:none}#app-content::-webkit-scrollbar-button{height:var(--body-container-radius)}#app-sidebar{width:27vw;min-width:300px;max-width:500px;display:block;position:-webkit-sticky;position:sticky;top:50px;inset-inline-end:0;overflow-y:auto;overflow-x:hidden;z-index:1500;opacity:.7px;height:calc(100vh - 50px);background:var(--color-main-background);border-inline-start:1px solid var(--color-border);flex-shrink:0}#app-sidebar.disappear{display:none}#app-settings{margin-top:auto}#app-settings.open #app-settings-content,#app-settings.opened #app-settings-content{display:block}#app-settings-content{display:none;padding:calc(var(--default-grid-baseline)*2);padding-top:0;padding-inline-start:calc(var(--default-grid-baseline)*4);max-height:300px;overflow-y:auto;box-sizing:border-box}#app-settings-content input[type=text]{width:93%}#app-settings-content .info-text{padding-block:5px 7px;padding-inline:22px 0;color:var(--color-text-lighter)}#app-settings-content input[type=checkbox].radio+label,#app-settings-content input[type=checkbox].checkbox+label,#app-settings-content input[type=radio].radio+label,#app-settings-content input[type=radio].checkbox+label{display:inline-block;width:100%;padding:5px 0}#app-settings-header{box-sizing:border-box;background-color:rgba(0,0,0,0);overflow:hidden;border-radius:calc(var(--default-clickable-area)/2);padding:calc(var(--default-grid-baseline)*2);padding-top:0}#app-settings-header .settings-button{display:flex;align-items:center;height:var(--default-clickable-area);width:100%;padding:0;margin:0;background-color:rgba(0,0,0,0);box-shadow:none;border:0;border-radius:calc(var(--default-clickable-area)/2);text-align:start;font-weight:normal;font-size:100%;opacity:.8;color:var(--color-main-text)}#app-settings-header .settings-button.opened{border-top:solid 1px var(--color-border);background-color:var(--color-main-background);margin-top:8px}#app-settings-header .settings-button:hover,#app-settings-header .settings-button:focus{background-color:var(--color-background-hover)}#app-settings-header .settings-button::before{background-image:var(--icon-settings-dark);background-repeat:no-repeat;content:"";width:var(--default-clickable-area);height:var(--default-clickable-area);top:0;inset-inline-start:0;display:block}#app-settings-header .settings-button:focus-visible{box-shadow:0 0 0 2px inset var(--color-primary-element) !important}body[dir=ltr] #app-settings-header .settings-button::before{background-position:left 14px center}body[dir=ltr] #app-settings-header .settings-button:focus-visible{background-position:left 12px center}body[dir=rtl] #app-settings-header .settings-button::before{background-position:right 14px center}body[dir=rtl] #app-settings-header .settings-button:focus-visible{background-position:right 12px center}.section{display:block;padding:30px;margin-bottom:24px}.section.hidden{display:none !important}.section input[type=checkbox],.section input[type=radio]{vertical-align:-2px;margin-inline-end:4px}.sub-section{position:relative;margin-top:10px;margin-inline-start:27px;margin-bottom:10px}.appear{opacity:1;-webkit-transition:opacity 500ms ease 0s;-moz-transition:opacity 500ms ease 0s;-ms-transition:opacity 500ms ease 0s;-o-transition:opacity 500ms ease 0s;transition:opacity 500ms ease 0s}.appear.transparent{opacity:0}.tabHeaders{display:flex;margin-bottom:16px}.tabHeaders .tabHeader{display:flex;flex-direction:column;flex-grow:1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;color:var(--color-text-lighter);margin-bottom:1px;padding:5px}.tabHeaders .tabHeader.hidden{display:none}.tabHeaders .tabHeader:first-child{padding-inline-start:15px}.tabHeaders .tabHeader:last-child{padding-inline-end:15px}.tabHeaders .tabHeader .icon{display:inline-block;width:100%;height:16px;background-size:16px;vertical-align:middle;margin-top:-2px;margin-inline-end:3px;opacity:.7;cursor:pointer}.tabHeaders .tabHeader a{color:var(--color-text-lighter);margin-bottom:1px;overflow:hidden;text-overflow:ellipsis}.tabHeaders .tabHeader.selected{font-weight:bold}.tabHeaders .tabHeader.selected,.tabHeaders .tabHeader:hover,.tabHeaders .tabHeader:focus{margin-bottom:0px;color:var(--color-main-text);border-bottom:1px solid var(--color-text-lighter)}.tabsContainer .tab{padding:0 15px 15px}body[dir=ltr] .tabsContainer{clear:left}body[dir=rtl] .tabsContainer{clear:right}.v-popper__inner div.open>ul>li>a>span.action-link__icon,.v-popper__inner div.open>ul>li>a>span.action-router__icon,.v-popper__inner div.open>ul>li>a>img{filter:var(--background-invert-if-dark)}.v-popper__inner div.open>ul>li>a>span.action-link__icon[src^=data],.v-popper__inner div.open>ul>li>a>span.action-router__icon[src^=data],.v-popper__inner div.open>ul>li>a>img[src^=data]{filter:none}.bubble,.app-navigation-entry-menu,.popovermenu{position:absolute;background-color:var(--color-main-background);color:var(--color-main-text);border-radius:var(--border-radius-large);padding:3px;z-index:110;margin:5px;margin-top:-5px;inset-inline-end:0;filter:drop-shadow(0 1px 3px var(--color-box-shadow));display:none;will-change:filter}.bubble:after,.app-navigation-entry-menu:after,.popovermenu:after{bottom:100%;inset-inline-end:7px;border:solid rgba(0,0,0,0);content:" ";height:0;width:0;position:absolute;pointer-events:none;border-bottom-color:var(--color-main-background);border-width:9px}.bubble.menu-center,.app-navigation-entry-menu.menu-center,.popovermenu.menu-center{transform:translateX(50%);inset-inline-end:50%;margin-inline-end:0}.bubble.menu-center:after,.app-navigation-entry-menu.menu-center:after,.popovermenu.menu-center:after{inset-inline-end:50%;transform:translateX(50%)}.bubble.menu-left,.app-navigation-entry-menu.menu-left,.popovermenu.menu-left{inset-inline:0 auto;margin-inline-end:0}.bubble.menu-left:after,.app-navigation-entry-menu.menu-left:after,.popovermenu.menu-left:after{inset-inline:6px auto}.bubble.open,.app-navigation-entry-menu.open,.popovermenu.open{display:block}.bubble.contactsmenu-popover,.app-navigation-entry-menu.contactsmenu-popover,.popovermenu.contactsmenu-popover{margin:0}.bubble ul,.app-navigation-entry-menu ul,.popovermenu ul{display:flex !important;flex-direction:column}.bubble li,.app-navigation-entry-menu li,.popovermenu li{display:flex;flex:0 0 auto}.bubble li.hidden,.app-navigation-entry-menu li.hidden,.popovermenu li.hidden{display:none}.bubble li>button,.bubble li>a,.bubble li>.menuitem,.app-navigation-entry-menu li>button,.app-navigation-entry-menu li>a,.app-navigation-entry-menu li>.menuitem,.popovermenu li>button,.popovermenu li>a,.popovermenu li>.menuitem{cursor:pointer;line-height:34px;border:0;border-radius:var(--border-radius-large);background-color:rgba(0,0,0,0);display:flex;align-items:flex-start;height:auto;margin:0;font-weight:normal;box-shadow:none;width:100%;color:var(--color-main-text);white-space:nowrap}.bubble li>button span[class^=icon-],.bubble li>button span[class*=" icon-"],.bubble li>button[class^=icon-],.bubble li>button[class*=" icon-"],.bubble li>a span[class^=icon-],.bubble li>a span[class*=" icon-"],.bubble li>a[class^=icon-],.bubble li>a[class*=" icon-"],.bubble li>.menuitem span[class^=icon-],.bubble li>.menuitem span[class*=" icon-"],.bubble li>.menuitem[class^=icon-],.bubble li>.menuitem[class*=" icon-"],.app-navigation-entry-menu li>button span[class^=icon-],.app-navigation-entry-menu li>button span[class*=" icon-"],.app-navigation-entry-menu li>button[class^=icon-],.app-navigation-entry-menu li>button[class*=" icon-"],.app-navigation-entry-menu li>a span[class^=icon-],.app-navigation-entry-menu li>a span[class*=" icon-"],.app-navigation-entry-menu li>a[class^=icon-],.app-navigation-entry-menu li>a[class*=" icon-"],.app-navigation-entry-menu li>.menuitem span[class^=icon-],.app-navigation-entry-menu li>.menuitem span[class*=" icon-"],.app-navigation-entry-menu li>.menuitem[class^=icon-],.app-navigation-entry-menu li>.menuitem[class*=" icon-"],.popovermenu li>button span[class^=icon-],.popovermenu li>button span[class*=" icon-"],.popovermenu li>button[class^=icon-],.popovermenu li>button[class*=" icon-"],.popovermenu li>a span[class^=icon-],.popovermenu li>a span[class*=" icon-"],.popovermenu li>a[class^=icon-],.popovermenu li>a[class*=" icon-"],.popovermenu li>.menuitem span[class^=icon-],.popovermenu li>.menuitem span[class*=" icon-"],.popovermenu li>.menuitem[class^=icon-],.popovermenu li>.menuitem[class*=" icon-"]{min-width:0;min-height:0;background-position:9px center;background-size:16px}.bubble li>button span[class^=icon-],.bubble li>button span[class*=" icon-"],.bubble li>a span[class^=icon-],.bubble li>a span[class*=" icon-"],.bubble li>.menuitem span[class^=icon-],.bubble li>.menuitem span[class*=" icon-"],.app-navigation-entry-menu li>button span[class^=icon-],.app-navigation-entry-menu li>button span[class*=" icon-"],.app-navigation-entry-menu li>a span[class^=icon-],.app-navigation-entry-menu li>a span[class*=" icon-"],.app-navigation-entry-menu li>.menuitem span[class^=icon-],.app-navigation-entry-menu li>.menuitem span[class*=" icon-"],.popovermenu li>button span[class^=icon-],.popovermenu li>button span[class*=" icon-"],.popovermenu li>a span[class^=icon-],.popovermenu li>a span[class*=" icon-"],.popovermenu li>.menuitem span[class^=icon-],.popovermenu li>.menuitem span[class*=" icon-"]{padding:17px 0 17px 34px}.bubble li>button:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>button:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>button:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>a:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>a:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>a:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>.menuitem:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>.menuitem:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>.menuitem:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>button:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>button:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>button:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>a:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>a:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>a:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>.menuitem:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>.menuitem:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>.menuitem:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>button:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>button:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>button:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>a:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>a:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>a:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>.menuitem:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>.menuitem:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>.menuitem:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child{margin-inline-start:34px}.bubble li>button[class^=icon-],.bubble li>button[class*=" icon-"],.bubble li>a[class^=icon-],.bubble li>a[class*=" icon-"],.bubble li>.menuitem[class^=icon-],.bubble li>.menuitem[class*=" icon-"],.app-navigation-entry-menu li>button[class^=icon-],.app-navigation-entry-menu li>button[class*=" icon-"],.app-navigation-entry-menu li>a[class^=icon-],.app-navigation-entry-menu li>a[class*=" icon-"],.app-navigation-entry-menu li>.menuitem[class^=icon-],.app-navigation-entry-menu li>.menuitem[class*=" icon-"],.popovermenu li>button[class^=icon-],.popovermenu li>button[class*=" icon-"],.popovermenu li>a[class^=icon-],.popovermenu li>a[class*=" icon-"],.popovermenu li>.menuitem[class^=icon-],.popovermenu li>.menuitem[class*=" icon-"]{padding:0 9px 0 34px !important}.bubble li>button:hover,.bubble li>button:focus,.bubble li>a:hover,.bubble li>a:focus,.bubble li>.menuitem:hover,.bubble li>.menuitem:focus,.app-navigation-entry-menu li>button:hover,.app-navigation-entry-menu li>button:focus,.app-navigation-entry-menu li>a:hover,.app-navigation-entry-menu li>a:focus,.app-navigation-entry-menu li>.menuitem:hover,.app-navigation-entry-menu li>.menuitem:focus,.popovermenu li>button:hover,.popovermenu li>button:focus,.popovermenu li>a:hover,.popovermenu li>a:focus,.popovermenu li>.menuitem:hover,.popovermenu li>.menuitem:focus{background-color:var(--color-background-hover)}.bubble li>button:focus,.bubble li>button:focus-visible,.bubble li>a:focus,.bubble li>a:focus-visible,.bubble li>.menuitem:focus,.bubble li>.menuitem:focus-visible,.app-navigation-entry-menu li>button:focus,.app-navigation-entry-menu li>button:focus-visible,.app-navigation-entry-menu li>a:focus,.app-navigation-entry-menu li>a:focus-visible,.app-navigation-entry-menu li>.menuitem:focus,.app-navigation-entry-menu li>.menuitem:focus-visible,.popovermenu li>button:focus,.popovermenu li>button:focus-visible,.popovermenu li>a:focus,.popovermenu li>a:focus-visible,.popovermenu li>.menuitem:focus,.popovermenu li>.menuitem:focus-visible{box-shadow:0 0 0 2px var(--color-primary-element)}.bubble li>button.active,.bubble li>a.active,.bubble li>.menuitem.active,.app-navigation-entry-menu li>button.active,.app-navigation-entry-menu li>a.active,.app-navigation-entry-menu li>.menuitem.active,.popovermenu li>button.active,.popovermenu li>a.active,.popovermenu li>.menuitem.active{border-radius:var(--border-radius-element);background-color:var(--color-primary-element-light)}.bubble li>button.action,.bubble li>a.action,.bubble li>.menuitem.action,.app-navigation-entry-menu li>button.action,.app-navigation-entry-menu li>a.action,.app-navigation-entry-menu li>.menuitem.action,.popovermenu li>button.action,.popovermenu li>a.action,.popovermenu li>.menuitem.action{padding:inherit !important}.bubble li>button>span,.bubble li>a>span,.bubble li>.menuitem>span,.app-navigation-entry-menu li>button>span,.app-navigation-entry-menu li>a>span,.app-navigation-entry-menu li>.menuitem>span,.popovermenu li>button>span,.popovermenu li>a>span,.popovermenu li>.menuitem>span{cursor:pointer;white-space:nowrap}.bubble li>button>p,.bubble li>a>p,.bubble li>.menuitem>p,.app-navigation-entry-menu li>button>p,.app-navigation-entry-menu li>a>p,.app-navigation-entry-menu li>.menuitem>p,.popovermenu li>button>p,.popovermenu li>a>p,.popovermenu li>.menuitem>p{width:150px;line-height:1.6em;padding:8px 0;white-space:normal}.bubble li>button>select,.bubble li>a>select,.bubble li>.menuitem>select,.app-navigation-entry-menu li>button>select,.app-navigation-entry-menu li>a>select,.app-navigation-entry-menu li>.menuitem>select,.popovermenu li>button>select,.popovermenu li>a>select,.popovermenu li>.menuitem>select{margin:0;margin-inline-start:6px}.bubble li>button:not(:empty),.bubble li>a:not(:empty),.bubble li>.menuitem:not(:empty),.app-navigation-entry-menu li>button:not(:empty),.app-navigation-entry-menu li>a:not(:empty),.app-navigation-entry-menu li>.menuitem:not(:empty),.popovermenu li>button:not(:empty),.popovermenu li>a:not(:empty),.popovermenu li>.menuitem:not(:empty){padding-inline-end:9px !important}.bubble li>button>img,.bubble li>a>img,.bubble li>.menuitem>img,.app-navigation-entry-menu li>button>img,.app-navigation-entry-menu li>a>img,.app-navigation-entry-menu li>.menuitem>img,.popovermenu li>button>img,.popovermenu li>a>img,.popovermenu li>.menuitem>img{width:16px;padding:9px}.bubble li>button>input.radio+label,.bubble li>button>input.checkbox+label,.bubble li>a>input.radio+label,.bubble li>a>input.checkbox+label,.bubble li>.menuitem>input.radio+label,.bubble li>.menuitem>input.checkbox+label,.app-navigation-entry-menu li>button>input.radio+label,.app-navigation-entry-menu li>button>input.checkbox+label,.app-navigation-entry-menu li>a>input.radio+label,.app-navigation-entry-menu li>a>input.checkbox+label,.app-navigation-entry-menu li>.menuitem>input.radio+label,.app-navigation-entry-menu li>.menuitem>input.checkbox+label,.popovermenu li>button>input.radio+label,.popovermenu li>button>input.checkbox+label,.popovermenu li>a>input.radio+label,.popovermenu li>a>input.checkbox+label,.popovermenu li>.menuitem>input.radio+label,.popovermenu li>.menuitem>input.checkbox+label{padding:0 !important;width:100%}.bubble li>button>input.checkbox+label::before,.bubble li>a>input.checkbox+label::before,.bubble li>.menuitem>input.checkbox+label::before,.app-navigation-entry-menu li>button>input.checkbox+label::before,.app-navigation-entry-menu li>a>input.checkbox+label::before,.app-navigation-entry-menu li>.menuitem>input.checkbox+label::before,.popovermenu li>button>input.checkbox+label::before,.popovermenu li>a>input.checkbox+label::before,.popovermenu li>.menuitem>input.checkbox+label::before{margin:-2px 13px 0}.bubble li>button>input.radio+label::before,.bubble li>a>input.radio+label::before,.bubble li>.menuitem>input.radio+label::before,.app-navigation-entry-menu li>button>input.radio+label::before,.app-navigation-entry-menu li>a>input.radio+label::before,.app-navigation-entry-menu li>.menuitem>input.radio+label::before,.popovermenu li>button>input.radio+label::before,.popovermenu li>a>input.radio+label::before,.popovermenu li>.menuitem>input.radio+label::before{margin:-2px 12px 0}.bubble li>button>input:not([type=radio]):not([type=checkbox]):not([type=image]),.bubble li>a>input:not([type=radio]):not([type=checkbox]):not([type=image]),.bubble li>.menuitem>input:not([type=radio]):not([type=checkbox]):not([type=image]),.app-navigation-entry-menu li>button>input:not([type=radio]):not([type=checkbox]):not([type=image]),.app-navigation-entry-menu li>a>input:not([type=radio]):not([type=checkbox]):not([type=image]),.app-navigation-entry-menu li>.menuitem>input:not([type=radio]):not([type=checkbox]):not([type=image]),.popovermenu li>button>input:not([type=radio]):not([type=checkbox]):not([type=image]),.popovermenu li>a>input:not([type=radio]):not([type=checkbox]):not([type=image]),.popovermenu li>.menuitem>input:not([type=radio]):not([type=checkbox]):not([type=image]){width:150px}.bubble li>button form,.bubble li>a form,.bubble li>.menuitem form,.app-navigation-entry-menu li>button form,.app-navigation-entry-menu li>a form,.app-navigation-entry-menu li>.menuitem form,.popovermenu li>button form,.popovermenu li>a form,.popovermenu li>.menuitem form{display:flex;flex:1 1 auto;align-items:center}.bubble li>button form:not(:first-child),.bubble li>a form:not(:first-child),.bubble li>.menuitem form:not(:first-child),.app-navigation-entry-menu li>button form:not(:first-child),.app-navigation-entry-menu li>a form:not(:first-child),.app-navigation-entry-menu li>.menuitem form:not(:first-child),.popovermenu li>button form:not(:first-child),.popovermenu li>a form:not(:first-child),.popovermenu li>.menuitem form:not(:first-child){margin-inline-start:5px}.bubble li>button>span.hidden+form,.bubble li>button>span[style*="display:none"]+form,.bubble li>a>span.hidden+form,.bubble li>a>span[style*="display:none"]+form,.bubble li>.menuitem>span.hidden+form,.bubble li>.menuitem>span[style*="display:none"]+form,.app-navigation-entry-menu li>button>span.hidden+form,.app-navigation-entry-menu li>button>span[style*="display:none"]+form,.app-navigation-entry-menu li>a>span.hidden+form,.app-navigation-entry-menu li>a>span[style*="display:none"]+form,.app-navigation-entry-menu li>.menuitem>span.hidden+form,.app-navigation-entry-menu li>.menuitem>span[style*="display:none"]+form,.popovermenu li>button>span.hidden+form,.popovermenu li>button>span[style*="display:none"]+form,.popovermenu li>a>span.hidden+form,.popovermenu li>a>span[style*="display:none"]+form,.popovermenu li>.menuitem>span.hidden+form,.popovermenu li>.menuitem>span[style*="display:none"]+form{margin-inline-start:0}.bubble li>button input,.bubble li>a input,.bubble li>.menuitem input,.app-navigation-entry-menu li>button input,.app-navigation-entry-menu li>a input,.app-navigation-entry-menu li>.menuitem input,.popovermenu li>button input,.popovermenu li>a input,.popovermenu li>.menuitem input{min-width:34px;max-height:30px;margin:2px 0;flex:1 1 auto}.bubble li>button input:not(:first-child),.bubble li>a input:not(:first-child),.bubble li>.menuitem input:not(:first-child),.app-navigation-entry-menu li>button input:not(:first-child),.app-navigation-entry-menu li>a input:not(:first-child),.app-navigation-entry-menu li>.menuitem input:not(:first-child),.popovermenu li>button input:not(:first-child),.popovermenu li>a input:not(:first-child),.popovermenu li>.menuitem input:not(:first-child){margin-inline-start:5px}.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>button>form,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>button>input,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>a>form,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>a>input,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>form,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>button>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>button>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>a>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>a>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>input,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>button>form,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>button>input,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>a>form,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>a>input,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>form,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>input{margin-top:7px}.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>button>form,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>button>input,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>a>form,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>a>input,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>form,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>button>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>button>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>a>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>a>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>input,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>button>form,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>button>input,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>a>form,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>a>input,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>form,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>input{margin-bottom:0px}.bubble li>button,.app-navigation-entry-menu li>button,.popovermenu li>button{padding:0}.bubble li>button span,.app-navigation-entry-menu li>button span,.popovermenu li>button span{opacity:1}.popovermenu li>button>img,.popovermenu li>a>img,.popovermenu li>.menuitem>img{width:34px;height:34px}#contactsmenu .contact .popovermenu li>a>img{width:16px;height:16px}.app-content-list{position:-webkit-sticky;position:relative;top:0;border-inline-end:1px solid var(--color-border);display:flex;flex-direction:column;transition:transform 250ms ease-in-out;min-height:100%;max-height:100%;overflow-y:auto;overflow-x:hidden;flex:1 1 200px;min-width:200px;max-width:300px}.app-content-list .app-content-list-item{position:relative;height:68px;cursor:pointer;padding:10px 7px;display:flex;flex-wrap:wrap;align-items:center;flex:0 0 auto}.app-content-list .app-content-list-item>[class^=icon-],.app-content-list .app-content-list-item>[class*=" icon-"],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"]{order:4;width:24px;height:24px;margin:-7px;padding:22px;opacity:.3;cursor:pointer}.app-content-list .app-content-list-item>[class^=icon-]:hover,.app-content-list .app-content-list-item>[class^=icon-]:focus,.app-content-list .app-content-list-item>[class*=" icon-"]:hover,.app-content-list .app-content-list-item>[class*=" icon-"]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"]:focus{opacity:.7}.app-content-list .app-content-list-item>[class^=icon-][class^=icon-star],.app-content-list .app-content-list-item>[class^=icon-][class*=" icon-star"],.app-content-list .app-content-list-item>[class*=" icon-"][class^=icon-star],.app-content-list .app-content-list-item>[class*=" icon-"][class*=" icon-star"],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class^=icon-star],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class*=" icon-star"],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class^=icon-star],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class*=" icon-star"]{opacity:.7}.app-content-list .app-content-list-item>[class^=icon-][class^=icon-star]:hover,.app-content-list .app-content-list-item>[class^=icon-][class^=icon-star]:focus,.app-content-list .app-content-list-item>[class^=icon-][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>[class^=icon-][class*=" icon-star"]:focus,.app-content-list .app-content-list-item>[class*=" icon-"][class^=icon-star]:hover,.app-content-list .app-content-list-item>[class*=" icon-"][class^=icon-star]:focus,.app-content-list .app-content-list-item>[class*=" icon-"][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>[class*=" icon-"][class*=" icon-star"]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class^=icon-star]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class^=icon-star]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class*=" icon-star"]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class^=icon-star]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class^=icon-star]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class*=" icon-star"]:focus{opacity:1}.app-content-list .app-content-list-item>[class^=icon-].icon-starred,.app-content-list .app-content-list-item>[class*=" icon-"].icon-starred,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-].icon-starred,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"].icon-starred{opacity:1}.app-content-list .app-content-list-item:hover,.app-content-list .app-content-list-item:focus,.app-content-list .app-content-list-item.active{background-color:var(--color-background-dark)}.app-content-list .app-content-list-item:hover .app-content-list-item-checkbox.checkbox+label,.app-content-list .app-content-list-item:focus .app-content-list-item-checkbox.checkbox+label,.app-content-list .app-content-list-item.active .app-content-list-item-checkbox.checkbox+label{display:flex}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label,.app-content-list .app-content-list-item .app-content-list-item-star{position:absolute;height:40px;width:40px;z-index:50}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:checked+label,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:hover+label,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:focus+label,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox.active+label{display:flex}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:checked+label+.app-content-list-item-icon,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:hover+label+.app-content-list-item-icon,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:focus+label+.app-content-list-item-icon,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox.active+label+.app-content-list-item-icon{opacity:.7}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label{top:14px;inset-inline-start:7px;display:none}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label::before{margin:0}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label~.app-content-list-item-star{display:none}.app-content-list .app-content-list-item .app-content-list-item-star{display:flex;top:10px;inset-inline-start:32px;background-size:16px;height:20px;width:20px;margin:0;padding:0}.app-content-list .app-content-list-item .app-content-list-item-icon{position:absolute;display:inline-block;height:40px;width:40px;line-height:40px;border-radius:50%;vertical-align:middle;margin-inline-end:10px;color:#fff;text-align:center;font-size:1.5em;text-transform:capitalize;object-fit:cover;user-select:none;cursor:pointer;top:50%;margin-top:-20px}.app-content-list .app-content-list-item .app-content-list-item-line-one,.app-content-list .app-content-list-item .app-content-list-item-line-two{display:block;padding-inline:50px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;order:1;flex:1 1 0px;cursor:pointer}.app-content-list .app-content-list-item .app-content-list-item-line-two{opacity:.5;order:3;flex:1 0;flex-basis:calc(100% - var(--default-clickable-area))}.app-content-list .app-content-list-item .app-content-list-item-details{order:2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px;opacity:.5;font-size:80%;user-select:none}.app-content-list .app-content-list-item .app-content-list-item-menu{order:4;position:relative}.app-content-list .app-content-list-item .app-content-list-item-menu .popovermenu{margin:0;inset-inline-end:-2px}.app-content-list.selection .app-content-list-item-checkbox.checkbox+label{display:flex}.button.primary.skip-navigation:focus-visible{box-shadow:0 0 0 4px var(--color-main-background) !important;outline:2px solid var(--color-main-text) !important}/*# sourceMappingURL=apps.css.map */
diff --git a/core/css/apps.css.map b/core/css/apps.css.map
index b321415048f..929ca683ce5 100644
--- a/core/css/apps.css.map
+++ b/core/css/apps.css.map
@@ -1 +1 @@
-{"version":3,"sourceRoot":"","sources":["apps.scss","variables.scss","functions.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA,GCEA;AAAA;AAAA;AAAA,GCFA;AAAA;AAAA;AAAA,GFSA,sCAEC,MACC,wCACA,yCAKF,KACC,WACA,YACA,kBAEA,6EAGD,KAEC,6EAEA,yCACA,sBACA,2BACA,eACA,WACA,iDAKD,eAKC,gBACA,gBACA,gBACA,mBACA,6BAGD,GACC,gBAGD,GACC,gBAGD,GACC,gBAGD,GACC,iBAGD,GACC,gBAID,GACC,kBACA,oCAGD,GACC,eAGD,MAEC,qBACA,aACA,uBAGD,GACC,YACA,mBACA,eAGD,IACC,iBACA,sBACA,kCACA,mCACA,qBACA,mBAMD,wBACC,sBAKD,0BAEC,gGACA,MCxBkB,MDyBlB,YACA,gBACA,kBACA,mDACA,8CACA,+EACA,gBACA,YACA,sBACA,qBACA,iBACA,aACA,sBACA,YACA,cAEA,kDACC,iBACA,0CACA,2EACA,mBACA,uBACA,2BACA,iBACA,oBACA,yBAQD,gGACC,cACA,6CACA,8GACC,qBACA,WACA,aACA,0BACA,iBACA,SAIF,8DACC,kBAED,8DACC,kBACA,YACA,WACA,kBACA,gBACA,sBACA,aACA,sBACA,6CACA,iBAEA,oFACC,oDAGD,oEACC,oBACA,eACA,QACA,cACA,SACA,kBACA,WACA,2CAGA,kFACC,QACA,4GACC,2BAIF,gIAEC,8DAED,0HAIC,0EAKA,wVAEC,+CAGF,oGACC,kDACA,yCAMA,gsBAEC,8CACA,wCAEA,g8BACC,qCAMH,sHACC,wBACA,SAMA,kNAEC,aAKF,0EACC,cACA,WACA,kBACA,gFACC,oBACA,eACA,mDACA,WACA,kBAIC,wXAEC,2CACA,+CAKD,gZAEC,2CACA,oDACA,ghBACC,qCAMH,kIACC,yDAGD,4IAEC,wBACA,0BAGD,sIAEC,wBAGA,6EAMJ,oJAEC,kBACA,sBAGC,4jBAGC,oCAIF,4JACC,0BACA,4BACA,cACA,8BACA,0CACA,yCACA,gBACA,oDACA,gBACA,sBACA,mBACA,uBACA,2CACA,6BACA,aACA,YAGA,4KACC,gBACA,kDACA,wOACC,gBACA,6DAGF,4NACC,kEACA,WACA,YAEA,wCAID,4QACC,qBAEA,4ZACC,gCAKH,wQACC,kBACA,cACA,YACA,WACA,YACA,YACA,kBACA,eACA,wCAEA,gRAEC,oCAKF,gQACC,kCAID,gSACC,UACA,YAED,4SACC,wBACA,YAIH,sEACC,aAMD,4YAEC,SACA,WACA,+BACA,4BACA,2BACA,w0BAEC,+BACA,UAUD,sGACC,UACA,kBACA,oCACA,qCACA,SACA,YAIA,qBAEA,kIACC,UACA,eACA,wDACA,gBAGF,gGACC,kBACA,qCACA,oCACA,SACA,UACA,gBEjZF,6CFmZE,qBACA,4BACA,2BACA,YACA,wBACA,gBACA,YACA,UACA,iCACA,6BACA,yBACA,YACA,kBACA,qCAMD,8GACC,mDAIA,wNACC,UAED,oMACC,sBAED,gTACC,oCAID,0GACC,4BACA,wBACA,oBAQH,gHACC,cACA,sHACC,wBACA,mBACA,yBAED,sHACC,+CACA,qCAED,8HACC,YACA,WACA,SACA,gBAIA,oSEpdF,uCFudE,obAEC,+BACA,UAGF,wLACC,gBACA,eACA,cACA,0CACA,eAEA,gNACC,UACA,kBACA,0NACC,gBACA,mBACA,8CACA,wCASJ,8GACC,mBACA,cACA,uBACA,qCACA,UACA,kBACA,8CACA,WACA,8OAEC,oBACA,WAED,0HACC,YACA,oBACA,YACA,4QAGC,UAGF,gJACC,WACA,YACA,wBACA,0BAED,wRAEC,WACA,YACA,cACA,4VACC,2BAED,gWACC,yBAED,oUACC,2CACA,6CACA,0BACA,4BAQH,oHACC,oBACA,mDACA,4BACA,wMACC,kBACA,mBACA,uBACA,gBACA,aACA,0CAED,8LACC,SACA,qCACA,oCACA,0CACA,oZAEC,UAQH,kOAEC,uBACA,2FAGA,kBACA,qBACA,8CACA,sBAMD,sFACC,gDACA,wCACA,oBAGD,sEACC,yBAGD,0OAEC,qBASA,0IACC,qCAGD,gHACC,qCAEA,wKACC,YASF,0IACC,sCAGD,gHACC,sCAEA,wKACC,WAOJ,SACC,sBACA,gBACA,oCACA,gBACA,UACA,aACA,kDACA,0BACA,2CACA,cAEA,kCACC,eAIF,2CACC,SACC,qDACA,mDAED,gBACC,qDAED,aACC,oDAcF,aACC,aACA,8CACA,iBACA,cACA,iBACA,YAGA,kCACC,gBAID,kCACC,aACA,kBACA,oBAGA,gBAGA,uDAEC,eACA,mFACC,aAKH,uCACC,oCASF,aACC,WACA,UC/qBmB,MDgrBnB,UC/qBmB,MDgrBnB,cACA,wBACA,gBACA,ICtrBe,KDurBf,mBACA,gBACA,kBACA,aACA,aACA,0BACA,wCACA,kDACA,cAEA,uBACC,aAOF,cAEC,gBAGC,oFACC,cAKH,sBACC,aACA,6CACA,cACA,0DAEA,iBACA,gBACA,sBAGA,uCACC,UAGD,iCACC,sBACA,sBACA,gCAOE,4NACC,qBACA,WACA,cAOL,qBACC,sBACA,+BACA,gBACA,oDACA,6CACA,cAEA,sCACC,aACA,mBACA,qCACA,WACA,UACA,SACA,+BACA,gBACA,SACA,oDACA,iBACA,mBACA,eACA,WAGA,6BAEA,6CACC,yCACA,8CACA,eAED,wFAEC,+CAGD,8CACC,2CACA,4BACA,WACA,oCACA,qCACA,MACA,qBACA,cAGD,oDACC,mEAOF,4DACC,qCAED,kEACC,qCAKD,4DACC,sCAED,kEACC,sCAIF,SACC,cACA,aACA,mBACA,gBACC,wBAIA,yDAEC,oBACA,sBAKH,aACC,kBACA,gBACA,yBACA,mBAGD,QACC,UACA,yCACA,sCACA,qCACA,oCACA,iCACA,oBACC,UAKF,YACC,aACA,mBAEA,uBACC,aACA,sBACA,YACA,kBACA,mBACA,gBACA,uBACA,eACA,gCACA,kBACA,YAEA,8BACC,aAID,mCACC,0BAED,kCACC,wBAGD,6BACC,qBACA,WACA,YACA,qBACA,sBACA,gBACA,sBACA,WACA,eAGD,yBACC,gCACA,kBACA,gBACA,uBAED,gCACC,iBAED,0FAGC,kBACA,6BACA,kDAMF,oBACC,oBAKF,6BACC,WAGD,6BACC,YASA,0JAGC,wCAIA,2LACC,YAKH,gDAGC,kBACA,8CACA,6BACA,yCACA,YACA,YACA,WACA,gBACA,mBACA,sDACA,aACA,mBAEA,kEACC,YAKA,qBAEA,2BACA,YACA,SACA,QACA,kBACA,oBACA,iDACA,iBAGD,oFACC,0BACA,qBACA,oBACA,sGACC,qBACA,0BAIF,8EACC,oBACA,oBACA,gGACC,sBAIF,+DACC,cAGD,+GACC,SAGD,yDAEC,wBACA,sBAED,yDACC,aACA,cAEA,8EACC,aAGD,oOAGC,eACA,YA/FkB,KAgGlB,SACA,yCACA,+BACA,aACA,uBACA,YACA,SACA,mBACA,gBACA,WACA,6BACA,mBAEA,whDAIC,YACA,aACA,+BACA,gBAnHe,KAqHhB,yzBAIC,yBAOC,gvGACC,oBAlIe,KAsIlB,+tBAEC,gCAED,ojBAEC,+CAED,4nBAEC,kDAED,mSACC,2CACA,oDAGD,mSACC,2BAED,iRACC,eACA,mBAED,sPACC,YACA,kBACA,cACA,mBAED,mSACC,SACA,wBAGD,gVACC,kCAID,wQACC,MA9Ke,KA+Kf,YAGD,uyBAEC,qBACA,WAED,yeACC,mBAED,8cACC,mBAED,2xBACC,YAED,iRACC,aACA,cAGA,mBACA,mbACC,wBAIF,04BAEC,sBAGD,0RACC,UAlNiB,KAmNjB,gBACA,aACA,cAEA,4bACC,wBAQA,2hDACC,eAMD,ygDACC,kBAKJ,8EACC,UACA,6FACC,UAcD,+EACC,MA/PiB,KAgQjB,OAhQiB,KAyQlB,6CACC,WACA,YAOJ,kBACC,wBACA,kBACA,MACA,gDACA,aACA,sBACA,uCACA,gBACA,gBACA,gBACA,kBACA,eACA,UC5sCgB,MD6sChB,UC5sCgB,MD+sChB,yCACC,kBACA,YACA,eACA,iBACA,aACA,eACA,mBACA,cAKC,8RAEC,QACA,WACA,YACA,YACA,aACA,WACA,eACA,4mBAEC,WAED,wtBAEC,WACA,ghDAEC,UAIF,kVACC,UAKH,8IAGC,8CAEA,2RACC,aAIF,6JAEC,kBACA,YACA,WACA,WAQC,2XAEC,aAEA,2eACC,WAIH,wFACC,SACA,uBAEA,aACA,gGACC,SAGD,oHACC,aAKH,qEACC,aACA,SACA,wBACA,qBACA,YACA,WACA,SACA,UAGD,qEACC,kBACA,qBACA,YACA,WACA,iBACA,kBACA,sBACA,uBACA,WACA,kBACA,gBACA,0BACA,iBACA,iBACA,eACA,QACA,iBAGD,kJAEC,cACA,yBACA,mBACA,gBACA,uBACA,QACA,aACA,eAGD,yEACC,WACA,QACA,SACA,sDAGD,wEACC,QACA,mBACA,gBACA,uBACA,gBACA,WACA,cACA,iBAGD,qEACC,QACA,kBACA,kFACC,SAGA,sBAIH,2EACC,aAIF,8CACC,6DACA","file":"apps.css"} \ No newline at end of file
+{"version":3,"sourceRoot":"","sources":["apps.scss","variables.scss","functions.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA,GCEA;AAAA;AAAA;AAAA,GCFA;AAAA;AAAA;AAAA,GFSA,sCAEC,MACC,wCACA,yCAKF,KACC,WACA,YACA,kBAEA,6EAGD,KAEC,6EAEA,yCACA,sBACA,2BACA,eACA,WACA,iDAKD,eAKC,gBACA,gBACA,gBACA,mBACA,6BAGD,GACC,gBAGD,GACC,gBAGD,GACC,gBAGD,GACC,iBAGD,GACC,gBAID,GACC,kBACA,oCAGD,GACC,eAGD,MAEC,qBACA,aACA,uBAGD,GACC,YACA,mBACA,eAGD,IACC,iBACA,sBACA,kCACA,mCACA,qBACA,mBAMD,wBACC,sBAKD,0BAEC,gGACA,MCxBkB,MDyBlB,YACA,gBACA,kBACA,mDACA,8CACA,+EACA,gBACA,YACA,sBACA,qBACA,iBACA,aACA,sBACA,YACA,cAEA,kDACC,iBACA,0CACA,2EACA,mBACA,uBACA,2BACA,iBACA,oBACA,yBAQD,gGACC,cACA,6CACA,8GACC,qBACA,WACA,aACA,0BACA,iBACA,SAIF,8DACC,kBAED,8DACC,kBACA,YACA,WACA,kBACA,gBACA,sBACA,aACA,sBACA,6CACA,iBAEA,oFACC,oDAGD,oEACC,oBACA,eACA,QACA,cACA,SACA,kBACA,WACA,2CAGA,kFACC,QACA,4GACC,2BAIF,gIAEC,8DAED,0HAIC,0EAKA,wVAEC,+CAGF,oGACC,kDACA,yCAMA,gsBAEC,8CACA,wCAEA,g8BACC,qCAMH,sHACC,wBACA,SAMA,kNAEC,aAKF,0EACC,cACA,WACA,kBACA,gFACC,oBACA,eACA,mDACA,WACA,kBAIC,wXAEC,2CACA,+CAKD,gZAEC,2CACA,oDACA,ghBACC,qCAMH,kIACC,yDAGD,4IAEC,wBACA,0BAGD,sIAEC,wBAGA,6EAMJ,oJAEC,kBACA,sBAGC,4jBAGC,oCAIF,4JACC,0BACA,4BACA,cACA,8BACA,0CACA,yCACA,gBACA,oDACA,gBACA,sBACA,mBACA,uBACA,2CACA,6BACA,aACA,YAGA,4KACC,gBACA,kDACA,wOACC,gBACA,6DAGF,4NACC,kEACA,WACA,YAEA,wCAID,4QACC,qBAEA,4ZACC,gCAKH,wQACC,kBACA,cACA,YACA,WACA,YACA,YACA,kBACA,eACA,wCAEA,gRAEC,oCAKF,gQACC,kCAID,gSACC,UACA,YAED,4SACC,wBACA,YAIH,sEACC,aAMD,4YAEC,SACA,WACA,+BACA,4BACA,2BACA,w0BAEC,+BACA,UAUD,sGACC,UACA,kBACA,oCACA,qCACA,SACA,YAIA,qBAEA,kIACC,UACA,eACA,wDACA,gBAGF,gGACC,kBACA,qCACA,oCACA,SACA,UACA,gBEjZF,6CFmZE,qBACA,4BACA,2BACA,YACA,wBACA,gBACA,YACA,UACA,iCACA,6BACA,yBACA,YACA,kBACA,qCAMD,8GACC,mDAIA,wNACC,UAED,oMACC,sBAED,gTACC,oCAID,0GACC,4BACA,wBACA,oBAQH,gHACC,cACA,sHACC,wBACA,mBACA,yBAED,sHACC,+CACA,qCAED,8HACC,YACA,WACA,SACA,gBAIA,oSEpdF,uCFudE,obAEC,+BACA,UAGF,wLACC,gBACA,eACA,cACA,0CACA,eAEA,gNACC,UACA,kBACA,0NACC,gBACA,mBACA,8CACA,wCASJ,8GACC,mBACA,cACA,uBACA,qCACA,UACA,kBACA,8CACA,WACA,8OAEC,oBACA,WAED,0HACC,YACA,oBACA,YACA,4QAGC,UAGF,gJACC,WACA,YACA,wBACA,0BAED,wRAEC,WACA,YACA,cACA,4VACC,2BAED,gWACC,yBAED,oUACC,2CACA,6CACA,0BACA,4BAQH,oHACC,oBACA,mDACA,4BACA,wMACC,kBACA,mBACA,uBACA,gBACA,aACA,0CAED,8LACC,SACA,qCACA,oCACA,0CACA,oZAEC,UAQH,kOAEC,uBACA,2FAGA,kBACA,qBACA,8CACA,sBAMD,sFACC,gDACA,wCACA,oBAGD,sEACC,yBAGD,0OAEC,qBASA,0IACC,qCAGD,gHACC,qCAEA,wKACC,YASF,0IACC,sCAGD,gHACC,sCAEA,wKACC,WAOJ,SACC,sBACA,gBACA,oCACA,gCACA,UACA,aACA,kDACA,0BACA,2CACA,cAEA,kCACC,eAIF,2CACC,SACC,qDACA,mDAED,gBACC,qDAED,aACC,oDAcF,aACC,aACA,8CACA,iBACA,cACA,iBACA,YAGA,kCACC,gBAID,kCACC,aACA,kBACA,oBAGA,gBAGA,uDAEC,eACA,mFACC,aAKH,uCACC,oCASF,aACC,WACA,UC/qBmB,MDgrBnB,UC/qBmB,MDgrBnB,cACA,wBACA,gBACA,ICtrBe,KDurBf,mBACA,gBACA,kBACA,aACA,aACA,0BACA,wCACA,kDACA,cAEA,uBACC,aAOF,cAEC,gBAGC,oFACC,cAKH,sBACC,aACA,6CACA,cACA,0DAEA,iBACA,gBACA,sBAGA,uCACC,UAGD,iCACC,sBACA,sBACA,gCAOE,4NACC,qBACA,WACA,cAOL,qBACC,sBACA,+BACA,gBACA,oDACA,6CACA,cAEA,sCACC,aACA,mBACA,qCACA,WACA,UACA,SACA,+BACA,gBACA,SACA,oDACA,iBACA,mBACA,eACA,WAGA,6BAEA,6CACC,yCACA,8CACA,eAED,wFAEC,+CAGD,8CACC,2CACA,4BACA,WACA,oCACA,qCACA,MACA,qBACA,cAGD,oDACC,mEAOF,4DACC,qCAED,kEACC,qCAKD,4DACC,sCAED,kEACC,sCAIF,SACC,cACA,aACA,mBACA,gBACC,wBAIA,yDAEC,oBACA,sBAKH,aACC,kBACA,gBACA,yBACA,mBAGD,QACC,UACA,yCACA,sCACA,qCACA,oCACA,iCACA,oBACC,UAKF,YACC,aACA,mBAEA,uBACC,aACA,sBACA,YACA,kBACA,mBACA,gBACA,uBACA,eACA,gCACA,kBACA,YAEA,8BACC,aAID,mCACC,0BAED,kCACC,wBAGD,6BACC,qBACA,WACA,YACA,qBACA,sBACA,gBACA,sBACA,WACA,eAGD,yBACC,gCACA,kBACA,gBACA,uBAED,gCACC,iBAED,0FAGC,kBACA,6BACA,kDAMF,oBACC,oBAKF,6BACC,WAGD,6BACC,YASA,0JAGC,wCAIA,2LACC,YAKH,gDAGC,kBACA,8CACA,6BACA,yCACA,YACA,YACA,WACA,gBACA,mBACA,sDACA,aACA,mBAEA,kEACC,YAKA,qBAEA,2BACA,YACA,SACA,QACA,kBACA,oBACA,iDACA,iBAGD,oFACC,0BACA,qBACA,oBACA,sGACC,qBACA,0BAIF,8EACC,oBACA,oBACA,gGACC,sBAIF,+DACC,cAGD,+GACC,SAGD,yDAEC,wBACA,sBAED,yDACC,aACA,cAEA,8EACC,aAGD,oOAGC,eACA,YA/FkB,KAgGlB,SACA,yCACA,+BACA,aACA,uBACA,YACA,SACA,mBACA,gBACA,WACA,6BACA,mBAEA,whDAIC,YACA,aACA,+BACA,gBAnHe,KAqHhB,yzBAIC,yBAOC,gvGACC,oBAlIe,KAsIlB,+tBAEC,gCAED,ojBAEC,+CAED,4nBAEC,kDAED,mSACC,2CACA,oDAGD,mSACC,2BAED,iRACC,eACA,mBAED,sPACC,YACA,kBACA,cACA,mBAED,mSACC,SACA,wBAGD,gVACC,kCAID,wQACC,MA9Ke,KA+Kf,YAGD,uyBAEC,qBACA,WAED,yeACC,mBAED,8cACC,mBAED,2xBACC,YAED,iRACC,aACA,cAGA,mBACA,mbACC,wBAIF,04BAEC,sBAGD,0RACC,UAlNiB,KAmNjB,gBACA,aACA,cAEA,4bACC,wBAQA,2hDACC,eAMD,ygDACC,kBAKJ,8EACC,UACA,6FACC,UAcD,+EACC,MA/PiB,KAgQjB,OAhQiB,KAyQlB,6CACC,WACA,YAOJ,kBACC,wBACA,kBACA,MACA,gDACA,aACA,sBACA,uCACA,gBACA,gBACA,gBACA,kBACA,eACA,UC5sCgB,MD6sChB,UC5sCgB,MD+sChB,yCACC,kBACA,YACA,eACA,iBACA,aACA,eACA,mBACA,cAKC,8RAEC,QACA,WACA,YACA,YACA,aACA,WACA,eACA,4mBAEC,WAED,wtBAEC,WACA,ghDAEC,UAIF,kVACC,UAKH,8IAGC,8CAEA,2RACC,aAIF,6JAEC,kBACA,YACA,WACA,WAQC,2XAEC,aAEA,2eACC,WAIH,wFACC,SACA,uBAEA,aACA,gGACC,SAGD,oHACC,aAKH,qEACC,aACA,SACA,wBACA,qBACA,YACA,WACA,SACA,UAGD,qEACC,kBACA,qBACA,YACA,WACA,iBACA,kBACA,sBACA,uBACA,WACA,kBACA,gBACA,0BACA,iBACA,iBACA,eACA,QACA,iBAGD,kJAEC,cACA,yBACA,mBACA,gBACA,uBACA,QACA,aACA,eAGD,yEACC,WACA,QACA,SACA,sDAGD,wEACC,QACA,mBACA,gBACA,uBACA,gBACA,WACA,cACA,iBAGD,qEACC,QACA,kBACA,kFACC,SAGA,sBAIH,2EACC,aAIF,8CACC,6DACA","file":"apps.css"} \ No newline at end of file
diff --git a/core/css/apps.scss b/core/css/apps.scss
index 751d4820f0e..353eb43fe3f 100644
--- a/core/css/apps.scss
+++ b/core/css/apps.scss
@@ -355,7 +355,7 @@ kbd {
/* counter can also be inside the link */
> .app-navigation-entry-utils {
display: inline-block;
- /* Check Floating fix below */
+ /* Check Floating fix below */
.app-navigation-entry-utils-counter {
padding-inline-end: 0 !important;
}
@@ -658,7 +658,7 @@ kbd {
}
/* Floating and background-position fix */
-/* Cannot use inline-start and :dir to support Samsung Internet */
+/* Cannot use inline-start and :dir to support Samsung Internet */
body[dir='ltr'] {
.app-navigation-personal,
.app-navigation-administration {
@@ -698,7 +698,7 @@ body[dir='rtl'] {
box-sizing: border-box;
position: static;
margin: var(--body-container-margin);
- margin-top: 50px;
+ margin-top: var(--header-height);
padding: 0;
display: flex;
width: calc(100% - var(--body-container-margin) * 2);
@@ -1024,7 +1024,7 @@ body[dir='rtl'] #app-settings-header .settings-button {
}
}
-/* Cannot use inline-start to support Samsung Internet*/
+/* Cannot use inline-start to support Samsung Internet*/
body[dir='ltr'] .tabsContainer {
clear: left;
}
diff --git a/core/css/server.css b/core/css/server.css
index 25393937b00..c4cf5ceaf97 100644
--- a/core/css/server.css
+++ b/core/css/server.css
@@ -34,7 +34,7 @@
* SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
* SPDX-FileCopyrightText: 2016 ownCloud, Inc.
* SPDX-License-Identifier: AGPL-3.0-or-later
- */@media screen and (max-width: 1024px){:root{--body-container-margin: 0px !important;--body-container-radius: 0px !important}}html{width:100%;height:100%;position:absolute;background-color:var(--color-background-plain, var(--color-main-background))}body{background-color:var(--color-background-plain, var(--color-main-background));background-image:var(--image-background);background-size:cover;background-position:center;position:fixed;width:100%;height:calc(100vh - env(safe-area-inset-bottom))}h2,h3,h4,h5,h6{font-weight:600;line-height:1.5;margin-top:24px;margin-bottom:12px;color:var(--color-main-text)}h2{font-size:1.8em}h3{font-size:1.6em}h4{font-size:1.4em}h5{font-size:1.25em}h6{font-size:1.1em}em{font-style:normal;color:var(--color-text-maxcontrast)}dl{padding:12px 0}dt,dd{display:inline-block;padding:12px;padding-inline-start:0}dt{width:130px;white-space:nowrap;text-align:end}kbd{padding:4px 10px;border:1px solid #ccc;box-shadow:0 1px 0 rgba(0,0,0,.2);border-radius:var(--border-radius);display:inline-block;white-space:nowrap}#content[class*=app-] *{box-sizing:border-box}#app-navigation:not(.vue){--color-text-maxcontrast: var(--color-text-maxcontrast-background-blur, var(--color-main-text));width:300px;z-index:500;overflow-y:auto;overflow-x:hidden;background-color:var(--color-main-background-blur);backdrop-filter:var(--filter-background-blur);-webkit-backdrop-filter:var(--filter-background-blur);-webkit-user-select:none;position:sticky;height:100%;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column;flex-grow:0;flex-shrink:0}#app-navigation:not(.vue) .app-navigation-caption{font-weight:bold;line-height:var(--default-clickable-area);padding:10px var(--default-clickable-area) 0 var(--default-clickable-area);white-space:nowrap;text-overflow:ellipsis;box-shadow:none !important;user-select:none;pointer-events:none;margin-inline-start:10px}.app-navigation-personal .app-navigation-new,.app-navigation-administration .app-navigation-new{display:block;padding:calc(var(--default-grid-baseline)*2)}.app-navigation-personal .app-navigation-new button,.app-navigation-administration .app-navigation-new button{display:inline-block;width:100%;padding:10px;padding-inline-start:34px;text-align:start;margin:0}.app-navigation-personal li,.app-navigation-administration li{position:relative}.app-navigation-personal>ul,.app-navigation-administration>ul{position:relative;height:100%;width:100%;overflow-x:hidden;overflow-y:auto;box-sizing:border-box;display:flex;flex-direction:column;padding:calc(var(--default-grid-baseline)*2);padding-bottom:0}.app-navigation-personal>ul:last-child,.app-navigation-administration>ul:last-child{padding-bottom:calc(var(--default-grid-baseline)*2)}.app-navigation-personal>ul>li,.app-navigation-administration>ul>li{display:inline-flex;flex-wrap:wrap;order:1;flex-shrink:0;margin:0;margin-bottom:3px;width:100%;border-radius:var(--border-radius-element)}.app-navigation-personal>ul>li.pinned,.app-navigation-administration>ul>li.pinned{order:2}.app-navigation-personal>ul>li.pinned.first-pinned,.app-navigation-administration>ul>li.pinned.first-pinned{margin-top:auto !important}.app-navigation-personal>ul>li>.app-navigation-entry-deleted,.app-navigation-administration>ul>li>.app-navigation-entry-deleted{padding-inline-start:var(--default-clickable-area) !important}.app-navigation-personal>ul>li>.app-navigation-entry-edit,.app-navigation-administration>ul>li>.app-navigation-entry-edit{padding-inline-start:calc(var(--default-clickable-area) - 6px) !important}.app-navigation-personal>ul>li a:hover,.app-navigation-personal>ul>li a:hover>a,.app-navigation-personal>ul>li a:focus,.app-navigation-personal>ul>li a:focus>a,.app-navigation-administration>ul>li a:hover,.app-navigation-administration>ul>li a:hover>a,.app-navigation-administration>ul>li a:focus,.app-navigation-administration>ul>li a:focus>a{background-color:var(--color-background-hover)}.app-navigation-personal>ul>li a:focus-visible,.app-navigation-administration>ul>li a:focus-visible{box-shadow:0 0 0 4px var(--color-main-background);outline:2px solid var(--color-main-text)}.app-navigation-personal>ul>li.active,.app-navigation-personal>ul>li.active>a,.app-navigation-personal>ul>li a:active,.app-navigation-personal>ul>li a:active>a,.app-navigation-personal>ul>li a.selected,.app-navigation-personal>ul>li a.selected>a,.app-navigation-personal>ul>li a.active,.app-navigation-personal>ul>li a.active>a,.app-navigation-administration>ul>li.active,.app-navigation-administration>ul>li.active>a,.app-navigation-administration>ul>li a:active,.app-navigation-administration>ul>li a:active>a,.app-navigation-administration>ul>li a.selected,.app-navigation-administration>ul>li a.selected>a,.app-navigation-administration>ul>li a.active,.app-navigation-administration>ul>li a.active>a{background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.app-navigation-personal>ul>li.active:first-child>img,.app-navigation-personal>ul>li.active>a:first-child>img,.app-navigation-personal>ul>li a:active:first-child>img,.app-navigation-personal>ul>li a:active>a:first-child>img,.app-navigation-personal>ul>li a.selected:first-child>img,.app-navigation-personal>ul>li a.selected>a:first-child>img,.app-navigation-personal>ul>li a.active:first-child>img,.app-navigation-personal>ul>li a.active>a:first-child>img,.app-navigation-administration>ul>li.active:first-child>img,.app-navigation-administration>ul>li.active>a:first-child>img,.app-navigation-administration>ul>li a:active:first-child>img,.app-navigation-administration>ul>li a:active>a:first-child>img,.app-navigation-administration>ul>li a.selected:first-child>img,.app-navigation-administration>ul>li a.selected>a:first-child>img,.app-navigation-administration>ul>li a.active:first-child>img,.app-navigation-administration>ul>li a.active>a:first-child>img{filter:var(--primary-invert-if-dark)}.app-navigation-personal>ul>li.icon-loading-small:after,.app-navigation-administration>ul>li.icon-loading-small:after{inset-inline-start:22px;top:22px}.app-navigation-personal>ul>li.deleted>ul,.app-navigation-personal>ul>li.collapsible:not(.open)>ul,.app-navigation-administration>ul>li.deleted>ul,.app-navigation-administration>ul>li.collapsible:not(.open)>ul{display:none}.app-navigation-personal>ul>li>ul,.app-navigation-administration>ul>li>ul{flex:0 1 auto;width:100%;position:relative}.app-navigation-personal>ul>li>ul>li,.app-navigation-administration>ul>li>ul>li{display:inline-flex;flex-wrap:wrap;padding-inline-start:var(--default-clickable-area);width:100%;margin-bottom:3px}.app-navigation-personal>ul>li>ul>li:hover,.app-navigation-personal>ul>li>ul>li:hover>a,.app-navigation-personal>ul>li>ul>li:focus,.app-navigation-personal>ul>li>ul>li:focus>a,.app-navigation-administration>ul>li>ul>li:hover,.app-navigation-administration>ul>li>ul>li:hover>a,.app-navigation-administration>ul>li>ul>li:focus,.app-navigation-administration>ul>li>ul>li:focus>a{border-radius:var(--border-radius-element);background-color:var(--color-background-hover)}.app-navigation-personal>ul>li>ul>li.active,.app-navigation-personal>ul>li>ul>li.active>a,.app-navigation-personal>ul>li>ul>li a.selected,.app-navigation-personal>ul>li>ul>li a.selected>a,.app-navigation-administration>ul>li>ul>li.active,.app-navigation-administration>ul>li>ul>li.active>a,.app-navigation-administration>ul>li>ul>li a.selected,.app-navigation-administration>ul>li>ul>li a.selected>a{border-radius:var(--border-radius-element);background-color:var(--color-primary-element-light)}.app-navigation-personal>ul>li>ul>li.active:first-child>img,.app-navigation-personal>ul>li>ul>li.active>a:first-child>img,.app-navigation-personal>ul>li>ul>li a.selected:first-child>img,.app-navigation-personal>ul>li>ul>li a.selected>a:first-child>img,.app-navigation-administration>ul>li>ul>li.active:first-child>img,.app-navigation-administration>ul>li>ul>li.active>a:first-child>img,.app-navigation-administration>ul>li>ul>li a.selected:first-child>img,.app-navigation-administration>ul>li>ul>li a.selected>a:first-child>img{filter:var(--primary-invert-if-dark)}.app-navigation-personal>ul>li>ul>li.icon-loading-small:after,.app-navigation-administration>ul>li>ul>li.icon-loading-small:after{inset-inline-start:calc(var(--default-clickable-area)/2)}.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-deleted,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-deleted{margin-inline-start:4px;padding-inline-start:84px}.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-edit,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-edit{margin-inline-start:4px;padding-inline-start:calc(2*var(--default-clickable-area) - 10px) !important}.app-navigation-personal>ul>li,.app-navigation-personal>ul>li>ul>li,.app-navigation-administration>ul>li,.app-navigation-administration>ul>li>ul>li{position:relative;box-sizing:border-box}.app-navigation-personal>ul>li.icon-loading-small>a,.app-navigation-personal>ul>li.icon-loading-small>.app-navigation-entry-bullet,.app-navigation-personal>ul>li>ul>li.icon-loading-small>a,.app-navigation-personal>ul>li>ul>li.icon-loading-small>.app-navigation-entry-bullet,.app-navigation-administration>ul>li.icon-loading-small>a,.app-navigation-administration>ul>li.icon-loading-small>.app-navigation-entry-bullet,.app-navigation-administration>ul>li>ul>li.icon-loading-small>a,.app-navigation-administration>ul>li>ul>li.icon-loading-small>.app-navigation-entry-bullet{background:rgba(0,0,0,0) !important}.app-navigation-personal>ul>li>a,.app-navigation-personal>ul>li>ul>li>a,.app-navigation-administration>ul>li>a,.app-navigation-administration>ul>li>ul>li>a{background-size:16px 16px;background-repeat:no-repeat;display:block;justify-content:space-between;line-height:var(--default-clickable-area);min-height:var(--default-clickable-area);padding-block:0;padding-inline:calc(2*var(--default-grid-baseline));overflow:hidden;box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;border-radius:var(--border-radius-element);color:var(--color-main-text);flex:1 1 0px;z-index:100}.app-navigation-personal>ul>li>a.svg,.app-navigation-personal>ul>li>ul>li>a.svg,.app-navigation-administration>ul>li>a.svg,.app-navigation-administration>ul>li>ul>li>a.svg{padding-block:0;padding-inline:var(--default-clickable-area) 12px}.app-navigation-personal>ul>li>a.svg :focus-visible,.app-navigation-personal>ul>li>ul>li>a.svg :focus-visible,.app-navigation-administration>ul>li>a.svg :focus-visible,.app-navigation-administration>ul>li>ul>li>a.svg :focus-visible{padding-block:0;padding-inline:calc(var(--default-clickable-area) - 2px) 8px}.app-navigation-personal>ul>li>a:first-child img,.app-navigation-personal>ul>li>ul>li>a:first-child img,.app-navigation-administration>ul>li>a:first-child img,.app-navigation-administration>ul>li>ul>li>a:first-child img{margin-inline-end:calc(2*var(--default-grid-baseline)) !important;width:16px;height:16px;filter:var(--background-invert-if-dark)}.app-navigation-personal>ul>li>a>.app-navigation-entry-utils,.app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils,.app-navigation-administration>ul>li>a>.app-navigation-entry-utils,.app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils{display:inline-block}.app-navigation-personal>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-administration>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter{padding-inline-end:0 !important}.app-navigation-personal>ul>li>.app-navigation-entry-bullet,.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-bullet,.app-navigation-administration>ul>li>.app-navigation-entry-bullet,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-bullet{position:absolute;display:block;margin:16px;width:12px;height:12px;border:none;border-radius:50%;cursor:pointer;transition:background 100ms ease-in-out}.app-navigation-personal>ul>li>.app-navigation-entry-bullet+a,.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-bullet+a,.app-navigation-administration>ul>li>.app-navigation-entry-bullet+a,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-bullet+a{background:rgba(0,0,0,0) !important}.app-navigation-personal>ul>li>.app-navigation-entry-menu,.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-menu,.app-navigation-administration>ul>li>.app-navigation-entry-menu,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-menu{top:var(--default-clickable-area)}.app-navigation-personal>ul>li.editing .app-navigation-entry-edit,.app-navigation-personal>ul>li>ul>li.editing .app-navigation-entry-edit,.app-navigation-administration>ul>li.editing .app-navigation-entry-edit,.app-navigation-administration>ul>li>ul>li.editing .app-navigation-entry-edit{opacity:1;z-index:250}.app-navigation-personal>ul>li.deleted .app-navigation-entry-deleted,.app-navigation-personal>ul>li>ul>li.deleted .app-navigation-entry-deleted,.app-navigation-administration>ul>li.deleted .app-navigation-entry-deleted,.app-navigation-administration>ul>li>ul>li.deleted .app-navigation-entry-deleted{transform:translateX(0);z-index:250}.app-navigation-personal.hidden,.app-navigation-administration.hidden{display:none}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button{border:0;opacity:.5;background-color:rgba(0,0,0,0);background-repeat:no-repeat;background-position:center}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:hover,.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:focus,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:hover,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:focus,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus{background-color:rgba(0,0,0,0);opacity:1}.app-navigation-personal .collapsible .collapse,.app-navigation-administration .collapsible .collapse{opacity:0;position:absolute;width:var(--default-clickable-area);height:var(--default-clickable-area);margin:0;z-index:110;inset-inline-start:0}.app-navigation-personal .collapsible .collapse:focus-visible,.app-navigation-administration .collapsible .collapse:focus-visible{opacity:1;border-width:0;box-shadow:inset 0 0 0 2px var(--color-primary-element);background:none}.app-navigation-personal .collapsible:before,.app-navigation-administration .collapsible:before{position:absolute;height:var(--default-clickable-area);width:var(--default-clickable-area);margin:0;padding:0;background:none;background-image:var(--icon-triangle-s-dark);background-size:16px;background-repeat:no-repeat;background-position:center;border:none;outline:none !important;box-shadow:none;content:" ";opacity:0;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);z-index:105;border-radius:50%;transition:opacity 100ms ease-in-out}.app-navigation-personal .collapsible>a:first-child,.app-navigation-administration .collapsible>a:first-child{padding-inline-start:var(--default-clickable-area)}.app-navigation-personal .collapsible:hover:before,.app-navigation-personal .collapsible:focus:before,.app-navigation-administration .collapsible:hover:before,.app-navigation-administration .collapsible:focus:before{opacity:1}.app-navigation-personal .collapsible:hover>a,.app-navigation-personal .collapsible:focus>a,.app-navigation-administration .collapsible:hover>a,.app-navigation-administration .collapsible:focus>a{background-image:none}.app-navigation-personal .collapsible:hover>.app-navigation-entry-bullet,.app-navigation-personal .collapsible:focus>.app-navigation-entry-bullet,.app-navigation-administration .collapsible:hover>.app-navigation-entry-bullet,.app-navigation-administration .collapsible:focus>.app-navigation-entry-bullet{background:rgba(0,0,0,0) !important}.app-navigation-personal .collapsible.open:before,.app-navigation-administration .collapsible.open:before{-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0)}.app-navigation-personal .app-navigation-entry-utils,.app-navigation-administration .app-navigation-entry-utils{flex:0 1 auto}.app-navigation-personal .app-navigation-entry-utils ul,.app-navigation-administration .app-navigation-entry-utils ul{display:flex !important;align-items:center;justify-content:flex-end}.app-navigation-personal .app-navigation-entry-utils li,.app-navigation-administration .app-navigation-entry-utils li{width:var(--default-clickable-area) !important;height:var(--default-clickable-area)}.app-navigation-personal .app-navigation-entry-utils button,.app-navigation-administration .app-navigation-entry-utils button{height:100%;width:100%;margin:0;box-shadow:none}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button button:not([class^=icon-]):not([class*=" icon-"]),.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button button:not([class^=icon-]):not([class*=" icon-"]){background-image:var(--icon-more-dark)}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:hover button,.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:focus button,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:hover button,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:focus button{background-color:rgba(0,0,0,0);opacity:1}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-counter{overflow:hidden;text-align:end;font-size:9pt;line-height:var(--default-clickable-area);padding:0 12px}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted{padding:0;text-align:center}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted span,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted span{padding:2px 5px;border-radius:10px;background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.app-navigation-personal .app-navigation-entry-edit,.app-navigation-administration .app-navigation-entry-edit{padding-inline:5px;display:block;width:calc(100% - 1px);transition:opacity 250ms ease-in-out;opacity:0;position:absolute;background-color:var(--color-main-background);z-index:-1}.app-navigation-personal .app-navigation-entry-edit form,.app-navigation-personal .app-navigation-entry-edit div,.app-navigation-administration .app-navigation-entry-edit form,.app-navigation-administration .app-navigation-entry-edit div{display:inline-flex;width:100%}.app-navigation-personal .app-navigation-entry-edit input,.app-navigation-administration .app-navigation-entry-edit input{padding:5px;margin-inline-end:0;height:38px}.app-navigation-personal .app-navigation-entry-edit input:hover,.app-navigation-personal .app-navigation-entry-edit input:focus,.app-navigation-administration .app-navigation-entry-edit input:hover,.app-navigation-administration .app-navigation-entry-edit input:focus{z-index:1}.app-navigation-personal .app-navigation-entry-edit input[type=text],.app-navigation-administration .app-navigation-entry-edit input[type=text]{width:100%;min-width:0;border-end-end-radius:0;border-start-end-radius:0}.app-navigation-personal .app-navigation-entry-edit button,.app-navigation-personal .app-navigation-entry-edit input:not([type=text]),.app-navigation-administration .app-navigation-entry-edit button,.app-navigation-administration .app-navigation-entry-edit input:not([type=text]){width:36px;height:38px;flex:0 0 36px}.app-navigation-personal .app-navigation-entry-edit button:not(:last-child),.app-navigation-personal .app-navigation-entry-edit input:not([type=text]):not(:last-child),.app-navigation-administration .app-navigation-entry-edit button:not(:last-child),.app-navigation-administration .app-navigation-entry-edit input:not([type=text]):not(:last-child){border-radius:0 !important}.app-navigation-personal .app-navigation-entry-edit button:not(:first-child),.app-navigation-personal .app-navigation-entry-edit input:not([type=text]):not(:first-child),.app-navigation-administration .app-navigation-entry-edit button:not(:first-child),.app-navigation-administration .app-navigation-entry-edit input:not([type=text]):not(:first-child){margin-inline-start:-1px}.app-navigation-personal .app-navigation-entry-edit button:last-child,.app-navigation-personal .app-navigation-entry-edit input:not([type=text]):last-child,.app-navigation-administration .app-navigation-entry-edit button:last-child,.app-navigation-administration .app-navigation-entry-edit input:not([type=text]):last-child{border-end-end-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-start-radius:0;border-start-start-radius:0}.app-navigation-personal .app-navigation-entry-deleted,.app-navigation-administration .app-navigation-entry-deleted{display:inline-flex;padding-inline-start:var(--default-clickable-area);transform:translateX(300px)}.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-description,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-description{position:relative;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;flex:1 1 0px;line-height:var(--default-clickable-area)}.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button{margin:0;height:var(--default-clickable-area);width:var(--default-clickable-area);line-height:var(--default-clickable-area)}.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus{opacity:1}.app-navigation-personal .app-navigation-entry-edit,.app-navigation-personal .app-navigation-entry-deleted,.app-navigation-administration .app-navigation-entry-edit,.app-navigation-administration .app-navigation-entry-deleted{width:calc(100% - 1px);transition:transform 250ms ease-in-out,opacity 250ms ease-in-out,z-index 250ms ease-in-out;position:absolute;inset-inline-start:0;background-color:var(--color-main-background);box-sizing:border-box}.app-navigation-personal .drag-and-drop,.app-navigation-administration .drag-and-drop{-webkit-transition:padding-bottom 500ms ease 0s;transition:padding-bottom 500ms ease 0s;padding-bottom:40px}.app-navigation-personal .error,.app-navigation-administration .error{color:var(--color-error)}.app-navigation-personal .app-navigation-entry-utils ul,.app-navigation-personal .app-navigation-entry-menu ul,.app-navigation-administration .app-navigation-entry-utils ul,.app-navigation-administration .app-navigation-entry-menu ul{list-style-type:none}body[dir=ltr] .app-navigation-personal .app-navigation-new button,body[dir=ltr] .app-navigation-administration .app-navigation-new button{background-position:left 10px center}body[dir=ltr] .app-navigation-personal>ul>li>ul>li>a,body[dir=ltr] .app-navigation-administration>ul>li>ul>li>a{background-position:left 14px center}body[dir=ltr] .app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils,body[dir=ltr] .app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils{float:right}body[dir=rtl] .app-navigation-personal .app-navigation-new button,body[dir=rtl] .app-navigation-administration .app-navigation-new button{background-position:right 10px center}body[dir=rtl] .app-navigation-personal>ul>li>ul>li>a,body[dir=rtl] .app-navigation-administration>ul>li>ul>li>a{background-position:right 14px center}body[dir=rtl] .app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils,body[dir=rtl] .app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils{float:left}#content{box-sizing:border-box;position:static;margin:var(--body-container-margin);margin-top:50px;padding:0;display:flex;width:calc(100% - var(--body-container-margin)*2);height:var(--body-height);border-radius:var(--body-container-radius);overflow:clip}#content:not(.with-sidebar--full){position:fixed}@media only screen and (max-width: 1024px){#content{border-start-start-radius:var(--border-radius-large);border-start-end-radius:var(--border-radius-large)}#app-navigation{border-start-start-radius:var(--border-radius-large)}#app-sidebar{border-start-end-radius:var(--border-radius-large)}}#app-content{z-index:1000;background-color:var(--color-main-background);flex-basis:100vw;overflow:auto;position:initial;height:100%}#app-content>.section:first-child{border-top:none}#app-content #app-content-wrapper{display:flex;position:relative;align-items:stretch;min-height:100%}#app-content #app-content-wrapper .app-content-details{flex:1 1 524px}#app-content #app-content-wrapper .app-content-details #app-navigation-toggle-back{display:none}#app-content::-webkit-scrollbar-button{height:var(--body-container-radius)}#app-sidebar{width:27vw;min-width:300px;max-width:500px;display:block;position:-webkit-sticky;position:sticky;top:50px;inset-inline-end:0;overflow-y:auto;overflow-x:hidden;z-index:1500;opacity:.7px;height:calc(100vh - 50px);background:var(--color-main-background);border-inline-start:1px solid var(--color-border);flex-shrink:0}#app-sidebar.disappear{display:none}#app-settings{margin-top:auto}#app-settings.open #app-settings-content,#app-settings.opened #app-settings-content{display:block}#app-settings-content{display:none;padding:calc(var(--default-grid-baseline)*2);padding-top:0;padding-inline-start:calc(var(--default-grid-baseline)*4);max-height:300px;overflow-y:auto;box-sizing:border-box}#app-settings-content input[type=text]{width:93%}#app-settings-content .info-text{padding-block:5px 7px;padding-inline:22px 0;color:var(--color-text-lighter)}#app-settings-content input[type=checkbox].radio+label,#app-settings-content input[type=checkbox].checkbox+label,#app-settings-content input[type=radio].radio+label,#app-settings-content input[type=radio].checkbox+label{display:inline-block;width:100%;padding:5px 0}#app-settings-header{box-sizing:border-box;background-color:rgba(0,0,0,0);overflow:hidden;border-radius:calc(var(--default-clickable-area)/2);padding:calc(var(--default-grid-baseline)*2);padding-top:0}#app-settings-header .settings-button{display:flex;align-items:center;height:var(--default-clickable-area);width:100%;padding:0;margin:0;background-color:rgba(0,0,0,0);box-shadow:none;border:0;border-radius:calc(var(--default-clickable-area)/2);text-align:start;font-weight:normal;font-size:100%;opacity:.8;color:var(--color-main-text)}#app-settings-header .settings-button.opened{border-top:solid 1px var(--color-border);background-color:var(--color-main-background);margin-top:8px}#app-settings-header .settings-button:hover,#app-settings-header .settings-button:focus{background-color:var(--color-background-hover)}#app-settings-header .settings-button::before{background-image:var(--icon-settings-dark);background-repeat:no-repeat;content:"";width:var(--default-clickable-area);height:var(--default-clickable-area);top:0;inset-inline-start:0;display:block}#app-settings-header .settings-button:focus-visible{box-shadow:0 0 0 2px inset var(--color-primary-element) !important}body[dir=ltr] #app-settings-header .settings-button::before{background-position:left 14px center}body[dir=ltr] #app-settings-header .settings-button:focus-visible{background-position:left 12px center}body[dir=rtl] #app-settings-header .settings-button::before{background-position:right 14px center}body[dir=rtl] #app-settings-header .settings-button:focus-visible{background-position:right 12px center}.section{display:block;padding:30px;margin-bottom:24px}.section.hidden{display:none !important}.section input[type=checkbox],.section input[type=radio]{vertical-align:-2px;margin-inline-end:4px}.sub-section{position:relative;margin-top:10px;margin-inline-start:27px;margin-bottom:10px}.appear{opacity:1;-webkit-transition:opacity 500ms ease 0s;-moz-transition:opacity 500ms ease 0s;-ms-transition:opacity 500ms ease 0s;-o-transition:opacity 500ms ease 0s;transition:opacity 500ms ease 0s}.appear.transparent{opacity:0}.tabHeaders{display:flex;margin-bottom:16px}.tabHeaders .tabHeader{display:flex;flex-direction:column;flex-grow:1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;color:var(--color-text-lighter);margin-bottom:1px;padding:5px}.tabHeaders .tabHeader.hidden{display:none}.tabHeaders .tabHeader:first-child{padding-inline-start:15px}.tabHeaders .tabHeader:last-child{padding-inline-end:15px}.tabHeaders .tabHeader .icon{display:inline-block;width:100%;height:16px;background-size:16px;vertical-align:middle;margin-top:-2px;margin-inline-end:3px;opacity:.7;cursor:pointer}.tabHeaders .tabHeader a{color:var(--color-text-lighter);margin-bottom:1px;overflow:hidden;text-overflow:ellipsis}.tabHeaders .tabHeader.selected{font-weight:bold}.tabHeaders .tabHeader.selected,.tabHeaders .tabHeader:hover,.tabHeaders .tabHeader:focus{margin-bottom:0px;color:var(--color-main-text);border-bottom:1px solid var(--color-text-lighter)}.tabsContainer .tab{padding:0 15px 15px}body[dir=ltr] .tabsContainer{clear:left}body[dir=rtl] .tabsContainer{clear:right}.v-popper__inner div.open>ul>li>a>span.action-link__icon,.v-popper__inner div.open>ul>li>a>span.action-router__icon,.v-popper__inner div.open>ul>li>a>img{filter:var(--background-invert-if-dark)}.v-popper__inner div.open>ul>li>a>span.action-link__icon[src^=data],.v-popper__inner div.open>ul>li>a>span.action-router__icon[src^=data],.v-popper__inner div.open>ul>li>a>img[src^=data]{filter:none}.bubble,.app-navigation-entry-menu,.popovermenu{position:absolute;background-color:var(--color-main-background);color:var(--color-main-text);border-radius:var(--border-radius-large);padding:3px;z-index:110;margin:5px;margin-top:-5px;inset-inline-end:0;filter:drop-shadow(0 1px 3px var(--color-box-shadow));display:none;will-change:filter}.bubble:after,.app-navigation-entry-menu:after,.popovermenu:after{bottom:100%;inset-inline-end:7px;border:solid rgba(0,0,0,0);content:" ";height:0;width:0;position:absolute;pointer-events:none;border-bottom-color:var(--color-main-background);border-width:9px}.bubble.menu-center,.app-navigation-entry-menu.menu-center,.popovermenu.menu-center{transform:translateX(50%);inset-inline-end:50%;margin-inline-end:0}.bubble.menu-center:after,.app-navigation-entry-menu.menu-center:after,.popovermenu.menu-center:after{inset-inline-end:50%;transform:translateX(50%)}.bubble.menu-left,.app-navigation-entry-menu.menu-left,.popovermenu.menu-left{inset-inline:0 auto;margin-inline-end:0}.bubble.menu-left:after,.app-navigation-entry-menu.menu-left:after,.popovermenu.menu-left:after{inset-inline:6px auto}.bubble.open,.app-navigation-entry-menu.open,.popovermenu.open{display:block}.bubble.contactsmenu-popover,.app-navigation-entry-menu.contactsmenu-popover,.popovermenu.contactsmenu-popover{margin:0}.bubble ul,.app-navigation-entry-menu ul,.popovermenu ul{display:flex !important;flex-direction:column}.bubble li,.app-navigation-entry-menu li,.popovermenu li{display:flex;flex:0 0 auto}.bubble li.hidden,.app-navigation-entry-menu li.hidden,.popovermenu li.hidden{display:none}.bubble li>button,.bubble li>a,.bubble li>.menuitem,.app-navigation-entry-menu li>button,.app-navigation-entry-menu li>a,.app-navigation-entry-menu li>.menuitem,.popovermenu li>button,.popovermenu li>a,.popovermenu li>.menuitem{cursor:pointer;line-height:34px;border:0;border-radius:var(--border-radius-large);background-color:rgba(0,0,0,0);display:flex;align-items:flex-start;height:auto;margin:0;font-weight:normal;box-shadow:none;width:100%;color:var(--color-main-text);white-space:nowrap}.bubble li>button span[class^=icon-],.bubble li>button span[class*=" icon-"],.bubble li>button[class^=icon-],.bubble li>button[class*=" icon-"],.bubble li>a span[class^=icon-],.bubble li>a span[class*=" icon-"],.bubble li>a[class^=icon-],.bubble li>a[class*=" icon-"],.bubble li>.menuitem span[class^=icon-],.bubble li>.menuitem span[class*=" icon-"],.bubble li>.menuitem[class^=icon-],.bubble li>.menuitem[class*=" icon-"],.app-navigation-entry-menu li>button span[class^=icon-],.app-navigation-entry-menu li>button span[class*=" icon-"],.app-navigation-entry-menu li>button[class^=icon-],.app-navigation-entry-menu li>button[class*=" icon-"],.app-navigation-entry-menu li>a span[class^=icon-],.app-navigation-entry-menu li>a span[class*=" icon-"],.app-navigation-entry-menu li>a[class^=icon-],.app-navigation-entry-menu li>a[class*=" icon-"],.app-navigation-entry-menu li>.menuitem span[class^=icon-],.app-navigation-entry-menu li>.menuitem span[class*=" icon-"],.app-navigation-entry-menu li>.menuitem[class^=icon-],.app-navigation-entry-menu li>.menuitem[class*=" icon-"],.popovermenu li>button span[class^=icon-],.popovermenu li>button span[class*=" icon-"],.popovermenu li>button[class^=icon-],.popovermenu li>button[class*=" icon-"],.popovermenu li>a span[class^=icon-],.popovermenu li>a span[class*=" icon-"],.popovermenu li>a[class^=icon-],.popovermenu li>a[class*=" icon-"],.popovermenu li>.menuitem span[class^=icon-],.popovermenu li>.menuitem span[class*=" icon-"],.popovermenu li>.menuitem[class^=icon-],.popovermenu li>.menuitem[class*=" icon-"]{min-width:0;min-height:0;background-position:9px center;background-size:16px}.bubble li>button span[class^=icon-],.bubble li>button span[class*=" icon-"],.bubble li>a span[class^=icon-],.bubble li>a span[class*=" icon-"],.bubble li>.menuitem span[class^=icon-],.bubble li>.menuitem span[class*=" icon-"],.app-navigation-entry-menu li>button span[class^=icon-],.app-navigation-entry-menu li>button span[class*=" icon-"],.app-navigation-entry-menu li>a span[class^=icon-],.app-navigation-entry-menu li>a span[class*=" icon-"],.app-navigation-entry-menu li>.menuitem span[class^=icon-],.app-navigation-entry-menu li>.menuitem span[class*=" icon-"],.popovermenu li>button span[class^=icon-],.popovermenu li>button span[class*=" icon-"],.popovermenu li>a span[class^=icon-],.popovermenu li>a span[class*=" icon-"],.popovermenu li>.menuitem span[class^=icon-],.popovermenu li>.menuitem span[class*=" icon-"]{padding:17px 0 17px 34px}.bubble li>button:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>button:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>button:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>a:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>a:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>a:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>.menuitem:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>.menuitem:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>.menuitem:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>button:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>button:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>button:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>a:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>a:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>a:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>.menuitem:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>.menuitem:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>.menuitem:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>button:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>button:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>button:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>a:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>a:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>a:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>.menuitem:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>.menuitem:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>.menuitem:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child{margin-inline-start:34px}.bubble li>button[class^=icon-],.bubble li>button[class*=" icon-"],.bubble li>a[class^=icon-],.bubble li>a[class*=" icon-"],.bubble li>.menuitem[class^=icon-],.bubble li>.menuitem[class*=" icon-"],.app-navigation-entry-menu li>button[class^=icon-],.app-navigation-entry-menu li>button[class*=" icon-"],.app-navigation-entry-menu li>a[class^=icon-],.app-navigation-entry-menu li>a[class*=" icon-"],.app-navigation-entry-menu li>.menuitem[class^=icon-],.app-navigation-entry-menu li>.menuitem[class*=" icon-"],.popovermenu li>button[class^=icon-],.popovermenu li>button[class*=" icon-"],.popovermenu li>a[class^=icon-],.popovermenu li>a[class*=" icon-"],.popovermenu li>.menuitem[class^=icon-],.popovermenu li>.menuitem[class*=" icon-"]{padding:0 9px 0 34px !important}.bubble li>button:hover,.bubble li>button:focus,.bubble li>a:hover,.bubble li>a:focus,.bubble li>.menuitem:hover,.bubble li>.menuitem:focus,.app-navigation-entry-menu li>button:hover,.app-navigation-entry-menu li>button:focus,.app-navigation-entry-menu li>a:hover,.app-navigation-entry-menu li>a:focus,.app-navigation-entry-menu li>.menuitem:hover,.app-navigation-entry-menu li>.menuitem:focus,.popovermenu li>button:hover,.popovermenu li>button:focus,.popovermenu li>a:hover,.popovermenu li>a:focus,.popovermenu li>.menuitem:hover,.popovermenu li>.menuitem:focus{background-color:var(--color-background-hover)}.bubble li>button:focus,.bubble li>button:focus-visible,.bubble li>a:focus,.bubble li>a:focus-visible,.bubble li>.menuitem:focus,.bubble li>.menuitem:focus-visible,.app-navigation-entry-menu li>button:focus,.app-navigation-entry-menu li>button:focus-visible,.app-navigation-entry-menu li>a:focus,.app-navigation-entry-menu li>a:focus-visible,.app-navigation-entry-menu li>.menuitem:focus,.app-navigation-entry-menu li>.menuitem:focus-visible,.popovermenu li>button:focus,.popovermenu li>button:focus-visible,.popovermenu li>a:focus,.popovermenu li>a:focus-visible,.popovermenu li>.menuitem:focus,.popovermenu li>.menuitem:focus-visible{box-shadow:0 0 0 2px var(--color-primary-element)}.bubble li>button.active,.bubble li>a.active,.bubble li>.menuitem.active,.app-navigation-entry-menu li>button.active,.app-navigation-entry-menu li>a.active,.app-navigation-entry-menu li>.menuitem.active,.popovermenu li>button.active,.popovermenu li>a.active,.popovermenu li>.menuitem.active{border-radius:var(--border-radius-element);background-color:var(--color-primary-element-light)}.bubble li>button.action,.bubble li>a.action,.bubble li>.menuitem.action,.app-navigation-entry-menu li>button.action,.app-navigation-entry-menu li>a.action,.app-navigation-entry-menu li>.menuitem.action,.popovermenu li>button.action,.popovermenu li>a.action,.popovermenu li>.menuitem.action{padding:inherit !important}.bubble li>button>span,.bubble li>a>span,.bubble li>.menuitem>span,.app-navigation-entry-menu li>button>span,.app-navigation-entry-menu li>a>span,.app-navigation-entry-menu li>.menuitem>span,.popovermenu li>button>span,.popovermenu li>a>span,.popovermenu li>.menuitem>span{cursor:pointer;white-space:nowrap}.bubble li>button>p,.bubble li>a>p,.bubble li>.menuitem>p,.app-navigation-entry-menu li>button>p,.app-navigation-entry-menu li>a>p,.app-navigation-entry-menu li>.menuitem>p,.popovermenu li>button>p,.popovermenu li>a>p,.popovermenu li>.menuitem>p{width:150px;line-height:1.6em;padding:8px 0;white-space:normal}.bubble li>button>select,.bubble li>a>select,.bubble li>.menuitem>select,.app-navigation-entry-menu li>button>select,.app-navigation-entry-menu li>a>select,.app-navigation-entry-menu li>.menuitem>select,.popovermenu li>button>select,.popovermenu li>a>select,.popovermenu li>.menuitem>select{margin:0;margin-inline-start:6px}.bubble li>button:not(:empty),.bubble li>a:not(:empty),.bubble li>.menuitem:not(:empty),.app-navigation-entry-menu li>button:not(:empty),.app-navigation-entry-menu li>a:not(:empty),.app-navigation-entry-menu li>.menuitem:not(:empty),.popovermenu li>button:not(:empty),.popovermenu li>a:not(:empty),.popovermenu li>.menuitem:not(:empty){padding-inline-end:9px !important}.bubble li>button>img,.bubble li>a>img,.bubble li>.menuitem>img,.app-navigation-entry-menu li>button>img,.app-navigation-entry-menu li>a>img,.app-navigation-entry-menu li>.menuitem>img,.popovermenu li>button>img,.popovermenu li>a>img,.popovermenu li>.menuitem>img{width:16px;padding:9px}.bubble li>button>input.radio+label,.bubble li>button>input.checkbox+label,.bubble li>a>input.radio+label,.bubble li>a>input.checkbox+label,.bubble li>.menuitem>input.radio+label,.bubble li>.menuitem>input.checkbox+label,.app-navigation-entry-menu li>button>input.radio+label,.app-navigation-entry-menu li>button>input.checkbox+label,.app-navigation-entry-menu li>a>input.radio+label,.app-navigation-entry-menu li>a>input.checkbox+label,.app-navigation-entry-menu li>.menuitem>input.radio+label,.app-navigation-entry-menu li>.menuitem>input.checkbox+label,.popovermenu li>button>input.radio+label,.popovermenu li>button>input.checkbox+label,.popovermenu li>a>input.radio+label,.popovermenu li>a>input.checkbox+label,.popovermenu li>.menuitem>input.radio+label,.popovermenu li>.menuitem>input.checkbox+label{padding:0 !important;width:100%}.bubble li>button>input.checkbox+label::before,.bubble li>a>input.checkbox+label::before,.bubble li>.menuitem>input.checkbox+label::before,.app-navigation-entry-menu li>button>input.checkbox+label::before,.app-navigation-entry-menu li>a>input.checkbox+label::before,.app-navigation-entry-menu li>.menuitem>input.checkbox+label::before,.popovermenu li>button>input.checkbox+label::before,.popovermenu li>a>input.checkbox+label::before,.popovermenu li>.menuitem>input.checkbox+label::before{margin:-2px 13px 0}.bubble li>button>input.radio+label::before,.bubble li>a>input.radio+label::before,.bubble li>.menuitem>input.radio+label::before,.app-navigation-entry-menu li>button>input.radio+label::before,.app-navigation-entry-menu li>a>input.radio+label::before,.app-navigation-entry-menu li>.menuitem>input.radio+label::before,.popovermenu li>button>input.radio+label::before,.popovermenu li>a>input.radio+label::before,.popovermenu li>.menuitem>input.radio+label::before{margin:-2px 12px 0}.bubble li>button>input:not([type=radio]):not([type=checkbox]):not([type=image]),.bubble li>a>input:not([type=radio]):not([type=checkbox]):not([type=image]),.bubble li>.menuitem>input:not([type=radio]):not([type=checkbox]):not([type=image]),.app-navigation-entry-menu li>button>input:not([type=radio]):not([type=checkbox]):not([type=image]),.app-navigation-entry-menu li>a>input:not([type=radio]):not([type=checkbox]):not([type=image]),.app-navigation-entry-menu li>.menuitem>input:not([type=radio]):not([type=checkbox]):not([type=image]),.popovermenu li>button>input:not([type=radio]):not([type=checkbox]):not([type=image]),.popovermenu li>a>input:not([type=radio]):not([type=checkbox]):not([type=image]),.popovermenu li>.menuitem>input:not([type=radio]):not([type=checkbox]):not([type=image]){width:150px}.bubble li>button form,.bubble li>a form,.bubble li>.menuitem form,.app-navigation-entry-menu li>button form,.app-navigation-entry-menu li>a form,.app-navigation-entry-menu li>.menuitem form,.popovermenu li>button form,.popovermenu li>a form,.popovermenu li>.menuitem form{display:flex;flex:1 1 auto;align-items:center}.bubble li>button form:not(:first-child),.bubble li>a form:not(:first-child),.bubble li>.menuitem form:not(:first-child),.app-navigation-entry-menu li>button form:not(:first-child),.app-navigation-entry-menu li>a form:not(:first-child),.app-navigation-entry-menu li>.menuitem form:not(:first-child),.popovermenu li>button form:not(:first-child),.popovermenu li>a form:not(:first-child),.popovermenu li>.menuitem form:not(:first-child){margin-inline-start:5px}.bubble li>button>span.hidden+form,.bubble li>button>span[style*="display:none"]+form,.bubble li>a>span.hidden+form,.bubble li>a>span[style*="display:none"]+form,.bubble li>.menuitem>span.hidden+form,.bubble li>.menuitem>span[style*="display:none"]+form,.app-navigation-entry-menu li>button>span.hidden+form,.app-navigation-entry-menu li>button>span[style*="display:none"]+form,.app-navigation-entry-menu li>a>span.hidden+form,.app-navigation-entry-menu li>a>span[style*="display:none"]+form,.app-navigation-entry-menu li>.menuitem>span.hidden+form,.app-navigation-entry-menu li>.menuitem>span[style*="display:none"]+form,.popovermenu li>button>span.hidden+form,.popovermenu li>button>span[style*="display:none"]+form,.popovermenu li>a>span.hidden+form,.popovermenu li>a>span[style*="display:none"]+form,.popovermenu li>.menuitem>span.hidden+form,.popovermenu li>.menuitem>span[style*="display:none"]+form{margin-inline-start:0}.bubble li>button input,.bubble li>a input,.bubble li>.menuitem input,.app-navigation-entry-menu li>button input,.app-navigation-entry-menu li>a input,.app-navigation-entry-menu li>.menuitem input,.popovermenu li>button input,.popovermenu li>a input,.popovermenu li>.menuitem input{min-width:34px;max-height:30px;margin:2px 0;flex:1 1 auto}.bubble li>button input:not(:first-child),.bubble li>a input:not(:first-child),.bubble li>.menuitem input:not(:first-child),.app-navigation-entry-menu li>button input:not(:first-child),.app-navigation-entry-menu li>a input:not(:first-child),.app-navigation-entry-menu li>.menuitem input:not(:first-child),.popovermenu li>button input:not(:first-child),.popovermenu li>a input:not(:first-child),.popovermenu li>.menuitem input:not(:first-child){margin-inline-start:5px}.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>button>form,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>button>input,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>a>form,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>a>input,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>form,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>button>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>button>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>a>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>a>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>input,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>button>form,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>button>input,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>a>form,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>a>input,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>form,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>input{margin-top:7px}.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>button>form,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>button>input,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>a>form,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>a>input,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>form,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>button>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>button>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>a>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>a>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>input,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>button>form,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>button>input,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>a>form,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>a>input,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>form,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>input{margin-bottom:0px}.bubble li>button,.app-navigation-entry-menu li>button,.popovermenu li>button{padding:0}.bubble li>button span,.app-navigation-entry-menu li>button span,.popovermenu li>button span{opacity:1}.popovermenu li>button>img,.popovermenu li>a>img,.popovermenu li>.menuitem>img{width:34px;height:34px}#contactsmenu .contact .popovermenu li>a>img{width:16px;height:16px}.app-content-list{position:-webkit-sticky;position:relative;top:0;border-inline-end:1px solid var(--color-border);display:flex;flex-direction:column;transition:transform 250ms ease-in-out;min-height:100%;max-height:100%;overflow-y:auto;overflow-x:hidden;flex:1 1 200px;min-width:200px;max-width:300px}.app-content-list .app-content-list-item{position:relative;height:68px;cursor:pointer;padding:10px 7px;display:flex;flex-wrap:wrap;align-items:center;flex:0 0 auto}.app-content-list .app-content-list-item>[class^=icon-],.app-content-list .app-content-list-item>[class*=" icon-"],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"]{order:4;width:24px;height:24px;margin:-7px;padding:22px;opacity:.3;cursor:pointer}.app-content-list .app-content-list-item>[class^=icon-]:hover,.app-content-list .app-content-list-item>[class^=icon-]:focus,.app-content-list .app-content-list-item>[class*=" icon-"]:hover,.app-content-list .app-content-list-item>[class*=" icon-"]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"]:focus{opacity:.7}.app-content-list .app-content-list-item>[class^=icon-][class^=icon-star],.app-content-list .app-content-list-item>[class^=icon-][class*=" icon-star"],.app-content-list .app-content-list-item>[class*=" icon-"][class^=icon-star],.app-content-list .app-content-list-item>[class*=" icon-"][class*=" icon-star"],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class^=icon-star],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class*=" icon-star"],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class^=icon-star],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class*=" icon-star"]{opacity:.7}.app-content-list .app-content-list-item>[class^=icon-][class^=icon-star]:hover,.app-content-list .app-content-list-item>[class^=icon-][class^=icon-star]:focus,.app-content-list .app-content-list-item>[class^=icon-][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>[class^=icon-][class*=" icon-star"]:focus,.app-content-list .app-content-list-item>[class*=" icon-"][class^=icon-star]:hover,.app-content-list .app-content-list-item>[class*=" icon-"][class^=icon-star]:focus,.app-content-list .app-content-list-item>[class*=" icon-"][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>[class*=" icon-"][class*=" icon-star"]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class^=icon-star]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class^=icon-star]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class*=" icon-star"]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class^=icon-star]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class^=icon-star]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class*=" icon-star"]:focus{opacity:1}.app-content-list .app-content-list-item>[class^=icon-].icon-starred,.app-content-list .app-content-list-item>[class*=" icon-"].icon-starred,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-].icon-starred,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"].icon-starred{opacity:1}.app-content-list .app-content-list-item:hover,.app-content-list .app-content-list-item:focus,.app-content-list .app-content-list-item.active{background-color:var(--color-background-dark)}.app-content-list .app-content-list-item:hover .app-content-list-item-checkbox.checkbox+label,.app-content-list .app-content-list-item:focus .app-content-list-item-checkbox.checkbox+label,.app-content-list .app-content-list-item.active .app-content-list-item-checkbox.checkbox+label{display:flex}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label,.app-content-list .app-content-list-item .app-content-list-item-star{position:absolute;height:40px;width:40px;z-index:50}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:checked+label,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:hover+label,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:focus+label,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox.active+label{display:flex}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:checked+label+.app-content-list-item-icon,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:hover+label+.app-content-list-item-icon,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:focus+label+.app-content-list-item-icon,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox.active+label+.app-content-list-item-icon{opacity:.7}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label{top:14px;inset-inline-start:7px;display:none}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label::before{margin:0}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label~.app-content-list-item-star{display:none}.app-content-list .app-content-list-item .app-content-list-item-star{display:flex;top:10px;inset-inline-start:32px;background-size:16px;height:20px;width:20px;margin:0;padding:0}.app-content-list .app-content-list-item .app-content-list-item-icon{position:absolute;display:inline-block;height:40px;width:40px;line-height:40px;border-radius:50%;vertical-align:middle;margin-inline-end:10px;color:#fff;text-align:center;font-size:1.5em;text-transform:capitalize;object-fit:cover;user-select:none;cursor:pointer;top:50%;margin-top:-20px}.app-content-list .app-content-list-item .app-content-list-item-line-one,.app-content-list .app-content-list-item .app-content-list-item-line-two{display:block;padding-inline:50px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;order:1;flex:1 1 0px;cursor:pointer}.app-content-list .app-content-list-item .app-content-list-item-line-two{opacity:.5;order:3;flex:1 0;flex-basis:calc(100% - var(--default-clickable-area))}.app-content-list .app-content-list-item .app-content-list-item-details{order:2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px;opacity:.5;font-size:80%;user-select:none}.app-content-list .app-content-list-item .app-content-list-item-menu{order:4;position:relative}.app-content-list .app-content-list-item .app-content-list-item-menu .popovermenu{margin:0;inset-inline-end:-2px}.app-content-list.selection .app-content-list-item-checkbox.checkbox+label{display:flex}.button.primary.skip-navigation:focus-visible{box-shadow:0 0 0 4px var(--color-main-background) !important;outline:2px solid var(--color-main-text) !important}/*!
+ */@media screen and (max-width: 1024px){:root{--body-container-margin: 0px !important;--body-container-radius: 0px !important}}html{width:100%;height:100%;position:absolute;background-color:var(--color-background-plain, var(--color-main-background))}body{background-color:var(--color-background-plain, var(--color-main-background));background-image:var(--image-background);background-size:cover;background-position:center;position:fixed;width:100%;height:calc(100vh - env(safe-area-inset-bottom))}h2,h3,h4,h5,h6{font-weight:600;line-height:1.5;margin-top:24px;margin-bottom:12px;color:var(--color-main-text)}h2{font-size:1.8em}h3{font-size:1.6em}h4{font-size:1.4em}h5{font-size:1.25em}h6{font-size:1.1em}em{font-style:normal;color:var(--color-text-maxcontrast)}dl{padding:12px 0}dt,dd{display:inline-block;padding:12px;padding-inline-start:0}dt{width:130px;white-space:nowrap;text-align:end}kbd{padding:4px 10px;border:1px solid #ccc;box-shadow:0 1px 0 rgba(0,0,0,.2);border-radius:var(--border-radius);display:inline-block;white-space:nowrap}#content[class*=app-] *{box-sizing:border-box}#app-navigation:not(.vue){--color-text-maxcontrast: var(--color-text-maxcontrast-background-blur, var(--color-main-text));width:300px;z-index:500;overflow-y:auto;overflow-x:hidden;background-color:var(--color-main-background-blur);backdrop-filter:var(--filter-background-blur);-webkit-backdrop-filter:var(--filter-background-blur);-webkit-user-select:none;position:sticky;height:100%;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column;flex-grow:0;flex-shrink:0}#app-navigation:not(.vue) .app-navigation-caption{font-weight:bold;line-height:var(--default-clickable-area);padding:10px var(--default-clickable-area) 0 var(--default-clickable-area);white-space:nowrap;text-overflow:ellipsis;box-shadow:none !important;user-select:none;pointer-events:none;margin-inline-start:10px}.app-navigation-personal .app-navigation-new,.app-navigation-administration .app-navigation-new{display:block;padding:calc(var(--default-grid-baseline)*2)}.app-navigation-personal .app-navigation-new button,.app-navigation-administration .app-navigation-new button{display:inline-block;width:100%;padding:10px;padding-inline-start:34px;text-align:start;margin:0}.app-navigation-personal li,.app-navigation-administration li{position:relative}.app-navigation-personal>ul,.app-navigation-administration>ul{position:relative;height:100%;width:100%;overflow-x:hidden;overflow-y:auto;box-sizing:border-box;display:flex;flex-direction:column;padding:calc(var(--default-grid-baseline)*2);padding-bottom:0}.app-navigation-personal>ul:last-child,.app-navigation-administration>ul:last-child{padding-bottom:calc(var(--default-grid-baseline)*2)}.app-navigation-personal>ul>li,.app-navigation-administration>ul>li{display:inline-flex;flex-wrap:wrap;order:1;flex-shrink:0;margin:0;margin-bottom:3px;width:100%;border-radius:var(--border-radius-element)}.app-navigation-personal>ul>li.pinned,.app-navigation-administration>ul>li.pinned{order:2}.app-navigation-personal>ul>li.pinned.first-pinned,.app-navigation-administration>ul>li.pinned.first-pinned{margin-top:auto !important}.app-navigation-personal>ul>li>.app-navigation-entry-deleted,.app-navigation-administration>ul>li>.app-navigation-entry-deleted{padding-inline-start:var(--default-clickable-area) !important}.app-navigation-personal>ul>li>.app-navigation-entry-edit,.app-navigation-administration>ul>li>.app-navigation-entry-edit{padding-inline-start:calc(var(--default-clickable-area) - 6px) !important}.app-navigation-personal>ul>li a:hover,.app-navigation-personal>ul>li a:hover>a,.app-navigation-personal>ul>li a:focus,.app-navigation-personal>ul>li a:focus>a,.app-navigation-administration>ul>li a:hover,.app-navigation-administration>ul>li a:hover>a,.app-navigation-administration>ul>li a:focus,.app-navigation-administration>ul>li a:focus>a{background-color:var(--color-background-hover)}.app-navigation-personal>ul>li a:focus-visible,.app-navigation-administration>ul>li a:focus-visible{box-shadow:0 0 0 4px var(--color-main-background);outline:2px solid var(--color-main-text)}.app-navigation-personal>ul>li.active,.app-navigation-personal>ul>li.active>a,.app-navigation-personal>ul>li a:active,.app-navigation-personal>ul>li a:active>a,.app-navigation-personal>ul>li a.selected,.app-navigation-personal>ul>li a.selected>a,.app-navigation-personal>ul>li a.active,.app-navigation-personal>ul>li a.active>a,.app-navigation-administration>ul>li.active,.app-navigation-administration>ul>li.active>a,.app-navigation-administration>ul>li a:active,.app-navigation-administration>ul>li a:active>a,.app-navigation-administration>ul>li a.selected,.app-navigation-administration>ul>li a.selected>a,.app-navigation-administration>ul>li a.active,.app-navigation-administration>ul>li a.active>a{background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.app-navigation-personal>ul>li.active:first-child>img,.app-navigation-personal>ul>li.active>a:first-child>img,.app-navigation-personal>ul>li a:active:first-child>img,.app-navigation-personal>ul>li a:active>a:first-child>img,.app-navigation-personal>ul>li a.selected:first-child>img,.app-navigation-personal>ul>li a.selected>a:first-child>img,.app-navigation-personal>ul>li a.active:first-child>img,.app-navigation-personal>ul>li a.active>a:first-child>img,.app-navigation-administration>ul>li.active:first-child>img,.app-navigation-administration>ul>li.active>a:first-child>img,.app-navigation-administration>ul>li a:active:first-child>img,.app-navigation-administration>ul>li a:active>a:first-child>img,.app-navigation-administration>ul>li a.selected:first-child>img,.app-navigation-administration>ul>li a.selected>a:first-child>img,.app-navigation-administration>ul>li a.active:first-child>img,.app-navigation-administration>ul>li a.active>a:first-child>img{filter:var(--primary-invert-if-dark)}.app-navigation-personal>ul>li.icon-loading-small:after,.app-navigation-administration>ul>li.icon-loading-small:after{inset-inline-start:22px;top:22px}.app-navigation-personal>ul>li.deleted>ul,.app-navigation-personal>ul>li.collapsible:not(.open)>ul,.app-navigation-administration>ul>li.deleted>ul,.app-navigation-administration>ul>li.collapsible:not(.open)>ul{display:none}.app-navigation-personal>ul>li>ul,.app-navigation-administration>ul>li>ul{flex:0 1 auto;width:100%;position:relative}.app-navigation-personal>ul>li>ul>li,.app-navigation-administration>ul>li>ul>li{display:inline-flex;flex-wrap:wrap;padding-inline-start:var(--default-clickable-area);width:100%;margin-bottom:3px}.app-navigation-personal>ul>li>ul>li:hover,.app-navigation-personal>ul>li>ul>li:hover>a,.app-navigation-personal>ul>li>ul>li:focus,.app-navigation-personal>ul>li>ul>li:focus>a,.app-navigation-administration>ul>li>ul>li:hover,.app-navigation-administration>ul>li>ul>li:hover>a,.app-navigation-administration>ul>li>ul>li:focus,.app-navigation-administration>ul>li>ul>li:focus>a{border-radius:var(--border-radius-element);background-color:var(--color-background-hover)}.app-navigation-personal>ul>li>ul>li.active,.app-navigation-personal>ul>li>ul>li.active>a,.app-navigation-personal>ul>li>ul>li a.selected,.app-navigation-personal>ul>li>ul>li a.selected>a,.app-navigation-administration>ul>li>ul>li.active,.app-navigation-administration>ul>li>ul>li.active>a,.app-navigation-administration>ul>li>ul>li a.selected,.app-navigation-administration>ul>li>ul>li a.selected>a{border-radius:var(--border-radius-element);background-color:var(--color-primary-element-light)}.app-navigation-personal>ul>li>ul>li.active:first-child>img,.app-navigation-personal>ul>li>ul>li.active>a:first-child>img,.app-navigation-personal>ul>li>ul>li a.selected:first-child>img,.app-navigation-personal>ul>li>ul>li a.selected>a:first-child>img,.app-navigation-administration>ul>li>ul>li.active:first-child>img,.app-navigation-administration>ul>li>ul>li.active>a:first-child>img,.app-navigation-administration>ul>li>ul>li a.selected:first-child>img,.app-navigation-administration>ul>li>ul>li a.selected>a:first-child>img{filter:var(--primary-invert-if-dark)}.app-navigation-personal>ul>li>ul>li.icon-loading-small:after,.app-navigation-administration>ul>li>ul>li.icon-loading-small:after{inset-inline-start:calc(var(--default-clickable-area)/2)}.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-deleted,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-deleted{margin-inline-start:4px;padding-inline-start:84px}.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-edit,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-edit{margin-inline-start:4px;padding-inline-start:calc(2*var(--default-clickable-area) - 10px) !important}.app-navigation-personal>ul>li,.app-navigation-personal>ul>li>ul>li,.app-navigation-administration>ul>li,.app-navigation-administration>ul>li>ul>li{position:relative;box-sizing:border-box}.app-navigation-personal>ul>li.icon-loading-small>a,.app-navigation-personal>ul>li.icon-loading-small>.app-navigation-entry-bullet,.app-navigation-personal>ul>li>ul>li.icon-loading-small>a,.app-navigation-personal>ul>li>ul>li.icon-loading-small>.app-navigation-entry-bullet,.app-navigation-administration>ul>li.icon-loading-small>a,.app-navigation-administration>ul>li.icon-loading-small>.app-navigation-entry-bullet,.app-navigation-administration>ul>li>ul>li.icon-loading-small>a,.app-navigation-administration>ul>li>ul>li.icon-loading-small>.app-navigation-entry-bullet{background:rgba(0,0,0,0) !important}.app-navigation-personal>ul>li>a,.app-navigation-personal>ul>li>ul>li>a,.app-navigation-administration>ul>li>a,.app-navigation-administration>ul>li>ul>li>a{background-size:16px 16px;background-repeat:no-repeat;display:block;justify-content:space-between;line-height:var(--default-clickable-area);min-height:var(--default-clickable-area);padding-block:0;padding-inline:calc(2*var(--default-grid-baseline));overflow:hidden;box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;border-radius:var(--border-radius-element);color:var(--color-main-text);flex:1 1 0px;z-index:100}.app-navigation-personal>ul>li>a.svg,.app-navigation-personal>ul>li>ul>li>a.svg,.app-navigation-administration>ul>li>a.svg,.app-navigation-administration>ul>li>ul>li>a.svg{padding-block:0;padding-inline:var(--default-clickable-area) 12px}.app-navigation-personal>ul>li>a.svg :focus-visible,.app-navigation-personal>ul>li>ul>li>a.svg :focus-visible,.app-navigation-administration>ul>li>a.svg :focus-visible,.app-navigation-administration>ul>li>ul>li>a.svg :focus-visible{padding-block:0;padding-inline:calc(var(--default-clickable-area) - 2px) 8px}.app-navigation-personal>ul>li>a:first-child img,.app-navigation-personal>ul>li>ul>li>a:first-child img,.app-navigation-administration>ul>li>a:first-child img,.app-navigation-administration>ul>li>ul>li>a:first-child img{margin-inline-end:calc(2*var(--default-grid-baseline)) !important;width:16px;height:16px;filter:var(--background-invert-if-dark)}.app-navigation-personal>ul>li>a>.app-navigation-entry-utils,.app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils,.app-navigation-administration>ul>li>a>.app-navigation-entry-utils,.app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils{display:inline-block}.app-navigation-personal>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-administration>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils .app-navigation-entry-utils-counter{padding-inline-end:0 !important}.app-navigation-personal>ul>li>.app-navigation-entry-bullet,.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-bullet,.app-navigation-administration>ul>li>.app-navigation-entry-bullet,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-bullet{position:absolute;display:block;margin:16px;width:12px;height:12px;border:none;border-radius:50%;cursor:pointer;transition:background 100ms ease-in-out}.app-navigation-personal>ul>li>.app-navigation-entry-bullet+a,.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-bullet+a,.app-navigation-administration>ul>li>.app-navigation-entry-bullet+a,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-bullet+a{background:rgba(0,0,0,0) !important}.app-navigation-personal>ul>li>.app-navigation-entry-menu,.app-navigation-personal>ul>li>ul>li>.app-navigation-entry-menu,.app-navigation-administration>ul>li>.app-navigation-entry-menu,.app-navigation-administration>ul>li>ul>li>.app-navigation-entry-menu{top:var(--default-clickable-area)}.app-navigation-personal>ul>li.editing .app-navigation-entry-edit,.app-navigation-personal>ul>li>ul>li.editing .app-navigation-entry-edit,.app-navigation-administration>ul>li.editing .app-navigation-entry-edit,.app-navigation-administration>ul>li>ul>li.editing .app-navigation-entry-edit{opacity:1;z-index:250}.app-navigation-personal>ul>li.deleted .app-navigation-entry-deleted,.app-navigation-personal>ul>li>ul>li.deleted .app-navigation-entry-deleted,.app-navigation-administration>ul>li.deleted .app-navigation-entry-deleted,.app-navigation-administration>ul>li>ul>li.deleted .app-navigation-entry-deleted{transform:translateX(0);z-index:250}.app-navigation-personal.hidden,.app-navigation-administration.hidden{display:none}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button{border:0;opacity:.5;background-color:rgba(0,0,0,0);background-repeat:no-repeat;background-position:center}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:hover,.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:focus,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:hover,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button>button:focus,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus{background-color:rgba(0,0,0,0);opacity:1}.app-navigation-personal .collapsible .collapse,.app-navigation-administration .collapsible .collapse{opacity:0;position:absolute;width:var(--default-clickable-area);height:var(--default-clickable-area);margin:0;z-index:110;inset-inline-start:0}.app-navigation-personal .collapsible .collapse:focus-visible,.app-navigation-administration .collapsible .collapse:focus-visible{opacity:1;border-width:0;box-shadow:inset 0 0 0 2px var(--color-primary-element);background:none}.app-navigation-personal .collapsible:before,.app-navigation-administration .collapsible:before{position:absolute;height:var(--default-clickable-area);width:var(--default-clickable-area);margin:0;padding:0;background:none;background-image:var(--icon-triangle-s-dark);background-size:16px;background-repeat:no-repeat;background-position:center;border:none;outline:none !important;box-shadow:none;content:" ";opacity:0;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);z-index:105;border-radius:50%;transition:opacity 100ms ease-in-out}.app-navigation-personal .collapsible>a:first-child,.app-navigation-administration .collapsible>a:first-child{padding-inline-start:var(--default-clickable-area)}.app-navigation-personal .collapsible:hover:before,.app-navigation-personal .collapsible:focus:before,.app-navigation-administration .collapsible:hover:before,.app-navigation-administration .collapsible:focus:before{opacity:1}.app-navigation-personal .collapsible:hover>a,.app-navigation-personal .collapsible:focus>a,.app-navigation-administration .collapsible:hover>a,.app-navigation-administration .collapsible:focus>a{background-image:none}.app-navigation-personal .collapsible:hover>.app-navigation-entry-bullet,.app-navigation-personal .collapsible:focus>.app-navigation-entry-bullet,.app-navigation-administration .collapsible:hover>.app-navigation-entry-bullet,.app-navigation-administration .collapsible:focus>.app-navigation-entry-bullet{background:rgba(0,0,0,0) !important}.app-navigation-personal .collapsible.open:before,.app-navigation-administration .collapsible.open:before{-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0)}.app-navigation-personal .app-navigation-entry-utils,.app-navigation-administration .app-navigation-entry-utils{flex:0 1 auto}.app-navigation-personal .app-navigation-entry-utils ul,.app-navigation-administration .app-navigation-entry-utils ul{display:flex !important;align-items:center;justify-content:flex-end}.app-navigation-personal .app-navigation-entry-utils li,.app-navigation-administration .app-navigation-entry-utils li{width:var(--default-clickable-area) !important;height:var(--default-clickable-area)}.app-navigation-personal .app-navigation-entry-utils button,.app-navigation-administration .app-navigation-entry-utils button{height:100%;width:100%;margin:0;box-shadow:none}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button button:not([class^=icon-]):not([class*=" icon-"]),.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button button:not([class^=icon-]):not([class*=" icon-"]){background-image:var(--icon-more-dark)}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:hover button,.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:focus button,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:hover button,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-menu-button:focus button{background-color:rgba(0,0,0,0);opacity:1}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-counter,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-counter{overflow:hidden;text-align:end;font-size:9pt;line-height:var(--default-clickable-area);padding:0 12px}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted{padding:0;text-align:center}.app-navigation-personal .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted span,.app-navigation-administration .app-navigation-entry-utils .app-navigation-entry-utils-counter.highlighted span{padding:2px 5px;border-radius:10px;background-color:var(--color-primary-element);color:var(--color-primary-element-text)}.app-navigation-personal .app-navigation-entry-edit,.app-navigation-administration .app-navigation-entry-edit{padding-inline:5px;display:block;width:calc(100% - 1px);transition:opacity 250ms ease-in-out;opacity:0;position:absolute;background-color:var(--color-main-background);z-index:-1}.app-navigation-personal .app-navigation-entry-edit form,.app-navigation-personal .app-navigation-entry-edit div,.app-navigation-administration .app-navigation-entry-edit form,.app-navigation-administration .app-navigation-entry-edit div{display:inline-flex;width:100%}.app-navigation-personal .app-navigation-entry-edit input,.app-navigation-administration .app-navigation-entry-edit input{padding:5px;margin-inline-end:0;height:38px}.app-navigation-personal .app-navigation-entry-edit input:hover,.app-navigation-personal .app-navigation-entry-edit input:focus,.app-navigation-administration .app-navigation-entry-edit input:hover,.app-navigation-administration .app-navigation-entry-edit input:focus{z-index:1}.app-navigation-personal .app-navigation-entry-edit input[type=text],.app-navigation-administration .app-navigation-entry-edit input[type=text]{width:100%;min-width:0;border-end-end-radius:0;border-start-end-radius:0}.app-navigation-personal .app-navigation-entry-edit button,.app-navigation-personal .app-navigation-entry-edit input:not([type=text]),.app-navigation-administration .app-navigation-entry-edit button,.app-navigation-administration .app-navigation-entry-edit input:not([type=text]){width:36px;height:38px;flex:0 0 36px}.app-navigation-personal .app-navigation-entry-edit button:not(:last-child),.app-navigation-personal .app-navigation-entry-edit input:not([type=text]):not(:last-child),.app-navigation-administration .app-navigation-entry-edit button:not(:last-child),.app-navigation-administration .app-navigation-entry-edit input:not([type=text]):not(:last-child){border-radius:0 !important}.app-navigation-personal .app-navigation-entry-edit button:not(:first-child),.app-navigation-personal .app-navigation-entry-edit input:not([type=text]):not(:first-child),.app-navigation-administration .app-navigation-entry-edit button:not(:first-child),.app-navigation-administration .app-navigation-entry-edit input:not([type=text]):not(:first-child){margin-inline-start:-1px}.app-navigation-personal .app-navigation-entry-edit button:last-child,.app-navigation-personal .app-navigation-entry-edit input:not([type=text]):last-child,.app-navigation-administration .app-navigation-entry-edit button:last-child,.app-navigation-administration .app-navigation-entry-edit input:not([type=text]):last-child{border-end-end-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-start-radius:0;border-start-start-radius:0}.app-navigation-personal .app-navigation-entry-deleted,.app-navigation-administration .app-navigation-entry-deleted{display:inline-flex;padding-inline-start:var(--default-clickable-area);transform:translateX(300px)}.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-description,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-description{position:relative;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;flex:1 1 0px;line-height:var(--default-clickable-area)}.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button{margin:0;height:var(--default-clickable-area);width:var(--default-clickable-area);line-height:var(--default-clickable-area)}.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-personal .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:hover,.app-navigation-administration .app-navigation-entry-deleted .app-navigation-entry-deleted-button:focus{opacity:1}.app-navigation-personal .app-navigation-entry-edit,.app-navigation-personal .app-navigation-entry-deleted,.app-navigation-administration .app-navigation-entry-edit,.app-navigation-administration .app-navigation-entry-deleted{width:calc(100% - 1px);transition:transform 250ms ease-in-out,opacity 250ms ease-in-out,z-index 250ms ease-in-out;position:absolute;inset-inline-start:0;background-color:var(--color-main-background);box-sizing:border-box}.app-navigation-personal .drag-and-drop,.app-navigation-administration .drag-and-drop{-webkit-transition:padding-bottom 500ms ease 0s;transition:padding-bottom 500ms ease 0s;padding-bottom:40px}.app-navigation-personal .error,.app-navigation-administration .error{color:var(--color-error)}.app-navigation-personal .app-navigation-entry-utils ul,.app-navigation-personal .app-navigation-entry-menu ul,.app-navigation-administration .app-navigation-entry-utils ul,.app-navigation-administration .app-navigation-entry-menu ul{list-style-type:none}body[dir=ltr] .app-navigation-personal .app-navigation-new button,body[dir=ltr] .app-navigation-administration .app-navigation-new button{background-position:left 10px center}body[dir=ltr] .app-navigation-personal>ul>li>ul>li>a,body[dir=ltr] .app-navigation-administration>ul>li>ul>li>a{background-position:left 14px center}body[dir=ltr] .app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils,body[dir=ltr] .app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils{float:right}body[dir=rtl] .app-navigation-personal .app-navigation-new button,body[dir=rtl] .app-navigation-administration .app-navigation-new button{background-position:right 10px center}body[dir=rtl] .app-navigation-personal>ul>li>ul>li>a,body[dir=rtl] .app-navigation-administration>ul>li>ul>li>a{background-position:right 14px center}body[dir=rtl] .app-navigation-personal>ul>li>ul>li>a>.app-navigation-entry-utils,body[dir=rtl] .app-navigation-administration>ul>li>ul>li>a>.app-navigation-entry-utils{float:left}#content{box-sizing:border-box;position:static;margin:var(--body-container-margin);margin-top:var(--header-height);padding:0;display:flex;width:calc(100% - var(--body-container-margin)*2);height:var(--body-height);border-radius:var(--body-container-radius);overflow:clip}#content:not(.with-sidebar--full){position:fixed}@media only screen and (max-width: 1024px){#content{border-start-start-radius:var(--border-radius-large);border-start-end-radius:var(--border-radius-large)}#app-navigation{border-start-start-radius:var(--border-radius-large)}#app-sidebar{border-start-end-radius:var(--border-radius-large)}}#app-content{z-index:1000;background-color:var(--color-main-background);flex-basis:100vw;overflow:auto;position:initial;height:100%}#app-content>.section:first-child{border-top:none}#app-content #app-content-wrapper{display:flex;position:relative;align-items:stretch;min-height:100%}#app-content #app-content-wrapper .app-content-details{flex:1 1 524px}#app-content #app-content-wrapper .app-content-details #app-navigation-toggle-back{display:none}#app-content::-webkit-scrollbar-button{height:var(--body-container-radius)}#app-sidebar{width:27vw;min-width:300px;max-width:500px;display:block;position:-webkit-sticky;position:sticky;top:50px;inset-inline-end:0;overflow-y:auto;overflow-x:hidden;z-index:1500;opacity:.7px;height:calc(100vh - 50px);background:var(--color-main-background);border-inline-start:1px solid var(--color-border);flex-shrink:0}#app-sidebar.disappear{display:none}#app-settings{margin-top:auto}#app-settings.open #app-settings-content,#app-settings.opened #app-settings-content{display:block}#app-settings-content{display:none;padding:calc(var(--default-grid-baseline)*2);padding-top:0;padding-inline-start:calc(var(--default-grid-baseline)*4);max-height:300px;overflow-y:auto;box-sizing:border-box}#app-settings-content input[type=text]{width:93%}#app-settings-content .info-text{padding-block:5px 7px;padding-inline:22px 0;color:var(--color-text-lighter)}#app-settings-content input[type=checkbox].radio+label,#app-settings-content input[type=checkbox].checkbox+label,#app-settings-content input[type=radio].radio+label,#app-settings-content input[type=radio].checkbox+label{display:inline-block;width:100%;padding:5px 0}#app-settings-header{box-sizing:border-box;background-color:rgba(0,0,0,0);overflow:hidden;border-radius:calc(var(--default-clickable-area)/2);padding:calc(var(--default-grid-baseline)*2);padding-top:0}#app-settings-header .settings-button{display:flex;align-items:center;height:var(--default-clickable-area);width:100%;padding:0;margin:0;background-color:rgba(0,0,0,0);box-shadow:none;border:0;border-radius:calc(var(--default-clickable-area)/2);text-align:start;font-weight:normal;font-size:100%;opacity:.8;color:var(--color-main-text)}#app-settings-header .settings-button.opened{border-top:solid 1px var(--color-border);background-color:var(--color-main-background);margin-top:8px}#app-settings-header .settings-button:hover,#app-settings-header .settings-button:focus{background-color:var(--color-background-hover)}#app-settings-header .settings-button::before{background-image:var(--icon-settings-dark);background-repeat:no-repeat;content:"";width:var(--default-clickable-area);height:var(--default-clickable-area);top:0;inset-inline-start:0;display:block}#app-settings-header .settings-button:focus-visible{box-shadow:0 0 0 2px inset var(--color-primary-element) !important}body[dir=ltr] #app-settings-header .settings-button::before{background-position:left 14px center}body[dir=ltr] #app-settings-header .settings-button:focus-visible{background-position:left 12px center}body[dir=rtl] #app-settings-header .settings-button::before{background-position:right 14px center}body[dir=rtl] #app-settings-header .settings-button:focus-visible{background-position:right 12px center}.section{display:block;padding:30px;margin-bottom:24px}.section.hidden{display:none !important}.section input[type=checkbox],.section input[type=radio]{vertical-align:-2px;margin-inline-end:4px}.sub-section{position:relative;margin-top:10px;margin-inline-start:27px;margin-bottom:10px}.appear{opacity:1;-webkit-transition:opacity 500ms ease 0s;-moz-transition:opacity 500ms ease 0s;-ms-transition:opacity 500ms ease 0s;-o-transition:opacity 500ms ease 0s;transition:opacity 500ms ease 0s}.appear.transparent{opacity:0}.tabHeaders{display:flex;margin-bottom:16px}.tabHeaders .tabHeader{display:flex;flex-direction:column;flex-grow:1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;color:var(--color-text-lighter);margin-bottom:1px;padding:5px}.tabHeaders .tabHeader.hidden{display:none}.tabHeaders .tabHeader:first-child{padding-inline-start:15px}.tabHeaders .tabHeader:last-child{padding-inline-end:15px}.tabHeaders .tabHeader .icon{display:inline-block;width:100%;height:16px;background-size:16px;vertical-align:middle;margin-top:-2px;margin-inline-end:3px;opacity:.7;cursor:pointer}.tabHeaders .tabHeader a{color:var(--color-text-lighter);margin-bottom:1px;overflow:hidden;text-overflow:ellipsis}.tabHeaders .tabHeader.selected{font-weight:bold}.tabHeaders .tabHeader.selected,.tabHeaders .tabHeader:hover,.tabHeaders .tabHeader:focus{margin-bottom:0px;color:var(--color-main-text);border-bottom:1px solid var(--color-text-lighter)}.tabsContainer .tab{padding:0 15px 15px}body[dir=ltr] .tabsContainer{clear:left}body[dir=rtl] .tabsContainer{clear:right}.v-popper__inner div.open>ul>li>a>span.action-link__icon,.v-popper__inner div.open>ul>li>a>span.action-router__icon,.v-popper__inner div.open>ul>li>a>img{filter:var(--background-invert-if-dark)}.v-popper__inner div.open>ul>li>a>span.action-link__icon[src^=data],.v-popper__inner div.open>ul>li>a>span.action-router__icon[src^=data],.v-popper__inner div.open>ul>li>a>img[src^=data]{filter:none}.bubble,.app-navigation-entry-menu,.popovermenu{position:absolute;background-color:var(--color-main-background);color:var(--color-main-text);border-radius:var(--border-radius-large);padding:3px;z-index:110;margin:5px;margin-top:-5px;inset-inline-end:0;filter:drop-shadow(0 1px 3px var(--color-box-shadow));display:none;will-change:filter}.bubble:after,.app-navigation-entry-menu:after,.popovermenu:after{bottom:100%;inset-inline-end:7px;border:solid rgba(0,0,0,0);content:" ";height:0;width:0;position:absolute;pointer-events:none;border-bottom-color:var(--color-main-background);border-width:9px}.bubble.menu-center,.app-navigation-entry-menu.menu-center,.popovermenu.menu-center{transform:translateX(50%);inset-inline-end:50%;margin-inline-end:0}.bubble.menu-center:after,.app-navigation-entry-menu.menu-center:after,.popovermenu.menu-center:after{inset-inline-end:50%;transform:translateX(50%)}.bubble.menu-left,.app-navigation-entry-menu.menu-left,.popovermenu.menu-left{inset-inline:0 auto;margin-inline-end:0}.bubble.menu-left:after,.app-navigation-entry-menu.menu-left:after,.popovermenu.menu-left:after{inset-inline:6px auto}.bubble.open,.app-navigation-entry-menu.open,.popovermenu.open{display:block}.bubble.contactsmenu-popover,.app-navigation-entry-menu.contactsmenu-popover,.popovermenu.contactsmenu-popover{margin:0}.bubble ul,.app-navigation-entry-menu ul,.popovermenu ul{display:flex !important;flex-direction:column}.bubble li,.app-navigation-entry-menu li,.popovermenu li{display:flex;flex:0 0 auto}.bubble li.hidden,.app-navigation-entry-menu li.hidden,.popovermenu li.hidden{display:none}.bubble li>button,.bubble li>a,.bubble li>.menuitem,.app-navigation-entry-menu li>button,.app-navigation-entry-menu li>a,.app-navigation-entry-menu li>.menuitem,.popovermenu li>button,.popovermenu li>a,.popovermenu li>.menuitem{cursor:pointer;line-height:34px;border:0;border-radius:var(--border-radius-large);background-color:rgba(0,0,0,0);display:flex;align-items:flex-start;height:auto;margin:0;font-weight:normal;box-shadow:none;width:100%;color:var(--color-main-text);white-space:nowrap}.bubble li>button span[class^=icon-],.bubble li>button span[class*=" icon-"],.bubble li>button[class^=icon-],.bubble li>button[class*=" icon-"],.bubble li>a span[class^=icon-],.bubble li>a span[class*=" icon-"],.bubble li>a[class^=icon-],.bubble li>a[class*=" icon-"],.bubble li>.menuitem span[class^=icon-],.bubble li>.menuitem span[class*=" icon-"],.bubble li>.menuitem[class^=icon-],.bubble li>.menuitem[class*=" icon-"],.app-navigation-entry-menu li>button span[class^=icon-],.app-navigation-entry-menu li>button span[class*=" icon-"],.app-navigation-entry-menu li>button[class^=icon-],.app-navigation-entry-menu li>button[class*=" icon-"],.app-navigation-entry-menu li>a span[class^=icon-],.app-navigation-entry-menu li>a span[class*=" icon-"],.app-navigation-entry-menu li>a[class^=icon-],.app-navigation-entry-menu li>a[class*=" icon-"],.app-navigation-entry-menu li>.menuitem span[class^=icon-],.app-navigation-entry-menu li>.menuitem span[class*=" icon-"],.app-navigation-entry-menu li>.menuitem[class^=icon-],.app-navigation-entry-menu li>.menuitem[class*=" icon-"],.popovermenu li>button span[class^=icon-],.popovermenu li>button span[class*=" icon-"],.popovermenu li>button[class^=icon-],.popovermenu li>button[class*=" icon-"],.popovermenu li>a span[class^=icon-],.popovermenu li>a span[class*=" icon-"],.popovermenu li>a[class^=icon-],.popovermenu li>a[class*=" icon-"],.popovermenu li>.menuitem span[class^=icon-],.popovermenu li>.menuitem span[class*=" icon-"],.popovermenu li>.menuitem[class^=icon-],.popovermenu li>.menuitem[class*=" icon-"]{min-width:0;min-height:0;background-position:9px center;background-size:16px}.bubble li>button span[class^=icon-],.bubble li>button span[class*=" icon-"],.bubble li>a span[class^=icon-],.bubble li>a span[class*=" icon-"],.bubble li>.menuitem span[class^=icon-],.bubble li>.menuitem span[class*=" icon-"],.app-navigation-entry-menu li>button span[class^=icon-],.app-navigation-entry-menu li>button span[class*=" icon-"],.app-navigation-entry-menu li>a span[class^=icon-],.app-navigation-entry-menu li>a span[class*=" icon-"],.app-navigation-entry-menu li>.menuitem span[class^=icon-],.app-navigation-entry-menu li>.menuitem span[class*=" icon-"],.popovermenu li>button span[class^=icon-],.popovermenu li>button span[class*=" icon-"],.popovermenu li>a span[class^=icon-],.popovermenu li>a span[class*=" icon-"],.popovermenu li>.menuitem span[class^=icon-],.popovermenu li>.menuitem span[class*=" icon-"]{padding:17px 0 17px 34px}.bubble li>button:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>button:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>button:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>a:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>a:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>a:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>.menuitem:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>.menuitem:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.bubble li>.menuitem:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>button:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>button:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>button:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>a:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>a:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>a:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>.menuitem:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>.menuitem:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.app-navigation-entry-menu li>.menuitem:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>button:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>button:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>button:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>a:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>a:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>a:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>.menuitem:not([class^=icon-]):not([class*=icon-])>span:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>.menuitem:not([class^=icon-]):not([class*=icon-])>input:not([class^=icon-]):not([class*=icon-]):first-child,.popovermenu li>.menuitem:not([class^=icon-]):not([class*=icon-])>form:not([class^=icon-]):not([class*=icon-]):first-child{margin-inline-start:34px}.bubble li>button[class^=icon-],.bubble li>button[class*=" icon-"],.bubble li>a[class^=icon-],.bubble li>a[class*=" icon-"],.bubble li>.menuitem[class^=icon-],.bubble li>.menuitem[class*=" icon-"],.app-navigation-entry-menu li>button[class^=icon-],.app-navigation-entry-menu li>button[class*=" icon-"],.app-navigation-entry-menu li>a[class^=icon-],.app-navigation-entry-menu li>a[class*=" icon-"],.app-navigation-entry-menu li>.menuitem[class^=icon-],.app-navigation-entry-menu li>.menuitem[class*=" icon-"],.popovermenu li>button[class^=icon-],.popovermenu li>button[class*=" icon-"],.popovermenu li>a[class^=icon-],.popovermenu li>a[class*=" icon-"],.popovermenu li>.menuitem[class^=icon-],.popovermenu li>.menuitem[class*=" icon-"]{padding:0 9px 0 34px !important}.bubble li>button:hover,.bubble li>button:focus,.bubble li>a:hover,.bubble li>a:focus,.bubble li>.menuitem:hover,.bubble li>.menuitem:focus,.app-navigation-entry-menu li>button:hover,.app-navigation-entry-menu li>button:focus,.app-navigation-entry-menu li>a:hover,.app-navigation-entry-menu li>a:focus,.app-navigation-entry-menu li>.menuitem:hover,.app-navigation-entry-menu li>.menuitem:focus,.popovermenu li>button:hover,.popovermenu li>button:focus,.popovermenu li>a:hover,.popovermenu li>a:focus,.popovermenu li>.menuitem:hover,.popovermenu li>.menuitem:focus{background-color:var(--color-background-hover)}.bubble li>button:focus,.bubble li>button:focus-visible,.bubble li>a:focus,.bubble li>a:focus-visible,.bubble li>.menuitem:focus,.bubble li>.menuitem:focus-visible,.app-navigation-entry-menu li>button:focus,.app-navigation-entry-menu li>button:focus-visible,.app-navigation-entry-menu li>a:focus,.app-navigation-entry-menu li>a:focus-visible,.app-navigation-entry-menu li>.menuitem:focus,.app-navigation-entry-menu li>.menuitem:focus-visible,.popovermenu li>button:focus,.popovermenu li>button:focus-visible,.popovermenu li>a:focus,.popovermenu li>a:focus-visible,.popovermenu li>.menuitem:focus,.popovermenu li>.menuitem:focus-visible{box-shadow:0 0 0 2px var(--color-primary-element)}.bubble li>button.active,.bubble li>a.active,.bubble li>.menuitem.active,.app-navigation-entry-menu li>button.active,.app-navigation-entry-menu li>a.active,.app-navigation-entry-menu li>.menuitem.active,.popovermenu li>button.active,.popovermenu li>a.active,.popovermenu li>.menuitem.active{border-radius:var(--border-radius-element);background-color:var(--color-primary-element-light)}.bubble li>button.action,.bubble li>a.action,.bubble li>.menuitem.action,.app-navigation-entry-menu li>button.action,.app-navigation-entry-menu li>a.action,.app-navigation-entry-menu li>.menuitem.action,.popovermenu li>button.action,.popovermenu li>a.action,.popovermenu li>.menuitem.action{padding:inherit !important}.bubble li>button>span,.bubble li>a>span,.bubble li>.menuitem>span,.app-navigation-entry-menu li>button>span,.app-navigation-entry-menu li>a>span,.app-navigation-entry-menu li>.menuitem>span,.popovermenu li>button>span,.popovermenu li>a>span,.popovermenu li>.menuitem>span{cursor:pointer;white-space:nowrap}.bubble li>button>p,.bubble li>a>p,.bubble li>.menuitem>p,.app-navigation-entry-menu li>button>p,.app-navigation-entry-menu li>a>p,.app-navigation-entry-menu li>.menuitem>p,.popovermenu li>button>p,.popovermenu li>a>p,.popovermenu li>.menuitem>p{width:150px;line-height:1.6em;padding:8px 0;white-space:normal}.bubble li>button>select,.bubble li>a>select,.bubble li>.menuitem>select,.app-navigation-entry-menu li>button>select,.app-navigation-entry-menu li>a>select,.app-navigation-entry-menu li>.menuitem>select,.popovermenu li>button>select,.popovermenu li>a>select,.popovermenu li>.menuitem>select{margin:0;margin-inline-start:6px}.bubble li>button:not(:empty),.bubble li>a:not(:empty),.bubble li>.menuitem:not(:empty),.app-navigation-entry-menu li>button:not(:empty),.app-navigation-entry-menu li>a:not(:empty),.app-navigation-entry-menu li>.menuitem:not(:empty),.popovermenu li>button:not(:empty),.popovermenu li>a:not(:empty),.popovermenu li>.menuitem:not(:empty){padding-inline-end:9px !important}.bubble li>button>img,.bubble li>a>img,.bubble li>.menuitem>img,.app-navigation-entry-menu li>button>img,.app-navigation-entry-menu li>a>img,.app-navigation-entry-menu li>.menuitem>img,.popovermenu li>button>img,.popovermenu li>a>img,.popovermenu li>.menuitem>img{width:16px;padding:9px}.bubble li>button>input.radio+label,.bubble li>button>input.checkbox+label,.bubble li>a>input.radio+label,.bubble li>a>input.checkbox+label,.bubble li>.menuitem>input.radio+label,.bubble li>.menuitem>input.checkbox+label,.app-navigation-entry-menu li>button>input.radio+label,.app-navigation-entry-menu li>button>input.checkbox+label,.app-navigation-entry-menu li>a>input.radio+label,.app-navigation-entry-menu li>a>input.checkbox+label,.app-navigation-entry-menu li>.menuitem>input.radio+label,.app-navigation-entry-menu li>.menuitem>input.checkbox+label,.popovermenu li>button>input.radio+label,.popovermenu li>button>input.checkbox+label,.popovermenu li>a>input.radio+label,.popovermenu li>a>input.checkbox+label,.popovermenu li>.menuitem>input.radio+label,.popovermenu li>.menuitem>input.checkbox+label{padding:0 !important;width:100%}.bubble li>button>input.checkbox+label::before,.bubble li>a>input.checkbox+label::before,.bubble li>.menuitem>input.checkbox+label::before,.app-navigation-entry-menu li>button>input.checkbox+label::before,.app-navigation-entry-menu li>a>input.checkbox+label::before,.app-navigation-entry-menu li>.menuitem>input.checkbox+label::before,.popovermenu li>button>input.checkbox+label::before,.popovermenu li>a>input.checkbox+label::before,.popovermenu li>.menuitem>input.checkbox+label::before{margin:-2px 13px 0}.bubble li>button>input.radio+label::before,.bubble li>a>input.radio+label::before,.bubble li>.menuitem>input.radio+label::before,.app-navigation-entry-menu li>button>input.radio+label::before,.app-navigation-entry-menu li>a>input.radio+label::before,.app-navigation-entry-menu li>.menuitem>input.radio+label::before,.popovermenu li>button>input.radio+label::before,.popovermenu li>a>input.radio+label::before,.popovermenu li>.menuitem>input.radio+label::before{margin:-2px 12px 0}.bubble li>button>input:not([type=radio]):not([type=checkbox]):not([type=image]),.bubble li>a>input:not([type=radio]):not([type=checkbox]):not([type=image]),.bubble li>.menuitem>input:not([type=radio]):not([type=checkbox]):not([type=image]),.app-navigation-entry-menu li>button>input:not([type=radio]):not([type=checkbox]):not([type=image]),.app-navigation-entry-menu li>a>input:not([type=radio]):not([type=checkbox]):not([type=image]),.app-navigation-entry-menu li>.menuitem>input:not([type=radio]):not([type=checkbox]):not([type=image]),.popovermenu li>button>input:not([type=radio]):not([type=checkbox]):not([type=image]),.popovermenu li>a>input:not([type=radio]):not([type=checkbox]):not([type=image]),.popovermenu li>.menuitem>input:not([type=radio]):not([type=checkbox]):not([type=image]){width:150px}.bubble li>button form,.bubble li>a form,.bubble li>.menuitem form,.app-navigation-entry-menu li>button form,.app-navigation-entry-menu li>a form,.app-navigation-entry-menu li>.menuitem form,.popovermenu li>button form,.popovermenu li>a form,.popovermenu li>.menuitem form{display:flex;flex:1 1 auto;align-items:center}.bubble li>button form:not(:first-child),.bubble li>a form:not(:first-child),.bubble li>.menuitem form:not(:first-child),.app-navigation-entry-menu li>button form:not(:first-child),.app-navigation-entry-menu li>a form:not(:first-child),.app-navigation-entry-menu li>.menuitem form:not(:first-child),.popovermenu li>button form:not(:first-child),.popovermenu li>a form:not(:first-child),.popovermenu li>.menuitem form:not(:first-child){margin-inline-start:5px}.bubble li>button>span.hidden+form,.bubble li>button>span[style*="display:none"]+form,.bubble li>a>span.hidden+form,.bubble li>a>span[style*="display:none"]+form,.bubble li>.menuitem>span.hidden+form,.bubble li>.menuitem>span[style*="display:none"]+form,.app-navigation-entry-menu li>button>span.hidden+form,.app-navigation-entry-menu li>button>span[style*="display:none"]+form,.app-navigation-entry-menu li>a>span.hidden+form,.app-navigation-entry-menu li>a>span[style*="display:none"]+form,.app-navigation-entry-menu li>.menuitem>span.hidden+form,.app-navigation-entry-menu li>.menuitem>span[style*="display:none"]+form,.popovermenu li>button>span.hidden+form,.popovermenu li>button>span[style*="display:none"]+form,.popovermenu li>a>span.hidden+form,.popovermenu li>a>span[style*="display:none"]+form,.popovermenu li>.menuitem>span.hidden+form,.popovermenu li>.menuitem>span[style*="display:none"]+form{margin-inline-start:0}.bubble li>button input,.bubble li>a input,.bubble li>.menuitem input,.app-navigation-entry-menu li>button input,.app-navigation-entry-menu li>a input,.app-navigation-entry-menu li>.menuitem input,.popovermenu li>button input,.popovermenu li>a input,.popovermenu li>.menuitem input{min-width:34px;max-height:30px;margin:2px 0;flex:1 1 auto}.bubble li>button input:not(:first-child),.bubble li>a input:not(:first-child),.bubble li>.menuitem input:not(:first-child),.app-navigation-entry-menu li>button input:not(:first-child),.app-navigation-entry-menu li>a input:not(:first-child),.app-navigation-entry-menu li>.menuitem input:not(:first-child),.popovermenu li>button input:not(:first-child),.popovermenu li>a input:not(:first-child),.popovermenu li>.menuitem input:not(:first-child){margin-inline-start:5px}.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>button>form,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>button>input,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>a>form,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>a>input,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>form,.bubble li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>button>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>button>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>a>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>a>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>input,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>button>form,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>button>input,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>a>form,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>a>input,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>form,.popovermenu li:not(.hidden):not([style*="display:none"]):first-of-type>.menuitem>input{margin-top:7px}.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>button>form,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>button>input,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>a>form,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>a>input,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>form,.bubble li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>button>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>button>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>a>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>a>input,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>form,.app-navigation-entry-menu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>input,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>button>form,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>button>input,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>a>form,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>a>input,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>form,.popovermenu li:not(.hidden):not([style*="display:none"]):last-of-type>.menuitem>input{margin-bottom:0px}.bubble li>button,.app-navigation-entry-menu li>button,.popovermenu li>button{padding:0}.bubble li>button span,.app-navigation-entry-menu li>button span,.popovermenu li>button span{opacity:1}.popovermenu li>button>img,.popovermenu li>a>img,.popovermenu li>.menuitem>img{width:34px;height:34px}#contactsmenu .contact .popovermenu li>a>img{width:16px;height:16px}.app-content-list{position:-webkit-sticky;position:relative;top:0;border-inline-end:1px solid var(--color-border);display:flex;flex-direction:column;transition:transform 250ms ease-in-out;min-height:100%;max-height:100%;overflow-y:auto;overflow-x:hidden;flex:1 1 200px;min-width:200px;max-width:300px}.app-content-list .app-content-list-item{position:relative;height:68px;cursor:pointer;padding:10px 7px;display:flex;flex-wrap:wrap;align-items:center;flex:0 0 auto}.app-content-list .app-content-list-item>[class^=icon-],.app-content-list .app-content-list-item>[class*=" icon-"],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"]{order:4;width:24px;height:24px;margin:-7px;padding:22px;opacity:.3;cursor:pointer}.app-content-list .app-content-list-item>[class^=icon-]:hover,.app-content-list .app-content-list-item>[class^=icon-]:focus,.app-content-list .app-content-list-item>[class*=" icon-"]:hover,.app-content-list .app-content-list-item>[class*=" icon-"]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"]:focus{opacity:.7}.app-content-list .app-content-list-item>[class^=icon-][class^=icon-star],.app-content-list .app-content-list-item>[class^=icon-][class*=" icon-star"],.app-content-list .app-content-list-item>[class*=" icon-"][class^=icon-star],.app-content-list .app-content-list-item>[class*=" icon-"][class*=" icon-star"],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class^=icon-star],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class*=" icon-star"],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class^=icon-star],.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class*=" icon-star"]{opacity:.7}.app-content-list .app-content-list-item>[class^=icon-][class^=icon-star]:hover,.app-content-list .app-content-list-item>[class^=icon-][class^=icon-star]:focus,.app-content-list .app-content-list-item>[class^=icon-][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>[class^=icon-][class*=" icon-star"]:focus,.app-content-list .app-content-list-item>[class*=" icon-"][class^=icon-star]:hover,.app-content-list .app-content-list-item>[class*=" icon-"][class^=icon-star]:focus,.app-content-list .app-content-list-item>[class*=" icon-"][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>[class*=" icon-"][class*=" icon-star"]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class^=icon-star]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class^=icon-star]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-][class*=" icon-star"]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class^=icon-star]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class^=icon-star]:focus,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class*=" icon-star"]:hover,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"][class*=" icon-star"]:focus{opacity:1}.app-content-list .app-content-list-item>[class^=icon-].icon-starred,.app-content-list .app-content-list-item>[class*=" icon-"].icon-starred,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class^=icon-].icon-starred,.app-content-list .app-content-list-item>.app-content-list-item-menu>[class*=" icon-"].icon-starred{opacity:1}.app-content-list .app-content-list-item:hover,.app-content-list .app-content-list-item:focus,.app-content-list .app-content-list-item.active{background-color:var(--color-background-dark)}.app-content-list .app-content-list-item:hover .app-content-list-item-checkbox.checkbox+label,.app-content-list .app-content-list-item:focus .app-content-list-item-checkbox.checkbox+label,.app-content-list .app-content-list-item.active .app-content-list-item-checkbox.checkbox+label{display:flex}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label,.app-content-list .app-content-list-item .app-content-list-item-star{position:absolute;height:40px;width:40px;z-index:50}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:checked+label,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:hover+label,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:focus+label,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox.active+label{display:flex}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:checked+label+.app-content-list-item-icon,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:hover+label+.app-content-list-item-icon,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox:focus+label+.app-content-list-item-icon,.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox.active+label+.app-content-list-item-icon{opacity:.7}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label{top:14px;inset-inline-start:7px;display:none}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label::before{margin:0}.app-content-list .app-content-list-item .app-content-list-item-checkbox.checkbox+label~.app-content-list-item-star{display:none}.app-content-list .app-content-list-item .app-content-list-item-star{display:flex;top:10px;inset-inline-start:32px;background-size:16px;height:20px;width:20px;margin:0;padding:0}.app-content-list .app-content-list-item .app-content-list-item-icon{position:absolute;display:inline-block;height:40px;width:40px;line-height:40px;border-radius:50%;vertical-align:middle;margin-inline-end:10px;color:#fff;text-align:center;font-size:1.5em;text-transform:capitalize;object-fit:cover;user-select:none;cursor:pointer;top:50%;margin-top:-20px}.app-content-list .app-content-list-item .app-content-list-item-line-one,.app-content-list .app-content-list-item .app-content-list-item-line-two{display:block;padding-inline:50px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;order:1;flex:1 1 0px;cursor:pointer}.app-content-list .app-content-list-item .app-content-list-item-line-two{opacity:.5;order:3;flex:1 0;flex-basis:calc(100% - var(--default-clickable-area))}.app-content-list .app-content-list-item .app-content-list-item-details{order:2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px;opacity:.5;font-size:80%;user-select:none}.app-content-list .app-content-list-item .app-content-list-item-menu{order:4;position:relative}.app-content-list .app-content-list-item .app-content-list-item-menu .popovermenu{margin:0;inset-inline-end:-2px}.app-content-list.selection .app-content-list-item-checkbox.checkbox+label{display:flex}.button.primary.skip-navigation:focus-visible{box-shadow:0 0 0 4px var(--color-main-background) !important;outline:2px solid var(--color-main-text) !important}/*!
* SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors
* SPDX-FileCopyrightText: 2015 ownCloud Inc.
* SPDX-FileCopyrightText: 2015 Raghu Nayyar, http://raghunayyar.com
@@ -55,13 +55,13 @@
*/.toastify.dialogs{min-width:200px;background:none;background-color:var(--color-main-background);color:var(--color-main-text);box-shadow:0 0 6px 0 var(--color-box-shadow);padding:0 12px;margin-top:45px;position:fixed;z-index:10100;border-radius:var(--border-radius);display:flex;align-items:center;min-height:50px}.toastify.dialogs .toast-loader-container,.toastify.dialogs .toast-undo-container{display:flex;align-items:center;width:100%}.toastify.dialogs .toast-undo-button,.toastify.dialogs .toast-close{position:static;overflow:hidden;box-sizing:border-box;min-width:44px;height:100%;padding:12px;white-space:nowrap;background-repeat:no-repeat;background-position:center;background-color:transparent;min-height:0}.toastify.dialogs .toast-undo-button.toast-close,.toastify.dialogs .toast-close.toast-close{text-indent:0;opacity:.4;border:none;min-height:44px;margin-left:10px;font-size:0}.toastify.dialogs .toast-undo-button.toast-close::before,.toastify.dialogs .toast-close.toast-close::before{background-image:url("data:image/svg+xml,%3csvg%20viewBox='0%200%2016%2016'%20height='16'%20width='16'%20xmlns='http://www.w3.org/2000/svg'%20xml:space='preserve'%20style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2'%3e%3cpath%20d='M6.4%2019%205%2017.6l5.6-5.6L5%206.4%206.4%205l5.6%205.6L17.6%205%2019%206.4%2013.4%2012l5.6%205.6-1.4%201.4-5.6-5.6L6.4%2019Z'%20style='fill-rule:nonzero'%20transform='matrix(.85714%200%200%20.85714%20-2.286%20-2.286)'/%3e%3c/svg%3e");content:" ";filter:var(--background-invert-if-dark);display:inline-block;width:16px;height:16px}.toastify.dialogs .toast-undo-button.toast-undo-button,.toastify.dialogs .toast-close.toast-undo-button{margin:3px;height:calc(100% - 6px);margin-left:12px}.toastify.dialogs .toast-undo-button:hover,.toastify.dialogs .toast-undo-button:focus,.toastify.dialogs .toast-undo-button:active,.toastify.dialogs .toast-close:hover,.toastify.dialogs .toast-close:focus,.toastify.dialogs .toast-close:active{cursor:pointer;opacity:1}.toastify.dialogs.toastify-top{right:10px}.toastify.dialogs.toast-with-click{cursor:pointer}.toastify.dialogs.toast-error{border-left:3px solid var(--color-error)}.toastify.dialogs.toast-info{border-left:3px solid var(--color-primary)}.toastify.dialogs.toast-warning{border-left:3px solid var(--color-warning)}.toastify.dialogs.toast-success{border-left:3px solid var(--color-success)}.toastify.dialogs.toast-undo{border-left:3px solid var(--color-success)}.toastify.dialogs.toast-loading{border-left:3px solid var(--color-primary)}.toastify.dialogs.toast-loading .toast-loader{display:inline-block;width:20px;height:20px;animation:rotate var(--animation-duration, 0.8s) linear infinite;margin-left:auto}.theme--dark .toastify.dialogs .toast-close.toast-close::before{background-image:url("data:image/svg+xml,%3csvg%20viewBox='0%200%2016%2016'%20height='16'%20width='16'%20xmlns='http://www.w3.org/2000/svg'%20xml:space='preserve'%20style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2'%3e%3cpath%20d='M6.4%2019%205%2017.6l5.6-5.6L5%206.4%206.4%205l5.6%205.6L17.6%205%2019%206.4%2013.4%2012l5.6%205.6-1.4%201.4-5.6-5.6L6.4%2019Z'%20style='fill:%23fff;fill-rule:nonzero'%20transform='matrix(.85714%200%200%20.85714%20-2.286%20-2.286)'/%3e%3c/svg%3e")}.nc-generic-dialog .dialog__actions{justify-content:space-between;min-width:calc(100% - 12px)}/*!
* SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
- */._file-picker__file-icon_19mjt_9{width:32px;height:32px;min-width:32px;min-height:32px;background-repeat:no-repeat;background-size:contain;display:flex;justify-content:center}/*!
+ */._file-picker__file-icon_3v9zx_9{position:relative;width:32px;height:32px;min-width:32px;min-height:32px;background-repeat:no-repeat;background-size:contain;display:flex;justify-content:center}._file-picker__file-icon--primary_3v9zx_21{color:var(--color-primary-element)}._file-picker__file-icon-overlay_3v9zx_25{color:var(--color-primary-element-text);position:absolute;inset-block-start:10px}/*!
* SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/tr.file-picker__row[data-v-15187afc]{height:var(--row-height, 50px)}tr.file-picker__row td[data-v-15187afc]{cursor:pointer;overflow:hidden;text-overflow:ellipsis;border-bottom:none}tr.file-picker__row td.row-checkbox[data-v-15187afc]{padding:0 2px}tr.file-picker__row td[data-v-15187afc]:not(.row-checkbox){padding-inline:14px 0}tr.file-picker__row td.row-size[data-v-15187afc]{text-align:end;padding-inline:0 14px}tr.file-picker__row td.row-name[data-v-15187afc]{padding-inline:2px 0}@keyframes gradient-15187afc{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.loading-row .row-checkbox[data-v-15187afc]{text-align:center !important}.loading-row span[data-v-15187afc]{display:inline-block;height:24px;background:linear-gradient(to right, var(--color-background-darker), var(--color-text-maxcontrast), var(--color-background-darker));background-size:600px 100%;border-radius:var(--border-radius);animation:gradient-15187afc 12s ease infinite}.loading-row .row-wrapper[data-v-15187afc]{display:inline-flex;align-items:center}.loading-row .row-checkbox span[data-v-15187afc]{width:24px}.loading-row .row-name span[data-v-15187afc]:last-of-type{margin-inline-start:6px;width:130px}.loading-row .row-size span[data-v-15187afc]{width:80px}.loading-row .row-modified span[data-v-15187afc]{width:90px}/*!
* SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
-*/tr.file-picker__row[data-v-cb12dccb]{height:var(--row-height, 50px)}tr.file-picker__row td[data-v-cb12dccb]{cursor:pointer;overflow:hidden;text-overflow:ellipsis;border-bottom:none}tr.file-picker__row td.row-checkbox[data-v-cb12dccb]{padding:0 2px}tr.file-picker__row td[data-v-cb12dccb]:not(.row-checkbox){padding-inline:14px 0}tr.file-picker__row td.row-size[data-v-cb12dccb]{text-align:end;padding-inline:0 14px}tr.file-picker__row td.row-name[data-v-cb12dccb]{padding-inline:2px 0}.file-picker__row--selected[data-v-cb12dccb]{background-color:var(--color-background-dark)}.file-picker__row[data-v-cb12dccb]:hover{background-color:var(--color-background-hover)}.file-picker__name-container[data-v-cb12dccb]{display:flex;justify-content:start;align-items:center;height:100%}.file-picker__file-name[data-v-cb12dccb]{padding-inline-start:6px;min-width:0;overflow:hidden;text-overflow:ellipsis}.file-picker__file-extension[data-v-cb12dccb]{color:var(--color-text-maxcontrast);min-width:fit-content}.file-picker__header-preview[data-v-006fdbd0]{width:22px;height:32px;flex:0 0 auto}.file-picker__files[data-v-006fdbd0]{margin:2px;margin-inline-start:12px;overflow:scroll auto}.file-picker__files table[data-v-006fdbd0]{width:100%;max-height:100%;table-layout:fixed}.file-picker__files th[data-v-006fdbd0]{position:sticky;z-index:1;top:0;background-color:var(--color-main-background);padding:2px}.file-picker__files th .header-wrapper[data-v-006fdbd0]{display:flex}.file-picker__files th.row-checkbox[data-v-006fdbd0]{width:44px}.file-picker__files th.row-name[data-v-006fdbd0]{width:230px}.file-picker__files th.row-size[data-v-006fdbd0]{width:100px}.file-picker__files th.row-modified[data-v-006fdbd0]{width:120px}.file-picker__files th[data-v-006fdbd0]:not(.row-size) .button-vue__wrapper{justify-content:start;flex-direction:row-reverse}.file-picker__files th[data-v-006fdbd0]:not(.row-size) .button-vue{padding-inline:16px 4px}.file-picker__files th.row-size[data-v-006fdbd0] .button-vue__wrapper{justify-content:end}.file-picker__files th[data-v-006fdbd0] .button-vue__wrapper{color:var(--color-text-maxcontrast)}.file-picker__files th[data-v-006fdbd0] .button-vue__wrapper .button-vue__text{font-weight:normal}.file-picker__breadcrumbs[data-v-b357227a]{flex-grow:0 !important}.file-picker__side[data-v-b42054b8]{display:flex;flex-direction:column;align-items:stretch;gap:.5rem;min-width:200px;padding:2px;margin-block-start:7px;overflow:auto}.file-picker__side[data-v-b42054b8] .button-vue__wrapper{justify-content:start}.file-picker__filter-input[data-v-b42054b8]{margin-block:7px;max-width:260px}@media(max-width: 736px){.file-picker__side[data-v-b42054b8]{flex-direction:row;min-width:unset}}@media(max-width: 512px){.file-picker__side[data-v-b42054b8]{flex-direction:row;min-width:unset}.file-picker__filter-input[data-v-b42054b8]{max-width:unset}}.file-picker__navigation{padding-inline:8px 2px}.file-picker__navigation,.file-picker__navigation *{box-sizing:border-box}.file-picker__navigation .v-select.select{min-width:220px}@media(min-width: 513px)and (max-width: 736px){.file-picker__navigation{gap:11px}}@media(max-width: 512px){.file-picker__navigation{flex-direction:column-reverse !important}}.file-picker__view[data-v-20b719ba]{height:50px;display:flex;justify-content:start;align-items:center}.file-picker__view h3[data-v-20b719ba]{font-weight:bold;height:fit-content;margin:0}.file-picker__main[data-v-20b719ba]{box-sizing:border-box;width:100%;display:flex;flex-direction:column;min-height:0;flex:1;padding-inline:2px}.file-picker__main *[data-v-20b719ba]{box-sizing:border-box}[data-v-20b719ba] .file-picker{height:min(80vh,800px) !important}@media(max-width: 512px){[data-v-20b719ba] .file-picker{height:calc(100% - 16px - var(--default-clickable-area)) !important}}[data-v-20b719ba] .file-picker__content{display:flex;flex-direction:column;overflow:hidden}/*!
+*/tr.file-picker__row[data-v-4892c2a0]{height:var(--row-height, 50px)}tr.file-picker__row td[data-v-4892c2a0]{cursor:pointer;overflow:hidden;text-overflow:ellipsis;border-bottom:none}tr.file-picker__row td.row-checkbox[data-v-4892c2a0]{padding:0 2px}tr.file-picker__row td[data-v-4892c2a0]:not(.row-checkbox){padding-inline:14px 0}tr.file-picker__row td.row-size[data-v-4892c2a0]{text-align:end;padding-inline:0 14px}tr.file-picker__row td.row-name[data-v-4892c2a0]{padding-inline:2px 0}.file-picker__row--selected[data-v-4892c2a0]{background-color:var(--color-background-dark)}.file-picker__row[data-v-4892c2a0]:hover{background-color:var(--color-background-hover)}.file-picker__name-container[data-v-4892c2a0]{display:flex;justify-content:start;align-items:center;height:100%}.file-picker__file-name[data-v-4892c2a0]{padding-inline-start:6px;min-width:0;overflow:hidden;text-overflow:ellipsis}.file-picker__file-extension[data-v-4892c2a0]{color:var(--color-text-maxcontrast);min-width:fit-content}.file-picker__header-preview[data-v-4f5d2a56]{width:22px;height:32px;flex:0 0 auto}.file-picker__files[data-v-4f5d2a56]{margin:2px;margin-inline-start:12px;overflow:scroll auto}.file-picker__files table[data-v-4f5d2a56]{width:100%;max-height:100%;table-layout:fixed}.file-picker__files th[data-v-4f5d2a56]{position:sticky;z-index:1;top:0;background-color:var(--color-main-background);padding:2px}.file-picker__files th .header-wrapper[data-v-4f5d2a56]{display:flex}.file-picker__files th.row-checkbox[data-v-4f5d2a56]{width:44px}.file-picker__files th.row-name[data-v-4f5d2a56]{width:230px}.file-picker__files th.row-size[data-v-4f5d2a56]{width:100px}.file-picker__files th.row-modified[data-v-4f5d2a56]{width:120px}.file-picker__files th[data-v-4f5d2a56]:not(.row-size) .button-vue__wrapper{justify-content:start;flex-direction:row-reverse}.file-picker__files th[data-v-4f5d2a56]:not(.row-size) .button-vue{padding-inline:16px 4px}.file-picker__files th.row-size[data-v-4f5d2a56] .button-vue__wrapper{justify-content:end}.file-picker__files th[data-v-4f5d2a56] .button-vue__wrapper{color:var(--color-text-maxcontrast)}.file-picker__files th[data-v-4f5d2a56] .button-vue__wrapper .button-vue__text{font-weight:normal}.file-picker__breadcrumbs[data-v-ec4d392b]{flex-grow:0 !important}.file-picker__side[data-v-f5975252]{display:flex;flex-direction:column;align-items:stretch;gap:.5rem;min-width:200px;padding:2px;margin-block-start:7px;overflow:auto}.file-picker__side[data-v-f5975252] .button-vue__wrapper{justify-content:start}.file-picker__filter-input[data-v-f5975252]{margin-block:7px;max-width:260px}@media(max-width: 736px){.file-picker__side[data-v-f5975252]{flex-direction:row;min-width:unset}}@media(max-width: 512px){.file-picker__side[data-v-f5975252]{flex-direction:row;min-width:unset}.file-picker__filter-input[data-v-f5975252]{max-width:unset}}.file-picker__navigation{padding-inline:8px 2px}.file-picker__navigation,.file-picker__navigation *{box-sizing:border-box}.file-picker__navigation .v-select.select{min-width:220px}@media(min-width: 513px)and (max-width: 736px){.file-picker__navigation{gap:11px}}@media(max-width: 512px){.file-picker__navigation{flex-direction:column-reverse !important}}.file-picker__view[data-v-552cc2f5]{height:50px;display:flex;justify-content:start;align-items:center}.file-picker__view h3[data-v-552cc2f5]{font-weight:bold;height:fit-content;margin:0}.file-picker__main[data-v-552cc2f5]{box-sizing:border-box;width:100%;display:flex;flex-direction:column;min-height:0;flex:1;padding-inline:2px}.file-picker__main *[data-v-552cc2f5]{box-sizing:border-box}[data-v-552cc2f5] .file-picker{height:min(80vh,800px) !important}@media(max-width: 512px){[data-v-552cc2f5] .file-picker{height:calc(100% - 16px - var(--default-clickable-area)) !important}}[data-v-552cc2f5] .file-picker__content{display:flex;flex-direction:column;overflow:hidden}.public-auth-prompt__text[data-v-143ac1fb]{font-size:1.25em;margin-block:0 calc(3*var(--default-grid-baseline))}.public-auth-prompt__header[data-v-143ac1fb]{margin-block:0 calc(3*var(--default-grid-baseline))}.public-auth-prompt__header[data-v-143ac1fb]:first-child{margin-top:0}.public-auth-prompt__input[data-v-143ac1fb]{margin-block:calc(4*var(--default-grid-baseline)) calc(2*var(--default-grid-baseline))}/*!
* SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/#body-public{--footer-height: calc(2lh + 2 * var(--default-grid-baseline))}#body-public .header-end #header-primary-action a{color:var(--color-primary-element-text)}#body-public .header-end #header-secondary-action ul li{min-width:270px}#body-public .header-end #header-secondary-action #header-actions-toggle{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0);filter:var(--background-invert-if-dark)}#body-public .header-end #header-secondary-action #header-actions-toggle:hover,#body-public .header-end #header-secondary-action #header-actions-toggle:focus,#body-public .header-end #header-secondary-action #header-actions-toggle:active{opacity:1}#body-public .header-end #header-secondary-action #external-share-menu-item form{display:flex}#body-public .header-end #header-secondary-action #external-share-menu-item .hidden{display:none}#body-public .header-end #header-secondary-action #external-share-menu-item #save-button-confirm{flex-grow:0}#body-public #content{min-height:var(--body-height, calc(100% - var(--footer-height)));padding-block-end:var(--footer-height)}#body-public #app-content-vue{padding-block-end:var(--footer-height)}#body-public.layout-base #content{padding-top:0}#body-public p.info{margin:20px auto;text-shadow:0 0 2px rgba(0,0,0,.4);-moz-user-select:none;-ms-user-select:none;user-select:none}#body-public p.info,#body-public form fieldset legend,#body-public #datadirContent label,#body-public form fieldset .warning-info,#body-public form input[type=checkbox]+label{text-align:center}#body-public footer{position:fixed;bottom:var(--body-container-margin);background-color:var(--color-main-background);border-radius:var(--body-container-radius);box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;width:calc(100% - 2*var(--body-container-margin));margin-inline:var(--body-container-margin);padding-block:var(--default-grid-baseline)}#body-public footer .footer__legal-links{margin-block-end:var(--default-grid-baseline)}#body-public footer p{text-align:center;color:var(--color-text-maxcontrast);margin-block:0 var(--default-grid-baseline);width:100%}#body-public footer p a{display:inline-block;font-size:var(--default-font-size);font-weight:bold;line-height:var(--default-line-height);height:var(--default-line-height);color:var(--color-text-maxcontrast);white-space:nowrap}/*# sourceMappingURL=server.css.map */
diff --git a/core/css/server.css.map b/core/css/server.css.map
index fb5b5da31d0..d7220b36198 100644
--- a/core/css/server.css.map
+++ b/core/css/server.css.map
@@ -1 +1 @@
-{"version":3,"sourceRoot":"","sources":["server.scss","icons.scss","variables.scss","styles.scss","inputs.scss","functions.scss","header.scss","apps.scss","global.scss","fixes.scss","mobile.scss","tooltip.scss","../../node_modules/@nextcloud/dialogs/dist/style.css","public.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCwHQ,8BCtHR;AAAA;AAAA;AAAA,GCMA,MACC,mCACA,uCAGD,yQACC,SACA,UACA,SACA,oBACA,eACA,oBACA,wBACA,eACA,uCAGD,6CACC,aAID,0CACC,wDACA,aAGD,UACC,YAEA,8BAGD,6DACC,cAGD,MACC,yBACA,iBACA,mBAGD,cACC,iBACA,mBAGD,YACC,sBAGD,EACC,SACA,6BACA,qBACA,eACA,IACC,eAIF,WACC,aACA,0BAGD,MACC,eACA,QACC,eAIF,0BACC,eAGD,GACC,gBAGD,KACC,mBAEA,mCACA,uCACA,6BACA,6BAGD,mBACC,kBAGD,qBACC,kBACA,sBACA,qBACA,2BACA,2DACA,uBAGD,iBACC,qBACA,aACA,gCAGD,eACC,YACA,aAGD,cACC,eACA,MACA,SACA,qBACA,YACA,WACA,aACA,kBACA,gDACA,wCACA,iBACA,eACA,kBACC,cACA,kBACA,UACA,QACA,gBAED,gBACC,wCACA,sDACA,4CACC,6CAOH,oBACC,WACA,YAGD,2BACC,+BAGD,gCACC,+BAGD,0BACC,kCACA,yCACA,+BACA,4BAMD,YACC,8CACA,wCAMD,kBACC,sBAKD,4BAEC,oCACA,kBACA,gBACA,WACA,sDACC,gBAED,sEACC,gBAED,kCACC,mBAED,oHAEC,qBACA,YACA,WACA,mBACA,gcAEC,WAOH,sBACC,WASD,oCACC,kBACA,yBACA,sBACA,qBACA,iBAID,kBAEC,kBACA,qBACA,SAEA,YAGD,8CAGC,WAGD,8BACC,sBACA,oBACA,wBACA,wBAGD,2EACC,WAGD,oGACC,kDACA,UACA,qBAGD,mDACC,6BACA,YACA,WACA,yCACA,4BACA,2BACA,WAOA,qEACC,UAED,qEACC,UAIF,wEACC,aAGD,2CACC,wBAGD,yBACC,kBACA,qBACA,sBAGD,qBACC,cACA,mBACA,iBACA,uBACA,aAKD,4CACC,eACA,YACA,mCACA,6BACA,qDAIA,2BACC,4BAKD,wBACC,sBACA,4BACA,+BACC,2CACA,qBACA,kBAGF,0BACC,qBACA,iBAIF,YACC,YACA,sCACA,oBACC,sBAIF,eACC,2CAUD,mBACC,kBACA,cACA,2BACC,kBACA,cAIF,UACC,gBAGD,8CACC,UAIA,WACC,WACA,YAGD,8CAEC,UAGD,oGAGC,WAIF,mBACC,WACA,kBACA,QAEA,kDACC,UAKD,kDACC,UAIF,eACC,WAEA,0CACC,UAKD,uGACC,8CAIF,KACC,mFAGD,OACC,gBACA,YACA,eACA,qBACA,UACC,qBAIF,2FACC,gBACA,uBAGD,2BACC,yDAGD,2BACC,6DAID,yBACC,gBACA,gBACA,WACA,mCACA,YACA,wBAEA,sKAGC,+BACA,mBAED,2CACC,YACA,eACA,YACA,8CACA,6BAEA,gEACC,cACA,mBAED,oDACC,WAEA,4JAEC,kCACA,4BAGF,oEACC,UAID,oDACC,mBACA,gCACA,WACA,WACA,YAED,0DACC,yBAGA,+FACC,gDAGD,wOAGC,8CACA,wCACA,iBAGD,yNAEC,gCACA,WAOH,4FACC,iDAED,4FACC,gDAKD,4FACC,gDAED,4FACC,iDAIF,wCACC,gCACA,wCAKD,yBACC,2BACA,sBACA,mCACA,wBAEA,4CACC,uBAGD,sKAGC,+BACA,mBAED,2CACC,YACA,eACA,YACA,8CACA,6BAEA,gEACC,cACA,mBAIF,qFACC,yBAGA,iDACC,mBACA,gCACA,WACA,yDACC,UACA,WACA,iBAGF,uDACC,yBAGA,0TAIC,8CACA,wCACA,iBAGD,4FACC,gCAGD,qEACC,gDASH,oGACC,aACA,iBACA,8BACA,0GACC,cACA,SACA,YACA,YACA,WACA,aACA,mBACA,uBACA,8GACC,kBACA,kBACA,mBACA,6BACA,cACA,iBACA,WACA,YACA,YACA,eAOJ,WACC,0BAGD,aACC,WACA,sBACA,oBAKD,YACC,kCAMA,qBACC,WACA,aAED,wBACC,cACA,gDACA,WACA,aAED,2BACC,WACA,YACA,6BACC,WAGF,wBACC,wCACA,kBACA,mBACA,gBACA,uBACA,0CACA,kCACA,6DACC,0CAGF,sBACC,UACA,WAKF,YACC,oBACA,YAGD,SACC,oBACA,kDACA,4BACA,iCACA,YACA,0BACA,cACA,QACA,uBACA,mBACC,QACA,kBACA,qBACC,WAIA,wFACC,cAIF,gCACC,SACA,sBACA,mCACC,iBACA,gBACA,kBACA,uBACA,+DACC,+EAGF,+CACC,aAIH,gBACC,aACA,uBACC,QAGF,yBAEC,kBACA,aACA,WACA,uBACA,mBACA,gBACA,cAEA,gBAEA,8FAGC,oBAGF,yBACC,UACA,WAGD,oBACC,iBACA,uBAEA,2BACC,uBAGF,+DACC,UAEA,0JAEC,WAOH,QACC,UACA,yCACA,sCACA,qCACA,oCACA,iCACA,oBACC,UAOD,+CACC,SACA,kBAED,mDACC,gBAKF,cACC,mBAMD,mBACC,aACA,QACA,SACA,UCz0BD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAUA,kFACC,6BAGD,uGACC,wCAGD,sDACC,kCAMD,iHAUC,YACA,yCACA,sBAYA,oFACC,eACA,oCACA,sCACA,QA/BiB,GAmCnB,wBACC,aAID,yJAUC,iBACA,8CACA,6BACA,0CACA,mCACA,aACA,mCACA,YACA,uYACC,WACA,sBAOC,kxDAIC,oCACA,aAED,gmBACC,aACA,8CACA,6BAGF,maACC,6DACA,oDAGF,wNACC,8CACA,6BACA,eACA,WAED,wNACC,gBAED,oPACC,mDAGD,iNACC,8CACA,0CACA,wCACA,eAGA,kvBAEC,+CAIA,mjCAGC,oDACA,gDAED,gwBAEC,4CAED,2WACC,6CAGF,gRAEC,8CACA,6CACA,eAKH,2BACC,WACA,sBACA,gBACA,eACA,gDACA,aACA,mCAEA,8CACA,oCACA,eACA,WAKA,4KACC,6BACA,0BACA,qBAEA,qCAED,0EAIC,YACA,WAID,kBACC,WACA,cACA,gBACA,WACA,eAED,mBACC,SACA,QAED,iBACC,cAKF,6GASC,2FACA,mCACA,WACA,yCACA,eACA,sBACA,8CACA,oDACA,YAEA,kSAEC,0DAGD,mKACC,eAIF,qMAcC,WACA,sBACA,eACA,mCACA,8CACA,6BACA,iDACA,YACA,aACA,yCACA,uBACA,eACA,+0BACC,8CACA,kDAED,yRACC,YAIF,mCACC,8CACA,6BAGD,mCACC,aACA,YAID,OACC,iDACA,gBACA,8CACA,mCAGD,qBACC,qCAGD,qBACC,oCASA,2DACC,eAIA,sFACC,eAMH,sGAQC,iBACA,2CAGA,gMACC,SAGD,oIACC,+CACA,2CACA,sBACA,kKACC,qDACA,+CAaD,4MAEC,qBACA,2BACA,WASF,kGACC,qCACA,mDACA,mFACA,iBACA,4BAEA,yDACA,UACA,qCACA,oCACA,gBACA,eACA,oBACA,6HACC,eCzUF,+CDiVE,yOACC,gCAID,4qBAGC,qDACA,8CACA,6vBACC,uDAQH,+VACC,qDACA,mDAEA,UAOH,uBAEC,eAGD,2BAEC,mBASA,4GAEC,kBACA,4BACA,SACA,UACA,WACA,gBACA,oIACC,iBAED,4WAEC,eAED,gKACC,WACA,qBACA,OAvBmB,KAwBnB,MAxBmB,KAyBnB,sBACA,kBACA,aACA,sBACA,+CAED,oeAEC,0CAED,4LACC,oBACA,qCACA,kBACA,mBAED,4bAIC,8DACA,8CACA,0CAED,oMACC,+CACA,0DAED,oOACC,+CAID,gJACC,qBACA,yBAED,oMACC,cA/DmB,KAmEpB,mFACC,kBACA,OArEmB,KAsEnB,MAtEmB,KAuEnB,2BACA,2BAED,mGACC,yDAED,+GACC,0DAOD,gZAEC,2BAED,wUACC,aAzF0B,KA2F3B,4NACC,8DACA,+BACA,2BAED,gOACC,0CACA,2CAED,gQACC,8DACA,2CACA,+BAID,8OAEC,0CACA,6BACA,+DAED,6HACC,gEAED,mHACC,WAMH,iBACC,gBACA,8CACA,qCACC,sCAED,yBACC,qBACA,sBACA,sBACA,6BACC,eAGF,uCACC,gBACA,wDACA,yCAED,kCACC,iBACA,SACA,UACA,wDACC,mBACA,gBACA,uBACA,6DACC,eACA,gEACC,eACA,iBAIH,6JAGC,kBACA,kBACA,aACA,+BACA,eACA,oCAGA,mEACC,8CAGF,uDACE,8CACA,6BAKJ,qDACC,4CAGD,qDACC,2CAKA,oGAEC,eAKD,mHAEC,gBACA,mBACA,uBACA,wCACA,+CACA,uBACA,yCACA,0CACA,SACA,YACA,gBACA,6IACC,0CAED,iKACC,iBACA,yBACA,stBAIC,sBACA,8CACA,oCACA,0CAED,2NACC,aAGF,2KACC,iBACA,gBACA,gBACA,6BACA,yMACC,2BAMJ,sBACC,WACA,sBACA,+DACC,aACA,eACA,kEACC,WAGF,uCACC,gBACA,mBACA,uBACA,wCACA,+CACA,uBACA,yCACA,0CACA,SACA,iBACA,gBACA,oDACC,0CAED,8DACC,iBACA,yBACA,sBACA,8CACA,0CACA,2FACC,aAED,8JAEC,qCACA,iCAGF,sDACC,gBACA,gBACA,YACA,wDACC,mEACA,WAGF,2LAGC,WAED,mEACC,iBAMH,UACC,WACA,sBACA,qBACA,2BACC,wBACA,eACA,yCACC,iBACA,yBACA,sBACA,8CACA,oCACA,0CACA,oBACA,mBACA,gDACC,wBAIH,yBACC,UACA,4BACC,YACA,kBACA,kBACA,+BACA,eACA,oCACA,8BACC,mBACA,gBACA,uBACA,YACA,sBACA,uBACA,SACA,eACA,eACA,2BACA,yBACA,sBACA,qBACA,iBACA,oBACA,mBACA,0CACA,yBACA,sCACC,YACA,4CACA,4BACA,2BACA,eACA,gBACA,cACA,WACA,sBACA,kBAGF,sCACC,6BAED,qCACC,8CACA,6BACA,6CACC,mBAQL,mBACC,cACA,WACA,UACA,cACA,8CACA,mCACA,gBACA,WACA,gBAEC,2CACC,8BAED,gDACC,8BAGF,yCACC,yBAED,sCACC,mCACA,wCACA,iCAED,2CACC,mCACA,wCACA,iCAKF,iBACC,QAEC,0BAED,QAEC,yBAED,YAGC,0BAED,QAEC,0BAIF,OACC,qBACA,uBACA,mCAKD,cACC,kBACA,4BACA,aACA,UACA,WACA,gBAWD,cAJC,oCACA,mCAOD,wBARC,oCACA,mCAWD,4BAZC,oCACA,mCEl3BD;AAAA;AAAA;AAAA;AAAA,GAQA,mBAEC,yBACA,sBACA,qBACA,iBAEA,2QAGC,aAEA,qTACC,YACA,kBACA,oBACA,2BACA,WACA,WACA,kBACA,oDACA,uBACA,UAIF,2CAEC,uDAEA,0OACC,WAGD,2HACC,uBAOH,+DAGC,oBACA,kBACA,MACA,WACA,aACA,OJiCe,KIhCf,sBACA,8BAID,WACC,cACA,0BACA,kBACA,wBACA,sBACA,UACA,mBACA,aACA,eACA,gBACA,WAEA,mCACC,UAaD,8BACC,8CACA,sDACA,yCACA,sBACA,aACA,kBACA,gBAfD,gBACA,oCAgBC,qBACA,IJVc,KIWd,SACA,gBAEA,gDACC,aAID,oCACC,gCACA,iDACA,YACA,YACA,SACA,QACA,kBACA,oBACA,sBAGD,mEAEC,iCAzCF,gBACA,oCA4CA,cACC,oBACA,yFACA,4BACA,wBACA,2BACA,WACA,kBACA,wBACA,QACA,WAEA,gFAGD,kCACC,aACA,wBACA,cAGD,oFAEC,oBACA,mBAGD,4CACC,SACA,mBACA,YAGD,wCACC,yBACA,cAKA,8CACC,gDAED,iDAEC,YACA,kBACA,yEACC,aACA,uBACA,mBACA,MJxFY,KIyFZ,YACA,eACA,YACA,UACA,aAEA,qFACC,UAGD,qGACC,aASL,0CACC,YAKD,gBACC,yCACA,eACA,iBACA,SACA,UACA,uBACA,gBACA,uBAEA,cAGD,aACC,aACA,sBACA,gBAGD,cACC,gBACA,uBAGD,kBACC,yCACA,kBACA,gBACA,eACA,iBACA,gBACA,uBAID,cACC,kBACA,gBACA,aACA,WACA,uBACA,aACA,aACA,eACA,SAEA,2BACC,IJlKc,KIyKf,gDACC,mBACA,eAED,gJAEC,qBACA,YACA,WF5QF;AAAA;AAAA;AAAA;AAAA,GHQA,iCACC,4BACA,2BACA,eACA,gBAGD,iBACC,kDAID,sGAMC,kBACA,0IACC,UACA,WACA,YACA,WACA,uBACA,kBACA,QACA,uBACA,mBACA,6CACA,qCACA,gCACA,4BACA,wBACA,4CACA,2CAEA,wCAEA,gYAGC,uCAKH,wDAEC,2CACA,4CAGD,yDAEC,YACA,WACA,qBAKA,yJACC,2CAED,iMACC,gDAED,yMACC,iDAED,iPACC,sDAIF,kBACC,KACC,uBAED,GACC,0BAIF,SACC,gCAGD,yKAQC,wDGzGD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GGSA,sCAEC,MACC,wCACA,yCAKF,KACC,WACA,YACA,kBAEA,6EAGD,KAEC,6EAEA,yCACA,sBACA,2BACA,eACA,WACA,iDAKD,eAKC,gBACA,gBACA,gBACA,mBACA,6BAGD,GACC,gBAGD,GACC,gBAGD,GACC,gBAGD,GACC,iBAGD,GACC,gBAID,GACC,kBACA,oCAGD,GACC,eAGD,MAEC,qBACA,aACA,uBAGD,GACC,YACA,mBACA,eAGD,IACC,iBACA,sBACA,kCACA,mCACA,qBACA,mBAMD,wBACC,sBAKD,0BAEC,gGACA,MLxBkB,MKyBlB,YACA,gBACA,kBACA,mDACA,8CACA,+EACA,gBACA,YACA,sBACA,qBACA,iBACA,aACA,sBACA,YACA,cAEA,kDACC,iBACA,0CACA,2EACA,mBACA,uBACA,2BACA,iBACA,oBACA,yBAQD,gGACC,cACA,6CACA,8GACC,qBACA,WACA,aACA,0BACA,iBACA,SAIF,8DACC,kBAED,8DACC,kBACA,YACA,WACA,kBACA,gBACA,sBACA,aACA,sBACA,6CACA,iBAEA,oFACC,oDAGD,oEACC,oBACA,eACA,QACA,cACA,SACA,kBACA,WACA,2CAGA,kFACC,QACA,4GACC,2BAIF,gIAEC,8DAED,0HAIC,0EAKA,wVAEC,+CAGF,oGACC,kDACA,yCAMA,gsBAEC,8CACA,wCAEA,g8BACC,qCAMH,sHACC,wBACA,SAMA,kNAEC,aAKF,0EACC,cACA,WACA,kBACA,gFACC,oBACA,eACA,mDACA,WACA,kBAIC,wXAEC,2CACA,+CAKD,gZAEC,2CACA,oDACA,ghBACC,qCAMH,kIACC,yDAGD,4IAEC,wBACA,0BAGD,sIAEC,wBAGA,6EAMJ,oJAEC,kBACA,sBAGC,4jBAGC,oCAIF,4JACC,0BACA,4BACA,cACA,8BACA,0CACA,yCACA,gBACA,oDACA,gBACA,sBACA,mBACA,uBACA,2CACA,6BACA,aACA,YAGA,4KACC,gBACA,kDACA,wOACC,gBACA,6DAGF,4NACC,kEACA,WACA,YAEA,wCAID,4QACC,qBAEA,4ZACC,gCAKH,wQACC,kBACA,cACA,YACA,WACA,YACA,YACA,kBACA,eACA,wCAEA,gRAEC,oCAKF,gQACC,kCAID,gSACC,UACA,YAED,4SACC,wBACA,YAIH,sEACC,aAMD,4YAEC,SACA,WACA,+BACA,4BACA,2BACA,w0BAEC,+BACA,UAUD,sGACC,UACA,kBACA,oCACA,qCACA,SACA,YAIA,qBAEA,kIACC,UACA,eACA,wDACA,gBAGF,gGACC,kBACA,qCACA,oCACA,SACA,UACA,gBFjZF,6CEmZE,qBACA,4BACA,2BACA,YACA,wBACA,gBACA,YACA,UACA,iCACA,6BACA,yBACA,YACA,kBACA,qCAMD,8GACC,mDAIA,wNACC,UAED,oMACC,sBAED,gTACC,oCAID,0GACC,4BACA,wBACA,oBAQH,gHACC,cACA,sHACC,wBACA,mBACA,yBAED,sHACC,+CACA,qCAED,8HACC,YACA,WACA,SACA,gBAIA,oSFpdF,uCEudE,obAEC,+BACA,UAGF,wLACC,gBACA,eACA,cACA,0CACA,eAEA,gNACC,UACA,kBACA,0NACC,gBACA,mBACA,8CACA,wCASJ,8GACC,mBACA,cACA,uBACA,qCACA,UACA,kBACA,8CACA,WACA,8OAEC,oBACA,WAED,0HACC,YACA,oBACA,YACA,4QAGC,UAGF,gJACC,WACA,YACA,wBACA,0BAED,wRAEC,WACA,YACA,cACA,4VACC,2BAED,gWACC,yBAED,oUACC,2CACA,6CACA,0BACA,4BAQH,oHACC,oBACA,mDACA,4BACA,wMACC,kBACA,mBACA,uBACA,gBACA,aACA,0CAED,8LACC,SACA,qCACA,oCACA,0CACA,oZAEC,UAQH,kOAEC,uBACA,2FAGA,kBACA,qBACA,8CACA,sBAMD,sFACC,gDACA,wCACA,oBAGD,sEACC,yBAGD,0OAEC,qBASA,0IACC,qCAGD,gHACC,qCAEA,wKACC,YASF,0IACC,sCAGD,gHACC,sCAEA,wKACC,WAOJ,SACC,sBACA,gBACA,oCACA,gBACA,UACA,aACA,kDACA,0BACA,2CACA,cAEA,kCACC,eAIF,2CACC,SACC,qDACA,mDAED,gBACC,qDAED,aACC,oDAcF,aACC,aACA,8CACA,iBACA,cACA,iBACA,YAGA,kCACC,gBAID,kCACC,aACA,kBACA,oBAGA,gBAGA,uDAEC,eACA,mFACC,aAKH,uCACC,oCASF,aACC,WACA,UL/qBmB,MKgrBnB,UL/qBmB,MKgrBnB,cACA,wBACA,gBACA,ILtrBe,KKurBf,mBACA,gBACA,kBACA,aACA,aACA,0BACA,wCACA,kDACA,cAEA,uBACC,aAOF,cAEC,gBAGC,oFACC,cAKH,sBACC,aACA,6CACA,cACA,0DAEA,iBACA,gBACA,sBAGA,uCACC,UAGD,iCACC,sBACA,sBACA,gCAOE,4NACC,qBACA,WACA,cAOL,qBACC,sBACA,+BACA,gBACA,oDACA,6CACA,cAEA,sCACC,aACA,mBACA,qCACA,WACA,UACA,SACA,+BACA,gBACA,SACA,oDACA,iBACA,mBACA,eACA,WAGA,6BAEA,6CACC,yCACA,8CACA,eAED,wFAEC,+CAGD,8CACC,2CACA,4BACA,WACA,oCACA,qCACA,MACA,qBACA,cAGD,oDACC,mEAOF,4DACC,qCAED,kEACC,qCAKD,4DACC,sCAED,kEACC,sCAIF,SACC,cACA,aACA,mBACA,gBACC,wBAIA,yDAEC,oBACA,sBAKH,aACC,kBACA,gBACA,yBACA,mBAGD,QACC,UACA,yCACA,sCACA,qCACA,oCACA,iCACA,oBACC,UAKF,YACC,aACA,mBAEA,uBACC,aACA,sBACA,YACA,kBACA,mBACA,gBACA,uBACA,eACA,gCACA,kBACA,YAEA,8BACC,aAID,mCACC,0BAED,kCACC,wBAGD,6BACC,qBACA,WACA,YACA,qBACA,sBACA,gBACA,sBACA,WACA,eAGD,yBACC,gCACA,kBACA,gBACA,uBAED,gCACC,iBAED,0FAGC,kBACA,6BACA,kDAMF,oBACC,oBAKF,6BACC,WAGD,6BACC,YASA,0JAGC,wCAIA,2LACC,YAKH,gDAGC,kBACA,8CACA,6BACA,yCACA,YACA,YACA,WACA,gBACA,mBACA,sDACA,aACA,mBAEA,kEACC,YAKA,qBAEA,2BACA,YACA,SACA,QACA,kBACA,oBACA,iDACA,iBAGD,oFACC,0BACA,qBACA,oBACA,sGACC,qBACA,0BAIF,8EACC,oBACA,oBACA,gGACC,sBAIF,+DACC,cAGD,+GACC,SAGD,yDAEC,wBACA,sBAED,yDACC,aACA,cAEA,8EACC,aAGD,oOAGC,eACA,YA/FkB,KAgGlB,SACA,yCACA,+BACA,aACA,uBACA,YACA,SACA,mBACA,gBACA,WACA,6BACA,mBAEA,whDAIC,YACA,aACA,+BACA,gBAnHe,KAqHhB,yzBAIC,yBAOC,gvGACC,oBAlIe,KAsIlB,+tBAEC,gCAED,ojBAEC,+CAED,4nBAEC,kDAED,mSACC,2CACA,oDAGD,mSACC,2BAED,iRACC,eACA,mBAED,sPACC,YACA,kBACA,cACA,mBAED,mSACC,SACA,wBAGD,gVACC,kCAID,wQACC,MA9Ke,KA+Kf,YAGD,uyBAEC,qBACA,WAED,yeACC,mBAED,8cACC,mBAED,2xBACC,YAED,iRACC,aACA,cAGA,mBACA,mbACC,wBAIF,04BAEC,sBAGD,0RACC,UAlNiB,KAmNjB,gBACA,aACA,cAEA,4bACC,wBAQA,2hDACC,eAMD,ygDACC,kBAKJ,8EACC,UACA,6FACC,UAcD,+EACC,MA/PiB,KAgQjB,OAhQiB,KAyQlB,6CACC,WACA,YAOJ,kBACC,wBACA,kBACA,MACA,gDACA,aACA,sBACA,uCACA,gBACA,gBACA,gBACA,kBACA,eACA,UL5sCgB,MK6sChB,UL5sCgB,MK+sChB,yCACC,kBACA,YACA,eACA,iBACA,aACA,eACA,mBACA,cAKC,8RAEC,QACA,WACA,YACA,YACA,aACA,WACA,eACA,4mBAEC,WAED,wtBAEC,WACA,ghDAEC,UAIF,kVACC,UAKH,8IAGC,8CAEA,2RACC,aAIF,6JAEC,kBACA,YACA,WACA,WAQC,2XAEC,aAEA,2eACC,WAIH,wFACC,SACA,uBAEA,aACA,gGACC,SAGD,oHACC,aAKH,qEACC,aACA,SACA,wBACA,qBACA,YACA,WACA,SACA,UAGD,qEACC,kBACA,qBACA,YACA,WACA,iBACA,kBACA,sBACA,uBACA,WACA,kBACA,gBACA,0BACA,iBACA,iBACA,eACA,QACA,iBAGD,kJAEC,cACA,yBACA,mBACA,gBACA,uBACA,QACA,aACA,eAGD,yEACC,WACA,QACA,SACA,sDAGD,wEACC,QACA,mBACA,gBACA,uBACA,gBACA,WACA,cACA,iBAGD,qEACC,QACA,kBACA,kFACC,SAGA,sBAIH,2EACC,aAIF,8CACC,6DACA,oDCt9CD;AAAA;AAAA;AAAA;AAAA;AAAA,GAcC,mDAEC,WAGD,kDAEC,YAGD,qDAEC,WAGD,oDAEC,YAKD,mDAEC,YAGD,kDAEC,WAGD,qDAEC,YAGD,oDAEC,WAIF,YACC,WAGD,QACC,aAGD,iBACC,kBACA,4BACA,aACA,UACA,WACA,gBAGD,MACC,gBAGD,QACC,kBAGD,aACC,qBCnFD;AAAA;AAAA;AAAA,GAOA,mBACC,SCRD;AAAA;AAAA;AAAA,GAMA,wCAGC,UACC,iCACA,qBAID,iBACC,wBAID,YACC,WACA,iCACA,sBAID,0BACC,6BACA,eACA,0BAGA,6BACC,wBAIF,0CACC,sBAGD,8BACC,uBACA,sBAID,kBACC,wCACA,cAEA,iBAEA,eACA,uCACC,aAED,8BACC,aACA,mDACC,gBAOF,gDACC,4BAED,qDACC,eACA,gCACA,IRiBa,KQhBb,qBACA,WACA,YACA,aACA,oCACA,eACA,WACA,wBAED,2CACC,4BAKF,uBACC,eACA,gCACA,qBACA,WACA,YACA,aACA,eACA,WAED,0DAEC,UAID,6CACC,0BAID,kDACC,kCAED,8CACC,wBAGD,wBACC,gCAID,gBACC,aAED,+BACC,6BAMF,0CACC,8BACC,6BACA,eACA,qCACC,wBAMA,0CACC,cAGF,+BACC,gCACA,iDACA,SACA,YACA,SACA,QACA,kBACA,oBACA,sBACA,aACA,aAID,wCACC,uBCpKH;AAAA;AAAA;AAAA;AAAA,GAMA,SACI,kBACA,cACA,6BACA,kBACA,mBACA,sBACA,gBACA,gBACA,iBACA,qBACA,iBACA,oBACA,mBACA,kBACA,oBACA,iBACA,uBACA,eACA,UACA,eAEA,gBACA,eACA,uDACA,8DAGI,mBACA,UACA,wBAEJ,uDAEI,uBACA,0BAEJ,8CAEI,eACA,eAEJ,4CAEI,wBACA,eACA,0EACI,QACA,qBACA,iBACA,8BACA,qDAGR,0CAEI,yBACA,cACA,wEACI,QACA,mBACA,iBACA,8BACA,uDAQJ,kPACI,SACA,yBACA,8CAGR,iCACI,sBACA,oBAEJ,kCACI,wBACA,oBAOA,0QACI,MACA,yBACA,iDAGR,4EAEI,uBACA,0BAEJ,oCACI,sBACA,iBAEJ,qCACI,wBACA,iBAIR,eACI,gBACA,gBACA,8CACA,6BACA,kBACA,mCAGJ,+BACI,kBACA,QACA,SACA,2BACA,mBCnIJ;AAAA;AAAA;AAAA,GAIA,kBACE,gBACA,gBACA,8CACA,6BACA,6CACA,eACA,gBACA,eACA,cACA,mCACA,aACA,mBACA,gBAEF,kFAEE,aACA,mBACA,WAEF,oEAEE,gBACA,gBACA,sBACA,eACA,YACA,aACA,mBACA,4BACA,2BACA,6BACA,aAEF,4FAEE,cACA,WACA,YACA,gBACA,iBACA,YAGF,4GAEE,sfACA,YACA,wCACA,qBACA,WACA,YAEF,wGAEE,WACA,wBACA,iBAEF,kPAIE,eACA,UAEF,+BACE,WAEF,mCACE,eAEF,8BACE,yCAEF,6BACE,2CAEF,gCACE,2CAEF,gCACE,2CAEF,6BACE,2CAEF,gCACE,2CAEF,8CACE,qBACA,WACA,YACA,iEACA,iBAOF,gEACE,kgBAEF,oCACC,8BACA,4BAED;AAAA;AAAA;AAAA,GAQA,iCACE,WACA,YACA,eACA,gBACA,4BACA,wBACA,aACA,uBACD;AAAA;AAAA;AAAA,EAID,qCACE,+BAEF,wCACE,eACA,gBACA,uBACA,mBAEF,qDACE,cAEF,2DACE,sBAEF,iDACE,eACA,sBAEF,iDACE,qBAEF,6BACA,GACI,2BAEJ,IACI,6BAEJ,KACI,4BAGJ,4CACE,6BAEF,mCACE,qBACA,YACA,oIACA,2BACA,mCACA,8CAEF,2CACE,oBACA,mBAEF,iDACE,WAEF,0DACE,wBACA,YAEF,6CACE,WAEF,iDACE,WACD;AAAA;AAAA;AAAA,EAID,qCACE,+BAEF,wCACE,eACA,gBACA,uBACA,mBAEF,qDACE,cAEF,2DACE,sBAEF,iDACE,eACA,sBAEF,iDACE,qBAEF,6CACE,8CAEF,yCACE,+CAEF,8CACE,aACA,sBACA,mBACA,YAEF,yCACE,yBACA,YACA,gBACA,uBAEF,8CACE,oCACA,sBACD,8CACC,WACA,YACA,cAEF,qCACE,WACA,yBACA,qBAEF,2CACE,WACA,gBACA,mBAEF,wCACE,gBACA,UACA,MACA,8CACA,YAEF,wDACE,aAEF,qDACE,WAEF,iDACE,YAEF,iDACE,YAEF,qDACE,YAEF,4EACE,sBACA,2BAEF,mEACE,wBAEF,sEACE,oBAEF,6DACE,oCAEF,+EACE,mBACD,2CACC,uBACD,oCACC,aACA,sBACA,oBACA,UACA,gBACA,YACA,uBACA,cAEF,yDACE,sBAEF,4CACE,iBACA,gBAEF,yBACA,oCACI,mBACA,iBAGJ,yBACA,oCACI,mBACA,gBAEJ,4CACI,iBAGJ,yBACE,uBAEF,oDACE,sBAEF,0CACE,gBAEF,+CACA,yBACI,UAGJ,yBACA,yBACI,0CAEH,oCACC,YACA,aACA,sBACA,mBAEF,uCACE,iBACA,mBACA,SAEF,oCACE,sBACA,WACA,aACA,sBACA,aACA,OACA,mBAEF,sCACE,sBAEF,+BACE,kCAEF,yBACA,+BACI,qEAGJ,wCACE,aACA,sBACA,gBC5XF;AAAA;AAAA;AAAA,GAIA,aACC,8DAGC,kDACC,wCAIA,wDACC,gBAED,yEACC,+BACA,2BACA,wCAEA,8OAGC,UAID,iFACC,aAED,oFACC,aAED,iGACC,YAMJ,sBACC,iEACA,uCAGD,8BACC,uCAID,kCACC,cAGD,oBACC,iBACA,mCACA,sBACA,qBACA,iBAED,+KAIC,kBAID,oBACC,eACA,oCACA,8CACA,2CACA,sBAEA,aACA,sBACA,mBACA,uBAEA,kDACA,2CACA,2CAEA,yCACC,8CAGD,sBACC,kBACA,oCACA,4CACA,WAEA,wBACC,qBACA,mCACA,iBACA,uCACA,kCACA,oCACA","file":"server.css"} \ No newline at end of file
+{"version":3,"sourceRoot":"","sources":["server.scss","icons.scss","variables.scss","styles.scss","inputs.scss","functions.scss","header.scss","apps.scss","global.scss","fixes.scss","mobile.scss","tooltip.scss","../../node_modules/@nextcloud/dialogs/dist/style.css","public.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCwHQ,8BCtHR;AAAA;AAAA;AAAA,GCMA,MACC,mCACA,uCAGD,yQACC,SACA,UACA,SACA,oBACA,eACA,oBACA,wBACA,eACA,uCAGD,6CACC,aAID,0CACC,wDACA,aAGD,UACC,YAEA,8BAGD,6DACC,cAGD,MACC,yBACA,iBACA,mBAGD,cACC,iBACA,mBAGD,YACC,sBAGD,EACC,SACA,6BACA,qBACA,eACA,IACC,eAIF,WACC,aACA,0BAGD,MACC,eACA,QACC,eAIF,0BACC,eAGD,GACC,gBAGD,KACC,mBAEA,mCACA,uCACA,6BACA,6BAGD,mBACC,kBAGD,qBACC,kBACA,sBACA,qBACA,2BACA,2DACA,uBAGD,iBACC,qBACA,aACA,gCAGD,eACC,YACA,aAGD,cACC,eACA,MACA,SACA,qBACA,YACA,WACA,aACA,kBACA,gDACA,wCACA,iBACA,eACA,kBACC,cACA,kBACA,UACA,QACA,gBAED,gBACC,wCACA,sDACA,4CACC,6CAOH,oBACC,WACA,YAGD,2BACC,+BAGD,gCACC,+BAGD,0BACC,kCACA,yCACA,+BACA,4BAMD,YACC,8CACA,wCAMD,kBACC,sBAKD,4BAEC,oCACA,kBACA,gBACA,WACA,sDACC,gBAED,sEACC,gBAED,kCACC,mBAED,oHAEC,qBACA,YACA,WACA,mBACA,gcAEC,WAOH,sBACC,WASD,oCACC,kBACA,yBACA,sBACA,qBACA,iBAID,kBAEC,kBACA,qBACA,SAEA,YAGD,8CAGC,WAGD,8BACC,sBACA,oBACA,wBACA,wBAGD,2EACC,WAGD,oGACC,kDACA,UACA,qBAGD,mDACC,6BACA,YACA,WACA,yCACA,4BACA,2BACA,WAOA,qEACC,UAED,qEACC,UAIF,wEACC,aAGD,2CACC,wBAGD,yBACC,kBACA,qBACA,sBAGD,qBACC,cACA,mBACA,iBACA,uBACA,aAKD,4CACC,eACA,YACA,mCACA,6BACA,qDAIA,2BACC,4BAKD,wBACC,sBACA,4BACA,+BACC,2CACA,qBACA,kBAGF,0BACC,qBACA,iBAIF,YACC,YACA,sCACA,oBACC,sBAIF,eACC,2CAUD,mBACC,kBACA,cACA,2BACC,kBACA,cAIF,UACC,gBAGD,8CACC,UAIA,WACC,WACA,YAGD,8CAEC,UAGD,oGAGC,WAIF,mBACC,WACA,kBACA,QAEA,kDACC,UAKD,kDACC,UAIF,eACC,WAEA,0CACC,UAKD,uGACC,8CAIF,KACC,mFAGD,OACC,gBACA,YACA,eACA,qBACA,UACC,qBAIF,2FACC,gBACA,uBAGD,2BACC,yDAGD,2BACC,6DAID,yBACC,gBACA,gBACA,WACA,mCACA,YACA,wBAEA,sKAGC,+BACA,mBAED,2CACC,YACA,eACA,YACA,8CACA,6BAEA,gEACC,cACA,mBAED,oDACC,WAEA,4JAEC,kCACA,4BAGF,oEACC,UAID,oDACC,mBACA,gCACA,WACA,WACA,YAED,0DACC,yBAGA,+FACC,gDAGD,wOAGC,8CACA,wCACA,iBAGD,yNAEC,gCACA,WAOH,4FACC,iDAED,4FACC,gDAKD,4FACC,gDAED,4FACC,iDAIF,wCACC,gCACA,wCAKD,yBACC,2BACA,sBACA,mCACA,wBAEA,4CACC,uBAGD,sKAGC,+BACA,mBAED,2CACC,YACA,eACA,YACA,8CACA,6BAEA,gEACC,cACA,mBAIF,qFACC,yBAGA,iDACC,mBACA,gCACA,WACA,yDACC,UACA,WACA,iBAGF,uDACC,yBAGA,0TAIC,8CACA,wCACA,iBAGD,4FACC,gCAGD,qEACC,gDASH,oGACC,aACA,iBACA,8BACA,0GACC,cACA,SACA,YACA,YACA,WACA,aACA,mBACA,uBACA,8GACC,kBACA,kBACA,mBACA,6BACA,cACA,iBACA,WACA,YACA,YACA,eAOJ,WACC,0BAGD,aACC,WACA,sBACA,oBAKD,YACC,kCAMA,qBACC,WACA,aAED,wBACC,cACA,gDACA,WACA,aAED,2BACC,WACA,YACA,6BACC,WAGF,wBACC,wCACA,kBACA,mBACA,gBACA,uBACA,0CACA,kCACA,6DACC,0CAGF,sBACC,UACA,WAKF,YACC,oBACA,YAGD,SACC,oBACA,kDACA,4BACA,iCACA,YACA,0BACA,cACA,QACA,uBACA,mBACC,QACA,kBACA,qBACC,WAIA,wFACC,cAIF,gCACC,SACA,sBACA,mCACC,iBACA,gBACA,kBACA,uBACA,+DACC,+EAGF,+CACC,aAIH,gBACC,aACA,uBACC,QAGF,yBAEC,kBACA,aACA,WACA,uBACA,mBACA,gBACA,cAEA,gBAEA,8FAGC,oBAGF,yBACC,UACA,WAGD,oBACC,iBACA,uBAEA,2BACC,uBAGF,+DACC,UAEA,0JAEC,WAOH,QACC,UACA,yCACA,sCACA,qCACA,oCACA,iCACA,oBACC,UAOD,+CACC,SACA,kBAED,mDACC,gBAKF,cACC,mBAMD,mBACC,aACA,QACA,SACA,UCz0BD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAUA,kFACC,6BAGD,uGACC,wCAGD,sDACC,kCAMD,iHAUC,YACA,yCACA,sBAYA,oFACC,eACA,oCACA,sCACA,QA/BiB,GAmCnB,wBACC,aAID,yJAUC,iBACA,8CACA,6BACA,0CACA,mCACA,aACA,mCACA,YACA,uYACC,WACA,sBAOC,kxDAIC,oCACA,aAED,gmBACC,aACA,8CACA,6BAGF,maACC,6DACA,oDAGF,wNACC,8CACA,6BACA,eACA,WAED,wNACC,gBAED,oPACC,mDAGD,iNACC,8CACA,0CACA,wCACA,eAGA,kvBAEC,+CAIA,mjCAGC,oDACA,gDAED,gwBAEC,4CAED,2WACC,6CAGF,gRAEC,8CACA,6CACA,eAKH,2BACC,WACA,sBACA,gBACA,eACA,gDACA,aACA,mCAEA,8CACA,oCACA,eACA,WAKA,4KACC,6BACA,0BACA,qBAEA,qCAED,0EAIC,YACA,WAID,kBACC,WACA,cACA,gBACA,WACA,eAED,mBACC,SACA,QAED,iBACC,cAKF,6GASC,2FACA,mCACA,WACA,yCACA,eACA,sBACA,8CACA,oDACA,YAEA,kSAEC,0DAGD,mKACC,eAIF,qMAcC,WACA,sBACA,eACA,mCACA,8CACA,6BACA,iDACA,YACA,aACA,yCACA,uBACA,eACA,+0BACC,8CACA,kDAED,yRACC,YAIF,mCACC,8CACA,6BAGD,mCACC,aACA,YAID,OACC,iDACA,gBACA,8CACA,mCAGD,qBACC,qCAGD,qBACC,oCASA,2DACC,eAIA,sFACC,eAMH,sGAQC,iBACA,2CAGA,gMACC,SAGD,oIACC,+CACA,2CACA,sBACA,kKACC,qDACA,+CAaD,4MAEC,qBACA,2BACA,WASF,kGACC,qCACA,mDACA,mFACA,iBACA,4BAEA,yDACA,UACA,qCACA,oCACA,gBACA,eACA,oBACA,6HACC,eCzUF,+CDiVE,yOACC,gCAID,4qBAGC,qDACA,8CACA,6vBACC,uDAQH,+VACC,qDACA,mDAEA,UAOH,uBAEC,eAGD,2BAEC,mBASA,4GAEC,kBACA,4BACA,SACA,UACA,WACA,gBACA,oIACC,iBAED,4WAEC,eAED,gKACC,WACA,qBACA,OAvBmB,KAwBnB,MAxBmB,KAyBnB,sBACA,kBACA,aACA,sBACA,+CAED,oeAEC,0CAED,4LACC,oBACA,qCACA,kBACA,mBAED,4bAIC,8DACA,8CACA,0CAED,oMACC,+CACA,0DAED,oOACC,+CAID,gJACC,qBACA,yBAED,oMACC,cA/DmB,KAmEpB,mFACC,kBACA,OArEmB,KAsEnB,MAtEmB,KAuEnB,2BACA,2BAED,mGACC,yDAED,+GACC,0DAOD,gZAEC,2BAED,wUACC,aAzF0B,KA2F3B,4NACC,8DACA,+BACA,2BAED,gOACC,0CACA,2CAED,gQACC,8DACA,2CACA,+BAID,8OAEC,0CACA,6BACA,+DAED,6HACC,gEAED,mHACC,WAMH,iBACC,gBACA,8CACA,qCACC,sCAED,yBACC,qBACA,sBACA,sBACA,6BACC,eAGF,uCACC,gBACA,wDACA,yCAED,kCACC,iBACA,SACA,UACA,wDACC,mBACA,gBACA,uBACA,6DACC,eACA,gEACC,eACA,iBAIH,6JAGC,kBACA,kBACA,aACA,+BACA,eACA,oCAGA,mEACC,8CAGF,uDACE,8CACA,6BAKJ,qDACC,4CAGD,qDACC,2CAKA,oGAEC,eAKD,mHAEC,gBACA,mBACA,uBACA,wCACA,+CACA,uBACA,yCACA,0CACA,SACA,YACA,gBACA,6IACC,0CAED,iKACC,iBACA,yBACA,stBAIC,sBACA,8CACA,oCACA,0CAED,2NACC,aAGF,2KACC,iBACA,gBACA,gBACA,6BACA,yMACC,2BAMJ,sBACC,WACA,sBACA,+DACC,aACA,eACA,kEACC,WAGF,uCACC,gBACA,mBACA,uBACA,wCACA,+CACA,uBACA,yCACA,0CACA,SACA,iBACA,gBACA,oDACC,0CAED,8DACC,iBACA,yBACA,sBACA,8CACA,0CACA,2FACC,aAED,8JAEC,qCACA,iCAGF,sDACC,gBACA,gBACA,YACA,wDACC,mEACA,WAGF,2LAGC,WAED,mEACC,iBAMH,UACC,WACA,sBACA,qBACA,2BACC,wBACA,eACA,yCACC,iBACA,yBACA,sBACA,8CACA,oCACA,0CACA,oBACA,mBACA,gDACC,wBAIH,yBACC,UACA,4BACC,YACA,kBACA,kBACA,+BACA,eACA,oCACA,8BACC,mBACA,gBACA,uBACA,YACA,sBACA,uBACA,SACA,eACA,eACA,2BACA,yBACA,sBACA,qBACA,iBACA,oBACA,mBACA,0CACA,yBACA,sCACC,YACA,4CACA,4BACA,2BACA,eACA,gBACA,cACA,WACA,sBACA,kBAGF,sCACC,6BAED,qCACC,8CACA,6BACA,6CACC,mBAQL,mBACC,cACA,WACA,UACA,cACA,8CACA,mCACA,gBACA,WACA,gBAEC,2CACC,8BAED,gDACC,8BAGF,yCACC,yBAED,sCACC,mCACA,wCACA,iCAED,2CACC,mCACA,wCACA,iCAKF,iBACC,QAEC,0BAED,QAEC,yBAED,YAGC,0BAED,QAEC,0BAIF,OACC,qBACA,uBACA,mCAKD,cACC,kBACA,4BACA,aACA,UACA,WACA,gBAWD,cAJC,oCACA,mCAOD,wBARC,oCACA,mCAWD,4BAZC,oCACA,mCEl3BD;AAAA;AAAA;AAAA;AAAA,GAQA,mBAEC,yBACA,sBACA,qBACA,iBAEA,2QAGC,aAEA,qTACC,YACA,kBACA,oBACA,2BACA,WACA,WACA,kBACA,oDACA,uBACA,UAIF,2CAEC,uDAEA,0OACC,WAGD,2HACC,uBAOH,+DAGC,oBACA,kBACA,MACA,WACA,aACA,OJiCe,KIhCf,sBACA,8BAID,WACC,cACA,0BACA,kBACA,wBACA,sBACA,UACA,mBACA,aACA,eACA,gBACA,WAEA,mCACC,UAaD,8BACC,8CACA,sDACA,yCACA,sBACA,aACA,kBACA,gBAfD,gBACA,oCAgBC,qBACA,IJVc,KIWd,SACA,gBAEA,gDACC,aAID,oCACC,gCACA,iDACA,YACA,YACA,SACA,QACA,kBACA,oBACA,sBAGD,mEAEC,iCAzCF,gBACA,oCA4CA,cACC,oBACA,yFACA,4BACA,wBACA,2BACA,WACA,kBACA,wBACA,QACA,WAEA,gFAGD,kCACC,aACA,wBACA,cAGD,oFAEC,oBACA,mBAGD,4CACC,SACA,mBACA,YAGD,wCACC,yBACA,cAKA,8CACC,gDAED,iDAEC,YACA,kBACA,yEACC,aACA,uBACA,mBACA,MJxFY,KIyFZ,YACA,eACA,YACA,UACA,aAEA,qFACC,UAGD,qGACC,aASL,0CACC,YAKD,gBACC,yCACA,eACA,iBACA,SACA,UACA,uBACA,gBACA,uBAEA,cAGD,aACC,aACA,sBACA,gBAGD,cACC,gBACA,uBAGD,kBACC,yCACA,kBACA,gBACA,eACA,iBACA,gBACA,uBAID,cACC,kBACA,gBACA,aACA,WACA,uBACA,aACA,aACA,eACA,SAEA,2BACC,IJlKc,KIyKf,gDACC,mBACA,eAED,gJAEC,qBACA,YACA,WF5QF;AAAA;AAAA;AAAA;AAAA,GHQA,iCACC,4BACA,2BACA,eACA,gBAGD,iBACC,kDAID,sGAMC,kBACA,0IACC,UACA,WACA,YACA,WACA,uBACA,kBACA,QACA,uBACA,mBACA,6CACA,qCACA,gCACA,4BACA,wBACA,4CACA,2CAEA,wCAEA,gYAGC,uCAKH,wDAEC,2CACA,4CAGD,yDAEC,YACA,WACA,qBAKA,yJACC,2CAED,iMACC,gDAED,yMACC,iDAED,iPACC,sDAIF,kBACC,KACC,uBAED,GACC,0BAIF,SACC,gCAGD,yKAQC,wDGzGD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GGSA,sCAEC,MACC,wCACA,yCAKF,KACC,WACA,YACA,kBAEA,6EAGD,KAEC,6EAEA,yCACA,sBACA,2BACA,eACA,WACA,iDAKD,eAKC,gBACA,gBACA,gBACA,mBACA,6BAGD,GACC,gBAGD,GACC,gBAGD,GACC,gBAGD,GACC,iBAGD,GACC,gBAID,GACC,kBACA,oCAGD,GACC,eAGD,MAEC,qBACA,aACA,uBAGD,GACC,YACA,mBACA,eAGD,IACC,iBACA,sBACA,kCACA,mCACA,qBACA,mBAMD,wBACC,sBAKD,0BAEC,gGACA,MLxBkB,MKyBlB,YACA,gBACA,kBACA,mDACA,8CACA,+EACA,gBACA,YACA,sBACA,qBACA,iBACA,aACA,sBACA,YACA,cAEA,kDACC,iBACA,0CACA,2EACA,mBACA,uBACA,2BACA,iBACA,oBACA,yBAQD,gGACC,cACA,6CACA,8GACC,qBACA,WACA,aACA,0BACA,iBACA,SAIF,8DACC,kBAED,8DACC,kBACA,YACA,WACA,kBACA,gBACA,sBACA,aACA,sBACA,6CACA,iBAEA,oFACC,oDAGD,oEACC,oBACA,eACA,QACA,cACA,SACA,kBACA,WACA,2CAGA,kFACC,QACA,4GACC,2BAIF,gIAEC,8DAED,0HAIC,0EAKA,wVAEC,+CAGF,oGACC,kDACA,yCAMA,gsBAEC,8CACA,wCAEA,g8BACC,qCAMH,sHACC,wBACA,SAMA,kNAEC,aAKF,0EACC,cACA,WACA,kBACA,gFACC,oBACA,eACA,mDACA,WACA,kBAIC,wXAEC,2CACA,+CAKD,gZAEC,2CACA,oDACA,ghBACC,qCAMH,kIACC,yDAGD,4IAEC,wBACA,0BAGD,sIAEC,wBAGA,6EAMJ,oJAEC,kBACA,sBAGC,4jBAGC,oCAIF,4JACC,0BACA,4BACA,cACA,8BACA,0CACA,yCACA,gBACA,oDACA,gBACA,sBACA,mBACA,uBACA,2CACA,6BACA,aACA,YAGA,4KACC,gBACA,kDACA,wOACC,gBACA,6DAGF,4NACC,kEACA,WACA,YAEA,wCAID,4QACC,qBAEA,4ZACC,gCAKH,wQACC,kBACA,cACA,YACA,WACA,YACA,YACA,kBACA,eACA,wCAEA,gRAEC,oCAKF,gQACC,kCAID,gSACC,UACA,YAED,4SACC,wBACA,YAIH,sEACC,aAMD,4YAEC,SACA,WACA,+BACA,4BACA,2BACA,w0BAEC,+BACA,UAUD,sGACC,UACA,kBACA,oCACA,qCACA,SACA,YAIA,qBAEA,kIACC,UACA,eACA,wDACA,gBAGF,gGACC,kBACA,qCACA,oCACA,SACA,UACA,gBFjZF,6CEmZE,qBACA,4BACA,2BACA,YACA,wBACA,gBACA,YACA,UACA,iCACA,6BACA,yBACA,YACA,kBACA,qCAMD,8GACC,mDAIA,wNACC,UAED,oMACC,sBAED,gTACC,oCAID,0GACC,4BACA,wBACA,oBAQH,gHACC,cACA,sHACC,wBACA,mBACA,yBAED,sHACC,+CACA,qCAED,8HACC,YACA,WACA,SACA,gBAIA,oSFpdF,uCEudE,obAEC,+BACA,UAGF,wLACC,gBACA,eACA,cACA,0CACA,eAEA,gNACC,UACA,kBACA,0NACC,gBACA,mBACA,8CACA,wCASJ,8GACC,mBACA,cACA,uBACA,qCACA,UACA,kBACA,8CACA,WACA,8OAEC,oBACA,WAED,0HACC,YACA,oBACA,YACA,4QAGC,UAGF,gJACC,WACA,YACA,wBACA,0BAED,wRAEC,WACA,YACA,cACA,4VACC,2BAED,gWACC,yBAED,oUACC,2CACA,6CACA,0BACA,4BAQH,oHACC,oBACA,mDACA,4BACA,wMACC,kBACA,mBACA,uBACA,gBACA,aACA,0CAED,8LACC,SACA,qCACA,oCACA,0CACA,oZAEC,UAQH,kOAEC,uBACA,2FAGA,kBACA,qBACA,8CACA,sBAMD,sFACC,gDACA,wCACA,oBAGD,sEACC,yBAGD,0OAEC,qBASA,0IACC,qCAGD,gHACC,qCAEA,wKACC,YASF,0IACC,sCAGD,gHACC,sCAEA,wKACC,WAOJ,SACC,sBACA,gBACA,oCACA,gCACA,UACA,aACA,kDACA,0BACA,2CACA,cAEA,kCACC,eAIF,2CACC,SACC,qDACA,mDAED,gBACC,qDAED,aACC,oDAcF,aACC,aACA,8CACA,iBACA,cACA,iBACA,YAGA,kCACC,gBAID,kCACC,aACA,kBACA,oBAGA,gBAGA,uDAEC,eACA,mFACC,aAKH,uCACC,oCASF,aACC,WACA,UL/qBmB,MKgrBnB,UL/qBmB,MKgrBnB,cACA,wBACA,gBACA,ILtrBe,KKurBf,mBACA,gBACA,kBACA,aACA,aACA,0BACA,wCACA,kDACA,cAEA,uBACC,aAOF,cAEC,gBAGC,oFACC,cAKH,sBACC,aACA,6CACA,cACA,0DAEA,iBACA,gBACA,sBAGA,uCACC,UAGD,iCACC,sBACA,sBACA,gCAOE,4NACC,qBACA,WACA,cAOL,qBACC,sBACA,+BACA,gBACA,oDACA,6CACA,cAEA,sCACC,aACA,mBACA,qCACA,WACA,UACA,SACA,+BACA,gBACA,SACA,oDACA,iBACA,mBACA,eACA,WAGA,6BAEA,6CACC,yCACA,8CACA,eAED,wFAEC,+CAGD,8CACC,2CACA,4BACA,WACA,oCACA,qCACA,MACA,qBACA,cAGD,oDACC,mEAOF,4DACC,qCAED,kEACC,qCAKD,4DACC,sCAED,kEACC,sCAIF,SACC,cACA,aACA,mBACA,gBACC,wBAIA,yDAEC,oBACA,sBAKH,aACC,kBACA,gBACA,yBACA,mBAGD,QACC,UACA,yCACA,sCACA,qCACA,oCACA,iCACA,oBACC,UAKF,YACC,aACA,mBAEA,uBACC,aACA,sBACA,YACA,kBACA,mBACA,gBACA,uBACA,eACA,gCACA,kBACA,YAEA,8BACC,aAID,mCACC,0BAED,kCACC,wBAGD,6BACC,qBACA,WACA,YACA,qBACA,sBACA,gBACA,sBACA,WACA,eAGD,yBACC,gCACA,kBACA,gBACA,uBAED,gCACC,iBAED,0FAGC,kBACA,6BACA,kDAMF,oBACC,oBAKF,6BACC,WAGD,6BACC,YASA,0JAGC,wCAIA,2LACC,YAKH,gDAGC,kBACA,8CACA,6BACA,yCACA,YACA,YACA,WACA,gBACA,mBACA,sDACA,aACA,mBAEA,kEACC,YAKA,qBAEA,2BACA,YACA,SACA,QACA,kBACA,oBACA,iDACA,iBAGD,oFACC,0BACA,qBACA,oBACA,sGACC,qBACA,0BAIF,8EACC,oBACA,oBACA,gGACC,sBAIF,+DACC,cAGD,+GACC,SAGD,yDAEC,wBACA,sBAED,yDACC,aACA,cAEA,8EACC,aAGD,oOAGC,eACA,YA/FkB,KAgGlB,SACA,yCACA,+BACA,aACA,uBACA,YACA,SACA,mBACA,gBACA,WACA,6BACA,mBAEA,whDAIC,YACA,aACA,+BACA,gBAnHe,KAqHhB,yzBAIC,yBAOC,gvGACC,oBAlIe,KAsIlB,+tBAEC,gCAED,ojBAEC,+CAED,4nBAEC,kDAED,mSACC,2CACA,oDAGD,mSACC,2BAED,iRACC,eACA,mBAED,sPACC,YACA,kBACA,cACA,mBAED,mSACC,SACA,wBAGD,gVACC,kCAID,wQACC,MA9Ke,KA+Kf,YAGD,uyBAEC,qBACA,WAED,yeACC,mBAED,8cACC,mBAED,2xBACC,YAED,iRACC,aACA,cAGA,mBACA,mbACC,wBAIF,04BAEC,sBAGD,0RACC,UAlNiB,KAmNjB,gBACA,aACA,cAEA,4bACC,wBAQA,2hDACC,eAMD,ygDACC,kBAKJ,8EACC,UACA,6FACC,UAcD,+EACC,MA/PiB,KAgQjB,OAhQiB,KAyQlB,6CACC,WACA,YAOJ,kBACC,wBACA,kBACA,MACA,gDACA,aACA,sBACA,uCACA,gBACA,gBACA,gBACA,kBACA,eACA,UL5sCgB,MK6sChB,UL5sCgB,MK+sChB,yCACC,kBACA,YACA,eACA,iBACA,aACA,eACA,mBACA,cAKC,8RAEC,QACA,WACA,YACA,YACA,aACA,WACA,eACA,4mBAEC,WAED,wtBAEC,WACA,ghDAEC,UAIF,kVACC,UAKH,8IAGC,8CAEA,2RACC,aAIF,6JAEC,kBACA,YACA,WACA,WAQC,2XAEC,aAEA,2eACC,WAIH,wFACC,SACA,uBAEA,aACA,gGACC,SAGD,oHACC,aAKH,qEACC,aACA,SACA,wBACA,qBACA,YACA,WACA,SACA,UAGD,qEACC,kBACA,qBACA,YACA,WACA,iBACA,kBACA,sBACA,uBACA,WACA,kBACA,gBACA,0BACA,iBACA,iBACA,eACA,QACA,iBAGD,kJAEC,cACA,yBACA,mBACA,gBACA,uBACA,QACA,aACA,eAGD,yEACC,WACA,QACA,SACA,sDAGD,wEACC,QACA,mBACA,gBACA,uBACA,gBACA,WACA,cACA,iBAGD,qEACC,QACA,kBACA,kFACC,SAGA,sBAIH,2EACC,aAIF,8CACC,6DACA,oDCt9CD;AAAA;AAAA;AAAA;AAAA;AAAA,GAcC,mDAEC,WAGD,kDAEC,YAGD,qDAEC,WAGD,oDAEC,YAKD,mDAEC,YAGD,kDAEC,WAGD,qDAEC,YAGD,oDAEC,WAIF,YACC,WAGD,QACC,aAGD,iBACC,kBACA,4BACA,aACA,UACA,WACA,gBAGD,MACC,gBAGD,QACC,kBAGD,aACC,qBCnFD;AAAA;AAAA;AAAA,GAOA,mBACC,SCRD;AAAA;AAAA;AAAA,GAMA,wCAGC,UACC,iCACA,qBAID,iBACC,wBAID,YACC,WACA,iCACA,sBAID,0BACC,6BACA,eACA,0BAGA,6BACC,wBAIF,0CACC,sBAGD,8BACC,uBACA,sBAID,kBACC,wCACA,cAEA,iBAEA,eACA,uCACC,aAED,8BACC,aACA,mDACC,gBAOF,gDACC,4BAED,qDACC,eACA,gCACA,IRiBa,KQhBb,qBACA,WACA,YACA,aACA,oCACA,eACA,WACA,wBAED,2CACC,4BAKF,uBACC,eACA,gCACA,qBACA,WACA,YACA,aACA,eACA,WAED,0DAEC,UAID,6CACC,0BAID,kDACC,kCAED,8CACC,wBAGD,wBACC,gCAID,gBACC,aAED,+BACC,6BAMF,0CACC,8BACC,6BACA,eACA,qCACC,wBAMA,0CACC,cAGF,+BACC,gCACA,iDACA,SACA,YACA,SACA,QACA,kBACA,oBACA,sBACA,aACA,aAID,wCACC,uBCpKH;AAAA;AAAA;AAAA;AAAA,GAMA,SACI,kBACA,cACA,6BACA,kBACA,mBACA,sBACA,gBACA,gBACA,iBACA,qBACA,iBACA,oBACA,mBACA,kBACA,oBACA,iBACA,uBACA,eACA,UACA,eAEA,gBACA,eACA,uDACA,8DAGI,mBACA,UACA,wBAEJ,uDAEI,uBACA,0BAEJ,8CAEI,eACA,eAEJ,4CAEI,wBACA,eACA,0EACI,QACA,qBACA,iBACA,8BACA,qDAGR,0CAEI,yBACA,cACA,wEACI,QACA,mBACA,iBACA,8BACA,uDAQJ,kPACI,SACA,yBACA,8CAGR,iCACI,sBACA,oBAEJ,kCACI,wBACA,oBAOA,0QACI,MACA,yBACA,iDAGR,4EAEI,uBACA,0BAEJ,oCACI,sBACA,iBAEJ,qCACI,wBACA,iBAIR,eACI,gBACA,gBACA,8CACA,6BACA,kBACA,mCAGJ,+BACI,kBACA,QACA,SACA,2BACA,mBCnIJ;AAAA;AAAA;AAAA,GAIA,kBACE,gBACA,gBACA,8CACA,6BACA,6CACA,eACA,gBACA,eACA,cACA,mCACA,aACA,mBACA,gBAEF,kFAEE,aACA,mBACA,WAEF,oEAEE,gBACA,gBACA,sBACA,eACA,YACA,aACA,mBACA,4BACA,2BACA,6BACA,aAEF,4FAEE,cACA,WACA,YACA,gBACA,iBACA,YAGF,4GAEE,sfACA,YACA,wCACA,qBACA,WACA,YAEF,wGAEE,WACA,wBACA,iBAEF,kPAIE,eACA,UAEF,+BACE,WAEF,mCACE,eAEF,8BACE,yCAEF,6BACE,2CAEF,gCACE,2CAEF,gCACE,2CAEF,6BACE,2CAEF,gCACE,2CAEF,8CACE,qBACA,WACA,YACA,iEACA,iBAOF,gEACE,kgBAEF,oCACC,8BACA,4BAED;AAAA;AAAA;AAAA,GAQA,iCACE,kBACA,WACA,YACA,eACA,gBACA,4BACA,wBACA,aACA,uBAGF,2CACE,mCAGF,0CACE,wCACA,kBACA,uBACD;AAAA;AAAA;AAAA,EAID,qCACE,+BAEF,wCACE,eACA,gBACA,uBACA,mBAEF,qDACE,cAEF,2DACE,sBAEF,iDACE,eACA,sBAEF,iDACE,qBAEF,6BACA,GACI,2BAEJ,IACI,6BAEJ,KACI,4BAGJ,4CACE,6BAEF,mCACE,qBACA,YACA,oIACA,2BACA,mCACA,8CAEF,2CACE,oBACA,mBAEF,iDACE,WAEF,0DACE,wBACA,YAEF,6CACE,WAEF,iDACE,WACD;AAAA;AAAA;AAAA,EAID,qCACE,+BAEF,wCACE,eACA,gBACA,uBACA,mBAEF,qDACE,cAEF,2DACE,sBAEF,iDACE,eACA,sBAEF,iDACE,qBAEF,6CACE,8CAEF,yCACE,+CAEF,8CACE,aACA,sBACA,mBACA,YAEF,yCACE,yBACA,YACA,gBACA,uBAEF,8CACE,oCACA,sBACD,8CACC,WACA,YACA,cAEF,qCACE,WACA,yBACA,qBAEF,2CACE,WACA,gBACA,mBAEF,wCACE,gBACA,UACA,MACA,8CACA,YAEF,wDACE,aAEF,qDACE,WAEF,iDACE,YAEF,iDACE,YAEF,qDACE,YAEF,4EACE,sBACA,2BAEF,mEACE,wBAEF,sEACE,oBAEF,6DACE,oCAEF,+EACE,mBACD,2CACC,uBACD,oCACC,aACA,sBACA,oBACA,UACA,gBACA,YACA,uBACA,cAEF,yDACE,sBAEF,4CACE,iBACA,gBAEF,yBACA,oCACI,mBACA,iBAGJ,yBACA,oCACI,mBACA,gBAEJ,4CACI,iBAGJ,yBACE,uBAEF,oDACE,sBAEF,0CACE,gBAEF,+CACA,yBACI,UAGJ,yBACA,yBACI,0CAEH,oCACC,YACA,aACA,sBACA,mBAEF,uCACE,iBACA,mBACA,SAEF,oCACE,sBACA,WACA,aACA,sBACA,aACA,OACA,mBAEF,sCACE,sBAEF,+BACE,kCAEF,yBACA,+BACI,qEAGJ,wCACE,aACA,sBACA,gBACD,2CACC,iBACA,oDAEF,6CACE,oDAEF,yDACE,aAEF,4CACE,uFCnZF;AAAA;AAAA;AAAA,GAIA,aACC,8DAGC,kDACC,wCAIA,wDACC,gBAED,yEACC,+BACA,2BACA,wCAEA,8OAGC,UAID,iFACC,aAED,oFACC,aAED,iGACC,YAMJ,sBACC,iEACA,uCAGD,8BACC,uCAID,kCACC,cAGD,oBACC,iBACA,mCACA,sBACA,qBACA,iBAED,+KAIC,kBAID,oBACC,eACA,oCACA,8CACA,2CACA,sBAEA,aACA,sBACA,mBACA,uBAEA,kDACA,2CACA,2CAEA,yCACC,8CAGD,sBACC,kBACA,oCACA,4CACA,WAEA,wBACC,qBACA,mCACA,iBACA,uCACA,kCACA,oCACA","file":"server.css"} \ No newline at end of file
diff --git a/core/js/login/grant.js b/core/js/login/grant.js
index a8c788397a8..c6134504421 100644
--- a/core/js/login/grant.js
+++ b/core/js/login/grant.js
@@ -2,11 +2,28 @@
* SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
-document.querySelector('form').addEventListener('submit', function(e) {
+
+const form = document.querySelector('form')
+form.addEventListener('submit', function(event) {
const wrapper = document.getElementById('submit-wrapper')
if (wrapper === null) {
return
}
+
+ if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
+ // stop the event
+ event.preventDefault()
+ event.stopPropagation()
+
+ // handle password confirmation
+ OC.PasswordConfirmation.requirePasswordConfirmation(function () {
+ // when password is confirmed we submit the form
+ form.submit()
+ })
+
+ return false
+ }
+
Array.from(wrapper.getElementsByClassName('icon-confirm-white')).forEach(function(el) {
el.classList.remove('icon-confirm-white')
el.classList.add(OCA.Theming && OCA.Theming.inverted ? 'icon-loading-small' : 'icon-loading-small-dark')
diff --git a/core/js/tests/specHelper.js b/core/js/tests/specHelper.js
index 8d121a2fb38..77958488df7 100644
--- a/core/js/tests/specHelper.js
+++ b/core/js/tests/specHelper.js
@@ -85,6 +85,9 @@ window._oc_appswebroots = {
"files": window.webroot + '/apps/files/',
"files_sharing": window.webroot + '/apps/files_sharing/'
};
+
+window.OC ??= {};
+
OC.config = {
session_lifetime: 600 * 1000,
session_keepalive: false,
@@ -111,6 +114,10 @@ window.Snap.prototype = {
window.isPhantom = /phantom/i.test(navigator.userAgent);
document.documentElement.lang = navigator.language;
+const el = document.createElement('input');
+el.id = 'initial-state-core-config';
+el.value = btoa(JSON.stringify(window.OC.config))
+document.body.append(el);
// global setup for all tests
(function setupTests() {
diff --git a/core/js/tests/specs/coreSpec.js b/core/js/tests/specs/coreSpec.js
index 195b6dca99a..3cbd7623a47 100644
--- a/core/js/tests/specs/coreSpec.js
+++ b/core/js/tests/specs/coreSpec.js
@@ -119,93 +119,6 @@ describe('Core base tests', function() {
})).toEqual('number=123');
});
});
- describe('Session heartbeat', function() {
- var clock,
- oldConfig,
- counter;
-
- beforeEach(function() {
- clock = sinon.useFakeTimers();
- oldConfig = OC.config;
- counter = 0;
-
- fakeServer.autoRespond = true;
- fakeServer.autoRespondAfter = 0;
- fakeServer.respondWith(/\/csrftoken/, function(xhr) {
- counter++;
- xhr.respond(200, {'Content-Type': 'application/json'}, '{"token": "pgBEsb3MzTb1ZPd2mfDZbQ6/0j3OrXHMEZrghHcOkg8=:3khw5PSa+wKQVo4f26exFD3nplud9ECjJ8/Y5zk5/k4="}');
- });
- $(document).off('ajaxComplete'); // ignore previously registered heartbeats
- });
- afterEach(function() {
- clock.restore();
- /* jshint camelcase: false */
- OC.config = oldConfig;
- $(document).off('ajaxError');
- $(document).off('ajaxComplete');
- });
- it('sends heartbeat half the session lifetime when heartbeat enabled', function() {
- /* jshint camelcase: false */
- OC.config = {
- session_keepalive: true,
- session_lifetime: 300
- };
- window.initCore();
-
- expect(counter).toEqual(0);
-
- // less than half, still nothing
- clock.tick(100 * 1000);
- expect(counter).toEqual(0);
-
- // reach past half (160), one call
- clock.tick(55 * 1000);
- expect(counter).toEqual(1);
-
- // almost there to the next, still one
- clock.tick(140 * 1000);
- expect(counter).toEqual(1);
-
- // past it, second call
- clock.tick(20 * 1000);
- expect(counter).toEqual(2);
- });
- it('does not send heartbeat when heartbeat disabled', function() {
- /* jshint camelcase: false */
- OC.config = {
- session_keepalive: false,
- session_lifetime: 300
- };
- window.initCore();
-
- expect(counter).toEqual(0);
-
- clock.tick(1000000);
-
- // still nothing
- expect(counter).toEqual(0);
- });
- it('limits the heartbeat between one minute and one day', function() {
- /* jshint camelcase: false */
- var setIntervalStub = sinon.stub(window, 'setInterval');
- OC.config = {
- session_keepalive: true,
- session_lifetime: 5
- };
- window.initCore();
- expect(setIntervalStub.getCall(0).args[1]).toEqual(60 * 1000);
- setIntervalStub.reset();
-
- OC.config = {
- session_keepalive: true,
- session_lifetime: 48 * 3600
- };
- window.initCore();
- expect(setIntervalStub.getCall(0).args[1]).toEqual(24 * 3600 * 1000);
-
- setIntervalStub.restore();
- });
- });
describe('Parse query string', function() {
it('Parses query string from full URL', function() {
var query = OC.parseQueryString('http://localhost/stuff.php?q=a&b=x');
diff --git a/core/js/tests/specs/l10nSpec.js b/core/js/tests/specs/l10nSpec.js
index 03f7fd50796..bd93a13fe74 100644
--- a/core/js/tests/specs/l10nSpec.js
+++ b/core/js/tests/specs/l10nSpec.js
@@ -110,67 +110,4 @@ describe('OC.L10N tests', function() {
checkPlurals();
});
});
- describe('async loading of translations', function() {
- afterEach(() => {
- document.documentElement.removeAttribute('data-locale')
- })
- it('loads bundle for given app and calls callback', function(done) {
- document.documentElement.setAttribute('data-locale', 'zh_CN')
- var callbackStub = sinon.stub();
- var promiseStub = sinon.stub();
- var loading = OC.L10N.load(TEST_APP, callbackStub);
- expect(callbackStub.notCalled).toEqual(true);
- var req = fakeServer.requests[0];
-
- console.warn('fff-', window.OC.appswebroots)
- loading
- .then(promiseStub)
- .then(function() {
- expect(fakeServer.requests.length).toEqual(1);
- expect(req.url).toEqual(
- OC.getRootPath() + '/apps3/' + TEST_APP + '/l10n/zh_CN.json'
- );
-
- expect(callbackStub.calledOnce).toEqual(true);
- expect(promiseStub.calledOnce).toEqual(true);
- expect(t(TEST_APP, 'Hello world!')).toEqual('你好世界!');
- })
- .then(done)
- .catch(e => expect(e).toBe('No error expected!'));
-
- expect(promiseStub.notCalled).toEqual(true);
- req.respond(
- 200,
- { 'Content-Type': 'application/json' },
- JSON.stringify({
- translations: {'Hello world!': '你好世界!'},
- pluralForm: 'nplurals=2; plural=(n != 1);'
- })
- );
- });
- it('calls callback if translation already available', function(done) {
- var callbackStub = sinon.stub();
- spyOn(console, 'warn');
- OC.L10N.register(TEST_APP, {
- 'Hello world!': 'Hallo Welt!'
- });
- OC.L10N.load(TEST_APP, callbackStub)
- .then(function() {
- expect(callbackStub.calledOnce).toEqual(true);
- expect(fakeServer.requests.length).toEqual(0);
- })
- .then(done);
-
- });
- it('calls callback if locale is en', function(done) {
- var callbackStub = sinon.stub();
- OC.L10N.load(TEST_APP, callbackStub)
- .then(function() {
- expect(callbackStub.calledOnce).toEqual(true);
- expect(fakeServer.requests.length).toEqual(0);
- })
- .then(done)
- .catch(done);
- });
- });
});
diff --git a/core/l10n/ar.js b/core/l10n/ar.js
index 20f22703d80..380fd932a1b 100644
--- a/core/l10n/ar.js
+++ b/core/l10n/ar.js
@@ -51,6 +51,11 @@ OC.L10N.register(
"No translation provider available" : "لا توجد خدمة للترجمة",
"Could not detect language" : "لم يُمكن اكتشاف اللغة",
"Unable to translate" : "لم يُمكن الترجمة",
+ "[%d / %d]: %s" : "[%d/%d]: %s",
+ "Repair step:" : "خطوة صيانة:",
+ "Repair info:" : "معلومات صيانة:",
+ "Repair warning:" : "تحذير صيانة:",
+ "Repair error:" : "خطأ صيانة:",
"Nextcloud Server" : "خادم نكست كلاود",
"Some of your link shares have been removed" : "تم ازالة البعض من مشاركة الروابط الخاصة بك.",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "نظرا لسبب آمني تم ازالة البعض من روابط المشاركة الخاصة بك. يرجى مراجعة الرابط التالي لمزيد من التفاصيل.",
@@ -58,11 +63,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "أدخِل مفتاح الاشتراك الخاص بك في تطبيق الدعم لزيادة حد الأقصى من الحسابات. يمنحك هذا أيضًا جميع المزايا الإضافية التي يقدمها Nextcloud Enterprise ويوصى به بشدة للشركات و المؤسسات.",
"Learn more ↗" : "تعلم المزيد ↗",
"Preparing update" : "جارٍ تهيئة التحديث",
- "[%d / %d]: %s" : "[%d/%d]: %s",
- "Repair step:" : "خطوة صيانة:",
- "Repair info:" : "معلومات صيانة:",
- "Repair warning:" : "تحذير صيانة:",
- "Repair error:" : "خطأ صيانة:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "يرجى الترقية من خلال سطر الأوامر command line updater حيث أن الترقية من المستعرض معطلة في ملف config.php.",
"Turned on maintenance mode" : "تشغيل وضع الصيانة.",
"Turned off maintenance mode" : "تعطيل وضع الصيانة.",
@@ -302,9 +302,9 @@ OC.L10N.register(
"Admin" : "المدير",
"Help" : "المساعدة",
"Access forbidden" : "الوصول محظور",
+ "Back to %s" : "العودة إلى %s",
"Page not found" : "الصفحة غير موجودة",
"The page could not be found on the server or you may not be allowed to view it." : "لم يُمكن إيجاد الصفحة على الخادم أو ربما غير مسموح لك بالوصول إليها.",
- "Back to %s" : "العودة إلى %s",
"Too many requests" : "الطلبات أقصى من الحد المسموح",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "يوجد طلبات أقصى من الحد المسموح به في الشبكة. أعد المحاولة أو اتصل بمسؤول النظام.",
"Error" : "خطأ",
@@ -380,16 +380,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "هذا %s في وضع الصيانة، قد يستغرق ذلك بعض الوقت.",
"This page will refresh itself when the instance is available again." : "سوف يتم تحديث الصفحة في حين الخادم جاهز للاستخدام مجددا.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "تواصل مع مسؤول النظام اذا استمرت هذه الرسالة بالظهور دائما أو بشكل مفاجئ.",
- "Currently open" : "مفتوح حاليّاً ",
- "Login with username or email" : "الدخول باسم المستخدم أو البريد الإلكتروني",
- "Login with username" : "الدخول باسم المستخدم",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "الدردشة ومكالمات الفيديو ومشاركة الشاشة والإجتماعات عبر الإنترنت ومؤتمرات الويب - في متصفحك ومع تطبيق للهاتف المحمول.",
"You have not added any info yet" : "لم تقم بإضافة أي معلومات حتى الآن",
"{user} has not added any info yet" : "لم يقم المستخدم {user} بإضافة أي معلومات بعد",
"Error opening the user status modal, try hard refreshing the page" : "خطأ في فتح حالة المستخدم ، حاول تحديث الصفحة",
"Edit Profile" : "تعديل الملف الشخصي",
"The headline and about sections will show up here" : "سيظهر هنا العنوان والأقسام الخاصة بالملف الشخصي",
- "Error loading message template: {error}" : "حصل خطأ في القالب: {error}",
"Very weak password" : "كلمة السر ضعيفة جدا",
"Weak password" : "كلمة السر ضعيفة",
"So-so password" : "كلمة سر غير فعالة",
diff --git a/core/l10n/ar.json b/core/l10n/ar.json
index bc1a58548a1..93df7d0245c 100644
--- a/core/l10n/ar.json
+++ b/core/l10n/ar.json
@@ -49,6 +49,11 @@
"No translation provider available" : "لا توجد خدمة للترجمة",
"Could not detect language" : "لم يُمكن اكتشاف اللغة",
"Unable to translate" : "لم يُمكن الترجمة",
+ "[%d / %d]: %s" : "[%d/%d]: %s",
+ "Repair step:" : "خطوة صيانة:",
+ "Repair info:" : "معلومات صيانة:",
+ "Repair warning:" : "تحذير صيانة:",
+ "Repair error:" : "خطأ صيانة:",
"Nextcloud Server" : "خادم نكست كلاود",
"Some of your link shares have been removed" : "تم ازالة البعض من مشاركة الروابط الخاصة بك.",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "نظرا لسبب آمني تم ازالة البعض من روابط المشاركة الخاصة بك. يرجى مراجعة الرابط التالي لمزيد من التفاصيل.",
@@ -56,11 +61,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "أدخِل مفتاح الاشتراك الخاص بك في تطبيق الدعم لزيادة حد الأقصى من الحسابات. يمنحك هذا أيضًا جميع المزايا الإضافية التي يقدمها Nextcloud Enterprise ويوصى به بشدة للشركات و المؤسسات.",
"Learn more ↗" : "تعلم المزيد ↗",
"Preparing update" : "جارٍ تهيئة التحديث",
- "[%d / %d]: %s" : "[%d/%d]: %s",
- "Repair step:" : "خطوة صيانة:",
- "Repair info:" : "معلومات صيانة:",
- "Repair warning:" : "تحذير صيانة:",
- "Repair error:" : "خطأ صيانة:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "يرجى الترقية من خلال سطر الأوامر command line updater حيث أن الترقية من المستعرض معطلة في ملف config.php.",
"Turned on maintenance mode" : "تشغيل وضع الصيانة.",
"Turned off maintenance mode" : "تعطيل وضع الصيانة.",
@@ -300,9 +300,9 @@
"Admin" : "المدير",
"Help" : "المساعدة",
"Access forbidden" : "الوصول محظور",
+ "Back to %s" : "العودة إلى %s",
"Page not found" : "الصفحة غير موجودة",
"The page could not be found on the server or you may not be allowed to view it." : "لم يُمكن إيجاد الصفحة على الخادم أو ربما غير مسموح لك بالوصول إليها.",
- "Back to %s" : "العودة إلى %s",
"Too many requests" : "الطلبات أقصى من الحد المسموح",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "يوجد طلبات أقصى من الحد المسموح به في الشبكة. أعد المحاولة أو اتصل بمسؤول النظام.",
"Error" : "خطأ",
@@ -378,16 +378,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "هذا %s في وضع الصيانة، قد يستغرق ذلك بعض الوقت.",
"This page will refresh itself when the instance is available again." : "سوف يتم تحديث الصفحة في حين الخادم جاهز للاستخدام مجددا.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "تواصل مع مسؤول النظام اذا استمرت هذه الرسالة بالظهور دائما أو بشكل مفاجئ.",
- "Currently open" : "مفتوح حاليّاً ",
- "Login with username or email" : "الدخول باسم المستخدم أو البريد الإلكتروني",
- "Login with username" : "الدخول باسم المستخدم",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "الدردشة ومكالمات الفيديو ومشاركة الشاشة والإجتماعات عبر الإنترنت ومؤتمرات الويب - في متصفحك ومع تطبيق للهاتف المحمول.",
"You have not added any info yet" : "لم تقم بإضافة أي معلومات حتى الآن",
"{user} has not added any info yet" : "لم يقم المستخدم {user} بإضافة أي معلومات بعد",
"Error opening the user status modal, try hard refreshing the page" : "خطأ في فتح حالة المستخدم ، حاول تحديث الصفحة",
"Edit Profile" : "تعديل الملف الشخصي",
"The headline and about sections will show up here" : "سيظهر هنا العنوان والأقسام الخاصة بالملف الشخصي",
- "Error loading message template: {error}" : "حصل خطأ في القالب: {error}",
"Very weak password" : "كلمة السر ضعيفة جدا",
"Weak password" : "كلمة السر ضعيفة",
"So-so password" : "كلمة سر غير فعالة",
diff --git a/core/l10n/ast.js b/core/l10n/ast.js
index 9007df85b58..af0669c7d5b 100644
--- a/core/l10n/ast.js
+++ b/core/l10n/ast.js
@@ -50,6 +50,11 @@ OC.L10N.register(
"No translation provider available" : "Nun hai nengún fornidor de traducciones disponible",
"Could not detect language" : "Nun se pudo detectar la llingua",
"Unable to translate" : "Nun ye posible traducir",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Pasos de la reparación:",
+ "Repair info:" : "Información de la reparación:",
+ "Repair warning:" : "Alvertencia de la reparación:",
+ "Repair error:" : "Error de la reparación:",
"Nextcloud Server" : "Sirvidor de Nextcloud",
"Some of your link shares have been removed" : "Quitáronse dalgunos enllaces de los elementos que compartiesti",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Pola mor d'un fallu de seguranza, tuviemos de quitar dalgunos enllaces compartíos. Consulta l'enllaz d'abaxo pa consiguir más información.",
@@ -57,11 +62,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Introduz la clave de la soscripción n'aplicación de sofitu p'aumentar la llende de cuentes. Esta aición tamién te concede tolos beneficios que Nextcloud Enterprise ufre, que son mui aconseyables pa compañes.",
"Learn more ↗" : "Saber más ↗",
"Preparing update" : "Tresnando l'anovamientu",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Pasos de la reparación:",
- "Repair info:" : "Información de la reparación:",
- "Repair warning:" : "Alvertencia de la reparación:",
- "Repair error:" : "Error de la reparación:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Usa l'anovador de la llinia de comandos porque l'anovamientu pel restolador ta desactiváu nel ficheru config.php.",
"Turned on maintenance mode" : "Activóse'l mou de caltenimientu",
"Turned off maintenance mode" : "Desactivóse'l mou de caltenimientu",
@@ -271,9 +271,9 @@ OC.L10N.register(
"Admin" : "Alministración",
"Help" : "Ayuda",
"Access forbidden" : "Prohíbese l'accesu",
+ "Back to %s" : "Volver a «%s»",
"Page not found" : "Nun s'atopó la páxina",
"The page could not be found on the server or you may not be allowed to view it." : "Nun se pudo atopar la páxina nel sirvidor o ye posible que nun tengas permisu pa vela.",
- "Back to %s" : "Volver a «%s»",
"Too many requests" : "Milenta solicitúes",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Ficiéronse milenta solicitúes dende la to rede. Volvi tentalo dempués o ponte en contautu cola alministración si esti mensaxe ye un error.",
"Error" : "Error",
@@ -348,16 +348,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Esta instancia de %s ta nel mou de caltenimientu y pue talo un tiempu",
"This page will refresh itself when the instance is available again." : "Esta páxina va anovase sola cuando la instancia vuelva tar disponible.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Ponte en contautu cola alministración del sistema si esti mensaxe sigue apaeciendo o apaez inesperadamente.",
- "Currently open" : "Abierto",
- "Login with username or email" : "Aniciar la sesión col nomatu o la direición de corréu electrónicu",
- "Login with username" : "Aniciar la sesión col nomatu",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Charres, videollamaes, compartición de pantalla, reuniones en llinia y conferencies web; nel restolador y coles aplicaciones móviles.",
"You have not added any info yet" : "Nun amestesti nenguna información",
"{user} has not added any info yet" : "{user} nun amestó nenguna información",
"Error opening the user status modal, try hard refreshing the page" : "Hebo un error al abrir el diálogu modal del estáu d'usuariu, prueba a anovar la páxina",
"Edit Profile" : "Editar el perfil",
"The headline and about sections will show up here" : "Equí apaecen la testera y les seiciones d'información",
- "Error loading message template: {error}" : "Hebo un error al cargar la plantía del mensaxe: {error}",
"Very weak password" : "La contraseña ye mui poco segura",
"Weak password" : "La contraseña ye poco segura",
"So-so password" : "La contraseña ye normal",
diff --git a/core/l10n/ast.json b/core/l10n/ast.json
index f5bc84f5fb2..e9717acdf8d 100644
--- a/core/l10n/ast.json
+++ b/core/l10n/ast.json
@@ -48,6 +48,11 @@
"No translation provider available" : "Nun hai nengún fornidor de traducciones disponible",
"Could not detect language" : "Nun se pudo detectar la llingua",
"Unable to translate" : "Nun ye posible traducir",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Pasos de la reparación:",
+ "Repair info:" : "Información de la reparación:",
+ "Repair warning:" : "Alvertencia de la reparación:",
+ "Repair error:" : "Error de la reparación:",
"Nextcloud Server" : "Sirvidor de Nextcloud",
"Some of your link shares have been removed" : "Quitáronse dalgunos enllaces de los elementos que compartiesti",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Pola mor d'un fallu de seguranza, tuviemos de quitar dalgunos enllaces compartíos. Consulta l'enllaz d'abaxo pa consiguir más información.",
@@ -55,11 +60,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Introduz la clave de la soscripción n'aplicación de sofitu p'aumentar la llende de cuentes. Esta aición tamién te concede tolos beneficios que Nextcloud Enterprise ufre, que son mui aconseyables pa compañes.",
"Learn more ↗" : "Saber más ↗",
"Preparing update" : "Tresnando l'anovamientu",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Pasos de la reparación:",
- "Repair info:" : "Información de la reparación:",
- "Repair warning:" : "Alvertencia de la reparación:",
- "Repair error:" : "Error de la reparación:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Usa l'anovador de la llinia de comandos porque l'anovamientu pel restolador ta desactiváu nel ficheru config.php.",
"Turned on maintenance mode" : "Activóse'l mou de caltenimientu",
"Turned off maintenance mode" : "Desactivóse'l mou de caltenimientu",
@@ -269,9 +269,9 @@
"Admin" : "Alministración",
"Help" : "Ayuda",
"Access forbidden" : "Prohíbese l'accesu",
+ "Back to %s" : "Volver a «%s»",
"Page not found" : "Nun s'atopó la páxina",
"The page could not be found on the server or you may not be allowed to view it." : "Nun se pudo atopar la páxina nel sirvidor o ye posible que nun tengas permisu pa vela.",
- "Back to %s" : "Volver a «%s»",
"Too many requests" : "Milenta solicitúes",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Ficiéronse milenta solicitúes dende la to rede. Volvi tentalo dempués o ponte en contautu cola alministración si esti mensaxe ye un error.",
"Error" : "Error",
@@ -346,16 +346,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Esta instancia de %s ta nel mou de caltenimientu y pue talo un tiempu",
"This page will refresh itself when the instance is available again." : "Esta páxina va anovase sola cuando la instancia vuelva tar disponible.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Ponte en contautu cola alministración del sistema si esti mensaxe sigue apaeciendo o apaez inesperadamente.",
- "Currently open" : "Abierto",
- "Login with username or email" : "Aniciar la sesión col nomatu o la direición de corréu electrónicu",
- "Login with username" : "Aniciar la sesión col nomatu",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Charres, videollamaes, compartición de pantalla, reuniones en llinia y conferencies web; nel restolador y coles aplicaciones móviles.",
"You have not added any info yet" : "Nun amestesti nenguna información",
"{user} has not added any info yet" : "{user} nun amestó nenguna información",
"Error opening the user status modal, try hard refreshing the page" : "Hebo un error al abrir el diálogu modal del estáu d'usuariu, prueba a anovar la páxina",
"Edit Profile" : "Editar el perfil",
"The headline and about sections will show up here" : "Equí apaecen la testera y les seiciones d'información",
- "Error loading message template: {error}" : "Hebo un error al cargar la plantía del mensaxe: {error}",
"Very weak password" : "La contraseña ye mui poco segura",
"Weak password" : "La contraseña ye poco segura",
"So-so password" : "La contraseña ye normal",
diff --git a/core/l10n/be.js b/core/l10n/be.js
new file mode 100644
index 00000000000..f4e9bd6aa8c
--- /dev/null
+++ b/core/l10n/be.js
@@ -0,0 +1,302 @@
+OC.L10N.register(
+ "core",
+ {
+ "Please select a file." : "Выберыце файл.",
+ "File is too big" : "Файл занадта вялікі",
+ "The selected file is not an image." : "Выбраны файл не з'яўляецца відарысам.",
+ "The selected file cannot be read." : "Не ўдалося прачытаць выбраны файл.",
+ "Missing a temporary folder" : "Адсутнічае часовая папка",
+ "Could not write file to disk" : "Не ўдалося запісаць файл на дыск",
+ "Invalid file provided" : "Прапанаваны файл некарэктны",
+ "Unknown filetype" : "Невядомы тып файла",
+ "An error occurred. Please contact your admin." : "Узнікла памылка. Звярніцеся да адміністратара.",
+ "Login" : "Лагін",
+ "Unsupported email length (>255)" : "Даўжыня электроннага ліста не падтрымліваецца (>255)",
+ "Password reset is disabled" : "Скід пароля адключаны",
+ "Password is too long. Maximum allowed length is 469 characters." : "Пароль занадта доўгі. Максімальная дазволеная даўжыня — 469 сімвалаў.",
+ "%s password reset" : "Скід пароля %s ",
+ "Password reset" : "Скід пароля",
+ "Task not found" : "Задача не знойдзена",
+ "Internal error" : "Унутраная памылка",
+ "Requested task type does not exist" : "Запытаны тып задачы не існуе",
+ "Necessary language model provider is not available" : "Неабходны пастаўшчык моўнай мадэлі недаступны",
+ "No text to image provider is available" : "Няма даступных пастаўшчыкоў паслуг пераўтварэння тэксту ў відарыс",
+ "Image not found" : "Відарыс не знойдзены",
+ "No translation provider available" : "Няма даступных пастаўшчыкоў перакладу",
+ "Could not detect language" : "Не ўдалося вызначыць мову",
+ "Unable to translate" : "Немагчыма перакласці",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Nextcloud Server" : "Сервер Nextcloud",
+ "Learn more ↗" : "Больш падрабязна ↗",
+ "Preparing update" : "Падрыхтоўка абнаўлення",
+ "Turned on maintenance mode" : "Уключаны рэжым тэхнічнага абслугоўвання",
+ "Turned off maintenance mode" : "Выключаны рэжым тэхнічнага абслугоўвання",
+ "Updating database schema" : "Абнаўленне схемы базы даных",
+ "Updated \"%1$s\" to %2$s" : "\"%1$s\" абноўлена да %2$s",
+ "%s (incompatible)" : "%s (несумяшчальная)",
+ "Electronic book document" : "Дакумент электроннай кнігі",
+ "TrueType Font Collection" : "Калекцыя шрыфтоў TrueType",
+ "Web Open Font Format" : "Фармат шрыфта Web Open",
+ "GPX geographic data" : "Геаграфічныя дадыя GPX",
+ "Gzip archive" : "Архіў Gzip",
+ "Adobe Illustrator document" : "Дакумент Adobe Illustrator",
+ "Java source code" : "Зыходны код Java",
+ "JavaScript source code" : "Зыходны код JavaScript",
+ "JSON document" : "Дакумент JSON",
+ "Microsoft Access database" : "База даных Microsoft Access",
+ "Microsoft OneNote document" : "Дакумент Microsoft OneNote",
+ "Microsoft Word document" : "Дакумент Microsoft Word",
+ "Unknown" : "Невядомы",
+ "PDF document" : "Дакумент PDF",
+ "PostScript document" : "Дакумент PostScript",
+ "RSS summary" : "Зводка RSS",
+ "Android package" : "Пакет Android",
+ "KML geographic data" : "Геаграфічныя даныя KML",
+ "KML geographic compressed data" : "Геаграфічныя сціснутыя даныя KML",
+ "Lotus Word Pro document" : "Дакумент Lotus Word Pro",
+ "Excel spreadsheet" : "Табліца Excel",
+ "Excel add-in" : "Надбудова Excel",
+ "Excel 2007 binary spreadsheet" : "Табліца Excel 2007 (у двайковым фармаце)",
+ "Excel spreadsheet template" : "Шаблон табліцы Excel",
+ "Outlook Message" : "Паведамленне Outlook",
+ "PowerPoint presentation" : "Прэзентацыя PowerPoint",
+ "PowerPoint add-in" : "Надбудова PowerPoint",
+ "PowerPoint presentation template" : "Шаблон прэзентацыі PowerPoint",
+ "Word document" : "Дакумент Word",
+ "ODF formula" : "Формула ODF",
+ "ODG drawing" : "Рысунак ODG",
+ "ODG drawing (Flat XML)" : "Рысунак ODG (Плоскі XML)",
+ "ODG template" : "Шаблон ODG",
+ "ODP presentation" : "Прэзентацыя ODP",
+ "ODP presentation (Flat XML)" : "Прэзентацыя ODP (Плоскі XML)",
+ "ODP template" : "Шаблон ODP",
+ "ODS spreadsheet" : "Табліца ODS",
+ "ODS spreadsheet (Flat XML)" : "Табліца ODS (Плоскі XML)",
+ "ODS template" : "Шаблон ODS",
+ "ODT document" : "Дакумент ODT",
+ "ODT document (Flat XML)" : "Дакумент ODT (Плоскі XML)",
+ "ODT template" : "Шаблон ODT",
+ "PowerPoint 2007 presentation" : "Прэзентацыя PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Шаблон прэзентацыі PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Табліца Excel 2007",
+ "Excel 2007 spreadsheet template" : "Шаблон табліцы Excel 2007",
+ "Word 2007 document" : "Дакумент Word 2007",
+ "Word 2007 document template" : "Шаблон дакумента Word 2007",
+ "Microsoft Visio document" : "Дакумент Microsoft Visio",
+ "WordPerfect document" : "Дакумент WordPerfect",
+ "7-zip archive" : "Архіў 7-zip",
+ "Blender scene" : "Сцэна Blender",
+ "Bzip2 archive" : "Архіў Bzip2",
+ "Debian package" : "Пакет Debian",
+ "FictionBook document" : "Дакумент FictionBook",
+ "Unknown font" : "Невядомы шрыфт",
+ "Krita document" : "Дакумент Krita",
+ "Windows Installer package" : "Пакет Windows Installer",
+ "Tar archive" : "Архіў Tar",
+ "XML document" : "Дакумент XML",
+ "YAML document" : "Дакумент YAML",
+ "Zip archive" : "Архіў Zip",
+ "Zstandard archive" : "Архіў Zstandard",
+ "AAC audio" : "Аўдыя AAC",
+ "FLAC audio" : "Аўдыя FLAC",
+ "MPEG-4 audio" : "Аўдыя MPEG-4",
+ "MP3 audio" : "Аўдыя MP3",
+ "Ogg audio" : "Аўдыя Ogg",
+ "RIFF/WAVe standard Audio" : "Аўдыя ў стандарце RIFF/WAVe",
+ "WebM audio" : "Аўдыя WebM",
+ "MP3 ShoutCast playlist" : "Плэй-ліст MP3 ShoutCast",
+ "Windows BMP image" : "Відарыс Windows BMP",
+ "Better Portable Graphics image" : "Відарыс Better Portable Graphics",
+ "EMF image" : "Відарыс EMF",
+ "GIF image" : "Відарыс GIF",
+ "HEIC image" : "Відарыс HEIC",
+ "HEIF image" : "Відарыс HEIF",
+ "JPEG-2000 JP2 image" : "Відарыс JPEG-2000 JP2",
+ "JPEG image" : "Відарыс JPEG",
+ "PNG image" : "Відарыс PNG",
+ "SVG image" : "Відарыс SVG",
+ "Truevision Targa image" : "Відарыс Truevision Targa",
+ "TIFF image" : "Відарыс TIFF",
+ "WebP image" : "Відарыс WebP",
+ "Digital raw image" : "Лічбавы неапрацаваны відарыс",
+ "Windows Icon" : "Значок Windows",
+ "Email message" : "Паведамленне па электроннай пошце",
+ "VCS/ICS calendar" : "Каляндар VCS/ICS",
+ "CSV document" : "Дакумент CSV",
+ "HTML document" : "Дакумент HTML",
+ "Markdown document" : "Дакумент Markdown",
+ "Org-mode file" : "Файл Org-mode",
+ "Plain text document" : "Тэкставы дакумент",
+ "Rich Text document" : "Дакумент Rich Text",
+ "C++ source code" : "Зыходны код C++",
+ "NFO document" : "Дакумент NFO",
+ "PHP source" : "Зыходны код PHP",
+ "ReStructuredText document" : "Дакумент ReStructuredText",
+ "3GPP multimedia file" : "Мультымедыйны файл 3GPP",
+ "MPEG video" : "Відэа MPEG",
+ "DV video" : "Відэа DV",
+ "MPEG-4 video" : "Відэа MPEG-4",
+ "Ogg video" : "Відэа Ogg",
+ "QuickTime video" : "Відэа QuickTime",
+ "WebM video" : "Відэа WebM",
+ "Flash video" : "Відэа Flash",
+ "Matroska video" : "Відэа Matroska",
+ "Windows Media video" : "Відэа Windows Media",
+ "AVI video" : "Відэа AVI",
+ "unknown text" : "невядомы тэкст",
+ "Hello world!" : "Hello world!",
+ "Hello {name}" : "Вітаем, {name}",
+ "new" : "новы",
+ "Update to {version}" : "Абнаўленне да {version}",
+ "An error occurred." : "Узнікла памылка.",
+ "Please reload the page." : "Перазагрузіце старонку.",
+ "Applications menu" : "Меню праграм",
+ "Apps" : "Праграмы",
+ "More apps" : "Болей праграм",
+ "_{count} notification_::_{count} notifications_" : ["{count} апавяшчэнне","{count} апавяшчэнні","{count} апавяшчэнняў","{count} апавяшчэнняў"],
+ "No" : "Не",
+ "Yes" : "Так",
+ "user@your-nextcloud.org" : "user@your-nextcloud.org",
+ "Clear search" : "Ачысціць пошук",
+ "Searching …" : "Пошук …",
+ "Today" : "Сёння",
+ "Last 7 days" : "Апошнія 7 дзён",
+ "Last 30 days" : "Апошнія 30 дзён",
+ "This year" : "Гэты год",
+ "Last year" : "Мінулы год",
+ "Search apps, files, tags, messages" : "Пошук праграм, файлаў, тэгаў, паведамленняў",
+ "Places" : "Месцы",
+ "Date" : "Дата",
+ "People" : "Людзі",
+ "Results" : "Вынікі",
+ "Load more results" : "Загрузіць больш вынікаў",
+ "Search in" : "Пошук у",
+ "Log in" : "Увайсці",
+ "Logging in …" : "Уваход …",
+ "Log in to {productName}" : "Увайсці ў {productName}",
+ "Wrong login or password." : "Няправільны лагін або пароль.",
+ "This account is disabled" : "Гэты ўліковы запіс адключаны.",
+ "Please contact your administrator." : "Звярніцеся да адміністратара.",
+ "Session error" : "Памылка сеанса",
+ "An internal error occurred." : "Узнікла ўнутраная памылка.",
+ "Please try again or contact your administrator." : "Паспрабуйце яшчэ раз або звярніцеся да адміністратара.",
+ "Password" : "Пароль",
+ "Log in with a device" : "Увайсці з дапамогай прылады",
+ "Login or email" : "Лагін або электронная пошта",
+ "Your connection is not secure" : "Ваша злучэнне не з'яўляецца бяспечным",
+ "Browser not supported" : "Браўзер не падтрымліваецца",
+ "Reset password" : "Скінуць пароль",
+ "New password" : "Новы пароль",
+ "I know what I'm doing" : "Я ведаю, што раблю",
+ "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Чаты, відэавыклікі, дэманстрацыя экрана, анлайн-сустрэчы і вэб-канферэнцыі — у вашым браўзеры і з дапамогай мабільных праграм.",
+ "Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Супольныя дакументы, электронныя табліцы і прэзентацыі, створаныя ў Collabora Online.",
+ "Recommended apps" : "Рэкамендаваныя праграмы",
+ "Loading apps …" : "Загрузка праграм …",
+ "Skip" : "Прапусціць",
+ "Installing apps …" : "Усталяванне праграм …",
+ "Install recommended apps" : "Усталяваць рэкамендаваныя праграмы",
+ "Reset search" : "Скінуць пошук",
+ "Search contacts …" : "Пошук кантактаў …",
+ "No contacts found" : "Кантакты не знойдзены",
+ "Show all contacts" : "Паказаць усе кантакты",
+ "Install the Contacts app" : "Усталяваць праграму \"Кантакты\"",
+ "Search" : "Пошук",
+ "No results for {query}" : "Няма вынікаў для {query}",
+ "Forgot password?" : "Забылі пароль?",
+ "Back" : "Назад",
+ "Storage & database" : "Сховішча і база даных",
+ "Data folder" : "Папка з данымі",
+ "Database configuration" : "Канфігурацыя базы даных",
+ "Only {firstAndOnlyDatabase} is available." : "Даступна толькі {firstAndOnlyDatabase}.",
+ "Install and activate additional PHP modules to choose other database types." : "Усталюйце і актывуйце дадатковыя модулі PHP, каб выбраць іншы тып базы даных.",
+ "Database user" : "Карыстальнік базы даных",
+ "Database password" : "Пароль базы даных",
+ "Database name" : "Назва базы даных",
+ "Database tablespace" : "Таблічная прастора базы даных",
+ "localhost" : "localhost",
+ "Installing …" : "Усталяванне …",
+ "Install" : "Усталяваць",
+ "This browser is not supported" : "Гэты браўзер не падтрымліваецца",
+ "Copy to {target}" : "Капіяваць у {target}",
+ "Copy" : "Капіяваць",
+ "Move to {target}" : "Перамясціць у {target}",
+ "Move" : "Перамясціць",
+ "OK" : "OK",
+ "read-only" : "толькі для чытання",
+ "One file conflict" : "Адзін файлавы канфлікт",
+ "New Files" : "Новыя файлы",
+ "Already existing files" : "Ужо існуючыя файлы",
+ "Which files do you want to keep?" : "Якія файлы вы хочаце захаваць?",
+ "If you select both versions, the copied file will have a number added to its name." : "Калі бы выберыце абедзьве версіі, да назвы скапіяванага файла будзе дададзены нумар.",
+ "Cancel" : "Скасаваць",
+ "Continue" : "Працягнуць",
+ "Error loading file exists template" : "Памылка загрузкі шаблона",
+ "Saving …" : "Захаванне …",
+ "seconds ago" : "с таму",
+ "Add to a project" : "Дадаць у праект",
+ "Rename project" : "Перайменаваць праект",
+ "Delete" : "Выдаліць",
+ "Rename" : "Перайменаваць",
+ "Collaborative tags" : "Супольныя тэгі",
+ "No tags found" : "Тэгі не знойдзены",
+ "Clipboard not available, please copy manually" : "Буфер абмену недаступны, скапіюйце ўручную",
+ "Accounts" : "Уліковыя запісы",
+ "Help" : "Даведка",
+ "Access forbidden" : "Доступ забаронены",
+ "Back to %s" : "Назад да %s",
+ "Page not found" : "Старонка не знойдзена",
+ "The page could not be found on the server or you may not be allowed to view it." : "Старонка не знойдзена на серверы, або ў вас няма дазволу на яе прагляд.",
+ "Too many requests" : "Занадта шмат запытаў",
+ "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "З вашай сеткі паступіла занадта шмат запытаў. Паўтарыце спробу пазней або звярніцеся да адміністратара, калі гэта памылка.",
+ "Error" : "Памылка",
+ "Internal Server Error" : "Унутраная памылка сервера",
+ "The server was unable to complete your request." : "Сервер не змог выканаць ваш запыт.",
+ "If this happens again, please send the technical details below to the server administrator." : "Калі гэта паўторыцца, адпраўце тэхнічныя падрабязнасці ніжэй адміністратару сервера.",
+ "More details can be found in the server log." : "Больш падрабязную інфармацыю можна знайсці ў журнале сервера.",
+ "For more details see the documentation ↗." : "Больш падрабязную інфармацыю глядзіце ў дакументацыі ↗.",
+ "Technical details" : "Тэхнічныя падрабязнасці",
+ "Remote Address: %s" : "Аддалены адрас: %s",
+ "Request ID: %s" : "Ідэнтыфікатар запыту: %s",
+ "Type: %s" : "Тып: %s",
+ "Code: %s" : "Код: %s",
+ "Message: %s" : "Паведамленне: %s",
+ "File: %s" : "Файл: %s",
+ "Line: %s" : "Радок: %s",
+ "Trace" : "Трасіроўка",
+ "Go to %s" : "Перайсці да %s",
+ "Grant access" : "Дазволіць доступ",
+ "Account access" : "Доступ да ўліковага запісу",
+ "You can close this window." : "Вы можаце закрыць гэта акно.",
+ "Email address" : "Адрас электроннай пошты",
+ "Password sent!" : "Пароль адпраўлены!",
+ "Two-factor authentication" : "Двухфактарная аўтэнтыфікацыя",
+ "Cancel login" : "Скасаваць уваход",
+ "Access through untrusted domain" : "Доступ праз ненадзейны дамен",
+ "Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php." : "Звярніцеся да адміністратара. Калі вы адміністратар, адрэдагуйце параметр \"trusted_domains\" у config/config.php, як у прыкладзе ў config.sample.php.",
+ "App update required" : "Патрэбна абнавіць праграму",
+ "The following apps will be updated:" : "Будуць абноўлены наступныя праграмы:",
+ "These incompatible apps will be disabled:" : "Гэтыя несумяшчальныя праграмы будуць адключаныя:",
+ "Start update" : "Запусціць абнаўленне",
+ "Update needed" : "Неабходна абнаўленне",
+ "Maintenance mode" : "Рэжым тэхнічнага абслугоўвання",
+ "Contact your system administrator if this message persists or appeared unexpectedly." : "Звярніцеся да сістэмнага адміністратара, калі гэта паведамленне працягвае з'яўляцца або з'явілася нечакана.",
+ "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Чаты, відэавыклікі, дэманстрацыя экрана, анлайн-сустрэчы і вэб-канферэнцыі — у вашым браўзеры і з дапамогай мабільных праграм.",
+ "You have not added any info yet" : "Вы пакуль не дадалі ніякай інфармацыі",
+ "{user} has not added any info yet" : "{user} пакуль не дадаў(-ла) ніякай інфармацыі",
+ "Edit Profile" : "Рэдагаваць профіль",
+ "Very weak password" : "Вельмі слабы пароль",
+ "Weak password" : "Слабы пароль",
+ "So-so password" : "Абы-які пароль",
+ "Good password" : "Файны пароль",
+ "Strong password" : "Моцны пароль",
+ "Profile not found" : "Профіль не знойдзены",
+ "The profile does not exist." : "Профіль не існуе.",
+ "<strong>Create an admin account</strong>" : "<strong>Стварыць ўліковы запіс адміністратара</strong>",
+ "New admin account name" : "Імя ўліковага запісу новага адміністратара",
+ "New admin password" : "Пароль новага адіміністратара",
+ "Show password" : "Паказаць пароль",
+ "Toggle password visibility" : "Пераключыць бачнасць пароля",
+ "Only %s is available." : "Даступна толькі %s.",
+ "Database account" : "Уліковы запіс базы даных"
+},
+"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);");
diff --git a/core/l10n/be.json b/core/l10n/be.json
new file mode 100644
index 00000000000..112ee4f2be1
--- /dev/null
+++ b/core/l10n/be.json
@@ -0,0 +1,300 @@
+{ "translations": {
+ "Please select a file." : "Выберыце файл.",
+ "File is too big" : "Файл занадта вялікі",
+ "The selected file is not an image." : "Выбраны файл не з'яўляецца відарысам.",
+ "The selected file cannot be read." : "Не ўдалося прачытаць выбраны файл.",
+ "Missing a temporary folder" : "Адсутнічае часовая папка",
+ "Could not write file to disk" : "Не ўдалося запісаць файл на дыск",
+ "Invalid file provided" : "Прапанаваны файл некарэктны",
+ "Unknown filetype" : "Невядомы тып файла",
+ "An error occurred. Please contact your admin." : "Узнікла памылка. Звярніцеся да адміністратара.",
+ "Login" : "Лагін",
+ "Unsupported email length (>255)" : "Даўжыня электроннага ліста не падтрымліваецца (>255)",
+ "Password reset is disabled" : "Скід пароля адключаны",
+ "Password is too long. Maximum allowed length is 469 characters." : "Пароль занадта доўгі. Максімальная дазволеная даўжыня — 469 сімвалаў.",
+ "%s password reset" : "Скід пароля %s ",
+ "Password reset" : "Скід пароля",
+ "Task not found" : "Задача не знойдзена",
+ "Internal error" : "Унутраная памылка",
+ "Requested task type does not exist" : "Запытаны тып задачы не існуе",
+ "Necessary language model provider is not available" : "Неабходны пастаўшчык моўнай мадэлі недаступны",
+ "No text to image provider is available" : "Няма даступных пастаўшчыкоў паслуг пераўтварэння тэксту ў відарыс",
+ "Image not found" : "Відарыс не знойдзены",
+ "No translation provider available" : "Няма даступных пастаўшчыкоў перакладу",
+ "Could not detect language" : "Не ўдалося вызначыць мову",
+ "Unable to translate" : "Немагчыма перакласці",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Nextcloud Server" : "Сервер Nextcloud",
+ "Learn more ↗" : "Больш падрабязна ↗",
+ "Preparing update" : "Падрыхтоўка абнаўлення",
+ "Turned on maintenance mode" : "Уключаны рэжым тэхнічнага абслугоўвання",
+ "Turned off maintenance mode" : "Выключаны рэжым тэхнічнага абслугоўвання",
+ "Updating database schema" : "Абнаўленне схемы базы даных",
+ "Updated \"%1$s\" to %2$s" : "\"%1$s\" абноўлена да %2$s",
+ "%s (incompatible)" : "%s (несумяшчальная)",
+ "Electronic book document" : "Дакумент электроннай кнігі",
+ "TrueType Font Collection" : "Калекцыя шрыфтоў TrueType",
+ "Web Open Font Format" : "Фармат шрыфта Web Open",
+ "GPX geographic data" : "Геаграфічныя дадыя GPX",
+ "Gzip archive" : "Архіў Gzip",
+ "Adobe Illustrator document" : "Дакумент Adobe Illustrator",
+ "Java source code" : "Зыходны код Java",
+ "JavaScript source code" : "Зыходны код JavaScript",
+ "JSON document" : "Дакумент JSON",
+ "Microsoft Access database" : "База даных Microsoft Access",
+ "Microsoft OneNote document" : "Дакумент Microsoft OneNote",
+ "Microsoft Word document" : "Дакумент Microsoft Word",
+ "Unknown" : "Невядомы",
+ "PDF document" : "Дакумент PDF",
+ "PostScript document" : "Дакумент PostScript",
+ "RSS summary" : "Зводка RSS",
+ "Android package" : "Пакет Android",
+ "KML geographic data" : "Геаграфічныя даныя KML",
+ "KML geographic compressed data" : "Геаграфічныя сціснутыя даныя KML",
+ "Lotus Word Pro document" : "Дакумент Lotus Word Pro",
+ "Excel spreadsheet" : "Табліца Excel",
+ "Excel add-in" : "Надбудова Excel",
+ "Excel 2007 binary spreadsheet" : "Табліца Excel 2007 (у двайковым фармаце)",
+ "Excel spreadsheet template" : "Шаблон табліцы Excel",
+ "Outlook Message" : "Паведамленне Outlook",
+ "PowerPoint presentation" : "Прэзентацыя PowerPoint",
+ "PowerPoint add-in" : "Надбудова PowerPoint",
+ "PowerPoint presentation template" : "Шаблон прэзентацыі PowerPoint",
+ "Word document" : "Дакумент Word",
+ "ODF formula" : "Формула ODF",
+ "ODG drawing" : "Рысунак ODG",
+ "ODG drawing (Flat XML)" : "Рысунак ODG (Плоскі XML)",
+ "ODG template" : "Шаблон ODG",
+ "ODP presentation" : "Прэзентацыя ODP",
+ "ODP presentation (Flat XML)" : "Прэзентацыя ODP (Плоскі XML)",
+ "ODP template" : "Шаблон ODP",
+ "ODS spreadsheet" : "Табліца ODS",
+ "ODS spreadsheet (Flat XML)" : "Табліца ODS (Плоскі XML)",
+ "ODS template" : "Шаблон ODS",
+ "ODT document" : "Дакумент ODT",
+ "ODT document (Flat XML)" : "Дакумент ODT (Плоскі XML)",
+ "ODT template" : "Шаблон ODT",
+ "PowerPoint 2007 presentation" : "Прэзентацыя PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Шаблон прэзентацыі PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Табліца Excel 2007",
+ "Excel 2007 spreadsheet template" : "Шаблон табліцы Excel 2007",
+ "Word 2007 document" : "Дакумент Word 2007",
+ "Word 2007 document template" : "Шаблон дакумента Word 2007",
+ "Microsoft Visio document" : "Дакумент Microsoft Visio",
+ "WordPerfect document" : "Дакумент WordPerfect",
+ "7-zip archive" : "Архіў 7-zip",
+ "Blender scene" : "Сцэна Blender",
+ "Bzip2 archive" : "Архіў Bzip2",
+ "Debian package" : "Пакет Debian",
+ "FictionBook document" : "Дакумент FictionBook",
+ "Unknown font" : "Невядомы шрыфт",
+ "Krita document" : "Дакумент Krita",
+ "Windows Installer package" : "Пакет Windows Installer",
+ "Tar archive" : "Архіў Tar",
+ "XML document" : "Дакумент XML",
+ "YAML document" : "Дакумент YAML",
+ "Zip archive" : "Архіў Zip",
+ "Zstandard archive" : "Архіў Zstandard",
+ "AAC audio" : "Аўдыя AAC",
+ "FLAC audio" : "Аўдыя FLAC",
+ "MPEG-4 audio" : "Аўдыя MPEG-4",
+ "MP3 audio" : "Аўдыя MP3",
+ "Ogg audio" : "Аўдыя Ogg",
+ "RIFF/WAVe standard Audio" : "Аўдыя ў стандарце RIFF/WAVe",
+ "WebM audio" : "Аўдыя WebM",
+ "MP3 ShoutCast playlist" : "Плэй-ліст MP3 ShoutCast",
+ "Windows BMP image" : "Відарыс Windows BMP",
+ "Better Portable Graphics image" : "Відарыс Better Portable Graphics",
+ "EMF image" : "Відарыс EMF",
+ "GIF image" : "Відарыс GIF",
+ "HEIC image" : "Відарыс HEIC",
+ "HEIF image" : "Відарыс HEIF",
+ "JPEG-2000 JP2 image" : "Відарыс JPEG-2000 JP2",
+ "JPEG image" : "Відарыс JPEG",
+ "PNG image" : "Відарыс PNG",
+ "SVG image" : "Відарыс SVG",
+ "Truevision Targa image" : "Відарыс Truevision Targa",
+ "TIFF image" : "Відарыс TIFF",
+ "WebP image" : "Відарыс WebP",
+ "Digital raw image" : "Лічбавы неапрацаваны відарыс",
+ "Windows Icon" : "Значок Windows",
+ "Email message" : "Паведамленне па электроннай пошце",
+ "VCS/ICS calendar" : "Каляндар VCS/ICS",
+ "CSV document" : "Дакумент CSV",
+ "HTML document" : "Дакумент HTML",
+ "Markdown document" : "Дакумент Markdown",
+ "Org-mode file" : "Файл Org-mode",
+ "Plain text document" : "Тэкставы дакумент",
+ "Rich Text document" : "Дакумент Rich Text",
+ "C++ source code" : "Зыходны код C++",
+ "NFO document" : "Дакумент NFO",
+ "PHP source" : "Зыходны код PHP",
+ "ReStructuredText document" : "Дакумент ReStructuredText",
+ "3GPP multimedia file" : "Мультымедыйны файл 3GPP",
+ "MPEG video" : "Відэа MPEG",
+ "DV video" : "Відэа DV",
+ "MPEG-4 video" : "Відэа MPEG-4",
+ "Ogg video" : "Відэа Ogg",
+ "QuickTime video" : "Відэа QuickTime",
+ "WebM video" : "Відэа WebM",
+ "Flash video" : "Відэа Flash",
+ "Matroska video" : "Відэа Matroska",
+ "Windows Media video" : "Відэа Windows Media",
+ "AVI video" : "Відэа AVI",
+ "unknown text" : "невядомы тэкст",
+ "Hello world!" : "Hello world!",
+ "Hello {name}" : "Вітаем, {name}",
+ "new" : "новы",
+ "Update to {version}" : "Абнаўленне да {version}",
+ "An error occurred." : "Узнікла памылка.",
+ "Please reload the page." : "Перазагрузіце старонку.",
+ "Applications menu" : "Меню праграм",
+ "Apps" : "Праграмы",
+ "More apps" : "Болей праграм",
+ "_{count} notification_::_{count} notifications_" : ["{count} апавяшчэнне","{count} апавяшчэнні","{count} апавяшчэнняў","{count} апавяшчэнняў"],
+ "No" : "Не",
+ "Yes" : "Так",
+ "user@your-nextcloud.org" : "user@your-nextcloud.org",
+ "Clear search" : "Ачысціць пошук",
+ "Searching …" : "Пошук …",
+ "Today" : "Сёння",
+ "Last 7 days" : "Апошнія 7 дзён",
+ "Last 30 days" : "Апошнія 30 дзён",
+ "This year" : "Гэты год",
+ "Last year" : "Мінулы год",
+ "Search apps, files, tags, messages" : "Пошук праграм, файлаў, тэгаў, паведамленняў",
+ "Places" : "Месцы",
+ "Date" : "Дата",
+ "People" : "Людзі",
+ "Results" : "Вынікі",
+ "Load more results" : "Загрузіць больш вынікаў",
+ "Search in" : "Пошук у",
+ "Log in" : "Увайсці",
+ "Logging in …" : "Уваход …",
+ "Log in to {productName}" : "Увайсці ў {productName}",
+ "Wrong login or password." : "Няправільны лагін або пароль.",
+ "This account is disabled" : "Гэты ўліковы запіс адключаны.",
+ "Please contact your administrator." : "Звярніцеся да адміністратара.",
+ "Session error" : "Памылка сеанса",
+ "An internal error occurred." : "Узнікла ўнутраная памылка.",
+ "Please try again or contact your administrator." : "Паспрабуйце яшчэ раз або звярніцеся да адміністратара.",
+ "Password" : "Пароль",
+ "Log in with a device" : "Увайсці з дапамогай прылады",
+ "Login or email" : "Лагін або электронная пошта",
+ "Your connection is not secure" : "Ваша злучэнне не з'яўляецца бяспечным",
+ "Browser not supported" : "Браўзер не падтрымліваецца",
+ "Reset password" : "Скінуць пароль",
+ "New password" : "Новы пароль",
+ "I know what I'm doing" : "Я ведаю, што раблю",
+ "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Чаты, відэавыклікі, дэманстрацыя экрана, анлайн-сустрэчы і вэб-канферэнцыі — у вашым браўзеры і з дапамогай мабільных праграм.",
+ "Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Супольныя дакументы, электронныя табліцы і прэзентацыі, створаныя ў Collabora Online.",
+ "Recommended apps" : "Рэкамендаваныя праграмы",
+ "Loading apps …" : "Загрузка праграм …",
+ "Skip" : "Прапусціць",
+ "Installing apps …" : "Усталяванне праграм …",
+ "Install recommended apps" : "Усталяваць рэкамендаваныя праграмы",
+ "Reset search" : "Скінуць пошук",
+ "Search contacts …" : "Пошук кантактаў …",
+ "No contacts found" : "Кантакты не знойдзены",
+ "Show all contacts" : "Паказаць усе кантакты",
+ "Install the Contacts app" : "Усталяваць праграму \"Кантакты\"",
+ "Search" : "Пошук",
+ "No results for {query}" : "Няма вынікаў для {query}",
+ "Forgot password?" : "Забылі пароль?",
+ "Back" : "Назад",
+ "Storage & database" : "Сховішча і база даных",
+ "Data folder" : "Папка з данымі",
+ "Database configuration" : "Канфігурацыя базы даных",
+ "Only {firstAndOnlyDatabase} is available." : "Даступна толькі {firstAndOnlyDatabase}.",
+ "Install and activate additional PHP modules to choose other database types." : "Усталюйце і актывуйце дадатковыя модулі PHP, каб выбраць іншы тып базы даных.",
+ "Database user" : "Карыстальнік базы даных",
+ "Database password" : "Пароль базы даных",
+ "Database name" : "Назва базы даных",
+ "Database tablespace" : "Таблічная прастора базы даных",
+ "localhost" : "localhost",
+ "Installing …" : "Усталяванне …",
+ "Install" : "Усталяваць",
+ "This browser is not supported" : "Гэты браўзер не падтрымліваецца",
+ "Copy to {target}" : "Капіяваць у {target}",
+ "Copy" : "Капіяваць",
+ "Move to {target}" : "Перамясціць у {target}",
+ "Move" : "Перамясціць",
+ "OK" : "OK",
+ "read-only" : "толькі для чытання",
+ "One file conflict" : "Адзін файлавы канфлікт",
+ "New Files" : "Новыя файлы",
+ "Already existing files" : "Ужо існуючыя файлы",
+ "Which files do you want to keep?" : "Якія файлы вы хочаце захаваць?",
+ "If you select both versions, the copied file will have a number added to its name." : "Калі бы выберыце абедзьве версіі, да назвы скапіяванага файла будзе дададзены нумар.",
+ "Cancel" : "Скасаваць",
+ "Continue" : "Працягнуць",
+ "Error loading file exists template" : "Памылка загрузкі шаблона",
+ "Saving …" : "Захаванне …",
+ "seconds ago" : "с таму",
+ "Add to a project" : "Дадаць у праект",
+ "Rename project" : "Перайменаваць праект",
+ "Delete" : "Выдаліць",
+ "Rename" : "Перайменаваць",
+ "Collaborative tags" : "Супольныя тэгі",
+ "No tags found" : "Тэгі не знойдзены",
+ "Clipboard not available, please copy manually" : "Буфер абмену недаступны, скапіюйце ўручную",
+ "Accounts" : "Уліковыя запісы",
+ "Help" : "Даведка",
+ "Access forbidden" : "Доступ забаронены",
+ "Back to %s" : "Назад да %s",
+ "Page not found" : "Старонка не знойдзена",
+ "The page could not be found on the server or you may not be allowed to view it." : "Старонка не знойдзена на серверы, або ў вас няма дазволу на яе прагляд.",
+ "Too many requests" : "Занадта шмат запытаў",
+ "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "З вашай сеткі паступіла занадта шмат запытаў. Паўтарыце спробу пазней або звярніцеся да адміністратара, калі гэта памылка.",
+ "Error" : "Памылка",
+ "Internal Server Error" : "Унутраная памылка сервера",
+ "The server was unable to complete your request." : "Сервер не змог выканаць ваш запыт.",
+ "If this happens again, please send the technical details below to the server administrator." : "Калі гэта паўторыцца, адпраўце тэхнічныя падрабязнасці ніжэй адміністратару сервера.",
+ "More details can be found in the server log." : "Больш падрабязную інфармацыю можна знайсці ў журнале сервера.",
+ "For more details see the documentation ↗." : "Больш падрабязную інфармацыю глядзіце ў дакументацыі ↗.",
+ "Technical details" : "Тэхнічныя падрабязнасці",
+ "Remote Address: %s" : "Аддалены адрас: %s",
+ "Request ID: %s" : "Ідэнтыфікатар запыту: %s",
+ "Type: %s" : "Тып: %s",
+ "Code: %s" : "Код: %s",
+ "Message: %s" : "Паведамленне: %s",
+ "File: %s" : "Файл: %s",
+ "Line: %s" : "Радок: %s",
+ "Trace" : "Трасіроўка",
+ "Go to %s" : "Перайсці да %s",
+ "Grant access" : "Дазволіць доступ",
+ "Account access" : "Доступ да ўліковага запісу",
+ "You can close this window." : "Вы можаце закрыць гэта акно.",
+ "Email address" : "Адрас электроннай пошты",
+ "Password sent!" : "Пароль адпраўлены!",
+ "Two-factor authentication" : "Двухфактарная аўтэнтыфікацыя",
+ "Cancel login" : "Скасаваць уваход",
+ "Access through untrusted domain" : "Доступ праз ненадзейны дамен",
+ "Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php." : "Звярніцеся да адміністратара. Калі вы адміністратар, адрэдагуйце параметр \"trusted_domains\" у config/config.php, як у прыкладзе ў config.sample.php.",
+ "App update required" : "Патрэбна абнавіць праграму",
+ "The following apps will be updated:" : "Будуць абноўлены наступныя праграмы:",
+ "These incompatible apps will be disabled:" : "Гэтыя несумяшчальныя праграмы будуць адключаныя:",
+ "Start update" : "Запусціць абнаўленне",
+ "Update needed" : "Неабходна абнаўленне",
+ "Maintenance mode" : "Рэжым тэхнічнага абслугоўвання",
+ "Contact your system administrator if this message persists or appeared unexpectedly." : "Звярніцеся да сістэмнага адміністратара, калі гэта паведамленне працягвае з'яўляцца або з'явілася нечакана.",
+ "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Чаты, відэавыклікі, дэманстрацыя экрана, анлайн-сустрэчы і вэб-канферэнцыі — у вашым браўзеры і з дапамогай мабільных праграм.",
+ "You have not added any info yet" : "Вы пакуль не дадалі ніякай інфармацыі",
+ "{user} has not added any info yet" : "{user} пакуль не дадаў(-ла) ніякай інфармацыі",
+ "Edit Profile" : "Рэдагаваць профіль",
+ "Very weak password" : "Вельмі слабы пароль",
+ "Weak password" : "Слабы пароль",
+ "So-so password" : "Абы-які пароль",
+ "Good password" : "Файны пароль",
+ "Strong password" : "Моцны пароль",
+ "Profile not found" : "Профіль не знойдзены",
+ "The profile does not exist." : "Профіль не існуе.",
+ "<strong>Create an admin account</strong>" : "<strong>Стварыць ўліковы запіс адміністратара</strong>",
+ "New admin account name" : "Імя ўліковага запісу новага адміністратара",
+ "New admin password" : "Пароль новага адіміністратара",
+ "Show password" : "Паказаць пароль",
+ "Toggle password visibility" : "Пераключыць бачнасць пароля",
+ "Only %s is available." : "Даступна толькі %s.",
+ "Database account" : "Уліковы запіс базы даных"
+},"pluralForm" :"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"
+} \ No newline at end of file
diff --git a/core/l10n/bg.js b/core/l10n/bg.js
index 70572a678ae..a61e4a52df4 100644
--- a/core/l10n/bg.js
+++ b/core/l10n/bg.js
@@ -27,8 +27,10 @@ OC.L10N.register(
"Could not complete login" : "Не може да завърши влизането",
"State token missing" : "Липсва токен/маркер/ на състоянието",
"Your login token is invalid or has expired" : "Вашият маркер за вход е невалиден или е изтекъл",
+ "Please use original client" : "Моля, използвайте оригиналния клиент.",
"This community release of Nextcloud is unsupported and push notifications are limited." : "Тази общностна версия на Nextcloud не се поддържа и push известия са ограничени.",
"Login" : "Вписване",
+ "Unsupported email length (>255)" : "Дължината на е-мейлът не се поддържа (>255 символа)",
"Password reset is disabled" : "Възстановяването на пароли е забранено",
"Could not reset password because the token is expired" : "Възстановяването на паролата е неуспешно, защото токенът е с изтекла валидност",
"Could not reset password because the token is invalid" : "Възстановяването на паролата е неуспешно, защото токенът е невалиден",
@@ -38,23 +40,28 @@ OC.L10N.register(
"Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Кликнете върху следния бутон, за да възстановите паролата си. Ако не сте поискали възстановяване на паролата, игнорирайте този имейл.",
"Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Кликнете върху следната връзка, за да възстановите паролата си. Ако не сте поискали възстановяване на паролата, игнорирайте този имейл.",
"Reset your password" : "Възстановяване на вашата парола",
+ "The given provider is not available" : "Доставчикът не е наличен",
+ "Task not found" : "Задачата не е открита",
"Internal error" : "Вътрешна грешка",
"Not found" : "Не е намерен",
+ "Node is locked" : "Точката е заключена (Node is locked)",
+ "Bad request" : "Лоша заявка",
+ "Requested task type does not exist" : "Заявената задача не съществува",
"Image not found" : "Изображението не е открито",
"No translation provider available" : "Няма наличен доставчик на преводи",
"Could not detect language" : "Не можа да се установи езика",
"Unable to translate" : "Не може да се преведе",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Стъпка на поправка:",
+ "Repair info:" : "Информация за поправка:",
+ "Repair warning:" : "Предупреждение при поправка:",
+ "Repair error:" : "Грешка при поправка:",
"Nextcloud Server" : "Nextcloud сървър",
"Some of your link shares have been removed" : "Някои от вашите споделяния на връзки са премахнати",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Поради грешка в сигурността трябваше да премахнем някои от вашите споделяния на връзки. Моля, вижте връзката за повече информация.",
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Въведете своя абонаментен ключ в приложението за поддръжка, за да увеличите лимита на акаунта. Това също ви предоставя всички допълнителни предимства, които Nextcloud Enterprise предлага и е силно препоръчително за работа в компании.",
"Learn more ↗" : "Научете повече ↗",
"Preparing update" : "Подготовка за актуализиране",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Стъпка на поправка:",
- "Repair info:" : "Информация за поправка:",
- "Repair warning:" : "Предупреждение при поправка:",
- "Repair error:" : "Грешка при поправка:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Моля, използвайте програмата за актуализиране от командния ред, тъй като актуализирането чрез браузъра е забранено в config.php.",
"Turned on maintenance mode" : "Режимът за поддръжка е включен",
"Turned off maintenance mode" : "Режимът за поддръжка е изключен",
@@ -100,19 +107,30 @@ OC.L10N.register(
"Create share" : "Създаване на споделяне",
"Direct link copied to clipboard" : "Директният адрес е копиран в клипборда",
"Please copy the link manually:" : "Моля копирайте адреса ръчно:",
+ "Search in date range" : "Търси във времеви период",
+ "Search in current app" : "Търси в настоящето приложение",
+ "Clear search" : "Изчисти търсенето",
+ "Search everywhere" : "Търси навсякъде",
"Searching …" : "Търсене ...",
"Start typing to search" : "Започнете да пишете, за търсене",
"Today" : "Днес",
+ "Last 7 days" : "Последните 7 дни",
+ "Last 30 days" : "Последните 30 дни",
"This year" : "Тази година",
"Last year" : "Миналата година",
+ "Unified search" : "Глобално търсене",
+ "Search apps, files, tags, messages" : "Търси приложения, файлове, тагове, съобщения",
"Places" : "Места",
"Date" : "Дата",
+ "Search people" : "Търси хора",
"People" : "Хора",
"Results" : "Резултати",
"Load more results" : "Зареждане на още резултати",
+ "Search in" : "Търси в",
"Log in" : "Вписване",
"Logging in …" : "Вписване ...",
"Log in to {productName}" : "Вписване в {productName}",
+ "This account is disabled" : "Профилът е неактивен",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "Открихме множество невалидни опити за влизане от вашия IP. Следователно следващото ви влизане се ограничава за 30 секунди.",
"Account name or email" : "Име на профил или имейл",
"Account name" : "Име на профил",
@@ -152,8 +170,8 @@ OC.L10N.register(
"Settings menu" : "Настройки",
"Loading your contacts …" : "Зареждане на контактите ...",
"Looking for {term} …" : "Търси се {term} …",
- "Search contacts" : "Търсене на/в/ контакти",
- "Reset search" : "Рестартирай търсенето",
+ "Search contacts" : "Търсене в контакти",
+ "Reset search" : "Ново търсене",
"Search contacts …" : "Търсене в контактите ...",
"Could not load your contacts" : "Контактите не могат да бъдат заредени",
"No contacts found" : "Няма намерени контакти",
@@ -238,12 +256,13 @@ OC.L10N.register(
"Collaborative tags" : "Съвместни етикети",
"No tags found" : "Не са открити етикети",
"Personal" : "Лични",
+ "Accounts" : "Профили",
"Admin" : "Админ",
"Help" : "Помощ",
"Access forbidden" : "Достъпът е забранен",
+ "Back to %s" : "Обратно към %s",
"Page not found" : "Страницата не е намерена",
"The page could not be found on the server or you may not be allowed to view it." : "Страницата не може да бъде намерена на сървъра или може да не ви е позволено да я видите.",
- "Back to %s" : "Обратно към %s",
"Too many requests" : "Твърде много заявки",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Имаше твърде много заявки от вашата мрежа. Опитайте отново по-късно или се свържете с вашия администратор, ако това е грешка.",
"Error" : "Грешка",
@@ -315,14 +334,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "В момента се извършва профилактика на %s, може да продължи дълго.",
"This page will refresh itself when the instance is available again." : "Страницата ще се зареди автоматично, когато е отново на линия.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Свържете се със системния администратор ако това съобщение се задържи твърде дълго или се е появило неочаквано.",
- "Currently open" : "В момента са отворени",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Чат, видео разговори, споделяне на екрана, онлайн срещи и уеб конферентни връзки - във вашия браузър и с мобилни приложения.",
"You have not added any info yet" : "Все още не сте добавили никаква информация",
"{user} has not added any info yet" : "{user} все още не е добавил никаква информация",
"Error opening the user status modal, try hard refreshing the page" : "Грешка при отваряне на модалния статус на потребителя, опитайте настоятелно да опресните страницата",
"Edit Profile" : "Редактиране на профил",
"The headline and about sections will show up here" : "Заглавието и секцията за информация ще се покажат тук",
- "Error loading message template: {error}" : "Грешка при зареждането на шаблона за съобщения: {error}",
"Very weak password" : "Много проста парола",
"Weak password" : "Проста парола",
"So-so password" : "Не особено добра парола",
@@ -332,9 +349,12 @@ OC.L10N.register(
"The profile does not exist." : "Профилът не съществува.",
"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Директория с данни и файлове ви са вероятно са достъпни от Интернет, защото файлът \".htaccess\" не функционира.",
"For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "Информация, как да настроите сървъра коректно, ще намерите в <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">документацията</a>.",
+ "<strong>Create an admin account</strong>" : "<strong>Създай администраторски профил</strong>",
+ "New admin account name" : "Ново име на администраторския профил",
"Show password" : "Покажи парола",
"Toggle password visibility" : "Превключване на видимостта на парола",
"Configure the database" : "Конфигуриране на базата данни",
- "Only %s is available." : "Само %s е наличен."
+ "Only %s is available." : "Само %s е наличен.",
+ "Database account" : "Профил за база данни"
},
"nplurals=2; plural=(n != 1);");
diff --git a/core/l10n/bg.json b/core/l10n/bg.json
index 2e31213252e..ea91cde0611 100644
--- a/core/l10n/bg.json
+++ b/core/l10n/bg.json
@@ -25,8 +25,10 @@
"Could not complete login" : "Не може да завърши влизането",
"State token missing" : "Липсва токен/маркер/ на състоянието",
"Your login token is invalid or has expired" : "Вашият маркер за вход е невалиден или е изтекъл",
+ "Please use original client" : "Моля, използвайте оригиналния клиент.",
"This community release of Nextcloud is unsupported and push notifications are limited." : "Тази общностна версия на Nextcloud не се поддържа и push известия са ограничени.",
"Login" : "Вписване",
+ "Unsupported email length (>255)" : "Дължината на е-мейлът не се поддържа (>255 символа)",
"Password reset is disabled" : "Възстановяването на пароли е забранено",
"Could not reset password because the token is expired" : "Възстановяването на паролата е неуспешно, защото токенът е с изтекла валидност",
"Could not reset password because the token is invalid" : "Възстановяването на паролата е неуспешно, защото токенът е невалиден",
@@ -36,23 +38,28 @@
"Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Кликнете върху следния бутон, за да възстановите паролата си. Ако не сте поискали възстановяване на паролата, игнорирайте този имейл.",
"Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Кликнете върху следната връзка, за да възстановите паролата си. Ако не сте поискали възстановяване на паролата, игнорирайте този имейл.",
"Reset your password" : "Възстановяване на вашата парола",
+ "The given provider is not available" : "Доставчикът не е наличен",
+ "Task not found" : "Задачата не е открита",
"Internal error" : "Вътрешна грешка",
"Not found" : "Не е намерен",
+ "Node is locked" : "Точката е заключена (Node is locked)",
+ "Bad request" : "Лоша заявка",
+ "Requested task type does not exist" : "Заявената задача не съществува",
"Image not found" : "Изображението не е открито",
"No translation provider available" : "Няма наличен доставчик на преводи",
"Could not detect language" : "Не можа да се установи езика",
"Unable to translate" : "Не може да се преведе",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Стъпка на поправка:",
+ "Repair info:" : "Информация за поправка:",
+ "Repair warning:" : "Предупреждение при поправка:",
+ "Repair error:" : "Грешка при поправка:",
"Nextcloud Server" : "Nextcloud сървър",
"Some of your link shares have been removed" : "Някои от вашите споделяния на връзки са премахнати",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Поради грешка в сигурността трябваше да премахнем някои от вашите споделяния на връзки. Моля, вижте връзката за повече информация.",
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Въведете своя абонаментен ключ в приложението за поддръжка, за да увеличите лимита на акаунта. Това също ви предоставя всички допълнителни предимства, които Nextcloud Enterprise предлага и е силно препоръчително за работа в компании.",
"Learn more ↗" : "Научете повече ↗",
"Preparing update" : "Подготовка за актуализиране",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Стъпка на поправка:",
- "Repair info:" : "Информация за поправка:",
- "Repair warning:" : "Предупреждение при поправка:",
- "Repair error:" : "Грешка при поправка:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Моля, използвайте програмата за актуализиране от командния ред, тъй като актуализирането чрез браузъра е забранено в config.php.",
"Turned on maintenance mode" : "Режимът за поддръжка е включен",
"Turned off maintenance mode" : "Режимът за поддръжка е изключен",
@@ -98,19 +105,30 @@
"Create share" : "Създаване на споделяне",
"Direct link copied to clipboard" : "Директният адрес е копиран в клипборда",
"Please copy the link manually:" : "Моля копирайте адреса ръчно:",
+ "Search in date range" : "Търси във времеви период",
+ "Search in current app" : "Търси в настоящето приложение",
+ "Clear search" : "Изчисти търсенето",
+ "Search everywhere" : "Търси навсякъде",
"Searching …" : "Търсене ...",
"Start typing to search" : "Започнете да пишете, за търсене",
"Today" : "Днес",
+ "Last 7 days" : "Последните 7 дни",
+ "Last 30 days" : "Последните 30 дни",
"This year" : "Тази година",
"Last year" : "Миналата година",
+ "Unified search" : "Глобално търсене",
+ "Search apps, files, tags, messages" : "Търси приложения, файлове, тагове, съобщения",
"Places" : "Места",
"Date" : "Дата",
+ "Search people" : "Търси хора",
"People" : "Хора",
"Results" : "Резултати",
"Load more results" : "Зареждане на още резултати",
+ "Search in" : "Търси в",
"Log in" : "Вписване",
"Logging in …" : "Вписване ...",
"Log in to {productName}" : "Вписване в {productName}",
+ "This account is disabled" : "Профилът е неактивен",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "Открихме множество невалидни опити за влизане от вашия IP. Следователно следващото ви влизане се ограничава за 30 секунди.",
"Account name or email" : "Име на профил или имейл",
"Account name" : "Име на профил",
@@ -150,8 +168,8 @@
"Settings menu" : "Настройки",
"Loading your contacts …" : "Зареждане на контактите ...",
"Looking for {term} …" : "Търси се {term} …",
- "Search contacts" : "Търсене на/в/ контакти",
- "Reset search" : "Рестартирай търсенето",
+ "Search contacts" : "Търсене в контакти",
+ "Reset search" : "Ново търсене",
"Search contacts …" : "Търсене в контактите ...",
"Could not load your contacts" : "Контактите не могат да бъдат заредени",
"No contacts found" : "Няма намерени контакти",
@@ -236,12 +254,13 @@
"Collaborative tags" : "Съвместни етикети",
"No tags found" : "Не са открити етикети",
"Personal" : "Лични",
+ "Accounts" : "Профили",
"Admin" : "Админ",
"Help" : "Помощ",
"Access forbidden" : "Достъпът е забранен",
+ "Back to %s" : "Обратно към %s",
"Page not found" : "Страницата не е намерена",
"The page could not be found on the server or you may not be allowed to view it." : "Страницата не може да бъде намерена на сървъра или може да не ви е позволено да я видите.",
- "Back to %s" : "Обратно към %s",
"Too many requests" : "Твърде много заявки",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Имаше твърде много заявки от вашата мрежа. Опитайте отново по-късно или се свържете с вашия администратор, ако това е грешка.",
"Error" : "Грешка",
@@ -313,14 +332,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "В момента се извършва профилактика на %s, може да продължи дълго.",
"This page will refresh itself when the instance is available again." : "Страницата ще се зареди автоматично, когато е отново на линия.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Свържете се със системния администратор ако това съобщение се задържи твърде дълго или се е появило неочаквано.",
- "Currently open" : "В момента са отворени",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Чат, видео разговори, споделяне на екрана, онлайн срещи и уеб конферентни връзки - във вашия браузър и с мобилни приложения.",
"You have not added any info yet" : "Все още не сте добавили никаква информация",
"{user} has not added any info yet" : "{user} все още не е добавил никаква информация",
"Error opening the user status modal, try hard refreshing the page" : "Грешка при отваряне на модалния статус на потребителя, опитайте настоятелно да опресните страницата",
"Edit Profile" : "Редактиране на профил",
"The headline and about sections will show up here" : "Заглавието и секцията за информация ще се покажат тук",
- "Error loading message template: {error}" : "Грешка при зареждането на шаблона за съобщения: {error}",
"Very weak password" : "Много проста парола",
"Weak password" : "Проста парола",
"So-so password" : "Не особено добра парола",
@@ -330,9 +347,12 @@
"The profile does not exist." : "Профилът не съществува.",
"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Директория с данни и файлове ви са вероятно са достъпни от Интернет, защото файлът \".htaccess\" не функционира.",
"For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "Информация, как да настроите сървъра коректно, ще намерите в <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">документацията</a>.",
+ "<strong>Create an admin account</strong>" : "<strong>Създай администраторски профил</strong>",
+ "New admin account name" : "Ново име на администраторския профил",
"Show password" : "Покажи парола",
"Toggle password visibility" : "Превключване на видимостта на парола",
"Configure the database" : "Конфигуриране на базата данни",
- "Only %s is available." : "Само %s е наличен."
+ "Only %s is available." : "Само %s е наличен.",
+ "Database account" : "Профил за база данни"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/core/l10n/ca.js b/core/l10n/ca.js
index 4e0b0bae7a9..f914910cc9e 100644
--- a/core/l10n/ca.js
+++ b/core/l10n/ca.js
@@ -51,6 +51,11 @@ OC.L10N.register(
"No translation provider available" : "No hi ha cap proveïdor de traduccions disponible",
"Could not detect language" : "No s'ha pogut detectar la llengua",
"Unable to translate" : "No s'ha pogut traduir",
+ "[%d / %d]: %s" : "[%d/%d]: %s",
+ "Repair step:" : "Pas de reparació:",
+ "Repair info:" : "Informació de reparació:",
+ "Repair warning:" : "Avís de reparació:",
+ "Repair error:" : "Error de reparació:",
"Nextcloud Server" : "Servidor del Nextcloud",
"Some of your link shares have been removed" : "S'han suprimit alguns dels vostres enllaços compartits",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "A causa d'un error de seguretat, hem suprimit alguns dels vostres enllaços compartits. Consulteu l'enllaç per a obtenir més informació.",
@@ -58,11 +63,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Introduïu la vostra clau de subscripció a l'aplicació de suport per augmentar el límit del compte. Això també us atorga tots els avantatges addicionals que ofereix Nextcloud Enterprise i és molt recomanable per al funcionament en empreses.",
"Learn more ↗" : "Més informació ↗",
"Preparing update" : "S'està preparant l'actualització",
- "[%d / %d]: %s" : "[%d/%d]: %s",
- "Repair step:" : "Pas de reparació:",
- "Repair info:" : "Informació de reparació:",
- "Repair warning:" : "Avís de reparació:",
- "Repair error:" : "Error de reparació:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Utilitzeu l'actualitzador de línia d'ordres; l'actualització mitjançant el navegador està inhabilitada en el fitxer config.php.",
"Turned on maintenance mode" : "S'ha activat el mode de manteniment",
"Turned off maintenance mode" : "S'ha desactivat el mode de manteniment",
@@ -300,9 +300,9 @@ OC.L10N.register(
"Admin" : "Administració",
"Help" : "Ajuda",
"Access forbidden" : "Accés prohibit",
+ "Back to %s" : "Torna a %s",
"Page not found" : "No s'ha trobat la pàgina",
"The page could not be found on the server or you may not be allowed to view it." : "No s'ha trobat la pàgina en el servidor o és possible que no tingueu permís per a visualitzar-la.",
- "Back to %s" : "Torna a %s",
"Too many requests" : "Excés de sol·licituds",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "La vostra xarxa ha enviat un excés de sol·licituds. Torneu-ho a provar més tard o contacte amb l'administrador si és un error.",
"Error" : "Error",
@@ -378,16 +378,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Aquesta instància del %s està actualment en mode de manteniment i podria estar-ho una estona.",
"This page will refresh itself when the instance is available again." : "Aquesta pàgina s'actualitzarà automàticament quan la instància torni a estar disponible.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contacteu amb l'administrador del sistema si aquest missatge persisteix o si apareix inesperadament.",
- "Currently open" : "Oberta actualment",
- "Login with username or email" : "Inici de sessió amb nom d'usuari o correu electrònic",
- "Login with username" : "Inici de sessió amb el nom d'usuari",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Xat, videotrucades, pantalla compartida, reunions en línia i conferències per Internet; en el navegador i amb aplicacions mòbils.",
"You have not added any info yet" : "Encara no heu afegit cap informació",
"{user} has not added any info yet" : "{user} encara no ha afegit cap informació",
"Error opening the user status modal, try hard refreshing the page" : "S'ha produït un error en obrir el quadre de diàleg modal d'estat de l'usuari, proveu d'actualitzar la pàgina",
"Edit Profile" : "Edita el perfil",
"The headline and about sections will show up here" : "La capçalera i les seccions d'informació es mostraran aquí",
- "Error loading message template: {error}" : "S'ha produït un error en carregar la plantilla del missatge: {error}",
"Very weak password" : "Contrasenya molt feble",
"Weak password" : "Contrasenya feble",
"So-so password" : "Contrasenya justa",
diff --git a/core/l10n/ca.json b/core/l10n/ca.json
index 6b7f78e5ed7..bb85e1beb29 100644
--- a/core/l10n/ca.json
+++ b/core/l10n/ca.json
@@ -49,6 +49,11 @@
"No translation provider available" : "No hi ha cap proveïdor de traduccions disponible",
"Could not detect language" : "No s'ha pogut detectar la llengua",
"Unable to translate" : "No s'ha pogut traduir",
+ "[%d / %d]: %s" : "[%d/%d]: %s",
+ "Repair step:" : "Pas de reparació:",
+ "Repair info:" : "Informació de reparació:",
+ "Repair warning:" : "Avís de reparació:",
+ "Repair error:" : "Error de reparació:",
"Nextcloud Server" : "Servidor del Nextcloud",
"Some of your link shares have been removed" : "S'han suprimit alguns dels vostres enllaços compartits",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "A causa d'un error de seguretat, hem suprimit alguns dels vostres enllaços compartits. Consulteu l'enllaç per a obtenir més informació.",
@@ -56,11 +61,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Introduïu la vostra clau de subscripció a l'aplicació de suport per augmentar el límit del compte. Això també us atorga tots els avantatges addicionals que ofereix Nextcloud Enterprise i és molt recomanable per al funcionament en empreses.",
"Learn more ↗" : "Més informació ↗",
"Preparing update" : "S'està preparant l'actualització",
- "[%d / %d]: %s" : "[%d/%d]: %s",
- "Repair step:" : "Pas de reparació:",
- "Repair info:" : "Informació de reparació:",
- "Repair warning:" : "Avís de reparació:",
- "Repair error:" : "Error de reparació:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Utilitzeu l'actualitzador de línia d'ordres; l'actualització mitjançant el navegador està inhabilitada en el fitxer config.php.",
"Turned on maintenance mode" : "S'ha activat el mode de manteniment",
"Turned off maintenance mode" : "S'ha desactivat el mode de manteniment",
@@ -298,9 +298,9 @@
"Admin" : "Administració",
"Help" : "Ajuda",
"Access forbidden" : "Accés prohibit",
+ "Back to %s" : "Torna a %s",
"Page not found" : "No s'ha trobat la pàgina",
"The page could not be found on the server or you may not be allowed to view it." : "No s'ha trobat la pàgina en el servidor o és possible que no tingueu permís per a visualitzar-la.",
- "Back to %s" : "Torna a %s",
"Too many requests" : "Excés de sol·licituds",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "La vostra xarxa ha enviat un excés de sol·licituds. Torneu-ho a provar més tard o contacte amb l'administrador si és un error.",
"Error" : "Error",
@@ -376,16 +376,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Aquesta instància del %s està actualment en mode de manteniment i podria estar-ho una estona.",
"This page will refresh itself when the instance is available again." : "Aquesta pàgina s'actualitzarà automàticament quan la instància torni a estar disponible.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contacteu amb l'administrador del sistema si aquest missatge persisteix o si apareix inesperadament.",
- "Currently open" : "Oberta actualment",
- "Login with username or email" : "Inici de sessió amb nom d'usuari o correu electrònic",
- "Login with username" : "Inici de sessió amb el nom d'usuari",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Xat, videotrucades, pantalla compartida, reunions en línia i conferències per Internet; en el navegador i amb aplicacions mòbils.",
"You have not added any info yet" : "Encara no heu afegit cap informació",
"{user} has not added any info yet" : "{user} encara no ha afegit cap informació",
"Error opening the user status modal, try hard refreshing the page" : "S'ha produït un error en obrir el quadre de diàleg modal d'estat de l'usuari, proveu d'actualitzar la pàgina",
"Edit Profile" : "Edita el perfil",
"The headline and about sections will show up here" : "La capçalera i les seccions d'informació es mostraran aquí",
- "Error loading message template: {error}" : "S'ha produït un error en carregar la plantilla del missatge: {error}",
"Very weak password" : "Contrasenya molt feble",
"Weak password" : "Contrasenya feble",
"So-so password" : "Contrasenya justa",
diff --git a/core/l10n/cs.js b/core/l10n/cs.js
index 13d9b7a2cdc..7faa43c9173 100644
--- a/core/l10n/cs.js
+++ b/core/l10n/cs.js
@@ -35,7 +35,7 @@ OC.L10N.register(
"Could not reset password because the token is expired" : "Heslo není možné resetovat, protože platnost tokenu skončila",
"Could not reset password because the token is invalid" : "Heslo není možné resetovat, protože token není platný",
"Password is too long. Maximum allowed length is 469 characters." : "Heslo je příliš dlouhé. Délka může být nejvýše 469 znaků.",
- "%s password reset" : "reset hesla %s",
+ "%s password reset" : "Reset hesla uživatele %s",
"Password reset" : "Reset hesla",
"Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Pokud chcete resetovat své heslo, klikněte na tlačítko níže. Pokud jste o resetování hesla nežádali, tento e-mail ignorujte.",
"Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Pokud chcete resetovat své heslo, klikněte na následující odkaz. Pokud jste o reset nežádali, tento e-mail ignorujte.",
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Úkol nenalezen",
"Internal error" : "Vnitřní chyba",
"Not found" : "Nenalezeno",
+ "Node is locked" : "Uzel je uzamčen",
"Bad request" : "Chybný požadavek",
"Requested task type does not exist" : "Požadovaný typ úkolu neexistuje",
"Necessary language model provider is not available" : "Nezbytný poskytovatel jazykového modelu není k dsipozici",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Není k dispozici žádný poskytovatel překladu",
"Could not detect language" : "Nepodařilo se zjistit jazyk",
"Unable to translate" : "Nedaří se přeložit",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Krok opravy:",
+ "Repair info:" : "Informace o opravě:",
+ "Repair warning:" : "Varování ohledně opravy:",
+ "Repair error:" : "Chyba opravy:",
"Nextcloud Server" : "Server Nextcloud",
"Some of your link shares have been removed" : "Některá vaše sdílení odkazem byla odstraněna",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Kvůli chybě v zabezpečení bylo třeba odstranit některé z sdílení odkazem. Další informace viz odkaz.",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Aby bylo možné zvýšit limit počtu uživatelských účtů, zadejte v aplikaci podpora svůj klíč k předplatnému. Toto také zpřístupní veškeré další výhody, které nabízí Nextcloud pro podniky a je velmi doporučeno pro provozování ve firmách.",
"Learn more ↗" : "Zjistit víc ↗",
"Preparing update" : "Příprava pro aktualizaci",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Krok opravy:",
- "Repair info:" : "Informace o opravě:",
- "Repair warning:" : "Varování ohledně opravy:",
- "Repair error:" : "Chyba opravy:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Zaktualizujte z příkazového řádku, protože aktualizování z webového prohlížeče je vypnuté ve vašem config.php.",
"Turned on maintenance mode" : "Přepnuto do režimu údržby",
"Turned off maintenance mode" : "Přepnuto zpět z režimu údržby",
@@ -83,6 +84,7 @@ OC.L10N.register(
"Windows Command Script" : "Windows cmd skript",
"Electronic book document" : "Dokument – elektronická knížka",
"TrueType Font Collection" : "Sada TrueType písem",
+ "Web Open Font Format" : "Písmo ve formátu Web Open",
"GPX geographic data" : "Geografická data GPX",
"Gzip archive" : "Gzip archiv",
"Adobe Illustrator document" : "Dokument Adobe Illustrator",
@@ -98,8 +100,11 @@ OC.L10N.register(
"RSS summary" : "RSS shrnutí",
"Android package" : "Balíček pro Android",
"KML geographic data" : "Geografická data KML",
+ "KML geographic compressed data" : "Komprimovaná KLM geografická data",
+ "Lotus Word Pro document" : "Dokument Lotus Word Pro",
"Excel spreadsheet" : "Sešit Excel",
"Excel add-in" : "Doplněk do Excel",
+ "Excel 2007 binary spreadsheet" : "Sešit Excel 2007 (v binárním formátu)",
"Excel spreadsheet template" : "Šablona sešitu Excel",
"Outlook Message" : "Outlook zpráva",
"PowerPoint presentation" : "PowerPoint prezentace",
@@ -108,15 +113,25 @@ OC.L10N.register(
"Word document" : "Dokument Word",
"ODF formula" : "ODF vzorec",
"ODG drawing" : "ODG kresba",
+ "ODG drawing (Flat XML)" : "Kresba ve formátu ODG (ploché XML)",
"ODG template" : "ODG šablona",
"ODP presentation" : "ODP prezentace",
+ "ODP presentation (Flat XML)" : "Prezentace ve formátu ODP (ploché XML)",
"ODP template" : "ODP šablona",
"ODS spreadsheet" : "ODS šablona",
+ "ODS spreadsheet (Flat XML)" : "Sešit ve formátu ODS (ploché XML)",
"ODS template" : "ODS šablona",
"ODT document" : "ODT dokument",
+ "ODT document (Flat XML)" : "Dokument ve formátu ODT (ploché XML)",
"ODT template" : "ODT šablona",
"PowerPoint 2007 presentation" : "Prezentace PowerPoint 2007",
"PowerPoint 2007 show" : "Show PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Šablona prezentace PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Sešit Excel 2007",
+ "Excel 2007 spreadsheet template" : "Šablona sešitu Excel 2007",
+ "Word 2007 document" : "Dokument Word 2007",
+ "Word 2007 document template" : "Šablona dokumentu Word 2007",
+ "Microsoft Visio document" : "Dokument Microsoft Visio",
"WordPerfect document" : "WordPerfect dolument",
"7-zip archive" : "7-zip archiv",
"Blender scene" : "Scéna v Blenderu",
@@ -126,6 +141,7 @@ OC.L10N.register(
"Unknown font" : "Neznámé písmo",
"Krita document" : "Krita dokument",
"Mobipocket e-book" : "Mobipocket e-kniha",
+ "Windows Installer package" : "Balíček Windows instalátoru",
"Perl script" : "Perl skript",
"PHP script" : "PHP skript",
"Tar archive" : "Tar archiv",
@@ -138,16 +154,23 @@ OC.L10N.register(
"MPEG-4 audio" : "MPEG-4 audio",
"MP3 audio" : "MP3 audio",
"Ogg audio" : "Ogg audio",
+ "RIFF/WAVe standard Audio" : "Audio ve standardu RIFF/WAVe",
"WebM audio" : "WebM audio",
+ "MP3 ShoutCast playlist" : "Seznam stop MP3 ShoutCast",
+ "Windows BMP image" : "Windows BMP obrázek",
+ "Better Portable Graphics image" : "Obrázek ve formátu Beter Portable Graphics",
"EMF image" : "EMF obrázek",
"GIF image" : "GIF obrázek",
"HEIC image" : "HEIC obrázek",
"HEIF image" : "HEIF obrázek",
+ "JPEG-2000 JP2 image" : "Obrázek JPEG-2000 JP2",
"JPEG image" : "JPEG obrázek",
"PNG image" : "Obrázek PNG",
"SVG image" : "SVG obrázek",
+ "Truevision Targa image" : "Obrázek Truevision Targa",
"TIFF image" : "TIFF obrázek",
"WebP image" : "WebP obrázek",
+ "Digital raw image" : "Obrázek – digitální negativ",
"Windows Icon" : "Windows ikona",
"Email message" : "E-mailová zpráva",
"VCS/ICS calendar" : "VCS/ICS kalednář",
@@ -156,6 +179,10 @@ OC.L10N.register(
"HTML document" : "HTML dokument",
"Markdown document" : "Markdown dokument",
"Org-mode file" : "soubor Org-mode",
+ "Plain text document" : "Dokument neformátovaného textu",
+ "Rich Text document" : "Dokument typu Rich Text",
+ "Electronic business card" : "Elektronická vizitka",
+ "C++ source code" : "Zdrojový kód v C++",
"LDIF address book" : "LDIF adresář kontaktů",
"NFO document" : "NFO dokument",
"PHP source" : "PHP zdrojové kódy",
@@ -301,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "Formulář pro přihlášení je vypnut",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Přihlašovací formulář je v Nextcloud vypnutý. Použijte jinou možnost přihlášení nebo se obraťte na svého správce.",
"More actions" : "Další akce",
+ "User menu" : "Nabídka uživatele",
+ "You will be identified as {user} by the account owner." : "Vlastníkem účtu budete identifikováni jako {user}.",
+ "You are currently not identified." : "V tuto chvíli nejste identifikováni.",
+ "Set public name" : "Nastavit veřejné jméno",
+ "Change public name" : "Změnit veřejné jméno",
"Password is too weak" : "Heslo je příliš snadno prolomitelné",
"Password is weak" : "Heslo je snadno prolomitelné",
"Password is average" : "Heslo je postačující",
@@ -394,9 +426,10 @@ OC.L10N.register(
"Admin" : "Správa",
"Help" : "Nápověda",
"Access forbidden" : "Přístup zakázán",
+ "You are not allowed to access this page." : "Nemáte oprávnění k přístupu k této stránce.",
+ "Back to %s" : "Zpět na %s",
"Page not found" : "Stránka nenalezena",
"The page could not be found on the server or you may not be allowed to view it." : "Stránku se na serveru nepodařilo nalézt nebo nemáte oprávnění ji zobrazit.",
- "Back to %s" : "Zpět na %s",
"Too many requests" : "Příliš mnoho požadavků",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Z vaší sítě bylo příliš mnoho požadavků. Zkuste to později nebo (pokud je toto chyba) se obraťte na svého správce.",
"Error" : "Chyba",
@@ -472,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Tato instance %s se právě nachází v režimu údržby a ta může chvíli trvat.",
"This page will refresh itself when the instance is available again." : "Tato stránka se automaticky znovu načte, jakmile bude tato instance opět dostupná.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Pokud se tato zpráva objevuje trvale nebo nečekaně, obraťte se na správce systému.",
- "Currently open" : "Nyní otevřeno",
- "Login with username or email" : "Přihlásit se uživatelským jménem nebo e-mailem",
- "Login with username" : "Přihlásit se uživatelským jménem",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatování, videohovory, sdílení obrazovky, schůze na dálku a webové konference – ve webovém prohlížeči a mobilních aplikacích.",
"You have not added any info yet" : "Zatím jste nezadali žádné informace",
"{user} has not added any info yet" : "{user} uživatel zatím nezadal žádné informace",
"Error opening the user status modal, try hard refreshing the page" : "Chyba při otevírání dialogu stavu uživatele, pokus o opětovné načtení stránky",
"Edit Profile" : "Upravit profil",
"The headline and about sections will show up here" : "Nadpis a sekce o uživatelích se zobrazí zde",
- "Error loading message template: {error}" : "Chyba při načítání šablony zprávy: {error}",
"Very weak password" : "Velmi snadno prolomitelné heslo",
"Weak password" : "Snadno prolomitelné heslo",
"So-so password" : "Ještě použitelné heslo",
diff --git a/core/l10n/cs.json b/core/l10n/cs.json
index 63821cb4ec0..755951958de 100644
--- a/core/l10n/cs.json
+++ b/core/l10n/cs.json
@@ -33,7 +33,7 @@
"Could not reset password because the token is expired" : "Heslo není možné resetovat, protože platnost tokenu skončila",
"Could not reset password because the token is invalid" : "Heslo není možné resetovat, protože token není platný",
"Password is too long. Maximum allowed length is 469 characters." : "Heslo je příliš dlouhé. Délka může být nejvýše 469 znaků.",
- "%s password reset" : "reset hesla %s",
+ "%s password reset" : "Reset hesla uživatele %s",
"Password reset" : "Reset hesla",
"Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Pokud chcete resetovat své heslo, klikněte na tlačítko níže. Pokud jste o resetování hesla nežádali, tento e-mail ignorujte.",
"Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Pokud chcete resetovat své heslo, klikněte na následující odkaz. Pokud jste o reset nežádali, tento e-mail ignorujte.",
@@ -42,6 +42,7 @@
"Task not found" : "Úkol nenalezen",
"Internal error" : "Vnitřní chyba",
"Not found" : "Nenalezeno",
+ "Node is locked" : "Uzel je uzamčen",
"Bad request" : "Chybný požadavek",
"Requested task type does not exist" : "Požadovaný typ úkolu neexistuje",
"Necessary language model provider is not available" : "Nezbytný poskytovatel jazykového modelu není k dsipozici",
@@ -50,6 +51,11 @@
"No translation provider available" : "Není k dispozici žádný poskytovatel překladu",
"Could not detect language" : "Nepodařilo se zjistit jazyk",
"Unable to translate" : "Nedaří se přeložit",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Krok opravy:",
+ "Repair info:" : "Informace o opravě:",
+ "Repair warning:" : "Varování ohledně opravy:",
+ "Repair error:" : "Chyba opravy:",
"Nextcloud Server" : "Server Nextcloud",
"Some of your link shares have been removed" : "Některá vaše sdílení odkazem byla odstraněna",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Kvůli chybě v zabezpečení bylo třeba odstranit některé z sdílení odkazem. Další informace viz odkaz.",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Aby bylo možné zvýšit limit počtu uživatelských účtů, zadejte v aplikaci podpora svůj klíč k předplatnému. Toto také zpřístupní veškeré další výhody, které nabízí Nextcloud pro podniky a je velmi doporučeno pro provozování ve firmách.",
"Learn more ↗" : "Zjistit víc ↗",
"Preparing update" : "Příprava pro aktualizaci",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Krok opravy:",
- "Repair info:" : "Informace o opravě:",
- "Repair warning:" : "Varování ohledně opravy:",
- "Repair error:" : "Chyba opravy:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Zaktualizujte z příkazového řádku, protože aktualizování z webového prohlížeče je vypnuté ve vašem config.php.",
"Turned on maintenance mode" : "Přepnuto do režimu údržby",
"Turned off maintenance mode" : "Přepnuto zpět z režimu údržby",
@@ -81,6 +82,7 @@
"Windows Command Script" : "Windows cmd skript",
"Electronic book document" : "Dokument – elektronická knížka",
"TrueType Font Collection" : "Sada TrueType písem",
+ "Web Open Font Format" : "Písmo ve formátu Web Open",
"GPX geographic data" : "Geografická data GPX",
"Gzip archive" : "Gzip archiv",
"Adobe Illustrator document" : "Dokument Adobe Illustrator",
@@ -96,8 +98,11 @@
"RSS summary" : "RSS shrnutí",
"Android package" : "Balíček pro Android",
"KML geographic data" : "Geografická data KML",
+ "KML geographic compressed data" : "Komprimovaná KLM geografická data",
+ "Lotus Word Pro document" : "Dokument Lotus Word Pro",
"Excel spreadsheet" : "Sešit Excel",
"Excel add-in" : "Doplněk do Excel",
+ "Excel 2007 binary spreadsheet" : "Sešit Excel 2007 (v binárním formátu)",
"Excel spreadsheet template" : "Šablona sešitu Excel",
"Outlook Message" : "Outlook zpráva",
"PowerPoint presentation" : "PowerPoint prezentace",
@@ -106,15 +111,25 @@
"Word document" : "Dokument Word",
"ODF formula" : "ODF vzorec",
"ODG drawing" : "ODG kresba",
+ "ODG drawing (Flat XML)" : "Kresba ve formátu ODG (ploché XML)",
"ODG template" : "ODG šablona",
"ODP presentation" : "ODP prezentace",
+ "ODP presentation (Flat XML)" : "Prezentace ve formátu ODP (ploché XML)",
"ODP template" : "ODP šablona",
"ODS spreadsheet" : "ODS šablona",
+ "ODS spreadsheet (Flat XML)" : "Sešit ve formátu ODS (ploché XML)",
"ODS template" : "ODS šablona",
"ODT document" : "ODT dokument",
+ "ODT document (Flat XML)" : "Dokument ve formátu ODT (ploché XML)",
"ODT template" : "ODT šablona",
"PowerPoint 2007 presentation" : "Prezentace PowerPoint 2007",
"PowerPoint 2007 show" : "Show PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Šablona prezentace PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Sešit Excel 2007",
+ "Excel 2007 spreadsheet template" : "Šablona sešitu Excel 2007",
+ "Word 2007 document" : "Dokument Word 2007",
+ "Word 2007 document template" : "Šablona dokumentu Word 2007",
+ "Microsoft Visio document" : "Dokument Microsoft Visio",
"WordPerfect document" : "WordPerfect dolument",
"7-zip archive" : "7-zip archiv",
"Blender scene" : "Scéna v Blenderu",
@@ -124,6 +139,7 @@
"Unknown font" : "Neznámé písmo",
"Krita document" : "Krita dokument",
"Mobipocket e-book" : "Mobipocket e-kniha",
+ "Windows Installer package" : "Balíček Windows instalátoru",
"Perl script" : "Perl skript",
"PHP script" : "PHP skript",
"Tar archive" : "Tar archiv",
@@ -136,16 +152,23 @@
"MPEG-4 audio" : "MPEG-4 audio",
"MP3 audio" : "MP3 audio",
"Ogg audio" : "Ogg audio",
+ "RIFF/WAVe standard Audio" : "Audio ve standardu RIFF/WAVe",
"WebM audio" : "WebM audio",
+ "MP3 ShoutCast playlist" : "Seznam stop MP3 ShoutCast",
+ "Windows BMP image" : "Windows BMP obrázek",
+ "Better Portable Graphics image" : "Obrázek ve formátu Beter Portable Graphics",
"EMF image" : "EMF obrázek",
"GIF image" : "GIF obrázek",
"HEIC image" : "HEIC obrázek",
"HEIF image" : "HEIF obrázek",
+ "JPEG-2000 JP2 image" : "Obrázek JPEG-2000 JP2",
"JPEG image" : "JPEG obrázek",
"PNG image" : "Obrázek PNG",
"SVG image" : "SVG obrázek",
+ "Truevision Targa image" : "Obrázek Truevision Targa",
"TIFF image" : "TIFF obrázek",
"WebP image" : "WebP obrázek",
+ "Digital raw image" : "Obrázek – digitální negativ",
"Windows Icon" : "Windows ikona",
"Email message" : "E-mailová zpráva",
"VCS/ICS calendar" : "VCS/ICS kalednář",
@@ -154,6 +177,10 @@
"HTML document" : "HTML dokument",
"Markdown document" : "Markdown dokument",
"Org-mode file" : "soubor Org-mode",
+ "Plain text document" : "Dokument neformátovaného textu",
+ "Rich Text document" : "Dokument typu Rich Text",
+ "Electronic business card" : "Elektronická vizitka",
+ "C++ source code" : "Zdrojový kód v C++",
"LDIF address book" : "LDIF adresář kontaktů",
"NFO document" : "NFO dokument",
"PHP source" : "PHP zdrojové kódy",
@@ -299,6 +326,11 @@
"Login form is disabled." : "Formulář pro přihlášení je vypnut",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Přihlašovací formulář je v Nextcloud vypnutý. Použijte jinou možnost přihlášení nebo se obraťte na svého správce.",
"More actions" : "Další akce",
+ "User menu" : "Nabídka uživatele",
+ "You will be identified as {user} by the account owner." : "Vlastníkem účtu budete identifikováni jako {user}.",
+ "You are currently not identified." : "V tuto chvíli nejste identifikováni.",
+ "Set public name" : "Nastavit veřejné jméno",
+ "Change public name" : "Změnit veřejné jméno",
"Password is too weak" : "Heslo je příliš snadno prolomitelné",
"Password is weak" : "Heslo je snadno prolomitelné",
"Password is average" : "Heslo je postačující",
@@ -392,9 +424,10 @@
"Admin" : "Správa",
"Help" : "Nápověda",
"Access forbidden" : "Přístup zakázán",
+ "You are not allowed to access this page." : "Nemáte oprávnění k přístupu k této stránce.",
+ "Back to %s" : "Zpět na %s",
"Page not found" : "Stránka nenalezena",
"The page could not be found on the server or you may not be allowed to view it." : "Stránku se na serveru nepodařilo nalézt nebo nemáte oprávnění ji zobrazit.",
- "Back to %s" : "Zpět na %s",
"Too many requests" : "Příliš mnoho požadavků",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Z vaší sítě bylo příliš mnoho požadavků. Zkuste to později nebo (pokud je toto chyba) se obraťte na svého správce.",
"Error" : "Chyba",
@@ -470,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Tato instance %s se právě nachází v režimu údržby a ta může chvíli trvat.",
"This page will refresh itself when the instance is available again." : "Tato stránka se automaticky znovu načte, jakmile bude tato instance opět dostupná.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Pokud se tato zpráva objevuje trvale nebo nečekaně, obraťte se na správce systému.",
- "Currently open" : "Nyní otevřeno",
- "Login with username or email" : "Přihlásit se uživatelským jménem nebo e-mailem",
- "Login with username" : "Přihlásit se uživatelským jménem",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatování, videohovory, sdílení obrazovky, schůze na dálku a webové konference – ve webovém prohlížeči a mobilních aplikacích.",
"You have not added any info yet" : "Zatím jste nezadali žádné informace",
"{user} has not added any info yet" : "{user} uživatel zatím nezadal žádné informace",
"Error opening the user status modal, try hard refreshing the page" : "Chyba při otevírání dialogu stavu uživatele, pokus o opětovné načtení stránky",
"Edit Profile" : "Upravit profil",
"The headline and about sections will show up here" : "Nadpis a sekce o uživatelích se zobrazí zde",
- "Error loading message template: {error}" : "Chyba při načítání šablony zprávy: {error}",
"Very weak password" : "Velmi snadno prolomitelné heslo",
"Weak password" : "Snadno prolomitelné heslo",
"So-so password" : "Ještě použitelné heslo",
diff --git a/core/l10n/da.js b/core/l10n/da.js
index 84b98c35bed..d0c90082033 100644
--- a/core/l10n/da.js
+++ b/core/l10n/da.js
@@ -51,6 +51,11 @@ OC.L10N.register(
"No translation provider available" : "Ingen tilgængelig oversættelsesudbyder",
"Could not detect language" : "Kunne ikke finde sprog",
"Unable to translate" : "Kan ikke oversætte",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Reparationstrin:",
+ "Repair info:" : "Reparationsinfo:",
+ "Repair warning:" : "Reparationsadvarsel:",
+ "Repair error:" : "Reparationsfejl:",
"Nextcloud Server" : "Nextcloud Server",
"Some of your link shares have been removed" : "Nogle af dine delte links er blevet fjernet",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Pga et sikkerhedshul har vi været nødt til at fjerne nogle af dine delte links. Se linket for mere information.",
@@ -58,11 +63,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Indtast din abonnementsnøgle i support app for at øge konto grænsen. Dette giver dig også alle yderligere fordele, som Nextcloud Enterprise tilbyder og anbefales stærkt til driften i virksomheder.",
"Learn more ↗" : "Lær mere ↗",
"Preparing update" : "Forbereder opdatering",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Reparationstrin:",
- "Repair info:" : "Reparationsinfo:",
- "Repair warning:" : "Reparationsadvarsel:",
- "Repair error:" : "Reparationsfejl:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Brug venligst kommandolinjeopdateringen, fordi opdatering via browser er deaktiveret i din config.php.",
"Turned on maintenance mode" : "Startede vedligeholdelsestilstand",
"Turned off maintenance mode" : "Slå vedligeholdelsestilstand fra",
@@ -302,9 +302,9 @@ OC.L10N.register(
"Admin" : "Admin",
"Help" : "Hjælp",
"Access forbidden" : "Adgang forbudt",
+ "Back to %s" : "Tilbage til %s",
"Page not found" : "Siden blev ikke fundet",
"The page could not be found on the server or you may not be allowed to view it." : "Siden kunne ikke findes på serveren, eller du har muligvis ikke tilladelse til at se den.",
- "Back to %s" : "Tilbage til %s",
"Too many requests" : "For mange resultater",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Der har været for mange forespørgsmåler fra dit netværk. Forsøg igen senere eller kontakt din administrator hvis dette er en fejl.",
"Error" : "Fejl",
@@ -380,16 +380,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Denne %s-instans befinder sig i vedligeholdelsestilstand for øjeblikket, hvilket kan tage et stykke tid.",
"This page will refresh itself when the instance is available again." : "Denne side vil genopfriske sig selv, når instancen er tilgængelig igen.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Kontakt systemadministratoren, hvis denne meddelelse fortsætter eller optrådte uventet.",
- "Currently open" : "I øjeblikket åben",
- "Login with username or email" : "Log ind med brugernavn eller e-mail",
- "Login with username" : "Log ind med brugernavn",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chat, video kald, skærmdeling, online møder og web konferencer - i din browser og med mobil apps.",
"You have not added any info yet" : "Du har ikke tilføjet nogen information endnu",
"{user} has not added any info yet" : "{user} har ikke tilføjet nogen oplysninger endnu",
"Error opening the user status modal, try hard refreshing the page" : "Fejl ved åbning af brugerstatusmodal. Prøv at opdatere siden",
"Edit Profile" : "Rediger profil",
"The headline and about sections will show up here" : "Overskriften og om sektionerne vises her",
- "Error loading message template: {error}" : "Fejl ved indlæsning af besked skabelon: {error}",
"Very weak password" : "Meget svagt kodeord",
"Weak password" : "Svagt kodeord",
"So-so password" : "Jævnt kodeord",
diff --git a/core/l10n/da.json b/core/l10n/da.json
index 7b3963e7935..afabea13ef2 100644
--- a/core/l10n/da.json
+++ b/core/l10n/da.json
@@ -49,6 +49,11 @@
"No translation provider available" : "Ingen tilgængelig oversættelsesudbyder",
"Could not detect language" : "Kunne ikke finde sprog",
"Unable to translate" : "Kan ikke oversætte",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Reparationstrin:",
+ "Repair info:" : "Reparationsinfo:",
+ "Repair warning:" : "Reparationsadvarsel:",
+ "Repair error:" : "Reparationsfejl:",
"Nextcloud Server" : "Nextcloud Server",
"Some of your link shares have been removed" : "Nogle af dine delte links er blevet fjernet",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Pga et sikkerhedshul har vi været nødt til at fjerne nogle af dine delte links. Se linket for mere information.",
@@ -56,11 +61,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Indtast din abonnementsnøgle i support app for at øge konto grænsen. Dette giver dig også alle yderligere fordele, som Nextcloud Enterprise tilbyder og anbefales stærkt til driften i virksomheder.",
"Learn more ↗" : "Lær mere ↗",
"Preparing update" : "Forbereder opdatering",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Reparationstrin:",
- "Repair info:" : "Reparationsinfo:",
- "Repair warning:" : "Reparationsadvarsel:",
- "Repair error:" : "Reparationsfejl:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Brug venligst kommandolinjeopdateringen, fordi opdatering via browser er deaktiveret i din config.php.",
"Turned on maintenance mode" : "Startede vedligeholdelsestilstand",
"Turned off maintenance mode" : "Slå vedligeholdelsestilstand fra",
@@ -300,9 +300,9 @@
"Admin" : "Admin",
"Help" : "Hjælp",
"Access forbidden" : "Adgang forbudt",
+ "Back to %s" : "Tilbage til %s",
"Page not found" : "Siden blev ikke fundet",
"The page could not be found on the server or you may not be allowed to view it." : "Siden kunne ikke findes på serveren, eller du har muligvis ikke tilladelse til at se den.",
- "Back to %s" : "Tilbage til %s",
"Too many requests" : "For mange resultater",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Der har været for mange forespørgsmåler fra dit netværk. Forsøg igen senere eller kontakt din administrator hvis dette er en fejl.",
"Error" : "Fejl",
@@ -378,16 +378,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Denne %s-instans befinder sig i vedligeholdelsestilstand for øjeblikket, hvilket kan tage et stykke tid.",
"This page will refresh itself when the instance is available again." : "Denne side vil genopfriske sig selv, når instancen er tilgængelig igen.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Kontakt systemadministratoren, hvis denne meddelelse fortsætter eller optrådte uventet.",
- "Currently open" : "I øjeblikket åben",
- "Login with username or email" : "Log ind med brugernavn eller e-mail",
- "Login with username" : "Log ind med brugernavn",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chat, video kald, skærmdeling, online møder og web konferencer - i din browser og med mobil apps.",
"You have not added any info yet" : "Du har ikke tilføjet nogen information endnu",
"{user} has not added any info yet" : "{user} har ikke tilføjet nogen oplysninger endnu",
"Error opening the user status modal, try hard refreshing the page" : "Fejl ved åbning af brugerstatusmodal. Prøv at opdatere siden",
"Edit Profile" : "Rediger profil",
"The headline and about sections will show up here" : "Overskriften og om sektionerne vises her",
- "Error loading message template: {error}" : "Fejl ved indlæsning af besked skabelon: {error}",
"Very weak password" : "Meget svagt kodeord",
"Weak password" : "Svagt kodeord",
"So-so password" : "Jævnt kodeord",
diff --git a/core/l10n/de.js b/core/l10n/de.js
index 58133cad177..3c45e203a14 100644
--- a/core/l10n/de.js
+++ b/core/l10n/de.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Aufgabe nicht gefunden",
"Internal error" : "Interner Fehler",
"Not found" : "Nicht gefunden",
+ "Node is locked" : "Knoten ist gesperrt",
"Bad request" : "Fehlerhafte Anfrage",
"Requested task type does not exist" : "Angeforderter Aufgabentyp existiert nicht",
"Necessary language model provider is not available" : "Erforderlicher Sprachmodellanbieter ist nicht verfügbar",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Kein Übersetzungsanbieter verfügbar",
"Could not detect language" : "Sprache konnte nicht erkannt werden",
"Unable to translate" : "Kann nicht übersetzt werden",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Reparaturschritt:",
+ "Repair info:" : "Reparaturinformation:",
+ "Repair warning:" : "Reparaturwarnung:",
+ "Repair error:" : "Reparaturfehler:",
"Nextcloud Server" : "Nextcloud-Server",
"Some of your link shares have been removed" : "Einige der geteilten Freigaben wurden entfernt",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Aufgrund eines Sicherheitsfehlers mussten einige der geteilten Freigaben entfernt werden. Weitere Informationen im Link.",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Gib deinen Abonnementschlüssel in der Support-App ein, um das Konto-Limit zu erhöhen. Damit erhältst du auch alle zusätzlichen Vorteile, die Nextcloud Enterprise bietet. Dies ist für den Betrieb in Unternehmen sehr zu empfehlen.",
"Learn more ↗" : "Erfahre mehr ↗",
"Preparing update" : "Update vorbereiten",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Reparaturschritt:",
- "Repair info:" : "Reparaturinformation:",
- "Repair warning:" : "Reparaturwarnung:",
- "Repair error:" : "Reparaturfehler:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Bitte den Kommandozeilen-Updater verwenden, die Browser-Aktualisierung ist in der config.php deaktiviert.",
"Turned on maintenance mode" : "Wartungsmodus eingeschaltet",
"Turned off maintenance mode" : "Wartungsmodus ausgeschaltet",
@@ -327,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "Das Anmeldeformular ist deaktiviert.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Das Nextcloud-Anmeldeformular ist deaktiviert. Nutze ggf. eine andere Anmeldemöglichkeit oder wende dich an deine Administration.",
"More actions" : "Weitere Aktionen",
+ "User menu" : "Benutzermenü",
+ "You will be identified as {user} by the account owner." : "Du wirst vom Kontoinhaber als {user} identifiziert.",
+ "You are currently not identified." : "Du bist derzeit nicht identifiziert.",
+ "Set public name" : "Öffentlichen Namen festlegen",
+ "Change public name" : "Öffentlichen Namen ändern",
"Password is too weak" : "Passwort ist zu schwach",
"Password is weak" : "Passwort ist schwach",
"Password is average" : "Passwort ist durchschnittlich",
@@ -420,9 +426,10 @@ OC.L10N.register(
"Admin" : "Administration",
"Help" : "Hilfe",
"Access forbidden" : "Zugriff verboten",
+ "You are not allowed to access this page." : "Du darfst diese Seite nicht aufrufen.",
+ "Back to %s" : "Zurück zu %s",
"Page not found" : "Seite nicht gefunden",
"The page could not be found on the server or you may not be allowed to view it." : "Die Seite konnte auf dem Server nicht gefunden werden oder du bist nicht berechtigt sie anzusehen.",
- "Back to %s" : "Zurück zu %s",
"Too many requests" : "Zu viele Anfragen",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Zu viele Anfragen aus deinem Netzwerk. Versuche es später erneut oder wende dich an deine Administration, wenn dies ein Fehler sein sollte.",
"Error" : "Fehler",
@@ -498,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Diese Instanz der %s - befindet sich gerade im Wartungsmodus, was eine Weile dauern kann.",
"This page will refresh itself when the instance is available again." : "Diese Seite aktualisiert sich automatisch, sobald die Nextcloud-Instanz wieder verfügbar ist.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Kontaktiere die Systemadministration, wenn diese Meldung dauerhaft oder unerwartet erscheint.",
- "Currently open" : "Derzeit geöffnet",
- "Login with username or email" : "Anmeldung mit Benutzernamen oder E-Mail-Adresse",
- "Login with username" : "Anmeldung mit Benutzernamen",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatten, Videoanrufe, Bildschirmfreigaben, Online-Besprechungen und Webkonferenzen - in deinem Browser sowie mit mobilen Apps.",
"You have not added any info yet" : "Du hast noch keine Infos hinzugefügt",
"{user} has not added any info yet" : "{user} hat noch keine Infos hinzugefügt",
"Error opening the user status modal, try hard refreshing the page" : "Fehler beim Modal-öffnen des Benutzerstatus, versuche die Seite zu aktualisieren",
"Edit Profile" : "Profil bearbeiten",
"The headline and about sections will show up here" : "Die Überschrift und der Infobereich werden hier angezeigt",
- "Error loading message template: {error}" : "Fehler beim Laden der Nachrichtenvorlage: {error}",
"Very weak password" : "Sehr schwaches Passwort",
"Weak password" : "Schwaches Passwort",
"So-so password" : "Passables Passwort",
diff --git a/core/l10n/de.json b/core/l10n/de.json
index 63748ba9758..87619d2d954 100644
--- a/core/l10n/de.json
+++ b/core/l10n/de.json
@@ -42,6 +42,7 @@
"Task not found" : "Aufgabe nicht gefunden",
"Internal error" : "Interner Fehler",
"Not found" : "Nicht gefunden",
+ "Node is locked" : "Knoten ist gesperrt",
"Bad request" : "Fehlerhafte Anfrage",
"Requested task type does not exist" : "Angeforderter Aufgabentyp existiert nicht",
"Necessary language model provider is not available" : "Erforderlicher Sprachmodellanbieter ist nicht verfügbar",
@@ -50,6 +51,11 @@
"No translation provider available" : "Kein Übersetzungsanbieter verfügbar",
"Could not detect language" : "Sprache konnte nicht erkannt werden",
"Unable to translate" : "Kann nicht übersetzt werden",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Reparaturschritt:",
+ "Repair info:" : "Reparaturinformation:",
+ "Repair warning:" : "Reparaturwarnung:",
+ "Repair error:" : "Reparaturfehler:",
"Nextcloud Server" : "Nextcloud-Server",
"Some of your link shares have been removed" : "Einige der geteilten Freigaben wurden entfernt",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Aufgrund eines Sicherheitsfehlers mussten einige der geteilten Freigaben entfernt werden. Weitere Informationen im Link.",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Gib deinen Abonnementschlüssel in der Support-App ein, um das Konto-Limit zu erhöhen. Damit erhältst du auch alle zusätzlichen Vorteile, die Nextcloud Enterprise bietet. Dies ist für den Betrieb in Unternehmen sehr zu empfehlen.",
"Learn more ↗" : "Erfahre mehr ↗",
"Preparing update" : "Update vorbereiten",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Reparaturschritt:",
- "Repair info:" : "Reparaturinformation:",
- "Repair warning:" : "Reparaturwarnung:",
- "Repair error:" : "Reparaturfehler:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Bitte den Kommandozeilen-Updater verwenden, die Browser-Aktualisierung ist in der config.php deaktiviert.",
"Turned on maintenance mode" : "Wartungsmodus eingeschaltet",
"Turned off maintenance mode" : "Wartungsmodus ausgeschaltet",
@@ -325,6 +326,11 @@
"Login form is disabled." : "Das Anmeldeformular ist deaktiviert.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Das Nextcloud-Anmeldeformular ist deaktiviert. Nutze ggf. eine andere Anmeldemöglichkeit oder wende dich an deine Administration.",
"More actions" : "Weitere Aktionen",
+ "User menu" : "Benutzermenü",
+ "You will be identified as {user} by the account owner." : "Du wirst vom Kontoinhaber als {user} identifiziert.",
+ "You are currently not identified." : "Du bist derzeit nicht identifiziert.",
+ "Set public name" : "Öffentlichen Namen festlegen",
+ "Change public name" : "Öffentlichen Namen ändern",
"Password is too weak" : "Passwort ist zu schwach",
"Password is weak" : "Passwort ist schwach",
"Password is average" : "Passwort ist durchschnittlich",
@@ -418,9 +424,10 @@
"Admin" : "Administration",
"Help" : "Hilfe",
"Access forbidden" : "Zugriff verboten",
+ "You are not allowed to access this page." : "Du darfst diese Seite nicht aufrufen.",
+ "Back to %s" : "Zurück zu %s",
"Page not found" : "Seite nicht gefunden",
"The page could not be found on the server or you may not be allowed to view it." : "Die Seite konnte auf dem Server nicht gefunden werden oder du bist nicht berechtigt sie anzusehen.",
- "Back to %s" : "Zurück zu %s",
"Too many requests" : "Zu viele Anfragen",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Zu viele Anfragen aus deinem Netzwerk. Versuche es später erneut oder wende dich an deine Administration, wenn dies ein Fehler sein sollte.",
"Error" : "Fehler",
@@ -496,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Diese Instanz der %s - befindet sich gerade im Wartungsmodus, was eine Weile dauern kann.",
"This page will refresh itself when the instance is available again." : "Diese Seite aktualisiert sich automatisch, sobald die Nextcloud-Instanz wieder verfügbar ist.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Kontaktiere die Systemadministration, wenn diese Meldung dauerhaft oder unerwartet erscheint.",
- "Currently open" : "Derzeit geöffnet",
- "Login with username or email" : "Anmeldung mit Benutzernamen oder E-Mail-Adresse",
- "Login with username" : "Anmeldung mit Benutzernamen",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatten, Videoanrufe, Bildschirmfreigaben, Online-Besprechungen und Webkonferenzen - in deinem Browser sowie mit mobilen Apps.",
"You have not added any info yet" : "Du hast noch keine Infos hinzugefügt",
"{user} has not added any info yet" : "{user} hat noch keine Infos hinzugefügt",
"Error opening the user status modal, try hard refreshing the page" : "Fehler beim Modal-öffnen des Benutzerstatus, versuche die Seite zu aktualisieren",
"Edit Profile" : "Profil bearbeiten",
"The headline and about sections will show up here" : "Die Überschrift und der Infobereich werden hier angezeigt",
- "Error loading message template: {error}" : "Fehler beim Laden der Nachrichtenvorlage: {error}",
"Very weak password" : "Sehr schwaches Passwort",
"Weak password" : "Schwaches Passwort",
"So-so password" : "Passables Passwort",
diff --git a/core/l10n/de_DE.js b/core/l10n/de_DE.js
index 7fffb7faa76..c344bae6c04 100644
--- a/core/l10n/de_DE.js
+++ b/core/l10n/de_DE.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Aufgabe nicht gefunden",
"Internal error" : "Interner Fehler",
"Not found" : "Nicht gefunden",
+ "Node is locked" : "Knoten ist gesperrt",
"Bad request" : "Fehlerhafte Anfrage",
"Requested task type does not exist" : "Angeforderter Aufgabentyp existiert nicht",
"Necessary language model provider is not available" : "Erforderlicher Sprachmodellanbieter ist nicht verfügbar",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Kein Übersetzungsanbieter verfügbar",
"Could not detect language" : "Sprache konnte nicht erkannt werden",
"Unable to translate" : "Kann nicht übersetzt werden",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Reparaturschritt:",
+ "Repair info:" : "Reparaturinformation:",
+ "Repair warning:" : "Reparaturwarnung:",
+ "Repair error:" : "Reparaturfehler:",
"Nextcloud Server" : "Nextcloud-Server",
"Some of your link shares have been removed" : "Einige Ihrer Freigabe-Links wurden entfernt",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Aufgrund eines Sicherheitsfehlers mussten einige Link-Freigaben entfernt werden. Für weitere Informationen siehe Link.",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Geben Sie Ihren Abonnementschlüssel in der Support-App ein, um das Konto-Limit zu erhöhen. Damit erhalten Sie auch alle zusätzlichen Vorteile, die Nextcloud Enterprise bietet. Dies ist für den Betrieb in Unternehmen sehr zu empfehlen.",
"Learn more ↗" : "Erfahren Sie mehr ↗",
"Preparing update" : "Update vorbereiten",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Reparaturschritt:",
- "Repair info:" : "Reparaturinformation:",
- "Repair warning:" : "Reparaturwarnung:",
- "Repair error:" : "Reparaturfehler:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Bitte den Kommandozeilen-Updater verwenden, die Browser-Aktualisierung ist in der config.php deaktiviert.",
"Turned on maintenance mode" : "Wartungsmodus eingeschaltet ",
"Turned off maintenance mode" : "Wartungsmodus ausgeschaltet",
@@ -327,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "Das Anmeldeformular ist deaktiviert.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Das Nextcloud-Anmeldeformular ist deaktiviert. Nutzen Sie ggf. eine andere Anmeldemöglichkeit oder wenden Sie sich an Ihre Administration.",
"More actions" : "Weitere Aktionen",
+ "User menu" : "Benutzermenü",
+ "You will be identified as {user} by the account owner." : "Sie werden vom Kontoinhaber als {user} identifiziert.",
+ "You are currently not identified." : "Sie sind derzeit nicht identifiziert.",
+ "Set public name" : "Öffentlichen Namen festlegen",
+ "Change public name" : "Öffentlichen Namen ändern",
"Password is too weak" : "Passwort ist zu schwach",
"Password is weak" : "Passwort ist schwach",
"Password is average" : "Passwort ist durchschnittlich",
@@ -420,9 +426,10 @@ OC.L10N.register(
"Admin" : "Administration",
"Help" : "Hilfe",
"Access forbidden" : "Zugriff verboten",
+ "You are not allowed to access this page." : "Sie dürfen diese Seite nicht aufrufen.",
+ "Back to %s" : "Zurück zu %s",
"Page not found" : "Seite nicht gefunden",
"The page could not be found on the server or you may not be allowed to view it." : "Die Seite konnte auf dem Server nicht gefunden werden oder Sie sind nicht zum Anzeigen berechtigt.",
- "Back to %s" : "Zurück zu %s",
"Too many requests" : "Zu viele Anfragen",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Zu viele Anfragen aus Ihrem Netzwerk. Versuchen Sie es später erneut oder wenden Sie sich an Ihre Administration, wenn dies ein Fehler sein sollte.",
"Error" : "Fehler",
@@ -498,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Diese %s-Instanz befindet sich gerade im Wartungsmodus, was eine Weile dauern kann.",
"This page will refresh itself when the instance is available again." : "Diese Seite aktualisiert sich automatisch, sobald Nextcloud wieder verfügbar ist.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Kontaktieren Sie Ihre Systemadministration, wenn diese Meldung dauerhaft oder unerwartet erscheint.",
- "Currently open" : "Derzeit geöffnet",
- "Login with username or email" : "Anmeldung mit Benutzernamen oder E-Mail-Adresse",
- "Login with username" : "Anmeldung mit Benutzernamen",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatten, Videoanrufe, Bildschirmfreigaben, Online-Besprechungen und Webkonferenzen - in Ihrem Browser sowie mit mobilen Apps.",
"You have not added any info yet" : "Sie haben noch keine Infos hinzugefügt",
"{user} has not added any info yet" : "{user} hat noch keine Infos hinzugefügt",
"Error opening the user status modal, try hard refreshing the page" : "Fehler beim Modal-öffnen des Benutzerstatus, versuchen Sie die Seite zu aktualisieren",
"Edit Profile" : "Profil bearbeiten",
"The headline and about sections will show up here" : "Die Überschrift und der Infobereich werden hier angezeigt",
- "Error loading message template: {error}" : "Fehler beim Laden der Nachrichtenvorlage: {error}",
"Very weak password" : "Sehr schwaches Passwort",
"Weak password" : "Schwaches Passwort",
"So-so password" : "Passables Passwort",
diff --git a/core/l10n/de_DE.json b/core/l10n/de_DE.json
index 8c7e3c6f14e..de8445d0c50 100644
--- a/core/l10n/de_DE.json
+++ b/core/l10n/de_DE.json
@@ -42,6 +42,7 @@
"Task not found" : "Aufgabe nicht gefunden",
"Internal error" : "Interner Fehler",
"Not found" : "Nicht gefunden",
+ "Node is locked" : "Knoten ist gesperrt",
"Bad request" : "Fehlerhafte Anfrage",
"Requested task type does not exist" : "Angeforderter Aufgabentyp existiert nicht",
"Necessary language model provider is not available" : "Erforderlicher Sprachmodellanbieter ist nicht verfügbar",
@@ -50,6 +51,11 @@
"No translation provider available" : "Kein Übersetzungsanbieter verfügbar",
"Could not detect language" : "Sprache konnte nicht erkannt werden",
"Unable to translate" : "Kann nicht übersetzt werden",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Reparaturschritt:",
+ "Repair info:" : "Reparaturinformation:",
+ "Repair warning:" : "Reparaturwarnung:",
+ "Repair error:" : "Reparaturfehler:",
"Nextcloud Server" : "Nextcloud-Server",
"Some of your link shares have been removed" : "Einige Ihrer Freigabe-Links wurden entfernt",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Aufgrund eines Sicherheitsfehlers mussten einige Link-Freigaben entfernt werden. Für weitere Informationen siehe Link.",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Geben Sie Ihren Abonnementschlüssel in der Support-App ein, um das Konto-Limit zu erhöhen. Damit erhalten Sie auch alle zusätzlichen Vorteile, die Nextcloud Enterprise bietet. Dies ist für den Betrieb in Unternehmen sehr zu empfehlen.",
"Learn more ↗" : "Erfahren Sie mehr ↗",
"Preparing update" : "Update vorbereiten",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Reparaturschritt:",
- "Repair info:" : "Reparaturinformation:",
- "Repair warning:" : "Reparaturwarnung:",
- "Repair error:" : "Reparaturfehler:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Bitte den Kommandozeilen-Updater verwenden, die Browser-Aktualisierung ist in der config.php deaktiviert.",
"Turned on maintenance mode" : "Wartungsmodus eingeschaltet ",
"Turned off maintenance mode" : "Wartungsmodus ausgeschaltet",
@@ -325,6 +326,11 @@
"Login form is disabled." : "Das Anmeldeformular ist deaktiviert.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Das Nextcloud-Anmeldeformular ist deaktiviert. Nutzen Sie ggf. eine andere Anmeldemöglichkeit oder wenden Sie sich an Ihre Administration.",
"More actions" : "Weitere Aktionen",
+ "User menu" : "Benutzermenü",
+ "You will be identified as {user} by the account owner." : "Sie werden vom Kontoinhaber als {user} identifiziert.",
+ "You are currently not identified." : "Sie sind derzeit nicht identifiziert.",
+ "Set public name" : "Öffentlichen Namen festlegen",
+ "Change public name" : "Öffentlichen Namen ändern",
"Password is too weak" : "Passwort ist zu schwach",
"Password is weak" : "Passwort ist schwach",
"Password is average" : "Passwort ist durchschnittlich",
@@ -418,9 +424,10 @@
"Admin" : "Administration",
"Help" : "Hilfe",
"Access forbidden" : "Zugriff verboten",
+ "You are not allowed to access this page." : "Sie dürfen diese Seite nicht aufrufen.",
+ "Back to %s" : "Zurück zu %s",
"Page not found" : "Seite nicht gefunden",
"The page could not be found on the server or you may not be allowed to view it." : "Die Seite konnte auf dem Server nicht gefunden werden oder Sie sind nicht zum Anzeigen berechtigt.",
- "Back to %s" : "Zurück zu %s",
"Too many requests" : "Zu viele Anfragen",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Zu viele Anfragen aus Ihrem Netzwerk. Versuchen Sie es später erneut oder wenden Sie sich an Ihre Administration, wenn dies ein Fehler sein sollte.",
"Error" : "Fehler",
@@ -496,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Diese %s-Instanz befindet sich gerade im Wartungsmodus, was eine Weile dauern kann.",
"This page will refresh itself when the instance is available again." : "Diese Seite aktualisiert sich automatisch, sobald Nextcloud wieder verfügbar ist.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Kontaktieren Sie Ihre Systemadministration, wenn diese Meldung dauerhaft oder unerwartet erscheint.",
- "Currently open" : "Derzeit geöffnet",
- "Login with username or email" : "Anmeldung mit Benutzernamen oder E-Mail-Adresse",
- "Login with username" : "Anmeldung mit Benutzernamen",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatten, Videoanrufe, Bildschirmfreigaben, Online-Besprechungen und Webkonferenzen - in Ihrem Browser sowie mit mobilen Apps.",
"You have not added any info yet" : "Sie haben noch keine Infos hinzugefügt",
"{user} has not added any info yet" : "{user} hat noch keine Infos hinzugefügt",
"Error opening the user status modal, try hard refreshing the page" : "Fehler beim Modal-öffnen des Benutzerstatus, versuchen Sie die Seite zu aktualisieren",
"Edit Profile" : "Profil bearbeiten",
"The headline and about sections will show up here" : "Die Überschrift und der Infobereich werden hier angezeigt",
- "Error loading message template: {error}" : "Fehler beim Laden der Nachrichtenvorlage: {error}",
"Very weak password" : "Sehr schwaches Passwort",
"Weak password" : "Schwaches Passwort",
"So-so password" : "Passables Passwort",
diff --git a/core/l10n/el.js b/core/l10n/el.js
index 21bf8e38dbf..296ea560d9e 100644
--- a/core/l10n/el.js
+++ b/core/l10n/el.js
@@ -49,16 +49,16 @@ OC.L10N.register(
"No translation provider available" : "Δεν υπάρχει διαθέσιμος πάροχος μεταφράσεων",
"Could not detect language" : "Δεν ήταν δυνατός ο εντοπισμός της γλώσσας",
"Unable to translate" : "Αδυναμία μετάφρασης",
- "Nextcloud Server" : "Διακομιστής Nextcloud",
- "Some of your link shares have been removed" : "Μερικοί από τους κοινόχρηστους συνδέσμους σας έχουν καταργηθεί",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Λόγω σφάλματος ασφαλείας έπρεπε να αφαιρέσουμε κοινόχρηστους συνδέσμους σας. Παρακαλούμε δείτε τον παρακάτω σύνδεσμο για πληροφορίες.",
- "Learn more ↗" : "Μάθετε περισσότερα ↗",
- "Preparing update" : "Προετοιμασία ενημέρωσης",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Βήμα επισκευής:",
"Repair info:" : "Πληροφορίες επισκευής:",
"Repair warning:" : "Προειδοποίηση επισκευής:",
"Repair error:" : "Σφάλμα επισκευής:",
+ "Nextcloud Server" : "Διακομιστής Nextcloud",
+ "Some of your link shares have been removed" : "Μερικοί από τους κοινόχρηστους συνδέσμους σας έχουν καταργηθεί",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Λόγω σφάλματος ασφαλείας έπρεπε να αφαιρέσουμε κοινόχρηστους συνδέσμους σας. Παρακαλούμε δείτε τον παρακάτω σύνδεσμο για πληροφορίες.",
+ "Learn more ↗" : "Μάθετε περισσότερα ↗",
+ "Preparing update" : "Προετοιμασία ενημέρωσης",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Παρακαλούμε χρησιμοποιήστε το πρόγραμμα ενημέρωσης γραμμής εντολών, επειδή η ενημέρωση μέσω του προγράμματος περιήγησης είναι απενεργοποιημένη στο αρχείο config.php.",
"Turned on maintenance mode" : "Η λειτουργία συντήρησης ενεργοποιήθηκε",
"Turned off maintenance mode" : "Η λειτουργία συντήρησης απενεργοποιήθηκε",
@@ -270,9 +270,9 @@ OC.L10N.register(
"Admin" : "Διαχειριστής",
"Help" : "Βοήθεια",
"Access forbidden" : "Απαγορεύεται η πρόσβαση",
+ "Back to %s" : "Πίσω στο %s",
"Page not found" : "Δεν βρέθηκε η σελίδα",
"The page could not be found on the server or you may not be allowed to view it." : "Δεν ήταν δυνατή η εύρεση της σελίδας στον διακομιστή ή ενδέχεται να μην σας επιτρέπεται να την προβάλετε.",
- "Back to %s" : "Πίσω στο %s",
"Too many requests" : "Πάρα πολλά αιτήματα",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Υπήρχαν πάρα πολλά αιτήματα από το δίκτυό σας. Δοκιμάστε ξανά αργότερα ή επικοινωνήστε με τον διαχειριστή σας εάν πρόκειται για σφάλμα.",
"Error" : "Σφάλμα",
@@ -345,16 +345,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Αυτή %s η εγκατάσταση είναι σε λειτουργία συντήρησης, η οποία μπορεί να διαρκέσει κάποιο χρόνο.",
"This page will refresh itself when the instance is available again." : "Η σελίδα θα ανανεωθεί αυτόματα όταν η υπηρεσία είναι διαθέσιμη ξανά.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Επικοινωνήστε με το διαχειριστή του συστήματος αν αυτό το μήνυμα συνεχίζει να εμφανίζεται ή εμφανίστηκε απρόσμενα.",
- "Currently open" : "Προς το παρόν ανοικτό",
- "Login with username or email" : "Σύνδεση με όνομα χρήστη ή email",
- "Login with username" : "Σύνδεση με όνομα χρήστη",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Μηνύματα, κλήσεις βίντεο, κοινή χρήση οθόνης, συναντήσεις και τηλεδιασκέψεις - στον περιηγητή σας και με εφαρμογές κινητού.",
"You have not added any info yet" : "Δεν έχετε προσθέσει ακόμα πληροφορίες",
"{user} has not added any info yet" : "{user} δεν έχει προσθέσει ακόμη πληροφορίες",
"Error opening the user status modal, try hard refreshing the page" : "Σφάλμα κατά το άνοιγμα της κατάστασης χρήστη, δοκιμάστε να ανανεώσετε τη σελίδα",
"Edit Profile" : "Επεξεργασία προφίλ",
"The headline and about sections will show up here" : "Ο \"τίτλος\" και οι ενότητες \"σχετικά με\" θα εμφανιστούν εδώ",
- "Error loading message template: {error}" : "Σφάλμα φόρτωσης προτύπου μηνυμάτων: {error}",
"Very weak password" : "Πολύ αδύναμο συνθηματικό",
"Weak password" : "Αδύναμο συνθηματικό",
"So-so password" : "Μέτριο συνθηματικό",
diff --git a/core/l10n/el.json b/core/l10n/el.json
index 9e07d031e28..4b437508431 100644
--- a/core/l10n/el.json
+++ b/core/l10n/el.json
@@ -47,16 +47,16 @@
"No translation provider available" : "Δεν υπάρχει διαθέσιμος πάροχος μεταφράσεων",
"Could not detect language" : "Δεν ήταν δυνατός ο εντοπισμός της γλώσσας",
"Unable to translate" : "Αδυναμία μετάφρασης",
- "Nextcloud Server" : "Διακομιστής Nextcloud",
- "Some of your link shares have been removed" : "Μερικοί από τους κοινόχρηστους συνδέσμους σας έχουν καταργηθεί",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Λόγω σφάλματος ασφαλείας έπρεπε να αφαιρέσουμε κοινόχρηστους συνδέσμους σας. Παρακαλούμε δείτε τον παρακάτω σύνδεσμο για πληροφορίες.",
- "Learn more ↗" : "Μάθετε περισσότερα ↗",
- "Preparing update" : "Προετοιμασία ενημέρωσης",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Βήμα επισκευής:",
"Repair info:" : "Πληροφορίες επισκευής:",
"Repair warning:" : "Προειδοποίηση επισκευής:",
"Repair error:" : "Σφάλμα επισκευής:",
+ "Nextcloud Server" : "Διακομιστής Nextcloud",
+ "Some of your link shares have been removed" : "Μερικοί από τους κοινόχρηστους συνδέσμους σας έχουν καταργηθεί",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Λόγω σφάλματος ασφαλείας έπρεπε να αφαιρέσουμε κοινόχρηστους συνδέσμους σας. Παρακαλούμε δείτε τον παρακάτω σύνδεσμο για πληροφορίες.",
+ "Learn more ↗" : "Μάθετε περισσότερα ↗",
+ "Preparing update" : "Προετοιμασία ενημέρωσης",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Παρακαλούμε χρησιμοποιήστε το πρόγραμμα ενημέρωσης γραμμής εντολών, επειδή η ενημέρωση μέσω του προγράμματος περιήγησης είναι απενεργοποιημένη στο αρχείο config.php.",
"Turned on maintenance mode" : "Η λειτουργία συντήρησης ενεργοποιήθηκε",
"Turned off maintenance mode" : "Η λειτουργία συντήρησης απενεργοποιήθηκε",
@@ -268,9 +268,9 @@
"Admin" : "Διαχειριστής",
"Help" : "Βοήθεια",
"Access forbidden" : "Απαγορεύεται η πρόσβαση",
+ "Back to %s" : "Πίσω στο %s",
"Page not found" : "Δεν βρέθηκε η σελίδα",
"The page could not be found on the server or you may not be allowed to view it." : "Δεν ήταν δυνατή η εύρεση της σελίδας στον διακομιστή ή ενδέχεται να μην σας επιτρέπεται να την προβάλετε.",
- "Back to %s" : "Πίσω στο %s",
"Too many requests" : "Πάρα πολλά αιτήματα",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Υπήρχαν πάρα πολλά αιτήματα από το δίκτυό σας. Δοκιμάστε ξανά αργότερα ή επικοινωνήστε με τον διαχειριστή σας εάν πρόκειται για σφάλμα.",
"Error" : "Σφάλμα",
@@ -343,16 +343,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Αυτή %s η εγκατάσταση είναι σε λειτουργία συντήρησης, η οποία μπορεί να διαρκέσει κάποιο χρόνο.",
"This page will refresh itself when the instance is available again." : "Η σελίδα θα ανανεωθεί αυτόματα όταν η υπηρεσία είναι διαθέσιμη ξανά.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Επικοινωνήστε με το διαχειριστή του συστήματος αν αυτό το μήνυμα συνεχίζει να εμφανίζεται ή εμφανίστηκε απρόσμενα.",
- "Currently open" : "Προς το παρόν ανοικτό",
- "Login with username or email" : "Σύνδεση με όνομα χρήστη ή email",
- "Login with username" : "Σύνδεση με όνομα χρήστη",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Μηνύματα, κλήσεις βίντεο, κοινή χρήση οθόνης, συναντήσεις και τηλεδιασκέψεις - στον περιηγητή σας και με εφαρμογές κινητού.",
"You have not added any info yet" : "Δεν έχετε προσθέσει ακόμα πληροφορίες",
"{user} has not added any info yet" : "{user} δεν έχει προσθέσει ακόμη πληροφορίες",
"Error opening the user status modal, try hard refreshing the page" : "Σφάλμα κατά το άνοιγμα της κατάστασης χρήστη, δοκιμάστε να ανανεώσετε τη σελίδα",
"Edit Profile" : "Επεξεργασία προφίλ",
"The headline and about sections will show up here" : "Ο \"τίτλος\" και οι ενότητες \"σχετικά με\" θα εμφανιστούν εδώ",
- "Error loading message template: {error}" : "Σφάλμα φόρτωσης προτύπου μηνυμάτων: {error}",
"Very weak password" : "Πολύ αδύναμο συνθηματικό",
"Weak password" : "Αδύναμο συνθηματικό",
"So-so password" : "Μέτριο συνθηματικό",
diff --git a/core/l10n/en_GB.js b/core/l10n/en_GB.js
index df16407fd9e..7f037d53e3d 100644
--- a/core/l10n/en_GB.js
+++ b/core/l10n/en_GB.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Task not found",
"Internal error" : "Internal error",
"Not found" : "Not found",
+ "Node is locked" : "Node is locked",
"Bad request" : "Bad request",
"Requested task type does not exist" : "Requested task type does not exist",
"Necessary language model provider is not available" : "Necessary language model provider is not available",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "No translation provider available",
"Could not detect language" : "Could not detect language",
"Unable to translate" : "Unable to translate",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Repair step:",
+ "Repair info:" : "Repair info:",
+ "Repair warning:" : "Repair warning:",
+ "Repair error:" : "Repair error:",
"Nextcloud Server" : "Nextcloud Server",
"Some of your link shares have been removed" : "Some of your link shares have been removed",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Due to a security bug we had to remove some of your link shares. Please see the link for more information.",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies.",
"Learn more ↗" : "Learn more ↗",
"Preparing update" : "Preparing update",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Repair step:",
- "Repair info:" : "Repair info:",
- "Repair warning:" : "Repair warning:",
- "Repair error:" : "Repair error:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Please use the command line updater because updating via browser is disabled in your config.php.",
"Turned on maintenance mode" : "Turned on maintenance mode",
"Turned off maintenance mode" : "Turned off maintenance mode",
@@ -327,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "Login form is disabled.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "The Nextcloud login form is disabled. Use another login option if available or contact your administration.",
"More actions" : "More actions",
+ "User menu" : "User menu",
+ "You will be identified as {user} by the account owner." : "You will be identified as {user} by the account owner.",
+ "You are currently not identified." : "You are currently not identified.",
+ "Set public name" : "Set public name",
+ "Change public name" : "Change public name",
"Password is too weak" : "Password is too weak",
"Password is weak" : "Password is weak",
"Password is average" : "Password is average",
@@ -420,9 +426,10 @@ OC.L10N.register(
"Admin" : "Admin",
"Help" : "Help",
"Access forbidden" : "Access denied",
+ "You are not allowed to access this page." : "You are not allowed to access this page.",
+ "Back to %s" : "Back to %s",
"Page not found" : "Page not found",
"The page could not be found on the server or you may not be allowed to view it." : "The page could not be found on the server or you may not be allowed to view it.",
- "Back to %s" : "Back to %s",
"Too many requests" : "Too many requests",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "There were too many requests from your network. Retry later or contact your administrator if this is an error.",
"Error" : "Error",
@@ -498,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "This %s instance is currently in maintenance mode, which may take a while.",
"This page will refresh itself when the instance is available again." : "This page will refresh itself when the instance is available again.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contact your system administrator if this message persists or appeared unexpectedly.",
- "Currently open" : "Currently open",
- "Login with username or email" : "Login with username or email",
- "Login with username" : "Login with username",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps.",
"You have not added any info yet" : "You have not added any info yet",
"{user} has not added any info yet" : "{user} has not added any info yet",
"Error opening the user status modal, try hard refreshing the page" : "Error opening the user status modal, try hard refreshing the page",
"Edit Profile" : "Edit Profile",
"The headline and about sections will show up here" : "The headline and about sections will show up here",
- "Error loading message template: {error}" : "Error loading message template: {error}",
"Very weak password" : "Very weak password",
"Weak password" : "Weak password",
"So-so password" : "So-so password",
diff --git a/core/l10n/en_GB.json b/core/l10n/en_GB.json
index 1f19622959e..da41fc31f27 100644
--- a/core/l10n/en_GB.json
+++ b/core/l10n/en_GB.json
@@ -42,6 +42,7 @@
"Task not found" : "Task not found",
"Internal error" : "Internal error",
"Not found" : "Not found",
+ "Node is locked" : "Node is locked",
"Bad request" : "Bad request",
"Requested task type does not exist" : "Requested task type does not exist",
"Necessary language model provider is not available" : "Necessary language model provider is not available",
@@ -50,6 +51,11 @@
"No translation provider available" : "No translation provider available",
"Could not detect language" : "Could not detect language",
"Unable to translate" : "Unable to translate",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Repair step:",
+ "Repair info:" : "Repair info:",
+ "Repair warning:" : "Repair warning:",
+ "Repair error:" : "Repair error:",
"Nextcloud Server" : "Nextcloud Server",
"Some of your link shares have been removed" : "Some of your link shares have been removed",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Due to a security bug we had to remove some of your link shares. Please see the link for more information.",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies.",
"Learn more ↗" : "Learn more ↗",
"Preparing update" : "Preparing update",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Repair step:",
- "Repair info:" : "Repair info:",
- "Repair warning:" : "Repair warning:",
- "Repair error:" : "Repair error:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Please use the command line updater because updating via browser is disabled in your config.php.",
"Turned on maintenance mode" : "Turned on maintenance mode",
"Turned off maintenance mode" : "Turned off maintenance mode",
@@ -325,6 +326,11 @@
"Login form is disabled." : "Login form is disabled.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "The Nextcloud login form is disabled. Use another login option if available or contact your administration.",
"More actions" : "More actions",
+ "User menu" : "User menu",
+ "You will be identified as {user} by the account owner." : "You will be identified as {user} by the account owner.",
+ "You are currently not identified." : "You are currently not identified.",
+ "Set public name" : "Set public name",
+ "Change public name" : "Change public name",
"Password is too weak" : "Password is too weak",
"Password is weak" : "Password is weak",
"Password is average" : "Password is average",
@@ -418,9 +424,10 @@
"Admin" : "Admin",
"Help" : "Help",
"Access forbidden" : "Access denied",
+ "You are not allowed to access this page." : "You are not allowed to access this page.",
+ "Back to %s" : "Back to %s",
"Page not found" : "Page not found",
"The page could not be found on the server or you may not be allowed to view it." : "The page could not be found on the server or you may not be allowed to view it.",
- "Back to %s" : "Back to %s",
"Too many requests" : "Too many requests",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "There were too many requests from your network. Retry later or contact your administrator if this is an error.",
"Error" : "Error",
@@ -496,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "This %s instance is currently in maintenance mode, which may take a while.",
"This page will refresh itself when the instance is available again." : "This page will refresh itself when the instance is available again.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contact your system administrator if this message persists or appeared unexpectedly.",
- "Currently open" : "Currently open",
- "Login with username or email" : "Login with username or email",
- "Login with username" : "Login with username",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps.",
"You have not added any info yet" : "You have not added any info yet",
"{user} has not added any info yet" : "{user} has not added any info yet",
"Error opening the user status modal, try hard refreshing the page" : "Error opening the user status modal, try hard refreshing the page",
"Edit Profile" : "Edit Profile",
"The headline and about sections will show up here" : "The headline and about sections will show up here",
- "Error loading message template: {error}" : "Error loading message template: {error}",
"Very weak password" : "Very weak password",
"Weak password" : "Weak password",
"So-so password" : "So-so password",
diff --git a/core/l10n/eo.js b/core/l10n/eo.js
index 6c78d942cdc..cacb876036f 100644
--- a/core/l10n/eo.js
+++ b/core/l10n/eo.js
@@ -25,8 +25,12 @@ OC.L10N.register(
"State token does not match" : "Stata ĵetono ne kongruas",
"Invalid app password" : "Nevalida aplikaĵo-pasvorto",
"Could not complete login" : "Ensaluto ne eblis",
+ "State token missing" : "Mankas ĵetono pri stato",
"Your login token is invalid or has expired" : "Via ensaluta ĵetono ne validas aŭ senvalidiĝis",
+ "Please use original client" : "Bonvolu uzi la originan klienton",
+ "This community release of Nextcloud is unsupported and push notifications are limited." : "Tiu ĉi komunuma eldonaĵo de Nextcloud ne havas subtenon, kaj puŝajn atentigojn estas limigitaj.",
"Login" : "Login",
+ "Unsupported email length (>255)" : "Nevalida longeco de retadreso (>255)",
"Password reset is disabled" : "Pasvorta restarigo malebligita",
"Could not reset password because the token is expired" : "Ne eblis restarigi pasvorton, ĉar la ĵetono senvalidiĝis",
"Could not reset password because the token is invalid" : "Ne eblis restarigi pasvorton, ĉar la ĵetono ne validas",
@@ -36,21 +40,25 @@ OC.L10N.register(
"Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Alklaku la jenan butonon por restarigi vian pasvorton. Si vi ne petis restarigon de via pasvorto, simple ignoru tiun ĉi retmesaĝon.",
"Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Alklaku la jenan ligilon por restarigi vian pasvorton. Si vi ne petis restarigon de via pasvorto, simple ignoru tiun ĉi retmesaĝon.",
"Reset your password" : "Restarigi vian pasvorton ",
+ "The given provider is not available" : "La provizanto menciita ne estas disponebla",
"Task not found" : "Tasko ne trovita",
"Internal error" : "Interna eraro",
"Not found" : "Ne trovita",
+ "Node is locked" : "Nodo estas ŝlosita",
+ "Bad request" : "Malbona peto",
+ "Requested task type does not exist" : "Petita task-tipo ne ekzistas",
"Image not found" : "Bildo ne trovita",
"Unable to translate" : "Ne eblas traduki",
- "Nextcloud Server" : "Nextcloud-servilo",
- "Some of your link shares have been removed" : "Kelkaj el viaj kunhavigaj ligiloj estis forigitaj",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Pro sekuriga problemo, ni forigu kelkajn el viaj kunhavigaj ligiloj. Bv. vidi la ligilon por plia informo.",
- "Learn more ↗" : "Scii pli ↗",
- "Preparing update" : "Preparo de la ĝisdatigo",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Ripara stadio:",
"Repair info:" : "Ripara informo:",
"Repair warning:" : "Ripara averto:",
"Repair error:" : "Ripara eraro:",
+ "Nextcloud Server" : "Nextcloud-servilo",
+ "Some of your link shares have been removed" : "Kelkaj el viaj kunhavigaj ligiloj estis forigitaj",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Pro sekuriga problemo, ni forigu kelkajn el viaj kunhavigaj ligiloj. Bv. vidi la ligilon por plia informo.",
+ "Learn more ↗" : "Scii pli ↗",
+ "Preparing update" : "Preparo de la ĝisdatigo",
"Turned on maintenance mode" : "Reĝimo de prizorgado ŝaltita.",
"Turned off maintenance mode" : "Reĝimo de prizorgado malŝaltita.",
"Maintenance mode is kept active" : "Reĝimo de prizorgado pluas",
@@ -221,9 +229,9 @@ OC.L10N.register(
"Admin" : "Administranto",
"Help" : "Helpo",
"Access forbidden" : "Aliro estas malpermesata",
+ "Back to %s" : "Antaŭen al %s",
"Page not found" : "Paĝo ne trovita",
"The page could not be found on the server or you may not be allowed to view it." : "La paĝo ne povis esti trovita en la servilo aŭ vi eble ne rajtas vidi ĝin.",
- "Back to %s" : "Antaŭen al %s",
"Too many requests" : "Tro da petoj",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Estis tro multaj petoj de via reto. Reprovu poste aŭ kontaktu vian administranton se tio estas eraro.",
"Error" : "Eraro",
@@ -294,9 +302,7 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "La servilo %s estas nun en reĝimo de prizorgado, tio eble daŭros longatempe.",
"This page will refresh itself when the instance is available again." : "Tiu ĉi paĝo aktualiĝos mem, kiam la servilo redisponeblos.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Kontaktu vian administranton, se tiu ĉi mesaĝo daŭras aŭ aperas neatendite.",
- "Currently open" : "Aktuale malfermita",
"Edit Profile" : "Modifi profilon",
- "Error loading message template: {error}" : "Eraro dum ŝargo de mesaĝa ŝablono: {error}",
"Very weak password" : "Tre malforta pasvorto",
"Weak password" : "Malforta pasvorto",
"So-so password" : "Mezbona pasvorto",
diff --git a/core/l10n/eo.json b/core/l10n/eo.json
index 7642d80489a..2f1a3539c5d 100644
--- a/core/l10n/eo.json
+++ b/core/l10n/eo.json
@@ -23,8 +23,12 @@
"State token does not match" : "Stata ĵetono ne kongruas",
"Invalid app password" : "Nevalida aplikaĵo-pasvorto",
"Could not complete login" : "Ensaluto ne eblis",
+ "State token missing" : "Mankas ĵetono pri stato",
"Your login token is invalid or has expired" : "Via ensaluta ĵetono ne validas aŭ senvalidiĝis",
+ "Please use original client" : "Bonvolu uzi la originan klienton",
+ "This community release of Nextcloud is unsupported and push notifications are limited." : "Tiu ĉi komunuma eldonaĵo de Nextcloud ne havas subtenon, kaj puŝajn atentigojn estas limigitaj.",
"Login" : "Login",
+ "Unsupported email length (>255)" : "Nevalida longeco de retadreso (>255)",
"Password reset is disabled" : "Pasvorta restarigo malebligita",
"Could not reset password because the token is expired" : "Ne eblis restarigi pasvorton, ĉar la ĵetono senvalidiĝis",
"Could not reset password because the token is invalid" : "Ne eblis restarigi pasvorton, ĉar la ĵetono ne validas",
@@ -34,21 +38,25 @@
"Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Alklaku la jenan butonon por restarigi vian pasvorton. Si vi ne petis restarigon de via pasvorto, simple ignoru tiun ĉi retmesaĝon.",
"Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Alklaku la jenan ligilon por restarigi vian pasvorton. Si vi ne petis restarigon de via pasvorto, simple ignoru tiun ĉi retmesaĝon.",
"Reset your password" : "Restarigi vian pasvorton ",
+ "The given provider is not available" : "La provizanto menciita ne estas disponebla",
"Task not found" : "Tasko ne trovita",
"Internal error" : "Interna eraro",
"Not found" : "Ne trovita",
+ "Node is locked" : "Nodo estas ŝlosita",
+ "Bad request" : "Malbona peto",
+ "Requested task type does not exist" : "Petita task-tipo ne ekzistas",
"Image not found" : "Bildo ne trovita",
"Unable to translate" : "Ne eblas traduki",
- "Nextcloud Server" : "Nextcloud-servilo",
- "Some of your link shares have been removed" : "Kelkaj el viaj kunhavigaj ligiloj estis forigitaj",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Pro sekuriga problemo, ni forigu kelkajn el viaj kunhavigaj ligiloj. Bv. vidi la ligilon por plia informo.",
- "Learn more ↗" : "Scii pli ↗",
- "Preparing update" : "Preparo de la ĝisdatigo",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Ripara stadio:",
"Repair info:" : "Ripara informo:",
"Repair warning:" : "Ripara averto:",
"Repair error:" : "Ripara eraro:",
+ "Nextcloud Server" : "Nextcloud-servilo",
+ "Some of your link shares have been removed" : "Kelkaj el viaj kunhavigaj ligiloj estis forigitaj",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Pro sekuriga problemo, ni forigu kelkajn el viaj kunhavigaj ligiloj. Bv. vidi la ligilon por plia informo.",
+ "Learn more ↗" : "Scii pli ↗",
+ "Preparing update" : "Preparo de la ĝisdatigo",
"Turned on maintenance mode" : "Reĝimo de prizorgado ŝaltita.",
"Turned off maintenance mode" : "Reĝimo de prizorgado malŝaltita.",
"Maintenance mode is kept active" : "Reĝimo de prizorgado pluas",
@@ -219,9 +227,9 @@
"Admin" : "Administranto",
"Help" : "Helpo",
"Access forbidden" : "Aliro estas malpermesata",
+ "Back to %s" : "Antaŭen al %s",
"Page not found" : "Paĝo ne trovita",
"The page could not be found on the server or you may not be allowed to view it." : "La paĝo ne povis esti trovita en la servilo aŭ vi eble ne rajtas vidi ĝin.",
- "Back to %s" : "Antaŭen al %s",
"Too many requests" : "Tro da petoj",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Estis tro multaj petoj de via reto. Reprovu poste aŭ kontaktu vian administranton se tio estas eraro.",
"Error" : "Eraro",
@@ -292,9 +300,7 @@
"This %s instance is currently in maintenance mode, which may take a while." : "La servilo %s estas nun en reĝimo de prizorgado, tio eble daŭros longatempe.",
"This page will refresh itself when the instance is available again." : "Tiu ĉi paĝo aktualiĝos mem, kiam la servilo redisponeblos.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Kontaktu vian administranton, se tiu ĉi mesaĝo daŭras aŭ aperas neatendite.",
- "Currently open" : "Aktuale malfermita",
"Edit Profile" : "Modifi profilon",
- "Error loading message template: {error}" : "Eraro dum ŝargo de mesaĝa ŝablono: {error}",
"Very weak password" : "Tre malforta pasvorto",
"Weak password" : "Malforta pasvorto",
"So-so password" : "Mezbona pasvorto",
diff --git a/core/l10n/es.js b/core/l10n/es.js
index 194c20ebbde..ce4a1f15df4 100644
--- a/core/l10n/es.js
+++ b/core/l10n/es.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Tarea no encontrada",
"Internal error" : "Error interno",
"Not found" : "No encontrado",
+ "Node is locked" : "El nodo está bloqueado",
"Bad request" : "Solicitud errónea",
"Requested task type does not exist" : "El tipo de tarea solicitada no existe",
"Necessary language model provider is not available" : "El proveedor de modelo de lenguaje necesario no está disponible",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "No hay proveedores de traducción disponibles",
"Could not detect language" : "No fue posible detectar el lenguaje",
"Unable to translate" : "No es posible traducir",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Paso de reparación:",
+ "Repair info:" : "Información de reparación:",
+ "Repair warning:" : "Advertencia de reparación:",
+ "Repair error:" : "Error que reparar:",
"Nextcloud Server" : "Servidor Nexcloud",
"Some of your link shares have been removed" : "Algunos de tus enlaces compartidos han sido eliminados.",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Debido a un bug de seguridad hemos tenido que eliminar algunos de tus enlaces compartidos. Por favor, accede al link para más información.",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Ingrese su clave de suscripción en la aplicación de soporte para aumentar el límite de cuentas. Esto también le otorga todos los beneficios adicionales que ofrece Nextcloud Enterprise y que es altamente recomendado para la operación en empresas.",
"Learn more ↗" : "Saber más ↗",
"Preparing update" : "Preparando la actualización",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Paso de reparación:",
- "Repair info:" : "Información de reparación:",
- "Repair warning:" : "Advertencia de reparación:",
- "Repair error:" : "Error que reparar:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Por favor, utilice el actualizador por línea de comandos ya que la actualización vía navegador se encuentra deshabilitado en su config.php",
"Turned on maintenance mode" : "Modo mantenimiento activado",
"Turned off maintenance mode" : "Modo mantenimiento desactivado",
@@ -80,8 +81,125 @@ OC.L10N.register(
"%s (incompatible)" : "%s (incompatible)",
"The following apps have been disabled: %s" : "Las siguientes apps han sido desactivadas: %s",
"Already up to date" : "Ya actualizado",
+ "Windows Command Script" : "Script de WIndows Command",
+ "Electronic book document" : "Documento Electronic Book",
+ "TrueType Font Collection" : "Colección de fuentes TrueType",
+ "Web Open Font Format" : "Formato Web Open Font",
+ "GPX geographic data" : "Datos geográficos GPX",
+ "Gzip archive" : "Archivador Gzip",
+ "Adobe Illustrator document" : "Documento de Adobe Illustrator",
+ "Java source code" : "Código fuente Java",
+ "JavaScript source code" : "Código fuente JavaScript",
+ "JSON document" : "Documento JSON",
+ "Microsoft Access database" : "Base de datos Microsoft Access",
+ "Microsoft OneNote document" : "Documento de Microsoft OneNote",
+ "Microsoft Word document" : "Documento de Microsoft Word",
"Unknown" : "Desconocido",
+ "PDF document" : "Documento PDF",
+ "PostScript document" : "Documento PostScript",
+ "RSS summary" : "Resumen RSS",
+ "Android package" : "Paquete Android",
+ "KML geographic data" : "Datos geográficos KML",
+ "KML geographic compressed data" : "Datos geográficos KML comprimidos",
+ "Lotus Word Pro document" : "Documento de Lotus Word Pro",
+ "Excel spreadsheet" : "Hoja de cálculo de Excel",
+ "Excel add-in" : "Add-in de Excel",
+ "Excel 2007 binary spreadsheet" : "Hoja de cálculo binaria Excel 2007",
+ "Excel spreadsheet template" : "Plantilla de hoja de cálculo Excel",
+ "Outlook Message" : "Mensaje de Outlook",
+ "PowerPoint presentation" : "Presentación PowerPoint",
+ "PowerPoint add-in" : "Add-in de PowerPoint",
+ "PowerPoint presentation template" : "Plantilla de presentación PowerPoint",
+ "Word document" : "Documento de Word",
+ "ODF formula" : "Fórmula ODF",
+ "ODG drawing" : "Dibujo ODG",
+ "ODG drawing (Flat XML)" : "Dibujo ODG (XML Plano)",
+ "ODG template" : "Plantilla ODG",
+ "ODP presentation" : "Presentación ODP",
+ "ODP presentation (Flat XML)" : "Presentación ODP (XML Plano)",
+ "ODP template" : "Plantilla ODP",
+ "ODS spreadsheet" : "Hoja de cálculo ODS",
+ "ODS spreadsheet (Flat XML)" : "Hoja de cálculo ODS (XML Plano)",
+ "ODS template" : "Plantilla ODS",
+ "ODT document" : "Documento ODT",
+ "ODT document (Flat XML)" : "Documento ODT (XML Plano)",
+ "ODT template" : "Plantilla ODT",
+ "PowerPoint 2007 presentation" : "Presentación de PowerPoint 2007",
+ "PowerPoint 2007 show" : "Presentación de diapositivas de PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Plantilla de presentación de diapositivas de PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Hoja de cálculo de Excel 2007",
+ "Excel 2007 spreadsheet template" : "Plantilla de hoja de cálculo de Excel 2007",
+ "Word 2007 document" : "Documento de Word 2007",
+ "Word 2007 document template" : "Plantilla de documento de Word 2007",
+ "Microsoft Visio document" : "Documento de Microsoft Visio",
+ "WordPerfect document" : "Documento de WordPerfect",
+ "7-zip archive" : "Archivador 7-zip",
+ "Blender scene" : "Escena de Blender",
+ "Bzip2 archive" : "Archivador Bzip2",
+ "Debian package" : "Paquete de Debian",
+ "FictionBook document" : "Documento de FictionBook",
+ "Unknown font" : "Fuente desconocida",
+ "Krita document" : "Documento de Krita",
+ "Mobipocket e-book" : "E-book Mobipocket",
+ "Windows Installer package" : "Paquete de Windows installer",
+ "Perl script" : "Script Perl",
+ "PHP script" : "Script PHP",
+ "Tar archive" : "Archivador Tar",
+ "XML document" : "Documento XML",
+ "YAML document" : "Documento YAML",
+ "Zip archive" : "Archivador Zip",
+ "Zstandard archive" : "Archivador Zstandard",
+ "AAC audio" : "Audio AAC",
+ "FLAC audio" : "Audio FLAC",
+ "MPEG-4 audio" : "Audio MPEG-4",
+ "MP3 audio" : "Audio MP3",
+ "Ogg audio" : "Audio Ogg",
+ "RIFF/WAVe standard Audio" : "Audio estándar RIFF/WAVe",
+ "WebM audio" : "Audio WebM",
+ "MP3 ShoutCast playlist" : "Lista de reproducción MP3 ShoutCast",
+ "Windows BMP image" : "Imagen BMP de Windows",
+ "Better Portable Graphics image" : "Imagen Better Portable Graphics",
+ "EMF image" : "Imagen EMF",
+ "GIF image" : "Imagen GIF",
+ "HEIC image" : "Imagen HEIC",
+ "HEIF image" : "Imagen HEIF",
+ "JPEG-2000 JP2 image" : "Imagen JPEG-2000 JP2",
+ "JPEG image" : "Imagen JPEG",
"PNG image" : "Imagen PNG",
+ "SVG image" : "Imagen SVG",
+ "Truevision Targa image" : "Imagen Truevision Targa",
+ "TIFF image" : "Imagen TIFF",
+ "WebP image" : "Imagen WebP",
+ "Digital raw image" : "Imagen Digital cruda",
+ "Windows Icon" : "Ícono de Windows",
+ "Email message" : "Mensaje de correo electrónico",
+ "VCS/ICS calendar" : "Calendario VCS/ICS",
+ "CSS stylesheet" : "Hoja de estilos CSS",
+ "CSV document" : "Documento CSV",
+ "HTML document" : "Documento HTML",
+ "Markdown document" : "Documento Markdown",
+ "Org-mode file" : "Archivo Org-mode",
+ "Plain text document" : "Documento de texto plano",
+ "Rich Text document" : "Documento de Texto enriquecido",
+ "Electronic business card" : "Tarjeta de negocios electrónica",
+ "C++ source code" : "Código fuente C++",
+ "LDIF address book" : "Libreta de direcciones LDIF",
+ "NFO document" : "Documento NFO",
+ "PHP source" : "Código fuente PHP",
+ "Python script" : "Script de Python",
+ "ReStructuredText document" : "Documento ReStructuredText",
+ "3GPP multimedia file" : "Archivo multimedia 3GPP",
+ "MPEG video" : "Vídeo MPEG",
+ "DV video" : "Vídeo DV",
+ "MPEG-2 transport stream" : "Flujo de transporte MPEG-2",
+ "MPEG-4 video" : "Vídeo MPEG-4",
+ "Ogg video" : "Vídeo Ogg",
+ "QuickTime video" : "Vídeo QuickTime",
+ "WebM video" : "Vídeo WebM",
+ "Flash video" : "Vídeo Flash",
+ "Matroska video" : "Vídeo Matroska",
+ "Windows Media video" : "Vídeo de Windows Media",
+ "AVI video" : "Vídeo AVI",
"Error occurred while checking server setup" : "Ha ocurrido un error al revisar la configuración del servidor",
"For more details see the {linkstart}documentation ↗{linkend}." : "Para más detalles compruebe la {linkstart}documentación ↗{linkend}.",
"unknown text" : "texto desconocido",
@@ -108,7 +226,7 @@ OC.L10N.register(
"Yes" : "Sí",
"The remote URL must include the user." : "La URL remota debe incluir el usuario.",
"Invalid remote URL." : "URL remota inválida.",
- "Failed to add the public link to your Nextcloud" : "No se ha podido añadir el enlace público a tu Nextcloud",
+ "Failed to add the public link to your Nextcloud" : "No se ha podido añadir el enlace público a su Nextcloud",
"Federated user" : "Usuario federado",
"user@your-nextcloud.org" : "usuario@su-nextcloud.org",
"Create share" : "Crear un recurso compartido",
@@ -146,7 +264,7 @@ OC.L10N.register(
"This account is disabled" : "Esta cuenta está deshabilitada",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "Hemos detectado múltiples intentos inválidos desde tu IP. Por tanto, tu próximo intento se retrasará 30 segundos.",
"Account name or email" : "Nombre de cuenta o correo electrónico",
- "Account name" : "Nombre de cuenta",
+ "Account name" : "Nombre de la cuenta",
"Server side authentication failed!" : "La autenticación ha fallado en el servidor.",
"Please contact your administrator." : "Por favor, contacte con el administrador.",
"Session error" : "Error de sesión",
@@ -173,7 +291,7 @@ OC.L10N.register(
"Schedule work & meetings, synced with all your devices." : "Programe trabajo y reuniones, sincronizados con todos sus dispositivos.",
"Keep your colleagues and friends in one place without leaking their private info." : "Mantenga a sus colegas y amigos en un sólo sitio sin dejar escapar su información privada.",
"Simple email app nicely integrated with Files, Contacts and Calendar." : "Simple email app se integra bien con Archivos, Contactos y Calendario.",
- "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Mensajes, videollamadas, compartir pantalla, reuniones en línea y conferencias web – en su navegador y aplicaciones móviles.",
+ "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Mensajes, videollamadas, compartir pantalla, reuniones en línea y conferencias web – en su navegador y con aplicaciones móviles.",
"Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Documentos colaborativos, hojas de cálculo y presentaciones, basadas en Collabora Online.",
"Distraction free note taking app." : "App de de notas y escritura libre de distracciones.",
"Recommended apps" : "Aplicaciones recomendadas",
@@ -199,7 +317,7 @@ OC.L10N.register(
"Search" : "Buscar",
"No results for {query}" : "Sin resultados para {query}",
"Press Enter to start searching" : "Pulse Enter para iniciar la búsqueda",
- "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Por favor, introduce {minSearchLength} carácter o más para buscar","Por favor, introduce {minSearchLength} caracteres o más para buscar","Por favor, introduce {minSearchLength} caracteres o más para buscar"],
+ "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Por favor, introduzca {minSearchLength} carácter o más para buscar","Por favor, introduzca {minSearchLength} caracteres o más para buscar","Por favor, introduzca {minSearchLength} caracteres o más para buscar"],
"An error occurred while searching for {type}" : "Ha ocurrido un error al buscar {type}",
"Search starts once you start typing and results may be reached with the arrow keys" : "La búsqueda empieza una vez que comienza a escribir y los resultados pueden seleccionarse con las teclas de flecha",
"Search for {name} only" : "Buscar solo por {name}",
@@ -210,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "La página de inicio de sesión está deshabilitada.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "El formulario de inicio de sesión de Nextcloud está deshabilitado. Use otro medio de inicio de sesión disponible o contacte a su administración.",
"More actions" : "Más acciones",
+ "User menu" : "Menú de usuario",
+ "You will be identified as {user} by the account owner." : "Será identificado como {user} por el propietario de la cuenta.",
+ "You are currently not identified." : "Actualmente, no se encuentra identificado.",
+ "Set public name" : "Establecer nombre público",
+ "Change public name" : "Cambiar nombre público",
"Password is too weak" : "La contraseña es muy débil",
"Password is weak" : "La contraseña es débil",
"Password is average" : "La contraseña tiene una complejidad promedio",
@@ -303,9 +426,10 @@ OC.L10N.register(
"Admin" : "Administración",
"Help" : "Ayuda",
"Access forbidden" : "Acceso denegado",
+ "You are not allowed to access this page." : "No tiene permitido acceder a esta página.",
+ "Back to %s" : "Volver a %s",
"Page not found" : "Página no encontrada",
"The page could not be found on the server or you may not be allowed to view it." : "La página no fue encontrada en el servidor o podría no tener acceso para verla.",
- "Back to %s" : "Volver a %s",
"Too many requests" : "Demasiadas peticiones",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Hubo demasiadas peticiones desde su red. Vuelva a intentarlo más tarde o póngase en contacto con su administrador si se trata de un error.",
"Error" : "Error",
@@ -381,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Está instancia %s está en modo mantenimiento, y puede tardar un rato.",
"This page will refresh itself when the instance is available again." : "Esta página se actualizará sola cuando la instancia esté disponible de nuevo.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contacte con su administrador de sistemas si este mensaje persiste o aparece de forma inesperada.",
- "Currently open" : "Actualmente abierto",
- "Login with username or email" : "Iniciar sesión con nombre de usuario o correo electrónico",
- "Login with username" : "Iniciar sesión con nombre de usuario",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Mensajes, videollamadas, compartir pantalla, reuniones online y conferencias web – en tu navegador y con apps móviles.",
"You have not added any info yet" : "Aún no has añadido nada de información",
"{user} has not added any info yet" : "{user} no ha añadido aún nada de información",
"Error opening the user status modal, try hard refreshing the page" : "Error al abrir la ventana de estado del usuario, intente actualizar la página",
"Edit Profile" : "Editar perfil",
"The headline and about sections will show up here" : "El título y la sección acerca de aparecerán aquí",
- "Error loading message template: {error}" : "Error al cargar plantilla del mensaje: {error}",
"Very weak password" : "Contraseña muy débil",
"Weak password" : "Contraseña débil",
"So-so password" : "Contraseña normal",
diff --git a/core/l10n/es.json b/core/l10n/es.json
index 738e73476d2..c4786db8877 100644
--- a/core/l10n/es.json
+++ b/core/l10n/es.json
@@ -42,6 +42,7 @@
"Task not found" : "Tarea no encontrada",
"Internal error" : "Error interno",
"Not found" : "No encontrado",
+ "Node is locked" : "El nodo está bloqueado",
"Bad request" : "Solicitud errónea",
"Requested task type does not exist" : "El tipo de tarea solicitada no existe",
"Necessary language model provider is not available" : "El proveedor de modelo de lenguaje necesario no está disponible",
@@ -50,6 +51,11 @@
"No translation provider available" : "No hay proveedores de traducción disponibles",
"Could not detect language" : "No fue posible detectar el lenguaje",
"Unable to translate" : "No es posible traducir",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Paso de reparación:",
+ "Repair info:" : "Información de reparación:",
+ "Repair warning:" : "Advertencia de reparación:",
+ "Repair error:" : "Error que reparar:",
"Nextcloud Server" : "Servidor Nexcloud",
"Some of your link shares have been removed" : "Algunos de tus enlaces compartidos han sido eliminados.",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Debido a un bug de seguridad hemos tenido que eliminar algunos de tus enlaces compartidos. Por favor, accede al link para más información.",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Ingrese su clave de suscripción en la aplicación de soporte para aumentar el límite de cuentas. Esto también le otorga todos los beneficios adicionales que ofrece Nextcloud Enterprise y que es altamente recomendado para la operación en empresas.",
"Learn more ↗" : "Saber más ↗",
"Preparing update" : "Preparando la actualización",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Paso de reparación:",
- "Repair info:" : "Información de reparación:",
- "Repair warning:" : "Advertencia de reparación:",
- "Repair error:" : "Error que reparar:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Por favor, utilice el actualizador por línea de comandos ya que la actualización vía navegador se encuentra deshabilitado en su config.php",
"Turned on maintenance mode" : "Modo mantenimiento activado",
"Turned off maintenance mode" : "Modo mantenimiento desactivado",
@@ -78,8 +79,125 @@
"%s (incompatible)" : "%s (incompatible)",
"The following apps have been disabled: %s" : "Las siguientes apps han sido desactivadas: %s",
"Already up to date" : "Ya actualizado",
+ "Windows Command Script" : "Script de WIndows Command",
+ "Electronic book document" : "Documento Electronic Book",
+ "TrueType Font Collection" : "Colección de fuentes TrueType",
+ "Web Open Font Format" : "Formato Web Open Font",
+ "GPX geographic data" : "Datos geográficos GPX",
+ "Gzip archive" : "Archivador Gzip",
+ "Adobe Illustrator document" : "Documento de Adobe Illustrator",
+ "Java source code" : "Código fuente Java",
+ "JavaScript source code" : "Código fuente JavaScript",
+ "JSON document" : "Documento JSON",
+ "Microsoft Access database" : "Base de datos Microsoft Access",
+ "Microsoft OneNote document" : "Documento de Microsoft OneNote",
+ "Microsoft Word document" : "Documento de Microsoft Word",
"Unknown" : "Desconocido",
+ "PDF document" : "Documento PDF",
+ "PostScript document" : "Documento PostScript",
+ "RSS summary" : "Resumen RSS",
+ "Android package" : "Paquete Android",
+ "KML geographic data" : "Datos geográficos KML",
+ "KML geographic compressed data" : "Datos geográficos KML comprimidos",
+ "Lotus Word Pro document" : "Documento de Lotus Word Pro",
+ "Excel spreadsheet" : "Hoja de cálculo de Excel",
+ "Excel add-in" : "Add-in de Excel",
+ "Excel 2007 binary spreadsheet" : "Hoja de cálculo binaria Excel 2007",
+ "Excel spreadsheet template" : "Plantilla de hoja de cálculo Excel",
+ "Outlook Message" : "Mensaje de Outlook",
+ "PowerPoint presentation" : "Presentación PowerPoint",
+ "PowerPoint add-in" : "Add-in de PowerPoint",
+ "PowerPoint presentation template" : "Plantilla de presentación PowerPoint",
+ "Word document" : "Documento de Word",
+ "ODF formula" : "Fórmula ODF",
+ "ODG drawing" : "Dibujo ODG",
+ "ODG drawing (Flat XML)" : "Dibujo ODG (XML Plano)",
+ "ODG template" : "Plantilla ODG",
+ "ODP presentation" : "Presentación ODP",
+ "ODP presentation (Flat XML)" : "Presentación ODP (XML Plano)",
+ "ODP template" : "Plantilla ODP",
+ "ODS spreadsheet" : "Hoja de cálculo ODS",
+ "ODS spreadsheet (Flat XML)" : "Hoja de cálculo ODS (XML Plano)",
+ "ODS template" : "Plantilla ODS",
+ "ODT document" : "Documento ODT",
+ "ODT document (Flat XML)" : "Documento ODT (XML Plano)",
+ "ODT template" : "Plantilla ODT",
+ "PowerPoint 2007 presentation" : "Presentación de PowerPoint 2007",
+ "PowerPoint 2007 show" : "Presentación de diapositivas de PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Plantilla de presentación de diapositivas de PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Hoja de cálculo de Excel 2007",
+ "Excel 2007 spreadsheet template" : "Plantilla de hoja de cálculo de Excel 2007",
+ "Word 2007 document" : "Documento de Word 2007",
+ "Word 2007 document template" : "Plantilla de documento de Word 2007",
+ "Microsoft Visio document" : "Documento de Microsoft Visio",
+ "WordPerfect document" : "Documento de WordPerfect",
+ "7-zip archive" : "Archivador 7-zip",
+ "Blender scene" : "Escena de Blender",
+ "Bzip2 archive" : "Archivador Bzip2",
+ "Debian package" : "Paquete de Debian",
+ "FictionBook document" : "Documento de FictionBook",
+ "Unknown font" : "Fuente desconocida",
+ "Krita document" : "Documento de Krita",
+ "Mobipocket e-book" : "E-book Mobipocket",
+ "Windows Installer package" : "Paquete de Windows installer",
+ "Perl script" : "Script Perl",
+ "PHP script" : "Script PHP",
+ "Tar archive" : "Archivador Tar",
+ "XML document" : "Documento XML",
+ "YAML document" : "Documento YAML",
+ "Zip archive" : "Archivador Zip",
+ "Zstandard archive" : "Archivador Zstandard",
+ "AAC audio" : "Audio AAC",
+ "FLAC audio" : "Audio FLAC",
+ "MPEG-4 audio" : "Audio MPEG-4",
+ "MP3 audio" : "Audio MP3",
+ "Ogg audio" : "Audio Ogg",
+ "RIFF/WAVe standard Audio" : "Audio estándar RIFF/WAVe",
+ "WebM audio" : "Audio WebM",
+ "MP3 ShoutCast playlist" : "Lista de reproducción MP3 ShoutCast",
+ "Windows BMP image" : "Imagen BMP de Windows",
+ "Better Portable Graphics image" : "Imagen Better Portable Graphics",
+ "EMF image" : "Imagen EMF",
+ "GIF image" : "Imagen GIF",
+ "HEIC image" : "Imagen HEIC",
+ "HEIF image" : "Imagen HEIF",
+ "JPEG-2000 JP2 image" : "Imagen JPEG-2000 JP2",
+ "JPEG image" : "Imagen JPEG",
"PNG image" : "Imagen PNG",
+ "SVG image" : "Imagen SVG",
+ "Truevision Targa image" : "Imagen Truevision Targa",
+ "TIFF image" : "Imagen TIFF",
+ "WebP image" : "Imagen WebP",
+ "Digital raw image" : "Imagen Digital cruda",
+ "Windows Icon" : "Ícono de Windows",
+ "Email message" : "Mensaje de correo electrónico",
+ "VCS/ICS calendar" : "Calendario VCS/ICS",
+ "CSS stylesheet" : "Hoja de estilos CSS",
+ "CSV document" : "Documento CSV",
+ "HTML document" : "Documento HTML",
+ "Markdown document" : "Documento Markdown",
+ "Org-mode file" : "Archivo Org-mode",
+ "Plain text document" : "Documento de texto plano",
+ "Rich Text document" : "Documento de Texto enriquecido",
+ "Electronic business card" : "Tarjeta de negocios electrónica",
+ "C++ source code" : "Código fuente C++",
+ "LDIF address book" : "Libreta de direcciones LDIF",
+ "NFO document" : "Documento NFO",
+ "PHP source" : "Código fuente PHP",
+ "Python script" : "Script de Python",
+ "ReStructuredText document" : "Documento ReStructuredText",
+ "3GPP multimedia file" : "Archivo multimedia 3GPP",
+ "MPEG video" : "Vídeo MPEG",
+ "DV video" : "Vídeo DV",
+ "MPEG-2 transport stream" : "Flujo de transporte MPEG-2",
+ "MPEG-4 video" : "Vídeo MPEG-4",
+ "Ogg video" : "Vídeo Ogg",
+ "QuickTime video" : "Vídeo QuickTime",
+ "WebM video" : "Vídeo WebM",
+ "Flash video" : "Vídeo Flash",
+ "Matroska video" : "Vídeo Matroska",
+ "Windows Media video" : "Vídeo de Windows Media",
+ "AVI video" : "Vídeo AVI",
"Error occurred while checking server setup" : "Ha ocurrido un error al revisar la configuración del servidor",
"For more details see the {linkstart}documentation ↗{linkend}." : "Para más detalles compruebe la {linkstart}documentación ↗{linkend}.",
"unknown text" : "texto desconocido",
@@ -106,7 +224,7 @@
"Yes" : "Sí",
"The remote URL must include the user." : "La URL remota debe incluir el usuario.",
"Invalid remote URL." : "URL remota inválida.",
- "Failed to add the public link to your Nextcloud" : "No se ha podido añadir el enlace público a tu Nextcloud",
+ "Failed to add the public link to your Nextcloud" : "No se ha podido añadir el enlace público a su Nextcloud",
"Federated user" : "Usuario federado",
"user@your-nextcloud.org" : "usuario@su-nextcloud.org",
"Create share" : "Crear un recurso compartido",
@@ -144,7 +262,7 @@
"This account is disabled" : "Esta cuenta está deshabilitada",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "Hemos detectado múltiples intentos inválidos desde tu IP. Por tanto, tu próximo intento se retrasará 30 segundos.",
"Account name or email" : "Nombre de cuenta o correo electrónico",
- "Account name" : "Nombre de cuenta",
+ "Account name" : "Nombre de la cuenta",
"Server side authentication failed!" : "La autenticación ha fallado en el servidor.",
"Please contact your administrator." : "Por favor, contacte con el administrador.",
"Session error" : "Error de sesión",
@@ -171,7 +289,7 @@
"Schedule work & meetings, synced with all your devices." : "Programe trabajo y reuniones, sincronizados con todos sus dispositivos.",
"Keep your colleagues and friends in one place without leaking their private info." : "Mantenga a sus colegas y amigos en un sólo sitio sin dejar escapar su información privada.",
"Simple email app nicely integrated with Files, Contacts and Calendar." : "Simple email app se integra bien con Archivos, Contactos y Calendario.",
- "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Mensajes, videollamadas, compartir pantalla, reuniones en línea y conferencias web – en su navegador y aplicaciones móviles.",
+ "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Mensajes, videollamadas, compartir pantalla, reuniones en línea y conferencias web – en su navegador y con aplicaciones móviles.",
"Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Documentos colaborativos, hojas de cálculo y presentaciones, basadas en Collabora Online.",
"Distraction free note taking app." : "App de de notas y escritura libre de distracciones.",
"Recommended apps" : "Aplicaciones recomendadas",
@@ -197,7 +315,7 @@
"Search" : "Buscar",
"No results for {query}" : "Sin resultados para {query}",
"Press Enter to start searching" : "Pulse Enter para iniciar la búsqueda",
- "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Por favor, introduce {minSearchLength} carácter o más para buscar","Por favor, introduce {minSearchLength} caracteres o más para buscar","Por favor, introduce {minSearchLength} caracteres o más para buscar"],
+ "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Por favor, introduzca {minSearchLength} carácter o más para buscar","Por favor, introduzca {minSearchLength} caracteres o más para buscar","Por favor, introduzca {minSearchLength} caracteres o más para buscar"],
"An error occurred while searching for {type}" : "Ha ocurrido un error al buscar {type}",
"Search starts once you start typing and results may be reached with the arrow keys" : "La búsqueda empieza una vez que comienza a escribir y los resultados pueden seleccionarse con las teclas de flecha",
"Search for {name} only" : "Buscar solo por {name}",
@@ -208,6 +326,11 @@
"Login form is disabled." : "La página de inicio de sesión está deshabilitada.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "El formulario de inicio de sesión de Nextcloud está deshabilitado. Use otro medio de inicio de sesión disponible o contacte a su administración.",
"More actions" : "Más acciones",
+ "User menu" : "Menú de usuario",
+ "You will be identified as {user} by the account owner." : "Será identificado como {user} por el propietario de la cuenta.",
+ "You are currently not identified." : "Actualmente, no se encuentra identificado.",
+ "Set public name" : "Establecer nombre público",
+ "Change public name" : "Cambiar nombre público",
"Password is too weak" : "La contraseña es muy débil",
"Password is weak" : "La contraseña es débil",
"Password is average" : "La contraseña tiene una complejidad promedio",
@@ -301,9 +424,10 @@
"Admin" : "Administración",
"Help" : "Ayuda",
"Access forbidden" : "Acceso denegado",
+ "You are not allowed to access this page." : "No tiene permitido acceder a esta página.",
+ "Back to %s" : "Volver a %s",
"Page not found" : "Página no encontrada",
"The page could not be found on the server or you may not be allowed to view it." : "La página no fue encontrada en el servidor o podría no tener acceso para verla.",
- "Back to %s" : "Volver a %s",
"Too many requests" : "Demasiadas peticiones",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Hubo demasiadas peticiones desde su red. Vuelva a intentarlo más tarde o póngase en contacto con su administrador si se trata de un error.",
"Error" : "Error",
@@ -379,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Está instancia %s está en modo mantenimiento, y puede tardar un rato.",
"This page will refresh itself when the instance is available again." : "Esta página se actualizará sola cuando la instancia esté disponible de nuevo.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contacte con su administrador de sistemas si este mensaje persiste o aparece de forma inesperada.",
- "Currently open" : "Actualmente abierto",
- "Login with username or email" : "Iniciar sesión con nombre de usuario o correo electrónico",
- "Login with username" : "Iniciar sesión con nombre de usuario",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Mensajes, videollamadas, compartir pantalla, reuniones online y conferencias web – en tu navegador y con apps móviles.",
"You have not added any info yet" : "Aún no has añadido nada de información",
"{user} has not added any info yet" : "{user} no ha añadido aún nada de información",
"Error opening the user status modal, try hard refreshing the page" : "Error al abrir la ventana de estado del usuario, intente actualizar la página",
"Edit Profile" : "Editar perfil",
"The headline and about sections will show up here" : "El título y la sección acerca de aparecerán aquí",
- "Error loading message template: {error}" : "Error al cargar plantilla del mensaje: {error}",
"Very weak password" : "Contraseña muy débil",
"Weak password" : "Contraseña débil",
"So-so password" : "Contraseña normal",
diff --git a/core/l10n/es_EC.js b/core/l10n/es_EC.js
index 2b7358b7aed..0f21d10c0c4 100644
--- a/core/l10n/es_EC.js
+++ b/core/l10n/es_EC.js
@@ -43,16 +43,16 @@ OC.L10N.register(
"No translation provider available" : "No hay proveedor de traducción disponible",
"Could not detect language" : "No se pudo detectar el idioma",
"Unable to translate" : "No se puede traducir",
- "Nextcloud Server" : "Servidor de Nextcloud",
- "Some of your link shares have been removed" : "Se han eliminado algunas de sus comparticiones de enlaces",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Debido a un error de seguridad, hemos tenido que eliminar algunas de sus comparticiones de enlaces. Por favor, consulte el enlace para obtener más información.",
- "Learn more ↗" : "Más información ↗",
- "Preparing update" : "Preparando actualización",
"[%d / %d]: %s" : "[%d / %d]: %s ",
"Repair step:" : "Paso de reparación:",
"Repair info:" : "Información de reparación:",
"Repair warning:" : "Advertencia de reparación:",
"Repair error:" : "Error de reparación:",
+ "Nextcloud Server" : "Servidor de Nextcloud",
+ "Some of your link shares have been removed" : "Se han eliminado algunas de sus comparticiones de enlaces",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Debido a un error de seguridad, hemos tenido que eliminar algunas de sus comparticiones de enlaces. Por favor, consulte el enlace para obtener más información.",
+ "Learn more ↗" : "Más información ↗",
+ "Preparing update" : "Preparando actualización",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Utilice el actualizador de línea de comandos porque la actualización a través del navegador está deshabilitada en su config.php.",
"Turned on maintenance mode" : "Modo mantenimiento activado",
"Turned off maintenance mode" : "Modo mantenimiento desactivado",
@@ -236,9 +236,9 @@ OC.L10N.register(
"Admin" : "Administración",
"Help" : "Ayuda",
"Access forbidden" : "Acceso prohibido",
+ "Back to %s" : "Volver a %s",
"Page not found" : "Página no encontrada",
"The page could not be found on the server or you may not be allowed to view it." : "No se pudo encontrar la página en el servidor o es posible que no se te permita verla.",
- "Back to %s" : "Volver a %s",
"Too many requests" : "Demasiadas solicitudes",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Había demasiadas solicitudes desde tu red. Vuelve a intentarlo más tarde o contacta a tu administrador si se trata de un error.",
"Error" : "Error",
@@ -310,14 +310,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Esta instancia %s se encuentra actualmente en modo mantenimiento, que podría tomar algo de tiempo. ",
"This page will refresh itself when the instance is available again." : "Esta página se actualizará automáticamente cuando la instancia esté disponible nuevamente.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contacta a tu administrador del sistema si este mensaje persiste o se presentó de manera inesperada.",
- "Currently open" : "Actualmente abierto",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chat, videollamadas, uso compartido de pantalla, reuniones en línea y videoconferencias, en tu navegador y con aplicaciones móviles.",
"You have not added any info yet" : "No has agregado ninguna información todavía",
"{user} has not added any info yet" : "{user} no ha agregado ninguna información aún",
"Error opening the user status modal, try hard refreshing the page" : "Error al abrir el modal de estado del usuario, intenta actualizar la página",
"Edit Profile" : "Editar perfil",
"The headline and about sections will show up here" : "El titular y la sección Acerca de se mostrarán aquí",
- "Error loading message template: {error}" : "Se presentó un error al cargar la plantilla del mensaje: {error}",
"Very weak password" : "Contraseña muy débil",
"Weak password" : "Contraseña débil",
"So-so password" : "Contraseña aceptable",
diff --git a/core/l10n/es_EC.json b/core/l10n/es_EC.json
index 9ea3c7675f6..b90fc3b4fca 100644
--- a/core/l10n/es_EC.json
+++ b/core/l10n/es_EC.json
@@ -41,16 +41,16 @@
"No translation provider available" : "No hay proveedor de traducción disponible",
"Could not detect language" : "No se pudo detectar el idioma",
"Unable to translate" : "No se puede traducir",
- "Nextcloud Server" : "Servidor de Nextcloud",
- "Some of your link shares have been removed" : "Se han eliminado algunas de sus comparticiones de enlaces",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Debido a un error de seguridad, hemos tenido que eliminar algunas de sus comparticiones de enlaces. Por favor, consulte el enlace para obtener más información.",
- "Learn more ↗" : "Más información ↗",
- "Preparing update" : "Preparando actualización",
"[%d / %d]: %s" : "[%d / %d]: %s ",
"Repair step:" : "Paso de reparación:",
"Repair info:" : "Información de reparación:",
"Repair warning:" : "Advertencia de reparación:",
"Repair error:" : "Error de reparación:",
+ "Nextcloud Server" : "Servidor de Nextcloud",
+ "Some of your link shares have been removed" : "Se han eliminado algunas de sus comparticiones de enlaces",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Debido a un error de seguridad, hemos tenido que eliminar algunas de sus comparticiones de enlaces. Por favor, consulte el enlace para obtener más información.",
+ "Learn more ↗" : "Más información ↗",
+ "Preparing update" : "Preparando actualización",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Utilice el actualizador de línea de comandos porque la actualización a través del navegador está deshabilitada en su config.php.",
"Turned on maintenance mode" : "Modo mantenimiento activado",
"Turned off maintenance mode" : "Modo mantenimiento desactivado",
@@ -234,9 +234,9 @@
"Admin" : "Administración",
"Help" : "Ayuda",
"Access forbidden" : "Acceso prohibido",
+ "Back to %s" : "Volver a %s",
"Page not found" : "Página no encontrada",
"The page could not be found on the server or you may not be allowed to view it." : "No se pudo encontrar la página en el servidor o es posible que no se te permita verla.",
- "Back to %s" : "Volver a %s",
"Too many requests" : "Demasiadas solicitudes",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Había demasiadas solicitudes desde tu red. Vuelve a intentarlo más tarde o contacta a tu administrador si se trata de un error.",
"Error" : "Error",
@@ -308,14 +308,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Esta instancia %s se encuentra actualmente en modo mantenimiento, que podría tomar algo de tiempo. ",
"This page will refresh itself when the instance is available again." : "Esta página se actualizará automáticamente cuando la instancia esté disponible nuevamente.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contacta a tu administrador del sistema si este mensaje persiste o se presentó de manera inesperada.",
- "Currently open" : "Actualmente abierto",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chat, videollamadas, uso compartido de pantalla, reuniones en línea y videoconferencias, en tu navegador y con aplicaciones móviles.",
"You have not added any info yet" : "No has agregado ninguna información todavía",
"{user} has not added any info yet" : "{user} no ha agregado ninguna información aún",
"Error opening the user status modal, try hard refreshing the page" : "Error al abrir el modal de estado del usuario, intenta actualizar la página",
"Edit Profile" : "Editar perfil",
"The headline and about sections will show up here" : "El titular y la sección Acerca de se mostrarán aquí",
- "Error loading message template: {error}" : "Se presentó un error al cargar la plantilla del mensaje: {error}",
"Very weak password" : "Contraseña muy débil",
"Weak password" : "Contraseña débil",
"So-so password" : "Contraseña aceptable",
diff --git a/core/l10n/es_MX.js b/core/l10n/es_MX.js
index dfdc12f7d9c..1e589160f99 100644
--- a/core/l10n/es_MX.js
+++ b/core/l10n/es_MX.js
@@ -51,6 +51,11 @@ OC.L10N.register(
"No translation provider available" : "No hay proveedores de traducción disponibles",
"Could not detect language" : "No se pudo detectar el idioma",
"Unable to translate" : "No se puede traducir",
+ "[%d / %d]: %s" : "[%d / %d]: %s ",
+ "Repair step:" : "Paso de reparación:",
+ "Repair info:" : "Información de reparación:",
+ "Repair warning:" : "Advertencia de reparación:",
+ "Repair error:" : "Error de reparación: ",
"Nextcloud Server" : "Servidor Nextcloud",
"Some of your link shares have been removed" : "Se han eliminado algunos de sus enlaces compartidos",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Debido a un error de seguridad, tuvimos que eliminar algunos de sus enlaces compartidos. Por favor vea el enlace para más información.",
@@ -58,11 +63,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Ingrese su clave de suscripción en la aplicación de soporte para aumentar el límite de cuentas. Esto también le otorga todos los beneficios adicionales que ofrece Nextcloud Enterprise y que es altamente recomendado para la operación en empresas.",
"Learn more ↗" : "Más información ↗",
"Preparing update" : "Preparando actualización",
- "[%d / %d]: %s" : "[%d / %d]: %s ",
- "Repair step:" : "Paso de reparación:",
- "Repair info:" : "Información de reparación:",
- "Repair warning:" : "Advertencia de reparación:",
- "Repair error:" : "Error de reparación: ",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Por favor, utilice el actualizador desde la línea de comandos porque la actualización a través del navegador está deshabilitada en config.php.",
"Turned on maintenance mode" : "Modo mantenimiento activado",
"Turned off maintenance mode" : "Modo mantenimiento desactivado",
@@ -283,9 +283,9 @@ OC.L10N.register(
"Admin" : "Administración",
"Help" : "Ayuda",
"Access forbidden" : "Acceso prohibido",
+ "Back to %s" : "Volver a %s",
"Page not found" : "Página no encontrada",
"The page could not be found on the server or you may not be allowed to view it." : "No se pudo encontrar la página en el servidor o es posible que no se le permita verla.",
- "Back to %s" : "Volver a %s",
"Too many requests" : "Demasiadas solicitudes",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Hubieron demasiadas solicitudes desde su red. Vuelva a intentarlo más tarde o contacte a su administrador si se trata de un error.",
"Error" : "Error",
@@ -361,16 +361,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Esta instancia %s se encuentra actualmente en modo mantenimiento, que podría tomar algo de tiempo. ",
"This page will refresh itself when the instance is available again." : "Esta página se actualizará automáticamente cuando la instancia esté disponible nuevamente.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contacta a tu administrador del sistema si este mensaje persiste o se presentó de manera inesperada.",
- "Currently open" : "Actualmente abierto",
- "Login with username or email" : "Iniciar sesión con nombre de usuario o correo electrónico",
- "Login with username" : "Iniciar sesión con nombre de usuario",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Mensajes, videollamadas, compartir pantalla, reuniones en línea y conferencias web – en su navegador y aplicaciones móviles.",
"You have not added any info yet" : "Aún no has añadido información",
"{user} has not added any info yet" : "{user} aún no añade información",
"Error opening the user status modal, try hard refreshing the page" : "Error al abrir la ventana de estado del usuario, intente actualizar la página",
"Edit Profile" : "Editar perfil",
"The headline and about sections will show up here" : "El encabezado y la sección Acerca de aparecerán aquí",
- "Error loading message template: {error}" : "Se presentó un error al cargar la plantilla del mensaje: {error}",
"Very weak password" : "Contraseña muy débil",
"Weak password" : "Contraseña débil",
"So-so password" : "Contraseña aceptable",
diff --git a/core/l10n/es_MX.json b/core/l10n/es_MX.json
index 01ef217744e..fdf25db0b86 100644
--- a/core/l10n/es_MX.json
+++ b/core/l10n/es_MX.json
@@ -49,6 +49,11 @@
"No translation provider available" : "No hay proveedores de traducción disponibles",
"Could not detect language" : "No se pudo detectar el idioma",
"Unable to translate" : "No se puede traducir",
+ "[%d / %d]: %s" : "[%d / %d]: %s ",
+ "Repair step:" : "Paso de reparación:",
+ "Repair info:" : "Información de reparación:",
+ "Repair warning:" : "Advertencia de reparación:",
+ "Repair error:" : "Error de reparación: ",
"Nextcloud Server" : "Servidor Nextcloud",
"Some of your link shares have been removed" : "Se han eliminado algunos de sus enlaces compartidos",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Debido a un error de seguridad, tuvimos que eliminar algunos de sus enlaces compartidos. Por favor vea el enlace para más información.",
@@ -56,11 +61,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Ingrese su clave de suscripción en la aplicación de soporte para aumentar el límite de cuentas. Esto también le otorga todos los beneficios adicionales que ofrece Nextcloud Enterprise y que es altamente recomendado para la operación en empresas.",
"Learn more ↗" : "Más información ↗",
"Preparing update" : "Preparando actualización",
- "[%d / %d]: %s" : "[%d / %d]: %s ",
- "Repair step:" : "Paso de reparación:",
- "Repair info:" : "Información de reparación:",
- "Repair warning:" : "Advertencia de reparación:",
- "Repair error:" : "Error de reparación: ",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Por favor, utilice el actualizador desde la línea de comandos porque la actualización a través del navegador está deshabilitada en config.php.",
"Turned on maintenance mode" : "Modo mantenimiento activado",
"Turned off maintenance mode" : "Modo mantenimiento desactivado",
@@ -281,9 +281,9 @@
"Admin" : "Administración",
"Help" : "Ayuda",
"Access forbidden" : "Acceso prohibido",
+ "Back to %s" : "Volver a %s",
"Page not found" : "Página no encontrada",
"The page could not be found on the server or you may not be allowed to view it." : "No se pudo encontrar la página en el servidor o es posible que no se le permita verla.",
- "Back to %s" : "Volver a %s",
"Too many requests" : "Demasiadas solicitudes",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Hubieron demasiadas solicitudes desde su red. Vuelva a intentarlo más tarde o contacte a su administrador si se trata de un error.",
"Error" : "Error",
@@ -359,16 +359,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Esta instancia %s se encuentra actualmente en modo mantenimiento, que podría tomar algo de tiempo. ",
"This page will refresh itself when the instance is available again." : "Esta página se actualizará automáticamente cuando la instancia esté disponible nuevamente.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contacta a tu administrador del sistema si este mensaje persiste o se presentó de manera inesperada.",
- "Currently open" : "Actualmente abierto",
- "Login with username or email" : "Iniciar sesión con nombre de usuario o correo electrónico",
- "Login with username" : "Iniciar sesión con nombre de usuario",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Mensajes, videollamadas, compartir pantalla, reuniones en línea y conferencias web – en su navegador y aplicaciones móviles.",
"You have not added any info yet" : "Aún no has añadido información",
"{user} has not added any info yet" : "{user} aún no añade información",
"Error opening the user status modal, try hard refreshing the page" : "Error al abrir la ventana de estado del usuario, intente actualizar la página",
"Edit Profile" : "Editar perfil",
"The headline and about sections will show up here" : "El encabezado y la sección Acerca de aparecerán aquí",
- "Error loading message template: {error}" : "Se presentó un error al cargar la plantilla del mensaje: {error}",
"Very weak password" : "Contraseña muy débil",
"Weak password" : "Contraseña débil",
"So-so password" : "Contraseña aceptable",
diff --git a/core/l10n/et_EE.js b/core/l10n/et_EE.js
index 59587290fd1..bf6db3ec59a 100644
--- a/core/l10n/et_EE.js
+++ b/core/l10n/et_EE.js
@@ -31,19 +31,20 @@ OC.L10N.register(
"This community release of Nextcloud is unsupported and push notifications are limited." : "See Nextcloudi kogukonnaversioon pole toetatud ja tõuketeenuste kasutatavus on piiratud.",
"Login" : "Logi sisse",
"Unsupported email length (>255)" : "E-kirja pikkus pole toetatud (>255)",
- "Password reset is disabled" : "Parooli lähtestamine on välja lülitatud",
+ "Password reset is disabled" : "Salasõna lähtestamine on välja lülitatud",
"Could not reset password because the token is expired" : "Kuna tunnusluba on aegunud, siis salasõna lähtestamine pole võimalik",
"Could not reset password because the token is invalid" : "Kuna tunnusluba on vigane, siis salasõna lähtestamine pole võimalik",
"Password is too long. Maximum allowed length is 469 characters." : "Salasõna on liiga pikk. Suurim lubatud pikkus on 469 sümbolit.",
"%s password reset" : "Salasõna lähtestamine: %s",
"Password reset" : "Salasõna lähtestamine ",
- "Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Kliki allolevale nupule, et lähtestada oma parool. Kui sa ei ole parooli lähtestamist soovinud, siis ignoreeri seda e-kirja.",
- "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Kliki allolevale lingile, et lähtestada oma parool. Kui sa ei ole parooli lähtestamist soovinud. siis ignoreeri seda e-kirja.",
+ "Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Oma salasõna lähtestamiseks klõpsi järgnevat nuppu. Kui sa ei ole salasõna lähtestamist soovinud, siis palun eira seda e-kirja.",
+ "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Oma salasõna lähtestamiseks klõpsi järgnevat linki. Kui sa ei ole salasõna lähtestamist soovinud, siis palun eira seda e-kirja.",
"Reset your password" : "Lähtesta oma salasõna",
"The given provider is not available" : "Antud teenusepakkuja pole saadaval",
"Task not found" : "Ülesannet ei leidu",
"Internal error" : "Sisemine viga",
"Not found" : "Ei leidu",
+ "Node is locked" : "Sõlm on lukus",
"Bad request" : "Vigane päring",
"Requested task type does not exist" : "Küsitud ülesannete tüüpi ei leidu",
"Necessary language model provider is not available" : "Vajaliku keelemudeli teenusepakkuja pole saadaval",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Ühtegi tõlketeenuse pakkujat pole saadaval",
"Could not detect language" : "Ei suutnud keelt tuvastada",
"Unable to translate" : "Viga tõlkimisel",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Paranduse samm:",
+ "Repair info:" : "Paranduse teave:",
+ "Repair warning:" : "Paranduse hoiatus:",
+ "Repair error:" : "Paranduse viga:",
"Nextcloud Server" : "Nextcloudi server",
"Some of your link shares have been removed" : "Mõned sinu linkide jagamised on eemaldatud",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Turvavea tõttu pidime mõned sinu linkide jagamised eemaldama. Lisateabe lugemiseks palun klõpsi järgnevat linki.",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Kasutajakontode arvu ülepiiri suurendamiseks sisesta oma tellimuse võti tugiteenuste rakenduses. Samaga saad kasutusele võtta ka kõik Nextcloud Enterprise'i lisavõimalused, mille kasutamine suurtes organisatsioonides on soovitatav.",
"Learn more ↗" : "Lisateave ↗",
"Preparing update" : "Valmistan ette uuendamist",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Paranduse samm:",
- "Repair info:" : "Paranduse teave:",
- "Repair warning:" : "Paranduse hoiatus:",
- "Repair error:" : "Paranduse viga:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Palun kasuta uuendamiseks käsurida, kuna uuendamine veebibrauserist on config.php failis välja lülitatud.",
"Turned on maintenance mode" : "Hooldusrežiim sisse lülitatud",
"Turned off maintenance mode" : "Hooldusrežiim välja lülitatud",
@@ -273,15 +274,15 @@ OC.L10N.register(
"Password" : "Salasõna",
"Log in with a device" : "Logi sisse seadmega",
"Login or email" : "Kasutajanimi või e-posti aadress",
- "Your account is not setup for passwordless login." : "Su konto ei ole seadistatud paroolivaba sisenemise jaoks.",
+ "Your account is not setup for passwordless login." : "Su konto ei ole seadistatud salasõnata sisenemise jaoks.",
"Your connection is not secure" : "Ühendus ei ole turvaline",
- "Passwordless authentication is only available over a secure connection." : "Paroolivaba sisenemine on saadaval ainult üle turvalise ühenduse.",
+ "Passwordless authentication is only available over a secure connection." : "Salasõnata autentimine eeldab turvalise võrguühenduse kasutamist.",
"Browser not supported" : "Brauser pole toetatud",
- "Passwordless authentication is not supported in your browser." : "Sinu brauser ei toeta salasõnavaba sisenemist.",
+ "Passwordless authentication is not supported in your browser." : "Sinu brauser ei toeta salasõnata sisselogimist.",
"Reset password" : "Lähtesta salasõna",
"Back to login" : "Tagasi sisse logima",
"If this account exists, a password reset message has been sent to its email address. If you do not receive it, verify your email address and/or Login, check your spam/junk folders or ask your local administration for help." : "Kui selline kasutajakonto on olemas, siis salasõna lähtestamiseks vajalik kiri on saadetud tema e-posti aadressile. Kui sa pole kirja kätte saanud, siis palun kontrolli, et kasutajanimi või e-posti aadress on õiged, e-kiri pole sattunud rämpsposti kausta ning vajalusel küsi abi oma süsteemihaldurilt.",
- "Couldn't send reset email. Please contact your administrator." : "Ei suutnud lähtestada e-maili. Palun võta ühendust administraatoriga.",
+ "Couldn't send reset email. Please contact your administrator." : "Ei suutnud saata lähtestamiseks vajalikku e-kirja. Palun võta ühendust serveri haldajaga või peakasutajaga.",
"Password cannot be changed. Please contact your administrator." : "Salasõna ei saa muuta. Palun võta ühendust peakasutaja või süsteemihalduriga.",
"New password" : "Uus salasõna",
"Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "Su failid on krüptitud. Pärast salasõna lähtestamist ei ole mingit võimalust su andmeid tagasi saada. Kui sa pole kindel, mida teha, võta palun ühendust oma süsteemi peakasutajaga. Kas soovid kindlasti jätkata?",
@@ -327,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "Sisselogimise leht on keelatud.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloudi sisselogimisvorm on kasutusel eemaldatud. Kui mõni muu sisselogimisviis on saadaval, siis kasuta seda või küsi lisateavet oma süsteemihaldajalt.",
"More actions" : "Täiendavad tegevused",
+ "User menu" : "Kasutajamenüü",
+ "You will be identified as {user} by the account owner." : "Kasutajakonto omanik tuvastab sind hetkel, kui {user}",
+ "You are currently not identified." : "Sa pole hetkel tuvastatud",
+ "Set public name" : "Lisa avalik nimi",
+ "Change public name" : "Muuda avalikku nime",
"Password is too weak" : "Salasõna on liiga nõrk",
"Password is weak" : "Salasõna on nõrk",
"Password is average" : "Salasõna on keskpärane",
@@ -420,9 +426,10 @@ OC.L10N.register(
"Admin" : "Peakasutaja",
"Help" : "Abiinfo",
"Access forbidden" : "Ligipääs on keelatud",
+ "You are not allowed to access this page." : "Sul pole õigust seda lehte vaadata.",
+ "Back to %s" : "Tagasi siia: %s",
"Page not found" : "Lehekülge ei leitud",
"The page could not be found on the server or you may not be allowed to view it." : "Seda lehekülge selles serveris ei leidu või sul puudub õigus seda vaadata.",
- "Back to %s" : "Tagasi siia: %s",
"Too many requests" : "Liiga palju päringuid",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Sinu võrgust tuli liiga palju päringuid. Proovi hiljem uuesti, või võta ühendust administraatoriga, kui tegu on veaga.",
"Error" : "Viga",
@@ -460,7 +467,7 @@ OC.L10N.register(
"Your client should now be connected!" : "Su klient peaks nüüd olema ühendatud!",
"You can close this window." : "Võid selle akna sulgeda.",
"Previous" : "Eelmine",
- "This share is password-protected" : "See jaoskaust on parooliga kaitstud",
+ "This share is password-protected" : "See jaoskaust on salasõnaga kaitstud",
"The password is wrong or expired. Please try again or request a new one." : "Salasõna on vale või aegunud. Palun proovi uuesti või taotle uut salasõna.",
"Please type in your email address to request a temporary password" : "Palun sisesta oma e-posti aadress ajutise salasõna taotlemiseks",
"Email address" : "E-posti aadress",
@@ -498,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "See %s instants on hetkel hooldusrežiimis, mis võib kesta mõnda aega.",
"This page will refresh itself when the instance is available again." : "See leht värskendab ennast ise, kui instants jälle saadaval on.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Võta ühendust administraatoriga, kui see teade püsib või on tekkinud ootamatult.",
- "Currently open" : "Hetkel avatud",
- "Login with username or email" : "Logi sisse kasutajanime või e-posti aadressiga",
- "Login with username" : "Logi sisse kasutajanimega",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Vestlused, videokõned, ekraanijagamine, online kohtumised ja veebikonverentsid – sinu brauseris ja mobiilirakendustes.",
"You have not added any info yet" : "Sa pole veel mingit infot lisanud",
"{user} has not added any info yet" : "{user} pole veel mitte mingit infot lisanud",
"Error opening the user status modal, try hard refreshing the page" : "Kasutaja staatuse modaaldialoogi avamine ebaõnnestus, proovi lehte värskendada",
"Edit Profile" : "Muuda profiili",
"The headline and about sections will show up here" : "Alapealkirja ja teabe lõigud saavad olema nähtavad siin",
- "Error loading message template: {error}" : "Viga sõnumi malli laadimisel: {error}",
"Very weak password" : "Väga nõrk salasõna",
"Weak password" : "Nõrk salasõna",
"So-so password" : "Enam-vähem sobiv salasõna",
diff --git a/core/l10n/et_EE.json b/core/l10n/et_EE.json
index a796bd741c3..337bd60f905 100644
--- a/core/l10n/et_EE.json
+++ b/core/l10n/et_EE.json
@@ -29,19 +29,20 @@
"This community release of Nextcloud is unsupported and push notifications are limited." : "See Nextcloudi kogukonnaversioon pole toetatud ja tõuketeenuste kasutatavus on piiratud.",
"Login" : "Logi sisse",
"Unsupported email length (>255)" : "E-kirja pikkus pole toetatud (>255)",
- "Password reset is disabled" : "Parooli lähtestamine on välja lülitatud",
+ "Password reset is disabled" : "Salasõna lähtestamine on välja lülitatud",
"Could not reset password because the token is expired" : "Kuna tunnusluba on aegunud, siis salasõna lähtestamine pole võimalik",
"Could not reset password because the token is invalid" : "Kuna tunnusluba on vigane, siis salasõna lähtestamine pole võimalik",
"Password is too long. Maximum allowed length is 469 characters." : "Salasõna on liiga pikk. Suurim lubatud pikkus on 469 sümbolit.",
"%s password reset" : "Salasõna lähtestamine: %s",
"Password reset" : "Salasõna lähtestamine ",
- "Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Kliki allolevale nupule, et lähtestada oma parool. Kui sa ei ole parooli lähtestamist soovinud, siis ignoreeri seda e-kirja.",
- "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Kliki allolevale lingile, et lähtestada oma parool. Kui sa ei ole parooli lähtestamist soovinud. siis ignoreeri seda e-kirja.",
+ "Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Oma salasõna lähtestamiseks klõpsi järgnevat nuppu. Kui sa ei ole salasõna lähtestamist soovinud, siis palun eira seda e-kirja.",
+ "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Oma salasõna lähtestamiseks klõpsi järgnevat linki. Kui sa ei ole salasõna lähtestamist soovinud, siis palun eira seda e-kirja.",
"Reset your password" : "Lähtesta oma salasõna",
"The given provider is not available" : "Antud teenusepakkuja pole saadaval",
"Task not found" : "Ülesannet ei leidu",
"Internal error" : "Sisemine viga",
"Not found" : "Ei leidu",
+ "Node is locked" : "Sõlm on lukus",
"Bad request" : "Vigane päring",
"Requested task type does not exist" : "Küsitud ülesannete tüüpi ei leidu",
"Necessary language model provider is not available" : "Vajaliku keelemudeli teenusepakkuja pole saadaval",
@@ -50,6 +51,11 @@
"No translation provider available" : "Ühtegi tõlketeenuse pakkujat pole saadaval",
"Could not detect language" : "Ei suutnud keelt tuvastada",
"Unable to translate" : "Viga tõlkimisel",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Paranduse samm:",
+ "Repair info:" : "Paranduse teave:",
+ "Repair warning:" : "Paranduse hoiatus:",
+ "Repair error:" : "Paranduse viga:",
"Nextcloud Server" : "Nextcloudi server",
"Some of your link shares have been removed" : "Mõned sinu linkide jagamised on eemaldatud",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Turvavea tõttu pidime mõned sinu linkide jagamised eemaldama. Lisateabe lugemiseks palun klõpsi järgnevat linki.",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Kasutajakontode arvu ülepiiri suurendamiseks sisesta oma tellimuse võti tugiteenuste rakenduses. Samaga saad kasutusele võtta ka kõik Nextcloud Enterprise'i lisavõimalused, mille kasutamine suurtes organisatsioonides on soovitatav.",
"Learn more ↗" : "Lisateave ↗",
"Preparing update" : "Valmistan ette uuendamist",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Paranduse samm:",
- "Repair info:" : "Paranduse teave:",
- "Repair warning:" : "Paranduse hoiatus:",
- "Repair error:" : "Paranduse viga:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Palun kasuta uuendamiseks käsurida, kuna uuendamine veebibrauserist on config.php failis välja lülitatud.",
"Turned on maintenance mode" : "Hooldusrežiim sisse lülitatud",
"Turned off maintenance mode" : "Hooldusrežiim välja lülitatud",
@@ -271,15 +272,15 @@
"Password" : "Salasõna",
"Log in with a device" : "Logi sisse seadmega",
"Login or email" : "Kasutajanimi või e-posti aadress",
- "Your account is not setup for passwordless login." : "Su konto ei ole seadistatud paroolivaba sisenemise jaoks.",
+ "Your account is not setup for passwordless login." : "Su konto ei ole seadistatud salasõnata sisenemise jaoks.",
"Your connection is not secure" : "Ühendus ei ole turvaline",
- "Passwordless authentication is only available over a secure connection." : "Paroolivaba sisenemine on saadaval ainult üle turvalise ühenduse.",
+ "Passwordless authentication is only available over a secure connection." : "Salasõnata autentimine eeldab turvalise võrguühenduse kasutamist.",
"Browser not supported" : "Brauser pole toetatud",
- "Passwordless authentication is not supported in your browser." : "Sinu brauser ei toeta salasõnavaba sisenemist.",
+ "Passwordless authentication is not supported in your browser." : "Sinu brauser ei toeta salasõnata sisselogimist.",
"Reset password" : "Lähtesta salasõna",
"Back to login" : "Tagasi sisse logima",
"If this account exists, a password reset message has been sent to its email address. If you do not receive it, verify your email address and/or Login, check your spam/junk folders or ask your local administration for help." : "Kui selline kasutajakonto on olemas, siis salasõna lähtestamiseks vajalik kiri on saadetud tema e-posti aadressile. Kui sa pole kirja kätte saanud, siis palun kontrolli, et kasutajanimi või e-posti aadress on õiged, e-kiri pole sattunud rämpsposti kausta ning vajalusel küsi abi oma süsteemihaldurilt.",
- "Couldn't send reset email. Please contact your administrator." : "Ei suutnud lähtestada e-maili. Palun võta ühendust administraatoriga.",
+ "Couldn't send reset email. Please contact your administrator." : "Ei suutnud saata lähtestamiseks vajalikku e-kirja. Palun võta ühendust serveri haldajaga või peakasutajaga.",
"Password cannot be changed. Please contact your administrator." : "Salasõna ei saa muuta. Palun võta ühendust peakasutaja või süsteemihalduriga.",
"New password" : "Uus salasõna",
"Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "Su failid on krüptitud. Pärast salasõna lähtestamist ei ole mingit võimalust su andmeid tagasi saada. Kui sa pole kindel, mida teha, võta palun ühendust oma süsteemi peakasutajaga. Kas soovid kindlasti jätkata?",
@@ -325,6 +326,11 @@
"Login form is disabled." : "Sisselogimise leht on keelatud.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloudi sisselogimisvorm on kasutusel eemaldatud. Kui mõni muu sisselogimisviis on saadaval, siis kasuta seda või küsi lisateavet oma süsteemihaldajalt.",
"More actions" : "Täiendavad tegevused",
+ "User menu" : "Kasutajamenüü",
+ "You will be identified as {user} by the account owner." : "Kasutajakonto omanik tuvastab sind hetkel, kui {user}",
+ "You are currently not identified." : "Sa pole hetkel tuvastatud",
+ "Set public name" : "Lisa avalik nimi",
+ "Change public name" : "Muuda avalikku nime",
"Password is too weak" : "Salasõna on liiga nõrk",
"Password is weak" : "Salasõna on nõrk",
"Password is average" : "Salasõna on keskpärane",
@@ -418,9 +424,10 @@
"Admin" : "Peakasutaja",
"Help" : "Abiinfo",
"Access forbidden" : "Ligipääs on keelatud",
+ "You are not allowed to access this page." : "Sul pole õigust seda lehte vaadata.",
+ "Back to %s" : "Tagasi siia: %s",
"Page not found" : "Lehekülge ei leitud",
"The page could not be found on the server or you may not be allowed to view it." : "Seda lehekülge selles serveris ei leidu või sul puudub õigus seda vaadata.",
- "Back to %s" : "Tagasi siia: %s",
"Too many requests" : "Liiga palju päringuid",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Sinu võrgust tuli liiga palju päringuid. Proovi hiljem uuesti, või võta ühendust administraatoriga, kui tegu on veaga.",
"Error" : "Viga",
@@ -458,7 +465,7 @@
"Your client should now be connected!" : "Su klient peaks nüüd olema ühendatud!",
"You can close this window." : "Võid selle akna sulgeda.",
"Previous" : "Eelmine",
- "This share is password-protected" : "See jaoskaust on parooliga kaitstud",
+ "This share is password-protected" : "See jaoskaust on salasõnaga kaitstud",
"The password is wrong or expired. Please try again or request a new one." : "Salasõna on vale või aegunud. Palun proovi uuesti või taotle uut salasõna.",
"Please type in your email address to request a temporary password" : "Palun sisesta oma e-posti aadress ajutise salasõna taotlemiseks",
"Email address" : "E-posti aadress",
@@ -496,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "See %s instants on hetkel hooldusrežiimis, mis võib kesta mõnda aega.",
"This page will refresh itself when the instance is available again." : "See leht värskendab ennast ise, kui instants jälle saadaval on.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Võta ühendust administraatoriga, kui see teade püsib või on tekkinud ootamatult.",
- "Currently open" : "Hetkel avatud",
- "Login with username or email" : "Logi sisse kasutajanime või e-posti aadressiga",
- "Login with username" : "Logi sisse kasutajanimega",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Vestlused, videokõned, ekraanijagamine, online kohtumised ja veebikonverentsid – sinu brauseris ja mobiilirakendustes.",
"You have not added any info yet" : "Sa pole veel mingit infot lisanud",
"{user} has not added any info yet" : "{user} pole veel mitte mingit infot lisanud",
"Error opening the user status modal, try hard refreshing the page" : "Kasutaja staatuse modaaldialoogi avamine ebaõnnestus, proovi lehte värskendada",
"Edit Profile" : "Muuda profiili",
"The headline and about sections will show up here" : "Alapealkirja ja teabe lõigud saavad olema nähtavad siin",
- "Error loading message template: {error}" : "Viga sõnumi malli laadimisel: {error}",
"Very weak password" : "Väga nõrk salasõna",
"Weak password" : "Nõrk salasõna",
"So-so password" : "Enam-vähem sobiv salasõna",
diff --git a/core/l10n/eu.js b/core/l10n/eu.js
index 791cc36d605..d28550d43c9 100644
--- a/core/l10n/eu.js
+++ b/core/l10n/eu.js
@@ -51,6 +51,11 @@ OC.L10N.register(
"No translation provider available" : "Ez dago itzulpen-hornitzailerik erabilgarri",
"Could not detect language" : "Ezin izan da hizkuntza hauteman",
"Unable to translate" : "Ezin izan da itzuli",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Konponketa pausoa:",
+ "Repair info:" : "Konponketa informazioa:",
+ "Repair warning:" : "Konponketa abisua:",
+ "Repair error:" : "Konponketa errorea:",
"Nextcloud Server" : "Nextcloud zerbitzaria",
"Some of your link shares have been removed" : "Zure esteka partekatzeetako batzuk kendu dira",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Segurtasun errore baten ondorioz zure esteka partekatze batzuk kendu ditugu. Ikusi esteka informazio gehiagorako.",
@@ -58,11 +63,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Sartu zure harpidetza-gakoa laguntza-aplikazioan kontuen muga handitzeko. Horrek Nextcloud Enterprise-k eskaintzen dituen abantaila gehigarri guztiak ere ematen dizkizu eta oso gomendagarria da enpresetan funtzionatzeko.",
"Learn more ↗" : "Informazio gehiago ↗",
"Preparing update" : "Eguneratzea prestatzen",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Konponketa pausoa:",
- "Repair info:" : "Konponketa informazioa:",
- "Repair warning:" : "Konponketa abisua:",
- "Repair error:" : "Konponketa errorea:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Mesedez, erabili komando-lerroko eguneratzailea, arakatzailearen bidez eguneratzea desgaituta dagoelako zure config.php-n.",
"Turned on maintenance mode" : "Mantentze modua aktibatu da",
"Turned off maintenance mode" : "Mantentze modua desaktibatu da",
@@ -283,9 +283,9 @@ OC.L10N.register(
"Admin" : "Admin",
"Help" : "Laguntza",
"Access forbidden" : "Sarrera debekatuta",
+ "Back to %s" : "Itzuli %s(e)ra",
"Page not found" : "Orria ez da aurkitu",
"The page could not be found on the server or you may not be allowed to view it." : "Ezin izan da orria aurkitu edo ez duzu ikusteko baimenik.",
- "Back to %s" : "Itzuli %s(e)ra",
"Too many requests" : "Eskaera gehiegi",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Eskaera gehiegi zeuden zure saretik. Saiatu beranduago edo kontaktatu zure administrailearekin hau errorea bada.",
"Error" : "Errorea",
@@ -361,16 +361,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "%s instantzia hau mantentze moduan dago une honetan, honek denbora tarte bat iraun dezake.",
"This page will refresh itself when the instance is available again." : "Instantzia berriz ere erabilgarri dagoenean orri hau freskatuko da.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Jarri harremanetan zure sistema administratzailearekin mezu honek irauten badu edo ezustean agertu bada.",
- "Currently open" : "Irekita une honetan",
- "Login with username or email" : "Hasi saioa erabiltzaile-izen edo e-postarekin",
- "Login with username" : "Hasi saioa erabiltzaile-izenarekin",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Txata, bideo-deiak, pantaila partekatzea, lineako bilerak eta web konferentziak - zure nabigatzailean eta mugikorrerako aplikazioekin.",
"You have not added any info yet" : "Oraindik ez duzu informaziorik gehitu",
"{user} has not added any info yet" : "{user}-(e)k ez du oraindik informaziorik gehitu",
"Error opening the user status modal, try hard refreshing the page" : "Errorea erabiltzailen egoera leihoa irekitzean, saiatu orria guztiz freskatzen",
"Edit Profile" : "Editatu profila",
"The headline and about sections will show up here" : "Izenburua eta 'Niri buruz' atalak hemen agertuko dira",
- "Error loading message template: {error}" : "Errorea mezu txantiloia kargatzean: {error}",
"Very weak password" : "Pasahitz oso ahula",
"Weak password" : "Pasahitz ahula",
"So-so password" : "Hala moduzko pasahitza",
diff --git a/core/l10n/eu.json b/core/l10n/eu.json
index b6edc2d1db0..63dae37755e 100644
--- a/core/l10n/eu.json
+++ b/core/l10n/eu.json
@@ -49,6 +49,11 @@
"No translation provider available" : "Ez dago itzulpen-hornitzailerik erabilgarri",
"Could not detect language" : "Ezin izan da hizkuntza hauteman",
"Unable to translate" : "Ezin izan da itzuli",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Konponketa pausoa:",
+ "Repair info:" : "Konponketa informazioa:",
+ "Repair warning:" : "Konponketa abisua:",
+ "Repair error:" : "Konponketa errorea:",
"Nextcloud Server" : "Nextcloud zerbitzaria",
"Some of your link shares have been removed" : "Zure esteka partekatzeetako batzuk kendu dira",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Segurtasun errore baten ondorioz zure esteka partekatze batzuk kendu ditugu. Ikusi esteka informazio gehiagorako.",
@@ -56,11 +61,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Sartu zure harpidetza-gakoa laguntza-aplikazioan kontuen muga handitzeko. Horrek Nextcloud Enterprise-k eskaintzen dituen abantaila gehigarri guztiak ere ematen dizkizu eta oso gomendagarria da enpresetan funtzionatzeko.",
"Learn more ↗" : "Informazio gehiago ↗",
"Preparing update" : "Eguneratzea prestatzen",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Konponketa pausoa:",
- "Repair info:" : "Konponketa informazioa:",
- "Repair warning:" : "Konponketa abisua:",
- "Repair error:" : "Konponketa errorea:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Mesedez, erabili komando-lerroko eguneratzailea, arakatzailearen bidez eguneratzea desgaituta dagoelako zure config.php-n.",
"Turned on maintenance mode" : "Mantentze modua aktibatu da",
"Turned off maintenance mode" : "Mantentze modua desaktibatu da",
@@ -281,9 +281,9 @@
"Admin" : "Admin",
"Help" : "Laguntza",
"Access forbidden" : "Sarrera debekatuta",
+ "Back to %s" : "Itzuli %s(e)ra",
"Page not found" : "Orria ez da aurkitu",
"The page could not be found on the server or you may not be allowed to view it." : "Ezin izan da orria aurkitu edo ez duzu ikusteko baimenik.",
- "Back to %s" : "Itzuli %s(e)ra",
"Too many requests" : "Eskaera gehiegi",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Eskaera gehiegi zeuden zure saretik. Saiatu beranduago edo kontaktatu zure administrailearekin hau errorea bada.",
"Error" : "Errorea",
@@ -359,16 +359,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "%s instantzia hau mantentze moduan dago une honetan, honek denbora tarte bat iraun dezake.",
"This page will refresh itself when the instance is available again." : "Instantzia berriz ere erabilgarri dagoenean orri hau freskatuko da.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Jarri harremanetan zure sistema administratzailearekin mezu honek irauten badu edo ezustean agertu bada.",
- "Currently open" : "Irekita une honetan",
- "Login with username or email" : "Hasi saioa erabiltzaile-izen edo e-postarekin",
- "Login with username" : "Hasi saioa erabiltzaile-izenarekin",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Txata, bideo-deiak, pantaila partekatzea, lineako bilerak eta web konferentziak - zure nabigatzailean eta mugikorrerako aplikazioekin.",
"You have not added any info yet" : "Oraindik ez duzu informaziorik gehitu",
"{user} has not added any info yet" : "{user}-(e)k ez du oraindik informaziorik gehitu",
"Error opening the user status modal, try hard refreshing the page" : "Errorea erabiltzailen egoera leihoa irekitzean, saiatu orria guztiz freskatzen",
"Edit Profile" : "Editatu profila",
"The headline and about sections will show up here" : "Izenburua eta 'Niri buruz' atalak hemen agertuko dira",
- "Error loading message template: {error}" : "Errorea mezu txantiloia kargatzean: {error}",
"Very weak password" : "Pasahitz oso ahula",
"Weak password" : "Pasahitz ahula",
"So-so password" : "Hala moduzko pasahitza",
diff --git a/core/l10n/fa.js b/core/l10n/fa.js
index d45d17e386d..508c715b356 100644
--- a/core/l10n/fa.js
+++ b/core/l10n/fa.js
@@ -5,14 +5,14 @@ OC.L10N.register(
"File is too big" : "فایل خیلی بزرگ است",
"The selected file is not an image." : "فایل انتخاب شده عکس نمی باشد.",
"The selected file cannot be read." : "فایل انتخاب شده خوانده نمی شود.",
- "The file was uploaded" : "پرونده، بارگذاری شد",
- "The uploaded file exceeds the upload_max_filesize directive in php.ini" : "حجم پرونده بارگذاری شده بیشتر از تنظیمات upload_max_filesize در پرونده php.ini است",
- "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "حجم پرونده بازگذاری شده بیشتر از تنظیمات MAX_FILE_SIZE مشخص شده در فرم HTML است",
- "The file was only partially uploaded" : "پرونده به صورت ناقص بارگذاری شد",
- "No file was uploaded" : "پرونده‌ای بارگذاری نشد",
- "Missing a temporary folder" : "پوشه موقت موجود نیست",
- "Could not write file to disk" : "ناتوانی در نوشتن پرونده روی حافظه",
- "A PHP extension stopped the file upload" : "یک افزونه پی‌اچ‌پی مانع بارگذاری پرونده شد",
+ "The file was uploaded" : "پرونده، بارگذاری شد.",
+ "The uploaded file exceeds the upload_max_filesize directive in php.ini" : "حجم پرونده بارگذاری شده بیشتر از تنظیمات upload_max_filesize در پرونده php.ini است.",
+ "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "حجم پرونده بارگذاری شده بیشتر از تنظیمات MAX_FILE_SIZE مشخص شده در فرم HTML است.",
+ "The file was only partially uploaded" : "پرونده به صورت ناقص بارگذاری شد.",
+ "No file was uploaded" : "پرونده‌ای بارگذاری نشد.",
+ "Missing a temporary folder" : "پوشه موقت موجود نیست.",
+ "Could not write file to disk" : "ناتوانی در نوشتن پرونده روی حافظه.",
+ "A PHP extension stopped the file upload" : "یک افزونه پی‌اچ‌پی مانع بارگذاری پرونده شد.",
"Invalid file provided" : "فایل داده‌شده نا معتبر است",
"No image or file provided" : "هیچ فایل یا تصویری وارد نشده است",
"Unknown filetype" : "نوع فایل ناشناخته",
@@ -23,61 +23,184 @@ OC.L10N.register(
"No valid crop data provided" : "هیچ داده برش داده شده معتبر ارائه نشده است",
"Crop is not square" : "بخش بریده شده مربع نیست",
"State token does not match" : "State token مطابقت ندارد",
- "Invalid app password" : "کلمه عبور اپلیکیشن اشتباه است",
- "Could not complete login" : "فرایند ورود شما به سیستم کامل نشد",
- "State token missing" : "State token missing",
- "Your login token is invalid or has expired" : "اطلاعات توکن ورود شما اشتباه یا منقضی است",
- "This community release of Nextcloud is unsupported and push notifications are limited." : "This community release of Nextcloud is unsupported and push notifications are limited.",
+ "Invalid app password" : "کلمه عبور اپلیکیشن اشتباه است.",
+ "Could not complete login" : "فرایند ورود شما به سیستم کامل نشد.",
+ "State token missing" : "توکن حالت گم شده است.",
+ "Your login token is invalid or has expired" : "اطلاعات توکن ورود شما اشتباه یا منقضی است.",
+ "Please use original client" : "لطفا از کلاینت اصلی استفاده کنید.",
+ "This community release of Nextcloud is unsupported and push notifications are limited." : "این نسخه انجمنی Nextcloud پشتیبانی نمی‌شود و اعلان‌های فشاری محدود هستند.",
"Login" : "ورود",
+ "Unsupported email length (>255)" : "طول ایمیل پشتیبانی نمی‌شود (>255).",
"Password reset is disabled" : "تنظیم مجدد رمز عبور فعال نیست",
- "Could not reset password because the token is expired" : "رمز عبور بازنشانی نشد زیرا رمز منقضی شده است",
- "Could not reset password because the token is invalid" : "رمز عبور بازنشانی نشد زیرا رمز نامعتبر است",
+ "Could not reset password because the token is expired" : "رمز عبور بازنشانی نشد زیرا رمز منقضی شده است.",
+ "Could not reset password because the token is invalid" : "رمز عبور بازنشانی نشد زیرا رمز نامعتبر است.",
"Password is too long. Maximum allowed length is 469 characters." : "رمز عبور خیلی طولانی است. حداکثر طول مجاز 469 کاراکتر است.",
"%s password reset" : "%s رمزعبور تغییر کرد",
"Password reset" : "تنظیم مجدد رمز عبور",
"Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "برای بازنشانی رمز عبور خود، روی دکمه زیر کلیک کنید. اگر شما تنظیم مجدد رمز عبور را درخواست نکردید، این ایمیل را نادیده بگیرید.",
"Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "برای بازنشانی رمز عبور خود، روی لینک زیر کلیک کنید. اگر شما تنظیم مجدد رمز عبور را درخواست نکردید، این ایمیل را نادیده بگیرید.",
"Reset your password" : "تنظیم مجدد رمز عبور",
- "Task not found" : "Task not found",
- "Internal error" : "Internal error",
- "Not found" : "پیدا نشد",
- "Requested task type does not exist" : "Requested task type does not exist",
- "Necessary language model provider is not available" : "Necessary language model provider is not available",
- "No text to image provider is available" : "نوشتاری برای ارائه‌دهنده تصویر در دسترس نیست",
- "Image not found" : "تصویر یافت نشد",
- "No translation provider available" : "No translation provider available",
- "Could not detect language" : "Could not detect language",
- "Unable to translate" : "Unable to translate",
- "Nextcloud Server" : "کارساز نکست‌کلود",
- "Some of your link shares have been removed" : "برخی از لینک های اشتراک گذاری شده شما حذف شده است",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Due to a security bug we had to remove some of your link shares. Please see the link for more information.",
- "Learn more ↗" : "بیشتر بدانید ↗",
- "Preparing update" : "آماده‌سازی به روز‌ رسانی",
+ "The given provider is not available" : "ارائه‌دهنده مشخص‌شده در دسترس نیست.",
+ "Task not found" : "وظیفه یافت نشد.",
+ "Internal error" : "خطای داخلی.",
+ "Not found" : "پیدا نشد.",
+ "Bad request" : "درخواست نامعتبر.",
+ "Requested task type does not exist" : "نوع وظیفه درخواست شده موجود نیست.",
+ "Necessary language model provider is not available" : "ارائه‌دهنده مدل زبان لازم در دسترس نیست.",
+ "No text to image provider is available" : "نوشتاری برای ارائه‌دهنده تصویر در دسترس نیست.",
+ "Image not found" : "تصویر یافت نشد.",
+ "No translation provider available" : "هیچ ارائه‌دهنده ترجمه در دسترس نیست.",
+ "Could not detect language" : "امکان تشخیص زبان وجود ندارد.",
+ "Unable to translate" : "ناتوان در ترجمه.",
"[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Repair step:",
- "Repair info:" : "Repair info:",
- "Repair warning:" : "Repair warning:",
- "Repair error:" : "Repair error:",
- "Please use the command line updater because updating via browser is disabled in your config.php." : "Please use the command line updater because updating via browser is disabled in your config.php.",
+ "Repair step:" : "مرحله تعمیر:",
+ "Repair info:" : "اطلاعات تعمیر:",
+ "Repair warning:" : "هشدار تعمیر:",
+ "Repair error:" : "خطای تعمیر:",
+ "Nextcloud Server" : "کارساز نکست‌کلود.",
+ "Some of your link shares have been removed" : "برخی از لینک های اشتراک گذاری شده شما حذف شده است.",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "به دلیل یک اشکال امنیتی، مجبور شدیم برخی از اشتراک‌گذاری‌های لینک شما را حذف کنیم. برای اطلاعات بیشتر لطفاً لینک را ببینید.",
+ "The account limit of this instance is reached." : "محدودیت حساب این نمونه به پایان رسیده است.",
+ "Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "کلید اشتراک خود را در برنامه پشتیبانی وارد کنید تا محدودیت حساب افزایش یابد. این کار همچنین تمام مزایای اضافی را که Nextcloud Enterprise ارائه می‌دهد به شما اعطا می‌کند و برای عملیات در شرکت‌ها بسیار توصیه می‌شود.",
+ "Learn more ↗" : "بیشتر بدانید ↗.",
+ "Preparing update" : "آماده‌سازی به روز‌ رسانی",
+ "Please use the command line updater because updating via browser is disabled in your config.php." : "لطفاً از به‌روزرسان خط فرمان استفاده کنید زیرا به‌روزرسانی از طریق مرورگر در فایل config.php شما غیرفعال شده است.",
"Turned on maintenance mode" : "حالت \" در دست تعمیر \" فعال شد .",
"Turned off maintenance mode" : "حالت \" در دست تعمیر \" غیرفعال شد .",
"Maintenance mode is kept active" : "حالت تعمیرات فعال نگه‌داشته شده است",
"Updating database schema" : "به روز رسانی طرح پایگاه داده",
"Updated database" : "بروز رسانی پایگاه داده انجام شد .",
- "Update app \"%s\" from App Store" : "Update app \"%s\" from App Store",
+ "Update app \"%s\" from App Store" : "بروزرسانی برنامه \"%s\" از App Store.",
"Checking whether the database schema for %s can be updated (this can take a long time depending on the database size)" : "بررسی اینکه آیا طرح پایگاه داده %s می تواند به روز شود (این ممکن است بسته به اندازه پایگاه داده طولانی باشد)",
- "Updated \"%1$s\" to %2$s" : "Updated \"%1$s\" to %2$s",
+ "Updated \"%1$s\" to %2$s" : "بروزرسانی \"%1$s\" به %2$s.",
"Set log level to debug" : "Set log level to debug",
"Reset log level" : "Reset log level",
"Starting code integrity check" : "Starting code integrity check",
"Finished code integrity check" : "Finished code integrity check",
"%s (incompatible)" : "%s (incompatible)",
- "The following apps have been disabled: %s" : "The following apps have been disabled: %s",
+ "The following apps have been disabled: %s" : "برنامه‌های زیر غیرفعال شده‌اند: %s.",
"Already up to date" : "در حال حاضر بروز است",
- "Unknown" : "ناشناخته",
- "PNG image" : "تصویر PNG",
+ "Windows Command Script" : "اسکریپت فرمان ویندوز.",
+ "Electronic book document" : "سند کتاب الکترونیکی.",
+ "TrueType Font Collection" : "مجموعه فونت TrueType.",
+ "Web Open Font Format" : "فرمت فونت باز وب.",
+ "GPX geographic data" : "داده‌های جغرافیایی GPX.",
+ "Gzip archive" : "آرشیو Gzip.",
+ "Adobe Illustrator document" : "سند Adobe Illustrator.",
+ "Java source code" : "کد منبع جاوا.",
+ "JavaScript source code" : "کد منبع جاوا اسکریپت.",
+ "JSON document" : "سند JSON.",
+ "Microsoft Access database" : "پایگاه داده Microsoft Access.",
+ "Microsoft OneNote document" : "سند Microsoft OneNote.",
+ "Microsoft Word document" : "سند Microsoft Word.",
+ "Unknown" : "ناشناخته.",
+ "PDF document" : "سند PDF.",
+ "PostScript document" : "سند PostScript.",
+ "RSS summary" : "خلاصه RSS.",
+ "Android package" : "بسته اندروید.",
+ "KML geographic data" : "داده‌های جغرافیایی KML.",
+ "KML geographic compressed data" : "داده‌های فشرده جغرافیایی KML.",
+ "Lotus Word Pro document" : "سند Lotus Word Pro.",
+ "Excel spreadsheet" : "صفحه گسترده اکسل.",
+ "Excel add-in" : "افزونه اکسل.",
+ "Excel 2007 binary spreadsheet" : "صفحه گسترده باینری Excel 2007.",
+ "Excel spreadsheet template" : "قالب صفحه گسترده اکسل.",
+ "Outlook Message" : "پیام Outlook.",
+ "PowerPoint presentation" : "ارائه پاورپوینت.",
+ "PowerPoint add-in" : "افزونه پاورپوینت.",
+ "PowerPoint presentation template" : "قالب ارائه پاورپوینت.",
+ "Word document" : "سند ورد.",
+ "ODF formula" : "فرمول ODF.",
+ "ODG drawing" : "نقاشی ODG.",
+ "ODG drawing (Flat XML)" : "نقاشی ODG (XML مسطح).",
+ "ODG template" : "قالب ODG.",
+ "ODP presentation" : "ارائه ODP.",
+ "ODP presentation (Flat XML)" : "ارائه ODP (XML مسطح).",
+ "ODP template" : "قالب ODP.",
+ "ODS spreadsheet" : "صفحه گسترده ODS.",
+ "ODS spreadsheet (Flat XML)" : "صفحه گسترده ODS (XML مسطح).",
+ "ODS template" : "قالب ODS.",
+ "ODT document" : "سند ODT.",
+ "ODT document (Flat XML)" : "سند ODT (XML مسطح).",
+ "ODT template" : "قالب ODT.",
+ "PowerPoint 2007 presentation" : "ارائه PowerPoint 2007.",
+ "PowerPoint 2007 show" : "نمایش PowerPoint 2007.",
+ "PowerPoint 2007 presentation template" : "قالب ارائه PowerPoint 2007.",
+ "Excel 2007 spreadsheet" : "صفحه گسترده Excel 2007.",
+ "Excel 2007 spreadsheet template" : "قالب صفحه گسترده Excel 2007.",
+ "Word 2007 document" : "سند Word 2007.",
+ "Word 2007 document template" : "قالب سند Word 2007.",
+ "Microsoft Visio document" : "سند Microsoft Visio.",
+ "WordPerfect document" : "سند WordPerfect.",
+ "7-zip archive" : "آرشیو 7-zip.",
+ "Blender scene" : "صحنه Blender.",
+ "Bzip2 archive" : "آرشیو Bzip2.",
+ "Debian package" : "بسته Debian.",
+ "FictionBook document" : "سند FictionBook.",
+ "Unknown font" : "فونت ناشناخته.",
+ "Krita document" : "سند Krita.",
+ "Mobipocket e-book" : "کتاب الکترونیکی Mobipocket.",
+ "Windows Installer package" : "بسته نصب کننده ویندوز.",
+ "Perl script" : "اسکریپت Perl.",
+ "PHP script" : "اسکریپت PHP.",
+ "Tar archive" : "آرشیو Tar.",
+ "XML document" : "سند XML.",
+ "YAML document" : "سند YAML.",
+ "Zip archive" : "آرشیو Zip.",
+ "Zstandard archive" : "آرشیو Zstandard.",
+ "AAC audio" : "صوت AAC.",
+ "FLAC audio" : "صوت FLAC.",
+ "MPEG-4 audio" : "صوت MPEG-4.",
+ "MP3 audio" : "صوت MP3.",
+ "Ogg audio" : "صوت Ogg.",
+ "RIFF/WAVe standard Audio" : "صوت استاندارد RIFF/WAVe.",
+ "WebM audio" : "صوت WebM.",
+ "MP3 ShoutCast playlist" : "لیست پخش MP3 ShoutCast.",
+ "Windows BMP image" : "تصویر Windows BMP.",
+ "Better Portable Graphics image" : "تصویر گرافیکی قابل حمل بهتر.",
+ "EMF image" : "تصویر EMF.",
+ "GIF image" : "تصویر GIF.",
+ "HEIC image" : "تصویر HEIC.",
+ "HEIF image" : "تصویر HEIF.",
+ "JPEG-2000 JP2 image" : "تصویر JPEG-2000 JP2.",
+ "JPEG image" : "تصویر JPEG.",
+ "PNG image" : "تصویر PNG.",
+ "SVG image" : "تصویر SVG.",
+ "Truevision Targa image" : "تصویر Truevision Targa.",
+ "TIFF image" : "تصویر TIFF.",
+ "WebP image" : "تصویر WebP.",
+ "Digital raw image" : "تصویر خام دیجیتال.",
+ "Windows Icon" : "آیکون ویندوز.",
+ "Email message" : "پیام ایمیل.",
+ "VCS/ICS calendar" : "تقویم VCS/ICS.",
+ "CSS stylesheet" : "شیوه نامه CSS.",
+ "CSV document" : "سند CSV.",
+ "HTML document" : "سند HTML.",
+ "Markdown document" : "سند Markdown.",
+ "Org-mode file" : "فایل Org-mode.",
+ "Plain text document" : "سند متن ساده.",
+ "Rich Text document" : "سند Rich Text.",
+ "Electronic business card" : "کارت ویزیت الکترونیکی.",
+ "C++ source code" : "کد منبع C++.",
+ "LDIF address book" : "دفترچه آدرس LDIF.",
+ "NFO document" : "سند NFO.",
+ "PHP source" : "منبع PHP.",
+ "Python script" : "اسکریپت پایتون.",
+ "ReStructuredText document" : "سند ReStructuredText.",
+ "3GPP multimedia file" : "فایل چندرسانه‌ای 3GPP.",
+ "MPEG video" : "ویدیوی MPEG.",
+ "DV video" : "ویدیوی DV.",
+ "MPEG-2 transport stream" : "جریان حمل و نقل MPEG-2.",
+ "MPEG-4 video" : "ویدیوی MPEG-4.",
+ "Ogg video" : "ویدیوی Ogg.",
+ "QuickTime video" : "ویدیوی QuickTime.",
+ "WebM video" : "ویدیوی WebM.",
+ "Flash video" : "ویدیوی Flash.",
+ "Matroska video" : "ویدیوی Matroska.",
+ "Windows Media video" : "ویدیوی Windows Media.",
+ "AVI video" : "ویدیوی AVI.",
"Error occurred while checking server setup" : "خطا در هنگام چک کردن راه‌اندازی سرور رخ داده است",
- "For more details see the {linkstart}documentation ↗{linkend}." : "For more details see the {linkstart}documentation ↗{linkend}.",
+ "For more details see the {linkstart}documentation ↗{linkend}." : "برای جزئیات بیشتر به {linkstart}مستندات ↗{linkend} مراجعه کنید.",
"unknown text" : "متن نامعلوم",
"Hello world!" : "سلام دنیا!",
"sunny" : "آفتابی",
@@ -92,124 +215,160 @@ OC.L10N.register(
"Please reload the page." : "لطفا صفحه را دوباره بارگیری کنید.",
"The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "به روزرسانی ناموفق بود. برای اطلاعات بیشتر <a href=\"{url}\">فروم ما را بررسی کنید</a>",
"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "به روزرسانی ناموفق بود. لطفا این مسئله را در <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">جامعه Nextcloud</a> گزارش دهید",
- "Continue to {productName}" : "Continue to {productName}",
- "_The update was successful. Redirecting you to {productName} in %n second._::_The update was successful. Redirecting you to {productName} in %n seconds._" : ["The update was successful. Redirecting you to {productName} in %n second.","The update was successful. Redirecting you to {productName} in %n seconds."],
- "Applications menu" : "منو برنامه‌ها",
+ "Continue to {productName}" : "به {productName} ادامه دهید.",
+ "_The update was successful. Redirecting you to {productName} in %n second._::_The update was successful. Redirecting you to {productName} in %n seconds._" : ["به روزرسانی موفقیت آمیز بود. شما در %n ثانیه به {productName} هدایت می‌شوید.","به روزرسانی موفقیت آمیز بود. شما در %n ثانیه به {productName} هدایت می‌شوید."],
+ "Applications menu" : "منو برنامه‌ها.",
"Apps" : " برنامه ها",
"More apps" : "برنامه های بیشتر",
- "_{count} notification_::_{count} notifications_" : ["{count} notification","{count} notifications"],
+ "_{count} notification_::_{count} notifications_" : ["{count} اعلان.","{count} اعلان."],
"No" : "نه",
"Yes" : "بله",
- "Failed to add the public link to your Nextcloud" : "خطا در افزودن ادرس عمومی به نکس کلود شما",
- "Create share" : "ساختن اشتراک",
- "Custom date range" : "بازه تاریخی سفارشی",
- "Pick start date" : "انتخاب تاریخ شروع",
- "Pick end date" : "انتخاب تاریخ پایان",
- "Search in date range" : "جستجو در بازه تاریخی",
- "Clear search" : "پاک کردن جستجو",
+ "The remote URL must include the user." : "آدرس URL راه دور باید شامل کاربر باشد.",
+ "Invalid remote URL." : "آدرس URL راه دور نامعتبر است.",
+ "Failed to add the public link to your Nextcloud" : "خطا در افزودن آدرس عمومی به نکست‌کلود شما.",
+ "Federated user" : "کاربر فدرال.",
+ "user@your-nextcloud.org" : "user@your-nextcloud.org.",
+ "Create share" : "ساختن اشتراک.",
+ "Direct link copied to clipboard" : "لینک مستقیم در کلیپ‌بورد کپی شد.",
+ "Please copy the link manually:" : "لطفاً لینک را به صورت دستی کپی کنید:",
+ "Custom date range" : "بازه تاریخی سفارشی.",
+ "Pick start date" : "انتخاب تاریخ شروع.",
+ "Pick end date" : "انتخاب تاریخ پایان.",
+ "Search in date range" : "جستجو در بازه تاریخی.",
+ "Search in current app" : "جستجو در برنامه فعلی.",
+ "Clear search" : "پاک کردن جستجو.",
+ "Search everywhere" : "جستجو در هر کجا.",
"Searching …" : "جستجوکردن …",
- "Start typing to search" : "Start typing to search",
- "Today" : "امروز",
- "Last 7 days" : "۷ روز گذشته",
- "Last 30 days" : "۳۰ روز گذشته",
- "This year" : "امسال",
- "Last year" : "پارسال",
- "Unified search" : "جستجوی یکپارچه",
- "Search apps, files, tags, messages" : "جستجوی برنامه‌ها، پرونده‌ها، برچسب‌ها، پیام‌ها",
- "Places" : "مکان ها",
- "Date" : "تاریخ",
- "Search people" : "جستجوی افراد",
- "People" : "مردم",
- "Results" : "نتایج",
- "Load more results" : "بار کردن نتیحه‌های بیش‌تر",
+ "Start typing to search" : "برای جستجو شروع به تایپ کنید.",
+ "No matching results" : "نتیجه مطابق یافت نشد.",
+ "Today" : "امروز.",
+ "Last 7 days" : "۷ روز گذشته.",
+ "Last 30 days" : "۳۰ روز گذشته.",
+ "This year" : "امسال.",
+ "Last year" : "پارسال.",
+ "Unified search" : "جستجوی یکپارچه.",
+ "Search apps, files, tags, messages" : "جستجوی برنامه‌ها، پرونده‌ها، برچسب‌ها، پیام‌ها.",
+ "Places" : "مکان ها.",
+ "Date" : "تاریخ.",
+ "Search people" : "جستجوی افراد.",
+ "People" : "مردم.",
+ "Filter in current view" : "فیلتر در نمای فعلی.",
+ "Results" : "نتایج.",
+ "Load more results" : "بار کردن نتایج بیشتر.",
+ "Search in" : "جستجو در.",
"Log in" : "ورود",
"Logging in …" : "ورود به سیستم ...",
- "Log in to {productName}" : "Log in to {productName}",
+ "Log in to {productName}" : "ورود به {productName}.",
+ "Wrong login or password." : "نام کاربری یا رمز عبور اشتباه است.",
+ "This account is disabled" : "این حساب کاربری غیرفعال است.",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "از این آی پی چندین بار تلاش ناموفق برای ورود انجام شده است فلذا برای ورود مجدد حداقل ۳۰ ثانیه باید صبر کنید.",
- "Account name or email" : "نام کاربری یا آدرس ایمیل",
- "Account name" : "Account name",
+ "Account name or email" : "نام کاربری یا آدرس ایمیل.",
+ "Account name" : "نام حساب.",
"Server side authentication failed!" : "تأیید هویت از سوی سرور انجام نشد!",
"Please contact your administrator." : "لطفا با مدیر وب‌سایت تماس بگیرید.",
+ "Session error" : "خطای جلسه.",
+ "It appears your session token has expired, please refresh the page and try again." : "به نظر می‌رسد توکن جلسه شما منقضی شده است، لطفاً صفحه را بازخوانی کرده و دوباره امتحان کنید.",
"An internal error occurred." : "یک اشتباه داخلی رخ داد.",
"Please try again or contact your administrator." : "لطفا مجددا تلاش کنید یا با مدیر سیستم تماس بگیرید.",
"Password" : "گذرواژه",
- "Log in with a device" : "Log in with a device",
- "Your account is not setup for passwordless login." : "Your account is not setup for passwordless login.",
- "Your connection is not secure" : "Your connection is not secure",
- "Passwordless authentication is only available over a secure connection." : "Passwordless authentication is only available over a secure connection.",
- "Browser not supported" : "Browser not supported",
- "Passwordless authentication is not supported in your browser." : "Passwordless authentication is not supported in your browser.",
+ "Log in with a device" : "ورود با یک دستگاه.",
+ "Login or email" : "نام کاربری یا ایمیل.",
+ "Your account is not setup for passwordless login." : "حساب شما برای ورود بدون رمز عبور تنظیم نشده است.",
+ "Your connection is not secure" : "اتصال شما امن نیست.",
+ "Passwordless authentication is only available over a secure connection." : "احراز هویت بدون رمز عبور فقط از طریق اتصال امن در دسترس است.",
+ "Browser not supported" : "مرورگر پشتیبانی نمی‌شود.",
+ "Passwordless authentication is not supported in your browser." : "احراز هویت بدون رمز عبور در مرورگر شما پشتیبانی نمی‌شود.",
"Reset password" : "تنظیم مجدد رمز عبور",
- "Back to login" : "Back to login",
+ "Back to login" : "بازگشت به ورود.",
+ "If this account exists, a password reset message has been sent to its email address. If you do not receive it, verify your email address and/or Login, check your spam/junk folders or ask your local administration for help." : "اگر این حساب کاربری وجود داشته باشد، پیامی برای بازنشانی رمز عبور به آدرس ایمیل آن ارسال شده است. اگر آن را دریافت نکردید، آدرس ایمیل و/یا نام کاربری خود را بررسی کنید، پوشه‌های اسپم/جفیت خود را بررسی کنید یا از مدیر محلی خود کمک بخواهید.",
"Couldn't send reset email. Please contact your administrator." : "ارسال ایمیل مجدد با مشکل مواجه شد . لطفا با مدیر سیستم تماس بگیرید .",
- "Password cannot be changed. Please contact your administrator." : "Password cannot be changed. Please contact your administrator.",
+ "Password cannot be changed. Please contact your administrator." : "رمز عبور قابل تغییر نیست. لطفاً با مدیر سیستم تماس بگیرید.",
"New password" : "گذرواژه جدید",
- "Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?",
+ "Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "فایل‌های شما رمزگذاری شده‌اند. پس از بازنشانی رمز عبور شما، هیچ راهی برای بازیابی اطلاعات شما وجود نخواهد داشت. اگر مطمئن نیستید که چه کاری باید انجام دهید، لطفاً قبل از ادامه با مدیر خود تماس بگیرید. آیا واقعاً می‌خواهید ادامه دهید؟",
"I know what I'm doing" : "اطلاع از انجام این کار دارم",
- "Resetting password" : "در حال ریست کردن کلمه عبور...",
- "Schedule work & meetings, synced with all your devices." : "زمان‌بندی کار و جلسات، همگام‌سازی‌شده با تمام دستگاه‌های شما",
+ "Resetting password" : "در حال ریست کردن کلمه عبور... .",
+ "Schedule work & meetings, synced with all your devices." : "زمان‌بندی کار و جلسات، همگام‌سازی‌شده با تمام دستگاه‌های شما.",
"Keep your colleagues and friends in one place without leaking their private info." : "همکاران و دوستان خود را در یک مکان نگه دارید بدون اینکه اطلاعات خصوصی آنها را بشناسید.",
- "Simple email app nicely integrated with Files, Contacts and Calendar." : "برنامه ایمیل ساده با پرونده ها ، مخاطبین و تقویم یکپارچه شده است.",
- "Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Collaborative documents, spreadsheets and presentations, built on Collabora Online.",
- "Distraction free note taking app." : "Distraction free note taking app.",
- "Recommended apps" : "Recommended apps",
- "Loading apps …" : "Loading apps …",
- "Could not fetch list of apps from the App Store." : "Could not fetch list of apps from the App Store.",
- "App download or installation failed" : "App download or installation failed",
- "Cannot install this app because it is not compatible" : "Cannot install this app because it is not compatible",
- "Cannot install this app" : "Cannot install this app",
- "Skip" : "پرش",
- "Installing apps …" : "در حال نصب برنامه",
- "Install recommended apps" : "نصب کاره‌های پیشنهادی",
- "Avatar of {displayName}" : "نمایه {displayName}",
- "Settings menu" : "فهرست تنظیمات",
+ "Simple email app nicely integrated with Files, Contacts and Calendar." : "برنامه ایمیل ساده با پرونده ها، مخاطبین و تقویم یکپارچه شده است.",
+ "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "گفتگو، تماس‌های ویدیویی، اشتراک‌گذاری صفحه، جلسات آنلاین و وب‌کنفرانس – در مرورگر شما و با برنامه‌های موبایل.",
+ "Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "اسناد، صفحات گسترده و ارائه‌های مشترک، بر اساس Collabora Online ساخته شده‌اند.",
+ "Distraction free note taking app." : "برنامه یادداشت‌برداری بدون حواس‌پرتی.",
+ "Recommended apps" : "برنامه‌های پیشنهادی.",
+ "Loading apps …" : "در حال بارگذاری برنامه ها... .",
+ "Could not fetch list of apps from the App Store." : "امکان دریافت لیست برنامه ها از App Store وجود نداشت.",
+ "App download or installation failed" : "دانلود یا نصب برنامه ناموفق بود.",
+ "Cannot install this app because it is not compatible" : "نمی توان این برنامه را نصب کرد زیرا سازگار نیست.",
+ "Cannot install this app" : "نمی توان این برنامه را نصب کرد.",
+ "Skip" : "پرش.",
+ "Installing apps …" : "در حال نصب برنامه.",
+ "Install recommended apps" : "نصب کاره‌های پیشنهادی.",
+ "Avatar of {displayName}" : "نمایه {displayName}.",
+ "Settings menu" : "فهرست تنظیمات.",
"Loading your contacts …" : "بارگیری مخاطبین شما ...",
"Looking for {term} …" : "به دنبال {term} …",
- "Search contacts" : "Search contacts",
- "Reset search" : "Reset search",
+ "Search contacts" : "جستجوی مخاطبین.",
+ "Reset search" : "بازنشانی جستجو.",
"Search contacts …" : "جستجو مخاطبین ...",
- "Could not load your contacts" : "Could not load your contacts",
+ "Could not load your contacts" : "امکان بارگذاری مخاطبین شما وجود نداشت.",
"No contacts found" : "مخاطبین یافت نشد",
- "Show all contacts" : "نمایش تمام مخاطبین",
- "Install the Contacts app" : "Install the Contacts app",
+ "Show all contacts" : "نمایش تمام مخاطبین.",
+ "Install the Contacts app" : "برنامه مخاطبین را نصب کنید.",
"Search" : "جست‌و‌جو",
- "No results for {query}" : "No results for {query}",
- "Press Enter to start searching" : "Press Enter to start searching",
- "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Please enter {minSearchLength} character or more to search","Please enter {minSearchLength} characters or more to search"],
- "An error occurred while searching for {type}" : "An error occurred while searching for {type}",
- "Search starts once you start typing and results may be reached with the arrow keys" : "Search starts once you start typing and results may be reached with the arrow keys",
- "Search for {name} only" : "Search for {name} only",
- "Loading more results …" : "Loading more results …",
+ "No results for {query}" : "هیچ نتیجه‌ای برای {query} یافت نشد.",
+ "Press Enter to start searching" : "برای شروع جستجو Enter را فشار دهید.",
+ "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["لطفا برای جستجو حداقل %n کاراکتر یا بیشتر وارد کنید.","لطفا برای جستجو حداقل %n کاراکتر یا بیشتر وارد کنید."],
+ "An error occurred while searching for {type}" : "خطایی در هنگام جستجو برای {type} رخ داد.",
+ "Search starts once you start typing and results may be reached with the arrow keys" : "جستجو با شروع تایپ آغاز می‌شود و نتایج را می‌توان با کلیدهای جهت‌نما مشاهده کرد.",
+ "Search for {name} only" : "فقط {name} را جستجو کنید.",
+ "Loading more results …" : "در حال بارگذاری نتایج بیشتر ... .",
"Forgot password?" : "رمز فراموش شده؟",
- "Back to login form" : "Back to login form",
- "Back" : "بازگشت",
- "Login form is disabled." : "Login form is disabled.",
- "More actions" : "اقدامات بیشتر",
+ "Back to login form" : "بازگشت به فرم ورود.",
+ "Back" : "بازگشت.",
+ "Login form is disabled." : "فرم ورود غیرفعال است.",
+ "The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "فرم ورود Nextcloud غیرفعال است. در صورت امکان از گزینه ورود دیگری استفاده کنید یا با مدیریت خود تماس بگیرید.",
+ "More actions" : "اقدامات بیشتر.",
+ "Password is too weak" : "رمز عبور بسیار ضعیف است.",
+ "Password is weak" : "رمز عبور ضعیف است.",
+ "Password is average" : "رمز عبور متوسط است.",
+ "Password is strong" : "رمز عبور قوی است.",
+ "Password is very strong" : "رمز عبور بسیار قوی است.",
+ "Password is extremely strong" : "رمز عبور فوق‌العاده قوی است.",
+ "Unknown password strength" : "قدرت رمز عبور ناشناخته.",
+ "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "پوشه داده و فایل‌های شما احتمالاً از اینترنت قابل دسترسی هستند زیرا فایل <code>.htaccess</code> کار نمی‌کند.",
+ "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "برای اطلاعات بیشتر در مورد نحوه پیکربندی صحیح سرور خود، لطفاً {linkStart}مستندات را ببینید{linkEnd}.",
+ "Autoconfig file detected" : "فایل تنظیم خودکار شناسایی شد.",
+ "The setup form below is pre-filled with the values from the config file." : "فرم تنظیمات زیر با مقادیر موجود در فایل پیکربندی از قبل پر شده است.",
"Security warning" : "اخطار امنیتی",
+ "Create administration account" : "ایجاد حساب کاربری مدیریت.",
+ "Administration account name" : "نام حساب کاربری مدیریت.",
+ "Administration account password" : "رمز عبور حساب کاربری مدیریت.",
"Storage & database" : "انبارش و پایگاه داده",
"Data folder" : "پوشه اطلاعاتی",
+ "Database configuration" : "پیکربندی پایگاه داده.",
+ "Only {firstAndOnlyDatabase} is available." : "تنها {firstAndOnlyDatabase} در دسترس است.",
"Install and activate additional PHP modules to choose other database types." : "جهت انتخاب انواع دیگر پایگاه‌داده‌،ماژول‌های اضافی PHP را نصب و فعال‌سازی کنید.",
"For more details check out the documentation." : "برای جزئیات بیشتر به مستندات مراجعه کنید.",
"Performance warning" : "اخطار کارایی",
"You chose SQLite as database." : "شما SQLite را به عنوان پایگاه داده انتخاب کردید.",
- "SQLite should only be used for minimal and development instances. For production we recommend a different database backend." : "SQLite should only be used for minimal and development instances. For production we recommend a different database backend.",
- "If you use clients for file syncing, the use of SQLite is highly discouraged." : "If you use clients for file syncing, the use of SQLite is highly discouraged.",
- "Database user" : "شناسه پایگاه داده",
+ "SQLite should only be used for minimal and development instances. For production we recommend a different database backend." : "SQLite فقط باید برای نمونه‌های حداقل و توسعه استفاده شود. برای تولید، یک پایگاه داده پشتیبانی دیگر توصیه می‌کنیم.",
+ "If you use clients for file syncing, the use of SQLite is highly discouraged." : "اگر از کلاینت‌ها برای همگام‌سازی فایل استفاده می‌کنید، استفاده از SQLite بسیار توصیه نمی‌شود.",
+ "Database user" : "شناسه پایگاه داده.",
"Database password" : "پسورد پایگاه داده",
"Database name" : "نام پایگاه داده",
"Database tablespace" : "جدول پایگاه داده",
"Please specify the port number along with the host name (e.g., localhost:5432)." : "Please specify the port number along with the host name (e.g., localhost:5432).",
"Database host" : "هاست پایگاه داده",
- "Installing …" : "Installing …",
+ "localhost" : "لوکال‌هاست",
+ "Installing …" : "درحال نصب...",
"Install" : "نصب",
"Need help?" : "کمک لازم دارید ؟",
"See the documentation" : "مشاهده‌ی مستندات",
- "{name} version {version} and above" : "{name} version {version} and above",
- "This browser is not supported" : "This browser is not supported",
- "Your browser is not supported. Please upgrade to a newer version or a supported one." : "Your browser is not supported. Please upgrade to a newer version or a supported one.",
- "Continue with this unsupported browser" : "Continue with this unsupported browser",
- "Supported versions" : "Supported versions",
- "Search {types} …" : "Search {types} …",
+ "{name} version {version} and above" : "{name} نسخه {version} و بالاتر",
+ "This browser is not supported" : "این مرورگر پشتیبانی نمی‌شود",
+ "Your browser is not supported. Please upgrade to a newer version or a supported one." : "مرورگر شما پشتیبانی نمی‌شود. لطفاً به نسخه جدیدتر یا نسخه پشتیبانی‌شده ارتقا دهید.",
+ "Continue with this unsupported browser" : "با این مرورگر پشتیبانی‌نشده ادامه دهید",
+ "Supported versions" : "نسخه‌های پشتیبانی شده",
+ "Search {types} …" : "جستجوی {types}...",
"Choose {file}" : "انتخاب {file}",
"Choose" : "انتخاب کردن",
"Copy to {target}" : "رونوشت به {target}",
@@ -233,42 +392,45 @@ OC.L10N.register(
"seconds ago" : "ثانیه‌ها پیش",
"Connection to server lost" : "اتصال به سرور از دست رفته است",
"_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["%nمشکل بارگذاری صفحه، بارگیری مجدد در ثانیه","%nمشکل بارگذاری صفحه، بارگیری مجدد در ثانیه"],
- "Add to a project" : "Add to a project",
- "Show details" : "Show details",
+ "Add to a project" : "افزودن به یک پروژه",
+ "Show details" : "نمایش جزئیات",
"Hide details" : "مخفی کردن جزئیات",
- "Rename project" : "Rename project",
- "Failed to rename the project" : "Failed to rename the project",
- "Failed to create a project" : "Failed to create a project",
- "Failed to add the item to the project" : "Failed to add the item to the project",
- "Connect items to a project to make them easier to find" : "Connect items to a project to make them easier to find",
- "Type to search for existing projects" : "Type to search for existing projects",
+ "Rename project" : "تغییر نام پروژه",
+ "Failed to rename the project" : "تغییر نام پروژه ناموفق بود",
+ "Failed to create a project" : "ایجاد پروژه ناموفق بود",
+ "Failed to add the item to the project" : "افزودن مورد به پروژه ناموفق بود",
+ "Connect items to a project to make them easier to find" : "موارد را به یک پروژه متصل کنید تا یافتن آنها آسان‌تر شود",
+ "Type to search for existing projects" : "برای جستجوی پروژه‌های موجود تایپ کنید",
"New in" : "جدید در",
"View changelog" : "مشاهده تغییرات",
"No action available" : "هیچ عملی قابل انجام نیست",
"Error fetching contact actions" : "خطا در دریافت فعالیتهای تماس",
- "Close \"{dialogTitle}\" dialog" : "Close \"{dialogTitle}\" dialog",
+ "Close \"{dialogTitle}\" dialog" : "بستن گفتگوی «{dialogTitle}»",
+ "Email length is at max (255)" : "طول ایمیل حداکثر (۲۵۵) است",
"Non-existing tag #{tag}" : "برچسب غیر موجود #{tag}",
- "Restricted" : "Restricted",
+ "Restricted" : "محدود شده",
"Invisible" : "غیر قابل مشاهده",
"Delete" : "حذف",
"Rename" : "تغییرنام",
"Collaborative tags" : "برچسب های همکاری",
"No tags found" : "هیچ برچسبی یافت نشد",
+ "Clipboard not available, please copy manually" : "کلیپ بورد در دسترس نیست، لطفا به صورت دستی کپی کنید",
"Personal" : "شخصی",
"Accounts" : "حساب‌ها",
"Admin" : "مدیر",
"Help" : "راه‌نما",
"Access forbidden" : "اجازه دسترسی به مناطق ممنوعه را ندارید",
+ "Back to %s" : "بازگشت به %s",
"Page not found" : "صفحه یافت نشد",
- "The page could not be found on the server or you may not be allowed to view it." : "The page could not be found on the server or you may not be allowed to view it.",
- "Back to %s" : "Back to %s",
- "Too many requests" : "Too many requests",
- "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "There were too many requests from your network. Retry later or contact your administrator if this is an error.",
+ "The page could not be found on the server or you may not be allowed to view it." : "صفحه در سرور یافت نشد یا ممکن است شما اجازه مشاهده آن را نداشته باشید.",
+ "Too many requests" : "درخواست‌های زیاد",
+ "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "درخواست‌های زیادی از شبکه شما وجود داشت. بعداً دوباره امتحان کنید یا در صورت بروز خطا با مدیر خود تماس بگیرید.",
"Error" : "خطا",
"Internal Server Error" : "خطای داخلی سرور",
"The server was unable to complete your request." : "سرور قادر به تکمیل درخواست شما نبود.",
"If this happens again, please send the technical details below to the server administrator." : "اگر این اتفاق دوباره افتاد، لطفا جزئیات فنی زیر را به مدیر سرور ارسال کنید.",
"More details can be found in the server log." : "جزئیات بیشتر در لاگ سرور قابل مشاهده خواهد بود.",
+ "For more details see the documentation ↗." : "برای جزئیات بیشتر به مستندات ↗ مراجعه کنید.",
"Technical details" : "جزئیات فنی",
"Remote Address: %s" : "آدرس راه‌دور: %s",
"Request ID: %s" : "ID درخواست: %s",
@@ -278,68 +440,69 @@ OC.L10N.register(
"File: %s" : "فایل : %s",
"Line: %s" : "خط: %s",
"Trace" : "ردیابی",
- "It looks like you are trying to reinstall your Nextcloud. However the file CAN_INSTALL is missing from your config directory. Please create the file CAN_INSTALL in your config folder to continue." : "It looks like you are trying to reinstall your Nextcloud. However the file CAN_INSTALL is missing from your config directory. Please create the file CAN_INSTALL in your config folder to continue.",
- "Could not remove CAN_INSTALL from the config folder. Please remove this file manually." : "Could not remove CAN_INSTALL from the config folder. Please remove this file manually.",
- "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page.",
- "Skip to main content" : "Skip to main content",
- "Skip to navigation of app" : "Skip to navigation of app",
+ "It looks like you are trying to reinstall your Nextcloud. However the file CAN_INSTALL is missing from your config directory. Please create the file CAN_INSTALL in your config folder to continue." : "به نظر می رسد شما در حال تلاش برای نصب مجدد Nextcloud خود هستید. با این حال فایل CAN_INSTALL از دایرکتوری تنظیمات شما گم شده است. لطفاً فایل CAN_INSTALL را در پوشه تنظیمات خود ایجاد کنید تا ادامه دهید.",
+ "Could not remove CAN_INSTALL from the config folder. Please remove this file manually." : "فایل CAN_INSTALL از پوشه تنظیمات قابل حذف نیست. لطفاً این فایل را به صورت دستی حذف کنید.",
+ "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "این برنامه برای عملکرد صحیح به جاوا اسکریپت نیاز دارد. لطفاً {linkstart}جاوا اسکریپت را فعال کنید{linkend} و صفحه را بارگذاری مجدد کنید.",
+ "Skip to main content" : "پرش به محتوای اصلی",
+ "Skip to navigation of app" : "پرش به ناوبری برنامه",
"Go to %s" : "برو به %s",
- "Get your own free account" : "Get your own free account",
- "Connect to your account" : "Connect to your account",
- "Please log in before granting %1$s access to your %2$s account." : "Please log in before granting %1$s access to your %2$s account.",
- "If you are not trying to set up a new device or app, someone is trying to trick you into granting them access to your data. In this case do not proceed and instead contact your system administrator." : "If you are not trying to set up a new device or app, someone is trying to trick you into granting them access to your data. In this case do not proceed and instead contact your system administrator.",
+ "Get your own free account" : "حساب کاربری رایگان خود را دریافت کنید",
+ "Connect to your account" : "به حساب کاربری خود متصل شوید",
+ "Please log in before granting %1$s access to your %2$s account." : "لطفاً قبل از اعطای دسترسی %1$s به حساب %2$s خود وارد شوید.",
+ "If you are not trying to set up a new device or app, someone is trying to trick you into granting them access to your data. In this case do not proceed and instead contact your system administrator." : "اگر قصد راه‌اندازی دستگاه یا برنامه جدیدی را ندارید، شخصی در تلاش است تا شما را فریب دهد تا به داده‌هایتان دسترسی پیدا کند. در این صورت ادامه ندهید و به جای آن با مدیر سیستم خود تماس بگیرید.",
+ "App password" : "گذرواژه برنامه",
"Grant access" : " مجوز اعطا دسترسی",
+ "Alternative log in using app password" : "ورود جایگزین با استفاده از گذرواژه برنامه",
"Account access" : "دسترسی به حساب",
- "Currently logged in as %1$s (%2$s)." : "Currently logged in as %1$s (%2$s).",
- "You are about to grant %1$s access to your %2$s account." : "You are about to grant %1$s access to your %2$s account.",
- "Account connected" : "Account connected",
- "Your client should now be connected!" : "Your client should now be connected!",
- "You can close this window." : "You can close this window.",
+ "Currently logged in as %1$s (%2$s)." : "در حال حاضر به عنوان %1$s (%2$s) وارد شده‌اید.",
+ "You are about to grant %1$s access to your %2$s account." : "شما در حال اعطای دسترسی %1$s به حساب %2$s خود هستید.",
+ "Account connected" : "حساب کاربری متصل شد",
+ "Your client should now be connected!" : "اکنون مشتری شما باید متصل شده باشد!",
+ "You can close this window." : "می‌توانید این پنجره را ببندید.",
"Previous" : "قبلی",
"This share is password-protected" : "این اشتراک توسط رمز عبور محافظت می شود",
- "The password is wrong or expired. Please try again or request a new one." : "The password is wrong or expired. Please try again or request a new one.",
- "Please type in your email address to request a temporary password" : "Please type in your email address to request a temporary password",
+ "The password is wrong or expired. Please try again or request a new one." : "رمز عبور اشتباه است یا منقضی شده است. لطفا دوباره تلاش کنید یا رمز عبور جدیدی درخواست دهید.",
+ "Please type in your email address to request a temporary password" : "لطفاً آدرس ایمیل خود را برای درخواست گذرواژه موقت وارد کنید",
"Email address" : "آدرس ایمیل",
- "Password sent!" : "Password sent!",
- "You are not authorized to request a password for this share" : "You are not authorized to request a password for this share",
- "Two-factor authentication" : "Two-factor authentication",
- "Enhanced security is enabled for your account. Choose a second factor for authentication:" : "Enhanced security is enabled for your account. Choose a second factor for authentication:",
- "Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Could not load at least one of your enabled two-factor auth methods. Please contact your admin.",
- "Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance." : "Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance.",
- "Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication." : "Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication.",
- "Set up two-factor authentication" : "Set up two-factor authentication",
- "Two-factor authentication is enforced but has not been configured on your account. Use one of your backup codes to log in or contact your admin for assistance." : "Two-factor authentication is enforced but has not been configured on your account. Use one of your backup codes to log in or contact your admin for assistance.",
+ "Password sent!" : "گذرواژه ارسال شد!",
+ "You are not authorized to request a password for this share" : "شما مجاز به درخواست گذرواژه برای این اشتراک نیستید",
+ "Two-factor authentication" : "احراز هویت دو مرحله‌ای",
+ "Enhanced security is enabled for your account. Choose a second factor for authentication:" : "امنیت پیشرفته برای حساب شما فعال شده است. عامل دوم را برای احراز هویت انتخاب کنید:",
+ "Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "حداقل یکی از روش‌های احراز هویت دو عاملی فعال شما بارگذاری نشد. لطفاً با مدیر خود تماس بگیرید.",
+ "Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance." : "احراز هویت دو مرحله‌ای اجباری است اما در حساب شما پیکربندی نشده است. برای راهنمایی با مدیر خود تماس بگیرید.",
+ "Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication." : "احراز هویت دو مرحله‌ای اجباری است اما در حساب شما پیکربندی نشده است. لطفاً به راه‌اندازی احراز هویت دو مرحله‌ای ادامه دهید.",
+ "Set up two-factor authentication" : "تنظیم احراز هویت دو مرحله‌ای",
+ "Two-factor authentication is enforced but has not been configured on your account. Use one of your backup codes to log in or contact your admin for assistance." : "احراز هویت دو مرحله‌ای اجباری است اما در حساب شما پیکربندی نشده است. برای ورود از یکی از کدهای پشتیبان خود استفاده کنید یا برای راهنمایی با مدیر خود تماس بگیرید.",
"Use backup code" : "از کد پشتیبان استفاده شود",
- "Cancel login" : "Cancel login",
- "Enhanced security is enforced for your account. Choose which provider to set up:" : "Enhanced security is enforced for your account. Choose which provider to set up:",
- "Error while validating your second factor" : "Error while validating your second factor",
- "Access through untrusted domain" : "Access through untrusted domain",
- "Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php." : "Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php.",
- "Further information how to configure this can be found in the %1$sdocumentation%2$s." : "Further information how to configure this can be found in the %1$sdocumentation%2$s.",
+ "Cancel login" : "لغو ورود",
+ "Enhanced security is enforced for your account. Choose which provider to set up:" : "امنیت پیشرفته برای حساب شما اجباری است. ارائه‌دهنده را برای راه‌اندازی انتخاب کنید:",
+ "Error while validating your second factor" : "خطا در اعتبار سنجی عامل دوم شما",
+ "Access through untrusted domain" : "دسترسی از طریق دامنه نامعتبر",
+ "Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php." : "لطفاً با مدیر خود تماس بگیرید. اگر شما مدیر هستید، تنظیمات \"trusted_domains\" را در config/config.php مانند مثال در config.sample.php ویرایش کنید.",
+ "Further information how to configure this can be found in the %1$sdocumentation%2$s." : "اطلاعات بیشتر در مورد نحوه پیکربندی این مورد را می توانید در %1$sمستندات%2$s بیابید.",
"App update required" : "نیاز به بروزرسانی برنامه وجود دارد",
- "%1$s will be updated to version %2$s" : "%1$s will be updated to version %2$s",
- "The following apps will be updated:" : "The following apps will be updated:",
+ "%1$s will be updated to version %2$s" : "%1$s به نسخه %2$s بروزرسانی خواهد شد",
+ "The following apps will be updated:" : "برنامه‌های زیر بروزرسانی خواهند شد:",
"These incompatible apps will be disabled:" : "این برنامه‌های ناسازگار غیر فعال می‌شوند:",
"The theme %s has been disabled." : "قالب %s غیر فعال شد.",
- "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Please make sure that the database, the config folder and the data folder have been backed up before proceeding.",
+ "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "لطفاً قبل از ادامه کار از پایگاه داده، پوشه پیکربندی و پوشه داده‌ها نسخه پشتیبان تهیه کنید.",
"Start update" : "اغاز به روز رسانی",
"To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "برای جلوگیری از وقفه در نصب های طولانی تر، شما می توانید دستورات زیر را از مسیر نصبتان اجرا کنید:",
"Detailed logs" : "Detailed logs",
"Update needed" : "نیاز به روز رسانی دارد",
- "I know that if I continue doing the update via web UI has the risk, that the request runs into a timeout and could cause data loss, but I have a backup and know how to restore my instance in case of a failure." : "I know that if I continue doing the update via web UI has the risk, that the request runs into a timeout and could cause data loss, but I have a backup and know how to restore my instance in case of a failure.",
- "Upgrade via web on my own risk" : "Upgrade via web on my own risk",
- "Maintenance mode" : "Maintenance mode",
- "This %s instance is currently in maintenance mode, which may take a while." : "This %s instance is currently in maintenance mode, which may take a while.",
- "This page will refresh itself when the instance is available again." : "This page will refresh itself when the instance is available again.",
+ "Please use the command line updater because you have a big instance with more than 50 accounts." : "لطفاً از به‌روزرسان خط فرمان استفاده کنید زیرا شما یک نمونه بزرگ با بیش از ۵۰ حساب دارید.",
+ "I know that if I continue doing the update via web UI has the risk, that the request runs into a timeout and could cause data loss, but I have a backup and know how to restore my instance in case of a failure." : "من می‌دانم که اگر به‌روزرسانی را از طریق رابط کاربری وب ادامه دهم، این خطر وجود دارد که درخواست به دلیل انقضای زمان متوقف شده و منجر به از دست رفتن داده‌ها شود، اما من پشتیبان دارم و می‌دانم چگونه در صورت بروز مشکل، نمونه خود را بازیابی کنم.",
+ "Upgrade via web on my own risk" : "ارتقا از طریق وب با مسئولیت خودم",
+ "Maintenance mode" : "حالت نگهداری",
+ "This %s instance is currently in maintenance mode, which may take a while." : "این نمونه %s در حال حاضر در حالت نگهداری است که ممکن است مدتی طول بکشد.",
+ "This page will refresh itself when the instance is available again." : "این صفحه پس از در دسترس قرار گرفتن مجدد نمونه، خود را بازخوانی خواهد کرد.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "اگر این پیغام همچنان وجود داشت یا به صورت غیر منتظره ظاهر شد با مدیر سیستم تماس بگیرید.",
- "Currently open" : "Currently open",
- "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps.",
- "You have not added any info yet" : "You have not added any info yet",
- "{user} has not added any info yet" : "{user} has not added any info yet",
- "Error opening the user status modal, try hard refreshing the page" : "Error opening the user status modal, try hard refreshing the page",
+ "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "چت، تماس‌های ویدیویی، اشتراک‌گذاری صفحه، جلسات آنلاین و کنفرانس وب – در مرورگر شما و با برنامه‌های موبایل.",
+ "You have not added any info yet" : "شما هنوز هیچ اطلاعاتی اضافه نکرده اید",
+ "{user} has not added any info yet" : "{user} هنوز هیچ اطلاعاتی اضافه نکرده است",
+ "Error opening the user status modal, try hard refreshing the page" : "خطا در باز کردن مودال وضعیت کاربر، سعی کنید صفحه را به شدت تازه‌سازی کنید",
"Edit Profile" : "ویرایش نمایه",
- "The headline and about sections will show up here" : "The headline and about sections will show up here",
- "Error loading message template: {error}" : "خطا در بارگذاری قالب پیام : {error}",
+ "The headline and about sections will show up here" : "بخش‌های سربرگ و درباره در اینجا نمایش داده خواهند شد",
"Very weak password" : "رمز عبور بسیار ضعیف",
"Weak password" : "رمز عبور ضعیف",
"So-so password" : "رمز عبور متوسط",
@@ -348,10 +511,14 @@ OC.L10N.register(
"Profile not found" : "نمایه، یافت نشد",
"The profile does not exist." : "این نمایه وجود ندارد.",
"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "فایلها و فهرست های داده های شما قابل از اینترنت قابل دسترسی هستند، چونکه فایل htacces. کار نمی کند.",
- "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>.",
+ "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "برای اطلاعات در مورد نحوه پیکربندی صحیح سرور خود، لطفاً <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">مستندات</a> را مشاهده کنید.",
+ "<strong>Create an admin account</strong>" : "<strong>ایجاد یک حساب کاربری مدیر</strong>",
+ "New admin account name" : "نام حساب کاربری مدیر جدید",
+ "New admin password" : "گذرواژه مدیر جدید",
"Show password" : "نمایش گذرواژه",
- "Toggle password visibility" : "Toggle password visibility",
+ "Toggle password visibility" : "تغییر دید گذرواژه",
"Configure the database" : "پایگاه داده برنامه ریزی شدند",
- "Only %s is available." : "تنها %s موجود است."
+ "Only %s is available." : "تنها %s موجود است.",
+ "Database account" : "حساب پایگاه داده"
},
"nplurals=2; plural=(n > 1);");
diff --git a/core/l10n/fa.json b/core/l10n/fa.json
index afe37989b20..3a423facc8b 100644
--- a/core/l10n/fa.json
+++ b/core/l10n/fa.json
@@ -3,14 +3,14 @@
"File is too big" : "فایل خیلی بزرگ است",
"The selected file is not an image." : "فایل انتخاب شده عکس نمی باشد.",
"The selected file cannot be read." : "فایل انتخاب شده خوانده نمی شود.",
- "The file was uploaded" : "پرونده، بارگذاری شد",
- "The uploaded file exceeds the upload_max_filesize directive in php.ini" : "حجم پرونده بارگذاری شده بیشتر از تنظیمات upload_max_filesize در پرونده php.ini است",
- "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "حجم پرونده بازگذاری شده بیشتر از تنظیمات MAX_FILE_SIZE مشخص شده در فرم HTML است",
- "The file was only partially uploaded" : "پرونده به صورت ناقص بارگذاری شد",
- "No file was uploaded" : "پرونده‌ای بارگذاری نشد",
- "Missing a temporary folder" : "پوشه موقت موجود نیست",
- "Could not write file to disk" : "ناتوانی در نوشتن پرونده روی حافظه",
- "A PHP extension stopped the file upload" : "یک افزونه پی‌اچ‌پی مانع بارگذاری پرونده شد",
+ "The file was uploaded" : "پرونده، بارگذاری شد.",
+ "The uploaded file exceeds the upload_max_filesize directive in php.ini" : "حجم پرونده بارگذاری شده بیشتر از تنظیمات upload_max_filesize در پرونده php.ini است.",
+ "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "حجم پرونده بارگذاری شده بیشتر از تنظیمات MAX_FILE_SIZE مشخص شده در فرم HTML است.",
+ "The file was only partially uploaded" : "پرونده به صورت ناقص بارگذاری شد.",
+ "No file was uploaded" : "پرونده‌ای بارگذاری نشد.",
+ "Missing a temporary folder" : "پوشه موقت موجود نیست.",
+ "Could not write file to disk" : "ناتوانی در نوشتن پرونده روی حافظه.",
+ "A PHP extension stopped the file upload" : "یک افزونه پی‌اچ‌پی مانع بارگذاری پرونده شد.",
"Invalid file provided" : "فایل داده‌شده نا معتبر است",
"No image or file provided" : "هیچ فایل یا تصویری وارد نشده است",
"Unknown filetype" : "نوع فایل ناشناخته",
@@ -21,61 +21,184 @@
"No valid crop data provided" : "هیچ داده برش داده شده معتبر ارائه نشده است",
"Crop is not square" : "بخش بریده شده مربع نیست",
"State token does not match" : "State token مطابقت ندارد",
- "Invalid app password" : "کلمه عبور اپلیکیشن اشتباه است",
- "Could not complete login" : "فرایند ورود شما به سیستم کامل نشد",
- "State token missing" : "State token missing",
- "Your login token is invalid or has expired" : "اطلاعات توکن ورود شما اشتباه یا منقضی است",
- "This community release of Nextcloud is unsupported and push notifications are limited." : "This community release of Nextcloud is unsupported and push notifications are limited.",
+ "Invalid app password" : "کلمه عبور اپلیکیشن اشتباه است.",
+ "Could not complete login" : "فرایند ورود شما به سیستم کامل نشد.",
+ "State token missing" : "توکن حالت گم شده است.",
+ "Your login token is invalid or has expired" : "اطلاعات توکن ورود شما اشتباه یا منقضی است.",
+ "Please use original client" : "لطفا از کلاینت اصلی استفاده کنید.",
+ "This community release of Nextcloud is unsupported and push notifications are limited." : "این نسخه انجمنی Nextcloud پشتیبانی نمی‌شود و اعلان‌های فشاری محدود هستند.",
"Login" : "ورود",
+ "Unsupported email length (>255)" : "طول ایمیل پشتیبانی نمی‌شود (>255).",
"Password reset is disabled" : "تنظیم مجدد رمز عبور فعال نیست",
- "Could not reset password because the token is expired" : "رمز عبور بازنشانی نشد زیرا رمز منقضی شده است",
- "Could not reset password because the token is invalid" : "رمز عبور بازنشانی نشد زیرا رمز نامعتبر است",
+ "Could not reset password because the token is expired" : "رمز عبور بازنشانی نشد زیرا رمز منقضی شده است.",
+ "Could not reset password because the token is invalid" : "رمز عبور بازنشانی نشد زیرا رمز نامعتبر است.",
"Password is too long. Maximum allowed length is 469 characters." : "رمز عبور خیلی طولانی است. حداکثر طول مجاز 469 کاراکتر است.",
"%s password reset" : "%s رمزعبور تغییر کرد",
"Password reset" : "تنظیم مجدد رمز عبور",
"Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "برای بازنشانی رمز عبور خود، روی دکمه زیر کلیک کنید. اگر شما تنظیم مجدد رمز عبور را درخواست نکردید، این ایمیل را نادیده بگیرید.",
"Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "برای بازنشانی رمز عبور خود، روی لینک زیر کلیک کنید. اگر شما تنظیم مجدد رمز عبور را درخواست نکردید، این ایمیل را نادیده بگیرید.",
"Reset your password" : "تنظیم مجدد رمز عبور",
- "Task not found" : "Task not found",
- "Internal error" : "Internal error",
- "Not found" : "پیدا نشد",
- "Requested task type does not exist" : "Requested task type does not exist",
- "Necessary language model provider is not available" : "Necessary language model provider is not available",
- "No text to image provider is available" : "نوشتاری برای ارائه‌دهنده تصویر در دسترس نیست",
- "Image not found" : "تصویر یافت نشد",
- "No translation provider available" : "No translation provider available",
- "Could not detect language" : "Could not detect language",
- "Unable to translate" : "Unable to translate",
- "Nextcloud Server" : "کارساز نکست‌کلود",
- "Some of your link shares have been removed" : "برخی از لینک های اشتراک گذاری شده شما حذف شده است",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Due to a security bug we had to remove some of your link shares. Please see the link for more information.",
- "Learn more ↗" : "بیشتر بدانید ↗",
- "Preparing update" : "آماده‌سازی به روز‌ رسانی",
+ "The given provider is not available" : "ارائه‌دهنده مشخص‌شده در دسترس نیست.",
+ "Task not found" : "وظیفه یافت نشد.",
+ "Internal error" : "خطای داخلی.",
+ "Not found" : "پیدا نشد.",
+ "Bad request" : "درخواست نامعتبر.",
+ "Requested task type does not exist" : "نوع وظیفه درخواست شده موجود نیست.",
+ "Necessary language model provider is not available" : "ارائه‌دهنده مدل زبان لازم در دسترس نیست.",
+ "No text to image provider is available" : "نوشتاری برای ارائه‌دهنده تصویر در دسترس نیست.",
+ "Image not found" : "تصویر یافت نشد.",
+ "No translation provider available" : "هیچ ارائه‌دهنده ترجمه در دسترس نیست.",
+ "Could not detect language" : "امکان تشخیص زبان وجود ندارد.",
+ "Unable to translate" : "ناتوان در ترجمه.",
"[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Repair step:",
- "Repair info:" : "Repair info:",
- "Repair warning:" : "Repair warning:",
- "Repair error:" : "Repair error:",
- "Please use the command line updater because updating via browser is disabled in your config.php." : "Please use the command line updater because updating via browser is disabled in your config.php.",
+ "Repair step:" : "مرحله تعمیر:",
+ "Repair info:" : "اطلاعات تعمیر:",
+ "Repair warning:" : "هشدار تعمیر:",
+ "Repair error:" : "خطای تعمیر:",
+ "Nextcloud Server" : "کارساز نکست‌کلود.",
+ "Some of your link shares have been removed" : "برخی از لینک های اشتراک گذاری شده شما حذف شده است.",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "به دلیل یک اشکال امنیتی، مجبور شدیم برخی از اشتراک‌گذاری‌های لینک شما را حذف کنیم. برای اطلاعات بیشتر لطفاً لینک را ببینید.",
+ "The account limit of this instance is reached." : "محدودیت حساب این نمونه به پایان رسیده است.",
+ "Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "کلید اشتراک خود را در برنامه پشتیبانی وارد کنید تا محدودیت حساب افزایش یابد. این کار همچنین تمام مزایای اضافی را که Nextcloud Enterprise ارائه می‌دهد به شما اعطا می‌کند و برای عملیات در شرکت‌ها بسیار توصیه می‌شود.",
+ "Learn more ↗" : "بیشتر بدانید ↗.",
+ "Preparing update" : "آماده‌سازی به روز‌ رسانی",
+ "Please use the command line updater because updating via browser is disabled in your config.php." : "لطفاً از به‌روزرسان خط فرمان استفاده کنید زیرا به‌روزرسانی از طریق مرورگر در فایل config.php شما غیرفعال شده است.",
"Turned on maintenance mode" : "حالت \" در دست تعمیر \" فعال شد .",
"Turned off maintenance mode" : "حالت \" در دست تعمیر \" غیرفعال شد .",
"Maintenance mode is kept active" : "حالت تعمیرات فعال نگه‌داشته شده است",
"Updating database schema" : "به روز رسانی طرح پایگاه داده",
"Updated database" : "بروز رسانی پایگاه داده انجام شد .",
- "Update app \"%s\" from App Store" : "Update app \"%s\" from App Store",
+ "Update app \"%s\" from App Store" : "بروزرسانی برنامه \"%s\" از App Store.",
"Checking whether the database schema for %s can be updated (this can take a long time depending on the database size)" : "بررسی اینکه آیا طرح پایگاه داده %s می تواند به روز شود (این ممکن است بسته به اندازه پایگاه داده طولانی باشد)",
- "Updated \"%1$s\" to %2$s" : "Updated \"%1$s\" to %2$s",
+ "Updated \"%1$s\" to %2$s" : "بروزرسانی \"%1$s\" به %2$s.",
"Set log level to debug" : "Set log level to debug",
"Reset log level" : "Reset log level",
"Starting code integrity check" : "Starting code integrity check",
"Finished code integrity check" : "Finished code integrity check",
"%s (incompatible)" : "%s (incompatible)",
- "The following apps have been disabled: %s" : "The following apps have been disabled: %s",
+ "The following apps have been disabled: %s" : "برنامه‌های زیر غیرفعال شده‌اند: %s.",
"Already up to date" : "در حال حاضر بروز است",
- "Unknown" : "ناشناخته",
- "PNG image" : "تصویر PNG",
+ "Windows Command Script" : "اسکریپت فرمان ویندوز.",
+ "Electronic book document" : "سند کتاب الکترونیکی.",
+ "TrueType Font Collection" : "مجموعه فونت TrueType.",
+ "Web Open Font Format" : "فرمت فونت باز وب.",
+ "GPX geographic data" : "داده‌های جغرافیایی GPX.",
+ "Gzip archive" : "آرشیو Gzip.",
+ "Adobe Illustrator document" : "سند Adobe Illustrator.",
+ "Java source code" : "کد منبع جاوا.",
+ "JavaScript source code" : "کد منبع جاوا اسکریپت.",
+ "JSON document" : "سند JSON.",
+ "Microsoft Access database" : "پایگاه داده Microsoft Access.",
+ "Microsoft OneNote document" : "سند Microsoft OneNote.",
+ "Microsoft Word document" : "سند Microsoft Word.",
+ "Unknown" : "ناشناخته.",
+ "PDF document" : "سند PDF.",
+ "PostScript document" : "سند PostScript.",
+ "RSS summary" : "خلاصه RSS.",
+ "Android package" : "بسته اندروید.",
+ "KML geographic data" : "داده‌های جغرافیایی KML.",
+ "KML geographic compressed data" : "داده‌های فشرده جغرافیایی KML.",
+ "Lotus Word Pro document" : "سند Lotus Word Pro.",
+ "Excel spreadsheet" : "صفحه گسترده اکسل.",
+ "Excel add-in" : "افزونه اکسل.",
+ "Excel 2007 binary spreadsheet" : "صفحه گسترده باینری Excel 2007.",
+ "Excel spreadsheet template" : "قالب صفحه گسترده اکسل.",
+ "Outlook Message" : "پیام Outlook.",
+ "PowerPoint presentation" : "ارائه پاورپوینت.",
+ "PowerPoint add-in" : "افزونه پاورپوینت.",
+ "PowerPoint presentation template" : "قالب ارائه پاورپوینت.",
+ "Word document" : "سند ورد.",
+ "ODF formula" : "فرمول ODF.",
+ "ODG drawing" : "نقاشی ODG.",
+ "ODG drawing (Flat XML)" : "نقاشی ODG (XML مسطح).",
+ "ODG template" : "قالب ODG.",
+ "ODP presentation" : "ارائه ODP.",
+ "ODP presentation (Flat XML)" : "ارائه ODP (XML مسطح).",
+ "ODP template" : "قالب ODP.",
+ "ODS spreadsheet" : "صفحه گسترده ODS.",
+ "ODS spreadsheet (Flat XML)" : "صفحه گسترده ODS (XML مسطح).",
+ "ODS template" : "قالب ODS.",
+ "ODT document" : "سند ODT.",
+ "ODT document (Flat XML)" : "سند ODT (XML مسطح).",
+ "ODT template" : "قالب ODT.",
+ "PowerPoint 2007 presentation" : "ارائه PowerPoint 2007.",
+ "PowerPoint 2007 show" : "نمایش PowerPoint 2007.",
+ "PowerPoint 2007 presentation template" : "قالب ارائه PowerPoint 2007.",
+ "Excel 2007 spreadsheet" : "صفحه گسترده Excel 2007.",
+ "Excel 2007 spreadsheet template" : "قالب صفحه گسترده Excel 2007.",
+ "Word 2007 document" : "سند Word 2007.",
+ "Word 2007 document template" : "قالب سند Word 2007.",
+ "Microsoft Visio document" : "سند Microsoft Visio.",
+ "WordPerfect document" : "سند WordPerfect.",
+ "7-zip archive" : "آرشیو 7-zip.",
+ "Blender scene" : "صحنه Blender.",
+ "Bzip2 archive" : "آرشیو Bzip2.",
+ "Debian package" : "بسته Debian.",
+ "FictionBook document" : "سند FictionBook.",
+ "Unknown font" : "فونت ناشناخته.",
+ "Krita document" : "سند Krita.",
+ "Mobipocket e-book" : "کتاب الکترونیکی Mobipocket.",
+ "Windows Installer package" : "بسته نصب کننده ویندوز.",
+ "Perl script" : "اسکریپت Perl.",
+ "PHP script" : "اسکریپت PHP.",
+ "Tar archive" : "آرشیو Tar.",
+ "XML document" : "سند XML.",
+ "YAML document" : "سند YAML.",
+ "Zip archive" : "آرشیو Zip.",
+ "Zstandard archive" : "آرشیو Zstandard.",
+ "AAC audio" : "صوت AAC.",
+ "FLAC audio" : "صوت FLAC.",
+ "MPEG-4 audio" : "صوت MPEG-4.",
+ "MP3 audio" : "صوت MP3.",
+ "Ogg audio" : "صوت Ogg.",
+ "RIFF/WAVe standard Audio" : "صوت استاندارد RIFF/WAVe.",
+ "WebM audio" : "صوت WebM.",
+ "MP3 ShoutCast playlist" : "لیست پخش MP3 ShoutCast.",
+ "Windows BMP image" : "تصویر Windows BMP.",
+ "Better Portable Graphics image" : "تصویر گرافیکی قابل حمل بهتر.",
+ "EMF image" : "تصویر EMF.",
+ "GIF image" : "تصویر GIF.",
+ "HEIC image" : "تصویر HEIC.",
+ "HEIF image" : "تصویر HEIF.",
+ "JPEG-2000 JP2 image" : "تصویر JPEG-2000 JP2.",
+ "JPEG image" : "تصویر JPEG.",
+ "PNG image" : "تصویر PNG.",
+ "SVG image" : "تصویر SVG.",
+ "Truevision Targa image" : "تصویر Truevision Targa.",
+ "TIFF image" : "تصویر TIFF.",
+ "WebP image" : "تصویر WebP.",
+ "Digital raw image" : "تصویر خام دیجیتال.",
+ "Windows Icon" : "آیکون ویندوز.",
+ "Email message" : "پیام ایمیل.",
+ "VCS/ICS calendar" : "تقویم VCS/ICS.",
+ "CSS stylesheet" : "شیوه نامه CSS.",
+ "CSV document" : "سند CSV.",
+ "HTML document" : "سند HTML.",
+ "Markdown document" : "سند Markdown.",
+ "Org-mode file" : "فایل Org-mode.",
+ "Plain text document" : "سند متن ساده.",
+ "Rich Text document" : "سند Rich Text.",
+ "Electronic business card" : "کارت ویزیت الکترونیکی.",
+ "C++ source code" : "کد منبع C++.",
+ "LDIF address book" : "دفترچه آدرس LDIF.",
+ "NFO document" : "سند NFO.",
+ "PHP source" : "منبع PHP.",
+ "Python script" : "اسکریپت پایتون.",
+ "ReStructuredText document" : "سند ReStructuredText.",
+ "3GPP multimedia file" : "فایل چندرسانه‌ای 3GPP.",
+ "MPEG video" : "ویدیوی MPEG.",
+ "DV video" : "ویدیوی DV.",
+ "MPEG-2 transport stream" : "جریان حمل و نقل MPEG-2.",
+ "MPEG-4 video" : "ویدیوی MPEG-4.",
+ "Ogg video" : "ویدیوی Ogg.",
+ "QuickTime video" : "ویدیوی QuickTime.",
+ "WebM video" : "ویدیوی WebM.",
+ "Flash video" : "ویدیوی Flash.",
+ "Matroska video" : "ویدیوی Matroska.",
+ "Windows Media video" : "ویدیوی Windows Media.",
+ "AVI video" : "ویدیوی AVI.",
"Error occurred while checking server setup" : "خطا در هنگام چک کردن راه‌اندازی سرور رخ داده است",
- "For more details see the {linkstart}documentation ↗{linkend}." : "For more details see the {linkstart}documentation ↗{linkend}.",
+ "For more details see the {linkstart}documentation ↗{linkend}." : "برای جزئیات بیشتر به {linkstart}مستندات ↗{linkend} مراجعه کنید.",
"unknown text" : "متن نامعلوم",
"Hello world!" : "سلام دنیا!",
"sunny" : "آفتابی",
@@ -90,124 +213,160 @@
"Please reload the page." : "لطفا صفحه را دوباره بارگیری کنید.",
"The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "به روزرسانی ناموفق بود. برای اطلاعات بیشتر <a href=\"{url}\">فروم ما را بررسی کنید</a>",
"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "به روزرسانی ناموفق بود. لطفا این مسئله را در <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">جامعه Nextcloud</a> گزارش دهید",
- "Continue to {productName}" : "Continue to {productName}",
- "_The update was successful. Redirecting you to {productName} in %n second._::_The update was successful. Redirecting you to {productName} in %n seconds._" : ["The update was successful. Redirecting you to {productName} in %n second.","The update was successful. Redirecting you to {productName} in %n seconds."],
- "Applications menu" : "منو برنامه‌ها",
+ "Continue to {productName}" : "به {productName} ادامه دهید.",
+ "_The update was successful. Redirecting you to {productName} in %n second._::_The update was successful. Redirecting you to {productName} in %n seconds._" : ["به روزرسانی موفقیت آمیز بود. شما در %n ثانیه به {productName} هدایت می‌شوید.","به روزرسانی موفقیت آمیز بود. شما در %n ثانیه به {productName} هدایت می‌شوید."],
+ "Applications menu" : "منو برنامه‌ها.",
"Apps" : " برنامه ها",
"More apps" : "برنامه های بیشتر",
- "_{count} notification_::_{count} notifications_" : ["{count} notification","{count} notifications"],
+ "_{count} notification_::_{count} notifications_" : ["{count} اعلان.","{count} اعلان."],
"No" : "نه",
"Yes" : "بله",
- "Failed to add the public link to your Nextcloud" : "خطا در افزودن ادرس عمومی به نکس کلود شما",
- "Create share" : "ساختن اشتراک",
- "Custom date range" : "بازه تاریخی سفارشی",
- "Pick start date" : "انتخاب تاریخ شروع",
- "Pick end date" : "انتخاب تاریخ پایان",
- "Search in date range" : "جستجو در بازه تاریخی",
- "Clear search" : "پاک کردن جستجو",
+ "The remote URL must include the user." : "آدرس URL راه دور باید شامل کاربر باشد.",
+ "Invalid remote URL." : "آدرس URL راه دور نامعتبر است.",
+ "Failed to add the public link to your Nextcloud" : "خطا در افزودن آدرس عمومی به نکست‌کلود شما.",
+ "Federated user" : "کاربر فدرال.",
+ "user@your-nextcloud.org" : "user@your-nextcloud.org.",
+ "Create share" : "ساختن اشتراک.",
+ "Direct link copied to clipboard" : "لینک مستقیم در کلیپ‌بورد کپی شد.",
+ "Please copy the link manually:" : "لطفاً لینک را به صورت دستی کپی کنید:",
+ "Custom date range" : "بازه تاریخی سفارشی.",
+ "Pick start date" : "انتخاب تاریخ شروع.",
+ "Pick end date" : "انتخاب تاریخ پایان.",
+ "Search in date range" : "جستجو در بازه تاریخی.",
+ "Search in current app" : "جستجو در برنامه فعلی.",
+ "Clear search" : "پاک کردن جستجو.",
+ "Search everywhere" : "جستجو در هر کجا.",
"Searching …" : "جستجوکردن …",
- "Start typing to search" : "Start typing to search",
- "Today" : "امروز",
- "Last 7 days" : "۷ روز گذشته",
- "Last 30 days" : "۳۰ روز گذشته",
- "This year" : "امسال",
- "Last year" : "پارسال",
- "Unified search" : "جستجوی یکپارچه",
- "Search apps, files, tags, messages" : "جستجوی برنامه‌ها، پرونده‌ها، برچسب‌ها، پیام‌ها",
- "Places" : "مکان ها",
- "Date" : "تاریخ",
- "Search people" : "جستجوی افراد",
- "People" : "مردم",
- "Results" : "نتایج",
- "Load more results" : "بار کردن نتیحه‌های بیش‌تر",
+ "Start typing to search" : "برای جستجو شروع به تایپ کنید.",
+ "No matching results" : "نتیجه مطابق یافت نشد.",
+ "Today" : "امروز.",
+ "Last 7 days" : "۷ روز گذشته.",
+ "Last 30 days" : "۳۰ روز گذشته.",
+ "This year" : "امسال.",
+ "Last year" : "پارسال.",
+ "Unified search" : "جستجوی یکپارچه.",
+ "Search apps, files, tags, messages" : "جستجوی برنامه‌ها، پرونده‌ها، برچسب‌ها، پیام‌ها.",
+ "Places" : "مکان ها.",
+ "Date" : "تاریخ.",
+ "Search people" : "جستجوی افراد.",
+ "People" : "مردم.",
+ "Filter in current view" : "فیلتر در نمای فعلی.",
+ "Results" : "نتایج.",
+ "Load more results" : "بار کردن نتایج بیشتر.",
+ "Search in" : "جستجو در.",
"Log in" : "ورود",
"Logging in …" : "ورود به سیستم ...",
- "Log in to {productName}" : "Log in to {productName}",
+ "Log in to {productName}" : "ورود به {productName}.",
+ "Wrong login or password." : "نام کاربری یا رمز عبور اشتباه است.",
+ "This account is disabled" : "این حساب کاربری غیرفعال است.",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "از این آی پی چندین بار تلاش ناموفق برای ورود انجام شده است فلذا برای ورود مجدد حداقل ۳۰ ثانیه باید صبر کنید.",
- "Account name or email" : "نام کاربری یا آدرس ایمیل",
- "Account name" : "Account name",
+ "Account name or email" : "نام کاربری یا آدرس ایمیل.",
+ "Account name" : "نام حساب.",
"Server side authentication failed!" : "تأیید هویت از سوی سرور انجام نشد!",
"Please contact your administrator." : "لطفا با مدیر وب‌سایت تماس بگیرید.",
+ "Session error" : "خطای جلسه.",
+ "It appears your session token has expired, please refresh the page and try again." : "به نظر می‌رسد توکن جلسه شما منقضی شده است، لطفاً صفحه را بازخوانی کرده و دوباره امتحان کنید.",
"An internal error occurred." : "یک اشتباه داخلی رخ داد.",
"Please try again or contact your administrator." : "لطفا مجددا تلاش کنید یا با مدیر سیستم تماس بگیرید.",
"Password" : "گذرواژه",
- "Log in with a device" : "Log in with a device",
- "Your account is not setup for passwordless login." : "Your account is not setup for passwordless login.",
- "Your connection is not secure" : "Your connection is not secure",
- "Passwordless authentication is only available over a secure connection." : "Passwordless authentication is only available over a secure connection.",
- "Browser not supported" : "Browser not supported",
- "Passwordless authentication is not supported in your browser." : "Passwordless authentication is not supported in your browser.",
+ "Log in with a device" : "ورود با یک دستگاه.",
+ "Login or email" : "نام کاربری یا ایمیل.",
+ "Your account is not setup for passwordless login." : "حساب شما برای ورود بدون رمز عبور تنظیم نشده است.",
+ "Your connection is not secure" : "اتصال شما امن نیست.",
+ "Passwordless authentication is only available over a secure connection." : "احراز هویت بدون رمز عبور فقط از طریق اتصال امن در دسترس است.",
+ "Browser not supported" : "مرورگر پشتیبانی نمی‌شود.",
+ "Passwordless authentication is not supported in your browser." : "احراز هویت بدون رمز عبور در مرورگر شما پشتیبانی نمی‌شود.",
"Reset password" : "تنظیم مجدد رمز عبور",
- "Back to login" : "Back to login",
+ "Back to login" : "بازگشت به ورود.",
+ "If this account exists, a password reset message has been sent to its email address. If you do not receive it, verify your email address and/or Login, check your spam/junk folders or ask your local administration for help." : "اگر این حساب کاربری وجود داشته باشد، پیامی برای بازنشانی رمز عبور به آدرس ایمیل آن ارسال شده است. اگر آن را دریافت نکردید، آدرس ایمیل و/یا نام کاربری خود را بررسی کنید، پوشه‌های اسپم/جفیت خود را بررسی کنید یا از مدیر محلی خود کمک بخواهید.",
"Couldn't send reset email. Please contact your administrator." : "ارسال ایمیل مجدد با مشکل مواجه شد . لطفا با مدیر سیستم تماس بگیرید .",
- "Password cannot be changed. Please contact your administrator." : "Password cannot be changed. Please contact your administrator.",
+ "Password cannot be changed. Please contact your administrator." : "رمز عبور قابل تغییر نیست. لطفاً با مدیر سیستم تماس بگیرید.",
"New password" : "گذرواژه جدید",
- "Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?",
+ "Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "فایل‌های شما رمزگذاری شده‌اند. پس از بازنشانی رمز عبور شما، هیچ راهی برای بازیابی اطلاعات شما وجود نخواهد داشت. اگر مطمئن نیستید که چه کاری باید انجام دهید، لطفاً قبل از ادامه با مدیر خود تماس بگیرید. آیا واقعاً می‌خواهید ادامه دهید؟",
"I know what I'm doing" : "اطلاع از انجام این کار دارم",
- "Resetting password" : "در حال ریست کردن کلمه عبور...",
- "Schedule work & meetings, synced with all your devices." : "زمان‌بندی کار و جلسات، همگام‌سازی‌شده با تمام دستگاه‌های شما",
+ "Resetting password" : "در حال ریست کردن کلمه عبور... .",
+ "Schedule work & meetings, synced with all your devices." : "زمان‌بندی کار و جلسات، همگام‌سازی‌شده با تمام دستگاه‌های شما.",
"Keep your colleagues and friends in one place without leaking their private info." : "همکاران و دوستان خود را در یک مکان نگه دارید بدون اینکه اطلاعات خصوصی آنها را بشناسید.",
- "Simple email app nicely integrated with Files, Contacts and Calendar." : "برنامه ایمیل ساده با پرونده ها ، مخاطبین و تقویم یکپارچه شده است.",
- "Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Collaborative documents, spreadsheets and presentations, built on Collabora Online.",
- "Distraction free note taking app." : "Distraction free note taking app.",
- "Recommended apps" : "Recommended apps",
- "Loading apps …" : "Loading apps …",
- "Could not fetch list of apps from the App Store." : "Could not fetch list of apps from the App Store.",
- "App download or installation failed" : "App download or installation failed",
- "Cannot install this app because it is not compatible" : "Cannot install this app because it is not compatible",
- "Cannot install this app" : "Cannot install this app",
- "Skip" : "پرش",
- "Installing apps …" : "در حال نصب برنامه",
- "Install recommended apps" : "نصب کاره‌های پیشنهادی",
- "Avatar of {displayName}" : "نمایه {displayName}",
- "Settings menu" : "فهرست تنظیمات",
+ "Simple email app nicely integrated with Files, Contacts and Calendar." : "برنامه ایمیل ساده با پرونده ها، مخاطبین و تقویم یکپارچه شده است.",
+ "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "گفتگو، تماس‌های ویدیویی، اشتراک‌گذاری صفحه، جلسات آنلاین و وب‌کنفرانس – در مرورگر شما و با برنامه‌های موبایل.",
+ "Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "اسناد، صفحات گسترده و ارائه‌های مشترک، بر اساس Collabora Online ساخته شده‌اند.",
+ "Distraction free note taking app." : "برنامه یادداشت‌برداری بدون حواس‌پرتی.",
+ "Recommended apps" : "برنامه‌های پیشنهادی.",
+ "Loading apps …" : "در حال بارگذاری برنامه ها... .",
+ "Could not fetch list of apps from the App Store." : "امکان دریافت لیست برنامه ها از App Store وجود نداشت.",
+ "App download or installation failed" : "دانلود یا نصب برنامه ناموفق بود.",
+ "Cannot install this app because it is not compatible" : "نمی توان این برنامه را نصب کرد زیرا سازگار نیست.",
+ "Cannot install this app" : "نمی توان این برنامه را نصب کرد.",
+ "Skip" : "پرش.",
+ "Installing apps …" : "در حال نصب برنامه.",
+ "Install recommended apps" : "نصب کاره‌های پیشنهادی.",
+ "Avatar of {displayName}" : "نمایه {displayName}.",
+ "Settings menu" : "فهرست تنظیمات.",
"Loading your contacts …" : "بارگیری مخاطبین شما ...",
"Looking for {term} …" : "به دنبال {term} …",
- "Search contacts" : "Search contacts",
- "Reset search" : "Reset search",
+ "Search contacts" : "جستجوی مخاطبین.",
+ "Reset search" : "بازنشانی جستجو.",
"Search contacts …" : "جستجو مخاطبین ...",
- "Could not load your contacts" : "Could not load your contacts",
+ "Could not load your contacts" : "امکان بارگذاری مخاطبین شما وجود نداشت.",
"No contacts found" : "مخاطبین یافت نشد",
- "Show all contacts" : "نمایش تمام مخاطبین",
- "Install the Contacts app" : "Install the Contacts app",
+ "Show all contacts" : "نمایش تمام مخاطبین.",
+ "Install the Contacts app" : "برنامه مخاطبین را نصب کنید.",
"Search" : "جست‌و‌جو",
- "No results for {query}" : "No results for {query}",
- "Press Enter to start searching" : "Press Enter to start searching",
- "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Please enter {minSearchLength} character or more to search","Please enter {minSearchLength} characters or more to search"],
- "An error occurred while searching for {type}" : "An error occurred while searching for {type}",
- "Search starts once you start typing and results may be reached with the arrow keys" : "Search starts once you start typing and results may be reached with the arrow keys",
- "Search for {name} only" : "Search for {name} only",
- "Loading more results …" : "Loading more results …",
+ "No results for {query}" : "هیچ نتیجه‌ای برای {query} یافت نشد.",
+ "Press Enter to start searching" : "برای شروع جستجو Enter را فشار دهید.",
+ "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["لطفا برای جستجو حداقل %n کاراکتر یا بیشتر وارد کنید.","لطفا برای جستجو حداقل %n کاراکتر یا بیشتر وارد کنید."],
+ "An error occurred while searching for {type}" : "خطایی در هنگام جستجو برای {type} رخ داد.",
+ "Search starts once you start typing and results may be reached with the arrow keys" : "جستجو با شروع تایپ آغاز می‌شود و نتایج را می‌توان با کلیدهای جهت‌نما مشاهده کرد.",
+ "Search for {name} only" : "فقط {name} را جستجو کنید.",
+ "Loading more results …" : "در حال بارگذاری نتایج بیشتر ... .",
"Forgot password?" : "رمز فراموش شده؟",
- "Back to login form" : "Back to login form",
- "Back" : "بازگشت",
- "Login form is disabled." : "Login form is disabled.",
- "More actions" : "اقدامات بیشتر",
+ "Back to login form" : "بازگشت به فرم ورود.",
+ "Back" : "بازگشت.",
+ "Login form is disabled." : "فرم ورود غیرفعال است.",
+ "The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "فرم ورود Nextcloud غیرفعال است. در صورت امکان از گزینه ورود دیگری استفاده کنید یا با مدیریت خود تماس بگیرید.",
+ "More actions" : "اقدامات بیشتر.",
+ "Password is too weak" : "رمز عبور بسیار ضعیف است.",
+ "Password is weak" : "رمز عبور ضعیف است.",
+ "Password is average" : "رمز عبور متوسط است.",
+ "Password is strong" : "رمز عبور قوی است.",
+ "Password is very strong" : "رمز عبور بسیار قوی است.",
+ "Password is extremely strong" : "رمز عبور فوق‌العاده قوی است.",
+ "Unknown password strength" : "قدرت رمز عبور ناشناخته.",
+ "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "پوشه داده و فایل‌های شما احتمالاً از اینترنت قابل دسترسی هستند زیرا فایل <code>.htaccess</code> کار نمی‌کند.",
+ "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "برای اطلاعات بیشتر در مورد نحوه پیکربندی صحیح سرور خود، لطفاً {linkStart}مستندات را ببینید{linkEnd}.",
+ "Autoconfig file detected" : "فایل تنظیم خودکار شناسایی شد.",
+ "The setup form below is pre-filled with the values from the config file." : "فرم تنظیمات زیر با مقادیر موجود در فایل پیکربندی از قبل پر شده است.",
"Security warning" : "اخطار امنیتی",
+ "Create administration account" : "ایجاد حساب کاربری مدیریت.",
+ "Administration account name" : "نام حساب کاربری مدیریت.",
+ "Administration account password" : "رمز عبور حساب کاربری مدیریت.",
"Storage & database" : "انبارش و پایگاه داده",
"Data folder" : "پوشه اطلاعاتی",
+ "Database configuration" : "پیکربندی پایگاه داده.",
+ "Only {firstAndOnlyDatabase} is available." : "تنها {firstAndOnlyDatabase} در دسترس است.",
"Install and activate additional PHP modules to choose other database types." : "جهت انتخاب انواع دیگر پایگاه‌داده‌،ماژول‌های اضافی PHP را نصب و فعال‌سازی کنید.",
"For more details check out the documentation." : "برای جزئیات بیشتر به مستندات مراجعه کنید.",
"Performance warning" : "اخطار کارایی",
"You chose SQLite as database." : "شما SQLite را به عنوان پایگاه داده انتخاب کردید.",
- "SQLite should only be used for minimal and development instances. For production we recommend a different database backend." : "SQLite should only be used for minimal and development instances. For production we recommend a different database backend.",
- "If you use clients for file syncing, the use of SQLite is highly discouraged." : "If you use clients for file syncing, the use of SQLite is highly discouraged.",
- "Database user" : "شناسه پایگاه داده",
+ "SQLite should only be used for minimal and development instances. For production we recommend a different database backend." : "SQLite فقط باید برای نمونه‌های حداقل و توسعه استفاده شود. برای تولید، یک پایگاه داده پشتیبانی دیگر توصیه می‌کنیم.",
+ "If you use clients for file syncing, the use of SQLite is highly discouraged." : "اگر از کلاینت‌ها برای همگام‌سازی فایل استفاده می‌کنید، استفاده از SQLite بسیار توصیه نمی‌شود.",
+ "Database user" : "شناسه پایگاه داده.",
"Database password" : "پسورد پایگاه داده",
"Database name" : "نام پایگاه داده",
"Database tablespace" : "جدول پایگاه داده",
"Please specify the port number along with the host name (e.g., localhost:5432)." : "Please specify the port number along with the host name (e.g., localhost:5432).",
"Database host" : "هاست پایگاه داده",
- "Installing …" : "Installing …",
+ "localhost" : "لوکال‌هاست",
+ "Installing …" : "درحال نصب...",
"Install" : "نصب",
"Need help?" : "کمک لازم دارید ؟",
"See the documentation" : "مشاهده‌ی مستندات",
- "{name} version {version} and above" : "{name} version {version} and above",
- "This browser is not supported" : "This browser is not supported",
- "Your browser is not supported. Please upgrade to a newer version or a supported one." : "Your browser is not supported. Please upgrade to a newer version or a supported one.",
- "Continue with this unsupported browser" : "Continue with this unsupported browser",
- "Supported versions" : "Supported versions",
- "Search {types} …" : "Search {types} …",
+ "{name} version {version} and above" : "{name} نسخه {version} و بالاتر",
+ "This browser is not supported" : "این مرورگر پشتیبانی نمی‌شود",
+ "Your browser is not supported. Please upgrade to a newer version or a supported one." : "مرورگر شما پشتیبانی نمی‌شود. لطفاً به نسخه جدیدتر یا نسخه پشتیبانی‌شده ارتقا دهید.",
+ "Continue with this unsupported browser" : "با این مرورگر پشتیبانی‌نشده ادامه دهید",
+ "Supported versions" : "نسخه‌های پشتیبانی شده",
+ "Search {types} …" : "جستجوی {types}...",
"Choose {file}" : "انتخاب {file}",
"Choose" : "انتخاب کردن",
"Copy to {target}" : "رونوشت به {target}",
@@ -231,42 +390,45 @@
"seconds ago" : "ثانیه‌ها پیش",
"Connection to server lost" : "اتصال به سرور از دست رفته است",
"_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["%nمشکل بارگذاری صفحه، بارگیری مجدد در ثانیه","%nمشکل بارگذاری صفحه، بارگیری مجدد در ثانیه"],
- "Add to a project" : "Add to a project",
- "Show details" : "Show details",
+ "Add to a project" : "افزودن به یک پروژه",
+ "Show details" : "نمایش جزئیات",
"Hide details" : "مخفی کردن جزئیات",
- "Rename project" : "Rename project",
- "Failed to rename the project" : "Failed to rename the project",
- "Failed to create a project" : "Failed to create a project",
- "Failed to add the item to the project" : "Failed to add the item to the project",
- "Connect items to a project to make them easier to find" : "Connect items to a project to make them easier to find",
- "Type to search for existing projects" : "Type to search for existing projects",
+ "Rename project" : "تغییر نام پروژه",
+ "Failed to rename the project" : "تغییر نام پروژه ناموفق بود",
+ "Failed to create a project" : "ایجاد پروژه ناموفق بود",
+ "Failed to add the item to the project" : "افزودن مورد به پروژه ناموفق بود",
+ "Connect items to a project to make them easier to find" : "موارد را به یک پروژه متصل کنید تا یافتن آنها آسان‌تر شود",
+ "Type to search for existing projects" : "برای جستجوی پروژه‌های موجود تایپ کنید",
"New in" : "جدید در",
"View changelog" : "مشاهده تغییرات",
"No action available" : "هیچ عملی قابل انجام نیست",
"Error fetching contact actions" : "خطا در دریافت فعالیتهای تماس",
- "Close \"{dialogTitle}\" dialog" : "Close \"{dialogTitle}\" dialog",
+ "Close \"{dialogTitle}\" dialog" : "بستن گفتگوی «{dialogTitle}»",
+ "Email length is at max (255)" : "طول ایمیل حداکثر (۲۵۵) است",
"Non-existing tag #{tag}" : "برچسب غیر موجود #{tag}",
- "Restricted" : "Restricted",
+ "Restricted" : "محدود شده",
"Invisible" : "غیر قابل مشاهده",
"Delete" : "حذف",
"Rename" : "تغییرنام",
"Collaborative tags" : "برچسب های همکاری",
"No tags found" : "هیچ برچسبی یافت نشد",
+ "Clipboard not available, please copy manually" : "کلیپ بورد در دسترس نیست، لطفا به صورت دستی کپی کنید",
"Personal" : "شخصی",
"Accounts" : "حساب‌ها",
"Admin" : "مدیر",
"Help" : "راه‌نما",
"Access forbidden" : "اجازه دسترسی به مناطق ممنوعه را ندارید",
+ "Back to %s" : "بازگشت به %s",
"Page not found" : "صفحه یافت نشد",
- "The page could not be found on the server or you may not be allowed to view it." : "The page could not be found on the server or you may not be allowed to view it.",
- "Back to %s" : "Back to %s",
- "Too many requests" : "Too many requests",
- "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "There were too many requests from your network. Retry later or contact your administrator if this is an error.",
+ "The page could not be found on the server or you may not be allowed to view it." : "صفحه در سرور یافت نشد یا ممکن است شما اجازه مشاهده آن را نداشته باشید.",
+ "Too many requests" : "درخواست‌های زیاد",
+ "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "درخواست‌های زیادی از شبکه شما وجود داشت. بعداً دوباره امتحان کنید یا در صورت بروز خطا با مدیر خود تماس بگیرید.",
"Error" : "خطا",
"Internal Server Error" : "خطای داخلی سرور",
"The server was unable to complete your request." : "سرور قادر به تکمیل درخواست شما نبود.",
"If this happens again, please send the technical details below to the server administrator." : "اگر این اتفاق دوباره افتاد، لطفا جزئیات فنی زیر را به مدیر سرور ارسال کنید.",
"More details can be found in the server log." : "جزئیات بیشتر در لاگ سرور قابل مشاهده خواهد بود.",
+ "For more details see the documentation ↗." : "برای جزئیات بیشتر به مستندات ↗ مراجعه کنید.",
"Technical details" : "جزئیات فنی",
"Remote Address: %s" : "آدرس راه‌دور: %s",
"Request ID: %s" : "ID درخواست: %s",
@@ -276,68 +438,69 @@
"File: %s" : "فایل : %s",
"Line: %s" : "خط: %s",
"Trace" : "ردیابی",
- "It looks like you are trying to reinstall your Nextcloud. However the file CAN_INSTALL is missing from your config directory. Please create the file CAN_INSTALL in your config folder to continue." : "It looks like you are trying to reinstall your Nextcloud. However the file CAN_INSTALL is missing from your config directory. Please create the file CAN_INSTALL in your config folder to continue.",
- "Could not remove CAN_INSTALL from the config folder. Please remove this file manually." : "Could not remove CAN_INSTALL from the config folder. Please remove this file manually.",
- "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page.",
- "Skip to main content" : "Skip to main content",
- "Skip to navigation of app" : "Skip to navigation of app",
+ "It looks like you are trying to reinstall your Nextcloud. However the file CAN_INSTALL is missing from your config directory. Please create the file CAN_INSTALL in your config folder to continue." : "به نظر می رسد شما در حال تلاش برای نصب مجدد Nextcloud خود هستید. با این حال فایل CAN_INSTALL از دایرکتوری تنظیمات شما گم شده است. لطفاً فایل CAN_INSTALL را در پوشه تنظیمات خود ایجاد کنید تا ادامه دهید.",
+ "Could not remove CAN_INSTALL from the config folder. Please remove this file manually." : "فایل CAN_INSTALL از پوشه تنظیمات قابل حذف نیست. لطفاً این فایل را به صورت دستی حذف کنید.",
+ "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "این برنامه برای عملکرد صحیح به جاوا اسکریپت نیاز دارد. لطفاً {linkstart}جاوا اسکریپت را فعال کنید{linkend} و صفحه را بارگذاری مجدد کنید.",
+ "Skip to main content" : "پرش به محتوای اصلی",
+ "Skip to navigation of app" : "پرش به ناوبری برنامه",
"Go to %s" : "برو به %s",
- "Get your own free account" : "Get your own free account",
- "Connect to your account" : "Connect to your account",
- "Please log in before granting %1$s access to your %2$s account." : "Please log in before granting %1$s access to your %2$s account.",
- "If you are not trying to set up a new device or app, someone is trying to trick you into granting them access to your data. In this case do not proceed and instead contact your system administrator." : "If you are not trying to set up a new device or app, someone is trying to trick you into granting them access to your data. In this case do not proceed and instead contact your system administrator.",
+ "Get your own free account" : "حساب کاربری رایگان خود را دریافت کنید",
+ "Connect to your account" : "به حساب کاربری خود متصل شوید",
+ "Please log in before granting %1$s access to your %2$s account." : "لطفاً قبل از اعطای دسترسی %1$s به حساب %2$s خود وارد شوید.",
+ "If you are not trying to set up a new device or app, someone is trying to trick you into granting them access to your data. In this case do not proceed and instead contact your system administrator." : "اگر قصد راه‌اندازی دستگاه یا برنامه جدیدی را ندارید، شخصی در تلاش است تا شما را فریب دهد تا به داده‌هایتان دسترسی پیدا کند. در این صورت ادامه ندهید و به جای آن با مدیر سیستم خود تماس بگیرید.",
+ "App password" : "گذرواژه برنامه",
"Grant access" : " مجوز اعطا دسترسی",
+ "Alternative log in using app password" : "ورود جایگزین با استفاده از گذرواژه برنامه",
"Account access" : "دسترسی به حساب",
- "Currently logged in as %1$s (%2$s)." : "Currently logged in as %1$s (%2$s).",
- "You are about to grant %1$s access to your %2$s account." : "You are about to grant %1$s access to your %2$s account.",
- "Account connected" : "Account connected",
- "Your client should now be connected!" : "Your client should now be connected!",
- "You can close this window." : "You can close this window.",
+ "Currently logged in as %1$s (%2$s)." : "در حال حاضر به عنوان %1$s (%2$s) وارد شده‌اید.",
+ "You are about to grant %1$s access to your %2$s account." : "شما در حال اعطای دسترسی %1$s به حساب %2$s خود هستید.",
+ "Account connected" : "حساب کاربری متصل شد",
+ "Your client should now be connected!" : "اکنون مشتری شما باید متصل شده باشد!",
+ "You can close this window." : "می‌توانید این پنجره را ببندید.",
"Previous" : "قبلی",
"This share is password-protected" : "این اشتراک توسط رمز عبور محافظت می شود",
- "The password is wrong or expired. Please try again or request a new one." : "The password is wrong or expired. Please try again or request a new one.",
- "Please type in your email address to request a temporary password" : "Please type in your email address to request a temporary password",
+ "The password is wrong or expired. Please try again or request a new one." : "رمز عبور اشتباه است یا منقضی شده است. لطفا دوباره تلاش کنید یا رمز عبور جدیدی درخواست دهید.",
+ "Please type in your email address to request a temporary password" : "لطفاً آدرس ایمیل خود را برای درخواست گذرواژه موقت وارد کنید",
"Email address" : "آدرس ایمیل",
- "Password sent!" : "Password sent!",
- "You are not authorized to request a password for this share" : "You are not authorized to request a password for this share",
- "Two-factor authentication" : "Two-factor authentication",
- "Enhanced security is enabled for your account. Choose a second factor for authentication:" : "Enhanced security is enabled for your account. Choose a second factor for authentication:",
- "Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Could not load at least one of your enabled two-factor auth methods. Please contact your admin.",
- "Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance." : "Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance.",
- "Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication." : "Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication.",
- "Set up two-factor authentication" : "Set up two-factor authentication",
- "Two-factor authentication is enforced but has not been configured on your account. Use one of your backup codes to log in or contact your admin for assistance." : "Two-factor authentication is enforced but has not been configured on your account. Use one of your backup codes to log in or contact your admin for assistance.",
+ "Password sent!" : "گذرواژه ارسال شد!",
+ "You are not authorized to request a password for this share" : "شما مجاز به درخواست گذرواژه برای این اشتراک نیستید",
+ "Two-factor authentication" : "احراز هویت دو مرحله‌ای",
+ "Enhanced security is enabled for your account. Choose a second factor for authentication:" : "امنیت پیشرفته برای حساب شما فعال شده است. عامل دوم را برای احراز هویت انتخاب کنید:",
+ "Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "حداقل یکی از روش‌های احراز هویت دو عاملی فعال شما بارگذاری نشد. لطفاً با مدیر خود تماس بگیرید.",
+ "Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance." : "احراز هویت دو مرحله‌ای اجباری است اما در حساب شما پیکربندی نشده است. برای راهنمایی با مدیر خود تماس بگیرید.",
+ "Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication." : "احراز هویت دو مرحله‌ای اجباری است اما در حساب شما پیکربندی نشده است. لطفاً به راه‌اندازی احراز هویت دو مرحله‌ای ادامه دهید.",
+ "Set up two-factor authentication" : "تنظیم احراز هویت دو مرحله‌ای",
+ "Two-factor authentication is enforced but has not been configured on your account. Use one of your backup codes to log in or contact your admin for assistance." : "احراز هویت دو مرحله‌ای اجباری است اما در حساب شما پیکربندی نشده است. برای ورود از یکی از کدهای پشتیبان خود استفاده کنید یا برای راهنمایی با مدیر خود تماس بگیرید.",
"Use backup code" : "از کد پشتیبان استفاده شود",
- "Cancel login" : "Cancel login",
- "Enhanced security is enforced for your account. Choose which provider to set up:" : "Enhanced security is enforced for your account. Choose which provider to set up:",
- "Error while validating your second factor" : "Error while validating your second factor",
- "Access through untrusted domain" : "Access through untrusted domain",
- "Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php." : "Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php.",
- "Further information how to configure this can be found in the %1$sdocumentation%2$s." : "Further information how to configure this can be found in the %1$sdocumentation%2$s.",
+ "Cancel login" : "لغو ورود",
+ "Enhanced security is enforced for your account. Choose which provider to set up:" : "امنیت پیشرفته برای حساب شما اجباری است. ارائه‌دهنده را برای راه‌اندازی انتخاب کنید:",
+ "Error while validating your second factor" : "خطا در اعتبار سنجی عامل دوم شما",
+ "Access through untrusted domain" : "دسترسی از طریق دامنه نامعتبر",
+ "Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php." : "لطفاً با مدیر خود تماس بگیرید. اگر شما مدیر هستید، تنظیمات \"trusted_domains\" را در config/config.php مانند مثال در config.sample.php ویرایش کنید.",
+ "Further information how to configure this can be found in the %1$sdocumentation%2$s." : "اطلاعات بیشتر در مورد نحوه پیکربندی این مورد را می توانید در %1$sمستندات%2$s بیابید.",
"App update required" : "نیاز به بروزرسانی برنامه وجود دارد",
- "%1$s will be updated to version %2$s" : "%1$s will be updated to version %2$s",
- "The following apps will be updated:" : "The following apps will be updated:",
+ "%1$s will be updated to version %2$s" : "%1$s به نسخه %2$s بروزرسانی خواهد شد",
+ "The following apps will be updated:" : "برنامه‌های زیر بروزرسانی خواهند شد:",
"These incompatible apps will be disabled:" : "این برنامه‌های ناسازگار غیر فعال می‌شوند:",
"The theme %s has been disabled." : "قالب %s غیر فعال شد.",
- "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Please make sure that the database, the config folder and the data folder have been backed up before proceeding.",
+ "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "لطفاً قبل از ادامه کار از پایگاه داده، پوشه پیکربندی و پوشه داده‌ها نسخه پشتیبان تهیه کنید.",
"Start update" : "اغاز به روز رسانی",
"To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "برای جلوگیری از وقفه در نصب های طولانی تر، شما می توانید دستورات زیر را از مسیر نصبتان اجرا کنید:",
"Detailed logs" : "Detailed logs",
"Update needed" : "نیاز به روز رسانی دارد",
- "I know that if I continue doing the update via web UI has the risk, that the request runs into a timeout and could cause data loss, but I have a backup and know how to restore my instance in case of a failure." : "I know that if I continue doing the update via web UI has the risk, that the request runs into a timeout and could cause data loss, but I have a backup and know how to restore my instance in case of a failure.",
- "Upgrade via web on my own risk" : "Upgrade via web on my own risk",
- "Maintenance mode" : "Maintenance mode",
- "This %s instance is currently in maintenance mode, which may take a while." : "This %s instance is currently in maintenance mode, which may take a while.",
- "This page will refresh itself when the instance is available again." : "This page will refresh itself when the instance is available again.",
+ "Please use the command line updater because you have a big instance with more than 50 accounts." : "لطفاً از به‌روزرسان خط فرمان استفاده کنید زیرا شما یک نمونه بزرگ با بیش از ۵۰ حساب دارید.",
+ "I know that if I continue doing the update via web UI has the risk, that the request runs into a timeout and could cause data loss, but I have a backup and know how to restore my instance in case of a failure." : "من می‌دانم که اگر به‌روزرسانی را از طریق رابط کاربری وب ادامه دهم، این خطر وجود دارد که درخواست به دلیل انقضای زمان متوقف شده و منجر به از دست رفتن داده‌ها شود، اما من پشتیبان دارم و می‌دانم چگونه در صورت بروز مشکل، نمونه خود را بازیابی کنم.",
+ "Upgrade via web on my own risk" : "ارتقا از طریق وب با مسئولیت خودم",
+ "Maintenance mode" : "حالت نگهداری",
+ "This %s instance is currently in maintenance mode, which may take a while." : "این نمونه %s در حال حاضر در حالت نگهداری است که ممکن است مدتی طول بکشد.",
+ "This page will refresh itself when the instance is available again." : "این صفحه پس از در دسترس قرار گرفتن مجدد نمونه، خود را بازخوانی خواهد کرد.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "اگر این پیغام همچنان وجود داشت یا به صورت غیر منتظره ظاهر شد با مدیر سیستم تماس بگیرید.",
- "Currently open" : "Currently open",
- "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps.",
- "You have not added any info yet" : "You have not added any info yet",
- "{user} has not added any info yet" : "{user} has not added any info yet",
- "Error opening the user status modal, try hard refreshing the page" : "Error opening the user status modal, try hard refreshing the page",
+ "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "چت، تماس‌های ویدیویی، اشتراک‌گذاری صفحه، جلسات آنلاین و کنفرانس وب – در مرورگر شما و با برنامه‌های موبایل.",
+ "You have not added any info yet" : "شما هنوز هیچ اطلاعاتی اضافه نکرده اید",
+ "{user} has not added any info yet" : "{user} هنوز هیچ اطلاعاتی اضافه نکرده است",
+ "Error opening the user status modal, try hard refreshing the page" : "خطا در باز کردن مودال وضعیت کاربر، سعی کنید صفحه را به شدت تازه‌سازی کنید",
"Edit Profile" : "ویرایش نمایه",
- "The headline and about sections will show up here" : "The headline and about sections will show up here",
- "Error loading message template: {error}" : "خطا در بارگذاری قالب پیام : {error}",
+ "The headline and about sections will show up here" : "بخش‌های سربرگ و درباره در اینجا نمایش داده خواهند شد",
"Very weak password" : "رمز عبور بسیار ضعیف",
"Weak password" : "رمز عبور ضعیف",
"So-so password" : "رمز عبور متوسط",
@@ -346,10 +509,14 @@
"Profile not found" : "نمایه، یافت نشد",
"The profile does not exist." : "این نمایه وجود ندارد.",
"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "فایلها و فهرست های داده های شما قابل از اینترنت قابل دسترسی هستند، چونکه فایل htacces. کار نمی کند.",
- "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>.",
+ "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "برای اطلاعات در مورد نحوه پیکربندی صحیح سرور خود، لطفاً <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">مستندات</a> را مشاهده کنید.",
+ "<strong>Create an admin account</strong>" : "<strong>ایجاد یک حساب کاربری مدیر</strong>",
+ "New admin account name" : "نام حساب کاربری مدیر جدید",
+ "New admin password" : "گذرواژه مدیر جدید",
"Show password" : "نمایش گذرواژه",
- "Toggle password visibility" : "Toggle password visibility",
+ "Toggle password visibility" : "تغییر دید گذرواژه",
"Configure the database" : "پایگاه داده برنامه ریزی شدند",
- "Only %s is available." : "تنها %s موجود است."
+ "Only %s is available." : "تنها %s موجود است.",
+ "Database account" : "حساب پایگاه داده"
},"pluralForm" :"nplurals=2; plural=(n > 1);"
} \ No newline at end of file
diff --git a/core/l10n/fi.js b/core/l10n/fi.js
index 2eb4ca11cea..372d92123d3 100644
--- a/core/l10n/fi.js
+++ b/core/l10n/fi.js
@@ -46,17 +46,17 @@ OC.L10N.register(
"No translation provider available" : "Käännöksen palveluntarjoaja ei ole saatavilla",
"Could not detect language" : "Kielen havaitseminen ei onnistunut",
"Unable to translate" : "Kääntäminen ei onnistu",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Korjausvaihe:",
+ "Repair info:" : "Korjaustiedot:",
+ "Repair warning:" : "Korjausvaroitus:",
+ "Repair error:" : "Korjausvirhe:",
"Nextcloud Server" : "Nextcloud-palvelin",
"Some of your link shares have been removed" : "Jotkin linkkijakosi on poistettu",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Tietoturvaongelman vuoksi jouduimme poistaa joitakin linkkijakojasi. Lue lisätietoja linkin kautta.",
"The account limit of this instance is reached." : "Tämän instanssin tiliraja on täynnä.",
"Learn more ↗" : "Lue lisää ↗",
"Preparing update" : "Valmistellaan päivitystä",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Korjausvaihe:",
- "Repair info:" : "Korjaustiedot:",
- "Repair warning:" : "Korjausvaroitus:",
- "Repair error:" : "Korjausvirhe:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Käytä komentorivipäivitintä, koska päivitys selainkäyttöliittymällä on estetty config.php-asetustiedostossa.",
"Turned on maintenance mode" : "Siirrytty huoltotilaan",
"Turned off maintenance mode" : "Poistuttu huoltotilasta",
@@ -73,8 +73,96 @@ OC.L10N.register(
"%s (incompatible)" : "%s (ei yhteensopiva)",
"The following apps have been disabled: %s" : "Seuraavat sovellukset on poistettu käytöstä: %s",
"Already up to date" : "Kaikki on jo ajan tasalla",
+ "TrueType Font Collection" : "TrueType-fonttikokoelma",
+ "Gzip archive" : "Gzip-arkisto",
+ "Adobe Illustrator document" : "Adobe Illustrator -asiakirja",
+ "Java source code" : "Java-lähdekoodi ",
+ "JavaScript source code" : "JavaScript-lähdekoodi",
+ "JSON document" : "JSON-dokumentti",
+ "Microsoft Access database" : "Microsoft Access -tietokanta",
+ "Microsoft OneNote document" : "Microsoft OneNote -asiakirja",
+ "Microsoft Word document" : "Microsoft Word -asiakirja",
"Unknown" : "Tuntematon",
+ "PDF document" : "PDF-asiakirja",
+ "PostScript document" : "PostScript-asiakirja",
+ "Android package" : "Android-paketti",
+ "Lotus Word Pro document" : "Lotus Word Pro -asiakirja",
+ "Excel spreadsheet" : "Excel-taulukko",
+ "Excel add-in" : "Excel-lisäosa",
+ "Excel spreadsheet template" : "Excel-taulukkopohja",
+ "Outlook Message" : "Outlook-viesti",
+ "PowerPoint presentation" : "PowerPoint-esitys",
+ "PowerPoint add-in" : "PowerPoint-lisäosa",
+ "PowerPoint presentation template" : "PowerPoint-esityspohja",
+ "Word document" : "Word-asiakirja",
+ "ODG drawing" : "ODG-piirros",
+ "ODG template" : "ODG-mallipohja",
+ "ODP presentation" : "ODP-esitys",
+ "ODP template" : "ODP-mallipohja",
+ "ODS spreadsheet" : "ODS-taulukko",
+ "ODS template" : "ODS-mallipohja",
+ "ODT document" : "ODT-asiakirja",
+ "ODT template" : "ODT-mallipohja",
+ "PowerPoint 2007 presentation" : "PowerPoint 2007 -esitys",
+ "Excel 2007 spreadsheet" : "Excel 2007 -taulukko",
+ "Word 2007 document" : "Word 2007 -asiakirja",
+ "Microsoft Visio document" : "Microsoft Visio -asiakirja",
+ "WordPerfect document" : "WordPerfect-asiakirja",
+ "7-zip archive" : "7-zip-arkisto",
+ "Bzip2 archive" : "Bzip2-arkisto",
+ "Debian package" : "Debian-paketti",
+ "FictionBook document" : "FictionBook-asiakirja",
+ "Unknown font" : "Tuntematon fontti",
+ "Krita document" : "Krita-asiakirja",
+ "Windows Installer package" : "Windows Installer -paketti",
+ "Perl script" : "Perl-skripti ",
+ "PHP script" : "PHP-skripti",
+ "Tar archive" : "Tar-arkisto",
+ "XML document" : "XML-asiakirja",
+ "YAML document" : "YAML-asiakirja",
+ "Zip archive" : "Zip-arkisto",
+ "AAC audio" : "AAC-ääni",
+ "FLAC audio" : "FLAC-ääni",
+ "MPEG-4 audio" : "MPEG-4-ääni",
+ "MP3 audio" : "MP3-ääni",
+ "Ogg audio" : "Ogg-ääni",
+ "WebM audio" : "WebM-ääni",
+ "Windows BMP image" : "Windows BMP -kuva",
+ "EMF image" : "EMF-kuva",
+ "GIF image" : "GIF-kuva",
+ "HEIC image" : "HEIC-kuva",
+ "HEIF image" : "HEIF-kuva",
+ "JPEG-2000 JP2 image" : "JPEG-2000 JP2 -kuva",
+ "JPEG image" : "JPEG-kuva",
"PNG image" : "PNG-kuva",
+ "SVG image" : "SVG-kuva",
+ "Truevision Targa image" : "Truevision Targa -kuva",
+ "TIFF image" : "TIFF-kuva",
+ "WebP image" : "WebP-kuva",
+ "Windows Icon" : "Windows-kuvake",
+ "Email message" : "Sähköpostiviesti",
+ "VCS/ICS calendar" : "VCS/ICS-kalenteri",
+ "CSS stylesheet" : "CSS-tyylisivu",
+ "CSV document" : "CSV-asiakirja",
+ "HTML document" : "HTML-asiakirja",
+ "Markdown document" : "Markdown-asiakirja",
+ "Electronic business card" : "Sähköinen käyntikortti",
+ "C++ source code" : "C++-lähdekoodi",
+ "LDIF address book" : "LDIF-osoitekirja",
+ "NFO document" : "NFO-asiakirja",
+ "PHP source" : "PHP-lähde",
+ "Python script" : "Python-skripti",
+ "ReStructuredText document" : "ReStructuredText-asiakirja",
+ "3GPP multimedia file" : "3GPP-multimediatiedosto",
+ "MPEG video" : "MPEG-video",
+ "MPEG-4 video" : "MPEG-4-video",
+ "Ogg video" : "Ogg-video",
+ "QuickTime video" : "QuickTime-video",
+ "WebM video" : "WebM-video",
+ "Flash video" : "Flash-video",
+ "Matroska video" : "Matroska-video",
+ "Windows Media video" : "Windows Media -video",
+ "AVI video" : "AVI-video",
"Error occurred while checking server setup" : "Virhe palvelimen määrityksiä tarkistaessa",
"For more details see the {linkstart}documentation ↗{linkend}." : "Lue lisätietoja {linkstart}dokumentaatiosta ↗{linkend}.",
"unknown text" : "tuntematon teksti",
@@ -199,6 +287,9 @@ OC.L10N.register(
"Login form is disabled." : "Kirjautumislomake on poistettu käytöstä.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloudin kirjautumislomake on poistettu käytöstä. Käytä toista kirjautumistapaa tai ota yhteys ylläpitoon.",
"More actions" : "Lisää toimintoja",
+ "User menu" : "Käyttäjävalikko",
+ "Set public name" : "Aseta julkinen nimi",
+ "Change public name" : "Vaihda julkinen nimi",
"Password is too weak" : "Salasana on liian heikko",
"Password is weak" : "Salasana on heikko",
"Password is average" : "Salasana on keskiverto",
@@ -206,6 +297,8 @@ OC.L10N.register(
"Password is very strong" : "Salasana on hyvin vahva",
"Password is extremely strong" : "Salasana on erittäin vahva",
"Unknown password strength" : "Tuntematon salasanan vahvuus",
+ "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "Datahakemistosi ja tiedostosi ovat mitä luultavimmin muiden nähtävissä Internetistä, koska <code>.htaccess</code>-tiedosto ei toimi.",
+ "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "Lisätietoja oikeaoppisesta palvelimen määrityksestä on saatavilla {linkStart}dokumentaatiossa{linkEnd}",
"Security warning" : "Turvallisuusvaroitus",
"Create administration account" : "Luo ylläpitäjätili",
"Administration account name" : "Ylläpitäjätilin nimi",
@@ -287,9 +380,10 @@ OC.L10N.register(
"Admin" : "Ylläpito",
"Help" : "Ohje",
"Access forbidden" : "Pääsy estetty",
+ "You are not allowed to access this page." : "Oikeutesi eivät riitä tämän sivun käyttämiseksi.",
+ "Back to %s" : "Takaisin kohtaan %s",
"Page not found" : "Sivua ei löytynyt",
"The page could not be found on the server or you may not be allowed to view it." : "Sivua ei löytynyt palvelimelta, tai sinulla ei ole oikeutta nähdä sitä.",
- "Back to %s" : "Takaisin kohtaan %s",
"Too many requests" : "Liian monta pyyntöä",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Verkostasi tehtiin liian monta pyyntöä. Yritä myöhemmin uudelleen tai ole yhteydessä ylläpitäjään, jos tämä on mielestäsi virhe.",
"Error" : "Virhe",
@@ -361,15 +455,11 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Tämä %s-instanssi on parhaillaan huoltotilassa, huollossa saattaa kestää hetki.",
"This page will refresh itself when the instance is available again." : "Tämä sivu päivittyy itsestään, kun instanssi on jälleen käytettävissä.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Ota yhteys järjestelmän ylläpitäjään, jos tämä viesti ilmenee uudelleen tai odottamatta.",
- "Currently open" : "Parhaillaan avoinna",
- "Login with username or email" : "Kirjaudu käyttäjätunnuksella tai sähköpostiosoitteella",
- "Login with username" : "Kirjaudu käyttäjätunnuksella",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Keskustelu, videopuhelut, näytön jako, verkkotapaamiset ja web-konferenssit - selaimessasi ja puhelinsovelluksilla.",
"You have not added any info yet" : "Et ole lisännyt tietoja vielä",
"{user} has not added any info yet" : "{user} ei ole lisännyt tietoja vielä",
"Edit Profile" : "Muokkaa profiilia",
"The headline and about sections will show up here" : "Otsikko ja listätieto-osiot näkyvät tässä",
- "Error loading message template: {error}" : "Virhe ladatessa viestipohjaa: {error}",
"Very weak password" : "Erittäin heikko salasana",
"Weak password" : "Heikko salasana",
"So-so password" : "Kohtalainen salasana",
diff --git a/core/l10n/fi.json b/core/l10n/fi.json
index ebee2d7dc19..df8369cc87a 100644
--- a/core/l10n/fi.json
+++ b/core/l10n/fi.json
@@ -44,17 +44,17 @@
"No translation provider available" : "Käännöksen palveluntarjoaja ei ole saatavilla",
"Could not detect language" : "Kielen havaitseminen ei onnistunut",
"Unable to translate" : "Kääntäminen ei onnistu",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Korjausvaihe:",
+ "Repair info:" : "Korjaustiedot:",
+ "Repair warning:" : "Korjausvaroitus:",
+ "Repair error:" : "Korjausvirhe:",
"Nextcloud Server" : "Nextcloud-palvelin",
"Some of your link shares have been removed" : "Jotkin linkkijakosi on poistettu",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Tietoturvaongelman vuoksi jouduimme poistaa joitakin linkkijakojasi. Lue lisätietoja linkin kautta.",
"The account limit of this instance is reached." : "Tämän instanssin tiliraja on täynnä.",
"Learn more ↗" : "Lue lisää ↗",
"Preparing update" : "Valmistellaan päivitystä",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Korjausvaihe:",
- "Repair info:" : "Korjaustiedot:",
- "Repair warning:" : "Korjausvaroitus:",
- "Repair error:" : "Korjausvirhe:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Käytä komentorivipäivitintä, koska päivitys selainkäyttöliittymällä on estetty config.php-asetustiedostossa.",
"Turned on maintenance mode" : "Siirrytty huoltotilaan",
"Turned off maintenance mode" : "Poistuttu huoltotilasta",
@@ -71,8 +71,96 @@
"%s (incompatible)" : "%s (ei yhteensopiva)",
"The following apps have been disabled: %s" : "Seuraavat sovellukset on poistettu käytöstä: %s",
"Already up to date" : "Kaikki on jo ajan tasalla",
+ "TrueType Font Collection" : "TrueType-fonttikokoelma",
+ "Gzip archive" : "Gzip-arkisto",
+ "Adobe Illustrator document" : "Adobe Illustrator -asiakirja",
+ "Java source code" : "Java-lähdekoodi ",
+ "JavaScript source code" : "JavaScript-lähdekoodi",
+ "JSON document" : "JSON-dokumentti",
+ "Microsoft Access database" : "Microsoft Access -tietokanta",
+ "Microsoft OneNote document" : "Microsoft OneNote -asiakirja",
+ "Microsoft Word document" : "Microsoft Word -asiakirja",
"Unknown" : "Tuntematon",
+ "PDF document" : "PDF-asiakirja",
+ "PostScript document" : "PostScript-asiakirja",
+ "Android package" : "Android-paketti",
+ "Lotus Word Pro document" : "Lotus Word Pro -asiakirja",
+ "Excel spreadsheet" : "Excel-taulukko",
+ "Excel add-in" : "Excel-lisäosa",
+ "Excel spreadsheet template" : "Excel-taulukkopohja",
+ "Outlook Message" : "Outlook-viesti",
+ "PowerPoint presentation" : "PowerPoint-esitys",
+ "PowerPoint add-in" : "PowerPoint-lisäosa",
+ "PowerPoint presentation template" : "PowerPoint-esityspohja",
+ "Word document" : "Word-asiakirja",
+ "ODG drawing" : "ODG-piirros",
+ "ODG template" : "ODG-mallipohja",
+ "ODP presentation" : "ODP-esitys",
+ "ODP template" : "ODP-mallipohja",
+ "ODS spreadsheet" : "ODS-taulukko",
+ "ODS template" : "ODS-mallipohja",
+ "ODT document" : "ODT-asiakirja",
+ "ODT template" : "ODT-mallipohja",
+ "PowerPoint 2007 presentation" : "PowerPoint 2007 -esitys",
+ "Excel 2007 spreadsheet" : "Excel 2007 -taulukko",
+ "Word 2007 document" : "Word 2007 -asiakirja",
+ "Microsoft Visio document" : "Microsoft Visio -asiakirja",
+ "WordPerfect document" : "WordPerfect-asiakirja",
+ "7-zip archive" : "7-zip-arkisto",
+ "Bzip2 archive" : "Bzip2-arkisto",
+ "Debian package" : "Debian-paketti",
+ "FictionBook document" : "FictionBook-asiakirja",
+ "Unknown font" : "Tuntematon fontti",
+ "Krita document" : "Krita-asiakirja",
+ "Windows Installer package" : "Windows Installer -paketti",
+ "Perl script" : "Perl-skripti ",
+ "PHP script" : "PHP-skripti",
+ "Tar archive" : "Tar-arkisto",
+ "XML document" : "XML-asiakirja",
+ "YAML document" : "YAML-asiakirja",
+ "Zip archive" : "Zip-arkisto",
+ "AAC audio" : "AAC-ääni",
+ "FLAC audio" : "FLAC-ääni",
+ "MPEG-4 audio" : "MPEG-4-ääni",
+ "MP3 audio" : "MP3-ääni",
+ "Ogg audio" : "Ogg-ääni",
+ "WebM audio" : "WebM-ääni",
+ "Windows BMP image" : "Windows BMP -kuva",
+ "EMF image" : "EMF-kuva",
+ "GIF image" : "GIF-kuva",
+ "HEIC image" : "HEIC-kuva",
+ "HEIF image" : "HEIF-kuva",
+ "JPEG-2000 JP2 image" : "JPEG-2000 JP2 -kuva",
+ "JPEG image" : "JPEG-kuva",
"PNG image" : "PNG-kuva",
+ "SVG image" : "SVG-kuva",
+ "Truevision Targa image" : "Truevision Targa -kuva",
+ "TIFF image" : "TIFF-kuva",
+ "WebP image" : "WebP-kuva",
+ "Windows Icon" : "Windows-kuvake",
+ "Email message" : "Sähköpostiviesti",
+ "VCS/ICS calendar" : "VCS/ICS-kalenteri",
+ "CSS stylesheet" : "CSS-tyylisivu",
+ "CSV document" : "CSV-asiakirja",
+ "HTML document" : "HTML-asiakirja",
+ "Markdown document" : "Markdown-asiakirja",
+ "Electronic business card" : "Sähköinen käyntikortti",
+ "C++ source code" : "C++-lähdekoodi",
+ "LDIF address book" : "LDIF-osoitekirja",
+ "NFO document" : "NFO-asiakirja",
+ "PHP source" : "PHP-lähde",
+ "Python script" : "Python-skripti",
+ "ReStructuredText document" : "ReStructuredText-asiakirja",
+ "3GPP multimedia file" : "3GPP-multimediatiedosto",
+ "MPEG video" : "MPEG-video",
+ "MPEG-4 video" : "MPEG-4-video",
+ "Ogg video" : "Ogg-video",
+ "QuickTime video" : "QuickTime-video",
+ "WebM video" : "WebM-video",
+ "Flash video" : "Flash-video",
+ "Matroska video" : "Matroska-video",
+ "Windows Media video" : "Windows Media -video",
+ "AVI video" : "AVI-video",
"Error occurred while checking server setup" : "Virhe palvelimen määrityksiä tarkistaessa",
"For more details see the {linkstart}documentation ↗{linkend}." : "Lue lisätietoja {linkstart}dokumentaatiosta ↗{linkend}.",
"unknown text" : "tuntematon teksti",
@@ -197,6 +285,9 @@
"Login form is disabled." : "Kirjautumislomake on poistettu käytöstä.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloudin kirjautumislomake on poistettu käytöstä. Käytä toista kirjautumistapaa tai ota yhteys ylläpitoon.",
"More actions" : "Lisää toimintoja",
+ "User menu" : "Käyttäjävalikko",
+ "Set public name" : "Aseta julkinen nimi",
+ "Change public name" : "Vaihda julkinen nimi",
"Password is too weak" : "Salasana on liian heikko",
"Password is weak" : "Salasana on heikko",
"Password is average" : "Salasana on keskiverto",
@@ -204,6 +295,8 @@
"Password is very strong" : "Salasana on hyvin vahva",
"Password is extremely strong" : "Salasana on erittäin vahva",
"Unknown password strength" : "Tuntematon salasanan vahvuus",
+ "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "Datahakemistosi ja tiedostosi ovat mitä luultavimmin muiden nähtävissä Internetistä, koska <code>.htaccess</code>-tiedosto ei toimi.",
+ "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "Lisätietoja oikeaoppisesta palvelimen määrityksestä on saatavilla {linkStart}dokumentaatiossa{linkEnd}",
"Security warning" : "Turvallisuusvaroitus",
"Create administration account" : "Luo ylläpitäjätili",
"Administration account name" : "Ylläpitäjätilin nimi",
@@ -285,9 +378,10 @@
"Admin" : "Ylläpito",
"Help" : "Ohje",
"Access forbidden" : "Pääsy estetty",
+ "You are not allowed to access this page." : "Oikeutesi eivät riitä tämän sivun käyttämiseksi.",
+ "Back to %s" : "Takaisin kohtaan %s",
"Page not found" : "Sivua ei löytynyt",
"The page could not be found on the server or you may not be allowed to view it." : "Sivua ei löytynyt palvelimelta, tai sinulla ei ole oikeutta nähdä sitä.",
- "Back to %s" : "Takaisin kohtaan %s",
"Too many requests" : "Liian monta pyyntöä",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Verkostasi tehtiin liian monta pyyntöä. Yritä myöhemmin uudelleen tai ole yhteydessä ylläpitäjään, jos tämä on mielestäsi virhe.",
"Error" : "Virhe",
@@ -359,15 +453,11 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Tämä %s-instanssi on parhaillaan huoltotilassa, huollossa saattaa kestää hetki.",
"This page will refresh itself when the instance is available again." : "Tämä sivu päivittyy itsestään, kun instanssi on jälleen käytettävissä.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Ota yhteys järjestelmän ylläpitäjään, jos tämä viesti ilmenee uudelleen tai odottamatta.",
- "Currently open" : "Parhaillaan avoinna",
- "Login with username or email" : "Kirjaudu käyttäjätunnuksella tai sähköpostiosoitteella",
- "Login with username" : "Kirjaudu käyttäjätunnuksella",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Keskustelu, videopuhelut, näytön jako, verkkotapaamiset ja web-konferenssit - selaimessasi ja puhelinsovelluksilla.",
"You have not added any info yet" : "Et ole lisännyt tietoja vielä",
"{user} has not added any info yet" : "{user} ei ole lisännyt tietoja vielä",
"Edit Profile" : "Muokkaa profiilia",
"The headline and about sections will show up here" : "Otsikko ja listätieto-osiot näkyvät tässä",
- "Error loading message template: {error}" : "Virhe ladatessa viestipohjaa: {error}",
"Very weak password" : "Erittäin heikko salasana",
"Weak password" : "Heikko salasana",
"So-so password" : "Kohtalainen salasana",
diff --git a/core/l10n/fr.js b/core/l10n/fr.js
index f80e089f5f6..4c40e12ee10 100644
--- a/core/l10n/fr.js
+++ b/core/l10n/fr.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Tâche non trouvée",
"Internal error" : "Erreur interne",
"Not found" : "Non trouvé",
+ "Node is locked" : "Le noeud est verrouillé",
"Bad request" : "Requête erronée",
"Requested task type does not exist" : "Le type de tâche demandé n’existe pas",
"Necessary language model provider is not available" : "Le fournisseur de modèle de langage nécessaire n’est pas disponible",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Aucun fournisseur de traduction n’est disponible",
"Could not detect language" : "Impossible de détecter la langue",
"Unable to translate" : "Impossible de traduire",
+ "[%d / %d]: %s" : "[%d / %d] : %s",
+ "Repair step:" : "Étape de réparation :",
+ "Repair info:" : "Informations de réparation :",
+ "Repair warning:" : "Avertissement de réparation :",
+ "Repair error:" : "Erreur de réparation :",
"Nextcloud Server" : "Serveur Nextcloud",
"Some of your link shares have been removed" : "Certains de vos liens partagés ont été supprimés.",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "En raison d’une faille de sécurité, nous avons supprimé certains de vos liens partagés. Consultez le lien ci-dessus pour plus d’informations.",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Saisissez votre clé de licence dans l’application Support afin d’augmenter la limite de comptes. Cela vous donne également tous les avantages supplémentaires que Nextcloud Enterprise offre et est fortement recommandé pour l’exploitation dans les entreprises.",
"Learn more ↗" : " En savoir plus ↗",
"Preparing update" : "Préparation de la mise à jour",
- "[%d / %d]: %s" : "[%d / %d] : %s",
- "Repair step:" : "Étape de réparation :",
- "Repair info:" : "Informations de réparation :",
- "Repair warning:" : "Avertissement de réparation :",
- "Repair error:" : "Erreur de réparation :",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Veuillez utiliser la mise à jour en ligne de commande, car la mise à jour via le navigateur est désactivée dans votre fichier config.php.",
"Turned on maintenance mode" : "Mode de maintenance activé",
"Turned off maintenance mode" : "Mode de maintenance désactivé",
@@ -80,8 +81,125 @@ OC.L10N.register(
"%s (incompatible)" : "%s (incompatible)",
"The following apps have been disabled: %s" : "Les applications suivantes ont été désactivées : %s",
"Already up to date" : "Déjà à jour",
+ "Windows Command Script" : "Script de commande Windows",
+ "Electronic book document" : "Livre électronique",
+ "TrueType Font Collection" : "Collection de police TrueType",
+ "Web Open Font Format" : "Format Web Open Font",
+ "GPX geographic data" : "Donnée géographique GPX",
+ "Gzip archive" : "Archive Gzip",
+ "Adobe Illustrator document" : "Document Adobe Illustrator",
+ "Java source code" : "Code source Java",
+ "JavaScript source code" : "Code source Javascript",
+ "JSON document" : "Document JSON",
+ "Microsoft Access database" : "Base de données Microsoft Access",
+ "Microsoft OneNote document" : "Document Microsoft One Note",
+ "Microsoft Word document" : "Document Microsoft Word",
"Unknown" : "Inconnu",
+ "PDF document" : "Document PDF",
+ "PostScript document" : "Document PostScript",
+ "RSS summary" : "Résumé RSS",
+ "Android package" : "Paquet Android",
+ "KML geographic data" : "Donné géographique KML",
+ "KML geographic compressed data" : "Donnée géographique compressée KML",
+ "Lotus Word Pro document" : "Document Lotus Word Pro",
+ "Excel spreadsheet" : "Feuille de calcul Excel",
+ "Excel add-in" : "Complément Excel",
+ "Excel 2007 binary spreadsheet" : "Feuille de calcul binaire Excel 2007",
+ "Excel spreadsheet template" : "Modèle de feuille de calcul Excel",
+ "Outlook Message" : "Message Outlook",
+ "PowerPoint presentation" : "Présentation Powerpoint",
+ "PowerPoint add-in" : "Complément PowerPoint",
+ "PowerPoint presentation template" : "Modèle de présentation PowerPoint",
+ "Word document" : "Document Word",
+ "ODF formula" : "Formule ODF",
+ "ODG drawing" : "Dessin ODG",
+ "ODG drawing (Flat XML)" : "Dessin ODG (XML à plat)",
+ "ODG template" : "Modèle ODG",
+ "ODP presentation" : "Présentation ODP",
+ "ODP presentation (Flat XML)" : "Présentation ODP (XML à plat)",
+ "ODP template" : "Modèle ODP",
+ "ODS spreadsheet" : "Feuille de calcul ODS",
+ "ODS spreadsheet (Flat XML)" : "Feuille de calcul ODS (XML à plat)",
+ "ODS template" : "Modèle ODS",
+ "ODT document" : "Document ODT",
+ "ODT document (Flat XML)" : "Document ODF (XML à plat)",
+ "ODT template" : "Modèle ODT",
+ "PowerPoint 2007 presentation" : "Présentation PowerPoint 2007",
+ "PowerPoint 2007 show" : "Diaporama PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Modèle de présentation PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Feuille de calcul Excel 2007",
+ "Excel 2007 spreadsheet template" : "Modèle de feuille de calcul Excel 2007",
+ "Word 2007 document" : "Document Word 2007",
+ "Word 2007 document template" : "Modèle de document Word 2007",
+ "Microsoft Visio document" : "Document Microsoft Visio",
+ "WordPerfect document" : "Document WordPerfect",
+ "7-zip archive" : "Archive 7-zip",
+ "Blender scene" : "Scène Blender",
+ "Bzip2 archive" : "Archive Bzip2",
+ "Debian package" : "Paquet Debian",
+ "FictionBook document" : "Document FictionBook",
+ "Unknown font" : "Police de caractère inconnue",
+ "Krita document" : "Document Krita",
+ "Mobipocket e-book" : "Livre électronique Mobipocket",
+ "Windows Installer package" : "Paquet d'installation Windows",
+ "Perl script" : "Script Perl",
+ "PHP script" : "Script PHP",
+ "Tar archive" : "Archive Tar",
+ "XML document" : "Document XML",
+ "YAML document" : "Document YAML",
+ "Zip archive" : "Archive Zip",
+ "Zstandard archive" : "Archive Zstandard",
+ "AAC audio" : "Fichier audio AAC",
+ "FLAC audio" : "Fichier audio FLAC",
+ "MPEG-4 audio" : "Fichier audio MPEG-4",
+ "MP3 audio" : "Fichier audio MP3",
+ "Ogg audio" : "Fichier audio Ogg",
+ "RIFF/WAVe standard Audio" : "Fichier audio standard RIFF/WAVe",
+ "WebM audio" : "Fichier audio WebM",
+ "MP3 ShoutCast playlist" : "Liste de lecture ShoutCast MP3",
+ "Windows BMP image" : "Image Windows BMP",
+ "Better Portable Graphics image" : "Image Better Portable Graphics",
+ "EMF image" : "Image EMF",
+ "GIF image" : "Image GIF",
+ "HEIC image" : "Image HEIC",
+ "HEIF image" : "Image HEIF",
+ "JPEG-2000 JP2 image" : "Image JPEG-2000 JP2",
+ "JPEG image" : "Image JPEG",
"PNG image" : "Image PNG",
+ "SVG image" : "Image SVG",
+ "Truevision Targa image" : "Image Truevision Targa",
+ "TIFF image" : "Image TIFF",
+ "WebP image" : "Image WebP",
+ "Digital raw image" : "Image Digital raw",
+ "Windows Icon" : "Icône Windows",
+ "Email message" : "Courrier électronique",
+ "VCS/ICS calendar" : "Calendrier VCS/ICS",
+ "CSS stylesheet" : "Feuille de style CSS",
+ "CSV document" : "Document CSV",
+ "HTML document" : "Document HTML",
+ "Markdown document" : "Document Markdown",
+ "Org-mode file" : "Fichier Org-mode",
+ "Plain text document" : "Document texte brut",
+ "Rich Text document" : "Document texte enrichi",
+ "Electronic business card" : "Carte de visite électronique",
+ "C++ source code" : "Code source C++",
+ "LDIF address book" : "Carnet d'adresses LDIF",
+ "NFO document" : "Document NFO",
+ "PHP source" : "Code source PHP",
+ "Python script" : "Script Python",
+ "ReStructuredText document" : "Document ReStructuredText",
+ "3GPP multimedia file" : "Fichier multimédia 3GPP",
+ "MPEG video" : "Vidéo MPEG",
+ "DV video" : "Vidéo DV",
+ "MPEG-2 transport stream" : "Flux de transport MPEG-2",
+ "MPEG-4 video" : "Vidéo MPEG-4",
+ "Ogg video" : "Vidéo OGG",
+ "QuickTime video" : "Vidéo QuickTime",
+ "WebM video" : "Vidéo WebM",
+ "Flash video" : "Vidéo Flash",
+ "Matroska video" : "Vidéo Matroska",
+ "Windows Media video" : "Vidéo Windows Media",
+ "AVI video" : "Vidéo AVI",
"Error occurred while checking server setup" : "Une erreur s’est produite lors de la vérification de la configuration du serveur",
"For more details see the {linkstart}documentation ↗{linkend}." : "Pour plus d’information, voir la {linkstart}documentation ↗{linkend}.",
"unknown text" : "texte inconnu",
@@ -210,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "Le formulaire de connexion est désactivé.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Le formulaire de connexion Nextcloud est désactivé. Utilisez une autre option de connexion si disponible ou contactez votre administration.",
"More actions" : "Plus d'actions…",
+ "User menu" : "Menu utilisateur",
+ "You will be identified as {user} by the account owner." : "Vous serez identifié en tant que {user} par le propriétaire du compte.",
+ "You are currently not identified." : "Actuellement vous n'êtes pas identifié",
+ "Set public name" : "Définir le nom public",
+ "Change public name" : "Changer le nom public",
"Password is too weak" : "Mot de passe trop faible",
"Password is weak" : "Mot de passe faible",
"Password is average" : "Mot de passe moyen",
@@ -241,6 +364,7 @@ OC.L10N.register(
"Database tablespace" : "Espace de stockage de la base de données",
"Please specify the port number along with the host name (e.g., localhost:5432)." : "Veuillez spécifier le numéro du port avec le nom de l’hôte (par exemple, localhost:5432).",
"Database host" : "Hôte de la base de données",
+ "localhost" : "localhost",
"Installing …" : "Installation...",
"Install" : "Installer",
"Need help?" : "Besoin d’aide ?",
@@ -302,9 +426,10 @@ OC.L10N.register(
"Admin" : "Administration",
"Help" : "Aide",
"Access forbidden" : "Accès non autorisé",
+ "You are not allowed to access this page." : "Vous n’avez pas l'autorisation d'accéder à cette page.",
+ "Back to %s" : "Retour à %s",
"Page not found" : "Page non trouvée",
"The page could not be found on the server or you may not be allowed to view it." : "La page n'a pas pu être trouvée sur le serveur ou vous n'avez pas le droit de la visualiser.",
- "Back to %s" : "Retour à %s",
"Too many requests" : "Trop de requêtes",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Il y a trop de requêtes depuis votre réseau. Réessayez plus tard ou contactez votre administrateur s'il s'agit d'une erreur.",
"Error" : "Erreur",
@@ -380,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Cette instance de %s est en cours de maintenance, cela peut prendre du temps.",
"This page will refresh itself when the instance is available again." : "Cette page se rafraîchira d'elle-même lorsque le serveur sera de nouveau disponible.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Veuillez contacter votre administrateur système si ce message persiste ou apparaît de façon inattendue.",
- "Currently open" : "Actuellement ouvert",
- "Login with username or email" : "Se connecter avec un nom d’utilisateur ou un e-mail",
- "Login with username" : "Se connecter avec un nom d’utilisateur",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Discussions, appels vidéo, partage d’écran, réunions en ligne et conférences web – depuis votre navigateur et les applications mobiles.",
"You have not added any info yet" : "Vous n’avez pas ajouté d’informations pour le moment",
"{user} has not added any info yet" : "{user} n’a pas ajouté d’informations pour le moment",
"Error opening the user status modal, try hard refreshing the page" : "Erreur lors de l'ouverture du modal du statut de l'utilisateur, essayez d'actualiser la page",
"Edit Profile" : "Modifier le profil",
"The headline and about sections will show up here" : "Le titre et la section « À propos » apparaîtront ici",
- "Error loading message template: {error}" : "Erreur lors du chargement du modèle de message : {error}",
"Very weak password" : "Mot de passe très faible",
"Weak password" : "Mot de passe faible",
"So-so password" : "Mot de passe tout juste acceptable",
diff --git a/core/l10n/fr.json b/core/l10n/fr.json
index b748f4e004a..a48735787c2 100644
--- a/core/l10n/fr.json
+++ b/core/l10n/fr.json
@@ -42,6 +42,7 @@
"Task not found" : "Tâche non trouvée",
"Internal error" : "Erreur interne",
"Not found" : "Non trouvé",
+ "Node is locked" : "Le noeud est verrouillé",
"Bad request" : "Requête erronée",
"Requested task type does not exist" : "Le type de tâche demandé n’existe pas",
"Necessary language model provider is not available" : "Le fournisseur de modèle de langage nécessaire n’est pas disponible",
@@ -50,6 +51,11 @@
"No translation provider available" : "Aucun fournisseur de traduction n’est disponible",
"Could not detect language" : "Impossible de détecter la langue",
"Unable to translate" : "Impossible de traduire",
+ "[%d / %d]: %s" : "[%d / %d] : %s",
+ "Repair step:" : "Étape de réparation :",
+ "Repair info:" : "Informations de réparation :",
+ "Repair warning:" : "Avertissement de réparation :",
+ "Repair error:" : "Erreur de réparation :",
"Nextcloud Server" : "Serveur Nextcloud",
"Some of your link shares have been removed" : "Certains de vos liens partagés ont été supprimés.",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "En raison d’une faille de sécurité, nous avons supprimé certains de vos liens partagés. Consultez le lien ci-dessus pour plus d’informations.",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Saisissez votre clé de licence dans l’application Support afin d’augmenter la limite de comptes. Cela vous donne également tous les avantages supplémentaires que Nextcloud Enterprise offre et est fortement recommandé pour l’exploitation dans les entreprises.",
"Learn more ↗" : " En savoir plus ↗",
"Preparing update" : "Préparation de la mise à jour",
- "[%d / %d]: %s" : "[%d / %d] : %s",
- "Repair step:" : "Étape de réparation :",
- "Repair info:" : "Informations de réparation :",
- "Repair warning:" : "Avertissement de réparation :",
- "Repair error:" : "Erreur de réparation :",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Veuillez utiliser la mise à jour en ligne de commande, car la mise à jour via le navigateur est désactivée dans votre fichier config.php.",
"Turned on maintenance mode" : "Mode de maintenance activé",
"Turned off maintenance mode" : "Mode de maintenance désactivé",
@@ -78,8 +79,125 @@
"%s (incompatible)" : "%s (incompatible)",
"The following apps have been disabled: %s" : "Les applications suivantes ont été désactivées : %s",
"Already up to date" : "Déjà à jour",
+ "Windows Command Script" : "Script de commande Windows",
+ "Electronic book document" : "Livre électronique",
+ "TrueType Font Collection" : "Collection de police TrueType",
+ "Web Open Font Format" : "Format Web Open Font",
+ "GPX geographic data" : "Donnée géographique GPX",
+ "Gzip archive" : "Archive Gzip",
+ "Adobe Illustrator document" : "Document Adobe Illustrator",
+ "Java source code" : "Code source Java",
+ "JavaScript source code" : "Code source Javascript",
+ "JSON document" : "Document JSON",
+ "Microsoft Access database" : "Base de données Microsoft Access",
+ "Microsoft OneNote document" : "Document Microsoft One Note",
+ "Microsoft Word document" : "Document Microsoft Word",
"Unknown" : "Inconnu",
+ "PDF document" : "Document PDF",
+ "PostScript document" : "Document PostScript",
+ "RSS summary" : "Résumé RSS",
+ "Android package" : "Paquet Android",
+ "KML geographic data" : "Donné géographique KML",
+ "KML geographic compressed data" : "Donnée géographique compressée KML",
+ "Lotus Word Pro document" : "Document Lotus Word Pro",
+ "Excel spreadsheet" : "Feuille de calcul Excel",
+ "Excel add-in" : "Complément Excel",
+ "Excel 2007 binary spreadsheet" : "Feuille de calcul binaire Excel 2007",
+ "Excel spreadsheet template" : "Modèle de feuille de calcul Excel",
+ "Outlook Message" : "Message Outlook",
+ "PowerPoint presentation" : "Présentation Powerpoint",
+ "PowerPoint add-in" : "Complément PowerPoint",
+ "PowerPoint presentation template" : "Modèle de présentation PowerPoint",
+ "Word document" : "Document Word",
+ "ODF formula" : "Formule ODF",
+ "ODG drawing" : "Dessin ODG",
+ "ODG drawing (Flat XML)" : "Dessin ODG (XML à plat)",
+ "ODG template" : "Modèle ODG",
+ "ODP presentation" : "Présentation ODP",
+ "ODP presentation (Flat XML)" : "Présentation ODP (XML à plat)",
+ "ODP template" : "Modèle ODP",
+ "ODS spreadsheet" : "Feuille de calcul ODS",
+ "ODS spreadsheet (Flat XML)" : "Feuille de calcul ODS (XML à plat)",
+ "ODS template" : "Modèle ODS",
+ "ODT document" : "Document ODT",
+ "ODT document (Flat XML)" : "Document ODF (XML à plat)",
+ "ODT template" : "Modèle ODT",
+ "PowerPoint 2007 presentation" : "Présentation PowerPoint 2007",
+ "PowerPoint 2007 show" : "Diaporama PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Modèle de présentation PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Feuille de calcul Excel 2007",
+ "Excel 2007 spreadsheet template" : "Modèle de feuille de calcul Excel 2007",
+ "Word 2007 document" : "Document Word 2007",
+ "Word 2007 document template" : "Modèle de document Word 2007",
+ "Microsoft Visio document" : "Document Microsoft Visio",
+ "WordPerfect document" : "Document WordPerfect",
+ "7-zip archive" : "Archive 7-zip",
+ "Blender scene" : "Scène Blender",
+ "Bzip2 archive" : "Archive Bzip2",
+ "Debian package" : "Paquet Debian",
+ "FictionBook document" : "Document FictionBook",
+ "Unknown font" : "Police de caractère inconnue",
+ "Krita document" : "Document Krita",
+ "Mobipocket e-book" : "Livre électronique Mobipocket",
+ "Windows Installer package" : "Paquet d'installation Windows",
+ "Perl script" : "Script Perl",
+ "PHP script" : "Script PHP",
+ "Tar archive" : "Archive Tar",
+ "XML document" : "Document XML",
+ "YAML document" : "Document YAML",
+ "Zip archive" : "Archive Zip",
+ "Zstandard archive" : "Archive Zstandard",
+ "AAC audio" : "Fichier audio AAC",
+ "FLAC audio" : "Fichier audio FLAC",
+ "MPEG-4 audio" : "Fichier audio MPEG-4",
+ "MP3 audio" : "Fichier audio MP3",
+ "Ogg audio" : "Fichier audio Ogg",
+ "RIFF/WAVe standard Audio" : "Fichier audio standard RIFF/WAVe",
+ "WebM audio" : "Fichier audio WebM",
+ "MP3 ShoutCast playlist" : "Liste de lecture ShoutCast MP3",
+ "Windows BMP image" : "Image Windows BMP",
+ "Better Portable Graphics image" : "Image Better Portable Graphics",
+ "EMF image" : "Image EMF",
+ "GIF image" : "Image GIF",
+ "HEIC image" : "Image HEIC",
+ "HEIF image" : "Image HEIF",
+ "JPEG-2000 JP2 image" : "Image JPEG-2000 JP2",
+ "JPEG image" : "Image JPEG",
"PNG image" : "Image PNG",
+ "SVG image" : "Image SVG",
+ "Truevision Targa image" : "Image Truevision Targa",
+ "TIFF image" : "Image TIFF",
+ "WebP image" : "Image WebP",
+ "Digital raw image" : "Image Digital raw",
+ "Windows Icon" : "Icône Windows",
+ "Email message" : "Courrier électronique",
+ "VCS/ICS calendar" : "Calendrier VCS/ICS",
+ "CSS stylesheet" : "Feuille de style CSS",
+ "CSV document" : "Document CSV",
+ "HTML document" : "Document HTML",
+ "Markdown document" : "Document Markdown",
+ "Org-mode file" : "Fichier Org-mode",
+ "Plain text document" : "Document texte brut",
+ "Rich Text document" : "Document texte enrichi",
+ "Electronic business card" : "Carte de visite électronique",
+ "C++ source code" : "Code source C++",
+ "LDIF address book" : "Carnet d'adresses LDIF",
+ "NFO document" : "Document NFO",
+ "PHP source" : "Code source PHP",
+ "Python script" : "Script Python",
+ "ReStructuredText document" : "Document ReStructuredText",
+ "3GPP multimedia file" : "Fichier multimédia 3GPP",
+ "MPEG video" : "Vidéo MPEG",
+ "DV video" : "Vidéo DV",
+ "MPEG-2 transport stream" : "Flux de transport MPEG-2",
+ "MPEG-4 video" : "Vidéo MPEG-4",
+ "Ogg video" : "Vidéo OGG",
+ "QuickTime video" : "Vidéo QuickTime",
+ "WebM video" : "Vidéo WebM",
+ "Flash video" : "Vidéo Flash",
+ "Matroska video" : "Vidéo Matroska",
+ "Windows Media video" : "Vidéo Windows Media",
+ "AVI video" : "Vidéo AVI",
"Error occurred while checking server setup" : "Une erreur s’est produite lors de la vérification de la configuration du serveur",
"For more details see the {linkstart}documentation ↗{linkend}." : "Pour plus d’information, voir la {linkstart}documentation ↗{linkend}.",
"unknown text" : "texte inconnu",
@@ -208,6 +326,11 @@
"Login form is disabled." : "Le formulaire de connexion est désactivé.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Le formulaire de connexion Nextcloud est désactivé. Utilisez une autre option de connexion si disponible ou contactez votre administration.",
"More actions" : "Plus d'actions…",
+ "User menu" : "Menu utilisateur",
+ "You will be identified as {user} by the account owner." : "Vous serez identifié en tant que {user} par le propriétaire du compte.",
+ "You are currently not identified." : "Actuellement vous n'êtes pas identifié",
+ "Set public name" : "Définir le nom public",
+ "Change public name" : "Changer le nom public",
"Password is too weak" : "Mot de passe trop faible",
"Password is weak" : "Mot de passe faible",
"Password is average" : "Mot de passe moyen",
@@ -239,6 +362,7 @@
"Database tablespace" : "Espace de stockage de la base de données",
"Please specify the port number along with the host name (e.g., localhost:5432)." : "Veuillez spécifier le numéro du port avec le nom de l’hôte (par exemple, localhost:5432).",
"Database host" : "Hôte de la base de données",
+ "localhost" : "localhost",
"Installing …" : "Installation...",
"Install" : "Installer",
"Need help?" : "Besoin d’aide ?",
@@ -300,9 +424,10 @@
"Admin" : "Administration",
"Help" : "Aide",
"Access forbidden" : "Accès non autorisé",
+ "You are not allowed to access this page." : "Vous n’avez pas l'autorisation d'accéder à cette page.",
+ "Back to %s" : "Retour à %s",
"Page not found" : "Page non trouvée",
"The page could not be found on the server or you may not be allowed to view it." : "La page n'a pas pu être trouvée sur le serveur ou vous n'avez pas le droit de la visualiser.",
- "Back to %s" : "Retour à %s",
"Too many requests" : "Trop de requêtes",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Il y a trop de requêtes depuis votre réseau. Réessayez plus tard ou contactez votre administrateur s'il s'agit d'une erreur.",
"Error" : "Erreur",
@@ -378,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Cette instance de %s est en cours de maintenance, cela peut prendre du temps.",
"This page will refresh itself when the instance is available again." : "Cette page se rafraîchira d'elle-même lorsque le serveur sera de nouveau disponible.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Veuillez contacter votre administrateur système si ce message persiste ou apparaît de façon inattendue.",
- "Currently open" : "Actuellement ouvert",
- "Login with username or email" : "Se connecter avec un nom d’utilisateur ou un e-mail",
- "Login with username" : "Se connecter avec un nom d’utilisateur",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Discussions, appels vidéo, partage d’écran, réunions en ligne et conférences web – depuis votre navigateur et les applications mobiles.",
"You have not added any info yet" : "Vous n’avez pas ajouté d’informations pour le moment",
"{user} has not added any info yet" : "{user} n’a pas ajouté d’informations pour le moment",
"Error opening the user status modal, try hard refreshing the page" : "Erreur lors de l'ouverture du modal du statut de l'utilisateur, essayez d'actualiser la page",
"Edit Profile" : "Modifier le profil",
"The headline and about sections will show up here" : "Le titre et la section « À propos » apparaîtront ici",
- "Error loading message template: {error}" : "Erreur lors du chargement du modèle de message : {error}",
"Very weak password" : "Mot de passe très faible",
"Weak password" : "Mot de passe faible",
"So-so password" : "Mot de passe tout juste acceptable",
diff --git a/core/l10n/ga.js b/core/l10n/ga.js
index 155435c0d4f..e3e9f103da5 100644
--- a/core/l10n/ga.js
+++ b/core/l10n/ga.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Níor aimsíodh an tasc",
"Internal error" : "Earráid inmheánach",
"Not found" : "Ní bhfuarthas",
+ "Node is locked" : "Tá an nód faoi ghlas",
"Bad request" : "Drochiarratas",
"Requested task type does not exist" : "Níl an cineál taisc iarrtha ann",
"Necessary language model provider is not available" : "Níl soláthraí múnla teanga riachtanach ar fáil",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Níl aon soláthraí aistriúcháin ar fáil",
"Could not detect language" : "Níorbh fhéidir teanga a bhrath",
"Unable to translate" : "Ní féidir aistriú",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Céim deisiúcháin:",
+ "Repair info:" : "Eolas deisiúcháin:",
+ "Repair warning:" : "Rabhadh deisiúcháin:",
+ "Repair error:" : "Earráid deisiúcháin:",
"Nextcloud Server" : "Freastalaí Nextcloud",
"Some of your link shares have been removed" : "Baineadh cuid de do chuid naisc",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Mar gheall ar fhabht slándála bhí orainn roinnt de do naisc a roinnt. Féach ar an nasc le haghaidh tuilleadh eolais.",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Cuir isteach d'eochair síntiúis san aip tacaíochta chun teorainn an chuntais a mhéadú. Tugann sé seo freisin na buntáistí breise go léir a thairgeann Nextcloud Enterprise agus moltar go mór é don oibríocht i gcuideachtaí.",
"Learn more ↗" : "Tuilleadh eolais ↗",
"Preparing update" : "Nuashonrú a ullmhú",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Céim deisiúcháin:",
- "Repair info:" : "Eolas deisiúcháin:",
- "Repair warning:" : "Rabhadh deisiúcháin:",
- "Repair error:" : "Earráid deisiúcháin:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Bain úsáid as an nuashonróir líne ordaithe toisc go bhfuil nuashonrú trí bhrabhsálaí díchumasaithe i do config.php.",
"Turned on maintenance mode" : "Cuireadh modh cothabhála ar siúl",
"Turned off maintenance mode" : "Modh cothabhála múchta",
@@ -327,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "Tá an fhoirm logáil isteach díchumasaithe.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Tá foirm logáil isteach Nextcloud díchumasaithe. Úsáid rogha logáil isteach eile má tá sé ar fáil nó déan teagmháil le do lucht riaracháin.",
"More actions" : "Tuilleadh gníomhartha",
+ "User menu" : "Roghchlár úsáideora",
+ "You will be identified as {user} by the account owner." : "Aithneoidh úinéir an chuntais thú mar {user}.",
+ "You are currently not identified." : "Níl aitheantas tugtha duit faoi láthair.",
+ "Set public name" : "Socraigh ainm poiblí",
+ "Change public name" : "Athraigh ainm poiblí",
"Password is too weak" : "Tá pasfhocal ró-lag",
"Password is weak" : "Tá pasfhocal lag",
"Password is average" : "Is pasfhocal meánach",
@@ -420,9 +426,10 @@ OC.L10N.register(
"Admin" : "Riarachán",
"Help" : "Cabhrú",
"Access forbidden" : "Rochtain toirmiscthe",
+ "You are not allowed to access this page." : "Níl cead agat rochtain a fháil ar an leathanach seo.",
+ "Back to %s" : "Ar ais go dtí %s",
"Page not found" : "Ní bhfuarthas an leathanach",
"The page could not be found on the server or you may not be allowed to view it." : "Níorbh fhéidir an leathanach a fháil ar an bhfreastalaí nó b'fhéidir nach bhfuil cead agat é a fheiceáil.",
- "Back to %s" : "Ar ais go dtí %s",
"Too many requests" : "An iomarca iarratas",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Tháinig an iomarca iarratas ó do líonra. Bain triail eile as ar ball nó déan teagmháil le do riarthóir más earráid é seo.",
"Error" : "Earráid",
@@ -498,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Tá an cás %s seo i mód cothabhála faoi láthair, agus seans go dtógfaidh sé sin tamall.",
"This page will refresh itself when the instance is available again." : "Athnóidh an leathanach seo é féin nuair a bheidh an t-ásc ar fáil arís.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Déan teagmháil le riarthóir do chórais má leanann an teachtaireacht seo nó má thaispeánfar gan choinne.",
- "Currently open" : "Oscailte faoi láthair",
- "Login with username or email" : "Logáil isteach le hainm úsáideora nó ríomhphost",
- "Login with username" : "Logáil isteach leis an ainm úsáideora",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Comhrá, físghlaonna, comhroinnt scáileáin, cruinnithe ar líne agus comhdháil gréasáin – i do bhrabhsálaí agus le haipeanna móibíleacha.",
"You have not added any info yet" : "Níl aon fhaisnéis curtha agat fós",
"{user} has not added any info yet" : "Níor chuir {user} aon fhaisnéis leis fós",
"Error opening the user status modal, try hard refreshing the page" : "Earráid agus an modh stádas úsáideora á oscailt, déan iarracht an leathanach a athnuachan go dian",
"Edit Profile" : "Cuir Próifíl in Eagar",
"The headline and about sections will show up here" : "Taispeánfar an ceannlíne agus na hailt faoi anseo",
- "Error loading message template: {error}" : "Earráid agus teimpléad na teachtaireachta á lódáil: {error}",
"Very weak password" : "Pasfhocal an-lag",
"Weak password" : "Pasfhocal lag",
"So-so password" : "mar sin-sin pasfhocal",
diff --git a/core/l10n/ga.json b/core/l10n/ga.json
index b4855095364..750706690b9 100644
--- a/core/l10n/ga.json
+++ b/core/l10n/ga.json
@@ -42,6 +42,7 @@
"Task not found" : "Níor aimsíodh an tasc",
"Internal error" : "Earráid inmheánach",
"Not found" : "Ní bhfuarthas",
+ "Node is locked" : "Tá an nód faoi ghlas",
"Bad request" : "Drochiarratas",
"Requested task type does not exist" : "Níl an cineál taisc iarrtha ann",
"Necessary language model provider is not available" : "Níl soláthraí múnla teanga riachtanach ar fáil",
@@ -50,6 +51,11 @@
"No translation provider available" : "Níl aon soláthraí aistriúcháin ar fáil",
"Could not detect language" : "Níorbh fhéidir teanga a bhrath",
"Unable to translate" : "Ní féidir aistriú",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Céim deisiúcháin:",
+ "Repair info:" : "Eolas deisiúcháin:",
+ "Repair warning:" : "Rabhadh deisiúcháin:",
+ "Repair error:" : "Earráid deisiúcháin:",
"Nextcloud Server" : "Freastalaí Nextcloud",
"Some of your link shares have been removed" : "Baineadh cuid de do chuid naisc",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Mar gheall ar fhabht slándála bhí orainn roinnt de do naisc a roinnt. Féach ar an nasc le haghaidh tuilleadh eolais.",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Cuir isteach d'eochair síntiúis san aip tacaíochta chun teorainn an chuntais a mhéadú. Tugann sé seo freisin na buntáistí breise go léir a thairgeann Nextcloud Enterprise agus moltar go mór é don oibríocht i gcuideachtaí.",
"Learn more ↗" : "Tuilleadh eolais ↗",
"Preparing update" : "Nuashonrú a ullmhú",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Céim deisiúcháin:",
- "Repair info:" : "Eolas deisiúcháin:",
- "Repair warning:" : "Rabhadh deisiúcháin:",
- "Repair error:" : "Earráid deisiúcháin:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Bain úsáid as an nuashonróir líne ordaithe toisc go bhfuil nuashonrú trí bhrabhsálaí díchumasaithe i do config.php.",
"Turned on maintenance mode" : "Cuireadh modh cothabhála ar siúl",
"Turned off maintenance mode" : "Modh cothabhála múchta",
@@ -325,6 +326,11 @@
"Login form is disabled." : "Tá an fhoirm logáil isteach díchumasaithe.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Tá foirm logáil isteach Nextcloud díchumasaithe. Úsáid rogha logáil isteach eile má tá sé ar fáil nó déan teagmháil le do lucht riaracháin.",
"More actions" : "Tuilleadh gníomhartha",
+ "User menu" : "Roghchlár úsáideora",
+ "You will be identified as {user} by the account owner." : "Aithneoidh úinéir an chuntais thú mar {user}.",
+ "You are currently not identified." : "Níl aitheantas tugtha duit faoi láthair.",
+ "Set public name" : "Socraigh ainm poiblí",
+ "Change public name" : "Athraigh ainm poiblí",
"Password is too weak" : "Tá pasfhocal ró-lag",
"Password is weak" : "Tá pasfhocal lag",
"Password is average" : "Is pasfhocal meánach",
@@ -418,9 +424,10 @@
"Admin" : "Riarachán",
"Help" : "Cabhrú",
"Access forbidden" : "Rochtain toirmiscthe",
+ "You are not allowed to access this page." : "Níl cead agat rochtain a fháil ar an leathanach seo.",
+ "Back to %s" : "Ar ais go dtí %s",
"Page not found" : "Ní bhfuarthas an leathanach",
"The page could not be found on the server or you may not be allowed to view it." : "Níorbh fhéidir an leathanach a fháil ar an bhfreastalaí nó b'fhéidir nach bhfuil cead agat é a fheiceáil.",
- "Back to %s" : "Ar ais go dtí %s",
"Too many requests" : "An iomarca iarratas",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Tháinig an iomarca iarratas ó do líonra. Bain triail eile as ar ball nó déan teagmháil le do riarthóir más earráid é seo.",
"Error" : "Earráid",
@@ -496,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Tá an cás %s seo i mód cothabhála faoi láthair, agus seans go dtógfaidh sé sin tamall.",
"This page will refresh itself when the instance is available again." : "Athnóidh an leathanach seo é féin nuair a bheidh an t-ásc ar fáil arís.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Déan teagmháil le riarthóir do chórais má leanann an teachtaireacht seo nó má thaispeánfar gan choinne.",
- "Currently open" : "Oscailte faoi láthair",
- "Login with username or email" : "Logáil isteach le hainm úsáideora nó ríomhphost",
- "Login with username" : "Logáil isteach leis an ainm úsáideora",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Comhrá, físghlaonna, comhroinnt scáileáin, cruinnithe ar líne agus comhdháil gréasáin – i do bhrabhsálaí agus le haipeanna móibíleacha.",
"You have not added any info yet" : "Níl aon fhaisnéis curtha agat fós",
"{user} has not added any info yet" : "Níor chuir {user} aon fhaisnéis leis fós",
"Error opening the user status modal, try hard refreshing the page" : "Earráid agus an modh stádas úsáideora á oscailt, déan iarracht an leathanach a athnuachan go dian",
"Edit Profile" : "Cuir Próifíl in Eagar",
"The headline and about sections will show up here" : "Taispeánfar an ceannlíne agus na hailt faoi anseo",
- "Error loading message template: {error}" : "Earráid agus teimpléad na teachtaireachta á lódáil: {error}",
"Very weak password" : "Pasfhocal an-lag",
"Weak password" : "Pasfhocal lag",
"So-so password" : "mar sin-sin pasfhocal",
diff --git a/core/l10n/gl.js b/core/l10n/gl.js
index 3c6183f067f..6dcb3d53731 100644
--- a/core/l10n/gl.js
+++ b/core/l10n/gl.js
@@ -51,6 +51,11 @@ OC.L10N.register(
"No translation provider available" : "Non hai ningún provedor de tradución dispoñíbel",
"Could not detect language" : "Non foi posíbel detectar o idioma",
"Unable to translate" : "Non é posíbel traducir",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Paso do arranxo:",
+ "Repair info:" : "Información do arranxo:",
+ "Repair warning:" : "Advertencia de arranxo:",
+ "Repair error:" : "Erro do arranxo:",
"Nextcloud Server" : "Servidor de Nextcloud",
"Some of your link shares have been removed" : "Retiráronse algunhas das súas ligazóns para compartir",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Por mor dun fallo de seguranza tivemos que retirar algunhas das súas ligazóns para compartir. Vexa a ligazón para obter máis información.",
@@ -58,11 +63,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Introduza a súa chave de subscrición na aplicación de asistencia para aumentar o límite da conta. Isto tamén lle outorga todos os beneficios adicionais que ofrece Nextcloud Enterprise e é moi recomendábel para a operativa nas empresas.",
"Learn more ↗" : "Máis información ↗",
"Preparing update" : "Preparando a actualización",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Paso do arranxo:",
- "Repair info:" : "Información do arranxo:",
- "Repair warning:" : "Advertencia de arranxo:",
- "Repair error:" : "Erro do arranxo:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Use o actualizador da liña de ordes porque a actualización a través do navegador está desactivada no seu config.php.",
"Turned on maintenance mode" : "Modo de mantemento activado",
"Turned off maintenance mode" : "Modo de mantemento desactivado",
@@ -232,7 +232,7 @@ OC.L10N.register(
"Continue with this unsupported browser" : "Continuar con este navegador non compatíbel",
"Supported versions" : "Versións compatíbeis",
"Search {types} …" : "Buscando {types}…",
- "Choose {file}" : "Escoller {file}",
+ "Choose {file}" : "Escoller {file}",
"Choose" : "Escoller",
"Copy to {target}" : "Copiar en {target}",
"Copy" : "Copiar",
@@ -283,9 +283,9 @@ OC.L10N.register(
"Admin" : "Administración",
"Help" : "Axuda",
"Access forbidden" : "Acceso denegado",
+ "Back to %s" : "Volver a %s",
"Page not found" : "Non se atopou a páxina",
"The page could not be found on the server or you may not be allowed to view it." : "Non foi posíbel atopar a páxina no servidor ou é posíbel que non teña permiso para vela.",
- "Back to %s" : "Volver a %s",
"Too many requests" : "Demasiadas solicitudes",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Houbo demasiadas solicitudes da súa rede. Volva tentalo máis adiante ou póñase en contacto coa administración desta instancia se se trata dun erro.",
"Error" : "Erro",
@@ -361,16 +361,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Esta instancia de %s atopase en modo de mantemento, isto pode levar un anaco.",
"This page will refresh itself when the instance is available again." : "Esta páxina actualizarase automaticamente cando a instancia estea dispoñíbel de novo.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Póñase en contacto coa administración do sistema se persiste esta mensaxe ou se aparece de forma inesperada.",
- "Currently open" : "Aberto actualmente",
- "Login with username or email" : "Acceder co nome de usuario ou co correo-e",
- "Login with username" : "Acceder co nome de usuario",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Parolas, videochamadas, compartición de pantalla, xuntanzas en liña e conferencias web; no seu navegador e con aplicacións móbiles.",
"You have not added any info yet" : "Aínda non engadiu ningunha información",
"{user} has not added any info yet" : "{user} aínda non engadiu ningunha información",
"Error opening the user status modal, try hard refreshing the page" : "Produciuse un erro ao abrir a xanela modal de estado do usuario, tente forzar a actualización da páxina",
"Edit Profile" : "Editar o perfil",
"The headline and about sections will show up here" : "As seccións título e sobre aparecerán aquí",
- "Error loading message template: {error}" : "Produciuse un erro ao cargar o modelo da mensaxe: {error}",
"Very weak password" : "Contrasinal moi feble",
"Weak password" : "Contrasinal feble",
"So-so password" : "Contrasinal non moi aló",
diff --git a/core/l10n/gl.json b/core/l10n/gl.json
index 92d9f2767c4..a3c2e30ff40 100644
--- a/core/l10n/gl.json
+++ b/core/l10n/gl.json
@@ -49,6 +49,11 @@
"No translation provider available" : "Non hai ningún provedor de tradución dispoñíbel",
"Could not detect language" : "Non foi posíbel detectar o idioma",
"Unable to translate" : "Non é posíbel traducir",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Paso do arranxo:",
+ "Repair info:" : "Información do arranxo:",
+ "Repair warning:" : "Advertencia de arranxo:",
+ "Repair error:" : "Erro do arranxo:",
"Nextcloud Server" : "Servidor de Nextcloud",
"Some of your link shares have been removed" : "Retiráronse algunhas das súas ligazóns para compartir",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Por mor dun fallo de seguranza tivemos que retirar algunhas das súas ligazóns para compartir. Vexa a ligazón para obter máis información.",
@@ -56,11 +61,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Introduza a súa chave de subscrición na aplicación de asistencia para aumentar o límite da conta. Isto tamén lle outorga todos os beneficios adicionais que ofrece Nextcloud Enterprise e é moi recomendábel para a operativa nas empresas.",
"Learn more ↗" : "Máis información ↗",
"Preparing update" : "Preparando a actualización",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Paso do arranxo:",
- "Repair info:" : "Información do arranxo:",
- "Repair warning:" : "Advertencia de arranxo:",
- "Repair error:" : "Erro do arranxo:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Use o actualizador da liña de ordes porque a actualización a través do navegador está desactivada no seu config.php.",
"Turned on maintenance mode" : "Modo de mantemento activado",
"Turned off maintenance mode" : "Modo de mantemento desactivado",
@@ -230,7 +230,7 @@
"Continue with this unsupported browser" : "Continuar con este navegador non compatíbel",
"Supported versions" : "Versións compatíbeis",
"Search {types} …" : "Buscando {types}…",
- "Choose {file}" : "Escoller {file}",
+ "Choose {file}" : "Escoller {file}",
"Choose" : "Escoller",
"Copy to {target}" : "Copiar en {target}",
"Copy" : "Copiar",
@@ -281,9 +281,9 @@
"Admin" : "Administración",
"Help" : "Axuda",
"Access forbidden" : "Acceso denegado",
+ "Back to %s" : "Volver a %s",
"Page not found" : "Non se atopou a páxina",
"The page could not be found on the server or you may not be allowed to view it." : "Non foi posíbel atopar a páxina no servidor ou é posíbel que non teña permiso para vela.",
- "Back to %s" : "Volver a %s",
"Too many requests" : "Demasiadas solicitudes",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Houbo demasiadas solicitudes da súa rede. Volva tentalo máis adiante ou póñase en contacto coa administración desta instancia se se trata dun erro.",
"Error" : "Erro",
@@ -359,16 +359,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Esta instancia de %s atopase en modo de mantemento, isto pode levar un anaco.",
"This page will refresh itself when the instance is available again." : "Esta páxina actualizarase automaticamente cando a instancia estea dispoñíbel de novo.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Póñase en contacto coa administración do sistema se persiste esta mensaxe ou se aparece de forma inesperada.",
- "Currently open" : "Aberto actualmente",
- "Login with username or email" : "Acceder co nome de usuario ou co correo-e",
- "Login with username" : "Acceder co nome de usuario",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Parolas, videochamadas, compartición de pantalla, xuntanzas en liña e conferencias web; no seu navegador e con aplicacións móbiles.",
"You have not added any info yet" : "Aínda non engadiu ningunha información",
"{user} has not added any info yet" : "{user} aínda non engadiu ningunha información",
"Error opening the user status modal, try hard refreshing the page" : "Produciuse un erro ao abrir a xanela modal de estado do usuario, tente forzar a actualización da páxina",
"Edit Profile" : "Editar o perfil",
"The headline and about sections will show up here" : "As seccións título e sobre aparecerán aquí",
- "Error loading message template: {error}" : "Produciuse un erro ao cargar o modelo da mensaxe: {error}",
"Very weak password" : "Contrasinal moi feble",
"Weak password" : "Contrasinal feble",
"So-so password" : "Contrasinal non moi aló",
diff --git a/core/l10n/he.js b/core/l10n/he.js
index e82d54095f4..fcc83e110a5 100644
--- a/core/l10n/he.js
+++ b/core/l10n/he.js
@@ -35,16 +35,16 @@ OC.L10N.register(
"Reset your password" : "איפוס הססמה שלך",
"Internal error" : "שגיאה פנימית",
"Not found" : "לא נמצא",
- "Nextcloud Server" : "שרת Nextcloud",
- "Some of your link shares have been removed" : "חלק מקישורי השיתופים שלך הוסרו",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "עקב תקלת אבטחה נאלצנו להסיר חלק מקישורי השיתופים שלך. נא להיכנס לקישור לקבלת פרטים נוספים.",
- "Learn more ↗" : "מידע נוסף ↖ ",
- "Preparing update" : "מכין עדכון",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "שלב בתיקון:",
"Repair info:" : "פרטי תיקון:",
"Repair warning:" : "אזהרת תיקון:",
"Repair error:" : "שגיאת תיקון:",
+ "Nextcloud Server" : "שרת Nextcloud",
+ "Some of your link shares have been removed" : "חלק מקישורי השיתופים שלך הוסרו",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "עקב תקלת אבטחה נאלצנו להסיר חלק מקישורי השיתופים שלך. נא להיכנס לקישור לקבלת פרטים נוספים.",
+ "Learn more ↗" : "מידע נוסף ↖ ",
+ "Preparing update" : "מכין עדכון",
"Turned on maintenance mode" : "הפעלת מצב אחזקה",
"Turned off maintenance mode" : "כיבוי מצב אחזקה",
"Maintenance mode is kept active" : "מצב אחזקה נשמר פעיל",
@@ -194,11 +194,12 @@ OC.L10N.register(
"Collaborative tags" : "תגיות שיתופיות",
"No tags found" : "לא נמצאו תגים",
"Personal" : "אישי",
+ "Accounts" : "Accounts",
"Admin" : "מנהל",
"Help" : "עזרה",
"Access forbidden" : "הגישה נחסמה",
- "Page not found" : "העמוד לא נמצא",
"Back to %s" : "חזרה אל %s",
+ "Page not found" : "העמוד לא נמצא",
"Too many requests" : "יותר מדי בקשות",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "היו יותר מדי בקשות מהרשת שלך. נסה שוב מאוחר יותר, או צור קשר עם מנהל המערכת שלך אם זו שגיאה.",
"Error" : "שגיאה",
@@ -266,7 +267,6 @@ OC.L10N.register(
"This page will refresh itself when the instance is available again." : "עמוד זה ירענן את עצמו כאשר העותק ישוב להיות זמין.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "יש ליצור קשר עם מנהל המערכת אם הודעה שו נמשכת או מופיעה באופן בלתי צפוי. ",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "צ'אטים, שיחות וידאו, שיתוף מסך, פגישות מקוונות ועידת אינטרנט - בדפדפן ובאפליקציות סלולריות.",
- "Error loading message template: {error}" : "שגיאה בטעינת תבנית ההודעות: {error}",
"Very weak password" : "ססמה מאוד חלשה",
"Weak password" : "ססמה חלשה",
"So-so password" : "ססמה בינונית",
diff --git a/core/l10n/he.json b/core/l10n/he.json
index 3659d378fc8..4d1d6cd49d3 100644
--- a/core/l10n/he.json
+++ b/core/l10n/he.json
@@ -33,16 +33,16 @@
"Reset your password" : "איפוס הססמה שלך",
"Internal error" : "שגיאה פנימית",
"Not found" : "לא נמצא",
- "Nextcloud Server" : "שרת Nextcloud",
- "Some of your link shares have been removed" : "חלק מקישורי השיתופים שלך הוסרו",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "עקב תקלת אבטחה נאלצנו להסיר חלק מקישורי השיתופים שלך. נא להיכנס לקישור לקבלת פרטים נוספים.",
- "Learn more ↗" : "מידע נוסף ↖ ",
- "Preparing update" : "מכין עדכון",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "שלב בתיקון:",
"Repair info:" : "פרטי תיקון:",
"Repair warning:" : "אזהרת תיקון:",
"Repair error:" : "שגיאת תיקון:",
+ "Nextcloud Server" : "שרת Nextcloud",
+ "Some of your link shares have been removed" : "חלק מקישורי השיתופים שלך הוסרו",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "עקב תקלת אבטחה נאלצנו להסיר חלק מקישורי השיתופים שלך. נא להיכנס לקישור לקבלת פרטים נוספים.",
+ "Learn more ↗" : "מידע נוסף ↖ ",
+ "Preparing update" : "מכין עדכון",
"Turned on maintenance mode" : "הפעלת מצב אחזקה",
"Turned off maintenance mode" : "כיבוי מצב אחזקה",
"Maintenance mode is kept active" : "מצב אחזקה נשמר פעיל",
@@ -192,11 +192,12 @@
"Collaborative tags" : "תגיות שיתופיות",
"No tags found" : "לא נמצאו תגים",
"Personal" : "אישי",
+ "Accounts" : "Accounts",
"Admin" : "מנהל",
"Help" : "עזרה",
"Access forbidden" : "הגישה נחסמה",
- "Page not found" : "העמוד לא נמצא",
"Back to %s" : "חזרה אל %s",
+ "Page not found" : "העמוד לא נמצא",
"Too many requests" : "יותר מדי בקשות",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "היו יותר מדי בקשות מהרשת שלך. נסה שוב מאוחר יותר, או צור קשר עם מנהל המערכת שלך אם זו שגיאה.",
"Error" : "שגיאה",
@@ -264,7 +265,6 @@
"This page will refresh itself when the instance is available again." : "עמוד זה ירענן את עצמו כאשר העותק ישוב להיות זמין.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "יש ליצור קשר עם מנהל המערכת אם הודעה שו נמשכת או מופיעה באופן בלתי צפוי. ",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "צ'אטים, שיחות וידאו, שיתוף מסך, פגישות מקוונות ועידת אינטרנט - בדפדפן ובאפליקציות סלולריות.",
- "Error loading message template: {error}" : "שגיאה בטעינת תבנית ההודעות: {error}",
"Very weak password" : "ססמה מאוד חלשה",
"Weak password" : "ססמה חלשה",
"So-so password" : "ססמה בינונית",
diff --git a/core/l10n/hr.js b/core/l10n/hr.js
index 8430a7bf832..5759567a319 100644
--- a/core/l10n/hr.js
+++ b/core/l10n/hr.js
@@ -35,16 +35,16 @@ OC.L10N.register(
"Reset your password" : "Resetirajte svoju zaporku",
"Internal error" : "Unutarnja pogreška",
"Not found" : "Nije pronađeno",
- "Nextcloud Server" : "Nextcloud poslužitelj",
- "Some of your link shares have been removed" : "Uklonjene su neke od vaših dijeljenih poveznica",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Zbog sigurnosne pogreške morali smo ukloniti neke od vaših dijeljenih poveznica. Za više informacija pogledajte poveznicu.",
- "Learn more ↗" : "Saznajte više ↗",
- "Preparing update" : "Priprema ažuriranja",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Korak ispravljanja pogreške:",
"Repair info:" : "Informacije o ispravljanju pogreške:",
"Repair warning:" : "Upozorenje o ispravljanju pogreške:",
"Repair error:" : "Pogreška ispravljanja pogreške:",
+ "Nextcloud Server" : "Nextcloud poslužitelj",
+ "Some of your link shares have been removed" : "Uklonjene su neke od vaših dijeljenih poveznica",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Zbog sigurnosne pogreške morali smo ukloniti neke od vaših dijeljenih poveznica. Za više informacija pogledajte poveznicu.",
+ "Learn more ↗" : "Saznajte više ↗",
+ "Preparing update" : "Priprema ažuriranja",
"Turned on maintenance mode" : "Način rada za održavanje uključen",
"Turned off maintenance mode" : "Način rada za održavanje isključen",
"Maintenance mode is kept active" : "Način rada za održavanje održan",
@@ -209,8 +209,8 @@ OC.L10N.register(
"Admin" : "Administrator",
"Help" : "Pomoć",
"Access forbidden" : "Pristup zabranjen",
- "Page not found" : "Stranica nije pronađena",
"Back to %s" : "Natrag na %s",
+ "Page not found" : "Stranica nije pronađena",
"Too many requests" : "Previše zahtjeva",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Zaprimljeno je previše zahtjeva iz vaše mreže. Pokušajte kasnije ili se obratite administratoru ako se radi o pogrešci.",
"Error" : "Pogreška",
@@ -278,7 +278,6 @@ OC.L10N.register(
"This page will refresh itself when the instance is available again." : "Ova će se stranica osvježiti kada je instanca ponovno dostupna.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Obratite se administratoru sustava ako se ova poruka ponavlja ili se pojavila neočekivano.",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Razmjenjivanje poruka, video pozivi, dijeljenje zaslona, sastanci na mreži i web-konferencije – putem preglednika i mobilnih aplikacija.",
- "Error loading message template: {error}" : "Pogrešno učitavanje predloška za poruke: {error}",
"Very weak password" : "Zaporka vrlo slaba",
"Weak password" : "Zaporka Slaba",
"So-so password" : "Zaporka prosječne jačine",
diff --git a/core/l10n/hr.json b/core/l10n/hr.json
index 284434f04c9..48803508273 100644
--- a/core/l10n/hr.json
+++ b/core/l10n/hr.json
@@ -33,16 +33,16 @@
"Reset your password" : "Resetirajte svoju zaporku",
"Internal error" : "Unutarnja pogreška",
"Not found" : "Nije pronađeno",
- "Nextcloud Server" : "Nextcloud poslužitelj",
- "Some of your link shares have been removed" : "Uklonjene su neke od vaših dijeljenih poveznica",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Zbog sigurnosne pogreške morali smo ukloniti neke od vaših dijeljenih poveznica. Za više informacija pogledajte poveznicu.",
- "Learn more ↗" : "Saznajte više ↗",
- "Preparing update" : "Priprema ažuriranja",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Korak ispravljanja pogreške:",
"Repair info:" : "Informacije o ispravljanju pogreške:",
"Repair warning:" : "Upozorenje o ispravljanju pogreške:",
"Repair error:" : "Pogreška ispravljanja pogreške:",
+ "Nextcloud Server" : "Nextcloud poslužitelj",
+ "Some of your link shares have been removed" : "Uklonjene su neke od vaših dijeljenih poveznica",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Zbog sigurnosne pogreške morali smo ukloniti neke od vaših dijeljenih poveznica. Za više informacija pogledajte poveznicu.",
+ "Learn more ↗" : "Saznajte više ↗",
+ "Preparing update" : "Priprema ažuriranja",
"Turned on maintenance mode" : "Način rada za održavanje uključen",
"Turned off maintenance mode" : "Način rada za održavanje isključen",
"Maintenance mode is kept active" : "Način rada za održavanje održan",
@@ -207,8 +207,8 @@
"Admin" : "Administrator",
"Help" : "Pomoć",
"Access forbidden" : "Pristup zabranjen",
- "Page not found" : "Stranica nije pronađena",
"Back to %s" : "Natrag na %s",
+ "Page not found" : "Stranica nije pronađena",
"Too many requests" : "Previše zahtjeva",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Zaprimljeno je previše zahtjeva iz vaše mreže. Pokušajte kasnije ili se obratite administratoru ako se radi o pogrešci.",
"Error" : "Pogreška",
@@ -276,7 +276,6 @@
"This page will refresh itself when the instance is available again." : "Ova će se stranica osvježiti kada je instanca ponovno dostupna.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Obratite se administratoru sustava ako se ova poruka ponavlja ili se pojavila neočekivano.",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Razmjenjivanje poruka, video pozivi, dijeljenje zaslona, sastanci na mreži i web-konferencije – putem preglednika i mobilnih aplikacija.",
- "Error loading message template: {error}" : "Pogrešno učitavanje predloška za poruke: {error}",
"Very weak password" : "Zaporka vrlo slaba",
"Weak password" : "Zaporka Slaba",
"So-so password" : "Zaporka prosječne jačine",
diff --git a/core/l10n/hu.js b/core/l10n/hu.js
index 87dd61f5404..b0dc66b3a7f 100644
--- a/core/l10n/hu.js
+++ b/core/l10n/hu.js
@@ -7,7 +7,7 @@ OC.L10N.register(
"The selected file cannot be read." : "A kiválasztott fájl nem olvasható.",
"The file was uploaded" : "A fájl feltöltve",
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "A feltöltött fájl meghaladja a php.ini-ben szereplő upload_max_filesize direktívában megadott méretet",
- "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "A feltöltött fájl meghaladja a HTML űrlapon megadott MAX_FILE_SIZE direktívában meghatározott méretet.",
+ "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "A feltöltött fájl meghaladja a HTML űrlapon megadott MAX_FILE_SIZE direktívában meghatározott méretet",
"The file was only partially uploaded" : "A fájl csak részben került feltöltésre",
"No file was uploaded" : "Egyetlen fájl sem töltődött fel",
"Missing a temporary folder" : "Hiányzik egy ideiglenes mappa",
@@ -27,6 +27,7 @@ OC.L10N.register(
"Could not complete login" : "A bejelentkezés nem fejezhető be",
"State token missing" : "Az állapottoken hiányzik",
"Your login token is invalid or has expired" : "A bejelentkezési token érvénytelen vagy lejárt",
+ "Please use original client" : "Használja az eredeti klienset",
"This community release of Nextcloud is unsupported and push notifications are limited." : "A Nextcloud e közösségi kiadása nem támogatott, és a leküldéses értesítések korlátozottak.",
"Login" : "Bejelentkezés",
"Unsupported email length (>255)" : "Nem támogatott hosszúságú e-mail-cím (>255)",
@@ -43,6 +44,7 @@ OC.L10N.register(
"Task not found" : "A feladat nem található",
"Internal error" : "Belső hiba",
"Not found" : "Nem található",
+ "Node is locked" : "A csomópont zárolva van",
"Bad request" : "Hibás kérés",
"Requested task type does not exist" : "A kért feladattípus nem létezik",
"Necessary language model provider is not available" : "A szükséges nyelvimodell-szolgáltató nem érhető el",
@@ -51,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Nem érhető el fordítási szolgáltató",
"Could not detect language" : "Nem sikerült észlelni a nyelvet",
"Unable to translate" : "Nem fordítható le",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Javítási lépés:",
+ "Repair info:" : "Javítási információ:",
+ "Repair warning:" : "Javítási figyelmeztetés:",
+ "Repair error:" : "Javítási hiba:",
"Nextcloud Server" : "Nextcloud kiszolgáló",
"Some of your link shares have been removed" : "Néhány megosztási hivatkozása eltávolításra került",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Egy biztonsági hiba miatt el kellett távolítsunk néhány megosztási hivatkozását. További információkért lásd a lenti hivatkozást.",
@@ -58,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Adja meg az előfizetési kulcsát a támogatási alkalmazásban, hogy megnövelje a fiókkorlátot. Ez a Nextcloud vállalati ajánlatainak további előnyeit is biztosítja, és határozottan ajánlott a céges üzemeltetés esetén.",
"Learn more ↗" : "Tudjon meg többet ↗",
"Preparing update" : "Felkészülés a frissítésre",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Javítási lépés:",
- "Repair info:" : "Javítási információ:",
- "Repair warning:" : "Javítási figyelmeztetés:",
- "Repair error:" : "Javítási hiba:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Használja a parancssoros frissítőt, mert a böngészőbeli frissítés ki van kapcsolva a config.php fájlban.",
"Turned on maintenance mode" : "Karbantartási mód bekapcsolva",
"Turned off maintenance mode" : "Karbantartási mód kikapcsolva",
@@ -79,8 +81,125 @@ OC.L10N.register(
"%s (incompatible)" : "%s (nem kompatibilis)",
"The following apps have been disabled: %s" : "A következő alkalmazások le lettek tiltva: %s",
"Already up to date" : "Már naprakész",
+ "Windows Command Script" : "Windows-parancsfájl",
+ "Electronic book document" : "Elektronikus könyvdokumentum",
+ "TrueType Font Collection" : "TrueType betűkészlet-gyűjtemény",
+ "Web Open Font Format" : "Nyílt webes betűkészlet-formátum",
+ "GPX geographic data" : "GPX földrajzi adatok",
+ "Gzip archive" : "Gzip-archívum",
+ "Adobe Illustrator document" : "Adobe Illustrator-dokumentum",
+ "Java source code" : "Java-forrásfájl",
+ "JavaScript source code" : "JavaScript-forrásfájl",
+ "JSON document" : "JSON-dokumentum",
+ "Microsoft Access database" : "Microsoft Excel-adatbázis",
+ "Microsoft OneNote document" : "Microsfot OneNote-dokumentum",
+ "Microsoft Word document" : "Microsoft Word dokumentum",
"Unknown" : "Ismeretlen",
- "PNG image" : "PNG kép",
+ "PDF document" : "PDF-dokumentum",
+ "PostScript document" : "PostScript-dokumentum",
+ "RSS summary" : "RSS-összefoglaló",
+ "Android package" : "Android-csomag",
+ "KML geographic data" : "KML földrajzi adatok",
+ "KML geographic compressed data" : "KML tömörített földrajzi adatok",
+ "Lotus Word Pro document" : "Lotus Word Pro-dokumentum",
+ "Excel spreadsheet" : "Excel-munkafüzet",
+ "Excel add-in" : "Excel-bővítmény",
+ "Excel 2007 binary spreadsheet" : "Excel 2007 bináris munkafüzet",
+ "Excel spreadsheet template" : "Excel-munkafüzetsablon",
+ "Outlook Message" : "Outlook-üzenet",
+ "PowerPoint presentation" : "PowerPoint-bemutató",
+ "PowerPoint add-in" : "PowerPoint-bővítmény",
+ "PowerPoint presentation template" : "PowerPoint-bemutatósablon",
+ "Word document" : "Word-dokumentum",
+ "ODF formula" : "ODF-képlet",
+ "ODG drawing" : "ODG-rajz",
+ "ODG drawing (Flat XML)" : "ODG-rajz (lapos XML)",
+ "ODG template" : "ODG-sablon",
+ "ODP presentation" : "ODP-bemutató",
+ "ODP presentation (Flat XML)" : "ODP-bemutató (lapos XML)",
+ "ODP template" : "ODF-sablon",
+ "ODS spreadsheet" : "ODS-munkafüzet",
+ "ODS spreadsheet (Flat XML)" : "ODS-munkafüzet (lapos XML)",
+ "ODS template" : "ODS-sablon",
+ "ODT document" : "ODT-dokumentum",
+ "ODT document (Flat XML)" : "ODT-sablon (lapos XML)",
+ "ODT template" : "ODT-sablon",
+ "PowerPoint 2007 presentation" : "PowerPoint 2007-bemutató",
+ "PowerPoint 2007 show" : "PowerPoint 2007-vetítés",
+ "PowerPoint 2007 presentation template" : "PowerPoint 2007-bemutatósablon",
+ "Excel 2007 spreadsheet" : "Excel 2007-munkafüzet",
+ "Excel 2007 spreadsheet template" : "Excel 2007-munkafüzetsablon",
+ "Word 2007 document" : "Word 2007-dokumentum",
+ "Word 2007 document template" : "Word 2007-dokumentumsablon",
+ "Microsoft Visio document" : "Microsoft Visio-dokumentum",
+ "WordPerfect document" : "WordPerfect-dokumentum",
+ "7-zip archive" : "7-zip-archívum",
+ "Blender scene" : "Blender-jelenet",
+ "Bzip2 archive" : "Bzip2-archívum",
+ "Debian package" : "Debian-csomag",
+ "FictionBook document" : "FictionBook-dokumentum",
+ "Unknown font" : "Ismeretlen betűkészlet",
+ "Krita document" : "Krita-dokumentum",
+ "Mobipocket e-book" : "Mobipocket ekönyv",
+ "Windows Installer package" : "Windows Installer-csomag",
+ "Perl script" : "Perl-parancsfájl",
+ "PHP script" : "PHP-parancsfájl",
+ "Tar archive" : "Tar-archívum",
+ "XML document" : "XML-dokumentum",
+ "YAML document" : "YAML-dokumentum",
+ "Zip archive" : "Zip-archívum",
+ "Zstandard archive" : "Zstandard-archívum",
+ "AAC audio" : "AAC-hang",
+ "FLAC audio" : "FLAC-hang",
+ "MPEG-4 audio" : "MPEG-4-hang",
+ "MP3 audio" : "MP3-hang",
+ "Ogg audio" : "Ogg-hang",
+ "RIFF/WAVe standard Audio" : "RIFF/WAVe szabványos hang",
+ "WebM audio" : "WebM-hang",
+ "MP3 ShoutCast playlist" : "MP3 ShoutCast-lejátszólista",
+ "Windows BMP image" : "Windows BMP-kép",
+ "Better Portable Graphics image" : "Better Portable Graphics-kép",
+ "EMF image" : "EMF-kép",
+ "GIF image" : "GIF-kép",
+ "HEIC image" : "HEIC-kép",
+ "HEIF image" : "HEIF-kép",
+ "JPEG-2000 JP2 image" : "JPEG-2000 JP2-kép",
+ "JPEG image" : "JPEG-kép",
+ "PNG image" : "PNG-kép",
+ "SVG image" : "SVG-kép",
+ "Truevision Targa image" : "Truevision Targa-kép",
+ "TIFF image" : "TIFF-kép",
+ "WebP image" : "WebP-kép",
+ "Digital raw image" : "Digitális nyerskép",
+ "Windows Icon" : "Windows-ikon",
+ "Email message" : "E-mail-üzenet",
+ "VCS/ICS calendar" : "VCS/ICS-naptár",
+ "CSS stylesheet" : "CSS-stíluslap",
+ "CSV document" : "CSV-dokumentum",
+ "HTML document" : "HTML-dokumentum",
+ "Markdown document" : "Markdown-dokumentum",
+ "Org-mode file" : "Org-mode-fájl",
+ "Plain text document" : "Egyszerű szöveges dokumentum",
+ "Rich Text document" : "Rich Text-dokumentum",
+ "Electronic business card" : "Elektronikus névjegykártya",
+ "C++ source code" : "C++-forráskód",
+ "LDIF address book" : "LDIF-címjegyzék",
+ "NFO document" : "NFO-dokumentum",
+ "PHP source" : "PHP-forráskód",
+ "Python script" : "Python-parancsfájl",
+ "ReStructuredText document" : "ReStructuredText-dokumentum",
+ "3GPP multimedia file" : "3GPP-multimédiafájl",
+ "MPEG video" : "MPEG-videó",
+ "DV video" : "DV-videó",
+ "MPEG-2 transport stream" : "MPEG-2 átviteli adatfolyam",
+ "MPEG-4 video" : "MPEG-4-videó",
+ "Ogg video" : "Ogg-videó",
+ "QuickTime video" : "QuickTime-videó",
+ "WebM video" : "WebM-videó",
+ "Flash video" : "FLash-videó",
+ "Matroska video" : "Matroska-videó",
+ "Windows Media video" : "Windows Media-videó",
+ "AVI video" : "AVI-videó",
"Error occurred while checking server setup" : "Hiba történt a kiszolgálóbeállítások ellenőrzésekor",
"For more details see the {linkstart}documentation ↗{linkend}." : "További részletekért lásd a {linkstart}dokumentációt↗{linkend}.",
"unknown text" : "ismeretlen szöveg",
@@ -148,6 +267,8 @@ OC.L10N.register(
"Account name" : "Fiók neve",
"Server side authentication failed!" : "A kiszolgálóoldali hitelesítés sikertelen.",
"Please contact your administrator." : "Lépjen kapcsolatba a rendszergazdával.",
+ "Session error" : "Munkamenethiba",
+ "It appears your session token has expired, please refresh the page and try again." : "Úgy tűnik, hogy a munkamenettoken lejárt, frissítse az oldalt, és próbálja újra.",
"An internal error occurred." : "Belső hiba történt.",
"Please try again or contact your administrator." : "Próbálja meg újra, vagy vegye fel a kapcsolatot a rendszergazdával.",
"Password" : "Jelszó",
@@ -165,7 +286,7 @@ OC.L10N.register(
"Password cannot be changed. Please contact your administrator." : "A jelszó nem módosítható. Lépjen kapcsolatba a rendszergazdával.",
"New password" : "Új jelszó",
"Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "A fájljai titkosítva vannak. A jelszó visszaállítása után sehogy sem fogja tudja visszaszerezni azokat. Ha nem tudja mi a teendő, akkor beszéljen a helyi rendszergazdával. Biztos, hogy folytatja?",
- "I know what I'm doing" : "Tudom mit csinálok.",
+ "I know what I'm doing" : "Tudom mit csinálok",
"Resetting password" : "Jelszó visszaállítása",
"Schedule work & meetings, synced with all your devices." : "Ütemezett munkáját és találkozóit, szinkronizálva az összes eszközén.",
"Keep your colleagues and friends in one place without leaking their private info." : "Tartsa egy helyen kollégáit és barátait, anélkül hogy kiszivárogtatná a személyes adataikat.",
@@ -207,35 +328,49 @@ OC.L10N.register(
"Login form is disabled." : "A bejelentkezési űrlap letiltva.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "A Nextcloud bejelentkezési űrlap le van tiltva. Használjon más bejelentkezési lehetőséget, ha van ilyen, vagy lépjen kapcsolatba az adminisztrációval.",
"More actions" : "További műveletek",
+ "User menu" : "Felhasználói menü",
+ "You will be identified as {user} by the account owner." : "A fióktulajdonos által {user} felhasználóként lesz azonosítva.",
+ "You are currently not identified." : "Jelenleg nincs azonosítva.",
+ "Set public name" : "Nyilvános név beállítása",
+ "Change public name" : "Nyilvános név módosítása",
"Password is too weak" : "Jelszó túl gyenge",
- "Password is weak" : "Jelszó gyenge",
- "Password is average" : "Jelszó átlagos",
+ "Password is weak" : "A jelszó gyenge",
+ "Password is average" : "A jelszó átlagos",
"Password is strong" : "A jelszó erős",
"Password is very strong" : "A jelszó nagyon erős",
- "Password is extremely strong" : "A jelszó extrém erős",
- "Unknown password strength" : "Ismeretlen jelszó erősség",
+ "Password is extremely strong" : "A jelszó kiemelkedően erős",
+ "Unknown password strength" : "Ismeretlen jelszóerősség",
+ "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "Az adatkönyvtára és a fájljai valószínűleg elérhetőek az internetről, mert a <code>.htaccess</code> fájl nem működik.",
+ "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "A kiszolgáló helyes beállításához {linkStart}tekintse meg a dokumentációt{linkEnd}",
"Autoconfig file detected" : "Autoconfig fájl felismerve",
+ "The setup form below is pre-filled with the values from the config file." : "A lenti beállítási űrlap a konfigurációs fájlban lévő értékekkel van előre kitöltve.",
"Security warning" : "Biztonsági figyelmeztetés",
+ "Create administration account" : "Rendszergazdai fiók létrehozása",
+ "Administration account name" : "Rendszergazdai fiók neve",
+ "Administration account password" : "Rendszergazdai fiók jelszava",
"Storage & database" : "Tárhely és adatbázis",
- "Data folder" : "Adat mappa",
+ "Data folder" : "Adatmappa",
+ "Database configuration" : "Adatbázis-beállítások",
+ "Only {firstAndOnlyDatabase} is available." : "Csak a(z) {firstAndOnlyDatabase} érhető el.",
"Install and activate additional PHP modules to choose other database types." : "Telepítse és aktiválja a bővített PHP modulokat, hogy tudjon más adatbázis típust is kiválasztani.",
"For more details check out the documentation." : "További részletekért nézze meg a dokumentációt.",
"Performance warning" : "Teljesítménybeli figyelmeztetés",
"You chose SQLite as database." : "SQLite adatbázist választott.",
"SQLite should only be used for minimal and development instances. For production we recommend a different database backend." : "Az SQLite-ot csak minimális és fejlesztési célú példányok esetén szabad használni. Éles működés esetén más adatbázis-kezelőt ajánlunk.",
"If you use clients for file syncing, the use of SQLite is highly discouraged." : "Ha klienseket használt a fájlszinkronizáláshoz, akkor az SQLite használata erősen ellenjavallt.",
- "Database user" : "Adatbázis felhasználónév",
- "Database password" : "Adatbázis jelszó",
- "Database name" : "Az adatbázis neve",
- "Database tablespace" : "Az adatbázis táblázattér (tablespace)",
+ "Database user" : "Adatbázis-felhasználó",
+ "Database password" : "Adatbázisjelszó",
+ "Database name" : "Adatbázis neve",
+ "Database tablespace" : "Adatbázis táblatere",
"Please specify the port number along with the host name (e.g., localhost:5432)." : "Adja meg a port számát a kiszolgáló neve után (például localhost:5432).",
"Database host" : "Adatbázis-kiszolgáló",
+ "localhost" : "localhost",
"Installing …" : "Telepítés…",
"Install" : "Telepítés",
"Need help?" : "Segítségre van szüksége?",
"See the documentation" : "Nézze meg a dokumentációt",
"{name} version {version} and above" : "{name} {version} verziója, és újabb",
- "This browser is not supported" : "Ez a böngésző nem támogatott.",
+ "This browser is not supported" : "Ez a böngésző nem támogatott",
"Your browser is not supported. Please upgrade to a newer version or a supported one." : "A böngészője nem támogatott. Frissítsen újabb verzióra, vagy váltson egy támogatott böngészőre.",
"Continue with this unsupported browser" : "Folytatás ezzel a nem támogatott böngészővel",
"Supported versions" : "Támogatott verziók",
@@ -259,7 +394,7 @@ OC.L10N.register(
"(all selected)" : "(összes kiválasztva)",
"({count} selected)" : "({count} kiválasztva)",
"Error loading file exists template" : "Hiba a „fájl már létezik” sablon betöltésekor",
- "Saving …" : "Mentés ...",
+ "Saving …" : "Mentés…",
"seconds ago" : "pár másodperce",
"Connection to server lost" : "A kapcsolat megszakadt a kiszolgálóval",
"_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Probléma az oldal betöltésekor, újratöltés %n másodperc múlva","Probléma az oldal betöltésekor, újratöltés %n másodperc múlva"],
@@ -272,7 +407,7 @@ OC.L10N.register(
"Failed to add the item to the project" : "Az elem hozzáadása a projekthez sikertelen",
"Connect items to a project to make them easier to find" : "Kössön hozzá elemeket a projekthez, hogy könnyebben megtalálhatóak legyenek",
"Type to search for existing projects" : "Gépeljen a meglévő projektet kereséséhez",
- "New in" : "Új itt",
+ "New in" : "Újdonságok a következőben:",
"View changelog" : "Változásnapló megtekintése",
"No action available" : "Nincs elérhető művelet",
"Error fetching contact actions" : "Hiba a kapcsolati műveletek lekérésekor",
@@ -285,15 +420,16 @@ OC.L10N.register(
"Rename" : "Átnevezés",
"Collaborative tags" : "Együttműködési címkék",
"No tags found" : "Nem találhatók címkék",
- "Clipboard not available, please copy manually" : "A vágólap nem érhető el. Másolja át kézileg.",
+ "Clipboard not available, please copy manually" : "A vágólap nem érhető el, másolja kézileg",
"Personal" : "Személyes",
"Accounts" : "Fiókok",
"Admin" : "Rendszergazda",
"Help" : "Súgó",
"Access forbidden" : "A hozzáférés nem engedélyezett",
+ "You are not allowed to access this page." : "Nem férhet hozzá ehhez az oldalhoz.",
+ "Back to %s" : "Vissza ide %s",
"Page not found" : "Az oldal nem található",
"The page could not be found on the server or you may not be allowed to view it." : "Az oldal nem található a kiszolgálón, vagy lehet, hogy nincs engedélye arra, hogy megnézze.",
- "Back to %s" : "Vissza ide %s",
"Too many requests" : "Túl sok kérés",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Túl sok kérés érkezett a hálózatától. Próbálja újra később, vagy ha ez egy hiba, akkor forduljon a rendszergazdához.",
"Error" : "Hiba",
@@ -302,7 +438,7 @@ OC.L10N.register(
"If this happens again, please send the technical details below to the server administrator." : "Ha ez még egyszer előfordul küldd el az alábbi technikai részleteket a rendszergazdának.",
"More details can be found in the server log." : "További részletek találhatók a kiszolgáló naplójában.",
"For more details see the documentation ↗." : "További részletekért nézze meg a dokumentációt ↗.",
- "Technical details" : "Technikai adatok",
+ "Technical details" : "Műszaki adatok",
"Remote Address: %s" : "Távoli cím: %s",
"Request ID: %s" : "Kérésazonosító: %s",
"Type: %s" : "Típus: %s",
@@ -338,7 +474,7 @@ OC.L10N.register(
"Password sent!" : "Jelszó elküldve.",
"You are not authorized to request a password for this share" : "Nincs jogosultsága, hogy jelszót kérjen ehhez a megosztáshoz",
"Two-factor authentication" : "Kétfaktoros hitelesítés",
- "Enhanced security is enabled for your account. Choose a second factor for authentication:" : "A fokozott biztonság engedélyezett a fiókja számára. Válasszon egy második faktort a hitelesítéshez.",
+ "Enhanced security is enabled for your account. Choose a second factor for authentication:" : "A fokozott biztonság engedélyezett a fiókja számára. Válasszon egy második faktort a hitelesítéshez:",
"Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Nem lehet betölteni legalább egy engedélyezett kétfaktoros hitelesítési módot. Lépjen kapcsolatba a rendszergazdával.",
"Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance." : "A kétfaktoros hitelesítés kötelező, de még nem lett beállítva a fiókjához. Segítségért lépjen kapcsolatba a rendszergazdával.",
"Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication." : "A kétfaktoros hitelesítés be van tartatva, de nincs beállítva a fiókján. Folytassa a kétfaktoros hitelesítés beállításával.",
@@ -368,17 +504,13 @@ OC.L10N.register(
"Maintenance mode" : "Karbantartási üzemmód",
"This %s instance is currently in maintenance mode, which may take a while." : "Ez a %s példány éppen karbantartási üzemmódban van, amely eltarthat egy darabig.",
"This page will refresh itself when the instance is available again." : "Ez az oldal frissíteni fogja magát, amint a példány ismét elérhető lesz.",
- "Contact your system administrator if this message persists or appeared unexpectedly." : "Ha ez az üzenet mindig vagy váratlanul megjelenik, akkor keresse fel a rendszergazdáját!",
- "Currently open" : "Jelenleg nyitva",
- "Login with username or email" : "Bejelentkezés felhasználónévvel vagy e-mail-címmel",
- "Login with username" : "Bejelentkezés felhasználónévvel",
+ "Contact your system administrator if this message persists or appeared unexpectedly." : "Ha ez az üzenet mindig vagy váratlanul megjelenik, akkor keresse fel a rendszergazdáját.",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Csevegés, videóhívások, képernyőmegosztás, online megbeszélések és webes konferencia – a böngészőjében és mobilalkalmazásokkal.",
"You have not added any info yet" : "Még nem adott meg semmilyen információt",
"{user} has not added any info yet" : "{user} még nem adott meg semmilyen információt",
"Error opening the user status modal, try hard refreshing the page" : "Hiba a felhasználói állapot párbeszédablak megnyitásakor, próbálja meg az oldal kényszerített újratöltését",
"Edit Profile" : "Profil szerkesztése",
"The headline and about sections will show up here" : "A címsor és a névjegy szakaszok itt fognak megjelenni",
- "Error loading message template: {error}" : "Hiba az üzenetsablon betöltésekor: {error}",
"Very weak password" : "Nagyon gyenge jelszó",
"Weak password" : "Gyenge jelszó",
"So-so password" : "Nem túl jó jelszó",
diff --git a/core/l10n/hu.json b/core/l10n/hu.json
index 936f379f8c1..a450c0177f2 100644
--- a/core/l10n/hu.json
+++ b/core/l10n/hu.json
@@ -5,7 +5,7 @@
"The selected file cannot be read." : "A kiválasztott fájl nem olvasható.",
"The file was uploaded" : "A fájl feltöltve",
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "A feltöltött fájl meghaladja a php.ini-ben szereplő upload_max_filesize direktívában megadott méretet",
- "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "A feltöltött fájl meghaladja a HTML űrlapon megadott MAX_FILE_SIZE direktívában meghatározott méretet.",
+ "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "A feltöltött fájl meghaladja a HTML űrlapon megadott MAX_FILE_SIZE direktívában meghatározott méretet",
"The file was only partially uploaded" : "A fájl csak részben került feltöltésre",
"No file was uploaded" : "Egyetlen fájl sem töltődött fel",
"Missing a temporary folder" : "Hiányzik egy ideiglenes mappa",
@@ -25,6 +25,7 @@
"Could not complete login" : "A bejelentkezés nem fejezhető be",
"State token missing" : "Az állapottoken hiányzik",
"Your login token is invalid or has expired" : "A bejelentkezési token érvénytelen vagy lejárt",
+ "Please use original client" : "Használja az eredeti klienset",
"This community release of Nextcloud is unsupported and push notifications are limited." : "A Nextcloud e közösségi kiadása nem támogatott, és a leküldéses értesítések korlátozottak.",
"Login" : "Bejelentkezés",
"Unsupported email length (>255)" : "Nem támogatott hosszúságú e-mail-cím (>255)",
@@ -41,6 +42,7 @@
"Task not found" : "A feladat nem található",
"Internal error" : "Belső hiba",
"Not found" : "Nem található",
+ "Node is locked" : "A csomópont zárolva van",
"Bad request" : "Hibás kérés",
"Requested task type does not exist" : "A kért feladattípus nem létezik",
"Necessary language model provider is not available" : "A szükséges nyelvimodell-szolgáltató nem érhető el",
@@ -49,6 +51,11 @@
"No translation provider available" : "Nem érhető el fordítási szolgáltató",
"Could not detect language" : "Nem sikerült észlelni a nyelvet",
"Unable to translate" : "Nem fordítható le",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Javítási lépés:",
+ "Repair info:" : "Javítási információ:",
+ "Repair warning:" : "Javítási figyelmeztetés:",
+ "Repair error:" : "Javítási hiba:",
"Nextcloud Server" : "Nextcloud kiszolgáló",
"Some of your link shares have been removed" : "Néhány megosztási hivatkozása eltávolításra került",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Egy biztonsági hiba miatt el kellett távolítsunk néhány megosztási hivatkozását. További információkért lásd a lenti hivatkozást.",
@@ -56,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Adja meg az előfizetési kulcsát a támogatási alkalmazásban, hogy megnövelje a fiókkorlátot. Ez a Nextcloud vállalati ajánlatainak további előnyeit is biztosítja, és határozottan ajánlott a céges üzemeltetés esetén.",
"Learn more ↗" : "Tudjon meg többet ↗",
"Preparing update" : "Felkészülés a frissítésre",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Javítási lépés:",
- "Repair info:" : "Javítási információ:",
- "Repair warning:" : "Javítási figyelmeztetés:",
- "Repair error:" : "Javítási hiba:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Használja a parancssoros frissítőt, mert a böngészőbeli frissítés ki van kapcsolva a config.php fájlban.",
"Turned on maintenance mode" : "Karbantartási mód bekapcsolva",
"Turned off maintenance mode" : "Karbantartási mód kikapcsolva",
@@ -77,8 +79,125 @@
"%s (incompatible)" : "%s (nem kompatibilis)",
"The following apps have been disabled: %s" : "A következő alkalmazások le lettek tiltva: %s",
"Already up to date" : "Már naprakész",
+ "Windows Command Script" : "Windows-parancsfájl",
+ "Electronic book document" : "Elektronikus könyvdokumentum",
+ "TrueType Font Collection" : "TrueType betűkészlet-gyűjtemény",
+ "Web Open Font Format" : "Nyílt webes betűkészlet-formátum",
+ "GPX geographic data" : "GPX földrajzi adatok",
+ "Gzip archive" : "Gzip-archívum",
+ "Adobe Illustrator document" : "Adobe Illustrator-dokumentum",
+ "Java source code" : "Java-forrásfájl",
+ "JavaScript source code" : "JavaScript-forrásfájl",
+ "JSON document" : "JSON-dokumentum",
+ "Microsoft Access database" : "Microsoft Excel-adatbázis",
+ "Microsoft OneNote document" : "Microsfot OneNote-dokumentum",
+ "Microsoft Word document" : "Microsoft Word dokumentum",
"Unknown" : "Ismeretlen",
- "PNG image" : "PNG kép",
+ "PDF document" : "PDF-dokumentum",
+ "PostScript document" : "PostScript-dokumentum",
+ "RSS summary" : "RSS-összefoglaló",
+ "Android package" : "Android-csomag",
+ "KML geographic data" : "KML földrajzi adatok",
+ "KML geographic compressed data" : "KML tömörített földrajzi adatok",
+ "Lotus Word Pro document" : "Lotus Word Pro-dokumentum",
+ "Excel spreadsheet" : "Excel-munkafüzet",
+ "Excel add-in" : "Excel-bővítmény",
+ "Excel 2007 binary spreadsheet" : "Excel 2007 bináris munkafüzet",
+ "Excel spreadsheet template" : "Excel-munkafüzetsablon",
+ "Outlook Message" : "Outlook-üzenet",
+ "PowerPoint presentation" : "PowerPoint-bemutató",
+ "PowerPoint add-in" : "PowerPoint-bővítmény",
+ "PowerPoint presentation template" : "PowerPoint-bemutatósablon",
+ "Word document" : "Word-dokumentum",
+ "ODF formula" : "ODF-képlet",
+ "ODG drawing" : "ODG-rajz",
+ "ODG drawing (Flat XML)" : "ODG-rajz (lapos XML)",
+ "ODG template" : "ODG-sablon",
+ "ODP presentation" : "ODP-bemutató",
+ "ODP presentation (Flat XML)" : "ODP-bemutató (lapos XML)",
+ "ODP template" : "ODF-sablon",
+ "ODS spreadsheet" : "ODS-munkafüzet",
+ "ODS spreadsheet (Flat XML)" : "ODS-munkafüzet (lapos XML)",
+ "ODS template" : "ODS-sablon",
+ "ODT document" : "ODT-dokumentum",
+ "ODT document (Flat XML)" : "ODT-sablon (lapos XML)",
+ "ODT template" : "ODT-sablon",
+ "PowerPoint 2007 presentation" : "PowerPoint 2007-bemutató",
+ "PowerPoint 2007 show" : "PowerPoint 2007-vetítés",
+ "PowerPoint 2007 presentation template" : "PowerPoint 2007-bemutatósablon",
+ "Excel 2007 spreadsheet" : "Excel 2007-munkafüzet",
+ "Excel 2007 spreadsheet template" : "Excel 2007-munkafüzetsablon",
+ "Word 2007 document" : "Word 2007-dokumentum",
+ "Word 2007 document template" : "Word 2007-dokumentumsablon",
+ "Microsoft Visio document" : "Microsoft Visio-dokumentum",
+ "WordPerfect document" : "WordPerfect-dokumentum",
+ "7-zip archive" : "7-zip-archívum",
+ "Blender scene" : "Blender-jelenet",
+ "Bzip2 archive" : "Bzip2-archívum",
+ "Debian package" : "Debian-csomag",
+ "FictionBook document" : "FictionBook-dokumentum",
+ "Unknown font" : "Ismeretlen betűkészlet",
+ "Krita document" : "Krita-dokumentum",
+ "Mobipocket e-book" : "Mobipocket ekönyv",
+ "Windows Installer package" : "Windows Installer-csomag",
+ "Perl script" : "Perl-parancsfájl",
+ "PHP script" : "PHP-parancsfájl",
+ "Tar archive" : "Tar-archívum",
+ "XML document" : "XML-dokumentum",
+ "YAML document" : "YAML-dokumentum",
+ "Zip archive" : "Zip-archívum",
+ "Zstandard archive" : "Zstandard-archívum",
+ "AAC audio" : "AAC-hang",
+ "FLAC audio" : "FLAC-hang",
+ "MPEG-4 audio" : "MPEG-4-hang",
+ "MP3 audio" : "MP3-hang",
+ "Ogg audio" : "Ogg-hang",
+ "RIFF/WAVe standard Audio" : "RIFF/WAVe szabványos hang",
+ "WebM audio" : "WebM-hang",
+ "MP3 ShoutCast playlist" : "MP3 ShoutCast-lejátszólista",
+ "Windows BMP image" : "Windows BMP-kép",
+ "Better Portable Graphics image" : "Better Portable Graphics-kép",
+ "EMF image" : "EMF-kép",
+ "GIF image" : "GIF-kép",
+ "HEIC image" : "HEIC-kép",
+ "HEIF image" : "HEIF-kép",
+ "JPEG-2000 JP2 image" : "JPEG-2000 JP2-kép",
+ "JPEG image" : "JPEG-kép",
+ "PNG image" : "PNG-kép",
+ "SVG image" : "SVG-kép",
+ "Truevision Targa image" : "Truevision Targa-kép",
+ "TIFF image" : "TIFF-kép",
+ "WebP image" : "WebP-kép",
+ "Digital raw image" : "Digitális nyerskép",
+ "Windows Icon" : "Windows-ikon",
+ "Email message" : "E-mail-üzenet",
+ "VCS/ICS calendar" : "VCS/ICS-naptár",
+ "CSS stylesheet" : "CSS-stíluslap",
+ "CSV document" : "CSV-dokumentum",
+ "HTML document" : "HTML-dokumentum",
+ "Markdown document" : "Markdown-dokumentum",
+ "Org-mode file" : "Org-mode-fájl",
+ "Plain text document" : "Egyszerű szöveges dokumentum",
+ "Rich Text document" : "Rich Text-dokumentum",
+ "Electronic business card" : "Elektronikus névjegykártya",
+ "C++ source code" : "C++-forráskód",
+ "LDIF address book" : "LDIF-címjegyzék",
+ "NFO document" : "NFO-dokumentum",
+ "PHP source" : "PHP-forráskód",
+ "Python script" : "Python-parancsfájl",
+ "ReStructuredText document" : "ReStructuredText-dokumentum",
+ "3GPP multimedia file" : "3GPP-multimédiafájl",
+ "MPEG video" : "MPEG-videó",
+ "DV video" : "DV-videó",
+ "MPEG-2 transport stream" : "MPEG-2 átviteli adatfolyam",
+ "MPEG-4 video" : "MPEG-4-videó",
+ "Ogg video" : "Ogg-videó",
+ "QuickTime video" : "QuickTime-videó",
+ "WebM video" : "WebM-videó",
+ "Flash video" : "FLash-videó",
+ "Matroska video" : "Matroska-videó",
+ "Windows Media video" : "Windows Media-videó",
+ "AVI video" : "AVI-videó",
"Error occurred while checking server setup" : "Hiba történt a kiszolgálóbeállítások ellenőrzésekor",
"For more details see the {linkstart}documentation ↗{linkend}." : "További részletekért lásd a {linkstart}dokumentációt↗{linkend}.",
"unknown text" : "ismeretlen szöveg",
@@ -146,6 +265,8 @@
"Account name" : "Fiók neve",
"Server side authentication failed!" : "A kiszolgálóoldali hitelesítés sikertelen.",
"Please contact your administrator." : "Lépjen kapcsolatba a rendszergazdával.",
+ "Session error" : "Munkamenethiba",
+ "It appears your session token has expired, please refresh the page and try again." : "Úgy tűnik, hogy a munkamenettoken lejárt, frissítse az oldalt, és próbálja újra.",
"An internal error occurred." : "Belső hiba történt.",
"Please try again or contact your administrator." : "Próbálja meg újra, vagy vegye fel a kapcsolatot a rendszergazdával.",
"Password" : "Jelszó",
@@ -163,7 +284,7 @@
"Password cannot be changed. Please contact your administrator." : "A jelszó nem módosítható. Lépjen kapcsolatba a rendszergazdával.",
"New password" : "Új jelszó",
"Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "A fájljai titkosítva vannak. A jelszó visszaállítása után sehogy sem fogja tudja visszaszerezni azokat. Ha nem tudja mi a teendő, akkor beszéljen a helyi rendszergazdával. Biztos, hogy folytatja?",
- "I know what I'm doing" : "Tudom mit csinálok.",
+ "I know what I'm doing" : "Tudom mit csinálok",
"Resetting password" : "Jelszó visszaállítása",
"Schedule work & meetings, synced with all your devices." : "Ütemezett munkáját és találkozóit, szinkronizálva az összes eszközén.",
"Keep your colleagues and friends in one place without leaking their private info." : "Tartsa egy helyen kollégáit és barátait, anélkül hogy kiszivárogtatná a személyes adataikat.",
@@ -205,35 +326,49 @@
"Login form is disabled." : "A bejelentkezési űrlap letiltva.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "A Nextcloud bejelentkezési űrlap le van tiltva. Használjon más bejelentkezési lehetőséget, ha van ilyen, vagy lépjen kapcsolatba az adminisztrációval.",
"More actions" : "További műveletek",
+ "User menu" : "Felhasználói menü",
+ "You will be identified as {user} by the account owner." : "A fióktulajdonos által {user} felhasználóként lesz azonosítva.",
+ "You are currently not identified." : "Jelenleg nincs azonosítva.",
+ "Set public name" : "Nyilvános név beállítása",
+ "Change public name" : "Nyilvános név módosítása",
"Password is too weak" : "Jelszó túl gyenge",
- "Password is weak" : "Jelszó gyenge",
- "Password is average" : "Jelszó átlagos",
+ "Password is weak" : "A jelszó gyenge",
+ "Password is average" : "A jelszó átlagos",
"Password is strong" : "A jelszó erős",
"Password is very strong" : "A jelszó nagyon erős",
- "Password is extremely strong" : "A jelszó extrém erős",
- "Unknown password strength" : "Ismeretlen jelszó erősség",
+ "Password is extremely strong" : "A jelszó kiemelkedően erős",
+ "Unknown password strength" : "Ismeretlen jelszóerősség",
+ "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "Az adatkönyvtára és a fájljai valószínűleg elérhetőek az internetről, mert a <code>.htaccess</code> fájl nem működik.",
+ "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "A kiszolgáló helyes beállításához {linkStart}tekintse meg a dokumentációt{linkEnd}",
"Autoconfig file detected" : "Autoconfig fájl felismerve",
+ "The setup form below is pre-filled with the values from the config file." : "A lenti beállítási űrlap a konfigurációs fájlban lévő értékekkel van előre kitöltve.",
"Security warning" : "Biztonsági figyelmeztetés",
+ "Create administration account" : "Rendszergazdai fiók létrehozása",
+ "Administration account name" : "Rendszergazdai fiók neve",
+ "Administration account password" : "Rendszergazdai fiók jelszava",
"Storage & database" : "Tárhely és adatbázis",
- "Data folder" : "Adat mappa",
+ "Data folder" : "Adatmappa",
+ "Database configuration" : "Adatbázis-beállítások",
+ "Only {firstAndOnlyDatabase} is available." : "Csak a(z) {firstAndOnlyDatabase} érhető el.",
"Install and activate additional PHP modules to choose other database types." : "Telepítse és aktiválja a bővített PHP modulokat, hogy tudjon más adatbázis típust is kiválasztani.",
"For more details check out the documentation." : "További részletekért nézze meg a dokumentációt.",
"Performance warning" : "Teljesítménybeli figyelmeztetés",
"You chose SQLite as database." : "SQLite adatbázist választott.",
"SQLite should only be used for minimal and development instances. For production we recommend a different database backend." : "Az SQLite-ot csak minimális és fejlesztési célú példányok esetén szabad használni. Éles működés esetén más adatbázis-kezelőt ajánlunk.",
"If you use clients for file syncing, the use of SQLite is highly discouraged." : "Ha klienseket használt a fájlszinkronizáláshoz, akkor az SQLite használata erősen ellenjavallt.",
- "Database user" : "Adatbázis felhasználónév",
- "Database password" : "Adatbázis jelszó",
- "Database name" : "Az adatbázis neve",
- "Database tablespace" : "Az adatbázis táblázattér (tablespace)",
+ "Database user" : "Adatbázis-felhasználó",
+ "Database password" : "Adatbázisjelszó",
+ "Database name" : "Adatbázis neve",
+ "Database tablespace" : "Adatbázis táblatere",
"Please specify the port number along with the host name (e.g., localhost:5432)." : "Adja meg a port számát a kiszolgáló neve után (például localhost:5432).",
"Database host" : "Adatbázis-kiszolgáló",
+ "localhost" : "localhost",
"Installing …" : "Telepítés…",
"Install" : "Telepítés",
"Need help?" : "Segítségre van szüksége?",
"See the documentation" : "Nézze meg a dokumentációt",
"{name} version {version} and above" : "{name} {version} verziója, és újabb",
- "This browser is not supported" : "Ez a böngésző nem támogatott.",
+ "This browser is not supported" : "Ez a böngésző nem támogatott",
"Your browser is not supported. Please upgrade to a newer version or a supported one." : "A böngészője nem támogatott. Frissítsen újabb verzióra, vagy váltson egy támogatott böngészőre.",
"Continue with this unsupported browser" : "Folytatás ezzel a nem támogatott böngészővel",
"Supported versions" : "Támogatott verziók",
@@ -257,7 +392,7 @@
"(all selected)" : "(összes kiválasztva)",
"({count} selected)" : "({count} kiválasztva)",
"Error loading file exists template" : "Hiba a „fájl már létezik” sablon betöltésekor",
- "Saving …" : "Mentés ...",
+ "Saving …" : "Mentés…",
"seconds ago" : "pár másodperce",
"Connection to server lost" : "A kapcsolat megszakadt a kiszolgálóval",
"_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Probléma az oldal betöltésekor, újratöltés %n másodperc múlva","Probléma az oldal betöltésekor, újratöltés %n másodperc múlva"],
@@ -270,7 +405,7 @@
"Failed to add the item to the project" : "Az elem hozzáadása a projekthez sikertelen",
"Connect items to a project to make them easier to find" : "Kössön hozzá elemeket a projekthez, hogy könnyebben megtalálhatóak legyenek",
"Type to search for existing projects" : "Gépeljen a meglévő projektet kereséséhez",
- "New in" : "Új itt",
+ "New in" : "Újdonságok a következőben:",
"View changelog" : "Változásnapló megtekintése",
"No action available" : "Nincs elérhető művelet",
"Error fetching contact actions" : "Hiba a kapcsolati műveletek lekérésekor",
@@ -283,15 +418,16 @@
"Rename" : "Átnevezés",
"Collaborative tags" : "Együttműködési címkék",
"No tags found" : "Nem találhatók címkék",
- "Clipboard not available, please copy manually" : "A vágólap nem érhető el. Másolja át kézileg.",
+ "Clipboard not available, please copy manually" : "A vágólap nem érhető el, másolja kézileg",
"Personal" : "Személyes",
"Accounts" : "Fiókok",
"Admin" : "Rendszergazda",
"Help" : "Súgó",
"Access forbidden" : "A hozzáférés nem engedélyezett",
+ "You are not allowed to access this page." : "Nem férhet hozzá ehhez az oldalhoz.",
+ "Back to %s" : "Vissza ide %s",
"Page not found" : "Az oldal nem található",
"The page could not be found on the server or you may not be allowed to view it." : "Az oldal nem található a kiszolgálón, vagy lehet, hogy nincs engedélye arra, hogy megnézze.",
- "Back to %s" : "Vissza ide %s",
"Too many requests" : "Túl sok kérés",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Túl sok kérés érkezett a hálózatától. Próbálja újra később, vagy ha ez egy hiba, akkor forduljon a rendszergazdához.",
"Error" : "Hiba",
@@ -300,7 +436,7 @@
"If this happens again, please send the technical details below to the server administrator." : "Ha ez még egyszer előfordul küldd el az alábbi technikai részleteket a rendszergazdának.",
"More details can be found in the server log." : "További részletek találhatók a kiszolgáló naplójában.",
"For more details see the documentation ↗." : "További részletekért nézze meg a dokumentációt ↗.",
- "Technical details" : "Technikai adatok",
+ "Technical details" : "Műszaki adatok",
"Remote Address: %s" : "Távoli cím: %s",
"Request ID: %s" : "Kérésazonosító: %s",
"Type: %s" : "Típus: %s",
@@ -336,7 +472,7 @@
"Password sent!" : "Jelszó elküldve.",
"You are not authorized to request a password for this share" : "Nincs jogosultsága, hogy jelszót kérjen ehhez a megosztáshoz",
"Two-factor authentication" : "Kétfaktoros hitelesítés",
- "Enhanced security is enabled for your account. Choose a second factor for authentication:" : "A fokozott biztonság engedélyezett a fiókja számára. Válasszon egy második faktort a hitelesítéshez.",
+ "Enhanced security is enabled for your account. Choose a second factor for authentication:" : "A fokozott biztonság engedélyezett a fiókja számára. Válasszon egy második faktort a hitelesítéshez:",
"Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Nem lehet betölteni legalább egy engedélyezett kétfaktoros hitelesítési módot. Lépjen kapcsolatba a rendszergazdával.",
"Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance." : "A kétfaktoros hitelesítés kötelező, de még nem lett beállítva a fiókjához. Segítségért lépjen kapcsolatba a rendszergazdával.",
"Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication." : "A kétfaktoros hitelesítés be van tartatva, de nincs beállítva a fiókján. Folytassa a kétfaktoros hitelesítés beállításával.",
@@ -366,17 +502,13 @@
"Maintenance mode" : "Karbantartási üzemmód",
"This %s instance is currently in maintenance mode, which may take a while." : "Ez a %s példány éppen karbantartási üzemmódban van, amely eltarthat egy darabig.",
"This page will refresh itself when the instance is available again." : "Ez az oldal frissíteni fogja magát, amint a példány ismét elérhető lesz.",
- "Contact your system administrator if this message persists or appeared unexpectedly." : "Ha ez az üzenet mindig vagy váratlanul megjelenik, akkor keresse fel a rendszergazdáját!",
- "Currently open" : "Jelenleg nyitva",
- "Login with username or email" : "Bejelentkezés felhasználónévvel vagy e-mail-címmel",
- "Login with username" : "Bejelentkezés felhasználónévvel",
+ "Contact your system administrator if this message persists or appeared unexpectedly." : "Ha ez az üzenet mindig vagy váratlanul megjelenik, akkor keresse fel a rendszergazdáját.",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Csevegés, videóhívások, képernyőmegosztás, online megbeszélések és webes konferencia – a böngészőjében és mobilalkalmazásokkal.",
"You have not added any info yet" : "Még nem adott meg semmilyen információt",
"{user} has not added any info yet" : "{user} még nem adott meg semmilyen információt",
"Error opening the user status modal, try hard refreshing the page" : "Hiba a felhasználói állapot párbeszédablak megnyitásakor, próbálja meg az oldal kényszerített újratöltését",
"Edit Profile" : "Profil szerkesztése",
"The headline and about sections will show up here" : "A címsor és a névjegy szakaszok itt fognak megjelenni",
- "Error loading message template: {error}" : "Hiba az üzenetsablon betöltésekor: {error}",
"Very weak password" : "Nagyon gyenge jelszó",
"Weak password" : "Gyenge jelszó",
"So-so password" : "Nem túl jó jelszó",
diff --git a/core/l10n/id.js b/core/l10n/id.js
index 7e62f8cbf2e..2bf59db78d7 100644
--- a/core/l10n/id.js
+++ b/core/l10n/id.js
@@ -32,20 +32,20 @@ OC.L10N.register(
"Could not reset password because the token is invalid" : "Tidak dapat mengatur ulang kata sandi karena token tidak valid",
"%s password reset" : "%s kata sandi disetel ulang",
"Password reset" : "Setel ulang kata sandi",
- "Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Klik tombol berikut untuk menyetel ulang kata sandi Anda. Jika Anda tidak melakukan permintaan setel ulang kata sandi, abaikan surel ini.",
- "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Klik tautan berikut untuk menyetel ulang kata sandi Anda. Jika Anda tidak melakukan permintaan setel ulang kata sandi, abaikan surel ini.",
+ "Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Klik tombol berikut untuk menyetel ulang kata sandi Anda. Jika Anda tidak melakukan permintaan setel ulang kata sandi, abaikan email ini.",
+ "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Klik tautan berikut untuk menyetel ulang kata sandi Anda. Jika Anda tidak melakukan permintaan setel ulang kata sandi, abaikan email ini.",
"Reset your password" : "Setel ulang kata sandi Anda",
"Internal error" : "Kesalahan internal",
- "Nextcloud Server" : "Server Nextcloud",
- "Some of your link shares have been removed" : "Beberapa tautan berbagi Anda telah dihapus",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Dikarenakan isu bug keamanan, kami perlu menghapus beberapa tautan berbagi Anda. Silakan lihat tautan berikut untuk informasi lebih lanjut.",
- "Learn more ↗" : "Pelajari lebih lanjut ↗",
- "Preparing update" : "Mempersiapkan pembaruan",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Langkah perbaikan:",
"Repair info:" : "Info perbaikan:",
"Repair warning:" : "Peringatan perbaikan:",
"Repair error:" : "Galat perbaikan:",
+ "Nextcloud Server" : "Server Nextcloud",
+ "Some of your link shares have been removed" : "Beberapa tautan berbagi Anda telah dihapus",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Dikarenakan isu bug keamanan, kami perlu menghapus beberapa tautan berbagi Anda. Silakan lihat tautan berikut untuk informasi lebih lanjut.",
+ "Learn more ↗" : "Pelajari lebih lanjut ↗",
+ "Preparing update" : "Mempersiapkan pembaruan",
"Turned on maintenance mode" : "Hidupkan mode perawatan",
"Turned off maintenance mode" : "Matikan mode perawatan",
"Maintenance mode is kept active" : "Mode Pemeliharaan masih aktif",
@@ -106,7 +106,7 @@ OC.L10N.register(
"Passwordless authentication is not supported in your browser." : "Otentikasi tanpa kata sandi tidak didukung peramban Anda.",
"Reset password" : "Setel ulang kata sandi",
"Back to login" : "Kembali ke log masuk",
- "Couldn't send reset email. Please contact your administrator." : "Tidak dapat mengirim surel setel ulang. Silakan hubungi administrator Anda.",
+ "Couldn't send reset email. Please contact your administrator." : "Tidak dapat mengirim email setel ulang. Silakan hubungi administrator Anda.",
"Password cannot be changed. Please contact your administrator." : "Kata sandi tidak dapat diubah. Silakan hubungi administrator Anda.",
"New password" : "Kata sandi baru",
"Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "Berkas Anda terenkripsi. Tidak memungkinkan untuk mendapatkan kembali data Anda setelah kata sandi disetel ulang. Jika tidak yakin, silakan hubungi administrator Anda sebelum melanjutkan. Apa Anda ingin melanjutkan?",
@@ -114,7 +114,7 @@ OC.L10N.register(
"Resetting password" : "Menyetel ulang kata sandi",
"Schedule work & meetings, synced with all your devices." : "Penjadwalan rapat & pekerjaan, tersinkronisasi dengan gawai Anda.",
"Keep your colleagues and friends in one place without leaking their private info." : "Simpan info teman dan kolega Anda dalam satu tempat, tanpa membocorkan privat mereka.",
- "Simple email app nicely integrated with Files, Contacts and Calendar." : "Aplikasi klien surel sederhana, terintegrasi dengan Berkas, Kontak, dan Kalender.",
+ "Simple email app nicely integrated with Files, Contacts and Calendar." : "Aplikasi klien email sederhana, terintegrasi dengan Berkas, Kontak, dan Kalender.",
"Recommended apps" : "Aplikasi terekomendasi",
"Loading apps …" : "Memuat aplikasi ...",
"Could not fetch list of apps from the App Store." : "Tidak dapat mengambil daftar aplikasi dari App Store.",
@@ -202,11 +202,12 @@ OC.L10N.register(
"Collaborative tags" : "Tag kolaboratif",
"No tags found" : "Tag tidak ditemukan",
"Personal" : "Pribadi",
+ "Accounts" : "Accounts",
"Admin" : "Admin",
"Help" : "Bantuan",
"Access forbidden" : "Akses ditolak",
- "Page not found" : "Halaman tidak ditemukan",
"Back to %s" : "Kembali ke %s",
+ "Page not found" : "Halaman tidak ditemukan",
"Too many requests" : "Terlalu banyak permintaan",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Ada terlalu banyak permintaan dari jaringan Anda. Coba lagi nanti atau hubungi administrator Anda jika ini adalah kesalahan.",
"Error" : "Kesalahan",
@@ -241,8 +242,8 @@ OC.L10N.register(
"You can close this window." : "Anda dapat menutup jendela ini.",
"Previous" : "Sebelumnya",
"This share is password-protected" : "Berbagi ini dilindungi kata sandi",
- "Please type in your email address to request a temporary password" : "Silakan ketik alamat surel Anda untuk meminta kata sandi sementara",
- "Email address" : "Alamat surel",
+ "Please type in your email address to request a temporary password" : "Silakan ketik alamat email Anda untuk meminta kata sandi sementara",
+ "Email address" : "Alamat email",
"Password sent!" : "Kata sandi terkirim!",
"You are not authorized to request a password for this share" : "Anda tidak diizinkan untuk meminta kata sandi untuk pembagian ini",
"Two-factor authentication" : "Otentikasi Two-factor",
@@ -280,7 +281,6 @@ OC.L10N.register(
"You have not added any info yet" : "Anda belum menambahkan info apa pun",
"{user} has not added any info yet" : "{user} belum menambahkan info apa pun",
"Edit Profile" : "Sunting profil",
- "Error loading message template: {error}" : "Kesalahan memuat templat pesan: {error}",
"Very weak password" : "Kata sandi sangat lemah",
"Weak password" : "Kata sandi lemah",
"So-so password" : "Kata sandi lumayan",
diff --git a/core/l10n/id.json b/core/l10n/id.json
index a2ac30ed6c9..72cf7bcd2db 100644
--- a/core/l10n/id.json
+++ b/core/l10n/id.json
@@ -30,20 +30,20 @@
"Could not reset password because the token is invalid" : "Tidak dapat mengatur ulang kata sandi karena token tidak valid",
"%s password reset" : "%s kata sandi disetel ulang",
"Password reset" : "Setel ulang kata sandi",
- "Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Klik tombol berikut untuk menyetel ulang kata sandi Anda. Jika Anda tidak melakukan permintaan setel ulang kata sandi, abaikan surel ini.",
- "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Klik tautan berikut untuk menyetel ulang kata sandi Anda. Jika Anda tidak melakukan permintaan setel ulang kata sandi, abaikan surel ini.",
+ "Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Klik tombol berikut untuk menyetel ulang kata sandi Anda. Jika Anda tidak melakukan permintaan setel ulang kata sandi, abaikan email ini.",
+ "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Klik tautan berikut untuk menyetel ulang kata sandi Anda. Jika Anda tidak melakukan permintaan setel ulang kata sandi, abaikan email ini.",
"Reset your password" : "Setel ulang kata sandi Anda",
"Internal error" : "Kesalahan internal",
- "Nextcloud Server" : "Server Nextcloud",
- "Some of your link shares have been removed" : "Beberapa tautan berbagi Anda telah dihapus",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Dikarenakan isu bug keamanan, kami perlu menghapus beberapa tautan berbagi Anda. Silakan lihat tautan berikut untuk informasi lebih lanjut.",
- "Learn more ↗" : "Pelajari lebih lanjut ↗",
- "Preparing update" : "Mempersiapkan pembaruan",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Langkah perbaikan:",
"Repair info:" : "Info perbaikan:",
"Repair warning:" : "Peringatan perbaikan:",
"Repair error:" : "Galat perbaikan:",
+ "Nextcloud Server" : "Server Nextcloud",
+ "Some of your link shares have been removed" : "Beberapa tautan berbagi Anda telah dihapus",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Dikarenakan isu bug keamanan, kami perlu menghapus beberapa tautan berbagi Anda. Silakan lihat tautan berikut untuk informasi lebih lanjut.",
+ "Learn more ↗" : "Pelajari lebih lanjut ↗",
+ "Preparing update" : "Mempersiapkan pembaruan",
"Turned on maintenance mode" : "Hidupkan mode perawatan",
"Turned off maintenance mode" : "Matikan mode perawatan",
"Maintenance mode is kept active" : "Mode Pemeliharaan masih aktif",
@@ -104,7 +104,7 @@
"Passwordless authentication is not supported in your browser." : "Otentikasi tanpa kata sandi tidak didukung peramban Anda.",
"Reset password" : "Setel ulang kata sandi",
"Back to login" : "Kembali ke log masuk",
- "Couldn't send reset email. Please contact your administrator." : "Tidak dapat mengirim surel setel ulang. Silakan hubungi administrator Anda.",
+ "Couldn't send reset email. Please contact your administrator." : "Tidak dapat mengirim email setel ulang. Silakan hubungi administrator Anda.",
"Password cannot be changed. Please contact your administrator." : "Kata sandi tidak dapat diubah. Silakan hubungi administrator Anda.",
"New password" : "Kata sandi baru",
"Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "Berkas Anda terenkripsi. Tidak memungkinkan untuk mendapatkan kembali data Anda setelah kata sandi disetel ulang. Jika tidak yakin, silakan hubungi administrator Anda sebelum melanjutkan. Apa Anda ingin melanjutkan?",
@@ -112,7 +112,7 @@
"Resetting password" : "Menyetel ulang kata sandi",
"Schedule work & meetings, synced with all your devices." : "Penjadwalan rapat & pekerjaan, tersinkronisasi dengan gawai Anda.",
"Keep your colleagues and friends in one place without leaking their private info." : "Simpan info teman dan kolega Anda dalam satu tempat, tanpa membocorkan privat mereka.",
- "Simple email app nicely integrated with Files, Contacts and Calendar." : "Aplikasi klien surel sederhana, terintegrasi dengan Berkas, Kontak, dan Kalender.",
+ "Simple email app nicely integrated with Files, Contacts and Calendar." : "Aplikasi klien email sederhana, terintegrasi dengan Berkas, Kontak, dan Kalender.",
"Recommended apps" : "Aplikasi terekomendasi",
"Loading apps …" : "Memuat aplikasi ...",
"Could not fetch list of apps from the App Store." : "Tidak dapat mengambil daftar aplikasi dari App Store.",
@@ -200,11 +200,12 @@
"Collaborative tags" : "Tag kolaboratif",
"No tags found" : "Tag tidak ditemukan",
"Personal" : "Pribadi",
+ "Accounts" : "Accounts",
"Admin" : "Admin",
"Help" : "Bantuan",
"Access forbidden" : "Akses ditolak",
- "Page not found" : "Halaman tidak ditemukan",
"Back to %s" : "Kembali ke %s",
+ "Page not found" : "Halaman tidak ditemukan",
"Too many requests" : "Terlalu banyak permintaan",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Ada terlalu banyak permintaan dari jaringan Anda. Coba lagi nanti atau hubungi administrator Anda jika ini adalah kesalahan.",
"Error" : "Kesalahan",
@@ -239,8 +240,8 @@
"You can close this window." : "Anda dapat menutup jendela ini.",
"Previous" : "Sebelumnya",
"This share is password-protected" : "Berbagi ini dilindungi kata sandi",
- "Please type in your email address to request a temporary password" : "Silakan ketik alamat surel Anda untuk meminta kata sandi sementara",
- "Email address" : "Alamat surel",
+ "Please type in your email address to request a temporary password" : "Silakan ketik alamat email Anda untuk meminta kata sandi sementara",
+ "Email address" : "Alamat email",
"Password sent!" : "Kata sandi terkirim!",
"You are not authorized to request a password for this share" : "Anda tidak diizinkan untuk meminta kata sandi untuk pembagian ini",
"Two-factor authentication" : "Otentikasi Two-factor",
@@ -278,7 +279,6 @@
"You have not added any info yet" : "Anda belum menambahkan info apa pun",
"{user} has not added any info yet" : "{user} belum menambahkan info apa pun",
"Edit Profile" : "Sunting profil",
- "Error loading message template: {error}" : "Kesalahan memuat templat pesan: {error}",
"Very weak password" : "Kata sandi sangat lemah",
"Weak password" : "Kata sandi lemah",
"So-so password" : "Kata sandi lumayan",
diff --git a/core/l10n/is.js b/core/l10n/is.js
index 1485738208e..ff951ceeff0 100644
--- a/core/l10n/is.js
+++ b/core/l10n/is.js
@@ -51,6 +51,11 @@ OC.L10N.register(
"No translation provider available" : "Engin þýðingaþjónusta tiltæk",
"Could not detect language" : "Gat ekki greint tungumálið",
"Unable to translate" : "Næ ekki að þýða",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Þrep viðgerðar:",
+ "Repair info:" : "Viðgerðarupplýsingar:",
+ "Repair warning:" : "Viðvörun vegna viðgerðar:",
+ "Repair error:" : "Villa í viðgerð:",
"Nextcloud Server" : "Nextcloud þjónn",
"Some of your link shares have been removed" : "Sumir tenglar þínir á sameignir hafa verið fjarlægðir",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Vegna öryggisgalla hafa sumir tenglar þínir á sameignir hafa verið fjarlægðir. Skoðaðu tengilinn til að sjá frekari upplýsingar.",
@@ -58,11 +63,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Settu inn áskriftarlykilinn þinn í aðstoðarforritið til að lyfta takmörkum á aðgangnum þínum. Þetta gefur þér einnig alla viðbótareiginleikana sem Nextcloud Enterprise fyrirtækjaáskrift býður, enda er sterklega mælt með þeim fyrir verklag í fyrirtækjum.",
"Learn more ↗" : "Kanna nánar ↗",
"Preparing update" : "Undirbý uppfærslu",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Þrep viðgerðar:",
- "Repair info:" : "Viðgerðarupplýsingar:",
- "Repair warning:" : "Viðvörun vegna viðgerðar:",
- "Repair error:" : "Villa í viðgerð:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Endilega notaðu uppfærslutólið af skipanalínu, því uppfærslur í vafra eru gerðar óvirkar í config.php.",
"Turned on maintenance mode" : "Kveikt á viðhaldsham",
"Turned off maintenance mode" : "Slökkt á viðhaldsham",
@@ -300,9 +300,9 @@ OC.L10N.register(
"Admin" : "Stjórnun",
"Help" : "Hjálp",
"Access forbidden" : "Aðgangur bannaður",
+ "Back to %s" : "Til baka í %s",
"Page not found" : "Síða fannst ekki",
"The page could not be found on the server or you may not be allowed to view it." : "Síðan fannst ekki á netþjóninum eða að þér er ekki heimilt að skoða hana.",
- "Back to %s" : "Til baka í %s",
"Too many requests" : "Of margar beiðnir",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Það komu of margar beiðnir frá netkerfinu þínu. Reyndu aftur eða hafðu samband við kerfisstjóra ef þetta er ekki rétt.",
"Error" : "Villa",
@@ -378,16 +378,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Þessi %s er nú í viðhaldsham, sem getur tekið smá stund.",
"This page will refresh itself when the instance is available again." : "Þessi síða mun uppfæra sig þegar tilvikið er í boði á ný.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Hafðu samband við kerfisstjóra ef þessi skilaboð eru viðvarandi eða birtust óvænt.",
- "Currently open" : "Opið núna",
- "Login with username or email" : "Skrá inn með notandanafni eða tölvupóstfangi",
- "Login with username" : "Skrá inn með notandanafni",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Spjall, myndfundir, skjádeiling, netfundir og vefráðstefnur – í vafranum þínum og með farsímaforritum.",
"You have not added any info yet" : "Þú hefur ekki bætt við neinum upplýsingum ennþá",
"{user} has not added any info yet" : "{user} hefur ekki bætt við neinum upplýsingum ennþá",
"Error opening the user status modal, try hard refreshing the page" : "Villa við að opna stöðuglugga notandans, prófaðu að þvinga endurlestur síðunnar",
"Edit Profile" : "Breyta sniði",
"The headline and about sections will show up here" : "Fyrirsögnin og hlutar um hugbúnaðinn munu birtast hér",
- "Error loading message template: {error}" : "Villa við að hlaða inn sniðmáti fyrir skilaboð: {error}",
"Very weak password" : "Mjög veikt lykilorð",
"Weak password" : "Veikt lykilorð",
"So-so password" : "Miðlungs lykilorð",
diff --git a/core/l10n/is.json b/core/l10n/is.json
index 3280e8872c2..dad70977ff0 100644
--- a/core/l10n/is.json
+++ b/core/l10n/is.json
@@ -49,6 +49,11 @@
"No translation provider available" : "Engin þýðingaþjónusta tiltæk",
"Could not detect language" : "Gat ekki greint tungumálið",
"Unable to translate" : "Næ ekki að þýða",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Þrep viðgerðar:",
+ "Repair info:" : "Viðgerðarupplýsingar:",
+ "Repair warning:" : "Viðvörun vegna viðgerðar:",
+ "Repair error:" : "Villa í viðgerð:",
"Nextcloud Server" : "Nextcloud þjónn",
"Some of your link shares have been removed" : "Sumir tenglar þínir á sameignir hafa verið fjarlægðir",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Vegna öryggisgalla hafa sumir tenglar þínir á sameignir hafa verið fjarlægðir. Skoðaðu tengilinn til að sjá frekari upplýsingar.",
@@ -56,11 +61,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Settu inn áskriftarlykilinn þinn í aðstoðarforritið til að lyfta takmörkum á aðgangnum þínum. Þetta gefur þér einnig alla viðbótareiginleikana sem Nextcloud Enterprise fyrirtækjaáskrift býður, enda er sterklega mælt með þeim fyrir verklag í fyrirtækjum.",
"Learn more ↗" : "Kanna nánar ↗",
"Preparing update" : "Undirbý uppfærslu",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Þrep viðgerðar:",
- "Repair info:" : "Viðgerðarupplýsingar:",
- "Repair warning:" : "Viðvörun vegna viðgerðar:",
- "Repair error:" : "Villa í viðgerð:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Endilega notaðu uppfærslutólið af skipanalínu, því uppfærslur í vafra eru gerðar óvirkar í config.php.",
"Turned on maintenance mode" : "Kveikt á viðhaldsham",
"Turned off maintenance mode" : "Slökkt á viðhaldsham",
@@ -298,9 +298,9 @@
"Admin" : "Stjórnun",
"Help" : "Hjálp",
"Access forbidden" : "Aðgangur bannaður",
+ "Back to %s" : "Til baka í %s",
"Page not found" : "Síða fannst ekki",
"The page could not be found on the server or you may not be allowed to view it." : "Síðan fannst ekki á netþjóninum eða að þér er ekki heimilt að skoða hana.",
- "Back to %s" : "Til baka í %s",
"Too many requests" : "Of margar beiðnir",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Það komu of margar beiðnir frá netkerfinu þínu. Reyndu aftur eða hafðu samband við kerfisstjóra ef þetta er ekki rétt.",
"Error" : "Villa",
@@ -376,16 +376,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Þessi %s er nú í viðhaldsham, sem getur tekið smá stund.",
"This page will refresh itself when the instance is available again." : "Þessi síða mun uppfæra sig þegar tilvikið er í boði á ný.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Hafðu samband við kerfisstjóra ef þessi skilaboð eru viðvarandi eða birtust óvænt.",
- "Currently open" : "Opið núna",
- "Login with username or email" : "Skrá inn með notandanafni eða tölvupóstfangi",
- "Login with username" : "Skrá inn með notandanafni",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Spjall, myndfundir, skjádeiling, netfundir og vefráðstefnur – í vafranum þínum og með farsímaforritum.",
"You have not added any info yet" : "Þú hefur ekki bætt við neinum upplýsingum ennþá",
"{user} has not added any info yet" : "{user} hefur ekki bætt við neinum upplýsingum ennþá",
"Error opening the user status modal, try hard refreshing the page" : "Villa við að opna stöðuglugga notandans, prófaðu að þvinga endurlestur síðunnar",
"Edit Profile" : "Breyta sniði",
"The headline and about sections will show up here" : "Fyrirsögnin og hlutar um hugbúnaðinn munu birtast hér",
- "Error loading message template: {error}" : "Villa við að hlaða inn sniðmáti fyrir skilaboð: {error}",
"Very weak password" : "Mjög veikt lykilorð",
"Weak password" : "Veikt lykilorð",
"So-so password" : "Miðlungs lykilorð",
diff --git a/core/l10n/it.js b/core/l10n/it.js
index 1145f167498..44e817498e6 100644
--- a/core/l10n/it.js
+++ b/core/l10n/it.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Attività non trovata",
"Internal error" : "Errore interno",
"Not found" : "Non trovato",
+ "Node is locked" : "Il nodo è bloccato",
"Bad request" : "Richiesta errata",
"Requested task type does not exist" : "Il tipo di attività richiesto non esiste",
"Necessary language model provider is not available" : "Il necessario provider di modello per la lingua non è disponibile",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Nessun fornitore di traduzioni disponibile",
"Could not detect language" : "Impossibile rilevare la lingua",
"Unable to translate" : "Impossibile tradurre",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Fase di riparazione:",
+ "Repair info:" : "Informazioni di riparazione:",
+ "Repair warning:" : "Avviso di riparazione",
+ "Repair error:" : "Errore di riparazione:",
"Nextcloud Server" : "Server Nextcloud",
"Some of your link shares have been removed" : "Alcune delle tue condivisioni tramite collegamento sono state rimosse",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "A causa di un bug di sicurezza abbiamo rimosso alcune delle tue condivisioni tramite collegamento. Vedi il collegamento per ulteriori informazioni.",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Inserisci la tua chiave di abbonamento nell'applicazione di supporto per aumentare il limite di utenti. In questo modo otterrai anche tutti i vantaggi aggiuntivi che Nextcloud Enterprise offre ed è altamente consigliato per l'operatività nelle aziende.",
"Learn more ↗" : "Ulteriori informazioni ↗",
"Preparing update" : "Preparazione dell'aggiornamento",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Fase di riparazione:",
- "Repair info:" : "Informazioni di riparazione:",
- "Repair warning:" : "Avviso di riparazione",
- "Repair error:" : "Errore di riparazione:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Utilizza lo strumento da riga di comando poiché l'aggiornamento da browser è disabilitato nel file config.php.",
"Turned on maintenance mode" : "Modalità di manutenzione attivata",
"Turned off maintenance mode" : "Modalità di manutenzione disattivata",
@@ -80,8 +81,125 @@ OC.L10N.register(
"%s (incompatible)" : "%s (incompatibile)",
"The following apps have been disabled: %s" : "Le seguenti applicazioni sono state disabilitate: %s",
"Already up to date" : "Già aggiornato",
+ "Windows Command Script" : "Script dei comandi di Windows",
+ "Electronic book document" : "Documento libro elettronico",
+ "TrueType Font Collection" : "Raccolta di font TrueType",
+ "Web Open Font Format" : "Formato Web Open Font",
+ "GPX geographic data" : "Dati geografici GPX",
+ "Gzip archive" : "Archivio Gzip",
+ "Adobe Illustrator document" : "Documento di Adobe Illustrator",
+ "Java source code" : "Codice sorgente Java",
+ "JavaScript source code" : "Codice sorgente JavaScript",
+ "JSON document" : "Documento JSON",
+ "Microsoft Access database" : "Database di Microsoft Access",
+ "Microsoft OneNote document" : "Documento di Microsoft OneNote",
+ "Microsoft Word document" : "Documento di Microsoft Word",
"Unknown" : "Sconosciuto",
+ "PDF document" : "Documento PDF",
+ "PostScript document" : "Documento PostScript",
+ "RSS summary" : "Riepilogo RSS",
+ "Android package" : "Pacchetto Android",
+ "KML geographic data" : "Dati geografici KML",
+ "KML geographic compressed data" : "Dati geografici compressi KML",
+ "Lotus Word Pro document" : "Documento Lotus Word Pro",
+ "Excel spreadsheet" : "Foglio di calcolo Excel",
+ "Excel add-in" : "Componente aggiuntivo di Excel",
+ "Excel 2007 binary spreadsheet" : "Foglio di calcolo binario di Excel 2007",
+ "Excel spreadsheet template" : "Modello di foglio di calcolo Excel",
+ "Outlook Message" : "Messaggio di Outlook",
+ "PowerPoint presentation" : "Presentazione PowerPoint",
+ "PowerPoint add-in" : "Componente aggiuntivo di PowerPoint",
+ "PowerPoint presentation template" : "Modello di presentazione di PowerPoint",
+ "Word document" : "Documento Word",
+ "ODF formula" : "Formula ODF",
+ "ODG drawing" : "Disegno ODG",
+ "ODG drawing (Flat XML)" : "Disegno ODG (XML piatto)",
+ "ODG template" : "Modello ODG",
+ "ODP presentation" : "Presentazione ODP",
+ "ODP presentation (Flat XML)" : "Presentazione ODP (XML piatto)",
+ "ODP template" : "Modello ODP",
+ "ODS spreadsheet" : "Foglio di calcolo ODS",
+ "ODS spreadsheet (Flat XML)" : "Foglio di calcolo ODS (XML piatto)",
+ "ODS template" : "Modello ODS",
+ "ODT document" : "Documento ODT",
+ "ODT document (Flat XML)" : "Documento ODT (XML piatto)",
+ "ODT template" : "Modello ODT",
+ "PowerPoint 2007 presentation" : "Presentazione PowerPoint 2007",
+ "PowerPoint 2007 show" : "Visualizzatore di PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Modello di presentazione di PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Foglio di calcolo Excel 2007",
+ "Excel 2007 spreadsheet template" : "Modello di foglio di calcolo di Excel 2007",
+ "Word 2007 document" : "Documento di Word 2007",
+ "Word 2007 document template" : "Modello di documento Word 2007",
+ "Microsoft Visio document" : "Documento di Microsoft Visio",
+ "WordPerfect document" : "Documento WordPerfect",
+ "7-zip archive" : "Archivio 7-zip",
+ "Blender scene" : "Scena di Blender",
+ "Bzip2 archive" : "Archivio Bzip2",
+ "Debian package" : "Pacchetto Debian",
+ "FictionBook document" : "Documento FictionBook",
+ "Unknown font" : "Font sconosciuto",
+ "Krita document" : "Documento Krita",
+ "Mobipocket e-book" : "E-book Mobipocket",
+ "Windows Installer package" : "Pacchetto di installazione di Windows",
+ "Perl script" : "Script Perl",
+ "PHP script" : "Script PHP",
+ "Tar archive" : "Archivio Tar",
+ "XML document" : "Documento XML",
+ "YAML document" : "Documento YAML",
+ "Zip archive" : "Archivio zip",
+ "Zstandard archive" : "Archivio Zstandard",
+ "AAC audio" : "Audio AAC",
+ "FLAC audio" : "Audio FLAC",
+ "MPEG-4 audio" : "Audio MPEG-4",
+ "MP3 audio" : "Audio MP3",
+ "Ogg audio" : "Audio Ogg",
+ "RIFF/WAVe standard Audio" : "Standard audio RIFF/WAVe",
+ "WebM audio" : "Audio WebM",
+ "MP3 ShoutCast playlist" : "Playlist MP3 ShoutCast",
+ "Windows BMP image" : "Immagine BMP di Windows",
+ "Better Portable Graphics image" : "Migliore immagine grafica portatile",
+ "EMF image" : "Immagine EMF",
+ "GIF image" : "Immagine GIF",
+ "HEIC image" : "Immagine HEIC",
+ "HEIF image" : "Immagine HEIF",
+ "JPEG-2000 JP2 image" : "Immagine JPEG-2000 JP2",
+ "JPEG image" : "Immagine JPEG",
"PNG image" : "Immagine PNG",
+ "SVG image" : "Immagine SVG",
+ "Truevision Targa image" : "Immagine Truevision Targa",
+ "TIFF image" : "Immagine TIFF",
+ "WebP image" : "Immagine WebP",
+ "Digital raw image" : "Immagine digitale raw",
+ "Windows Icon" : "Icona di Windows",
+ "Email message" : "messaggio di posta elettronica",
+ "VCS/ICS calendar" : "Calendario VCS/ICS",
+ "CSS stylesheet" : "Foglio di stile CSS",
+ "CSV document" : "Documento CSV",
+ "HTML document" : "Documento HTML",
+ "Markdown document" : "Documento Markdown",
+ "Org-mode file" : "File Org-mode",
+ "Plain text document" : "Documento di testo normale",
+ "Rich Text document" : "Documento Rich Text",
+ "Electronic business card" : "Biglietto da visita elettronico",
+ "C++ source code" : "Codice sorgente C++",
+ "LDIF address book" : "Rubrica LDIF",
+ "NFO document" : "Documento NFO",
+ "PHP source" : "Sorgente PHP",
+ "Python script" : "Script Python",
+ "ReStructuredText document" : "Documento ReStructuredText",
+ "3GPP multimedia file" : "File multimediale 3GPP",
+ "MPEG video" : "Video MPEG",
+ "DV video" : "Video DV",
+ "MPEG-2 transport stream" : "Flusso di trasporto MPEG-2",
+ "MPEG-4 video" : "Video MPEG-4",
+ "Ogg video" : "Video Ogg",
+ "QuickTime video" : "Video QuickTime",
+ "WebM video" : "Video WebM",
+ "Flash video" : "Video flash",
+ "Matroska video" : "Video Matroska",
+ "Windows Media video" : "Video di Windows Media",
+ "AVI video" : "Video AVI",
"Error occurred while checking server setup" : "Si è verificato un errore durante il controllo della configurazione del server",
"For more details see the {linkstart}documentation ↗{linkend}." : "Per ulteriori dettagli, leggi la {linkstart}documentazione ↗{linkend}.",
"unknown text" : "testo sconosciuto",
@@ -210,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "Il modulo di accesso è disabilitato.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Il modulo di accesso a Nextcloud è disabilitato. Usa un'altra opzione di accesso, se disponibile, o contatta l'amministratore.",
"More actions" : "Altre azioni",
+ "User menu" : "Menu utente",
+ "You will be identified as {user} by the account owner." : "Sarai identificato come {user} dal proprietario dell'account.",
+ "You are currently not identified." : "Al momento non sei stato identificato.",
+ "Set public name" : "Imposta nome pubblico",
+ "Change public name" : "Cambia nome pubblico",
"Password is too weak" : "La password è troppo debole",
"Password is weak" : "La password è debole",
"Password is average" : "La password è mediocre",
@@ -303,9 +426,10 @@ OC.L10N.register(
"Admin" : "Admin",
"Help" : "Aiuto",
"Access forbidden" : "Accesso negato",
+ "You are not allowed to access this page." : "Non ti è consentito accedere a questa pagina.",
+ "Back to %s" : "Torna a %s",
"Page not found" : "Pagina non trovata",
"The page could not be found on the server or you may not be allowed to view it." : "La pagina non è stata trovata sul server o forse non ti è permesso vederla.",
- "Back to %s" : "Torna a %s",
"Too many requests" : "Troppe richieste",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Sono arrivate troppe richieste dalla tua rete. Riprova più tardi o contatta il tuo amministratore se questo è un errore.",
"Error" : "Errore",
@@ -381,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Questa istanza di %s è attualmente in manutenzione, potrebbe richiedere del tempo.",
"This page will refresh itself when the instance is available again." : "Questa pagina si aggiornerà quando l'istanza sarà nuovamente disponibile.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contatta il tuo amministratore di sistema se questo messaggio persiste o appare inaspettatamente.",
- "Currently open" : "Attualmente aperto",
- "Login with username or email" : "Accedi con nome utente o email",
- "Login with username" : "Accedi con il nome utente",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chat, videochiamate, condivisione schermo, riunioni in linea e conferenze web – nel tuo browser e con le applicazioni mobili.",
"You have not added any info yet" : "Non hai ancora aggiunto alcuna informazione",
"{user} has not added any info yet" : "{user} non ha ancora aggiunto alcuna informazione",
"Error opening the user status modal, try hard refreshing the page" : "Errore nell'apertura dello stato utente, prova a ricaricare la pagina",
"Edit Profile" : "Modifica il profilo",
"The headline and about sections will show up here" : "Le sezioni del titolo e delle informazioni verranno mostrate qui",
- "Error loading message template: {error}" : "Errore durante il caricamento del modello di messaggio: {error}",
"Very weak password" : "Password molto debole",
"Weak password" : "Password debole",
"So-so password" : "Password così-così",
diff --git a/core/l10n/it.json b/core/l10n/it.json
index a0fe935f1b7..180f72b87b6 100644
--- a/core/l10n/it.json
+++ b/core/l10n/it.json
@@ -42,6 +42,7 @@
"Task not found" : "Attività non trovata",
"Internal error" : "Errore interno",
"Not found" : "Non trovato",
+ "Node is locked" : "Il nodo è bloccato",
"Bad request" : "Richiesta errata",
"Requested task type does not exist" : "Il tipo di attività richiesto non esiste",
"Necessary language model provider is not available" : "Il necessario provider di modello per la lingua non è disponibile",
@@ -50,6 +51,11 @@
"No translation provider available" : "Nessun fornitore di traduzioni disponibile",
"Could not detect language" : "Impossibile rilevare la lingua",
"Unable to translate" : "Impossibile tradurre",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Fase di riparazione:",
+ "Repair info:" : "Informazioni di riparazione:",
+ "Repair warning:" : "Avviso di riparazione",
+ "Repair error:" : "Errore di riparazione:",
"Nextcloud Server" : "Server Nextcloud",
"Some of your link shares have been removed" : "Alcune delle tue condivisioni tramite collegamento sono state rimosse",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "A causa di un bug di sicurezza abbiamo rimosso alcune delle tue condivisioni tramite collegamento. Vedi il collegamento per ulteriori informazioni.",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Inserisci la tua chiave di abbonamento nell'applicazione di supporto per aumentare il limite di utenti. In questo modo otterrai anche tutti i vantaggi aggiuntivi che Nextcloud Enterprise offre ed è altamente consigliato per l'operatività nelle aziende.",
"Learn more ↗" : "Ulteriori informazioni ↗",
"Preparing update" : "Preparazione dell'aggiornamento",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Fase di riparazione:",
- "Repair info:" : "Informazioni di riparazione:",
- "Repair warning:" : "Avviso di riparazione",
- "Repair error:" : "Errore di riparazione:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Utilizza lo strumento da riga di comando poiché l'aggiornamento da browser è disabilitato nel file config.php.",
"Turned on maintenance mode" : "Modalità di manutenzione attivata",
"Turned off maintenance mode" : "Modalità di manutenzione disattivata",
@@ -78,8 +79,125 @@
"%s (incompatible)" : "%s (incompatibile)",
"The following apps have been disabled: %s" : "Le seguenti applicazioni sono state disabilitate: %s",
"Already up to date" : "Già aggiornato",
+ "Windows Command Script" : "Script dei comandi di Windows",
+ "Electronic book document" : "Documento libro elettronico",
+ "TrueType Font Collection" : "Raccolta di font TrueType",
+ "Web Open Font Format" : "Formato Web Open Font",
+ "GPX geographic data" : "Dati geografici GPX",
+ "Gzip archive" : "Archivio Gzip",
+ "Adobe Illustrator document" : "Documento di Adobe Illustrator",
+ "Java source code" : "Codice sorgente Java",
+ "JavaScript source code" : "Codice sorgente JavaScript",
+ "JSON document" : "Documento JSON",
+ "Microsoft Access database" : "Database di Microsoft Access",
+ "Microsoft OneNote document" : "Documento di Microsoft OneNote",
+ "Microsoft Word document" : "Documento di Microsoft Word",
"Unknown" : "Sconosciuto",
+ "PDF document" : "Documento PDF",
+ "PostScript document" : "Documento PostScript",
+ "RSS summary" : "Riepilogo RSS",
+ "Android package" : "Pacchetto Android",
+ "KML geographic data" : "Dati geografici KML",
+ "KML geographic compressed data" : "Dati geografici compressi KML",
+ "Lotus Word Pro document" : "Documento Lotus Word Pro",
+ "Excel spreadsheet" : "Foglio di calcolo Excel",
+ "Excel add-in" : "Componente aggiuntivo di Excel",
+ "Excel 2007 binary spreadsheet" : "Foglio di calcolo binario di Excel 2007",
+ "Excel spreadsheet template" : "Modello di foglio di calcolo Excel",
+ "Outlook Message" : "Messaggio di Outlook",
+ "PowerPoint presentation" : "Presentazione PowerPoint",
+ "PowerPoint add-in" : "Componente aggiuntivo di PowerPoint",
+ "PowerPoint presentation template" : "Modello di presentazione di PowerPoint",
+ "Word document" : "Documento Word",
+ "ODF formula" : "Formula ODF",
+ "ODG drawing" : "Disegno ODG",
+ "ODG drawing (Flat XML)" : "Disegno ODG (XML piatto)",
+ "ODG template" : "Modello ODG",
+ "ODP presentation" : "Presentazione ODP",
+ "ODP presentation (Flat XML)" : "Presentazione ODP (XML piatto)",
+ "ODP template" : "Modello ODP",
+ "ODS spreadsheet" : "Foglio di calcolo ODS",
+ "ODS spreadsheet (Flat XML)" : "Foglio di calcolo ODS (XML piatto)",
+ "ODS template" : "Modello ODS",
+ "ODT document" : "Documento ODT",
+ "ODT document (Flat XML)" : "Documento ODT (XML piatto)",
+ "ODT template" : "Modello ODT",
+ "PowerPoint 2007 presentation" : "Presentazione PowerPoint 2007",
+ "PowerPoint 2007 show" : "Visualizzatore di PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Modello di presentazione di PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Foglio di calcolo Excel 2007",
+ "Excel 2007 spreadsheet template" : "Modello di foglio di calcolo di Excel 2007",
+ "Word 2007 document" : "Documento di Word 2007",
+ "Word 2007 document template" : "Modello di documento Word 2007",
+ "Microsoft Visio document" : "Documento di Microsoft Visio",
+ "WordPerfect document" : "Documento WordPerfect",
+ "7-zip archive" : "Archivio 7-zip",
+ "Blender scene" : "Scena di Blender",
+ "Bzip2 archive" : "Archivio Bzip2",
+ "Debian package" : "Pacchetto Debian",
+ "FictionBook document" : "Documento FictionBook",
+ "Unknown font" : "Font sconosciuto",
+ "Krita document" : "Documento Krita",
+ "Mobipocket e-book" : "E-book Mobipocket",
+ "Windows Installer package" : "Pacchetto di installazione di Windows",
+ "Perl script" : "Script Perl",
+ "PHP script" : "Script PHP",
+ "Tar archive" : "Archivio Tar",
+ "XML document" : "Documento XML",
+ "YAML document" : "Documento YAML",
+ "Zip archive" : "Archivio zip",
+ "Zstandard archive" : "Archivio Zstandard",
+ "AAC audio" : "Audio AAC",
+ "FLAC audio" : "Audio FLAC",
+ "MPEG-4 audio" : "Audio MPEG-4",
+ "MP3 audio" : "Audio MP3",
+ "Ogg audio" : "Audio Ogg",
+ "RIFF/WAVe standard Audio" : "Standard audio RIFF/WAVe",
+ "WebM audio" : "Audio WebM",
+ "MP3 ShoutCast playlist" : "Playlist MP3 ShoutCast",
+ "Windows BMP image" : "Immagine BMP di Windows",
+ "Better Portable Graphics image" : "Migliore immagine grafica portatile",
+ "EMF image" : "Immagine EMF",
+ "GIF image" : "Immagine GIF",
+ "HEIC image" : "Immagine HEIC",
+ "HEIF image" : "Immagine HEIF",
+ "JPEG-2000 JP2 image" : "Immagine JPEG-2000 JP2",
+ "JPEG image" : "Immagine JPEG",
"PNG image" : "Immagine PNG",
+ "SVG image" : "Immagine SVG",
+ "Truevision Targa image" : "Immagine Truevision Targa",
+ "TIFF image" : "Immagine TIFF",
+ "WebP image" : "Immagine WebP",
+ "Digital raw image" : "Immagine digitale raw",
+ "Windows Icon" : "Icona di Windows",
+ "Email message" : "messaggio di posta elettronica",
+ "VCS/ICS calendar" : "Calendario VCS/ICS",
+ "CSS stylesheet" : "Foglio di stile CSS",
+ "CSV document" : "Documento CSV",
+ "HTML document" : "Documento HTML",
+ "Markdown document" : "Documento Markdown",
+ "Org-mode file" : "File Org-mode",
+ "Plain text document" : "Documento di testo normale",
+ "Rich Text document" : "Documento Rich Text",
+ "Electronic business card" : "Biglietto da visita elettronico",
+ "C++ source code" : "Codice sorgente C++",
+ "LDIF address book" : "Rubrica LDIF",
+ "NFO document" : "Documento NFO",
+ "PHP source" : "Sorgente PHP",
+ "Python script" : "Script Python",
+ "ReStructuredText document" : "Documento ReStructuredText",
+ "3GPP multimedia file" : "File multimediale 3GPP",
+ "MPEG video" : "Video MPEG",
+ "DV video" : "Video DV",
+ "MPEG-2 transport stream" : "Flusso di trasporto MPEG-2",
+ "MPEG-4 video" : "Video MPEG-4",
+ "Ogg video" : "Video Ogg",
+ "QuickTime video" : "Video QuickTime",
+ "WebM video" : "Video WebM",
+ "Flash video" : "Video flash",
+ "Matroska video" : "Video Matroska",
+ "Windows Media video" : "Video di Windows Media",
+ "AVI video" : "Video AVI",
"Error occurred while checking server setup" : "Si è verificato un errore durante il controllo della configurazione del server",
"For more details see the {linkstart}documentation ↗{linkend}." : "Per ulteriori dettagli, leggi la {linkstart}documentazione ↗{linkend}.",
"unknown text" : "testo sconosciuto",
@@ -208,6 +326,11 @@
"Login form is disabled." : "Il modulo di accesso è disabilitato.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Il modulo di accesso a Nextcloud è disabilitato. Usa un'altra opzione di accesso, se disponibile, o contatta l'amministratore.",
"More actions" : "Altre azioni",
+ "User menu" : "Menu utente",
+ "You will be identified as {user} by the account owner." : "Sarai identificato come {user} dal proprietario dell'account.",
+ "You are currently not identified." : "Al momento non sei stato identificato.",
+ "Set public name" : "Imposta nome pubblico",
+ "Change public name" : "Cambia nome pubblico",
"Password is too weak" : "La password è troppo debole",
"Password is weak" : "La password è debole",
"Password is average" : "La password è mediocre",
@@ -301,9 +424,10 @@
"Admin" : "Admin",
"Help" : "Aiuto",
"Access forbidden" : "Accesso negato",
+ "You are not allowed to access this page." : "Non ti è consentito accedere a questa pagina.",
+ "Back to %s" : "Torna a %s",
"Page not found" : "Pagina non trovata",
"The page could not be found on the server or you may not be allowed to view it." : "La pagina non è stata trovata sul server o forse non ti è permesso vederla.",
- "Back to %s" : "Torna a %s",
"Too many requests" : "Troppe richieste",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Sono arrivate troppe richieste dalla tua rete. Riprova più tardi o contatta il tuo amministratore se questo è un errore.",
"Error" : "Errore",
@@ -379,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Questa istanza di %s è attualmente in manutenzione, potrebbe richiedere del tempo.",
"This page will refresh itself when the instance is available again." : "Questa pagina si aggiornerà quando l'istanza sarà nuovamente disponibile.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contatta il tuo amministratore di sistema se questo messaggio persiste o appare inaspettatamente.",
- "Currently open" : "Attualmente aperto",
- "Login with username or email" : "Accedi con nome utente o email",
- "Login with username" : "Accedi con il nome utente",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chat, videochiamate, condivisione schermo, riunioni in linea e conferenze web – nel tuo browser e con le applicazioni mobili.",
"You have not added any info yet" : "Non hai ancora aggiunto alcuna informazione",
"{user} has not added any info yet" : "{user} non ha ancora aggiunto alcuna informazione",
"Error opening the user status modal, try hard refreshing the page" : "Errore nell'apertura dello stato utente, prova a ricaricare la pagina",
"Edit Profile" : "Modifica il profilo",
"The headline and about sections will show up here" : "Le sezioni del titolo e delle informazioni verranno mostrate qui",
- "Error loading message template: {error}" : "Errore durante il caricamento del modello di messaggio: {error}",
"Very weak password" : "Password molto debole",
"Weak password" : "Password debole",
"So-so password" : "Password così-così",
diff --git a/core/l10n/ja.js b/core/l10n/ja.js
index d14ee4e5ec1..f4092ad2fca 100644
--- a/core/l10n/ja.js
+++ b/core/l10n/ja.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "タスクは見つかりません",
"Internal error" : "内部エラー",
"Not found" : "見つかりませんでした",
+ "Node is locked" : "ノードがロックされています",
"Bad request" : "Bad request",
"Requested task type does not exist" : "要求されたタスクの種類が存在しません",
"Necessary language model provider is not available" : "必要な言語モデルプロバイダーが利用できません",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "利用可能な翻訳プロバイダーがありません",
"Could not detect language" : "言語を検出できませんでした",
"Unable to translate" : "翻訳できませんでした",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "修復ステップ:",
+ "Repair info:" : "修復情報:",
+ "Repair warning:" : "修復警告:",
+ "Repair error:" : "修復エラー:",
"Nextcloud Server" : "Nextcloud サーバー",
"Some of your link shares have been removed" : "リンク共有の一部が削除されました",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "セキュリティ上の不具合により、あなたのリンク共有をいくつか削除する必要がありました。 詳しくはリンクをご覧ください。",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "support app にサブスクリプションキーを入力して、アカウント数の上限を増やすことができます。これにより、Nextcloud Enterprise が提供するすべての追加特典が付与され、企業での運用には非常におすすめです。",
"Learn more ↗" : "もっと詳しく知る",
"Preparing update" : "アップデートの準備中",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "修復ステップ:",
- "Repair info:" : "修復情報:",
- "Repair warning:" : "修復警告:",
- "Repair error:" : "修復エラー:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "config.phpでブラウザ経由でのアップデートが無効になっていますので、コマンドラインアップデーターをご利用ください。",
"Turned on maintenance mode" : "メンテナンスモードがオンになりました",
"Turned off maintenance mode" : "メンテナンスモードがオフになりました",
@@ -327,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "ログインフォームは無効です。",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloud ログインフォームは無効になっています。 利用可能な場合は別のログインオプションを使用するか、管理者に問い合わせてください。",
"More actions" : "その他のアクション",
+ "User menu" : "ユーザーメニュー",
+ "You will be identified as {user} by the account owner." : "アカウント所有者によって{user}として識別されます。",
+ "You are currently not identified." : "現在識別されていません。",
+ "Set public name" : "公開名の設定",
+ "Change public name" : "公開名を変更",
"Password is too weak" : "パスワードが脆弱すぎます",
"Password is weak" : "パスワードが脆弱です",
"Password is average" : "パスワードは普通です",
@@ -420,9 +426,10 @@ OC.L10N.register(
"Admin" : "管理",
"Help" : "ヘルプ",
"Access forbidden" : "アクセスが禁止されています",
+ "You are not allowed to access this page." : "このページへのアクセス許可がありません。",
+ "Back to %s" : "%s に戻る",
"Page not found" : "ページが見つかりません",
"The page could not be found on the server or you may not be allowed to view it." : "サーバーからページを見つけられなかった、もしくは閲覧が許可されていないようです。",
- "Back to %s" : "%s に戻る",
"Too many requests" : "要求が多すぎます",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "ネットワークからのリクエストが多すぎました。このようなエラーが発生した場合は、後で再試行するか、管理者に連絡してください。",
"Error" : "エラー",
@@ -498,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "このサーバー %s は現在メンテナンスモードです。しばらくお待ちください。",
"This page will refresh itself when the instance is available again." : "この画面は、サーバー の再起動後に自動的に更新されます。",
"Contact your system administrator if this message persists or appeared unexpectedly." : "このメッセージが引き続き、または予期せず現れる場合は、システム管理者に問い合わせてください。",
- "Currently open" : "編集中",
- "Login with username or email" : "ログインするユーザー名またはメールアドレス",
- "Login with username" : "ログインするユーザー名",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "チャット、ビデオ通話、画面共有、オンラインミーティング、ウェブ会議 - ブラウザーとモバイルアプリで。",
"You have not added any info yet" : "まだ情報が追加されていません",
"{user} has not added any info yet" : "{user}が、まだ情報を追加していません",
"Error opening the user status modal, try hard refreshing the page" : "ユーザーステータスモーダルを開くときにエラーが発生しました。ページを更新してみてください",
"Edit Profile" : "プロフィールを編集",
"The headline and about sections will show up here" : "見出しと概要セクションがここに表示されます",
- "Error loading message template: {error}" : "メッセージテンプレートの読み込みエラー: {error}",
"Very weak password" : "非常に弱いパスワード",
"Weak password" : "弱いパスワード",
"So-so password" : "まずまずのパスワード",
diff --git a/core/l10n/ja.json b/core/l10n/ja.json
index a3aba7d42f5..4fbb66b1e9d 100644
--- a/core/l10n/ja.json
+++ b/core/l10n/ja.json
@@ -42,6 +42,7 @@
"Task not found" : "タスクは見つかりません",
"Internal error" : "内部エラー",
"Not found" : "見つかりませんでした",
+ "Node is locked" : "ノードがロックされています",
"Bad request" : "Bad request",
"Requested task type does not exist" : "要求されたタスクの種類が存在しません",
"Necessary language model provider is not available" : "必要な言語モデルプロバイダーが利用できません",
@@ -50,6 +51,11 @@
"No translation provider available" : "利用可能な翻訳プロバイダーがありません",
"Could not detect language" : "言語を検出できませんでした",
"Unable to translate" : "翻訳できませんでした",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "修復ステップ:",
+ "Repair info:" : "修復情報:",
+ "Repair warning:" : "修復警告:",
+ "Repair error:" : "修復エラー:",
"Nextcloud Server" : "Nextcloud サーバー",
"Some of your link shares have been removed" : "リンク共有の一部が削除されました",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "セキュリティ上の不具合により、あなたのリンク共有をいくつか削除する必要がありました。 詳しくはリンクをご覧ください。",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "support app にサブスクリプションキーを入力して、アカウント数の上限を増やすことができます。これにより、Nextcloud Enterprise が提供するすべての追加特典が付与され、企業での運用には非常におすすめです。",
"Learn more ↗" : "もっと詳しく知る",
"Preparing update" : "アップデートの準備中",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "修復ステップ:",
- "Repair info:" : "修復情報:",
- "Repair warning:" : "修復警告:",
- "Repair error:" : "修復エラー:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "config.phpでブラウザ経由でのアップデートが無効になっていますので、コマンドラインアップデーターをご利用ください。",
"Turned on maintenance mode" : "メンテナンスモードがオンになりました",
"Turned off maintenance mode" : "メンテナンスモードがオフになりました",
@@ -325,6 +326,11 @@
"Login form is disabled." : "ログインフォームは無効です。",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloud ログインフォームは無効になっています。 利用可能な場合は別のログインオプションを使用するか、管理者に問い合わせてください。",
"More actions" : "その他のアクション",
+ "User menu" : "ユーザーメニュー",
+ "You will be identified as {user} by the account owner." : "アカウント所有者によって{user}として識別されます。",
+ "You are currently not identified." : "現在識別されていません。",
+ "Set public name" : "公開名の設定",
+ "Change public name" : "公開名を変更",
"Password is too weak" : "パスワードが脆弱すぎます",
"Password is weak" : "パスワードが脆弱です",
"Password is average" : "パスワードは普通です",
@@ -418,9 +424,10 @@
"Admin" : "管理",
"Help" : "ヘルプ",
"Access forbidden" : "アクセスが禁止されています",
+ "You are not allowed to access this page." : "このページへのアクセス許可がありません。",
+ "Back to %s" : "%s に戻る",
"Page not found" : "ページが見つかりません",
"The page could not be found on the server or you may not be allowed to view it." : "サーバーからページを見つけられなかった、もしくは閲覧が許可されていないようです。",
- "Back to %s" : "%s に戻る",
"Too many requests" : "要求が多すぎます",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "ネットワークからのリクエストが多すぎました。このようなエラーが発生した場合は、後で再試行するか、管理者に連絡してください。",
"Error" : "エラー",
@@ -496,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "このサーバー %s は現在メンテナンスモードです。しばらくお待ちください。",
"This page will refresh itself when the instance is available again." : "この画面は、サーバー の再起動後に自動的に更新されます。",
"Contact your system administrator if this message persists or appeared unexpectedly." : "このメッセージが引き続き、または予期せず現れる場合は、システム管理者に問い合わせてください。",
- "Currently open" : "編集中",
- "Login with username or email" : "ログインするユーザー名またはメールアドレス",
- "Login with username" : "ログインするユーザー名",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "チャット、ビデオ通話、画面共有、オンラインミーティング、ウェブ会議 - ブラウザーとモバイルアプリで。",
"You have not added any info yet" : "まだ情報が追加されていません",
"{user} has not added any info yet" : "{user}が、まだ情報を追加していません",
"Error opening the user status modal, try hard refreshing the page" : "ユーザーステータスモーダルを開くときにエラーが発生しました。ページを更新してみてください",
"Edit Profile" : "プロフィールを編集",
"The headline and about sections will show up here" : "見出しと概要セクションがここに表示されます",
- "Error loading message template: {error}" : "メッセージテンプレートの読み込みエラー: {error}",
"Very weak password" : "非常に弱いパスワード",
"Weak password" : "弱いパスワード",
"So-so password" : "まずまずのパスワード",
diff --git a/core/l10n/ka.js b/core/l10n/ka.js
index 5a704b4c908..3c1e168eafb 100644
--- a/core/l10n/ka.js
+++ b/core/l10n/ka.js
@@ -50,16 +50,16 @@ OC.L10N.register(
"No translation provider available" : "No translation provider available",
"Could not detect language" : "Could not detect language",
"Unable to translate" : "Unable to translate",
- "Nextcloud Server" : "Nextcloud Server",
- "Some of your link shares have been removed" : "Some of your link shares have been removed",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Due to a security bug we had to remove some of your link shares. Please see the link for more information.",
- "Learn more ↗" : "Learn more ↗",
- "Preparing update" : "Preparing update",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Repair step:",
"Repair info:" : "Repair info:",
"Repair warning:" : "Repair warning:",
"Repair error:" : "Repair error:",
+ "Nextcloud Server" : "Nextcloud Server",
+ "Some of your link shares have been removed" : "Some of your link shares have been removed",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Due to a security bug we had to remove some of your link shares. Please see the link for more information.",
+ "Learn more ↗" : "Learn more ↗",
+ "Preparing update" : "Preparing update",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Please use the command line updater because updating via browser is disabled in your config.php.",
"Turned on maintenance mode" : "Turned on maintenance mode",
"Turned off maintenance mode" : "Turned off maintenance mode",
@@ -279,9 +279,9 @@ OC.L10N.register(
"Admin" : "Admin",
"Help" : "Help",
"Access forbidden" : "Access forbidden",
+ "Back to %s" : "Back to %s",
"Page not found" : "Page not found",
"The page could not be found on the server or you may not be allowed to view it." : "The page could not be found on the server or you may not be allowed to view it.",
- "Back to %s" : "Back to %s",
"Too many requests" : "Too many requests",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "There were too many requests from your network. Retry later or contact your administrator if this is an error.",
"Error" : "Error",
@@ -355,14 +355,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "This %s instance is currently in maintenance mode, which may take a while.",
"This page will refresh itself when the instance is available again." : "This page will refresh itself when the instance is available again.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contact your system administrator if this message persists or appeared unexpectedly.",
- "Currently open" : "Currently open",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps.",
"You have not added any info yet" : "You have not added any info yet",
"{user} has not added any info yet" : "{user} has not added any info yet",
"Error opening the user status modal, try hard refreshing the page" : "Error opening the user status modal, try hard refreshing the page",
"Edit Profile" : "Edit Profile",
"The headline and about sections will show up here" : "The headline and about sections will show up here",
- "Error loading message template: {error}" : "Error loading message template: {error}",
"Very weak password" : "Very weak password",
"Weak password" : "Weak password",
"So-so password" : "So-so password",
diff --git a/core/l10n/ka.json b/core/l10n/ka.json
index 9b16b7e9f44..b334acbbf0c 100644
--- a/core/l10n/ka.json
+++ b/core/l10n/ka.json
@@ -48,16 +48,16 @@
"No translation provider available" : "No translation provider available",
"Could not detect language" : "Could not detect language",
"Unable to translate" : "Unable to translate",
- "Nextcloud Server" : "Nextcloud Server",
- "Some of your link shares have been removed" : "Some of your link shares have been removed",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Due to a security bug we had to remove some of your link shares. Please see the link for more information.",
- "Learn more ↗" : "Learn more ↗",
- "Preparing update" : "Preparing update",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Repair step:",
"Repair info:" : "Repair info:",
"Repair warning:" : "Repair warning:",
"Repair error:" : "Repair error:",
+ "Nextcloud Server" : "Nextcloud Server",
+ "Some of your link shares have been removed" : "Some of your link shares have been removed",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Due to a security bug we had to remove some of your link shares. Please see the link for more information.",
+ "Learn more ↗" : "Learn more ↗",
+ "Preparing update" : "Preparing update",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Please use the command line updater because updating via browser is disabled in your config.php.",
"Turned on maintenance mode" : "Turned on maintenance mode",
"Turned off maintenance mode" : "Turned off maintenance mode",
@@ -277,9 +277,9 @@
"Admin" : "Admin",
"Help" : "Help",
"Access forbidden" : "Access forbidden",
+ "Back to %s" : "Back to %s",
"Page not found" : "Page not found",
"The page could not be found on the server or you may not be allowed to view it." : "The page could not be found on the server or you may not be allowed to view it.",
- "Back to %s" : "Back to %s",
"Too many requests" : "Too many requests",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "There were too many requests from your network. Retry later or contact your administrator if this is an error.",
"Error" : "Error",
@@ -353,14 +353,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "This %s instance is currently in maintenance mode, which may take a while.",
"This page will refresh itself when the instance is available again." : "This page will refresh itself when the instance is available again.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contact your system administrator if this message persists or appeared unexpectedly.",
- "Currently open" : "Currently open",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps.",
"You have not added any info yet" : "You have not added any info yet",
"{user} has not added any info yet" : "{user} has not added any info yet",
"Error opening the user status modal, try hard refreshing the page" : "Error opening the user status modal, try hard refreshing the page",
"Edit Profile" : "Edit Profile",
"The headline and about sections will show up here" : "The headline and about sections will show up here",
- "Error loading message template: {error}" : "Error loading message template: {error}",
"Very weak password" : "Very weak password",
"Weak password" : "Weak password",
"So-so password" : "So-so password",
diff --git a/core/l10n/ko.js b/core/l10n/ko.js
index 909cded2c5e..29d693fc84a 100644
--- a/core/l10n/ko.js
+++ b/core/l10n/ko.js
@@ -52,6 +52,11 @@ OC.L10N.register(
"No translation provider available" : "이용 가능한 번역 제공자 없음",
"Could not detect language" : "언어를 감지할 수 없음",
"Unable to translate" : "번역할 수 없음",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "수리 단계:",
+ "Repair info:" : "수리 정보:",
+ "Repair warning:" : "수리 경고:",
+ "Repair error:" : "수리 오류:",
"Nextcloud Server" : "Nextcloud 서버",
"Some of your link shares have been removed" : "일부 링크 공유가 제거되었습니다.",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "보안 버그로 인하여 일부 링크 공유를 삭제했습니다. 링크를 눌러서 더 많은 정보를 볼 수 있습니다.",
@@ -59,11 +64,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "지원 앱에서 가입 키를 입력하여 계정 한도를 늘리세요. 이는 Nextcloud Enterprise의 모든 혜택을 제공하며, 기업에서의 운영에 적극 권장됩니다.",
"Learn more ↗" : "더 알아보기 ↗",
"Preparing update" : "업데이트 준비 중",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "수리 단계:",
- "Repair info:" : "수리 정보:",
- "Repair warning:" : "수리 경고:",
- "Repair error:" : "수리 오류:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "당신의 config.php에서 브라우저를 통한 업데이트가 비활성화 되어 있으므로, 명령줄 업데이터를 사용하세요.",
"Turned on maintenance mode" : "유지 보수 모드 켜짐",
"Turned off maintenance mode" : "유지 보수 모드 꺼짐",
@@ -303,9 +303,9 @@ OC.L10N.register(
"Admin" : "관리자",
"Help" : "도움말",
"Access forbidden" : "접근 금지됨",
+ "Back to %s" : "%s(으)로 돌아가기",
"Page not found" : "페이지를 찾을 수 없음",
"The page could not be found on the server or you may not be allowed to view it." : "페이지를 서버에서 찾을 수 없거나, 페이지를 보도록 허가되지 않았습니다.",
- "Back to %s" : "%s(으)로 돌아가기",
"Too many requests" : "요청이 너무 많음",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "이 네트워크에 너무 요청이 많습니다. 나중에 다시 시도하십시오. 이것이 오류일 경우 관리자에게 문의하십시오.",
"Error" : "오류",
@@ -381,16 +381,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "이 %s 인스턴스는 현재 점검 모드입니다. 시간이 걸릴 수도 있습니다.",
"This page will refresh itself when the instance is available again." : "인스턴스를 다시 사용할 수 있을 때 페이지를 자동으로 새로 고칩니다.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "이 메시지가 계속 표시되거나 예상하지 못하였을 때 표시된다면 시스템 관리자에게 연락하십시오.",
- "Currently open" : "현재 열려있음",
- "Login with username or email" : "아이디 또는 이메일로 로그인",
- "Login with username" : "아이디로 로그인",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "당신의 브라우저와 모바일 앱 속의 채팅, 영상 통화, 화면 공유, 온라인 미팅 그리고 웹 회의",
"You have not added any info yet" : "아직 아무 정보도 추가하지 않았습니다.",
"{user} has not added any info yet" : "{user}님이 아직 아무 정보도 추가하지 않음",
"Error opening the user status modal, try hard refreshing the page" : "사용자 상태 모달을 불러오는 데 실패했습니다, 페이지를 완전히 새로고침 해 보십시오.",
"Edit Profile" : "프로필 수정",
"The headline and about sections will show up here" : "표제와 기타 정보가 이곳에 나타납니다.",
- "Error loading message template: {error}" : "메시지 템플릿을 불러오는 중 오류 발생: {error}",
"Very weak password" : "매우 약한 암호",
"Weak password" : "약한 암호",
"So-so password" : "그저 그런 암호",
diff --git a/core/l10n/ko.json b/core/l10n/ko.json
index f8fb421356b..20cd4263192 100644
--- a/core/l10n/ko.json
+++ b/core/l10n/ko.json
@@ -50,6 +50,11 @@
"No translation provider available" : "이용 가능한 번역 제공자 없음",
"Could not detect language" : "언어를 감지할 수 없음",
"Unable to translate" : "번역할 수 없음",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "수리 단계:",
+ "Repair info:" : "수리 정보:",
+ "Repair warning:" : "수리 경고:",
+ "Repair error:" : "수리 오류:",
"Nextcloud Server" : "Nextcloud 서버",
"Some of your link shares have been removed" : "일부 링크 공유가 제거되었습니다.",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "보안 버그로 인하여 일부 링크 공유를 삭제했습니다. 링크를 눌러서 더 많은 정보를 볼 수 있습니다.",
@@ -57,11 +62,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "지원 앱에서 가입 키를 입력하여 계정 한도를 늘리세요. 이는 Nextcloud Enterprise의 모든 혜택을 제공하며, 기업에서의 운영에 적극 권장됩니다.",
"Learn more ↗" : "더 알아보기 ↗",
"Preparing update" : "업데이트 준비 중",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "수리 단계:",
- "Repair info:" : "수리 정보:",
- "Repair warning:" : "수리 경고:",
- "Repair error:" : "수리 오류:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "당신의 config.php에서 브라우저를 통한 업데이트가 비활성화 되어 있으므로, 명령줄 업데이터를 사용하세요.",
"Turned on maintenance mode" : "유지 보수 모드 켜짐",
"Turned off maintenance mode" : "유지 보수 모드 꺼짐",
@@ -301,9 +301,9 @@
"Admin" : "관리자",
"Help" : "도움말",
"Access forbidden" : "접근 금지됨",
+ "Back to %s" : "%s(으)로 돌아가기",
"Page not found" : "페이지를 찾을 수 없음",
"The page could not be found on the server or you may not be allowed to view it." : "페이지를 서버에서 찾을 수 없거나, 페이지를 보도록 허가되지 않았습니다.",
- "Back to %s" : "%s(으)로 돌아가기",
"Too many requests" : "요청이 너무 많음",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "이 네트워크에 너무 요청이 많습니다. 나중에 다시 시도하십시오. 이것이 오류일 경우 관리자에게 문의하십시오.",
"Error" : "오류",
@@ -379,16 +379,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "이 %s 인스턴스는 현재 점검 모드입니다. 시간이 걸릴 수도 있습니다.",
"This page will refresh itself when the instance is available again." : "인스턴스를 다시 사용할 수 있을 때 페이지를 자동으로 새로 고칩니다.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "이 메시지가 계속 표시되거나 예상하지 못하였을 때 표시된다면 시스템 관리자에게 연락하십시오.",
- "Currently open" : "현재 열려있음",
- "Login with username or email" : "아이디 또는 이메일로 로그인",
- "Login with username" : "아이디로 로그인",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "당신의 브라우저와 모바일 앱 속의 채팅, 영상 통화, 화면 공유, 온라인 미팅 그리고 웹 회의",
"You have not added any info yet" : "아직 아무 정보도 추가하지 않았습니다.",
"{user} has not added any info yet" : "{user}님이 아직 아무 정보도 추가하지 않음",
"Error opening the user status modal, try hard refreshing the page" : "사용자 상태 모달을 불러오는 데 실패했습니다, 페이지를 완전히 새로고침 해 보십시오.",
"Edit Profile" : "프로필 수정",
"The headline and about sections will show up here" : "표제와 기타 정보가 이곳에 나타납니다.",
- "Error loading message template: {error}" : "메시지 템플릿을 불러오는 중 오류 발생: {error}",
"Very weak password" : "매우 약한 암호",
"Weak password" : "약한 암호",
"So-so password" : "그저 그런 암호",
diff --git a/core/l10n/lt_LT.js b/core/l10n/lt_LT.js
index 738bdecfd78..030683f31b9 100644
--- a/core/l10n/lt_LT.js
+++ b/core/l10n/lt_LT.js
@@ -44,14 +44,14 @@ OC.L10N.register(
"Image not found" : "Paveikslėlis nerastas",
"Could not detect language" : "Nepavyko aptikti kalbos",
"Unable to translate" : "Nepavyko išversti",
- "Nextcloud Server" : "Nextcloud serveris",
- "Learn more ↗" : "Sužinokite daugiau ↗",
- "Preparing update" : "Ruošiamas atnaujinimas",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Pataisymo žingsnis:",
"Repair info:" : "Pataisymo informacija:",
"Repair warning:" : "Taisymo įspėjimas:",
"Repair error:" : "Taisymo klaida:",
+ "Nextcloud Server" : "Nextcloud serveris",
+ "Learn more ↗" : "Sužinokite daugiau ↗",
+ "Preparing update" : "Ruošiamas atnaujinimas",
"Turned on maintenance mode" : "Įjungta techninės priežiūros veiksena",
"Turned off maintenance mode" : "Išjungta techninės priežiūros veiksena",
"Maintenance mode is kept active" : "Techninės priežiūros veiksena yra aktyvi",
@@ -233,8 +233,8 @@ OC.L10N.register(
"Admin" : "Administravimas",
"Help" : "Pagalba",
"Access forbidden" : "Prieiga uždrausta",
- "Page not found" : "Puslapis nerastas",
"Back to %s" : "Atgal į %s",
+ "Page not found" : "Puslapis nerastas",
"Too many requests" : "Per daug užklausų",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Iš jūsų tinklo buvo per daug užklausų. Bandykite dar kartą vėliau arba, jeigu tai klaida, susisiekite su savo administratoriumi.",
"Error" : "Klaida",
@@ -300,12 +300,10 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Šis %s egzempliorius šiuo metu yra techninės priežiūros veiksenoje, kas savo ruožtu gali šiek tiek užtrukti.",
"This page will refresh itself when the instance is available again." : "Šis puslapis bus įkeltas iš naujo, kai egzempliorius bus ir vėl prieinamas.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Susisiekite su savo sistemos administratoriumi, jei šis pranešimas nedingsta arba, jei jis pasirodė netikėtai.",
- "Login with username or email" : "Prisijungti su vartotojo vardu arba el. pašto adresu",
"You have not added any info yet" : "Jūs kol kas nesate pridėję jokios informacijos",
"{user} has not added any info yet" : "Naudotojas {user} kol kas nėra pridėjęs jokios informacijos",
"Edit Profile" : "Taisyti profilį",
"The headline and about sections will show up here" : "Čia bus rodoma santrauka apie jus bei kita su jumis susijusi informacija",
- "Error loading message template: {error}" : "Klaida įkeliant žinutės ruošinį: {error}",
"Very weak password" : "Labai silpnas slaptažodis",
"Weak password" : "Silpnas slaptažodis",
"So-so password" : "Neblogas slaptažodis",
diff --git a/core/l10n/lt_LT.json b/core/l10n/lt_LT.json
index 6bda7b3c5bf..530d861073f 100644
--- a/core/l10n/lt_LT.json
+++ b/core/l10n/lt_LT.json
@@ -42,14 +42,14 @@
"Image not found" : "Paveikslėlis nerastas",
"Could not detect language" : "Nepavyko aptikti kalbos",
"Unable to translate" : "Nepavyko išversti",
- "Nextcloud Server" : "Nextcloud serveris",
- "Learn more ↗" : "Sužinokite daugiau ↗",
- "Preparing update" : "Ruošiamas atnaujinimas",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Pataisymo žingsnis:",
"Repair info:" : "Pataisymo informacija:",
"Repair warning:" : "Taisymo įspėjimas:",
"Repair error:" : "Taisymo klaida:",
+ "Nextcloud Server" : "Nextcloud serveris",
+ "Learn more ↗" : "Sužinokite daugiau ↗",
+ "Preparing update" : "Ruošiamas atnaujinimas",
"Turned on maintenance mode" : "Įjungta techninės priežiūros veiksena",
"Turned off maintenance mode" : "Išjungta techninės priežiūros veiksena",
"Maintenance mode is kept active" : "Techninės priežiūros veiksena yra aktyvi",
@@ -231,8 +231,8 @@
"Admin" : "Administravimas",
"Help" : "Pagalba",
"Access forbidden" : "Prieiga uždrausta",
- "Page not found" : "Puslapis nerastas",
"Back to %s" : "Atgal į %s",
+ "Page not found" : "Puslapis nerastas",
"Too many requests" : "Per daug užklausų",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Iš jūsų tinklo buvo per daug užklausų. Bandykite dar kartą vėliau arba, jeigu tai klaida, susisiekite su savo administratoriumi.",
"Error" : "Klaida",
@@ -298,12 +298,10 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Šis %s egzempliorius šiuo metu yra techninės priežiūros veiksenoje, kas savo ruožtu gali šiek tiek užtrukti.",
"This page will refresh itself when the instance is available again." : "Šis puslapis bus įkeltas iš naujo, kai egzempliorius bus ir vėl prieinamas.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Susisiekite su savo sistemos administratoriumi, jei šis pranešimas nedingsta arba, jei jis pasirodė netikėtai.",
- "Login with username or email" : "Prisijungti su vartotojo vardu arba el. pašto adresu",
"You have not added any info yet" : "Jūs kol kas nesate pridėję jokios informacijos",
"{user} has not added any info yet" : "Naudotojas {user} kol kas nėra pridėjęs jokios informacijos",
"Edit Profile" : "Taisyti profilį",
"The headline and about sections will show up here" : "Čia bus rodoma santrauka apie jus bei kita su jumis susijusi informacija",
- "Error loading message template: {error}" : "Klaida įkeliant žinutės ruošinį: {error}",
"Very weak password" : "Labai silpnas slaptažodis",
"Weak password" : "Silpnas slaptažodis",
"So-so password" : "Neblogas slaptažodis",
diff --git a/core/l10n/lv.js b/core/l10n/lv.js
index 847c733d104..3c50e94a918 100644
--- a/core/l10n/lv.js
+++ b/core/l10n/lv.js
@@ -27,19 +27,20 @@ OC.L10N.register(
"Could not complete login" : "Nevarēja pabeigt pieteikšanos",
"State token missing" : "Trūkst stāvokļa tekstvienības",
"Your login token is invalid or has expired" : "Pieteikšanās pilnvara nav derīga vai ir beigusies",
- "This community release of Nextcloud is unsupported and push notifications are limited." : "Šī Nextcloud kopienas versija nav atbalstīta un push paziņojumi ir ierobežoti.",
- "Login" : "Pieteikumvārds",
- "Unsupported email length (>255)" : "Neatbalstāms e-pasta garums (>255)",
+ "Please use original client" : "Lūgums izmantot sākotnējo klientu",
+ "This community release of Nextcloud is unsupported and push notifications are limited." : "Šis Nextcloud kopienas laidiens nav atbalstīts un pašpiegādes paziņojumi ir ierobežoti.",
+ "Login" : "Pieteikties",
+ "Unsupported email length (>255)" : "Neatbalstīts e-pasta adreses garums (>255)",
"Password reset is disabled" : "Paroles atiestatīšana ir atspējota",
"Could not reset password because the token is expired" : "Nevarēja atiestatīt paroli, jo ir beidzies tekstvienības derīgums",
"Could not reset password because the token is invalid" : "Nevarēja atiestatīt paroli, jo tekstvienība ir nederīga",
"Password is too long. Maximum allowed length is 469 characters." : "Parole ir pārāk gara. Lielākais atļautais garums ir 469 rakstzīmes.",
- "%s password reset" : "%s paroles maiņa",
+ "%s password reset" : "%s paroles atiestatīšana",
"Password reset" : "Parole atiestatīta",
"Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Jānospiež zemāk esošā poga, lai atiestatītu savu paroli. Šis e-pasta ziņojums nav jāņem vērā, ja paroles atiestatīšana netika pieprasīta.",
"Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Jāklikšķina uz zemāk esošās saites, lai atiestatītu savu paroli. Šis e-pasta ziņojums nav jāņem vērā, ja paroles atiestatīšana netika pieprasīta.",
"Reset your password" : "Atiestatīt paroli",
- "The given provider is not available" : "Norādītājs pakalpojuma sniedzējs nav pieejams",
+ "The given provider is not available" : "Norādītais nodrošinātājs nav pieejams",
"Task not found" : "Uzdevums nav atrasts",
"Internal error" : "Iekšēja kļūda",
"Not found" : "Nav atrasts",
@@ -49,17 +50,17 @@ OC.L10N.register(
"No translation provider available" : "Tulkošanas pakalpojuma sniedzējs nav pieejams",
"Could not detect language" : "Nevarēja noteikt valodu",
"Unable to translate" : "Nevar iztulkot",
- "Nextcloud Server" : "Nextcloud Serveris",
- "Some of your link shares have been removed" : "Dažas no Jūsu kopīgotajām saitēm tika noņemtas",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Drošības kļūdas dēļ mums nācās noņemt dažas no kopīgotajām saitēm. Lūgums apmeklēt saiti, lai iegūtu vairāk informācijas.",
- "The account limit of this instance is reached." : "Konta ierobežojums šajai instancei ir sasniegts.",
- "Learn more ↗" : "Uzzināt vairāk ↗",
- "Preparing update" : "Sagatavo atjauninājumu",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Labošanas solis:",
"Repair info:" : "Labošanas informācija: ",
"Repair warning:" : "Labošanas brīdinājums:",
"Repair error:" : "Labošanas kļūda:",
+ "Nextcloud Server" : "Nextcloud Serveris",
+ "Some of your link shares have been removed" : "Dažas no kopīgotajām saitēm tika noņemtas",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Drošības kļūdas dēļ mums nācās noņemt dažas no kopīgotajām saitēm. Lūgums apmeklēt saiti, lai iegūtu vairāk informācijas.",
+ "The account limit of this instance is reached." : "Konta ierobežojums šajai instancei ir sasniegts.",
+ "Learn more ↗" : "Uzzināt vairāk ↗",
+ "Preparing update" : "Sagatavo atjauninājumu",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Lūgums izmantot komandrindas atjauninātāju, jo atjaunināšana pārlūkā ir atspējota config.php.",
"Turned on maintenance mode" : "Ieslēgts uzturēšanas režīms",
"Turned off maintenance mode" : "Izslēgts uzturēšanas režīms",
@@ -74,7 +75,7 @@ OC.L10N.register(
"Starting code integrity check" : "Uzsākta koda integritātes pārbaude",
"Finished code integrity check" : "Pabeigta koda integritātes pārbaude",
"%s (incompatible)" : "%s (nesaderīgs)",
- "The following apps have been disabled: %s" : "Sekojošās lietotnes tika atspējotas: %s",
+ "The following apps have been disabled: %s" : "Šīs lietotnes tika atspējotas: %s",
"Already up to date" : "Jau ir jaunākā",
"Unknown" : "Nezināms",
"Error occurred while checking server setup" : "Servera pārbaudīšanas laikā atgadījās kļūda",
@@ -112,6 +113,7 @@ OC.L10N.register(
"No matching results" : "Nav atbilstoša iznākuma",
"Today" : "Šodien",
"Unified search" : "Apvienotā meklēšana",
+ "Search apps, files, tags, messages" : "Meklēt lietotnes, datnes, birkas, ziņojumus",
"Places" : "Vietas",
"Date" : "Datums",
"Search people" : "Meklēt cilvēkus",
@@ -121,7 +123,7 @@ OC.L10N.register(
"Search in" : "Meklēt",
"Log in" : "Pieteikties",
"Logging in …" : "Notiek pieteikšanās …",
- "Log in to {productName}" : "Pierakstīties {productName}",
+ "Log in to {productName}" : "Pieteikties {productName}",
"Wrong login or password." : "Nepareizs lietotājvārds vai parole.",
"This account is disabled" : "Šis konts ir atspējots",
"Account name or email" : "Konta nosaukums vai e-pasta adrese",
@@ -192,10 +194,10 @@ OC.L10N.register(
"New Files" : "Jaunas datnes",
"Already existing files" : "Jau esošas datnes",
"Which files do you want to keep?" : "Kuras datnes vēlies paturēt?",
- "If you select both versions, the copied file will have a number added to its name." : "Ja izvēlēsietes paturēt abas versijas, kopētās datnes nosaukumam tiks pievienots skaitlis.",
+ "If you select both versions, the copied file will have a number added to its name." : "Ja izvēlēsies paturēt abas versijas, kopētās datnes nosaukumam tiks pievienots skaitlis.",
"Cancel" : "Atcelt",
"Continue" : "Turpināt",
- "(all selected)" : "(visus iezīmētos)",
+ "(all selected)" : "(visas atlasītās)",
"({count} selected)" : "({count} iezīmēti)",
"Error loading file exists template" : "Kļūda esošas datnes veidnes ielādēšanā",
"Saving …" : "Saglabā ...",
@@ -203,8 +205,8 @@ OC.L10N.register(
"Connection to server lost" : "Zaudēts savienojums ar serveri",
"_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Problēma ielādējot lapu, pārlādēšana pēc %n sekundēm","Problēma ielādējot lapu, pārlādēšana pēc %n sekundēm","Problēma ielādējot lapu, pārlādēšana pēc %n sekundēm"],
"Add to a project" : "Pievienot projektam",
- "Show details" : "Rādīt detaļas",
- "Hide details" : "Slēpt detaļas",
+ "Show details" : "Rādīt informāciju",
+ "Hide details" : "Paslēpt informāciju",
"Rename project" : "Pārdēvēt projektu",
"Failed to rename the project" : "Neizdevās pārdēvēt projektu",
"Failed to create a project" : "Neizdevās izveidot projektu",
@@ -232,7 +234,7 @@ OC.L10N.register(
"The server was unable to complete your request." : "Serveris nevarēja izpildīt tavu pieprasījumu.",
"More details can be found in the server log." : "Vairāk informācijas var atrast servera žurnālā.",
"For more details see the documentation ↗." : "Vairāk informācijas var atrast dokumentācijā ↗.",
- "Technical details" : "Tehniskās detaļas",
+ "Technical details" : "Tehniskā informācija",
"Remote Address: %s" : "Attālā adrese: %s",
"Request ID: %s" : "Pieprasījuma ID: %s",
"Type: %s" : "Veids: %s",
@@ -278,11 +280,10 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Šis %s serveris pašlaik darbojas uzturēšanas režīmā, tas var ilgt kādu laiku.",
"This page will refresh itself when the instance is available again." : "Šī lapa atsvaidzināsies, kad Nextcloud būs atkal pieejams.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Jāsazinās ar sistēmas pārvaldītāju, ja šis ziņojums nepazūd vai parādījās negaidīti",
- "Login with username or email" : "Pieteikties ar lietotājvārdu vai e-pasta adresi",
- "Login with username" : "Pieteikties ar lietotājvārdu",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Tērzēšana, videozvani, ekrāna kopīgošana, tiešsaistes sapulces un tīmekļa apspriedes - pārlūkā un viedierīču lietotnēs.",
+ "You have not added any info yet" : "Vēl nav pievienota nekāda informācija",
+ "{user} has not added any info yet" : "{user} vēl nav pievienojis nekādu informāciju ",
"Edit Profile" : "Labot profilu",
- "Error loading message template: {error}" : "Kļūda ielādējot ziņojuma veidni: {error}",
"Very weak password" : "Ļoti vāja parole",
"Weak password" : "Vāja parole",
"So-so password" : "Viduvēja parole",
diff --git a/core/l10n/lv.json b/core/l10n/lv.json
index f3daf612f51..3a19a70d965 100644
--- a/core/l10n/lv.json
+++ b/core/l10n/lv.json
@@ -25,19 +25,20 @@
"Could not complete login" : "Nevarēja pabeigt pieteikšanos",
"State token missing" : "Trūkst stāvokļa tekstvienības",
"Your login token is invalid or has expired" : "Pieteikšanās pilnvara nav derīga vai ir beigusies",
- "This community release of Nextcloud is unsupported and push notifications are limited." : "Šī Nextcloud kopienas versija nav atbalstīta un push paziņojumi ir ierobežoti.",
- "Login" : "Pieteikumvārds",
- "Unsupported email length (>255)" : "Neatbalstāms e-pasta garums (>255)",
+ "Please use original client" : "Lūgums izmantot sākotnējo klientu",
+ "This community release of Nextcloud is unsupported and push notifications are limited." : "Šis Nextcloud kopienas laidiens nav atbalstīts un pašpiegādes paziņojumi ir ierobežoti.",
+ "Login" : "Pieteikties",
+ "Unsupported email length (>255)" : "Neatbalstīts e-pasta adreses garums (>255)",
"Password reset is disabled" : "Paroles atiestatīšana ir atspējota",
"Could not reset password because the token is expired" : "Nevarēja atiestatīt paroli, jo ir beidzies tekstvienības derīgums",
"Could not reset password because the token is invalid" : "Nevarēja atiestatīt paroli, jo tekstvienība ir nederīga",
"Password is too long. Maximum allowed length is 469 characters." : "Parole ir pārāk gara. Lielākais atļautais garums ir 469 rakstzīmes.",
- "%s password reset" : "%s paroles maiņa",
+ "%s password reset" : "%s paroles atiestatīšana",
"Password reset" : "Parole atiestatīta",
"Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Jānospiež zemāk esošā poga, lai atiestatītu savu paroli. Šis e-pasta ziņojums nav jāņem vērā, ja paroles atiestatīšana netika pieprasīta.",
"Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Jāklikšķina uz zemāk esošās saites, lai atiestatītu savu paroli. Šis e-pasta ziņojums nav jāņem vērā, ja paroles atiestatīšana netika pieprasīta.",
"Reset your password" : "Atiestatīt paroli",
- "The given provider is not available" : "Norādītājs pakalpojuma sniedzējs nav pieejams",
+ "The given provider is not available" : "Norādītais nodrošinātājs nav pieejams",
"Task not found" : "Uzdevums nav atrasts",
"Internal error" : "Iekšēja kļūda",
"Not found" : "Nav atrasts",
@@ -47,17 +48,17 @@
"No translation provider available" : "Tulkošanas pakalpojuma sniedzējs nav pieejams",
"Could not detect language" : "Nevarēja noteikt valodu",
"Unable to translate" : "Nevar iztulkot",
- "Nextcloud Server" : "Nextcloud Serveris",
- "Some of your link shares have been removed" : "Dažas no Jūsu kopīgotajām saitēm tika noņemtas",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Drošības kļūdas dēļ mums nācās noņemt dažas no kopīgotajām saitēm. Lūgums apmeklēt saiti, lai iegūtu vairāk informācijas.",
- "The account limit of this instance is reached." : "Konta ierobežojums šajai instancei ir sasniegts.",
- "Learn more ↗" : "Uzzināt vairāk ↗",
- "Preparing update" : "Sagatavo atjauninājumu",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Labošanas solis:",
"Repair info:" : "Labošanas informācija: ",
"Repair warning:" : "Labošanas brīdinājums:",
"Repair error:" : "Labošanas kļūda:",
+ "Nextcloud Server" : "Nextcloud Serveris",
+ "Some of your link shares have been removed" : "Dažas no kopīgotajām saitēm tika noņemtas",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Drošības kļūdas dēļ mums nācās noņemt dažas no kopīgotajām saitēm. Lūgums apmeklēt saiti, lai iegūtu vairāk informācijas.",
+ "The account limit of this instance is reached." : "Konta ierobežojums šajai instancei ir sasniegts.",
+ "Learn more ↗" : "Uzzināt vairāk ↗",
+ "Preparing update" : "Sagatavo atjauninājumu",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Lūgums izmantot komandrindas atjauninātāju, jo atjaunināšana pārlūkā ir atspējota config.php.",
"Turned on maintenance mode" : "Ieslēgts uzturēšanas režīms",
"Turned off maintenance mode" : "Izslēgts uzturēšanas režīms",
@@ -72,7 +73,7 @@
"Starting code integrity check" : "Uzsākta koda integritātes pārbaude",
"Finished code integrity check" : "Pabeigta koda integritātes pārbaude",
"%s (incompatible)" : "%s (nesaderīgs)",
- "The following apps have been disabled: %s" : "Sekojošās lietotnes tika atspējotas: %s",
+ "The following apps have been disabled: %s" : "Šīs lietotnes tika atspējotas: %s",
"Already up to date" : "Jau ir jaunākā",
"Unknown" : "Nezināms",
"Error occurred while checking server setup" : "Servera pārbaudīšanas laikā atgadījās kļūda",
@@ -110,6 +111,7 @@
"No matching results" : "Nav atbilstoša iznākuma",
"Today" : "Šodien",
"Unified search" : "Apvienotā meklēšana",
+ "Search apps, files, tags, messages" : "Meklēt lietotnes, datnes, birkas, ziņojumus",
"Places" : "Vietas",
"Date" : "Datums",
"Search people" : "Meklēt cilvēkus",
@@ -119,7 +121,7 @@
"Search in" : "Meklēt",
"Log in" : "Pieteikties",
"Logging in …" : "Notiek pieteikšanās …",
- "Log in to {productName}" : "Pierakstīties {productName}",
+ "Log in to {productName}" : "Pieteikties {productName}",
"Wrong login or password." : "Nepareizs lietotājvārds vai parole.",
"This account is disabled" : "Šis konts ir atspējots",
"Account name or email" : "Konta nosaukums vai e-pasta adrese",
@@ -190,10 +192,10 @@
"New Files" : "Jaunas datnes",
"Already existing files" : "Jau esošas datnes",
"Which files do you want to keep?" : "Kuras datnes vēlies paturēt?",
- "If you select both versions, the copied file will have a number added to its name." : "Ja izvēlēsietes paturēt abas versijas, kopētās datnes nosaukumam tiks pievienots skaitlis.",
+ "If you select both versions, the copied file will have a number added to its name." : "Ja izvēlēsies paturēt abas versijas, kopētās datnes nosaukumam tiks pievienots skaitlis.",
"Cancel" : "Atcelt",
"Continue" : "Turpināt",
- "(all selected)" : "(visus iezīmētos)",
+ "(all selected)" : "(visas atlasītās)",
"({count} selected)" : "({count} iezīmēti)",
"Error loading file exists template" : "Kļūda esošas datnes veidnes ielādēšanā",
"Saving …" : "Saglabā ...",
@@ -201,8 +203,8 @@
"Connection to server lost" : "Zaudēts savienojums ar serveri",
"_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Problēma ielādējot lapu, pārlādēšana pēc %n sekundēm","Problēma ielādējot lapu, pārlādēšana pēc %n sekundēm","Problēma ielādējot lapu, pārlādēšana pēc %n sekundēm"],
"Add to a project" : "Pievienot projektam",
- "Show details" : "Rādīt detaļas",
- "Hide details" : "Slēpt detaļas",
+ "Show details" : "Rādīt informāciju",
+ "Hide details" : "Paslēpt informāciju",
"Rename project" : "Pārdēvēt projektu",
"Failed to rename the project" : "Neizdevās pārdēvēt projektu",
"Failed to create a project" : "Neizdevās izveidot projektu",
@@ -230,7 +232,7 @@
"The server was unable to complete your request." : "Serveris nevarēja izpildīt tavu pieprasījumu.",
"More details can be found in the server log." : "Vairāk informācijas var atrast servera žurnālā.",
"For more details see the documentation ↗." : "Vairāk informācijas var atrast dokumentācijā ↗.",
- "Technical details" : "Tehniskās detaļas",
+ "Technical details" : "Tehniskā informācija",
"Remote Address: %s" : "Attālā adrese: %s",
"Request ID: %s" : "Pieprasījuma ID: %s",
"Type: %s" : "Veids: %s",
@@ -276,11 +278,10 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Šis %s serveris pašlaik darbojas uzturēšanas režīmā, tas var ilgt kādu laiku.",
"This page will refresh itself when the instance is available again." : "Šī lapa atsvaidzināsies, kad Nextcloud būs atkal pieejams.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Jāsazinās ar sistēmas pārvaldītāju, ja šis ziņojums nepazūd vai parādījās negaidīti",
- "Login with username or email" : "Pieteikties ar lietotājvārdu vai e-pasta adresi",
- "Login with username" : "Pieteikties ar lietotājvārdu",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Tērzēšana, videozvani, ekrāna kopīgošana, tiešsaistes sapulces un tīmekļa apspriedes - pārlūkā un viedierīču lietotnēs.",
+ "You have not added any info yet" : "Vēl nav pievienota nekāda informācija",
+ "{user} has not added any info yet" : "{user} vēl nav pievienojis nekādu informāciju ",
"Edit Profile" : "Labot profilu",
- "Error loading message template: {error}" : "Kļūda ielādējot ziņojuma veidni: {error}",
"Very weak password" : "Ļoti vāja parole",
"Weak password" : "Vāja parole",
"So-so password" : "Viduvēja parole",
diff --git a/core/l10n/mk.js b/core/l10n/mk.js
index 41356f01447..e37c9cf12ef 100644
--- a/core/l10n/mk.js
+++ b/core/l10n/mk.js
@@ -42,16 +42,16 @@ OC.L10N.register(
"Image not found" : "Сликата не е пронајдена",
"Could not detect language" : "Неможе да се детектира јазикот",
"Unable to translate" : "Неможе да се преведе",
- "Nextcloud Server" : "Nextcloud Сервер",
- "Some of your link shares have been removed" : "Некој од вашите линкови што ги споделивте се избришани",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Поради безбедносен ризик некој од вашите споделувања се избришани. Ве молиме видете го линкот за повеќе информации.",
- "Learn more ↗" : "Научи повеќе ↗",
- "Preparing update" : "Ја подготвувам надградбата",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Чекори за поправка:",
"Repair info:" : "Инфо при поправка:",
"Repair warning:" : "Предупредувања при поправка:",
"Repair error:" : "Грешка при поправка:",
+ "Nextcloud Server" : "Nextcloud Сервер",
+ "Some of your link shares have been removed" : "Некој од вашите линкови што ги споделивте се избришани",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Поради безбедносен ризик некој од вашите споделувања се избришани. Ве молиме видете го линкот за повеќе информации.",
+ "Learn more ↗" : "Научи повеќе ↗",
+ "Preparing update" : "Ја подготвувам надградбата",
"Turned on maintenance mode" : "Вклучен е модот за одржување",
"Turned off maintenance mode" : "Ислкучен е модот за одржување",
"Maintenance mode is kept active" : "Модот за одржување е уште активен",
@@ -95,6 +95,7 @@ OC.L10N.register(
"Create share" : "Ново споделување",
"Pick start date" : "Избери почетен датум",
"Pick end date" : "Избери краен датум",
+ "Search everywhere" : "Барај насекаде",
"Searching …" : "Пребарување ...",
"Start typing to search" : "Напишете нешто за пребарување",
"Today" : "Денес",
@@ -116,6 +117,7 @@ OC.L10N.register(
"This account is disabled" : "Оваа сметка е оневозможена",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "Детектирани се повеќе неуспешни најавувања од вашата IP адреса. Затоа вашиот следен обид за најавување е одложено за 30 секунди.",
"Account name or email" : "Корисничко име или е-пошта",
+ "Account name" : "Корисничко име",
"Server side authentication failed!" : "Автентификацијата на серверската страна е неуспешна!",
"Please contact your administrator." : "Ве молиме контактирајте го вашиот администратор.",
"An internal error occurred." : "Се случи внатрешна грешка.",
@@ -245,9 +247,9 @@ OC.L10N.register(
"Admin" : "Админ",
"Help" : "Помош",
"Access forbidden" : "Забранет пристап",
+ "Back to %s" : "Врати се на %s",
"Page not found" : "Страницата не е пронајдена",
"The page could not be found on the server or you may not be allowed to view it." : "Страната не е пронајдена на серверот или не ви е дозволен пристап.",
- "Back to %s" : "Врати се на %s",
"Too many requests" : "Премногу барања",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Има испратено премногу барање од вашата мрежа. Обидете се подоцна повторно или контактирајте го администраторот.",
"Error" : "Грешка",
@@ -323,15 +325,11 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Истанцата %s моментално е во режим на одржување, што значи дека може да потрае некое време.",
"This page will refresh itself when the instance is available again." : "Оваа веб страница ќе се рефрешира кога истанцата ќе биде повторно достапна.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Контактирајте го вашиот систем администратор до колку оваа порака продолжи да се појавува или пак се појавува ненадејно.",
- "Currently open" : "Моментално отворено",
- "Login with username or email" : "Најава со корисничко име или е-пошта",
- "Login with username" : "Најава со корисничко име",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Разговори, видео повици, споделување на екранот, онлајн состаноци и веб конференции - на вашиот компјутер и на вашиот мобилен телефон.",
"You have not added any info yet" : "Сè уште немате додадено никакви информации",
"{user} has not added any info yet" : "{user} нема додадено никакви информации",
"Edit Profile" : "Уреди профил",
"The headline and about sections will show up here" : "Насловот и за секциите ќе се појават овде",
- "Error loading message template: {error}" : "Грешка при вчитување на образецот за порака: {error}",
"Very weak password" : "Многу слаба лозинка",
"Weak password" : "Слаба лозинка",
"So-so password" : "Така така лозинка",
diff --git a/core/l10n/mk.json b/core/l10n/mk.json
index 21c94e7e55f..e8114803112 100644
--- a/core/l10n/mk.json
+++ b/core/l10n/mk.json
@@ -40,16 +40,16 @@
"Image not found" : "Сликата не е пронајдена",
"Could not detect language" : "Неможе да се детектира јазикот",
"Unable to translate" : "Неможе да се преведе",
- "Nextcloud Server" : "Nextcloud Сервер",
- "Some of your link shares have been removed" : "Некој од вашите линкови што ги споделивте се избришани",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Поради безбедносен ризик некој од вашите споделувања се избришани. Ве молиме видете го линкот за повеќе информации.",
- "Learn more ↗" : "Научи повеќе ↗",
- "Preparing update" : "Ја подготвувам надградбата",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Чекори за поправка:",
"Repair info:" : "Инфо при поправка:",
"Repair warning:" : "Предупредувања при поправка:",
"Repair error:" : "Грешка при поправка:",
+ "Nextcloud Server" : "Nextcloud Сервер",
+ "Some of your link shares have been removed" : "Некој од вашите линкови што ги споделивте се избришани",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Поради безбедносен ризик некој од вашите споделувања се избришани. Ве молиме видете го линкот за повеќе информации.",
+ "Learn more ↗" : "Научи повеќе ↗",
+ "Preparing update" : "Ја подготвувам надградбата",
"Turned on maintenance mode" : "Вклучен е модот за одржување",
"Turned off maintenance mode" : "Ислкучен е модот за одржување",
"Maintenance mode is kept active" : "Модот за одржување е уште активен",
@@ -93,6 +93,7 @@
"Create share" : "Ново споделување",
"Pick start date" : "Избери почетен датум",
"Pick end date" : "Избери краен датум",
+ "Search everywhere" : "Барај насекаде",
"Searching …" : "Пребарување ...",
"Start typing to search" : "Напишете нешто за пребарување",
"Today" : "Денес",
@@ -114,6 +115,7 @@
"This account is disabled" : "Оваа сметка е оневозможена",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "Детектирани се повеќе неуспешни најавувања од вашата IP адреса. Затоа вашиот следен обид за најавување е одложено за 30 секунди.",
"Account name or email" : "Корисничко име или е-пошта",
+ "Account name" : "Корисничко име",
"Server side authentication failed!" : "Автентификацијата на серверската страна е неуспешна!",
"Please contact your administrator." : "Ве молиме контактирајте го вашиот администратор.",
"An internal error occurred." : "Се случи внатрешна грешка.",
@@ -243,9 +245,9 @@
"Admin" : "Админ",
"Help" : "Помош",
"Access forbidden" : "Забранет пристап",
+ "Back to %s" : "Врати се на %s",
"Page not found" : "Страницата не е пронајдена",
"The page could not be found on the server or you may not be allowed to view it." : "Страната не е пронајдена на серверот или не ви е дозволен пристап.",
- "Back to %s" : "Врати се на %s",
"Too many requests" : "Премногу барања",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Има испратено премногу барање од вашата мрежа. Обидете се подоцна повторно или контактирајте го администраторот.",
"Error" : "Грешка",
@@ -321,15 +323,11 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Истанцата %s моментално е во режим на одржување, што значи дека може да потрае некое време.",
"This page will refresh itself when the instance is available again." : "Оваа веб страница ќе се рефрешира кога истанцата ќе биде повторно достапна.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Контактирајте го вашиот систем администратор до колку оваа порака продолжи да се појавува или пак се појавува ненадејно.",
- "Currently open" : "Моментално отворено",
- "Login with username or email" : "Најава со корисничко име или е-пошта",
- "Login with username" : "Најава со корисничко име",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Разговори, видео повици, споделување на екранот, онлајн состаноци и веб конференции - на вашиот компјутер и на вашиот мобилен телефон.",
"You have not added any info yet" : "Сè уште немате додадено никакви информации",
"{user} has not added any info yet" : "{user} нема додадено никакви информации",
"Edit Profile" : "Уреди профил",
"The headline and about sections will show up here" : "Насловот и за секциите ќе се појават овде",
- "Error loading message template: {error}" : "Грешка при вчитување на образецот за порака: {error}",
"Very weak password" : "Многу слаба лозинка",
"Weak password" : "Слаба лозинка",
"So-so password" : "Така така лозинка",
diff --git a/core/l10n/nb.js b/core/l10n/nb.js
index dd83f589cc5..8c40556c291 100644
--- a/core/l10n/nb.js
+++ b/core/l10n/nb.js
@@ -51,6 +51,11 @@ OC.L10N.register(
"No translation provider available" : "Ingen tilbyder av oversetting er tilgjengelig",
"Could not detect language" : "Kunne ikke gjenkjenne srpåk",
"Unable to translate" : "Ikke i stand til å oversette",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Reparasjonstrinn:",
+ "Repair info:" : "Reparasjonsinformasjon:",
+ "Repair warning:" : "Reparasjonsadvarsel:",
+ "Repair error:" : "Reparasjonsfeil:",
"Nextcloud Server" : "Nextcloud-server",
"Some of your link shares have been removed" : "Noen av de delte lenkene dine har blitt fjernet",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "På grunn av et sikkerhetsproblem har vi fjernet enkelte av de delte lenkene dine. Vennligst se linken for mer informasjon. ",
@@ -58,11 +63,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Skriv inn abonnementsnøkkelen din i støtteappen for å øke brukergrensen. Dette gir deg også alle tilleggsfordeler som Nextcloud Enterprise tilbyr og anbefales på det sterkeste for driften i selskaper.",
"Learn more ↗" : "Lær mer ↗",
"Preparing update" : "Forbereder oppdatering",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Reparasjonstrinn:",
- "Repair info:" : "Reparasjonsinformasjon:",
- "Repair warning:" : "Reparasjonsadvarsel:",
- "Repair error:" : "Reparasjonsfeil:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Vennligst bruk kommandolinje til å oppdatere. Oppdatering via nettleser er ikke aktivert i din config.php.",
"Turned on maintenance mode" : "Vedlikeholdmodus aktivt",
"Turned off maintenance mode" : "Vedlikeholdmodus er deaktivert",
@@ -283,9 +283,9 @@ OC.L10N.register(
"Admin" : "Admin",
"Help" : "Hjelp",
"Access forbidden" : "Tilgang nektet",
+ "Back to %s" : "Tilbake til %s",
"Page not found" : "Siden ble ikke funnet",
"The page could not be found on the server or you may not be allowed to view it." : "Siden ble ikke funnet på serveren, eller du har ikke tilgang til den.",
- "Back to %s" : "Tilbake til %s",
"Too many requests" : "For mange forespørsler",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Det var for mange forespørsler fra ditt nettverk. Prøv igjen senere eller kontakt din administrator hvis dette er en feil.",
"Error" : "Feil",
@@ -361,16 +361,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Denne %s-instansen er for øyeblikket i vedlikeholdsmodus, noe som kan vare en stund.",
"This page will refresh itself when the instance is available again." : "Siden vil oppdatere seg selv når instans er tilgjengelig igjen.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Kontakt systemadministratoren hvis denne meldingen var uventet eller ikke forsvinner.",
- "Currently open" : "For øyeblikket åpen",
- "Login with username or email" : "Logg inn med brukernavn eller e-post",
- "Login with username" : "Logg inn med brukernavn",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatting, videosamtaler, skjermdeling, nettmøter og webkonferanser – i din nettleser og med mobilapper.",
"You have not added any info yet" : "Du har ikke lagt inn noe informasjon ennå",
"{user} has not added any info yet" : "{user} har ikke lagt inn noe informasjon ennå",
"Error opening the user status modal, try hard refreshing the page" : "Feil ved åpning av bruker-status modal, prøv å laste inn siden på nytt med hard refresh",
"Edit Profile" : "Endre profil",
"The headline and about sections will show up here" : "Overskriften og om-seksjoner vil vises her",
- "Error loading message template: {error}" : "Feil ved lasting av meldingsmal: {error}",
"Very weak password" : "Veldig svakt passord",
"Weak password" : "Svakt passord",
"So-so password" : "Bob-bob-passord",
diff --git a/core/l10n/nb.json b/core/l10n/nb.json
index ee221bc6b0a..ef1d8950ce8 100644
--- a/core/l10n/nb.json
+++ b/core/l10n/nb.json
@@ -49,6 +49,11 @@
"No translation provider available" : "Ingen tilbyder av oversetting er tilgjengelig",
"Could not detect language" : "Kunne ikke gjenkjenne srpåk",
"Unable to translate" : "Ikke i stand til å oversette",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Reparasjonstrinn:",
+ "Repair info:" : "Reparasjonsinformasjon:",
+ "Repair warning:" : "Reparasjonsadvarsel:",
+ "Repair error:" : "Reparasjonsfeil:",
"Nextcloud Server" : "Nextcloud-server",
"Some of your link shares have been removed" : "Noen av de delte lenkene dine har blitt fjernet",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "På grunn av et sikkerhetsproblem har vi fjernet enkelte av de delte lenkene dine. Vennligst se linken for mer informasjon. ",
@@ -56,11 +61,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Skriv inn abonnementsnøkkelen din i støtteappen for å øke brukergrensen. Dette gir deg også alle tilleggsfordeler som Nextcloud Enterprise tilbyr og anbefales på det sterkeste for driften i selskaper.",
"Learn more ↗" : "Lær mer ↗",
"Preparing update" : "Forbereder oppdatering",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Reparasjonstrinn:",
- "Repair info:" : "Reparasjonsinformasjon:",
- "Repair warning:" : "Reparasjonsadvarsel:",
- "Repair error:" : "Reparasjonsfeil:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Vennligst bruk kommandolinje til å oppdatere. Oppdatering via nettleser er ikke aktivert i din config.php.",
"Turned on maintenance mode" : "Vedlikeholdmodus aktivt",
"Turned off maintenance mode" : "Vedlikeholdmodus er deaktivert",
@@ -281,9 +281,9 @@
"Admin" : "Admin",
"Help" : "Hjelp",
"Access forbidden" : "Tilgang nektet",
+ "Back to %s" : "Tilbake til %s",
"Page not found" : "Siden ble ikke funnet",
"The page could not be found on the server or you may not be allowed to view it." : "Siden ble ikke funnet på serveren, eller du har ikke tilgang til den.",
- "Back to %s" : "Tilbake til %s",
"Too many requests" : "For mange forespørsler",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Det var for mange forespørsler fra ditt nettverk. Prøv igjen senere eller kontakt din administrator hvis dette er en feil.",
"Error" : "Feil",
@@ -359,16 +359,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Denne %s-instansen er for øyeblikket i vedlikeholdsmodus, noe som kan vare en stund.",
"This page will refresh itself when the instance is available again." : "Siden vil oppdatere seg selv når instans er tilgjengelig igjen.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Kontakt systemadministratoren hvis denne meldingen var uventet eller ikke forsvinner.",
- "Currently open" : "For øyeblikket åpen",
- "Login with username or email" : "Logg inn med brukernavn eller e-post",
- "Login with username" : "Logg inn med brukernavn",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatting, videosamtaler, skjermdeling, nettmøter og webkonferanser – i din nettleser og med mobilapper.",
"You have not added any info yet" : "Du har ikke lagt inn noe informasjon ennå",
"{user} has not added any info yet" : "{user} har ikke lagt inn noe informasjon ennå",
"Error opening the user status modal, try hard refreshing the page" : "Feil ved åpning av bruker-status modal, prøv å laste inn siden på nytt med hard refresh",
"Edit Profile" : "Endre profil",
"The headline and about sections will show up here" : "Overskriften og om-seksjoner vil vises her",
- "Error loading message template: {error}" : "Feil ved lasting av meldingsmal: {error}",
"Very weak password" : "Veldig svakt passord",
"Weak password" : "Svakt passord",
"So-so password" : "Bob-bob-passord",
diff --git a/core/l10n/nl.js b/core/l10n/nl.js
index 952c80a631d..8302940fd89 100644
--- a/core/l10n/nl.js
+++ b/core/l10n/nl.js
@@ -12,7 +12,7 @@ OC.L10N.register(
"No file was uploaded" : "Er is geen bestand geüpload",
"Missing a temporary folder" : "Tijdelijke map ontbreekt",
"Could not write file to disk" : "Kon bestand niet naar schijf schrijven",
- "A PHP extension stopped the file upload" : "Een PHP-extensie blokkeerde de upload.",
+ "A PHP extension stopped the file upload" : "Een PHP-extensie blokkeerde de upload",
"Invalid file provided" : "Ongeldig bestand opgegeven",
"No image or file provided" : "Geen afbeelding of bestand opgegeven",
"Unknown filetype" : "Onbekend bestandsformaat",
@@ -27,6 +27,7 @@ OC.L10N.register(
"Could not complete login" : "De login kon niet worden voltooid",
"State token missing" : "Toestandstoken bestaat niet",
"Your login token is invalid or has expired" : "Je inlogtoken is ongeldig of is vervallen",
+ "Please use original client" : "Gebruik alsjeblieft de originele client",
"This community release of Nextcloud is unsupported and push notifications are limited." : "Deze community release van Nextcloud wordt niet ondersteund en meldingen zijn beperkt",
"Login" : "Inloggen",
"Unsupported email length (>255)" : "Niet ondersteunde e-maillengte (>255)",
@@ -43,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Taak niet gevonden",
"Internal error" : "Interne fout",
"Not found" : "Niet gevonden",
+ "Node is locked" : "Node is vergrendeld",
"Bad request" : "Ongeldige aanvraag",
"Requested task type does not exist" : "Het aangevraagde taaktype bestaat niet",
"Necessary language model provider is not available" : "De nodige taalmodel provider is niet beschikbaar",
@@ -51,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Geen provider voor vertaling beschikbaar",
"Could not detect language" : "Kan taal niet detecteren",
"Unable to translate" : "Niet mogelijk te vertalen",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Herstel stap:",
+ "Repair info:" : "Herstel informatie:",
+ "Repair warning:" : "Herstel waarschuwing:",
+ "Repair error:" : "Herstel fout:",
"Nextcloud Server" : "Nextcloud Server",
"Some of your link shares have been removed" : "Sommige van je gedeelde links zijn verwijderd",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Door een security-bug moesten we sommige van je gedeelde links verwijderen. Bekijk de link voor meer informatie.",
@@ -58,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Voer uw abonnementscode in de support-app in om de accountlimiet te verhogen. Dit geeft u ook alle extra voordelen die Nextcloud Enterprise biedt en wordt ten zeerste aanbevolen voor gebruik binnen bedrijven.",
"Learn more ↗" : "Meer weten ↗",
"Preparing update" : "Update voorbereiden",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Herstel stap:",
- "Repair info:" : "Herstel informatie:",
- "Repair warning:" : "Herstel waarschuwing:",
- "Repair error:" : "Herstel fout:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Gelieve de commandolijn updater te gebruiken omdat bijwerken via de browser is uitgeschakeld in uw config.php.",
"Turned on maintenance mode" : "Onderhoudsmodus ingeschakeld",
"Turned off maintenance mode" : "Onderhoudsmodus uitgeschakeld",
@@ -79,8 +81,125 @@ OC.L10N.register(
"%s (incompatible)" : "%s (incompatibel)",
"The following apps have been disabled: %s" : "De volgende apps zijn uitgeschakeld: %s",
"Already up to date" : "Al bijgewerkt",
+ "Windows Command Script" : "Windows Command Script",
+ "Electronic book document" : "Elektronisch boekdocument",
+ "TrueType Font Collection" : "TrueType Font Collectie",
+ "Web Open Font Format" : "Web Open Font Formaat",
+ "GPX geographic data" : "GPX geographische gegevens",
+ "Gzip archive" : "Gzip archief",
+ "Adobe Illustrator document" : "Adobe Illustrator-document",
+ "Java source code" : "Java broncode",
+ "JavaScript source code" : "JavaScript broncode",
+ "JSON document" : "JSON-document",
+ "Microsoft Access database" : "Microsoft Access-database",
+ "Microsoft OneNote document" : "Microsoft OneNote-document",
+ "Microsoft Word document" : "Microsoft Word-document",
"Unknown" : "Onbekend",
+ "PDF document" : "PDF-document",
+ "PostScript document" : "PostScript-document",
+ "RSS summary" : "RSS-samenvatting",
+ "Android package" : "Android-pakket",
+ "KML geographic data" : "KML geografische gegevens",
+ "KML geographic compressed data" : "KML gecomprimeerde geografische gegevens",
+ "Lotus Word Pro document" : "Lotus Word Pro-document",
+ "Excel spreadsheet" : "Excel-spreadsheet",
+ "Excel add-in" : "Excel-invoegtoepassing",
+ "Excel 2007 binary spreadsheet" : "Excel 2007 binaire spreadsheet",
+ "Excel spreadsheet template" : "Excel spreadsheetsjabloon",
+ "Outlook Message" : "Outlook-bericht",
+ "PowerPoint presentation" : "PowerPoint-presentatie",
+ "PowerPoint add-in" : "PowerPoint-invoegtoepassing",
+ "PowerPoint presentation template" : "PowerPoint presentatiesjabloon",
+ "Word document" : "Word-document",
+ "ODF formula" : "ODF-formule",
+ "ODG drawing" : "ODG-tekening",
+ "ODG drawing (Flat XML)" : "ODG-tekening (Flat XML)",
+ "ODG template" : "ODG-sjabloon",
+ "ODP presentation" : "ODP-presentatie",
+ "ODP presentation (Flat XML)" : "ODP-presentatie (Flat XML)",
+ "ODP template" : "ODP-sjabloon",
+ "ODS spreadsheet" : "ODS-spreadsheet",
+ "ODS spreadsheet (Flat XML)" : "ODS-spreadsheet (Flat XML)",
+ "ODS template" : "ODS-sjabloon",
+ "ODT document" : "ODT-document",
+ "ODT document (Flat XML)" : "ODT-document (Flat XML)",
+ "ODT template" : "ODT-sjabloon",
+ "PowerPoint 2007 presentation" : "PowerPoint 2007 presentatie",
+ "PowerPoint 2007 show" : "PowerPoint 2007 diashow",
+ "PowerPoint 2007 presentation template" : "PowerPoint 2007 presentatiesjabloon",
+ "Excel 2007 spreadsheet" : "Excel 2007 spreadsheet",
+ "Excel 2007 spreadsheet template" : "Excel 2007 spreadsheetsjabloon",
+ "Word 2007 document" : "Word 2007 document",
+ "Word 2007 document template" : "Word 2007 documentsjabloon",
+ "Microsoft Visio document" : "Microsoft Visio document",
+ "WordPerfect document" : "WordPerfect document",
+ "7-zip archive" : "7-zip archief",
+ "Blender scene" : "Blender-scene",
+ "Bzip2 archive" : "Bzip2 archief",
+ "Debian package" : "Debian-pakket",
+ "FictionBook document" : "FictionBook-document",
+ "Unknown font" : "Onbekend lettertype",
+ "Krita document" : "Krita-document",
+ "Mobipocket e-book" : "Mobipocket e-book",
+ "Windows Installer package" : "Windows Installer pakket",
+ "Perl script" : "Perl-script",
+ "PHP script" : "PHP-script",
+ "Tar archive" : "Tar archief",
+ "XML document" : "XML-document",
+ "YAML document" : "YAML-document",
+ "Zip archive" : "Zip archief",
+ "Zstandard archive" : "Zstandard archief",
+ "AAC audio" : "AAC audio",
+ "FLAC audio" : "FLAC audio",
+ "MPEG-4 audio" : "MPEG-4 audio",
+ "MP3 audio" : "MP3 audio",
+ "Ogg audio" : "Ogg audio",
+ "RIFF/WAVe standard Audio" : "RIFF/WAVe standaard audio",
+ "WebM audio" : "WebM audio",
+ "MP3 ShoutCast playlist" : "MP3 ShoutCast afspeellijst",
+ "Windows BMP image" : "Windows BMP afbeelding",
+ "Better Portable Graphics image" : "Better Portable Graphics afbeelding",
+ "EMF image" : "EMF afbeelding",
+ "GIF image" : "GIF afbeelding",
+ "HEIC image" : "HEIC afbeelding",
+ "HEIF image" : "HEIF afbeelding",
+ "JPEG-2000 JP2 image" : "JPEG-2000 JP2 afbeelding",
+ "JPEG image" : "JPEG afbeelding",
"PNG image" : "PNG afbeelding",
+ "SVG image" : "SVG afbeelding",
+ "Truevision Targa image" : "Truevision Targa afbeelding",
+ "TIFF image" : "TIFF afbeelding",
+ "WebP image" : "WebP afbeelding",
+ "Digital raw image" : "Digital raw afbeelding",
+ "Windows Icon" : "Windows pictogram",
+ "Email message" : "Email bericht",
+ "VCS/ICS calendar" : "VCS/ICS-agenda",
+ "CSS stylesheet" : "CSS-stylesheet",
+ "CSV document" : "CSV-document",
+ "HTML document" : "HTML-document",
+ "Markdown document" : "Markdown-document",
+ "Org-mode file" : "Org-mode bestand",
+ "Plain text document" : "Platte tekstdocument",
+ "Rich Text document" : "Rich Text-document",
+ "Electronic business card" : "Elektronisch visitekaartje",
+ "C++ source code" : "C++ broncode",
+ "LDIF address book" : "LDIF-adresboek",
+ "NFO document" : "NFO-document",
+ "PHP source" : "PHP-broncode",
+ "Python script" : "Python-script",
+ "ReStructuredText document" : "ReStructuredText-document",
+ "3GPP multimedia file" : "3GPP multimedia bestand",
+ "MPEG video" : "MPEG-video",
+ "DV video" : "DV-video",
+ "MPEG-2 transport stream" : "MPEG-2 transportstroom",
+ "MPEG-4 video" : "MPEG-4 video",
+ "Ogg video" : "Ogg-video",
+ "QuickTime video" : "QuickTime video",
+ "WebM video" : "WebM-video",
+ "Flash video" : "Flash-video",
+ "Matroska video" : "Matroska-video",
+ "Windows Media video" : "Windows Media video",
+ "AVI video" : "AVI-video",
"Error occurred while checking server setup" : "Een fout trad op bij controleren van serverconfiguratie",
"For more details see the {linkstart}documentation ↗{linkend}." : "Voor meer informatie word je verwezen naar de {linkstart}documentatie↗{linkend}.",
"unknown text" : "onbekende tekst",
@@ -148,6 +267,8 @@ OC.L10N.register(
"Account name" : "Accountnaam",
"Server side authentication failed!" : "Authenticatie bij de server mislukt!",
"Please contact your administrator." : "Neem contact op met je systeembeheerder.",
+ "Session error" : "Sessiefout",
+ "It appears your session token has expired, please refresh the page and try again." : "Het blijkt dat de sessietoken is verlopen, ververs de pagina en probeer het opnieuw.",
"An internal error occurred." : "Er heeft zich een interne fout voorgedaan.",
"Please try again or contact your administrator." : "Probeer het opnieuw of neem contact op met je beheerder.",
"Password" : "Wachtwoord",
@@ -161,7 +282,7 @@ OC.L10N.register(
"Reset password" : "Reset wachtwoord",
"Back to login" : "Terug naar inloggen",
"If this account exists, a password reset message has been sent to its email address. If you do not receive it, verify your email address and/or Login, check your spam/junk folders or ask your local administration for help." : "Als dit account bestaat, werd er een wachtwoordherstel email naar het overeenkomstige email adres gestuurd. Krijg je geen mail? Controleer dan het e-mailadres en/of de login, check je spam folder of vraag hulp aan je beheerder.",
- "Couldn't send reset email. Please contact your administrator." : "Kon herstel email niet versturen. Neem contact op met je beheerder.",
+ "Couldn't send reset email. Please contact your administrator." : "Kon herstelbericht niet versturen. Neem contact op met je beheerder.",
"Password cannot be changed. Please contact your administrator." : "Het wachtwoord kan niet worden gewijzigd. Neem contact op met je beheerder.",
"New password" : "Nieuw wachtwoord",
"Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "Je bestanden zijn versleuteld. Het is niet mogelijk om je gegevens terug te krijgen als je wachtwoord wordt gereset. Als je niet zeker weer wat je moet doen, neem dan contact op met je beheerder voordat je verdergaat. Wil je echt verder gaan?",
@@ -207,9 +328,30 @@ OC.L10N.register(
"Login form is disabled." : "Inlogscherm uitgeschakeld",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Het aanmeldingsformulier van Nextcloud is uitgeschakeld. Gebruik een andere inlogmogelijkheid indien beschikbaar of neem contact op met uw beheerder.",
"More actions" : "Meer acties",
+ "User menu" : "Gebruikersmenu",
+ "You will be identified as {user} by the account owner." : "Je zal door de account eigenaar worden geïdentificeerd als {user}.",
+ "You are currently not identified." : "Je bent momenteel niet geïdentificeerd.",
+ "Set public name" : "Publieke naam instellen",
+ "Change public name" : "Publieke naam veranderen",
+ "Password is too weak" : "Wachtwoord is te zwak",
+ "Password is weak" : "Wachtwoord is zwak",
+ "Password is average" : "Wachtwoord is gemiddeld",
+ "Password is strong" : "Wachtwoord is sterk",
+ "Password is very strong" : "Wachtwoord is zeer sterk",
+ "Password is extremely strong" : "Wachtwoord is enorm sterk",
+ "Unknown password strength" : "Onbekende wachtwoord sterkte",
+ "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "Je data folder en bestanden zijn waarschijnlijk toegankelijk vanaf het internet omdat het <code>.htaccess</code>-bestand niet functioneert.",
+ "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "Informatie voor het juist configureren van uw server, {linkStart}bekijk de documentatie{linkEnd}",
+ "Autoconfig file detected" : "Autoconfig-bestand gevonden",
+ "The setup form below is pre-filled with the values from the config file." : "Het onderstaande formulier is vooraf ingevuld met de waardes van het configuratiebestand.",
"Security warning" : "Beveiligingswaarschuwing",
+ "Create administration account" : "Maak administratieve gebruiker",
+ "Administration account name" : "Administratieve gebruikersnaam",
+ "Administration account password" : "Wachtwoord administratieve gebruiker",
"Storage & database" : "Opslag & database",
"Data folder" : "Gegevensmap",
+ "Database configuration" : "Database configuratie",
+ "Only {firstAndOnlyDatabase} is available." : "Alleen {firstAndOnlyDatabase} is beschikbaar.",
"Install and activate additional PHP modules to choose other database types." : "Installeer en activeer aanvullende PHP modules om andere soorten databases te kiezen.",
"For more details check out the documentation." : "Voor meer informatie word je verwezen naar de documentatie.",
"Performance warning" : "Prestatiewaarschuwing",
@@ -222,6 +364,7 @@ OC.L10N.register(
"Database tablespace" : "Database tablespace",
"Please specify the port number along with the host name (e.g., localhost:5432)." : "Geef het poortnummer en servernaam op (bijv. localhost:5432).",
"Database host" : "Databaseserver",
+ "localhost" : "localhost",
"Installing …" : "Installeren …",
"Install" : "Installeren",
"Need help?" : "Hulp nodig?",
@@ -283,9 +426,10 @@ OC.L10N.register(
"Admin" : "Beheerder",
"Help" : "Help",
"Access forbidden" : "Toegang verboden",
+ "You are not allowed to access this page." : "Je hebt geen toegang tot deze pagina.",
+ "Back to %s" : "Terug naar %s",
"Page not found" : "Pagina niet gevonden",
"The page could not be found on the server or you may not be allowed to view it." : "Deze pagina kan niet worden gevonden op de server, of je hebt geen toelating om ze te bekijken.",
- "Back to %s" : "Terug naar %s",
"Too many requests" : "Te veel aanvragen",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Er waren te veel aanvragen afkomstig uit uw netwerk. Probeer later opnieuw of contacteer de beheerder als dat niet correct is.",
"Error" : "Fout",
@@ -361,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Deze %s staat momenteel in de onderhoudsstand, dat kan enige tijd duren.",
"This page will refresh itself when the instance is available again." : "Deze pagina wordt ververst als de server weer beschikbaar is.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Neem contact op met je systeembeheerder als deze melding aanhoudt of onverwacht verscheen.",
- "Currently open" : "Momenteel actief",
- "Login with username or email" : "Aanmelden met gebruikersnaam of e-mail",
- "Login with username" : "Aanmelden met gebruikersnaam",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatten, videobellen, schermdelen, online vergaderingen en webconferenties - in de browser en met mobiele apps.",
"You have not added any info yet" : "Je hebt nog geen info toegevoegd",
"{user} has not added any info yet" : "{user} heeft nog geen info toegevoegd",
"Error opening the user status modal, try hard refreshing the page" : "Fout bij het openen van het gebruiker status model, probeer een harde refresh van de pagina",
"Edit Profile" : "Wijzig Profiel",
"The headline and about sections will show up here" : "De koplijn- en oversectie zal hier verschijnen",
- "Error loading message template: {error}" : "Fout bij laden berichtensjabloon: {error}",
"Very weak password" : "Zeer zwak wachtwoord",
"Weak password" : "Zwak wachtwoord",
"So-so password" : "Matig wachtwoord",
diff --git a/core/l10n/nl.json b/core/l10n/nl.json
index 08f68da93d5..8107cedbdfe 100644
--- a/core/l10n/nl.json
+++ b/core/l10n/nl.json
@@ -10,7 +10,7 @@
"No file was uploaded" : "Er is geen bestand geüpload",
"Missing a temporary folder" : "Tijdelijke map ontbreekt",
"Could not write file to disk" : "Kon bestand niet naar schijf schrijven",
- "A PHP extension stopped the file upload" : "Een PHP-extensie blokkeerde de upload.",
+ "A PHP extension stopped the file upload" : "Een PHP-extensie blokkeerde de upload",
"Invalid file provided" : "Ongeldig bestand opgegeven",
"No image or file provided" : "Geen afbeelding of bestand opgegeven",
"Unknown filetype" : "Onbekend bestandsformaat",
@@ -25,6 +25,7 @@
"Could not complete login" : "De login kon niet worden voltooid",
"State token missing" : "Toestandstoken bestaat niet",
"Your login token is invalid or has expired" : "Je inlogtoken is ongeldig of is vervallen",
+ "Please use original client" : "Gebruik alsjeblieft de originele client",
"This community release of Nextcloud is unsupported and push notifications are limited." : "Deze community release van Nextcloud wordt niet ondersteund en meldingen zijn beperkt",
"Login" : "Inloggen",
"Unsupported email length (>255)" : "Niet ondersteunde e-maillengte (>255)",
@@ -41,6 +42,7 @@
"Task not found" : "Taak niet gevonden",
"Internal error" : "Interne fout",
"Not found" : "Niet gevonden",
+ "Node is locked" : "Node is vergrendeld",
"Bad request" : "Ongeldige aanvraag",
"Requested task type does not exist" : "Het aangevraagde taaktype bestaat niet",
"Necessary language model provider is not available" : "De nodige taalmodel provider is niet beschikbaar",
@@ -49,6 +51,11 @@
"No translation provider available" : "Geen provider voor vertaling beschikbaar",
"Could not detect language" : "Kan taal niet detecteren",
"Unable to translate" : "Niet mogelijk te vertalen",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Herstel stap:",
+ "Repair info:" : "Herstel informatie:",
+ "Repair warning:" : "Herstel waarschuwing:",
+ "Repair error:" : "Herstel fout:",
"Nextcloud Server" : "Nextcloud Server",
"Some of your link shares have been removed" : "Sommige van je gedeelde links zijn verwijderd",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Door een security-bug moesten we sommige van je gedeelde links verwijderen. Bekijk de link voor meer informatie.",
@@ -56,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Voer uw abonnementscode in de support-app in om de accountlimiet te verhogen. Dit geeft u ook alle extra voordelen die Nextcloud Enterprise biedt en wordt ten zeerste aanbevolen voor gebruik binnen bedrijven.",
"Learn more ↗" : "Meer weten ↗",
"Preparing update" : "Update voorbereiden",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Herstel stap:",
- "Repair info:" : "Herstel informatie:",
- "Repair warning:" : "Herstel waarschuwing:",
- "Repair error:" : "Herstel fout:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Gelieve de commandolijn updater te gebruiken omdat bijwerken via de browser is uitgeschakeld in uw config.php.",
"Turned on maintenance mode" : "Onderhoudsmodus ingeschakeld",
"Turned off maintenance mode" : "Onderhoudsmodus uitgeschakeld",
@@ -77,8 +79,125 @@
"%s (incompatible)" : "%s (incompatibel)",
"The following apps have been disabled: %s" : "De volgende apps zijn uitgeschakeld: %s",
"Already up to date" : "Al bijgewerkt",
+ "Windows Command Script" : "Windows Command Script",
+ "Electronic book document" : "Elektronisch boekdocument",
+ "TrueType Font Collection" : "TrueType Font Collectie",
+ "Web Open Font Format" : "Web Open Font Formaat",
+ "GPX geographic data" : "GPX geographische gegevens",
+ "Gzip archive" : "Gzip archief",
+ "Adobe Illustrator document" : "Adobe Illustrator-document",
+ "Java source code" : "Java broncode",
+ "JavaScript source code" : "JavaScript broncode",
+ "JSON document" : "JSON-document",
+ "Microsoft Access database" : "Microsoft Access-database",
+ "Microsoft OneNote document" : "Microsoft OneNote-document",
+ "Microsoft Word document" : "Microsoft Word-document",
"Unknown" : "Onbekend",
+ "PDF document" : "PDF-document",
+ "PostScript document" : "PostScript-document",
+ "RSS summary" : "RSS-samenvatting",
+ "Android package" : "Android-pakket",
+ "KML geographic data" : "KML geografische gegevens",
+ "KML geographic compressed data" : "KML gecomprimeerde geografische gegevens",
+ "Lotus Word Pro document" : "Lotus Word Pro-document",
+ "Excel spreadsheet" : "Excel-spreadsheet",
+ "Excel add-in" : "Excel-invoegtoepassing",
+ "Excel 2007 binary spreadsheet" : "Excel 2007 binaire spreadsheet",
+ "Excel spreadsheet template" : "Excel spreadsheetsjabloon",
+ "Outlook Message" : "Outlook-bericht",
+ "PowerPoint presentation" : "PowerPoint-presentatie",
+ "PowerPoint add-in" : "PowerPoint-invoegtoepassing",
+ "PowerPoint presentation template" : "PowerPoint presentatiesjabloon",
+ "Word document" : "Word-document",
+ "ODF formula" : "ODF-formule",
+ "ODG drawing" : "ODG-tekening",
+ "ODG drawing (Flat XML)" : "ODG-tekening (Flat XML)",
+ "ODG template" : "ODG-sjabloon",
+ "ODP presentation" : "ODP-presentatie",
+ "ODP presentation (Flat XML)" : "ODP-presentatie (Flat XML)",
+ "ODP template" : "ODP-sjabloon",
+ "ODS spreadsheet" : "ODS-spreadsheet",
+ "ODS spreadsheet (Flat XML)" : "ODS-spreadsheet (Flat XML)",
+ "ODS template" : "ODS-sjabloon",
+ "ODT document" : "ODT-document",
+ "ODT document (Flat XML)" : "ODT-document (Flat XML)",
+ "ODT template" : "ODT-sjabloon",
+ "PowerPoint 2007 presentation" : "PowerPoint 2007 presentatie",
+ "PowerPoint 2007 show" : "PowerPoint 2007 diashow",
+ "PowerPoint 2007 presentation template" : "PowerPoint 2007 presentatiesjabloon",
+ "Excel 2007 spreadsheet" : "Excel 2007 spreadsheet",
+ "Excel 2007 spreadsheet template" : "Excel 2007 spreadsheetsjabloon",
+ "Word 2007 document" : "Word 2007 document",
+ "Word 2007 document template" : "Word 2007 documentsjabloon",
+ "Microsoft Visio document" : "Microsoft Visio document",
+ "WordPerfect document" : "WordPerfect document",
+ "7-zip archive" : "7-zip archief",
+ "Blender scene" : "Blender-scene",
+ "Bzip2 archive" : "Bzip2 archief",
+ "Debian package" : "Debian-pakket",
+ "FictionBook document" : "FictionBook-document",
+ "Unknown font" : "Onbekend lettertype",
+ "Krita document" : "Krita-document",
+ "Mobipocket e-book" : "Mobipocket e-book",
+ "Windows Installer package" : "Windows Installer pakket",
+ "Perl script" : "Perl-script",
+ "PHP script" : "PHP-script",
+ "Tar archive" : "Tar archief",
+ "XML document" : "XML-document",
+ "YAML document" : "YAML-document",
+ "Zip archive" : "Zip archief",
+ "Zstandard archive" : "Zstandard archief",
+ "AAC audio" : "AAC audio",
+ "FLAC audio" : "FLAC audio",
+ "MPEG-4 audio" : "MPEG-4 audio",
+ "MP3 audio" : "MP3 audio",
+ "Ogg audio" : "Ogg audio",
+ "RIFF/WAVe standard Audio" : "RIFF/WAVe standaard audio",
+ "WebM audio" : "WebM audio",
+ "MP3 ShoutCast playlist" : "MP3 ShoutCast afspeellijst",
+ "Windows BMP image" : "Windows BMP afbeelding",
+ "Better Portable Graphics image" : "Better Portable Graphics afbeelding",
+ "EMF image" : "EMF afbeelding",
+ "GIF image" : "GIF afbeelding",
+ "HEIC image" : "HEIC afbeelding",
+ "HEIF image" : "HEIF afbeelding",
+ "JPEG-2000 JP2 image" : "JPEG-2000 JP2 afbeelding",
+ "JPEG image" : "JPEG afbeelding",
"PNG image" : "PNG afbeelding",
+ "SVG image" : "SVG afbeelding",
+ "Truevision Targa image" : "Truevision Targa afbeelding",
+ "TIFF image" : "TIFF afbeelding",
+ "WebP image" : "WebP afbeelding",
+ "Digital raw image" : "Digital raw afbeelding",
+ "Windows Icon" : "Windows pictogram",
+ "Email message" : "Email bericht",
+ "VCS/ICS calendar" : "VCS/ICS-agenda",
+ "CSS stylesheet" : "CSS-stylesheet",
+ "CSV document" : "CSV-document",
+ "HTML document" : "HTML-document",
+ "Markdown document" : "Markdown-document",
+ "Org-mode file" : "Org-mode bestand",
+ "Plain text document" : "Platte tekstdocument",
+ "Rich Text document" : "Rich Text-document",
+ "Electronic business card" : "Elektronisch visitekaartje",
+ "C++ source code" : "C++ broncode",
+ "LDIF address book" : "LDIF-adresboek",
+ "NFO document" : "NFO-document",
+ "PHP source" : "PHP-broncode",
+ "Python script" : "Python-script",
+ "ReStructuredText document" : "ReStructuredText-document",
+ "3GPP multimedia file" : "3GPP multimedia bestand",
+ "MPEG video" : "MPEG-video",
+ "DV video" : "DV-video",
+ "MPEG-2 transport stream" : "MPEG-2 transportstroom",
+ "MPEG-4 video" : "MPEG-4 video",
+ "Ogg video" : "Ogg-video",
+ "QuickTime video" : "QuickTime video",
+ "WebM video" : "WebM-video",
+ "Flash video" : "Flash-video",
+ "Matroska video" : "Matroska-video",
+ "Windows Media video" : "Windows Media video",
+ "AVI video" : "AVI-video",
"Error occurred while checking server setup" : "Een fout trad op bij controleren van serverconfiguratie",
"For more details see the {linkstart}documentation ↗{linkend}." : "Voor meer informatie word je verwezen naar de {linkstart}documentatie↗{linkend}.",
"unknown text" : "onbekende tekst",
@@ -146,6 +265,8 @@
"Account name" : "Accountnaam",
"Server side authentication failed!" : "Authenticatie bij de server mislukt!",
"Please contact your administrator." : "Neem contact op met je systeembeheerder.",
+ "Session error" : "Sessiefout",
+ "It appears your session token has expired, please refresh the page and try again." : "Het blijkt dat de sessietoken is verlopen, ververs de pagina en probeer het opnieuw.",
"An internal error occurred." : "Er heeft zich een interne fout voorgedaan.",
"Please try again or contact your administrator." : "Probeer het opnieuw of neem contact op met je beheerder.",
"Password" : "Wachtwoord",
@@ -159,7 +280,7 @@
"Reset password" : "Reset wachtwoord",
"Back to login" : "Terug naar inloggen",
"If this account exists, a password reset message has been sent to its email address. If you do not receive it, verify your email address and/or Login, check your spam/junk folders or ask your local administration for help." : "Als dit account bestaat, werd er een wachtwoordherstel email naar het overeenkomstige email adres gestuurd. Krijg je geen mail? Controleer dan het e-mailadres en/of de login, check je spam folder of vraag hulp aan je beheerder.",
- "Couldn't send reset email. Please contact your administrator." : "Kon herstel email niet versturen. Neem contact op met je beheerder.",
+ "Couldn't send reset email. Please contact your administrator." : "Kon herstelbericht niet versturen. Neem contact op met je beheerder.",
"Password cannot be changed. Please contact your administrator." : "Het wachtwoord kan niet worden gewijzigd. Neem contact op met je beheerder.",
"New password" : "Nieuw wachtwoord",
"Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "Je bestanden zijn versleuteld. Het is niet mogelijk om je gegevens terug te krijgen als je wachtwoord wordt gereset. Als je niet zeker weer wat je moet doen, neem dan contact op met je beheerder voordat je verdergaat. Wil je echt verder gaan?",
@@ -205,9 +326,30 @@
"Login form is disabled." : "Inlogscherm uitgeschakeld",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Het aanmeldingsformulier van Nextcloud is uitgeschakeld. Gebruik een andere inlogmogelijkheid indien beschikbaar of neem contact op met uw beheerder.",
"More actions" : "Meer acties",
+ "User menu" : "Gebruikersmenu",
+ "You will be identified as {user} by the account owner." : "Je zal door de account eigenaar worden geïdentificeerd als {user}.",
+ "You are currently not identified." : "Je bent momenteel niet geïdentificeerd.",
+ "Set public name" : "Publieke naam instellen",
+ "Change public name" : "Publieke naam veranderen",
+ "Password is too weak" : "Wachtwoord is te zwak",
+ "Password is weak" : "Wachtwoord is zwak",
+ "Password is average" : "Wachtwoord is gemiddeld",
+ "Password is strong" : "Wachtwoord is sterk",
+ "Password is very strong" : "Wachtwoord is zeer sterk",
+ "Password is extremely strong" : "Wachtwoord is enorm sterk",
+ "Unknown password strength" : "Onbekende wachtwoord sterkte",
+ "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "Je data folder en bestanden zijn waarschijnlijk toegankelijk vanaf het internet omdat het <code>.htaccess</code>-bestand niet functioneert.",
+ "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "Informatie voor het juist configureren van uw server, {linkStart}bekijk de documentatie{linkEnd}",
+ "Autoconfig file detected" : "Autoconfig-bestand gevonden",
+ "The setup form below is pre-filled with the values from the config file." : "Het onderstaande formulier is vooraf ingevuld met de waardes van het configuratiebestand.",
"Security warning" : "Beveiligingswaarschuwing",
+ "Create administration account" : "Maak administratieve gebruiker",
+ "Administration account name" : "Administratieve gebruikersnaam",
+ "Administration account password" : "Wachtwoord administratieve gebruiker",
"Storage & database" : "Opslag & database",
"Data folder" : "Gegevensmap",
+ "Database configuration" : "Database configuratie",
+ "Only {firstAndOnlyDatabase} is available." : "Alleen {firstAndOnlyDatabase} is beschikbaar.",
"Install and activate additional PHP modules to choose other database types." : "Installeer en activeer aanvullende PHP modules om andere soorten databases te kiezen.",
"For more details check out the documentation." : "Voor meer informatie word je verwezen naar de documentatie.",
"Performance warning" : "Prestatiewaarschuwing",
@@ -220,6 +362,7 @@
"Database tablespace" : "Database tablespace",
"Please specify the port number along with the host name (e.g., localhost:5432)." : "Geef het poortnummer en servernaam op (bijv. localhost:5432).",
"Database host" : "Databaseserver",
+ "localhost" : "localhost",
"Installing …" : "Installeren …",
"Install" : "Installeren",
"Need help?" : "Hulp nodig?",
@@ -281,9 +424,10 @@
"Admin" : "Beheerder",
"Help" : "Help",
"Access forbidden" : "Toegang verboden",
+ "You are not allowed to access this page." : "Je hebt geen toegang tot deze pagina.",
+ "Back to %s" : "Terug naar %s",
"Page not found" : "Pagina niet gevonden",
"The page could not be found on the server or you may not be allowed to view it." : "Deze pagina kan niet worden gevonden op de server, of je hebt geen toelating om ze te bekijken.",
- "Back to %s" : "Terug naar %s",
"Too many requests" : "Te veel aanvragen",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Er waren te veel aanvragen afkomstig uit uw netwerk. Probeer later opnieuw of contacteer de beheerder als dat niet correct is.",
"Error" : "Fout",
@@ -359,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Deze %s staat momenteel in de onderhoudsstand, dat kan enige tijd duren.",
"This page will refresh itself when the instance is available again." : "Deze pagina wordt ververst als de server weer beschikbaar is.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Neem contact op met je systeembeheerder als deze melding aanhoudt of onverwacht verscheen.",
- "Currently open" : "Momenteel actief",
- "Login with username or email" : "Aanmelden met gebruikersnaam of e-mail",
- "Login with username" : "Aanmelden met gebruikersnaam",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatten, videobellen, schermdelen, online vergaderingen en webconferenties - in de browser en met mobiele apps.",
"You have not added any info yet" : "Je hebt nog geen info toegevoegd",
"{user} has not added any info yet" : "{user} heeft nog geen info toegevoegd",
"Error opening the user status modal, try hard refreshing the page" : "Fout bij het openen van het gebruiker status model, probeer een harde refresh van de pagina",
"Edit Profile" : "Wijzig Profiel",
"The headline and about sections will show up here" : "De koplijn- en oversectie zal hier verschijnen",
- "Error loading message template: {error}" : "Fout bij laden berichtensjabloon: {error}",
"Very weak password" : "Zeer zwak wachtwoord",
"Weak password" : "Zwak wachtwoord",
"So-so password" : "Matig wachtwoord",
diff --git a/core/l10n/oc.js b/core/l10n/oc.js
index 9156d54dfde..ca163eee712 100644
--- a/core/l10n/oc.js
+++ b/core/l10n/oc.js
@@ -35,16 +35,16 @@ OC.L10N.register(
"Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Clicat sul boton seguent per reïnicializar vòstre senhal. S’avètz pas demandat sa reïnicializacion, ignoratz aqueste corrièl.",
"Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Clicat sul ligam seguent per reïnicializar vòstre senhal. S’avètz pas demandat sa reïnicializacion, ignoratz aqueste corrièl.",
"Reset your password" : "Reïnicializatz vòstre senhal",
- "Nextcloud Server" : "Servidor Nextcloud",
- "Some of your link shares have been removed" : "D’unes de vòstres ligams de partiment foguèron tirats",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "A causa d’una avaria de seguretat nos calguèt tirar certans de vòstres ligams de partiment. Vejatz lo ligam per mai d’informacions.",
- "Learn more ↗" : "Ne saber mai ↗",
- "Preparing update" : "Preparacion de la mesa a jorn",
"[%d / %d]: %s" : "[%d / %d] : %s",
"Repair step:" : "Etapa de reparacion :",
"Repair info:" : "Info de reparacion :",
"Repair warning:" : "Avertiment de reparacion :",
"Repair error:" : "Error de reparacion :",
+ "Nextcloud Server" : "Servidor Nextcloud",
+ "Some of your link shares have been removed" : "D’unes de vòstres ligams de partiment foguèron tirats",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "A causa d’una avaria de seguretat nos calguèt tirar certans de vòstres ligams de partiment. Vejatz lo ligam per mai d’informacions.",
+ "Learn more ↗" : "Ne saber mai ↗",
+ "Preparing update" : "Preparacion de la mesa a jorn",
"Turned on maintenance mode" : "Mòde manteniment aviat",
"Turned off maintenance mode" : "Mòde manteniment atudat",
"Maintenance mode is kept active" : "Lo mòde manteniment ten d’èsser actiu",
@@ -201,11 +201,12 @@ OC.L10N.register(
"Collaborative tags" : "Etiquetas collaborativas",
"No tags found" : "Cap d’etiqueta pas trobada",
"Personal" : "Personal",
+ "Accounts" : "Accounts",
"Admin" : "Admin",
"Help" : "Ajuda",
"Access forbidden" : "Accès defendut",
- "Page not found" : "Pagina pas trobada",
"Back to %s" : "Tornar a %s",
+ "Page not found" : "Pagina pas trobada",
"Too many requests" : "Tròp de requèstas",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "I a agut tròp de requèstas a partir de vòstre ret. Tornatz ensajar mai tard o contactatz vòstre administrator s’aquò es una error.",
"Error" : "Error",
@@ -273,11 +274,7 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "L’instància %s es actualament en mòde manteniment, pòt trigar.",
"This page will refresh itself when the instance is available again." : "Aquesta pagina s’actualizarà soleta quand l’instància serà disponibla de nòu.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contactatz l’administrator sistèma s’aqueste messatge ten d’aparéisser o apareis sens rason.",
- "Currently open" : "Actualament dobèrta",
- "Login with username or email" : "Connexion amb nom d’utilizaire o email",
- "Login with username" : "Connexion amb nom d’utilizaire",
"Edit Profile" : "Modificar perfil",
- "Error loading message template: {error}" : "Error de cargament del modèl de messatge : {error}",
"Very weak password" : "Senhal plan feble",
"Weak password" : "Senhal feble",
"So-so password" : "Senhal mejan",
diff --git a/core/l10n/oc.json b/core/l10n/oc.json
index d0a7928dbc9..43d86b7c2f8 100644
--- a/core/l10n/oc.json
+++ b/core/l10n/oc.json
@@ -33,16 +33,16 @@
"Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Clicat sul boton seguent per reïnicializar vòstre senhal. S’avètz pas demandat sa reïnicializacion, ignoratz aqueste corrièl.",
"Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Clicat sul ligam seguent per reïnicializar vòstre senhal. S’avètz pas demandat sa reïnicializacion, ignoratz aqueste corrièl.",
"Reset your password" : "Reïnicializatz vòstre senhal",
- "Nextcloud Server" : "Servidor Nextcloud",
- "Some of your link shares have been removed" : "D’unes de vòstres ligams de partiment foguèron tirats",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "A causa d’una avaria de seguretat nos calguèt tirar certans de vòstres ligams de partiment. Vejatz lo ligam per mai d’informacions.",
- "Learn more ↗" : "Ne saber mai ↗",
- "Preparing update" : "Preparacion de la mesa a jorn",
"[%d / %d]: %s" : "[%d / %d] : %s",
"Repair step:" : "Etapa de reparacion :",
"Repair info:" : "Info de reparacion :",
"Repair warning:" : "Avertiment de reparacion :",
"Repair error:" : "Error de reparacion :",
+ "Nextcloud Server" : "Servidor Nextcloud",
+ "Some of your link shares have been removed" : "D’unes de vòstres ligams de partiment foguèron tirats",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "A causa d’una avaria de seguretat nos calguèt tirar certans de vòstres ligams de partiment. Vejatz lo ligam per mai d’informacions.",
+ "Learn more ↗" : "Ne saber mai ↗",
+ "Preparing update" : "Preparacion de la mesa a jorn",
"Turned on maintenance mode" : "Mòde manteniment aviat",
"Turned off maintenance mode" : "Mòde manteniment atudat",
"Maintenance mode is kept active" : "Lo mòde manteniment ten d’èsser actiu",
@@ -199,11 +199,12 @@
"Collaborative tags" : "Etiquetas collaborativas",
"No tags found" : "Cap d’etiqueta pas trobada",
"Personal" : "Personal",
+ "Accounts" : "Accounts",
"Admin" : "Admin",
"Help" : "Ajuda",
"Access forbidden" : "Accès defendut",
- "Page not found" : "Pagina pas trobada",
"Back to %s" : "Tornar a %s",
+ "Page not found" : "Pagina pas trobada",
"Too many requests" : "Tròp de requèstas",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "I a agut tròp de requèstas a partir de vòstre ret. Tornatz ensajar mai tard o contactatz vòstre administrator s’aquò es una error.",
"Error" : "Error",
@@ -271,11 +272,7 @@
"This %s instance is currently in maintenance mode, which may take a while." : "L’instància %s es actualament en mòde manteniment, pòt trigar.",
"This page will refresh itself when the instance is available again." : "Aquesta pagina s’actualizarà soleta quand l’instància serà disponibla de nòu.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contactatz l’administrator sistèma s’aqueste messatge ten d’aparéisser o apareis sens rason.",
- "Currently open" : "Actualament dobèrta",
- "Login with username or email" : "Connexion amb nom d’utilizaire o email",
- "Login with username" : "Connexion amb nom d’utilizaire",
"Edit Profile" : "Modificar perfil",
- "Error loading message template: {error}" : "Error de cargament del modèl de messatge : {error}",
"Very weak password" : "Senhal plan feble",
"Weak password" : "Senhal feble",
"So-so password" : "Senhal mejan",
diff --git a/core/l10n/pl.js b/core/l10n/pl.js
index 93842618b80..2ba9ef6b558 100644
--- a/core/l10n/pl.js
+++ b/core/l10n/pl.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Nie znaleziono zadania",
"Internal error" : "Błąd wewnętrzny",
"Not found" : "Nie znaleziono",
+ "Node is locked" : "Węzeł jest zablokowany",
"Bad request" : "Złe żądanie",
"Requested task type does not exist" : "Żądany typ zadania nie istnieje",
"Necessary language model provider is not available" : "Niezbędny dostawca modelu językowego nie jest dostępny",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Brak dostępnego dostawcy tłumaczenia",
"Could not detect language" : "Nie można wykryć języka",
"Unable to translate" : "Nie można przetłumaczyć",
+ "[%d / %d]: %s" : "[%d/%d]: %s",
+ "Repair step:" : "Krok naprawy:",
+ "Repair info:" : "Informacja o naprawie: ",
+ "Repair warning:" : "Ostrzeżenie naprawy:",
+ "Repair error:" : "Błąd naprawy: ",
"Nextcloud Server" : "Serwer Nextcloud",
"Some of your link shares have been removed" : "Niektóre udostępnienia linków zostały usunięte",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Ze względu na błąd bezpieczeństwa musieliśmy usunąć część Twoich udostępnień linków. Zobacz link, aby uzyskać więcej informacji.",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Wprowadź klucz subskrypcji w aplikacji pomocy technicznej, aby zwiększyć limit kont. Zapewnia to również wszystkie dodatkowe korzyści oferowane przez Nextcloud dla firm i jest wysoce zalecane dla działania w firmach.",
"Learn more ↗" : "Dowiedz się więcej ↗",
"Preparing update" : "Przygotowywanie aktualizacji",
- "[%d / %d]: %s" : "[%d/%d]: %s",
- "Repair step:" : "Krok naprawy:",
- "Repair info:" : "Informacja o naprawie: ",
- "Repair warning:" : "Ostrzeżenie naprawy:",
- "Repair error:" : "Błąd naprawy: ",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Użyj wiersza poleceń do aktualizacji, ponieważ aktualizacja przez przeglądarkę jest wyłączona w Twoim pliku config.php.",
"Turned on maintenance mode" : "Włączono tryb konserwacji",
"Turned off maintenance mode" : "Wyłączono tryb konserwacji",
@@ -80,8 +81,125 @@ OC.L10N.register(
"%s (incompatible)" : "%s (niekompatybilny)",
"The following apps have been disabled: %s" : "Następujące aplikacje zostały wyłączone: %s",
"Already up to date" : "Już zaktualizowano",
+ "Windows Command Script" : "Skrypt poleceń Windows",
+ "Electronic book document" : "Dokument książki elektronicznej",
+ "TrueType Font Collection" : "Kolekcja czcionek TrueType",
+ "Web Open Font Format" : "Format czcionki Web Open (WOFF)",
+ "GPX geographic data" : "Dane geograficzne GPX",
+ "Gzip archive" : "Archiwum Gzip",
+ "Adobe Illustrator document" : "Dokument Adobe Illustrator",
+ "Java source code" : "Kod źródłowy Java",
+ "JavaScript source code" : "Kod źródłowy JavaScript",
+ "JSON document" : "Dokument JOSN",
+ "Microsoft Access database" : "Baza danych Microsoft Access",
+ "Microsoft OneNote document" : "Dokument Microsoft OneNote",
+ "Microsoft Word document" : "Dokument Microsoft Word",
"Unknown" : "Nieznany",
+ "PDF document" : "Dokument PDF",
+ "PostScript document" : "Dokument PostScript",
+ "RSS summary" : "Podsumowanie RSS",
+ "Android package" : "Pakiet Android (APK)",
+ "KML geographic data" : "Dane geograficzne KML",
+ "KML geographic compressed data" : "Skompresowane dane geograficzne KML",
+ "Lotus Word Pro document" : "Dokument Lotus Word Pro",
+ "Excel spreadsheet" : "Arkusz kalkulacyjny Excel",
+ "Excel add-in" : "Wtyczka Excel",
+ "Excel 2007 binary spreadsheet" : "Binarny arkusz kalkulacyjny Excel 2007",
+ "Excel spreadsheet template" : "Szablon arkusza kalkulacyjnego Excel",
+ "Outlook Message" : "Wiadomość Outlook",
+ "PowerPoint presentation" : "Prezentacja PowerPoint",
+ "PowerPoint add-in" : "Wtyczka PowerPoint",
+ "PowerPoint presentation template" : "Szablon prezentacji PowerPoint",
+ "Word document" : "Dokument Word",
+ "ODF formula" : "Formuła ODF",
+ "ODG drawing" : "Rysunek ODG",
+ "ODG drawing (Flat XML)" : "Rysunek ODG (płaski XML)",
+ "ODG template" : "Szablon ODG",
+ "ODP presentation" : "Prezentacja ODP",
+ "ODP presentation (Flat XML)" : "Prezentacja ODP (płaski XML)",
+ "ODP template" : "Szablon ODT",
+ "ODS spreadsheet" : "Arkusz kalkulacyjny ODS",
+ "ODS spreadsheet (Flat XML)" : "Arkusz kalkulacyjny ODS (płaski XML)",
+ "ODS template" : "Szablon ODS",
+ "ODT document" : "Dokument ODT",
+ "ODT document (Flat XML)" : "Dokument ODT (płaski XML)",
+ "ODT template" : "Szablon ODT",
+ "PowerPoint 2007 presentation" : "Prezentacja PowerPoint 2007",
+ "PowerPoint 2007 show" : "Pokaz PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Szablon prezentacji PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Arkusz kalkulacyjny Excel 2007",
+ "Excel 2007 spreadsheet template" : "Szablon arkusza kalkulacyjnego Excel 2007",
+ "Word 2007 document" : "Dokument Word 2007",
+ "Word 2007 document template" : "Szablon dokumentu Word 2007",
+ "Microsoft Visio document" : "Dokument Microsoft Visio",
+ "WordPerfect document" : "Dokument WordPerfect ",
+ "7-zip archive" : "Archiwum 7-zip",
+ "Blender scene" : "Scena Blender",
+ "Bzip2 archive" : "Archiwum Bzip2",
+ "Debian package" : "Pakiet Debian (DEB)",
+ "FictionBook document" : "Dokument FictionBook",
+ "Unknown font" : "Nieznana czcionka",
+ "Krita document" : "Dokument Krita",
+ "Mobipocket e-book" : "E-book Mobipocket ",
+ "Windows Installer package" : "Pakiet instalacyjny Windows (MSI)",
+ "Perl script" : "Skrypt Perl",
+ "PHP script" : "Skrypt PHP",
+ "Tar archive" : "Archiwum Tar",
+ "XML document" : "Dokument XML",
+ "YAML document" : "Dokument YAML",
+ "Zip archive" : "Archiwum ZIP",
+ "Zstandard archive" : "Archiwum Zstandard",
+ "AAC audio" : "Dźwięk AAC",
+ "FLAC audio" : "Dźwięk FLAC",
+ "MPEG-4 audio" : "Dźwięk MPEG-4",
+ "MP3 audio" : "Dźwięk MP3",
+ "Ogg audio" : "Dźwięk Ogg",
+ "RIFF/WAVe standard Audio" : "Dźwięk w standardzie RIFF/WAVe",
+ "WebM audio" : "Dźwięk WebM",
+ "MP3 ShoutCast playlist" : "Playlista MP3 ShoutCast",
+ "Windows BMP image" : "Obraz Windows BMP",
+ "Better Portable Graphics image" : "Obraz Better Portable Graphics (BPG)",
+ "EMF image" : "Obraz EMF",
+ "GIF image" : "Obraz GIF",
+ "HEIC image" : "Obraz HEIC ",
+ "HEIF image" : "Obraz HEIF ",
+ "JPEG-2000 JP2 image" : "Obraz JPEG-2000 JP2",
+ "JPEG image" : "Obraz JPEG",
"PNG image" : "obraz PNG",
+ "SVG image" : "Obraz SVG",
+ "Truevision Targa image" : "Obraz Truevision Targa (TGA)",
+ "TIFF image" : "Obraz TIFF",
+ "WebP image" : "Obraz WebP",
+ "Digital raw image" : "Cyfrowy obraz w formacie RAW",
+ "Windows Icon" : "Ikona Windows",
+ "Email message" : "Wiadomość email",
+ "VCS/ICS calendar" : "Kalendarz VCS/ICS",
+ "CSS stylesheet" : "Arkusz stylów CSS",
+ "CSV document" : "Dokument CSV",
+ "HTML document" : "Dokument HTML",
+ "Markdown document" : "Dokument Markdown",
+ "Org-mode file" : "Plik w formacie Org-mode",
+ "Plain text document" : "Dokument tekstowy (zwykły tekst)",
+ "Rich Text document" : "Dokument Rich Text (RTF)",
+ "Electronic business card" : "Elektroniczna wizytówka",
+ "C++ source code" : "Kod źródłowy C++",
+ "LDIF address book" : "Książka adresowa LDIF",
+ "NFO document" : "Dokument NFO",
+ "PHP source" : "Źródło PHP",
+ "Python script" : "Skrypt Python",
+ "ReStructuredText document" : "Dokument ReStructuredText",
+ "3GPP multimedia file" : "Plik multimedialny 3GPP",
+ "MPEG video" : "Wideo MPEG",
+ "DV video" : "Wideo DV",
+ "MPEG-2 transport stream" : "Strumień transportowy MPEG-2",
+ "MPEG-4 video" : "Wideo MPEG-4",
+ "Ogg video" : "Wideo Ogg",
+ "QuickTime video" : "Wideo QuickTime",
+ "WebM video" : "Wideo WebM",
+ "Flash video" : "Wideo Flash",
+ "Matroska video" : "Wideo Matroska",
+ "Windows Media video" : "Wideo Windows Media",
+ "AVI video" : "Wideo AVI",
"Error occurred while checking server setup" : "Wystąpił błąd podczas sprawdzania konfiguracji serwera",
"For more details see the {linkstart}documentation ↗{linkend}." : "Więcej informacji można znaleźć w {linkstart}dokumentacji ↗{linkend}.",
"unknown text" : "nieznany tekst",
@@ -210,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "Formularz logowania jest wyłączony.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Formularz logowania Nextcloud jest wyłączony. Użyj innej opcji logowania, jeśli jest dostępna, lub skontaktuj się z administracją.",
"More actions" : "Więcej akcji",
+ "User menu" : "Menu użytkownika",
+ "You will be identified as {user} by the account owner." : "Zostaniesz zidentyfikowany jako {user} przez właściciela konta.",
+ "You are currently not identified." : "Obecnie nie jesteś zidentyfikowany.",
+ "Set public name" : "Ustaw nazwę publiczną",
+ "Change public name" : "Zmień nazwę publiczną",
"Password is too weak" : "Hasło jest za słabe",
"Password is weak" : "Hasło jest słabe",
"Password is average" : "Hasło jest przeciętne",
@@ -303,9 +426,10 @@ OC.L10N.register(
"Admin" : "Administrator",
"Help" : "Pomoc",
"Access forbidden" : "Dostęp zabroniony",
+ "You are not allowed to access this page." : "Nie masz uprawnień do tej strony.",
+ "Back to %s" : "Powrót do %s",
"Page not found" : "Nie znaleziono strony",
"The page could not be found on the server or you may not be allowed to view it." : "Strona nie została znaleziona na serwerze lub możesz nie mieć uprawnień do jej przeglądania.",
- "Back to %s" : "Powrót do %s",
"Too many requests" : "Zbyt wiele żądań",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Zbyt wiele żądań z Twojej sieci. Spróbuj ponownie później lub skontaktuj się z administratorem, jeśli jest to błąd.",
"Error" : "Błąd",
@@ -381,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Ta instancja %s jest obecnie w trybie konserwacji, co może chwilę potrwać.",
"This page will refresh itself when the instance is available again." : "Strona odświeży się, gdy instancja będzie ponownie dostępna.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Skontaktuj się z administratorem systemu, jeśli ten komunikat będzie się powtarzał lub pojawił się nieoczekiwanie.",
- "Currently open" : "Obecnie otwarte",
- "Login with username or email" : "Zaloguj się za pomocą nazwy lub e-mail",
- "Login with username" : "Zaloguj się za pomocą nazwy użytkownika",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Czat, rozmowy wideo, udostępnianie ekranu, spotkania online i konferencje internetowe - w przeglądarce i aplikacjach mobilnych.",
"You have not added any info yet" : "Nie dodałeś jeszcze żadnych informacji",
"{user} has not added any info yet" : "{user} nie dodał jeszcze żadnych informacji",
"Error opening the user status modal, try hard refreshing the page" : "Błąd podczas otwierania modalnego statusu użytkownika, spróbuj bardziej odświeżyć stronę",
"Edit Profile" : "Edytuj profil",
"The headline and about sections will show up here" : "Tutaj pojawi się nagłówek i informacje o sekcjach",
- "Error loading message template: {error}" : "Błąd podczas ładowania szablonu wiadomości: {error}",
"Very weak password" : "Bardzo słabe hasło",
"Weak password" : "Słabe hasło",
"So-so password" : "Mało skomplikowane hasło",
diff --git a/core/l10n/pl.json b/core/l10n/pl.json
index 0cbc823ee8d..25e93697259 100644
--- a/core/l10n/pl.json
+++ b/core/l10n/pl.json
@@ -42,6 +42,7 @@
"Task not found" : "Nie znaleziono zadania",
"Internal error" : "Błąd wewnętrzny",
"Not found" : "Nie znaleziono",
+ "Node is locked" : "Węzeł jest zablokowany",
"Bad request" : "Złe żądanie",
"Requested task type does not exist" : "Żądany typ zadania nie istnieje",
"Necessary language model provider is not available" : "Niezbędny dostawca modelu językowego nie jest dostępny",
@@ -50,6 +51,11 @@
"No translation provider available" : "Brak dostępnego dostawcy tłumaczenia",
"Could not detect language" : "Nie można wykryć języka",
"Unable to translate" : "Nie można przetłumaczyć",
+ "[%d / %d]: %s" : "[%d/%d]: %s",
+ "Repair step:" : "Krok naprawy:",
+ "Repair info:" : "Informacja o naprawie: ",
+ "Repair warning:" : "Ostrzeżenie naprawy:",
+ "Repair error:" : "Błąd naprawy: ",
"Nextcloud Server" : "Serwer Nextcloud",
"Some of your link shares have been removed" : "Niektóre udostępnienia linków zostały usunięte",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Ze względu na błąd bezpieczeństwa musieliśmy usunąć część Twoich udostępnień linków. Zobacz link, aby uzyskać więcej informacji.",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Wprowadź klucz subskrypcji w aplikacji pomocy technicznej, aby zwiększyć limit kont. Zapewnia to również wszystkie dodatkowe korzyści oferowane przez Nextcloud dla firm i jest wysoce zalecane dla działania w firmach.",
"Learn more ↗" : "Dowiedz się więcej ↗",
"Preparing update" : "Przygotowywanie aktualizacji",
- "[%d / %d]: %s" : "[%d/%d]: %s",
- "Repair step:" : "Krok naprawy:",
- "Repair info:" : "Informacja o naprawie: ",
- "Repair warning:" : "Ostrzeżenie naprawy:",
- "Repair error:" : "Błąd naprawy: ",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Użyj wiersza poleceń do aktualizacji, ponieważ aktualizacja przez przeglądarkę jest wyłączona w Twoim pliku config.php.",
"Turned on maintenance mode" : "Włączono tryb konserwacji",
"Turned off maintenance mode" : "Wyłączono tryb konserwacji",
@@ -78,8 +79,125 @@
"%s (incompatible)" : "%s (niekompatybilny)",
"The following apps have been disabled: %s" : "Następujące aplikacje zostały wyłączone: %s",
"Already up to date" : "Już zaktualizowano",
+ "Windows Command Script" : "Skrypt poleceń Windows",
+ "Electronic book document" : "Dokument książki elektronicznej",
+ "TrueType Font Collection" : "Kolekcja czcionek TrueType",
+ "Web Open Font Format" : "Format czcionki Web Open (WOFF)",
+ "GPX geographic data" : "Dane geograficzne GPX",
+ "Gzip archive" : "Archiwum Gzip",
+ "Adobe Illustrator document" : "Dokument Adobe Illustrator",
+ "Java source code" : "Kod źródłowy Java",
+ "JavaScript source code" : "Kod źródłowy JavaScript",
+ "JSON document" : "Dokument JOSN",
+ "Microsoft Access database" : "Baza danych Microsoft Access",
+ "Microsoft OneNote document" : "Dokument Microsoft OneNote",
+ "Microsoft Word document" : "Dokument Microsoft Word",
"Unknown" : "Nieznany",
+ "PDF document" : "Dokument PDF",
+ "PostScript document" : "Dokument PostScript",
+ "RSS summary" : "Podsumowanie RSS",
+ "Android package" : "Pakiet Android (APK)",
+ "KML geographic data" : "Dane geograficzne KML",
+ "KML geographic compressed data" : "Skompresowane dane geograficzne KML",
+ "Lotus Word Pro document" : "Dokument Lotus Word Pro",
+ "Excel spreadsheet" : "Arkusz kalkulacyjny Excel",
+ "Excel add-in" : "Wtyczka Excel",
+ "Excel 2007 binary spreadsheet" : "Binarny arkusz kalkulacyjny Excel 2007",
+ "Excel spreadsheet template" : "Szablon arkusza kalkulacyjnego Excel",
+ "Outlook Message" : "Wiadomość Outlook",
+ "PowerPoint presentation" : "Prezentacja PowerPoint",
+ "PowerPoint add-in" : "Wtyczka PowerPoint",
+ "PowerPoint presentation template" : "Szablon prezentacji PowerPoint",
+ "Word document" : "Dokument Word",
+ "ODF formula" : "Formuła ODF",
+ "ODG drawing" : "Rysunek ODG",
+ "ODG drawing (Flat XML)" : "Rysunek ODG (płaski XML)",
+ "ODG template" : "Szablon ODG",
+ "ODP presentation" : "Prezentacja ODP",
+ "ODP presentation (Flat XML)" : "Prezentacja ODP (płaski XML)",
+ "ODP template" : "Szablon ODT",
+ "ODS spreadsheet" : "Arkusz kalkulacyjny ODS",
+ "ODS spreadsheet (Flat XML)" : "Arkusz kalkulacyjny ODS (płaski XML)",
+ "ODS template" : "Szablon ODS",
+ "ODT document" : "Dokument ODT",
+ "ODT document (Flat XML)" : "Dokument ODT (płaski XML)",
+ "ODT template" : "Szablon ODT",
+ "PowerPoint 2007 presentation" : "Prezentacja PowerPoint 2007",
+ "PowerPoint 2007 show" : "Pokaz PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Szablon prezentacji PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Arkusz kalkulacyjny Excel 2007",
+ "Excel 2007 spreadsheet template" : "Szablon arkusza kalkulacyjnego Excel 2007",
+ "Word 2007 document" : "Dokument Word 2007",
+ "Word 2007 document template" : "Szablon dokumentu Word 2007",
+ "Microsoft Visio document" : "Dokument Microsoft Visio",
+ "WordPerfect document" : "Dokument WordPerfect ",
+ "7-zip archive" : "Archiwum 7-zip",
+ "Blender scene" : "Scena Blender",
+ "Bzip2 archive" : "Archiwum Bzip2",
+ "Debian package" : "Pakiet Debian (DEB)",
+ "FictionBook document" : "Dokument FictionBook",
+ "Unknown font" : "Nieznana czcionka",
+ "Krita document" : "Dokument Krita",
+ "Mobipocket e-book" : "E-book Mobipocket ",
+ "Windows Installer package" : "Pakiet instalacyjny Windows (MSI)",
+ "Perl script" : "Skrypt Perl",
+ "PHP script" : "Skrypt PHP",
+ "Tar archive" : "Archiwum Tar",
+ "XML document" : "Dokument XML",
+ "YAML document" : "Dokument YAML",
+ "Zip archive" : "Archiwum ZIP",
+ "Zstandard archive" : "Archiwum Zstandard",
+ "AAC audio" : "Dźwięk AAC",
+ "FLAC audio" : "Dźwięk FLAC",
+ "MPEG-4 audio" : "Dźwięk MPEG-4",
+ "MP3 audio" : "Dźwięk MP3",
+ "Ogg audio" : "Dźwięk Ogg",
+ "RIFF/WAVe standard Audio" : "Dźwięk w standardzie RIFF/WAVe",
+ "WebM audio" : "Dźwięk WebM",
+ "MP3 ShoutCast playlist" : "Playlista MP3 ShoutCast",
+ "Windows BMP image" : "Obraz Windows BMP",
+ "Better Portable Graphics image" : "Obraz Better Portable Graphics (BPG)",
+ "EMF image" : "Obraz EMF",
+ "GIF image" : "Obraz GIF",
+ "HEIC image" : "Obraz HEIC ",
+ "HEIF image" : "Obraz HEIF ",
+ "JPEG-2000 JP2 image" : "Obraz JPEG-2000 JP2",
+ "JPEG image" : "Obraz JPEG",
"PNG image" : "obraz PNG",
+ "SVG image" : "Obraz SVG",
+ "Truevision Targa image" : "Obraz Truevision Targa (TGA)",
+ "TIFF image" : "Obraz TIFF",
+ "WebP image" : "Obraz WebP",
+ "Digital raw image" : "Cyfrowy obraz w formacie RAW",
+ "Windows Icon" : "Ikona Windows",
+ "Email message" : "Wiadomość email",
+ "VCS/ICS calendar" : "Kalendarz VCS/ICS",
+ "CSS stylesheet" : "Arkusz stylów CSS",
+ "CSV document" : "Dokument CSV",
+ "HTML document" : "Dokument HTML",
+ "Markdown document" : "Dokument Markdown",
+ "Org-mode file" : "Plik w formacie Org-mode",
+ "Plain text document" : "Dokument tekstowy (zwykły tekst)",
+ "Rich Text document" : "Dokument Rich Text (RTF)",
+ "Electronic business card" : "Elektroniczna wizytówka",
+ "C++ source code" : "Kod źródłowy C++",
+ "LDIF address book" : "Książka adresowa LDIF",
+ "NFO document" : "Dokument NFO",
+ "PHP source" : "Źródło PHP",
+ "Python script" : "Skrypt Python",
+ "ReStructuredText document" : "Dokument ReStructuredText",
+ "3GPP multimedia file" : "Plik multimedialny 3GPP",
+ "MPEG video" : "Wideo MPEG",
+ "DV video" : "Wideo DV",
+ "MPEG-2 transport stream" : "Strumień transportowy MPEG-2",
+ "MPEG-4 video" : "Wideo MPEG-4",
+ "Ogg video" : "Wideo Ogg",
+ "QuickTime video" : "Wideo QuickTime",
+ "WebM video" : "Wideo WebM",
+ "Flash video" : "Wideo Flash",
+ "Matroska video" : "Wideo Matroska",
+ "Windows Media video" : "Wideo Windows Media",
+ "AVI video" : "Wideo AVI",
"Error occurred while checking server setup" : "Wystąpił błąd podczas sprawdzania konfiguracji serwera",
"For more details see the {linkstart}documentation ↗{linkend}." : "Więcej informacji można znaleźć w {linkstart}dokumentacji ↗{linkend}.",
"unknown text" : "nieznany tekst",
@@ -208,6 +326,11 @@
"Login form is disabled." : "Formularz logowania jest wyłączony.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Formularz logowania Nextcloud jest wyłączony. Użyj innej opcji logowania, jeśli jest dostępna, lub skontaktuj się z administracją.",
"More actions" : "Więcej akcji",
+ "User menu" : "Menu użytkownika",
+ "You will be identified as {user} by the account owner." : "Zostaniesz zidentyfikowany jako {user} przez właściciela konta.",
+ "You are currently not identified." : "Obecnie nie jesteś zidentyfikowany.",
+ "Set public name" : "Ustaw nazwę publiczną",
+ "Change public name" : "Zmień nazwę publiczną",
"Password is too weak" : "Hasło jest za słabe",
"Password is weak" : "Hasło jest słabe",
"Password is average" : "Hasło jest przeciętne",
@@ -301,9 +424,10 @@
"Admin" : "Administrator",
"Help" : "Pomoc",
"Access forbidden" : "Dostęp zabroniony",
+ "You are not allowed to access this page." : "Nie masz uprawnień do tej strony.",
+ "Back to %s" : "Powrót do %s",
"Page not found" : "Nie znaleziono strony",
"The page could not be found on the server or you may not be allowed to view it." : "Strona nie została znaleziona na serwerze lub możesz nie mieć uprawnień do jej przeglądania.",
- "Back to %s" : "Powrót do %s",
"Too many requests" : "Zbyt wiele żądań",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Zbyt wiele żądań z Twojej sieci. Spróbuj ponownie później lub skontaktuj się z administratorem, jeśli jest to błąd.",
"Error" : "Błąd",
@@ -379,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Ta instancja %s jest obecnie w trybie konserwacji, co może chwilę potrwać.",
"This page will refresh itself when the instance is available again." : "Strona odświeży się, gdy instancja będzie ponownie dostępna.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Skontaktuj się z administratorem systemu, jeśli ten komunikat będzie się powtarzał lub pojawił się nieoczekiwanie.",
- "Currently open" : "Obecnie otwarte",
- "Login with username or email" : "Zaloguj się za pomocą nazwy lub e-mail",
- "Login with username" : "Zaloguj się za pomocą nazwy użytkownika",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Czat, rozmowy wideo, udostępnianie ekranu, spotkania online i konferencje internetowe - w przeglądarce i aplikacjach mobilnych.",
"You have not added any info yet" : "Nie dodałeś jeszcze żadnych informacji",
"{user} has not added any info yet" : "{user} nie dodał jeszcze żadnych informacji",
"Error opening the user status modal, try hard refreshing the page" : "Błąd podczas otwierania modalnego statusu użytkownika, spróbuj bardziej odświeżyć stronę",
"Edit Profile" : "Edytuj profil",
"The headline and about sections will show up here" : "Tutaj pojawi się nagłówek i informacje o sekcjach",
- "Error loading message template: {error}" : "Błąd podczas ładowania szablonu wiadomości: {error}",
"Very weak password" : "Bardzo słabe hasło",
"Weak password" : "Słabe hasło",
"So-so password" : "Mało skomplikowane hasło",
diff --git a/core/l10n/pt_BR.js b/core/l10n/pt_BR.js
index 9f7d646c50d..c33a0a9c912 100644
--- a/core/l10n/pt_BR.js
+++ b/core/l10n/pt_BR.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Tarefa não encontrada",
"Internal error" : "Erro interno",
"Not found" : "Não encontrado",
+ "Node is locked" : "O nó está bloqueado",
"Bad request" : "Requisição inválida",
"Requested task type does not exist" : "O tipo de tarefa solicitado não existe",
"Necessary language model provider is not available" : "O provedor de modelo de linguagem necessário não está disponível",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Nenhum provedor de tradução disponível",
"Could not detect language" : "Não foi possível detectar o idioma",
"Unable to translate" : "Incapaz de traduzir",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Etapa do reparo:",
+ "Repair info:" : "Informação do reparo:",
+ "Repair warning:" : "Aviso do reparo:",
+ "Repair error:" : "Erro do reparo:",
"Nextcloud Server" : "Servidor Nextcloud",
"Some of your link shares have been removed" : "Alguns dos seus compartilhamentos por link foram removidos",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Devido a um bug de segurança, tivemos que remover alguns dos seus compartilhamentos por link. Por favor, veja o link para mais informações.",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Digite sua chave de assinatura no aplicativo de suporte para aumentar o limite de contas. Isso também concede a você todos os benefícios adicionais que o Nextcloud Empresarial oferece e é altamente recomendado para operações em empresas.",
"Learn more ↗" : "Saiba mais ↗",
"Preparing update" : "Preparando a atualização",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Etapa do reparo:",
- "Repair info:" : "Informação do reparo:",
- "Repair warning:" : "Aviso do reparo:",
- "Repair error:" : "Erro do reparo:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Por favor, use o atualizador de linha de comando porque a atualização via navegador está desativada em seu config.php.",
"Turned on maintenance mode" : "Ativar o modo de manutenção",
"Turned off maintenance mode" : "Desativar o modo de manutenção",
@@ -208,7 +209,7 @@ OC.L10N.register(
"Hello {name}" : "Olá {name}",
"<strong>These are your search results<script>alert(1)</script></strong>" : "<strong>Estes são os resultados de sua pesquisa<script>alert(1)</script></strong>",
"new" : "novo",
- "_download %n file_::_download %n files_" : ["baixar %n arquivo","baixar %n arquivos","baixar %n arquivos"],
+ "_download %n file_::_download %n files_" : ["baixar %n arquivo","baixar %n de arquivos","baixar %n arquivos"],
"The update is in progress, leaving this page might interrupt the process in some environments." : "A atualização está em andamento. Em alguns ambientes, se sair desta página o processo poderá ser interrompido.",
"Update to {version}" : "Atualizar para {version}",
"An error occurred." : "Ocorreu um erro.",
@@ -216,11 +217,11 @@ OC.L10N.register(
"The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "A atualização não foi realizada com sucesso. Para mais informações <a href=\"{url}\">verifique nosso post no fórum</a> que abrange esta questão.",
"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "A atualização não foi realizada com sucesso. Por favor, informe este problema para  a <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">comunidade Nextcloud</a>.",
"Continue to {productName}" : "Continuar para {productName}",
- "_The update was successful. Redirecting you to {productName} in %n second._::_The update was successful. Redirecting you to {productName} in %n seconds._" : ["A atualização foi bem-sucedida. Redirecionando você à {productName} em %n segundo.","A atualização foi bem-sucedida. Redirecionando você para {productName} em %n segundos.","A atualização foi bem-sucedida. Redirecionando você para {productName} em %n segundos."],
+ "_The update was successful. Redirecting you to {productName} in %n second._::_The update was successful. Redirecting you to {productName} in %n seconds._" : ["A atualização foi bem-sucedida. Redirecionando você à {productName} em %n segundo.","A atualização foi bem-sucedida. Redirecionando você para {productName} em %n de segundos.","A atualização foi bem-sucedida. Redirecionando você para {productName} em %n segundos."],
"Applications menu" : "Menu de aplicativos",
"Apps" : "Aplicativos",
"More apps" : "Mais aplicativos",
- "_{count} notification_::_{count} notifications_" : ["{count} notificação","{count} notificações","{count} notificações"],
+ "_{count} notification_::_{count} notifications_" : ["{count} notificação","{count} de notificações","{count} notificações"],
"No" : "Não",
"Yes" : "Sim",
"The remote URL must include the user." : "A URL remota deve incluir o usuário.",
@@ -316,7 +317,7 @@ OC.L10N.register(
"Search" : "Pesquisar",
"No results for {query}" : "Sem resultados para {query}",
"Press Enter to start searching" : "Pressione Enter para iniciar a pesquisa",
- "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Digite {minSearchLength} caractere ou mais para pesquisar","Digite {minSearchLength} caracteres ou mais para pesquisar","Digite {minSearchLength} caracteres ou mais para pesquisar"],
+ "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Digite {minSearchLength} caractere ou mais para pesquisar","Digite {minSearchLength} de caracteres ou mais para pesquisar","Digite {minSearchLength} caracteres ou mais para pesquisar"],
"An error occurred while searching for {type}" : "Ocorreu um erro ao pesquisar por {type}",
"Search starts once you start typing and results may be reached with the arrow keys" : "A pesquisa iniciará assim que você começar a digitar e você pode navegar nos resultados com as teclas de seta",
"Search for {name} only" : "Pesquisar somente por {name}",
@@ -327,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "O formulário de login está desativado.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "O formulário de login do Nextcloud está desabilitado. Use outra opção de login, se disponível, ou entre em contato com sua administração.",
"More actions" : "Mais ações",
+ "User menu" : "Menu do usuário",
+ "You will be identified as {user} by the account owner." : "Você será identificado como {user} pelo proprietário da conta.",
+ "You are currently not identified." : "No momento, você não está identificado.",
+ "Set public name" : "Definir nome público",
+ "Change public name" : "Mudar nome público",
"Password is too weak" : "A senha é muito fraca",
"Password is weak" : "A senha é fraca",
"Password is average" : "A senha é média",
@@ -377,7 +383,7 @@ OC.L10N.register(
"Move" : "Mover",
"OK" : "OK",
"read-only" : "somente leitura",
- "_{count} file conflict_::_{count} file conflicts_" : ["{count} conflito de arquivo","{count} arquivo conflita","{count} arquivo conflita"],
+ "_{count} file conflict_::_{count} file conflicts_" : ["{count} conflito de arquivo","{count} de conflitos de arquivo","{count} conflitos de arquivo"],
"One file conflict" : "Conflito em um arquivo",
"New Files" : "Novos arquivos",
"Already existing files" : "Arquivos já existentes",
@@ -391,7 +397,7 @@ OC.L10N.register(
"Saving …" : "Salvando...",
"seconds ago" : "segundos atrás",
"Connection to server lost" : "Conexão perdida com o servidor",
- "_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Problema no carregamento da página, recarregando em %n segundo","Problema no carregamento da página, recarregando em %n segundos","Problema no carregamento da página, recarregando em %n segundos"],
+ "_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Problema no carregamento da página, recarregando em %n segundo","Problema no carregamento da página, recarregando em %n de segundos","Problema no carregamento da página, recarregando em %n segundos"],
"Add to a project" : "Adicionar a um projeto",
"Show details" : "Mostrar detalhes",
"Hide details" : "Ocultar detalhes",
@@ -420,10 +426,11 @@ OC.L10N.register(
"Admin" : "Administração",
"Help" : "Ajuda",
"Access forbidden" : "Acesso proibido",
+ "You are not allowed to access this page." : "Você não tem permissão para acessar esta página.",
+ "Back to %s" : "Voltar para %s",
"Page not found" : "Página não encontrada",
"The page could not be found on the server or you may not be allowed to view it." : "A página não pôde ser encontrada no servidor ou talvez você não tenha permissão para visualizá-la.",
- "Back to %s" : "Voltar para %s",
- "Too many requests" : "Muitas requisições",
+ "Too many requests" : "Pedidos em Excesso",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Houve muitas solicitações de sua rede. Tente novamente mais tarde ou entre em contato com o administrador se isso for um erro.",
"Error" : "Erro",
"Internal Server Error" : "Erro Interno do Servidor",
@@ -498,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Esta instância %s está em modo de manutenção, o que pode demorar um pouco.",
"This page will refresh itself when the instance is available again." : "Esta página será atualizada quando o Nextcloud estiver disponível novamente.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Entre em contato com o administrador do sistema se esta mensagem persistir ou aparecer inesperadamente.",
- "Currently open" : "Atualmente aberto",
- "Login with username or email" : "Fazer login com o nome de usuário ou e-mail",
- "Login with username" : "Fazer login com o nome de usuário",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Bate-papo, vídeo chamadas, compartilhamento de tela, reuniões on-line e conferência na web - no seu navegador e com aplicativos móveis.",
"You have not added any info yet" : "Você ainda não adicionou nenhuma informação",
"{user} has not added any info yet" : "{user} ainda não adicionou nenhuma informação",
"Error opening the user status modal, try hard refreshing the page" : "Erro ao abrir o modal de status do usuário, tente forçar uma atualização da página sem cache",
"Edit Profile" : "Editar Perfil ",
"The headline and about sections will show up here" : "As seções de título e sobre serão exibidas aqui",
- "Error loading message template: {error}" : "Erro carregando o modelo de mensagem: {error}",
"Very weak password" : "Senha muito fraca",
"Weak password" : "Senha fraca",
"So-so password" : "Senha mais ou menos",
diff --git a/core/l10n/pt_BR.json b/core/l10n/pt_BR.json
index 02994ecb5d5..3f0750ec959 100644
--- a/core/l10n/pt_BR.json
+++ b/core/l10n/pt_BR.json
@@ -42,6 +42,7 @@
"Task not found" : "Tarefa não encontrada",
"Internal error" : "Erro interno",
"Not found" : "Não encontrado",
+ "Node is locked" : "O nó está bloqueado",
"Bad request" : "Requisição inválida",
"Requested task type does not exist" : "O tipo de tarefa solicitado não existe",
"Necessary language model provider is not available" : "O provedor de modelo de linguagem necessário não está disponível",
@@ -50,6 +51,11 @@
"No translation provider available" : "Nenhum provedor de tradução disponível",
"Could not detect language" : "Não foi possível detectar o idioma",
"Unable to translate" : "Incapaz de traduzir",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Etapa do reparo:",
+ "Repair info:" : "Informação do reparo:",
+ "Repair warning:" : "Aviso do reparo:",
+ "Repair error:" : "Erro do reparo:",
"Nextcloud Server" : "Servidor Nextcloud",
"Some of your link shares have been removed" : "Alguns dos seus compartilhamentos por link foram removidos",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Devido a um bug de segurança, tivemos que remover alguns dos seus compartilhamentos por link. Por favor, veja o link para mais informações.",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Digite sua chave de assinatura no aplicativo de suporte para aumentar o limite de contas. Isso também concede a você todos os benefícios adicionais que o Nextcloud Empresarial oferece e é altamente recomendado para operações em empresas.",
"Learn more ↗" : "Saiba mais ↗",
"Preparing update" : "Preparando a atualização",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Etapa do reparo:",
- "Repair info:" : "Informação do reparo:",
- "Repair warning:" : "Aviso do reparo:",
- "Repair error:" : "Erro do reparo:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Por favor, use o atualizador de linha de comando porque a atualização via navegador está desativada em seu config.php.",
"Turned on maintenance mode" : "Ativar o modo de manutenção",
"Turned off maintenance mode" : "Desativar o modo de manutenção",
@@ -206,7 +207,7 @@
"Hello {name}" : "Olá {name}",
"<strong>These are your search results<script>alert(1)</script></strong>" : "<strong>Estes são os resultados de sua pesquisa<script>alert(1)</script></strong>",
"new" : "novo",
- "_download %n file_::_download %n files_" : ["baixar %n arquivo","baixar %n arquivos","baixar %n arquivos"],
+ "_download %n file_::_download %n files_" : ["baixar %n arquivo","baixar %n de arquivos","baixar %n arquivos"],
"The update is in progress, leaving this page might interrupt the process in some environments." : "A atualização está em andamento. Em alguns ambientes, se sair desta página o processo poderá ser interrompido.",
"Update to {version}" : "Atualizar para {version}",
"An error occurred." : "Ocorreu um erro.",
@@ -214,11 +215,11 @@
"The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "A atualização não foi realizada com sucesso. Para mais informações <a href=\"{url}\">verifique nosso post no fórum</a> que abrange esta questão.",
"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "A atualização não foi realizada com sucesso. Por favor, informe este problema para  a <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">comunidade Nextcloud</a>.",
"Continue to {productName}" : "Continuar para {productName}",
- "_The update was successful. Redirecting you to {productName} in %n second._::_The update was successful. Redirecting you to {productName} in %n seconds._" : ["A atualização foi bem-sucedida. Redirecionando você à {productName} em %n segundo.","A atualização foi bem-sucedida. Redirecionando você para {productName} em %n segundos.","A atualização foi bem-sucedida. Redirecionando você para {productName} em %n segundos."],
+ "_The update was successful. Redirecting you to {productName} in %n second._::_The update was successful. Redirecting you to {productName} in %n seconds._" : ["A atualização foi bem-sucedida. Redirecionando você à {productName} em %n segundo.","A atualização foi bem-sucedida. Redirecionando você para {productName} em %n de segundos.","A atualização foi bem-sucedida. Redirecionando você para {productName} em %n segundos."],
"Applications menu" : "Menu de aplicativos",
"Apps" : "Aplicativos",
"More apps" : "Mais aplicativos",
- "_{count} notification_::_{count} notifications_" : ["{count} notificação","{count} notificações","{count} notificações"],
+ "_{count} notification_::_{count} notifications_" : ["{count} notificação","{count} de notificações","{count} notificações"],
"No" : "Não",
"Yes" : "Sim",
"The remote URL must include the user." : "A URL remota deve incluir o usuário.",
@@ -314,7 +315,7 @@
"Search" : "Pesquisar",
"No results for {query}" : "Sem resultados para {query}",
"Press Enter to start searching" : "Pressione Enter para iniciar a pesquisa",
- "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Digite {minSearchLength} caractere ou mais para pesquisar","Digite {minSearchLength} caracteres ou mais para pesquisar","Digite {minSearchLength} caracteres ou mais para pesquisar"],
+ "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Digite {minSearchLength} caractere ou mais para pesquisar","Digite {minSearchLength} de caracteres ou mais para pesquisar","Digite {minSearchLength} caracteres ou mais para pesquisar"],
"An error occurred while searching for {type}" : "Ocorreu um erro ao pesquisar por {type}",
"Search starts once you start typing and results may be reached with the arrow keys" : "A pesquisa iniciará assim que você começar a digitar e você pode navegar nos resultados com as teclas de seta",
"Search for {name} only" : "Pesquisar somente por {name}",
@@ -325,6 +326,11 @@
"Login form is disabled." : "O formulário de login está desativado.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "O formulário de login do Nextcloud está desabilitado. Use outra opção de login, se disponível, ou entre em contato com sua administração.",
"More actions" : "Mais ações",
+ "User menu" : "Menu do usuário",
+ "You will be identified as {user} by the account owner." : "Você será identificado como {user} pelo proprietário da conta.",
+ "You are currently not identified." : "No momento, você não está identificado.",
+ "Set public name" : "Definir nome público",
+ "Change public name" : "Mudar nome público",
"Password is too weak" : "A senha é muito fraca",
"Password is weak" : "A senha é fraca",
"Password is average" : "A senha é média",
@@ -375,7 +381,7 @@
"Move" : "Mover",
"OK" : "OK",
"read-only" : "somente leitura",
- "_{count} file conflict_::_{count} file conflicts_" : ["{count} conflito de arquivo","{count} arquivo conflita","{count} arquivo conflita"],
+ "_{count} file conflict_::_{count} file conflicts_" : ["{count} conflito de arquivo","{count} de conflitos de arquivo","{count} conflitos de arquivo"],
"One file conflict" : "Conflito em um arquivo",
"New Files" : "Novos arquivos",
"Already existing files" : "Arquivos já existentes",
@@ -389,7 +395,7 @@
"Saving …" : "Salvando...",
"seconds ago" : "segundos atrás",
"Connection to server lost" : "Conexão perdida com o servidor",
- "_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Problema no carregamento da página, recarregando em %n segundo","Problema no carregamento da página, recarregando em %n segundos","Problema no carregamento da página, recarregando em %n segundos"],
+ "_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Problema no carregamento da página, recarregando em %n segundo","Problema no carregamento da página, recarregando em %n de segundos","Problema no carregamento da página, recarregando em %n segundos"],
"Add to a project" : "Adicionar a um projeto",
"Show details" : "Mostrar detalhes",
"Hide details" : "Ocultar detalhes",
@@ -418,10 +424,11 @@
"Admin" : "Administração",
"Help" : "Ajuda",
"Access forbidden" : "Acesso proibido",
+ "You are not allowed to access this page." : "Você não tem permissão para acessar esta página.",
+ "Back to %s" : "Voltar para %s",
"Page not found" : "Página não encontrada",
"The page could not be found on the server or you may not be allowed to view it." : "A página não pôde ser encontrada no servidor ou talvez você não tenha permissão para visualizá-la.",
- "Back to %s" : "Voltar para %s",
- "Too many requests" : "Muitas requisições",
+ "Too many requests" : "Pedidos em Excesso",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Houve muitas solicitações de sua rede. Tente novamente mais tarde ou entre em contato com o administrador se isso for um erro.",
"Error" : "Erro",
"Internal Server Error" : "Erro Interno do Servidor",
@@ -496,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Esta instância %s está em modo de manutenção, o que pode demorar um pouco.",
"This page will refresh itself when the instance is available again." : "Esta página será atualizada quando o Nextcloud estiver disponível novamente.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Entre em contato com o administrador do sistema se esta mensagem persistir ou aparecer inesperadamente.",
- "Currently open" : "Atualmente aberto",
- "Login with username or email" : "Fazer login com o nome de usuário ou e-mail",
- "Login with username" : "Fazer login com o nome de usuário",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Bate-papo, vídeo chamadas, compartilhamento de tela, reuniões on-line e conferência na web - no seu navegador e com aplicativos móveis.",
"You have not added any info yet" : "Você ainda não adicionou nenhuma informação",
"{user} has not added any info yet" : "{user} ainda não adicionou nenhuma informação",
"Error opening the user status modal, try hard refreshing the page" : "Erro ao abrir o modal de status do usuário, tente forçar uma atualização da página sem cache",
"Edit Profile" : "Editar Perfil ",
"The headline and about sections will show up here" : "As seções de título e sobre serão exibidas aqui",
- "Error loading message template: {error}" : "Erro carregando o modelo de mensagem: {error}",
"Very weak password" : "Senha muito fraca",
"Weak password" : "Senha fraca",
"So-so password" : "Senha mais ou menos",
diff --git a/core/l10n/pt_PT.js b/core/l10n/pt_PT.js
index 674d655b186..597b5f2f3ee 100644
--- a/core/l10n/pt_PT.js
+++ b/core/l10n/pt_PT.js
@@ -27,6 +27,7 @@ OC.L10N.register(
"Could not complete login" : "Não foi possível concluir a autenticação",
"State token missing" : "O código de estado está em falta",
"Your login token is invalid or has expired" : "O seu código de autenticação é inválido ou expirou",
+ "Please use original client" : "Utilize o cliente original",
"This community release of Nextcloud is unsupported and push notifications are limited." : "A versão comunitária de Nextcloud não tem suporte e as notificações a pedido são limitadas.",
"Login" : "Iniciar sessão",
"Unsupported email length (>255)" : "Comprimento do e-mail não suportado (>255)",
@@ -43,13 +44,20 @@ OC.L10N.register(
"Task not found" : "Tarefa não encontrada",
"Internal error" : "Erro interno",
"Not found" : "Não encontrado",
+ "Node is locked" : "O nó está bloqueado",
"Bad request" : "Pedido incorreto",
+ "Requested task type does not exist" : "O tipo de tarefa solicitado não existe",
"Necessary language model provider is not available" : "O fornecedor do modelo linguístico necessário não está disponível",
"No text to image provider is available" : "Não está disponível nenhum fornecedor de texto para imagem",
"Image not found" : "Imagem não encontrada",
"No translation provider available" : "Nenhum fornecedor de tradução disponível",
"Could not detect language" : "Não foi possível detetar o idioma",
"Unable to translate" : "Não é possível traduzir",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Etapa da reparação:",
+ "Repair info:" : "Informação da reparação:",
+ "Repair warning:" : "Aviso de reparação:",
+ "Repair error:" : "Erro de reparação:",
"Nextcloud Server" : "Nextcloud Server",
"Some of your link shares have been removed" : "Algumas das suas partilhas de hiperligação foram removidas",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Devido a bugs de segurança tivemos que remover algumas das suas ligações às partilhas.\nPor favor veja o link para mais informação.",
@@ -57,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Introduza a sua chave de subscrição na aplicação de suporte para aumentar o limite da conta. Isto também lhe concede todos os benefícios adicionais que o Nextcloud Enterprise oferece e é altamente recomendado para a operação em empresas.",
"Learn more ↗" : "Saiba mais ↗",
"Preparing update" : "A preparar a atualização",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Etapa da reparação:",
- "Repair info:" : "Informação da reparação:",
- "Repair warning:" : "Aviso de reparação:",
- "Repair error:" : "Erro de reparação:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Utilize o atualizador da linha de comandos porque a atualização através do navegador está desativada no seu config.php.",
"Turned on maintenance mode" : "Ativou o modo de manutenção",
"Turned off maintenance mode" : "Desativou o modo de manutenção",
@@ -78,7 +81,125 @@ OC.L10N.register(
"%s (incompatible)" : "%s (incompatível)",
"The following apps have been disabled: %s" : "As seguintes aplicações foram desativadas: %s",
"Already up to date" : "Já está atualizado",
+ "Windows Command Script" : "Script de Comando do Windows",
+ "Electronic book document" : "Documento de livro eletrónico",
+ "TrueType Font Collection" : "Coleção de fontes TrueType",
+ "Web Open Font Format" : "Formato Web Open Font",
+ "GPX geographic data" : "Dados geográficos GPX",
+ "Gzip archive" : "Arquivo Gzip",
+ "Adobe Illustrator document" : "Documento Adobe Illustrator",
+ "Java source code" : "Código-fonte Java",
+ "JavaScript source code" : "Código-fonte JavaScript",
+ "JSON document" : "Documento JSON",
+ "Microsoft Access database" : "Base de dados Microsoft Access",
+ "Microsoft OneNote document" : "Documento Microsoft OneNote",
+ "Microsoft Word document" : "Documento Microsoft Word",
"Unknown" : "Desconhecido",
+ "PDF document" : "Documento PDF",
+ "PostScript document" : "Documento PostScript",
+ "RSS summary" : "Resumo RSS",
+ "Android package" : "Pacote Android",
+ "KML geographic data" : "Dados geográficos KML",
+ "KML geographic compressed data" : "Dados geográficos KML comprimidos",
+ "Lotus Word Pro document" : "Documento Lotus Word Pro",
+ "Excel spreadsheet" : "Folha de cálculo Excel",
+ "Excel add-in" : "Suplemento Excel",
+ "Excel 2007 binary spreadsheet" : "Folha de cálculo binária Excel 2007",
+ "Excel spreadsheet template" : "Modelo de folha de cálculo Excel",
+ "Outlook Message" : "Mensagem Outlook",
+ "PowerPoint presentation" : "Apresentação PowerPoint",
+ "PowerPoint add-in" : "Suplemento PowerPoint",
+ "PowerPoint presentation template" : "Modelo de apresentação PowerPoint",
+ "Word document" : "Documento Word",
+ "ODF formula" : "Fórmula ODF",
+ "ODG drawing" : "Desenho ODG",
+ "ODG drawing (Flat XML)" : "Desenho ODG (XML Plano)",
+ "ODG template" : "Modelo ODG",
+ "ODP presentation" : "Apresentação ODP",
+ "ODP presentation (Flat XML)" : "Apresentação ODP (XML Plano)",
+ "ODP template" : "Modelo ODP",
+ "ODS spreadsheet" : "Folha de cálculo ODS",
+ "ODS spreadsheet (Flat XML)" : "Folha de cálculo ODS (XML Plano)",
+ "ODS template" : "Modelo ODS",
+ "ODT document" : "Documento ODT",
+ "ODT document (Flat XML)" : "Documento ODT (XML Plano)",
+ "ODT template" : "Modelo ODT",
+ "PowerPoint 2007 presentation" : "Apresentação PowerPoint 2007",
+ "PowerPoint 2007 show" : "Show PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Modelo de apresentação PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Folha de cálculo Excel 2007",
+ "Excel 2007 spreadsheet template" : "Modelo de folha de cálculo Excel 2007",
+ "Word 2007 document" : "Documento Word 2007",
+ "Word 2007 document template" : "Modelo de documento Word 2007",
+ "Microsoft Visio document" : "Documento Microsoft Visio",
+ "WordPerfect document" : "Documento WordPerfect",
+ "7-zip archive" : "Arquivo 7‑Zip",
+ "Blender scene" : "Cena Blender",
+ "Bzip2 archive" : "Arquivo Bzip2",
+ "Debian package" : "Pacote Debian",
+ "FictionBook document" : "Documento FictionBook",
+ "Unknown font" : "Fonte desconhecida",
+ "Krita document" : "Documento Krita",
+ "Mobipocket e-book" : "E‑book Mobipocket",
+ "Windows Installer package" : "Pacote Windows Installer",
+ "Perl script" : "Script Perl",
+ "PHP script" : "Script PHP",
+ "Tar archive" : "Arquivo Tar",
+ "XML document" : "Documento XML",
+ "YAML document" : "Documento YAML",
+ "Zip archive" : "Arquivo Zip",
+ "Zstandard archive" : "Arquivo Zstandard",
+ "AAC audio" : "Áudio AAC",
+ "FLAC audio" : "Áudio FLAC",
+ "MPEG-4 audio" : "Áudio MPEG‑4",
+ "MP3 audio" : "Áudio MP3",
+ "Ogg audio" : "Áudio Ogg",
+ "RIFF/WAVe standard Audio" : "Áudio padrão RIFF/WAV",
+ "WebM audio" : "Áudio WebM",
+ "MP3 ShoutCast playlist" : "Lista de reprodução MP3 ShoutCast",
+ "Windows BMP image" : "Imagem Windows BMP",
+ "Better Portable Graphics image" : "Imagem Better Portable Graphics",
+ "EMF image" : "Imagem EMF",
+ "GIF image" : "Imagem GIF",
+ "HEIC image" : "Imagem HEIC",
+ "HEIF image" : "Imagem HEIF",
+ "JPEG-2000 JP2 image" : "Imagem JPEG‑2000 JP2",
+ "JPEG image" : "Imagem JPEG",
+ "PNG image" : "Imagem PNG",
+ "SVG image" : "Imagem SVG",
+ "Truevision Targa image" : "Imagem Truevision Targa",
+ "TIFF image" : "Imagem TIFF",
+ "WebP image" : "Imagem WebP",
+ "Digital raw image" : "Imagem RAW digital",
+ "Windows Icon" : "Ícone Windows",
+ "Email message" : "Mensagem de email",
+ "VCS/ICS calendar" : "Calendário VCS/ICS",
+ "CSS stylesheet" : "Folha de estilo CSS",
+ "CSV document" : "Documento CSV",
+ "HTML document" : "Documento HTML",
+ "Markdown document" : "Documento Markdown",
+ "Org-mode file" : "Ficheiro Org‑mode",
+ "Plain text document" : "Documento de texto simples",
+ "Rich Text document" : "Documento Rich Text",
+ "Electronic business card" : "Cartão de visita eletrónico",
+ "C++ source code" : "Código‑fonte C++",
+ "LDIF address book" : "Livro de endereços LDIF",
+ "NFO document" : "Documento NFO",
+ "PHP source" : "Código‑fonte PHP",
+ "Python script" : "Script Python",
+ "ReStructuredText document" : "Documento ReStructuredText",
+ "3GPP multimedia file" : "Ficheiro multimédia 3GPP",
+ "MPEG video" : "Vídeo MPEG",
+ "DV video" : "Vídeo DV",
+ "MPEG-2 transport stream" : "Fluxo de transporte MPEG‑2",
+ "MPEG-4 video" : "Vídeo MPEG‑4",
+ "Ogg video" : "Vídeo Ogg",
+ "QuickTime video" : "Vídeo QuickTime",
+ "WebM video" : "Vídeo WebM",
+ "Flash video" : "Vídeo Flash",
+ "Matroska video" : "Vídeo Matroska",
+ "Windows Media video" : "Vídeo Windows Media",
+ "AVI video" : "Vídeo AVI",
"Error occurred while checking server setup" : "Ocorreu um erro durante a verificação da configuração do servidor",
"For more details see the {linkstart}documentation ↗{linkend}." : "Para mais pormenores, consultar o {linkstart}documentação ↗{linkend}.",
"unknown text" : "texto desconhecido",
@@ -96,31 +217,63 @@ OC.L10N.register(
"The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "A atualização falhou. Para mais informação <a href=\"{url}\">consulte o nosso artigo do fórum</a> sobre como resolver este problema.",
"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "A atualização não foi bem sucedida. Por favor, reporte este problema à <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">comunidade de Nextcloud</a>.",
"Continue to {productName}" : "Continuar para {productName}",
+ "_The update was successful. Redirecting you to {productName} in %n second._::_The update was successful. Redirecting you to {productName} in %n seconds._" : ["A atualização foi concluída. A redirecionar para {productName} dentro de %n segundo.","A atualização foi concluída. A redirecionar para {productName} dentro de %n segundos.","A atualização foi concluída. A redirecionar para {productName} dentro de %n segundos."],
"Applications menu" : "Menu de Aplicações",
"Apps" : "Aplicações",
"More apps" : "Mais aplicações",
"_{count} notification_::_{count} notifications_" : ["{count} notificação","{count} notificações","{count} notificações"],
"No" : "Não",
"Yes" : "Sim",
+ "The remote URL must include the user." : "O URL remoto tem de incluir o utilizador.",
+ "Invalid remote URL." : "URL remoto inválido.",
"Failed to add the public link to your Nextcloud" : "Não foi possível adicionar a hiperligação pública ao seu Nextcloud",
"Federated user" : "Utilizador federado",
+ "user@your-nextcloud.org" : "utilizador@o-seu-nextcloud.org",
+ "Create share" : "Criar partilha",
+ "Direct link copied to clipboard" : "Ligação direta copiada para a área de transferência",
+ "Please copy the link manually:" : "Por favor copie a ligação manualmente:",
+ "Custom date range" : "Intervalo de datas personalizado",
+ "Pick start date" : "Escolher data de início",
+ "Pick end date" : "Escolher data de fim",
+ "Search in date range" : "Pesquisar no intervalo de datas",
+ "Search in current app" : "Pesquisar na aplicação atual",
+ "Clear search" : "Limpar pesquisa",
+ "Search everywhere" : "Pesquisar em todo o lado",
"Searching …" : "A procurar…",
"Start typing to search" : "Comece a digitar para procurar",
+ "No matching results" : "Sem resultados correspondentes",
"Today" : "Hoje",
+ "Last 7 days" : "Últimos 7 dias",
+ "Last 30 days" : "Últimos 30 dias",
+ "This year" : "Este ano",
"Last year" : "Ano passado",
+ "Unified search" : "Pesquisa unificada",
+ "Search apps, files, tags, messages" : "Pesquisar aplicações, ficheiros, etiquetas, mensagens",
"Places" : "Locais",
"Date" : "Data",
+ "Search people" : "Procurar pessoas",
"People" : "Pessoas",
+ "Filter in current view" : "Filtrar na vista atual",
"Results" : "Resultados",
"Load more results" : "Mostrar mais resultados",
+ "Search in" : "Pesquisar em",
"Log in" : "Iniciar sessão",
"Logging in …" : "A iniciar a sessão...",
+ "Log in to {productName}" : "Inicie sessão em {productName}",
+ "Wrong login or password." : "Início de sessão ou palavra‑passe incorretos.",
+ "This account is disabled" : "Esta conta está desativada",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "Nós detetamos múltiplas tentativas falhadas de autenticação com o seu IP. Por isso, a sua próxima autenticação será adiada até 30 segundos. ",
+ "Account name or email" : "Nome da conta ou email",
+ "Account name" : "Nome da conta",
"Server side authentication failed!" : "Autenticação do lado do servidor falhou!",
"Please contact your administrator." : "Por favor, contacte o seu administrador.",
+ "Session error" : "Erro de sessão",
+ "It appears your session token has expired, please refresh the page and try again." : "Parece que o seu token de sessão expirou; por favor atualize a página e tente novamente.",
"An internal error occurred." : "Ocorreu um erro interno.",
"Please try again or contact your administrator." : "Por favor, tente novamente ou contacte o seu administrador.",
"Password" : "Palavra-passe",
+ "Log in with a device" : "Iniciar sessão com um dispositivo",
+ "Login or email" : "Utilizador ou email",
"Your account is not setup for passwordless login." : "A sua conta não está configurada para autenticação sem palavra-passe.",
"Your connection is not secure" : "A sua ligação não é segura",
"Passwordless authentication is only available over a secure connection." : "A autenticação sem palavra-passe só está disponível através de uma ligação segura.",
@@ -128,6 +281,7 @@ OC.L10N.register(
"Passwordless authentication is not supported in your browser." : "O seu navegador não suporta autenticação sem palavra-passe.",
"Reset password" : "Repor palavra-passe",
"Back to login" : "Voltar à autenticação",
+ "If this account exists, a password reset message has been sent to its email address. If you do not receive it, verify your email address and/or Login, check your spam/junk folders or ask your local administration for help." : "Se esta conta existir, foi enviada uma mensagem de reposição de palavra‑passe; verifique as suas pastas de spam/lixo ou contacte a administração local para obter ajuda.",
"Couldn't send reset email. Please contact your administrator." : "Não foi possível enviar a mensagem de reposição. Por favor, contacte o seu administrador.",
"Password cannot be changed. Please contact your administrator." : "A palavra-passe não pode ser alterada. Por favor, contacte o seu administrador.",
"New password" : "Nova palavra-passe",
@@ -136,37 +290,73 @@ OC.L10N.register(
"Resetting password" : "Redefinir a palavra passe",
"Schedule work & meetings, synced with all your devices." : "Agende trabalho e reuniões, sincronizando com todos os seus dispositivos.",
"Keep your colleagues and friends in one place without leaking their private info." : "Mantenha os seus colegas e amigos no mesmo lugar sem divulgar as suas informações privadas.",
+ "Simple email app nicely integrated with Files, Contacts and Calendar." : "Aplicação de email simples integrada com Ficheiros, Contactos e Calendário.",
+ "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Conversação, videochamadas, partilha de ecrã, reuniões online e conferência web – no navegador e em aplicações móveis.",
+ "Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Documentos, folhas de cálculo e apresentações colaborativas baseadas no Collabora Online.",
+ "Distraction free note taking app." : "Aplicação de notas sem distrações.",
"Recommended apps" : "Aplicações recomendadas",
"Loading apps …" : "A carregar aplicações...",
+ "Could not fetch list of apps from the App Store." : "Não foi possível obter a lista de aplicações da App Store.",
"App download or installation failed" : "A transferência ou a instalação desta aplicação falhou",
"Cannot install this app because it is not compatible" : "Não é possível instalar esta aplicação por não ser compatível",
"Cannot install this app" : "Não é possível instalar esta aplicação",
"Skip" : "Ignorar",
"Installing apps …" : "A instalar aplicações ...",
"Install recommended apps" : "Instalar aplicações recomendadas",
+ "Avatar of {displayName}" : "Avatar de {displayName}",
"Settings menu" : "Menu de definições",
"Loading your contacts …" : "A carregar os seus contactos...",
"Looking for {term} …" : "A procurar por {term} …",
+ "Search contacts" : "Pesquisar contactos",
"Reset search" : "Redefinir pesquisa",
"Search contacts …" : "Procurar contactos...",
"Could not load your contacts" : "Não foi possível carregar os seus contactos",
"No contacts found" : "Não foram encontrados contactos",
+ "Show all contacts" : "Mostrar todos os contactos",
"Install the Contacts app" : "Instalar a aplicação de Contactos",
"Search" : "Procurar",
"No results for {query}" : "Nenhum resultado para {query}",
+ "Press Enter to start searching" : "Prima Enter para começar a pesquisar",
+ "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Insira {minSearchLength} carácter ou mais para pesquisar","Insira {minSearchLength} caracteres ou mais para pesquisar","Insira {minSearchLength} caracteres ou mais para pesquisar"],
"An error occurred while searching for {type}" : "Ocorreu um erro enquanto pesquisava por {type}",
+ "Search starts once you start typing and results may be reached with the arrow keys" : "A pesquisa começa quando começar a escrever e os resultados podem ser percorridos com as teclas de seta",
"Search for {name} only" : "Pesquisar apenas por {name}",
"Loading more results …" : "A carregar mais resultados...",
"Forgot password?" : "Senha esquecida?",
+ "Back to login form" : "Voltar ao formulário de início de sessão",
"Back" : "Anterior",
+ "Login form is disabled." : "O formulário de início de sessão está desativado.",
+ "The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "O formulário de início de sessão do Nextcloud está desativado. Utilize outra opção de início de sessão, se disponível, ou contacte a administração.",
"More actions" : "Mais ações",
+ "User menu" : "Menu do utilizador",
+ "You will be identified as {user} by the account owner." : "Será identificado como {user} pelo proprietário da conta.",
+ "You are currently not identified." : "Atualmente não está identificado.",
+ "Set public name" : "Definir nome público",
+ "Change public name" : "Alterar nome público",
+ "Password is too weak" : "A palavra‑passe é demasiado fraca",
+ "Password is weak" : "A palavra‑passe é fraca",
+ "Password is average" : "A palavra‑passe é média",
+ "Password is strong" : "A palavra‑passe é forte",
+ "Password is very strong" : "A palavra‑passe é muito forte",
+ "Password is extremely strong" : "A palavra‑passe é extremamente forte",
+ "Unknown password strength" : "Força de palavra‑passe desconhecida",
+ "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "O seu diretório de dados e ficheiros provavelmente está acessível a partir da internet porque o ficheiro <code>.htaccess</code> não está a funcionar.",
+ "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "Para saber como configurar corretamente o seu servidor, {linkStart}consulte a documentação{linkEnd}",
+ "Autoconfig file detected" : "Ficheiro de configuração automática detetado",
+ "The setup form below is pre-filled with the values from the config file." : "O formulário de configuração abaixo foi preenchido com os valores do ficheiro de configuração.",
"Security warning" : "Aviso de segurança",
+ "Create administration account" : "Criar conta de administração",
+ "Administration account name" : "Nome da conta de administração",
+ "Administration account password" : "Palavra‑passe da conta de administração",
"Storage & database" : "Armazenamento e base de dados",
"Data folder" : "Pasta de dados",
+ "Database configuration" : "Configuração da base de dados",
+ "Only {firstAndOnlyDatabase} is available." : "Apenas {firstAndOnlyDatabase} está disponível.",
"Install and activate additional PHP modules to choose other database types." : "Instale e ative os módulos PHP adicionais para escolher outros tipos de base de dados.",
"For more details check out the documentation." : "Para mais detalhes consulte a documentação.",
"Performance warning" : "Aviso de desempenho",
"You chose SQLite as database." : "Escolheu SQLite como base de dados",
+ "SQLite should only be used for minimal and development instances. For production we recommend a different database backend." : "A SQLite só deve ser usada em instâncias mínimas e de desenvolvimento. Para produção, recomendamos um motor de base de dados diferente.",
"If you use clients for file syncing, the use of SQLite is highly discouraged." : "Se utiliza clientes para a sincronização de ficheiros, a utilização de SQLite é altamente desencorajada.",
"Database user" : "Utilizador da base de dados",
"Database password" : "Palavra-passe da base de dados",
@@ -174,6 +364,7 @@ OC.L10N.register(
"Database tablespace" : "Tablespace da base de dados",
"Please specify the port number along with the host name (e.g., localhost:5432)." : "Por favor, especifique o número da porta com o nome do anfitrião (por exemplo, localhost:5432).",
"Database host" : "Anfitrião da base de dados",
+ "localhost" : "localhost",
"Installing …" : "A instalar...",
"Install" : "Instalar",
"Need help?" : "Precisa de ajuda?",
@@ -186,7 +377,9 @@ OC.L10N.register(
"Search {types} …" : "Pesquisar {types}...",
"Choose {file}" : "Escolher {file}",
"Choose" : "Escolher",
+ "Copy to {target}" : "Copiar para {target}",
"Copy" : "Copiar",
+ "Move to {target}" : "Mover para {target}",
"Move" : "Mover",
"OK" : "Confirmar",
"read-only" : "só de leitura",
@@ -218,6 +411,8 @@ OC.L10N.register(
"View changelog" : "Ver registo de alterações",
"No action available" : "Nenhuma ação disponível",
"Error fetching contact actions" : "Erro ao obter ações dos contactos",
+ "Close \"{dialogTitle}\" dialog" : "Fechar diálogo \"{dialogTitle}\"",
+ "Email length is at max (255)" : "O tamanho do email atingiu o máximo (255)",
"Non-existing tag #{tag}" : "Etiqueta não existente #{tag}",
"Restricted" : "Restrito",
"Invisible" : "Invisível ",
@@ -225,18 +420,24 @@ OC.L10N.register(
"Rename" : "Renomear",
"Collaborative tags" : "Etiquetas colaborativas",
"No tags found" : "Não foram encontradas etiquetas",
+ "Clipboard not available, please copy manually" : "Área de transferência indisponível, copie manualmente",
"Personal" : "Pessoal",
+ "Accounts" : "Contas",
"Admin" : "Administração",
"Help" : "Ajuda",
"Access forbidden" : "Acesso proibido",
- "Page not found" : "Página não encontrada",
+ "You are not allowed to access this page." : "Não tem permissão para aceder a esta página.",
"Back to %s" : "Voltar para %s",
+ "Page not found" : "Página não encontrada",
+ "The page could not be found on the server or you may not be allowed to view it." : "A página não foi encontrada no servidor ou pode não ter permissão para a visualizar.",
"Too many requests" : "Muitos pedidos",
+ "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Foram efetuados demasiados pedidos a partir da sua rede. Tente mais tarde ou contacte o administrador se for um erro.",
"Error" : "Erro",
"Internal Server Error" : "Erro Interno do Servidor",
"The server was unable to complete your request." : "O servidor não conseguiu concluir o seu pedido.",
"If this happens again, please send the technical details below to the server administrator." : "Se voltar a acontecer, por favor envie os detalhes técnicos abaixo ao administrador do servidor.",
"More details can be found in the server log." : "Mais detalhes podem ser encontrados no registo do servidor.",
+ "For more details see the documentation ↗." : "Para mais detalhes, consulte a documentação ↗.",
"Technical details" : "Detalhes técnicos",
"Remote Address: %s" : "Endereço remoto: %s",
"Request ID: %s" : "Id. do pedido: %s",
@@ -246,6 +447,8 @@ OC.L10N.register(
"File: %s" : "Ficheiro: %s",
"Line: %s" : "Linha: %s",
"Trace" : "Rastreio",
+ "It looks like you are trying to reinstall your Nextcloud. However the file CAN_INSTALL is missing from your config directory. Please create the file CAN_INSTALL in your config folder to continue." : "Parece que está a tentar reinstalar o seu Nextcloud. Para continuar, crie o ficheiro CAN_INSTALL na pasta de configuração.",
+ "Could not remove CAN_INSTALL from the config folder. Please remove this file manually." : "Não foi possível remover o ficheiro CAN_INSTALL da pasta de configuração. Por favor, remova-o manualmente.",
"This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Esta aplicação requer JavaScript para funcionar corretamente. Por favor, {linkstart}ative o JavaScript{linkend} e recarregue a página.",
"Skip to main content" : "Ir para o conteúdo principal",
"Skip to navigation of app" : "Ir para a navegação da aplicação",
@@ -253,27 +456,40 @@ OC.L10N.register(
"Get your own free account" : "Obtenha a sua própria conta grátis",
"Connect to your account" : "Ligar à sua conta",
"Please log in before granting %1$s access to your %2$s account." : "Por favor, autentique-se antes de permitir o acesso de %1$s à sua conta %2$s.",
+ "If you are not trying to set up a new device or app, someone is trying to trick you into granting them access to your data. In this case do not proceed and instead contact your system administrator." : "Se não está a tentar configurar um novo dispositivo ou aplicação, alguém pode estar a tentar aceder à sua conta. Não prossiga e contacte o administrador do sistema.",
+ "App password" : "Palavra‑passe de aplicação",
"Grant access" : "Conceder acesso",
+ "Alternative log in using app password" : "Início de sessão alternativo usando palavra‑passe de aplicação",
"Account access" : "Acesso à conta",
+ "Currently logged in as %1$s (%2$s)." : "Atualmente com sessão iniciada como %1$s (%2$s).",
"You are about to grant %1$s access to your %2$s account." : "Está prestes a permitir que %1$s aceda à sua conta %2$s. ",
"Account connected" : "Conta ligada",
"Your client should now be connected!" : "O seu cliente deveria agora estar ligado!",
"You can close this window." : "Pode fechar esta janela.",
"Previous" : "Anterior",
"This share is password-protected" : "Esta partilha está protegida por palavra-passe",
+ "The password is wrong or expired. Please try again or request a new one." : "A palavra‑passe está errada ou expirou. Tente novamente ou solicite uma nova.",
+ "Please type in your email address to request a temporary password" : "Introduza o seu endereço de email para solicitar uma palavra‑passe temporária",
"Email address" : "Endereço de E-mail",
+ "Password sent!" : "Palavra‑passe enviada!",
+ "You are not authorized to request a password for this share" : "Não está autorizado a solicitar uma palavra‑passe para esta partilha",
"Two-factor authentication" : "Autenticação de dois fatores",
"Enhanced security is enabled for your account. Choose a second factor for authentication:" : "A segurança reforçada foi ativada para a sua conta. Por favor, escolha um segundo fator de autenticação.",
"Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Não foi possível carregar pelo menos um dos métodos de autenticação de dois passos ativados. Por favor, contacte o seu administrador.",
+ "Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance." : "A autenticação de dois fatores é obrigatória mas não está configurada na sua conta. Contacte o administrador para obter ajuda.",
+ "Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication." : "A autenticação de dois fatores é obrigatória mas não foi configurada totalmente na sua conta. Continue a configuração da autenticação de dois fatores.",
"Set up two-factor authentication" : "Configurar autenticação de dois fatores",
+ "Two-factor authentication is enforced but has not been configured on your account. Use one of your backup codes to log in or contact your admin for assistance." : "A autenticação de dois fatores é obrigatória mas não foi configurada totalmente. Utilize os seus códigos de reserva para iniciar sessão ou contacte o administrador para obter ajuda.",
"Use backup code" : "Usar código de cópia de segurança",
"Cancel login" : "Cancelar início de sessão",
+ "Enhanced security is enforced for your account. Choose which provider to set up:" : "A segurança reforçada é obrigatória para a sua conta. Escolha qual o fornecedor a configurar:",
"Error while validating your second factor" : "Erro ao validar o segundo fator",
"Access through untrusted domain" : "Aceder através de um domínio não confiável",
"Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php." : "Por favor contacte o seu administrador. Se é um administrador, edite a definição \"trusted_domains\" no config/config.php como no exemplo em config.sample.php.",
"Further information how to configure this can be found in the %1$sdocumentation%2$s." : "Mais informação acerca de como configurar pode ser encontrada na %1$sdocumentação%2$s. ",
"App update required" : "É necessário atualizar a aplicação",
"%1$s will be updated to version %2$s" : "%1$s irá ser atualizada para a versão %2$s",
+ "The following apps will be updated:" : "As seguintes aplicações serão atualizadas:",
"These incompatible apps will be disabled:" : "Estas aplicações incompatíveis irão ser desativadas:",
"The theme %s has been disabled." : "O tema %s foi desativado.",
"Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Por favor, certifique-se de que foi efetuada uma cópia de segurança da base de dados, pasta de configuração e de dados antes de prosseguir.",
@@ -281,6 +497,7 @@ OC.L10N.register(
"To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "Para evitar tempos limites com instalações maiores, pode executar o seguinte comando na diretoria de instalação:",
"Detailed logs" : "Registos detalhados",
"Update needed" : "É necessário atualizar",
+ "Please use the command line updater because you have a big instance with more than 50 accounts." : "Use o atualizador de linha de comandos porque tem uma instância grande com mais de 50 contas.",
"For help, see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation</a>." : "Para obter ajuda, consulte a <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentação</a>.",
"I know that if I continue doing the update via web UI has the risk, that the request runs into a timeout and could cause data loss, but I have a backup and know how to restore my instance in case of a failure." : "Sei que se continuar a fazer a atualização via interface web arrisco a que o pedido expire e pode causar a perda de dados, no entanto tenho uma cópia de segurança e sei como restaurar a minha instância em caso de falha. ",
"Upgrade via web on my own risk" : "Atualizar via web por minha conta e risco.",
@@ -288,9 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Esta instância %s está atualmente no modo de manutenção, o que poderá demorar algum tempo.",
"This page will refresh itself when the instance is available again." : "Esta página irá ser atualizada quando a instância ficar novamente disponível.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contacte o seu administrador do sistema se esta mensagem persistir ou apareceu inesperadamente.",
+ "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Conversação, videochamadas, partilha de ecrã, reuniões online e conferências web – no navegador e em aplicações móveis.",
"You have not added any info yet" : "Ainda não adicionou qualquer informação ",
+ "{user} has not added any info yet" : "{user} ainda não adicionou qualquer informação",
+ "Error opening the user status modal, try hard refreshing the page" : "Erro ao abrir o modal de estado do utilizador; tente atualizar a página forçadamente",
"Edit Profile" : "Editar perfil",
- "Error loading message template: {error}" : "Ocorreu um erro ao carregar o modelo: {error}",
+ "The headline and about sections will show up here" : "Os campos de título e sobre aparecerão aqui",
"Very weak password" : "Palavra-passe muito fraca",
"Weak password" : "Palavra-passe fraca",
"So-so password" : "Palavra-passe aceitável",
@@ -300,9 +520,13 @@ OC.L10N.register(
"The profile does not exist." : "O perfil não existe.",
"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "A pasta de dados e os respetivos ficheiros estão provavelmente acessíveis a partir da internet pois o ficheiro .htaccess não funciona.",
"For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "Para obter informações de como configurar corretamente o servidor, veja em: <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">documentação</a>.",
+ "<strong>Create an admin account</strong>" : "<strong>Criar uma conta de administrador</strong>",
+ "New admin account name" : "Nome da nova conta de administração",
+ "New admin password" : "Nova palavra‑passe de administração",
"Show password" : "Mostrar senha",
"Toggle password visibility" : "Altere a visibilidade da palavra-passe",
"Configure the database" : "Configure a base de dados",
- "Only %s is available." : "Só está disponível %s."
+ "Only %s is available." : "Só está disponível %s.",
+ "Database account" : "Conta da base de dados"
},
"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
diff --git a/core/l10n/pt_PT.json b/core/l10n/pt_PT.json
index 3eb5c04d807..3c5786f9b78 100644
--- a/core/l10n/pt_PT.json
+++ b/core/l10n/pt_PT.json
@@ -25,6 +25,7 @@
"Could not complete login" : "Não foi possível concluir a autenticação",
"State token missing" : "O código de estado está em falta",
"Your login token is invalid or has expired" : "O seu código de autenticação é inválido ou expirou",
+ "Please use original client" : "Utilize o cliente original",
"This community release of Nextcloud is unsupported and push notifications are limited." : "A versão comunitária de Nextcloud não tem suporte e as notificações a pedido são limitadas.",
"Login" : "Iniciar sessão",
"Unsupported email length (>255)" : "Comprimento do e-mail não suportado (>255)",
@@ -41,13 +42,20 @@
"Task not found" : "Tarefa não encontrada",
"Internal error" : "Erro interno",
"Not found" : "Não encontrado",
+ "Node is locked" : "O nó está bloqueado",
"Bad request" : "Pedido incorreto",
+ "Requested task type does not exist" : "O tipo de tarefa solicitado não existe",
"Necessary language model provider is not available" : "O fornecedor do modelo linguístico necessário não está disponível",
"No text to image provider is available" : "Não está disponível nenhum fornecedor de texto para imagem",
"Image not found" : "Imagem não encontrada",
"No translation provider available" : "Nenhum fornecedor de tradução disponível",
"Could not detect language" : "Não foi possível detetar o idioma",
"Unable to translate" : "Não é possível traduzir",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Etapa da reparação:",
+ "Repair info:" : "Informação da reparação:",
+ "Repair warning:" : "Aviso de reparação:",
+ "Repair error:" : "Erro de reparação:",
"Nextcloud Server" : "Nextcloud Server",
"Some of your link shares have been removed" : "Algumas das suas partilhas de hiperligação foram removidas",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Devido a bugs de segurança tivemos que remover algumas das suas ligações às partilhas.\nPor favor veja o link para mais informação.",
@@ -55,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Introduza a sua chave de subscrição na aplicação de suporte para aumentar o limite da conta. Isto também lhe concede todos os benefícios adicionais que o Nextcloud Enterprise oferece e é altamente recomendado para a operação em empresas.",
"Learn more ↗" : "Saiba mais ↗",
"Preparing update" : "A preparar a atualização",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Etapa da reparação:",
- "Repair info:" : "Informação da reparação:",
- "Repair warning:" : "Aviso de reparação:",
- "Repair error:" : "Erro de reparação:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Utilize o atualizador da linha de comandos porque a atualização através do navegador está desativada no seu config.php.",
"Turned on maintenance mode" : "Ativou o modo de manutenção",
"Turned off maintenance mode" : "Desativou o modo de manutenção",
@@ -76,7 +79,125 @@
"%s (incompatible)" : "%s (incompatível)",
"The following apps have been disabled: %s" : "As seguintes aplicações foram desativadas: %s",
"Already up to date" : "Já está atualizado",
+ "Windows Command Script" : "Script de Comando do Windows",
+ "Electronic book document" : "Documento de livro eletrónico",
+ "TrueType Font Collection" : "Coleção de fontes TrueType",
+ "Web Open Font Format" : "Formato Web Open Font",
+ "GPX geographic data" : "Dados geográficos GPX",
+ "Gzip archive" : "Arquivo Gzip",
+ "Adobe Illustrator document" : "Documento Adobe Illustrator",
+ "Java source code" : "Código-fonte Java",
+ "JavaScript source code" : "Código-fonte JavaScript",
+ "JSON document" : "Documento JSON",
+ "Microsoft Access database" : "Base de dados Microsoft Access",
+ "Microsoft OneNote document" : "Documento Microsoft OneNote",
+ "Microsoft Word document" : "Documento Microsoft Word",
"Unknown" : "Desconhecido",
+ "PDF document" : "Documento PDF",
+ "PostScript document" : "Documento PostScript",
+ "RSS summary" : "Resumo RSS",
+ "Android package" : "Pacote Android",
+ "KML geographic data" : "Dados geográficos KML",
+ "KML geographic compressed data" : "Dados geográficos KML comprimidos",
+ "Lotus Word Pro document" : "Documento Lotus Word Pro",
+ "Excel spreadsheet" : "Folha de cálculo Excel",
+ "Excel add-in" : "Suplemento Excel",
+ "Excel 2007 binary spreadsheet" : "Folha de cálculo binária Excel 2007",
+ "Excel spreadsheet template" : "Modelo de folha de cálculo Excel",
+ "Outlook Message" : "Mensagem Outlook",
+ "PowerPoint presentation" : "Apresentação PowerPoint",
+ "PowerPoint add-in" : "Suplemento PowerPoint",
+ "PowerPoint presentation template" : "Modelo de apresentação PowerPoint",
+ "Word document" : "Documento Word",
+ "ODF formula" : "Fórmula ODF",
+ "ODG drawing" : "Desenho ODG",
+ "ODG drawing (Flat XML)" : "Desenho ODG (XML Plano)",
+ "ODG template" : "Modelo ODG",
+ "ODP presentation" : "Apresentação ODP",
+ "ODP presentation (Flat XML)" : "Apresentação ODP (XML Plano)",
+ "ODP template" : "Modelo ODP",
+ "ODS spreadsheet" : "Folha de cálculo ODS",
+ "ODS spreadsheet (Flat XML)" : "Folha de cálculo ODS (XML Plano)",
+ "ODS template" : "Modelo ODS",
+ "ODT document" : "Documento ODT",
+ "ODT document (Flat XML)" : "Documento ODT (XML Plano)",
+ "ODT template" : "Modelo ODT",
+ "PowerPoint 2007 presentation" : "Apresentação PowerPoint 2007",
+ "PowerPoint 2007 show" : "Show PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Modelo de apresentação PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Folha de cálculo Excel 2007",
+ "Excel 2007 spreadsheet template" : "Modelo de folha de cálculo Excel 2007",
+ "Word 2007 document" : "Documento Word 2007",
+ "Word 2007 document template" : "Modelo de documento Word 2007",
+ "Microsoft Visio document" : "Documento Microsoft Visio",
+ "WordPerfect document" : "Documento WordPerfect",
+ "7-zip archive" : "Arquivo 7‑Zip",
+ "Blender scene" : "Cena Blender",
+ "Bzip2 archive" : "Arquivo Bzip2",
+ "Debian package" : "Pacote Debian",
+ "FictionBook document" : "Documento FictionBook",
+ "Unknown font" : "Fonte desconhecida",
+ "Krita document" : "Documento Krita",
+ "Mobipocket e-book" : "E‑book Mobipocket",
+ "Windows Installer package" : "Pacote Windows Installer",
+ "Perl script" : "Script Perl",
+ "PHP script" : "Script PHP",
+ "Tar archive" : "Arquivo Tar",
+ "XML document" : "Documento XML",
+ "YAML document" : "Documento YAML",
+ "Zip archive" : "Arquivo Zip",
+ "Zstandard archive" : "Arquivo Zstandard",
+ "AAC audio" : "Áudio AAC",
+ "FLAC audio" : "Áudio FLAC",
+ "MPEG-4 audio" : "Áudio MPEG‑4",
+ "MP3 audio" : "Áudio MP3",
+ "Ogg audio" : "Áudio Ogg",
+ "RIFF/WAVe standard Audio" : "Áudio padrão RIFF/WAV",
+ "WebM audio" : "Áudio WebM",
+ "MP3 ShoutCast playlist" : "Lista de reprodução MP3 ShoutCast",
+ "Windows BMP image" : "Imagem Windows BMP",
+ "Better Portable Graphics image" : "Imagem Better Portable Graphics",
+ "EMF image" : "Imagem EMF",
+ "GIF image" : "Imagem GIF",
+ "HEIC image" : "Imagem HEIC",
+ "HEIF image" : "Imagem HEIF",
+ "JPEG-2000 JP2 image" : "Imagem JPEG‑2000 JP2",
+ "JPEG image" : "Imagem JPEG",
+ "PNG image" : "Imagem PNG",
+ "SVG image" : "Imagem SVG",
+ "Truevision Targa image" : "Imagem Truevision Targa",
+ "TIFF image" : "Imagem TIFF",
+ "WebP image" : "Imagem WebP",
+ "Digital raw image" : "Imagem RAW digital",
+ "Windows Icon" : "Ícone Windows",
+ "Email message" : "Mensagem de email",
+ "VCS/ICS calendar" : "Calendário VCS/ICS",
+ "CSS stylesheet" : "Folha de estilo CSS",
+ "CSV document" : "Documento CSV",
+ "HTML document" : "Documento HTML",
+ "Markdown document" : "Documento Markdown",
+ "Org-mode file" : "Ficheiro Org‑mode",
+ "Plain text document" : "Documento de texto simples",
+ "Rich Text document" : "Documento Rich Text",
+ "Electronic business card" : "Cartão de visita eletrónico",
+ "C++ source code" : "Código‑fonte C++",
+ "LDIF address book" : "Livro de endereços LDIF",
+ "NFO document" : "Documento NFO",
+ "PHP source" : "Código‑fonte PHP",
+ "Python script" : "Script Python",
+ "ReStructuredText document" : "Documento ReStructuredText",
+ "3GPP multimedia file" : "Ficheiro multimédia 3GPP",
+ "MPEG video" : "Vídeo MPEG",
+ "DV video" : "Vídeo DV",
+ "MPEG-2 transport stream" : "Fluxo de transporte MPEG‑2",
+ "MPEG-4 video" : "Vídeo MPEG‑4",
+ "Ogg video" : "Vídeo Ogg",
+ "QuickTime video" : "Vídeo QuickTime",
+ "WebM video" : "Vídeo WebM",
+ "Flash video" : "Vídeo Flash",
+ "Matroska video" : "Vídeo Matroska",
+ "Windows Media video" : "Vídeo Windows Media",
+ "AVI video" : "Vídeo AVI",
"Error occurred while checking server setup" : "Ocorreu um erro durante a verificação da configuração do servidor",
"For more details see the {linkstart}documentation ↗{linkend}." : "Para mais pormenores, consultar o {linkstart}documentação ↗{linkend}.",
"unknown text" : "texto desconhecido",
@@ -94,31 +215,63 @@
"The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "A atualização falhou. Para mais informação <a href=\"{url}\">consulte o nosso artigo do fórum</a> sobre como resolver este problema.",
"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "A atualização não foi bem sucedida. Por favor, reporte este problema à <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">comunidade de Nextcloud</a>.",
"Continue to {productName}" : "Continuar para {productName}",
+ "_The update was successful. Redirecting you to {productName} in %n second._::_The update was successful. Redirecting you to {productName} in %n seconds._" : ["A atualização foi concluída. A redirecionar para {productName} dentro de %n segundo.","A atualização foi concluída. A redirecionar para {productName} dentro de %n segundos.","A atualização foi concluída. A redirecionar para {productName} dentro de %n segundos."],
"Applications menu" : "Menu de Aplicações",
"Apps" : "Aplicações",
"More apps" : "Mais aplicações",
"_{count} notification_::_{count} notifications_" : ["{count} notificação","{count} notificações","{count} notificações"],
"No" : "Não",
"Yes" : "Sim",
+ "The remote URL must include the user." : "O URL remoto tem de incluir o utilizador.",
+ "Invalid remote URL." : "URL remoto inválido.",
"Failed to add the public link to your Nextcloud" : "Não foi possível adicionar a hiperligação pública ao seu Nextcloud",
"Federated user" : "Utilizador federado",
+ "user@your-nextcloud.org" : "utilizador@o-seu-nextcloud.org",
+ "Create share" : "Criar partilha",
+ "Direct link copied to clipboard" : "Ligação direta copiada para a área de transferência",
+ "Please copy the link manually:" : "Por favor copie a ligação manualmente:",
+ "Custom date range" : "Intervalo de datas personalizado",
+ "Pick start date" : "Escolher data de início",
+ "Pick end date" : "Escolher data de fim",
+ "Search in date range" : "Pesquisar no intervalo de datas",
+ "Search in current app" : "Pesquisar na aplicação atual",
+ "Clear search" : "Limpar pesquisa",
+ "Search everywhere" : "Pesquisar em todo o lado",
"Searching …" : "A procurar…",
"Start typing to search" : "Comece a digitar para procurar",
+ "No matching results" : "Sem resultados correspondentes",
"Today" : "Hoje",
+ "Last 7 days" : "Últimos 7 dias",
+ "Last 30 days" : "Últimos 30 dias",
+ "This year" : "Este ano",
"Last year" : "Ano passado",
+ "Unified search" : "Pesquisa unificada",
+ "Search apps, files, tags, messages" : "Pesquisar aplicações, ficheiros, etiquetas, mensagens",
"Places" : "Locais",
"Date" : "Data",
+ "Search people" : "Procurar pessoas",
"People" : "Pessoas",
+ "Filter in current view" : "Filtrar na vista atual",
"Results" : "Resultados",
"Load more results" : "Mostrar mais resultados",
+ "Search in" : "Pesquisar em",
"Log in" : "Iniciar sessão",
"Logging in …" : "A iniciar a sessão...",
+ "Log in to {productName}" : "Inicie sessão em {productName}",
+ "Wrong login or password." : "Início de sessão ou palavra‑passe incorretos.",
+ "This account is disabled" : "Esta conta está desativada",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "Nós detetamos múltiplas tentativas falhadas de autenticação com o seu IP. Por isso, a sua próxima autenticação será adiada até 30 segundos. ",
+ "Account name or email" : "Nome da conta ou email",
+ "Account name" : "Nome da conta",
"Server side authentication failed!" : "Autenticação do lado do servidor falhou!",
"Please contact your administrator." : "Por favor, contacte o seu administrador.",
+ "Session error" : "Erro de sessão",
+ "It appears your session token has expired, please refresh the page and try again." : "Parece que o seu token de sessão expirou; por favor atualize a página e tente novamente.",
"An internal error occurred." : "Ocorreu um erro interno.",
"Please try again or contact your administrator." : "Por favor, tente novamente ou contacte o seu administrador.",
"Password" : "Palavra-passe",
+ "Log in with a device" : "Iniciar sessão com um dispositivo",
+ "Login or email" : "Utilizador ou email",
"Your account is not setup for passwordless login." : "A sua conta não está configurada para autenticação sem palavra-passe.",
"Your connection is not secure" : "A sua ligação não é segura",
"Passwordless authentication is only available over a secure connection." : "A autenticação sem palavra-passe só está disponível através de uma ligação segura.",
@@ -126,6 +279,7 @@
"Passwordless authentication is not supported in your browser." : "O seu navegador não suporta autenticação sem palavra-passe.",
"Reset password" : "Repor palavra-passe",
"Back to login" : "Voltar à autenticação",
+ "If this account exists, a password reset message has been sent to its email address. If you do not receive it, verify your email address and/or Login, check your spam/junk folders or ask your local administration for help." : "Se esta conta existir, foi enviada uma mensagem de reposição de palavra‑passe; verifique as suas pastas de spam/lixo ou contacte a administração local para obter ajuda.",
"Couldn't send reset email. Please contact your administrator." : "Não foi possível enviar a mensagem de reposição. Por favor, contacte o seu administrador.",
"Password cannot be changed. Please contact your administrator." : "A palavra-passe não pode ser alterada. Por favor, contacte o seu administrador.",
"New password" : "Nova palavra-passe",
@@ -134,37 +288,73 @@
"Resetting password" : "Redefinir a palavra passe",
"Schedule work & meetings, synced with all your devices." : "Agende trabalho e reuniões, sincronizando com todos os seus dispositivos.",
"Keep your colleagues and friends in one place without leaking their private info." : "Mantenha os seus colegas e amigos no mesmo lugar sem divulgar as suas informações privadas.",
+ "Simple email app nicely integrated with Files, Contacts and Calendar." : "Aplicação de email simples integrada com Ficheiros, Contactos e Calendário.",
+ "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Conversação, videochamadas, partilha de ecrã, reuniões online e conferência web – no navegador e em aplicações móveis.",
+ "Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Documentos, folhas de cálculo e apresentações colaborativas baseadas no Collabora Online.",
+ "Distraction free note taking app." : "Aplicação de notas sem distrações.",
"Recommended apps" : "Aplicações recomendadas",
"Loading apps …" : "A carregar aplicações...",
+ "Could not fetch list of apps from the App Store." : "Não foi possível obter a lista de aplicações da App Store.",
"App download or installation failed" : "A transferência ou a instalação desta aplicação falhou",
"Cannot install this app because it is not compatible" : "Não é possível instalar esta aplicação por não ser compatível",
"Cannot install this app" : "Não é possível instalar esta aplicação",
"Skip" : "Ignorar",
"Installing apps …" : "A instalar aplicações ...",
"Install recommended apps" : "Instalar aplicações recomendadas",
+ "Avatar of {displayName}" : "Avatar de {displayName}",
"Settings menu" : "Menu de definições",
"Loading your contacts …" : "A carregar os seus contactos...",
"Looking for {term} …" : "A procurar por {term} …",
+ "Search contacts" : "Pesquisar contactos",
"Reset search" : "Redefinir pesquisa",
"Search contacts …" : "Procurar contactos...",
"Could not load your contacts" : "Não foi possível carregar os seus contactos",
"No contacts found" : "Não foram encontrados contactos",
+ "Show all contacts" : "Mostrar todos os contactos",
"Install the Contacts app" : "Instalar a aplicação de Contactos",
"Search" : "Procurar",
"No results for {query}" : "Nenhum resultado para {query}",
+ "Press Enter to start searching" : "Prima Enter para começar a pesquisar",
+ "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Insira {minSearchLength} carácter ou mais para pesquisar","Insira {minSearchLength} caracteres ou mais para pesquisar","Insira {minSearchLength} caracteres ou mais para pesquisar"],
"An error occurred while searching for {type}" : "Ocorreu um erro enquanto pesquisava por {type}",
+ "Search starts once you start typing and results may be reached with the arrow keys" : "A pesquisa começa quando começar a escrever e os resultados podem ser percorridos com as teclas de seta",
"Search for {name} only" : "Pesquisar apenas por {name}",
"Loading more results …" : "A carregar mais resultados...",
"Forgot password?" : "Senha esquecida?",
+ "Back to login form" : "Voltar ao formulário de início de sessão",
"Back" : "Anterior",
+ "Login form is disabled." : "O formulário de início de sessão está desativado.",
+ "The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "O formulário de início de sessão do Nextcloud está desativado. Utilize outra opção de início de sessão, se disponível, ou contacte a administração.",
"More actions" : "Mais ações",
+ "User menu" : "Menu do utilizador",
+ "You will be identified as {user} by the account owner." : "Será identificado como {user} pelo proprietário da conta.",
+ "You are currently not identified." : "Atualmente não está identificado.",
+ "Set public name" : "Definir nome público",
+ "Change public name" : "Alterar nome público",
+ "Password is too weak" : "A palavra‑passe é demasiado fraca",
+ "Password is weak" : "A palavra‑passe é fraca",
+ "Password is average" : "A palavra‑passe é média",
+ "Password is strong" : "A palavra‑passe é forte",
+ "Password is very strong" : "A palavra‑passe é muito forte",
+ "Password is extremely strong" : "A palavra‑passe é extremamente forte",
+ "Unknown password strength" : "Força de palavra‑passe desconhecida",
+ "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "O seu diretório de dados e ficheiros provavelmente está acessível a partir da internet porque o ficheiro <code>.htaccess</code> não está a funcionar.",
+ "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "Para saber como configurar corretamente o seu servidor, {linkStart}consulte a documentação{linkEnd}",
+ "Autoconfig file detected" : "Ficheiro de configuração automática detetado",
+ "The setup form below is pre-filled with the values from the config file." : "O formulário de configuração abaixo foi preenchido com os valores do ficheiro de configuração.",
"Security warning" : "Aviso de segurança",
+ "Create administration account" : "Criar conta de administração",
+ "Administration account name" : "Nome da conta de administração",
+ "Administration account password" : "Palavra‑passe da conta de administração",
"Storage & database" : "Armazenamento e base de dados",
"Data folder" : "Pasta de dados",
+ "Database configuration" : "Configuração da base de dados",
+ "Only {firstAndOnlyDatabase} is available." : "Apenas {firstAndOnlyDatabase} está disponível.",
"Install and activate additional PHP modules to choose other database types." : "Instale e ative os módulos PHP adicionais para escolher outros tipos de base de dados.",
"For more details check out the documentation." : "Para mais detalhes consulte a documentação.",
"Performance warning" : "Aviso de desempenho",
"You chose SQLite as database." : "Escolheu SQLite como base de dados",
+ "SQLite should only be used for minimal and development instances. For production we recommend a different database backend." : "A SQLite só deve ser usada em instâncias mínimas e de desenvolvimento. Para produção, recomendamos um motor de base de dados diferente.",
"If you use clients for file syncing, the use of SQLite is highly discouraged." : "Se utiliza clientes para a sincronização de ficheiros, a utilização de SQLite é altamente desencorajada.",
"Database user" : "Utilizador da base de dados",
"Database password" : "Palavra-passe da base de dados",
@@ -172,6 +362,7 @@
"Database tablespace" : "Tablespace da base de dados",
"Please specify the port number along with the host name (e.g., localhost:5432)." : "Por favor, especifique o número da porta com o nome do anfitrião (por exemplo, localhost:5432).",
"Database host" : "Anfitrião da base de dados",
+ "localhost" : "localhost",
"Installing …" : "A instalar...",
"Install" : "Instalar",
"Need help?" : "Precisa de ajuda?",
@@ -184,7 +375,9 @@
"Search {types} …" : "Pesquisar {types}...",
"Choose {file}" : "Escolher {file}",
"Choose" : "Escolher",
+ "Copy to {target}" : "Copiar para {target}",
"Copy" : "Copiar",
+ "Move to {target}" : "Mover para {target}",
"Move" : "Mover",
"OK" : "Confirmar",
"read-only" : "só de leitura",
@@ -216,6 +409,8 @@
"View changelog" : "Ver registo de alterações",
"No action available" : "Nenhuma ação disponível",
"Error fetching contact actions" : "Erro ao obter ações dos contactos",
+ "Close \"{dialogTitle}\" dialog" : "Fechar diálogo \"{dialogTitle}\"",
+ "Email length is at max (255)" : "O tamanho do email atingiu o máximo (255)",
"Non-existing tag #{tag}" : "Etiqueta não existente #{tag}",
"Restricted" : "Restrito",
"Invisible" : "Invisível ",
@@ -223,18 +418,24 @@
"Rename" : "Renomear",
"Collaborative tags" : "Etiquetas colaborativas",
"No tags found" : "Não foram encontradas etiquetas",
+ "Clipboard not available, please copy manually" : "Área de transferência indisponível, copie manualmente",
"Personal" : "Pessoal",
+ "Accounts" : "Contas",
"Admin" : "Administração",
"Help" : "Ajuda",
"Access forbidden" : "Acesso proibido",
- "Page not found" : "Página não encontrada",
+ "You are not allowed to access this page." : "Não tem permissão para aceder a esta página.",
"Back to %s" : "Voltar para %s",
+ "Page not found" : "Página não encontrada",
+ "The page could not be found on the server or you may not be allowed to view it." : "A página não foi encontrada no servidor ou pode não ter permissão para a visualizar.",
"Too many requests" : "Muitos pedidos",
+ "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Foram efetuados demasiados pedidos a partir da sua rede. Tente mais tarde ou contacte o administrador se for um erro.",
"Error" : "Erro",
"Internal Server Error" : "Erro Interno do Servidor",
"The server was unable to complete your request." : "O servidor não conseguiu concluir o seu pedido.",
"If this happens again, please send the technical details below to the server administrator." : "Se voltar a acontecer, por favor envie os detalhes técnicos abaixo ao administrador do servidor.",
"More details can be found in the server log." : "Mais detalhes podem ser encontrados no registo do servidor.",
+ "For more details see the documentation ↗." : "Para mais detalhes, consulte a documentação ↗.",
"Technical details" : "Detalhes técnicos",
"Remote Address: %s" : "Endereço remoto: %s",
"Request ID: %s" : "Id. do pedido: %s",
@@ -244,6 +445,8 @@
"File: %s" : "Ficheiro: %s",
"Line: %s" : "Linha: %s",
"Trace" : "Rastreio",
+ "It looks like you are trying to reinstall your Nextcloud. However the file CAN_INSTALL is missing from your config directory. Please create the file CAN_INSTALL in your config folder to continue." : "Parece que está a tentar reinstalar o seu Nextcloud. Para continuar, crie o ficheiro CAN_INSTALL na pasta de configuração.",
+ "Could not remove CAN_INSTALL from the config folder. Please remove this file manually." : "Não foi possível remover o ficheiro CAN_INSTALL da pasta de configuração. Por favor, remova-o manualmente.",
"This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Esta aplicação requer JavaScript para funcionar corretamente. Por favor, {linkstart}ative o JavaScript{linkend} e recarregue a página.",
"Skip to main content" : "Ir para o conteúdo principal",
"Skip to navigation of app" : "Ir para a navegação da aplicação",
@@ -251,27 +454,40 @@
"Get your own free account" : "Obtenha a sua própria conta grátis",
"Connect to your account" : "Ligar à sua conta",
"Please log in before granting %1$s access to your %2$s account." : "Por favor, autentique-se antes de permitir o acesso de %1$s à sua conta %2$s.",
+ "If you are not trying to set up a new device or app, someone is trying to trick you into granting them access to your data. In this case do not proceed and instead contact your system administrator." : "Se não está a tentar configurar um novo dispositivo ou aplicação, alguém pode estar a tentar aceder à sua conta. Não prossiga e contacte o administrador do sistema.",
+ "App password" : "Palavra‑passe de aplicação",
"Grant access" : "Conceder acesso",
+ "Alternative log in using app password" : "Início de sessão alternativo usando palavra‑passe de aplicação",
"Account access" : "Acesso à conta",
+ "Currently logged in as %1$s (%2$s)." : "Atualmente com sessão iniciada como %1$s (%2$s).",
"You are about to grant %1$s access to your %2$s account." : "Está prestes a permitir que %1$s aceda à sua conta %2$s. ",
"Account connected" : "Conta ligada",
"Your client should now be connected!" : "O seu cliente deveria agora estar ligado!",
"You can close this window." : "Pode fechar esta janela.",
"Previous" : "Anterior",
"This share is password-protected" : "Esta partilha está protegida por palavra-passe",
+ "The password is wrong or expired. Please try again or request a new one." : "A palavra‑passe está errada ou expirou. Tente novamente ou solicite uma nova.",
+ "Please type in your email address to request a temporary password" : "Introduza o seu endereço de email para solicitar uma palavra‑passe temporária",
"Email address" : "Endereço de E-mail",
+ "Password sent!" : "Palavra‑passe enviada!",
+ "You are not authorized to request a password for this share" : "Não está autorizado a solicitar uma palavra‑passe para esta partilha",
"Two-factor authentication" : "Autenticação de dois fatores",
"Enhanced security is enabled for your account. Choose a second factor for authentication:" : "A segurança reforçada foi ativada para a sua conta. Por favor, escolha um segundo fator de autenticação.",
"Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Não foi possível carregar pelo menos um dos métodos de autenticação de dois passos ativados. Por favor, contacte o seu administrador.",
+ "Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance." : "A autenticação de dois fatores é obrigatória mas não está configurada na sua conta. Contacte o administrador para obter ajuda.",
+ "Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication." : "A autenticação de dois fatores é obrigatória mas não foi configurada totalmente na sua conta. Continue a configuração da autenticação de dois fatores.",
"Set up two-factor authentication" : "Configurar autenticação de dois fatores",
+ "Two-factor authentication is enforced but has not been configured on your account. Use one of your backup codes to log in or contact your admin for assistance." : "A autenticação de dois fatores é obrigatória mas não foi configurada totalmente. Utilize os seus códigos de reserva para iniciar sessão ou contacte o administrador para obter ajuda.",
"Use backup code" : "Usar código de cópia de segurança",
"Cancel login" : "Cancelar início de sessão",
+ "Enhanced security is enforced for your account. Choose which provider to set up:" : "A segurança reforçada é obrigatória para a sua conta. Escolha qual o fornecedor a configurar:",
"Error while validating your second factor" : "Erro ao validar o segundo fator",
"Access through untrusted domain" : "Aceder através de um domínio não confiável",
"Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php." : "Por favor contacte o seu administrador. Se é um administrador, edite a definição \"trusted_domains\" no config/config.php como no exemplo em config.sample.php.",
"Further information how to configure this can be found in the %1$sdocumentation%2$s." : "Mais informação acerca de como configurar pode ser encontrada na %1$sdocumentação%2$s. ",
"App update required" : "É necessário atualizar a aplicação",
"%1$s will be updated to version %2$s" : "%1$s irá ser atualizada para a versão %2$s",
+ "The following apps will be updated:" : "As seguintes aplicações serão atualizadas:",
"These incompatible apps will be disabled:" : "Estas aplicações incompatíveis irão ser desativadas:",
"The theme %s has been disabled." : "O tema %s foi desativado.",
"Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Por favor, certifique-se de que foi efetuada uma cópia de segurança da base de dados, pasta de configuração e de dados antes de prosseguir.",
@@ -279,6 +495,7 @@
"To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "Para evitar tempos limites com instalações maiores, pode executar o seguinte comando na diretoria de instalação:",
"Detailed logs" : "Registos detalhados",
"Update needed" : "É necessário atualizar",
+ "Please use the command line updater because you have a big instance with more than 50 accounts." : "Use o atualizador de linha de comandos porque tem uma instância grande com mais de 50 contas.",
"For help, see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation</a>." : "Para obter ajuda, consulte a <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentação</a>.",
"I know that if I continue doing the update via web UI has the risk, that the request runs into a timeout and could cause data loss, but I have a backup and know how to restore my instance in case of a failure." : "Sei que se continuar a fazer a atualização via interface web arrisco a que o pedido expire e pode causar a perda de dados, no entanto tenho uma cópia de segurança e sei como restaurar a minha instância em caso de falha. ",
"Upgrade via web on my own risk" : "Atualizar via web por minha conta e risco.",
@@ -286,9 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Esta instância %s está atualmente no modo de manutenção, o que poderá demorar algum tempo.",
"This page will refresh itself when the instance is available again." : "Esta página irá ser atualizada quando a instância ficar novamente disponível.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contacte o seu administrador do sistema se esta mensagem persistir ou apareceu inesperadamente.",
+ "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Conversação, videochamadas, partilha de ecrã, reuniões online e conferências web – no navegador e em aplicações móveis.",
"You have not added any info yet" : "Ainda não adicionou qualquer informação ",
+ "{user} has not added any info yet" : "{user} ainda não adicionou qualquer informação",
+ "Error opening the user status modal, try hard refreshing the page" : "Erro ao abrir o modal de estado do utilizador; tente atualizar a página forçadamente",
"Edit Profile" : "Editar perfil",
- "Error loading message template: {error}" : "Ocorreu um erro ao carregar o modelo: {error}",
+ "The headline and about sections will show up here" : "Os campos de título e sobre aparecerão aqui",
"Very weak password" : "Palavra-passe muito fraca",
"Weak password" : "Palavra-passe fraca",
"So-so password" : "Palavra-passe aceitável",
@@ -298,9 +518,13 @@
"The profile does not exist." : "O perfil não existe.",
"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "A pasta de dados e os respetivos ficheiros estão provavelmente acessíveis a partir da internet pois o ficheiro .htaccess não funciona.",
"For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "Para obter informações de como configurar corretamente o servidor, veja em: <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">documentação</a>.",
+ "<strong>Create an admin account</strong>" : "<strong>Criar uma conta de administrador</strong>",
+ "New admin account name" : "Nome da nova conta de administração",
+ "New admin password" : "Nova palavra‑passe de administração",
"Show password" : "Mostrar senha",
"Toggle password visibility" : "Altere a visibilidade da palavra-passe",
"Configure the database" : "Configure a base de dados",
- "Only %s is available." : "Só está disponível %s."
+ "Only %s is available." : "Só está disponível %s.",
+ "Database account" : "Conta da base de dados"
},"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
} \ No newline at end of file
diff --git a/core/l10n/ro.js b/core/l10n/ro.js
index d97363e15d3..6350523ba61 100644
--- a/core/l10n/ro.js
+++ b/core/l10n/ro.js
@@ -51,17 +51,17 @@ OC.L10N.register(
"No translation provider available" : "Niciun furnizor de traducere nu este disponibil",
"Could not detect language" : "Nu a putut fi detectată limba",
"Unable to translate" : "Nu s-a putut traduce",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Etapa de reparare:",
+ "Repair info:" : "Informații despre reparații:",
+ "Repair warning:" : "Avertisment de reparație:",
+ "Repair error:" : "Eroare de reparare:",
"Nextcloud Server" : "Nextcloud Server",
"Some of your link shares have been removed" : "Unele dintre link-urile tale partajate au fost șterse",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Din cauza unui bug de securitate, a trebuit să eliminăm unele dintre link-urile dvs. partajate. Vă rugăm să consultați link-ul pentru mai multe informații.",
"The account limit of this instance is reached." : "Limita contului a fost atinsă.",
"Learn more ↗" : "Află mai multe ↗",
"Preparing update" : "Se pregătește actualizarea",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Etapa de reparare:",
- "Repair info:" : "Informații despre reparații:",
- "Repair warning:" : "Avertisment de reparație:",
- "Repair error:" : "Eroare de reparare:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Utilizează actualizarea din linie de comandă, pentru că actualizarea automată este dezactivată în config.php.",
"Turned on maintenance mode" : "Modul mentenanță a fost activat",
"Turned off maintenance mode" : "Modul mentenanță a fost dezactivat",
@@ -263,9 +263,9 @@ OC.L10N.register(
"Admin" : "Administrator",
"Help" : "Ajutor",
"Access forbidden" : "Acces restricționat",
+ "Back to %s" : "Înapoi la %s",
"Page not found" : "Pagina nu a fost găsită",
"The page could not be found on the server or you may not be allowed to view it." : "Pagina nu există pe server sau nu aveți permisiunea de a o vedea.",
- "Back to %s" : "Înapoi la %s",
"Too many requests" : "Prea multe cereri",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Prea multe cereri din această rețea. Încercați mai târziu sau contactați administratorul.",
"Error" : "Eroare",
@@ -338,14 +338,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Instanța %s este acum în modul de mentenanță, ceea ce ar putea dura o vreme.",
"This page will refresh itself when the instance is available again." : "Această pagină se va actualiza automat când instanța va fi disponibilă din nou.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contactează-ți administratorul de sistem dacă acest mesaj persistă sau a apărut neașteptat.",
- "Currently open" : "Deschise curent",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chat, apeluri video, partajare ecran, întâlniri online și videoconferințe - în browser și cu aplicația mobilă.",
"You have not added any info yet" : "Nu ați adăugat nicio informație",
"{user} has not added any info yet" : "{user} nu a adăugat nicio informație",
"Error opening the user status modal, try hard refreshing the page" : "Eroare la deschiderea status utilizator, încercați refresh",
"Edit Profile" : "Editare profil",
"The headline and about sections will show up here" : "Secțiunile titlu și despre vor fi afișate aici",
- "Error loading message template: {error}" : "Eroare la încărcarea şablonului de mesaje: {error}",
"Very weak password" : "Parolă foarte slabă",
"Weak password" : "Parolă slabă",
"So-so password" : "Parolă medie",
diff --git a/core/l10n/ro.json b/core/l10n/ro.json
index bc477f4c9e9..456414133d6 100644
--- a/core/l10n/ro.json
+++ b/core/l10n/ro.json
@@ -49,17 +49,17 @@
"No translation provider available" : "Niciun furnizor de traducere nu este disponibil",
"Could not detect language" : "Nu a putut fi detectată limba",
"Unable to translate" : "Nu s-a putut traduce",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Etapa de reparare:",
+ "Repair info:" : "Informații despre reparații:",
+ "Repair warning:" : "Avertisment de reparație:",
+ "Repair error:" : "Eroare de reparare:",
"Nextcloud Server" : "Nextcloud Server",
"Some of your link shares have been removed" : "Unele dintre link-urile tale partajate au fost șterse",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Din cauza unui bug de securitate, a trebuit să eliminăm unele dintre link-urile dvs. partajate. Vă rugăm să consultați link-ul pentru mai multe informații.",
"The account limit of this instance is reached." : "Limita contului a fost atinsă.",
"Learn more ↗" : "Află mai multe ↗",
"Preparing update" : "Se pregătește actualizarea",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Etapa de reparare:",
- "Repair info:" : "Informații despre reparații:",
- "Repair warning:" : "Avertisment de reparație:",
- "Repair error:" : "Eroare de reparare:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Utilizează actualizarea din linie de comandă, pentru că actualizarea automată este dezactivată în config.php.",
"Turned on maintenance mode" : "Modul mentenanță a fost activat",
"Turned off maintenance mode" : "Modul mentenanță a fost dezactivat",
@@ -261,9 +261,9 @@
"Admin" : "Administrator",
"Help" : "Ajutor",
"Access forbidden" : "Acces restricționat",
+ "Back to %s" : "Înapoi la %s",
"Page not found" : "Pagina nu a fost găsită",
"The page could not be found on the server or you may not be allowed to view it." : "Pagina nu există pe server sau nu aveți permisiunea de a o vedea.",
- "Back to %s" : "Înapoi la %s",
"Too many requests" : "Prea multe cereri",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Prea multe cereri din această rețea. Încercați mai târziu sau contactați administratorul.",
"Error" : "Eroare",
@@ -336,14 +336,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Instanța %s este acum în modul de mentenanță, ceea ce ar putea dura o vreme.",
"This page will refresh itself when the instance is available again." : "Această pagină se va actualiza automat când instanța va fi disponibilă din nou.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Contactează-ți administratorul de sistem dacă acest mesaj persistă sau a apărut neașteptat.",
- "Currently open" : "Deschise curent",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chat, apeluri video, partajare ecran, întâlniri online și videoconferințe - în browser și cu aplicația mobilă.",
"You have not added any info yet" : "Nu ați adăugat nicio informație",
"{user} has not added any info yet" : "{user} nu a adăugat nicio informație",
"Error opening the user status modal, try hard refreshing the page" : "Eroare la deschiderea status utilizator, încercați refresh",
"Edit Profile" : "Editare profil",
"The headline and about sections will show up here" : "Secțiunile titlu și despre vor fi afișate aici",
- "Error loading message template: {error}" : "Eroare la încărcarea şablonului de mesaje: {error}",
"Very weak password" : "Parolă foarte slabă",
"Weak password" : "Parolă slabă",
"So-so password" : "Parolă medie",
diff --git a/core/l10n/ru.js b/core/l10n/ru.js
index b86fd3ef9e2..3b3a18387d5 100644
--- a/core/l10n/ru.js
+++ b/core/l10n/ru.js
@@ -27,6 +27,7 @@ OC.L10N.register(
"Could not complete login" : "Не удалось завершить вход в систему",
"State token missing" : "Отсутствует токен состояния",
"Your login token is invalid or has expired" : "Ваш токен неверен или истёк",
+ "Please use original client" : "Используйте оригинальное приложение-клиент",
"This community release of Nextcloud is unsupported and push notifications are limited." : "Используется сборка Nextcloud для сообщества. Данная сборка не поддерживается и имеет ограниченный функционал push-уведомлений.",
"Login" : "Войти",
"Unsupported email length (>255)" : "Неподдерживаемая длина адреса эл. почты (более 255 символов)",
@@ -43,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Задача не найдена",
"Internal error" : "Внутренняя ошибка",
"Not found" : "Не найдено",
+ "Node is locked" : "Узел заблокирован",
"Bad request" : "Неверный запрос",
"Requested task type does not exist" : "Запрошенный тип задачи не существует",
"Necessary language model provider is not available" : "Необходимый поставщик языковой модели недоступен",
@@ -51,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Поставщик услуг перевода недоступен",
"Could not detect language" : "Не удалось определить язык",
"Unable to translate" : "Не удается перевести",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Шаг восстановления:",
+ "Repair info:" : "Информация восстановления:",
+ "Repair warning:" : "Предупреждение восстановления:",
+ "Repair error:" : "Ошибка восстановления:",
"Nextcloud Server" : "Сервер Nextcloud",
"Some of your link shares have been removed" : "Некоторые из ваших ссылок на общие ресурсы были удалены",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Из-за ошибки в безопасности нам пришлось удалить некоторые из ваших ссылок на опубликованные файлы или папки. Перейдите по ссылке для получения дополнительной информации.",
@@ -58,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Для увеличения лимита пользователей введите код подписки в приложении «Поддержка». Оформление подписки рекомендуется при использовании Nexcloud в бизнесе, а также позволяет получить дополнительные преимущества, предлагаемые Nextcloud для корпоративных пользователей.",
"Learn more ↗" : "Дополнительная информация ↗",
"Preparing update" : "Подготовка к обновлению",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Шаг восстановления:",
- "Repair info:" : "Информация восстановления:",
- "Repair warning:" : "Предупреждение восстановления:",
- "Repair error:" : "Ошибка восстановления:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Пожалуйста, используйте обновление из терминала, поскольку обновление через браузер отключено в вашем файле конфигурации config.php.",
"Turned on maintenance mode" : "Включён режим обслуживания ",
"Turned off maintenance mode" : "Отключён режим обслуживания",
@@ -79,8 +81,125 @@ OC.L10N.register(
"%s (incompatible)" : "%s (несовместимое)",
"The following apps have been disabled: %s" : "Были отключены следующие приложения: %s",
"Already up to date" : "Не нуждается в обновлении",
+ "Windows Command Script" : "Командный сценарий Windows",
+ "Electronic book document" : "Электронная книга",
+ "TrueType Font Collection" : "Набор шрифтов TrueType",
+ "Web Open Font Format" : "Файл шрифта в формате Open Font",
+ "GPX geographic data" : "Пространственные данные GPX",
+ "Gzip archive" : "Архив Gzip",
+ "Adobe Illustrator document" : "Файл Adode Illustrator",
+ "Java source code" : "Исходный код на языке Java",
+ "JavaScript source code" : "Исходный код на языке JavaScript",
+ "JSON document" : "Файл в формате JSON",
+ "Microsoft Access database" : "База данных Microsoft Access",
+ "Microsoft OneNote document" : "Документ Microsoft OneNote",
+ "Microsoft Word document" : "Документ Microsoft Word",
"Unknown" : "Неизвестно",
+ "PDF document" : "Документ в формате PDF",
+ "PostScript document" : "Документ в формате PostScript",
+ "RSS summary" : "RSS-сводка",
+ "Android package" : "Пакет Android",
+ "KML geographic data" : "Пространственные данные в формате MKL",
+ "KML geographic compressed data" : "Сжатые пространственные данные в формате KML",
+ "Lotus Word Pro document" : "Документ Lotus Word Pro",
+ "Excel spreadsheet" : "Таблица Excel",
+ "Excel add-in" : "Дополнение Excel",
+ "Excel 2007 binary spreadsheet" : "Таблица в двоичном формате Excel 2007",
+ "Excel spreadsheet template" : "Шаблон таблицы Excel",
+ "Outlook Message" : "Сообщение Outlook",
+ "PowerPoint presentation" : "Презентация Powerpoint",
+ "PowerPoint add-in" : "Дополнение Powerpoint",
+ "PowerPoint presentation template" : "Шаблон презентации Powerpoint",
+ "Word document" : "Документ Word",
+ "ODF formula" : "Формула в формате ODF",
+ "ODG drawing" : "Рисунок в формате ODG",
+ "ODG drawing (Flat XML)" : "Рисунок в формате ODG (простой XML)",
+ "ODG template" : "Шаблон ODG",
+ "ODP presentation" : "Презентация в формате ODP",
+ "ODP presentation (Flat XML)" : "Презентация в формате ODP (простой XML)",
+ "ODP template" : "Шаблон ODP",
+ "ODS spreadsheet" : "Таблица ODS",
+ "ODS spreadsheet (Flat XML)" : "Таблица ODS (плоский XML)",
+ "ODS template" : "Шаблон ODS",
+ "ODT document" : "Документ ODT",
+ "ODT document (Flat XML)" : "Документ ODT (плоский XML)",
+ "ODT template" : "Шаблон ODT",
+ "PowerPoint 2007 presentation" : "Презентация PowerPoint 2007",
+ "PowerPoint 2007 show" : "Демонстрация PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Шаблон презентации PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Таблица Excel 2007",
+ "Excel 2007 spreadsheet template" : "Шаблон таблицы Excel 2007",
+ "Word 2007 document" : "Документ Word 2007",
+ "Word 2007 document template" : "Шаблон документа Word 2007",
+ "Microsoft Visio document" : "Документ Microsoft Visio",
+ "WordPerfect document" : "Документ WordPerfect",
+ "7-zip archive" : "Архив 7-zip",
+ "Blender scene" : "Сцена Blender",
+ "Bzip2 archive" : "Архив Bzip2",
+ "Debian package" : "Пакет Debian",
+ "FictionBook document" : "Документ FictionBook",
+ "Unknown font" : "Неизвестный шрифт",
+ "Krita document" : "Документ Krita",
+ "Mobipocket e-book" : "Электронная книга Mobipocket",
+ "Windows Installer package" : "Пакет Windows Installer",
+ "Perl script" : "Сценарий Perl",
+ "PHP script" : "Сценарий PHP",
+ "Tar archive" : "Архив tar",
+ "XML document" : "Документ в формате XML",
+ "YAML document" : "Документ в формате YAML",
+ "Zip archive" : "Архив zip",
+ "Zstandard archive" : "Архив zstandart",
+ "AAC audio" : "Звуковой файл в формате AAC",
+ "FLAC audio" : "Звуковой файл в формате FLAC",
+ "MPEG-4 audio" : "Звуковой файл в формате MPEG-4",
+ "MP3 audio" : "Звуковой файл в формате MP3",
+ "Ogg audio" : "Звуковой файл в формате ogg",
+ "RIFF/WAVe standard Audio" : "Стандартное аудио RIFF/WAVe",
+ "WebM audio" : "Аудио WebM",
+ "MP3 ShoutCast playlist" : "Плейлист MP3 ShoutCast",
+ "Windows BMP image" : "Точечный рисунок Windows",
+ "Better Portable Graphics image" : "Изображение Better Portable Graphics",
+ "EMF image" : "Изображение в формате EMF",
+ "GIF image" : "Изображение в формате GIF",
+ "HEIC image" : "Изображение в формате HEIC",
+ "HEIF image" : "Изображение в формате HEIF",
+ "JPEG-2000 JP2 image" : "Изображение в формате JPEG-2000 JP2",
+ "JPEG image" : "Изображение в формате JPEG",
"PNG image" : "Изображение PNG",
+ "SVG image" : "Изображение в формате PNG",
+ "Truevision Targa image" : "Изображение в формате Truevision Targa",
+ "TIFF image" : "Изображение в формате TIFF",
+ "WebP image" : "Изображение в формате WebP",
+ "Digital raw image" : "Файл цифрового негатива",
+ "Windows Icon" : "Значок Windows",
+ "Email message" : "Сообщение эл. почты",
+ "VCS/ICS calendar" : "Календарь VCS/ICS",
+ "CSS stylesheet" : "Таблица стилей CSS",
+ "CSV document" : "Документ в формате CSV",
+ "HTML document" : "Документ в формате HTML",
+ "Markdown document" : "Документ в формате Markdown",
+ "Org-mode file" : "Файл Org-mode",
+ "Plain text document" : "Текстовый документ",
+ "Rich Text document" : "Документ в формате Rich Text",
+ "Electronic business card" : "Цифровая визитная карточка",
+ "C++ source code" : "Исходный код на языке C++",
+ "LDIF address book" : "Адресная книга в формате LDIF",
+ "NFO document" : "Файл описания в формате NFO",
+ "PHP source" : "Исходный код на языке PHP",
+ "Python script" : "Файл сценария на языке Python",
+ "ReStructuredText document" : "Документ ReStructuredText",
+ "3GPP multimedia file" : "Мультимедийный файл в формате 3GPP",
+ "MPEG video" : "Видеофайл в формате MPEG",
+ "DV video" : "Видеофайл в формате DV",
+ "MPEG-2 transport stream" : "Транспортный поток в формате MPEG-2",
+ "MPEG-4 video" : "Видеофайл в формате MPEG-4",
+ "Ogg video" : "Видеофайл в формате Ogg",
+ "QuickTime video" : "Видеофайл в формате QuickTime",
+ "WebM video" : "Видеофайл в формате WebM",
+ "Flash video" : "Видеофайл в формате Flash",
+ "Matroska video" : "Видеофайл в формате Matroska",
+ "Windows Media video" : "Видеофайл в формате Windows Media",
+ "AVI video" : "Видеофайл в формате AVI",
"Error occurred while checking server setup" : "Произошла ошибка при проверке настроек сервера",
"For more details see the {linkstart}documentation ↗{linkend}." : "За дополнительными сведениями обратитесь к {linkstart}документации ↗{linkend}.",
"unknown text" : "неизвестный текст",
@@ -148,6 +267,8 @@ OC.L10N.register(
"Account name" : "Имя учётной записи",
"Server side authentication failed!" : "Ошибка аутентификации на стороне сервера!",
"Please contact your administrator." : "Обратитесь к своему администратору.",
+ "Session error" : "Ошибка сеанса",
+ "It appears your session token has expired, please refresh the page and try again." : "Похоже, токен вашей сессии истёк. Пожалуйста, обновите страницу и попробуйте снова.",
"An internal error occurred." : "Произошла внутренняя ошибка.",
"Please try again or contact your administrator." : "Попробуйте ещё раз или свяжитесь со своим администратором",
"Password" : "Пароль",
@@ -207,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "Форма входа отключена.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Диалог входа отключен. Используйте другой способ входа или свяжитесь с администратором.",
"More actions" : "Больше действий",
+ "User menu" : "Меню пользователя",
+ "You will be identified as {user} by the account owner." : "Владелец учётной записи будет видеть вас как {user}.",
+ "You are currently not identified." : "В данный момент вы не идентифицированы.",
+ "Set public name" : "Задать публичное имя",
+ "Change public name" : "Изменить публичное имя",
"Password is too weak" : "Пароль слишком слабый",
"Password is weak" : "Пароль слабый",
"Password is average" : "Пароль средний",
@@ -300,9 +426,10 @@ OC.L10N.register(
"Admin" : "Администрирование",
"Help" : "Помощь",
"Access forbidden" : "Доступ запрещён",
+ "You are not allowed to access this page." : "Вам не разрешен доступ к этой странице.",
+ "Back to %s" : "Вернуться к %s",
"Page not found" : "Страница не найдена",
"The page could not be found on the server or you may not be allowed to view it." : "Страница не найдена на сервере, или у вас нет прав на ее просмотр.",
- "Back to %s" : "Вернуться к %s",
"Too many requests" : "Превышено количество запросов",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Превышено количество запросов из вашей сети. Попробуйте позднее или сообщите администратору об этой ошибке.",
"Error" : "Ошибка",
@@ -378,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Этот сервер %s находится в режиме технического обслуживания, которое может занять некоторое время.",
"This page will refresh itself when the instance is available again." : "Эта страница обновится автоматически когда сервер снова станет доступен.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Обратитесь к вашему системному администратору если это сообщение не исчезает или появляется неожиданно.",
- "Currently open" : "Сейчас открыто",
- "Login with username or email" : "Войти по имени пользователя или адресу эл. почты",
- "Login with username" : "Войти по имени пользователя",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Текстовые сообщения, видеозвонки, демонстрация содержимого экрана, онлайн общение и веб-конференции на ПК и мобильных устройствах. ",
"You have not added any info yet" : "Вы ещё не добавили никакой информации",
"{user} has not added any info yet" : "Пользователь {user} ещё не добавил(а) никакой информации",
"Error opening the user status modal, try hard refreshing the page" : "Произошла ошибка при открытии модального окна пользователя, попробуйте обновить страницу",
"Edit Profile" : "Редактирование профиля",
"The headline and about sections will show up here" : "Разделы \"Заголовок\" и \"О вас\" будут отображаться здесь",
- "Error loading message template: {error}" : "Ошибка загрузки шаблона сообщений: {error}",
"Very weak password" : "Очень слабый пароль",
"Weak password" : "Слабый пароль",
"So-so password" : "Так себе пароль",
diff --git a/core/l10n/ru.json b/core/l10n/ru.json
index 8bb83854526..f4f2442d2e4 100644
--- a/core/l10n/ru.json
+++ b/core/l10n/ru.json
@@ -25,6 +25,7 @@
"Could not complete login" : "Не удалось завершить вход в систему",
"State token missing" : "Отсутствует токен состояния",
"Your login token is invalid or has expired" : "Ваш токен неверен или истёк",
+ "Please use original client" : "Используйте оригинальное приложение-клиент",
"This community release of Nextcloud is unsupported and push notifications are limited." : "Используется сборка Nextcloud для сообщества. Данная сборка не поддерживается и имеет ограниченный функционал push-уведомлений.",
"Login" : "Войти",
"Unsupported email length (>255)" : "Неподдерживаемая длина адреса эл. почты (более 255 символов)",
@@ -41,6 +42,7 @@
"Task not found" : "Задача не найдена",
"Internal error" : "Внутренняя ошибка",
"Not found" : "Не найдено",
+ "Node is locked" : "Узел заблокирован",
"Bad request" : "Неверный запрос",
"Requested task type does not exist" : "Запрошенный тип задачи не существует",
"Necessary language model provider is not available" : "Необходимый поставщик языковой модели недоступен",
@@ -49,6 +51,11 @@
"No translation provider available" : "Поставщик услуг перевода недоступен",
"Could not detect language" : "Не удалось определить язык",
"Unable to translate" : "Не удается перевести",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Шаг восстановления:",
+ "Repair info:" : "Информация восстановления:",
+ "Repair warning:" : "Предупреждение восстановления:",
+ "Repair error:" : "Ошибка восстановления:",
"Nextcloud Server" : "Сервер Nextcloud",
"Some of your link shares have been removed" : "Некоторые из ваших ссылок на общие ресурсы были удалены",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Из-за ошибки в безопасности нам пришлось удалить некоторые из ваших ссылок на опубликованные файлы или папки. Перейдите по ссылке для получения дополнительной информации.",
@@ -56,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Для увеличения лимита пользователей введите код подписки в приложении «Поддержка». Оформление подписки рекомендуется при использовании Nexcloud в бизнесе, а также позволяет получить дополнительные преимущества, предлагаемые Nextcloud для корпоративных пользователей.",
"Learn more ↗" : "Дополнительная информация ↗",
"Preparing update" : "Подготовка к обновлению",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Шаг восстановления:",
- "Repair info:" : "Информация восстановления:",
- "Repair warning:" : "Предупреждение восстановления:",
- "Repair error:" : "Ошибка восстановления:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Пожалуйста, используйте обновление из терминала, поскольку обновление через браузер отключено в вашем файле конфигурации config.php.",
"Turned on maintenance mode" : "Включён режим обслуживания ",
"Turned off maintenance mode" : "Отключён режим обслуживания",
@@ -77,8 +79,125 @@
"%s (incompatible)" : "%s (несовместимое)",
"The following apps have been disabled: %s" : "Были отключены следующие приложения: %s",
"Already up to date" : "Не нуждается в обновлении",
+ "Windows Command Script" : "Командный сценарий Windows",
+ "Electronic book document" : "Электронная книга",
+ "TrueType Font Collection" : "Набор шрифтов TrueType",
+ "Web Open Font Format" : "Файл шрифта в формате Open Font",
+ "GPX geographic data" : "Пространственные данные GPX",
+ "Gzip archive" : "Архив Gzip",
+ "Adobe Illustrator document" : "Файл Adode Illustrator",
+ "Java source code" : "Исходный код на языке Java",
+ "JavaScript source code" : "Исходный код на языке JavaScript",
+ "JSON document" : "Файл в формате JSON",
+ "Microsoft Access database" : "База данных Microsoft Access",
+ "Microsoft OneNote document" : "Документ Microsoft OneNote",
+ "Microsoft Word document" : "Документ Microsoft Word",
"Unknown" : "Неизвестно",
+ "PDF document" : "Документ в формате PDF",
+ "PostScript document" : "Документ в формате PostScript",
+ "RSS summary" : "RSS-сводка",
+ "Android package" : "Пакет Android",
+ "KML geographic data" : "Пространственные данные в формате MKL",
+ "KML geographic compressed data" : "Сжатые пространственные данные в формате KML",
+ "Lotus Word Pro document" : "Документ Lotus Word Pro",
+ "Excel spreadsheet" : "Таблица Excel",
+ "Excel add-in" : "Дополнение Excel",
+ "Excel 2007 binary spreadsheet" : "Таблица в двоичном формате Excel 2007",
+ "Excel spreadsheet template" : "Шаблон таблицы Excel",
+ "Outlook Message" : "Сообщение Outlook",
+ "PowerPoint presentation" : "Презентация Powerpoint",
+ "PowerPoint add-in" : "Дополнение Powerpoint",
+ "PowerPoint presentation template" : "Шаблон презентации Powerpoint",
+ "Word document" : "Документ Word",
+ "ODF formula" : "Формула в формате ODF",
+ "ODG drawing" : "Рисунок в формате ODG",
+ "ODG drawing (Flat XML)" : "Рисунок в формате ODG (простой XML)",
+ "ODG template" : "Шаблон ODG",
+ "ODP presentation" : "Презентация в формате ODP",
+ "ODP presentation (Flat XML)" : "Презентация в формате ODP (простой XML)",
+ "ODP template" : "Шаблон ODP",
+ "ODS spreadsheet" : "Таблица ODS",
+ "ODS spreadsheet (Flat XML)" : "Таблица ODS (плоский XML)",
+ "ODS template" : "Шаблон ODS",
+ "ODT document" : "Документ ODT",
+ "ODT document (Flat XML)" : "Документ ODT (плоский XML)",
+ "ODT template" : "Шаблон ODT",
+ "PowerPoint 2007 presentation" : "Презентация PowerPoint 2007",
+ "PowerPoint 2007 show" : "Демонстрация PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Шаблон презентации PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Таблица Excel 2007",
+ "Excel 2007 spreadsheet template" : "Шаблон таблицы Excel 2007",
+ "Word 2007 document" : "Документ Word 2007",
+ "Word 2007 document template" : "Шаблон документа Word 2007",
+ "Microsoft Visio document" : "Документ Microsoft Visio",
+ "WordPerfect document" : "Документ WordPerfect",
+ "7-zip archive" : "Архив 7-zip",
+ "Blender scene" : "Сцена Blender",
+ "Bzip2 archive" : "Архив Bzip2",
+ "Debian package" : "Пакет Debian",
+ "FictionBook document" : "Документ FictionBook",
+ "Unknown font" : "Неизвестный шрифт",
+ "Krita document" : "Документ Krita",
+ "Mobipocket e-book" : "Электронная книга Mobipocket",
+ "Windows Installer package" : "Пакет Windows Installer",
+ "Perl script" : "Сценарий Perl",
+ "PHP script" : "Сценарий PHP",
+ "Tar archive" : "Архив tar",
+ "XML document" : "Документ в формате XML",
+ "YAML document" : "Документ в формате YAML",
+ "Zip archive" : "Архив zip",
+ "Zstandard archive" : "Архив zstandart",
+ "AAC audio" : "Звуковой файл в формате AAC",
+ "FLAC audio" : "Звуковой файл в формате FLAC",
+ "MPEG-4 audio" : "Звуковой файл в формате MPEG-4",
+ "MP3 audio" : "Звуковой файл в формате MP3",
+ "Ogg audio" : "Звуковой файл в формате ogg",
+ "RIFF/WAVe standard Audio" : "Стандартное аудио RIFF/WAVe",
+ "WebM audio" : "Аудио WebM",
+ "MP3 ShoutCast playlist" : "Плейлист MP3 ShoutCast",
+ "Windows BMP image" : "Точечный рисунок Windows",
+ "Better Portable Graphics image" : "Изображение Better Portable Graphics",
+ "EMF image" : "Изображение в формате EMF",
+ "GIF image" : "Изображение в формате GIF",
+ "HEIC image" : "Изображение в формате HEIC",
+ "HEIF image" : "Изображение в формате HEIF",
+ "JPEG-2000 JP2 image" : "Изображение в формате JPEG-2000 JP2",
+ "JPEG image" : "Изображение в формате JPEG",
"PNG image" : "Изображение PNG",
+ "SVG image" : "Изображение в формате PNG",
+ "Truevision Targa image" : "Изображение в формате Truevision Targa",
+ "TIFF image" : "Изображение в формате TIFF",
+ "WebP image" : "Изображение в формате WebP",
+ "Digital raw image" : "Файл цифрового негатива",
+ "Windows Icon" : "Значок Windows",
+ "Email message" : "Сообщение эл. почты",
+ "VCS/ICS calendar" : "Календарь VCS/ICS",
+ "CSS stylesheet" : "Таблица стилей CSS",
+ "CSV document" : "Документ в формате CSV",
+ "HTML document" : "Документ в формате HTML",
+ "Markdown document" : "Документ в формате Markdown",
+ "Org-mode file" : "Файл Org-mode",
+ "Plain text document" : "Текстовый документ",
+ "Rich Text document" : "Документ в формате Rich Text",
+ "Electronic business card" : "Цифровая визитная карточка",
+ "C++ source code" : "Исходный код на языке C++",
+ "LDIF address book" : "Адресная книга в формате LDIF",
+ "NFO document" : "Файл описания в формате NFO",
+ "PHP source" : "Исходный код на языке PHP",
+ "Python script" : "Файл сценария на языке Python",
+ "ReStructuredText document" : "Документ ReStructuredText",
+ "3GPP multimedia file" : "Мультимедийный файл в формате 3GPP",
+ "MPEG video" : "Видеофайл в формате MPEG",
+ "DV video" : "Видеофайл в формате DV",
+ "MPEG-2 transport stream" : "Транспортный поток в формате MPEG-2",
+ "MPEG-4 video" : "Видеофайл в формате MPEG-4",
+ "Ogg video" : "Видеофайл в формате Ogg",
+ "QuickTime video" : "Видеофайл в формате QuickTime",
+ "WebM video" : "Видеофайл в формате WebM",
+ "Flash video" : "Видеофайл в формате Flash",
+ "Matroska video" : "Видеофайл в формате Matroska",
+ "Windows Media video" : "Видеофайл в формате Windows Media",
+ "AVI video" : "Видеофайл в формате AVI",
"Error occurred while checking server setup" : "Произошла ошибка при проверке настроек сервера",
"For more details see the {linkstart}documentation ↗{linkend}." : "За дополнительными сведениями обратитесь к {linkstart}документации ↗{linkend}.",
"unknown text" : "неизвестный текст",
@@ -146,6 +265,8 @@
"Account name" : "Имя учётной записи",
"Server side authentication failed!" : "Ошибка аутентификации на стороне сервера!",
"Please contact your administrator." : "Обратитесь к своему администратору.",
+ "Session error" : "Ошибка сеанса",
+ "It appears your session token has expired, please refresh the page and try again." : "Похоже, токен вашей сессии истёк. Пожалуйста, обновите страницу и попробуйте снова.",
"An internal error occurred." : "Произошла внутренняя ошибка.",
"Please try again or contact your administrator." : "Попробуйте ещё раз или свяжитесь со своим администратором",
"Password" : "Пароль",
@@ -205,6 +326,11 @@
"Login form is disabled." : "Форма входа отключена.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Диалог входа отключен. Используйте другой способ входа или свяжитесь с администратором.",
"More actions" : "Больше действий",
+ "User menu" : "Меню пользователя",
+ "You will be identified as {user} by the account owner." : "Владелец учётной записи будет видеть вас как {user}.",
+ "You are currently not identified." : "В данный момент вы не идентифицированы.",
+ "Set public name" : "Задать публичное имя",
+ "Change public name" : "Изменить публичное имя",
"Password is too weak" : "Пароль слишком слабый",
"Password is weak" : "Пароль слабый",
"Password is average" : "Пароль средний",
@@ -298,9 +424,10 @@
"Admin" : "Администрирование",
"Help" : "Помощь",
"Access forbidden" : "Доступ запрещён",
+ "You are not allowed to access this page." : "Вам не разрешен доступ к этой странице.",
+ "Back to %s" : "Вернуться к %s",
"Page not found" : "Страница не найдена",
"The page could not be found on the server or you may not be allowed to view it." : "Страница не найдена на сервере, или у вас нет прав на ее просмотр.",
- "Back to %s" : "Вернуться к %s",
"Too many requests" : "Превышено количество запросов",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Превышено количество запросов из вашей сети. Попробуйте позднее или сообщите администратору об этой ошибке.",
"Error" : "Ошибка",
@@ -376,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Этот сервер %s находится в режиме технического обслуживания, которое может занять некоторое время.",
"This page will refresh itself when the instance is available again." : "Эта страница обновится автоматически когда сервер снова станет доступен.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Обратитесь к вашему системному администратору если это сообщение не исчезает или появляется неожиданно.",
- "Currently open" : "Сейчас открыто",
- "Login with username or email" : "Войти по имени пользователя или адресу эл. почты",
- "Login with username" : "Войти по имени пользователя",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Текстовые сообщения, видеозвонки, демонстрация содержимого экрана, онлайн общение и веб-конференции на ПК и мобильных устройствах. ",
"You have not added any info yet" : "Вы ещё не добавили никакой информации",
"{user} has not added any info yet" : "Пользователь {user} ещё не добавил(а) никакой информации",
"Error opening the user status modal, try hard refreshing the page" : "Произошла ошибка при открытии модального окна пользователя, попробуйте обновить страницу",
"Edit Profile" : "Редактирование профиля",
"The headline and about sections will show up here" : "Разделы \"Заголовок\" и \"О вас\" будут отображаться здесь",
- "Error loading message template: {error}" : "Ошибка загрузки шаблона сообщений: {error}",
"Very weak password" : "Очень слабый пароль",
"Weak password" : "Слабый пароль",
"So-so password" : "Так себе пароль",
diff --git a/core/l10n/sc.js b/core/l10n/sc.js
index a74e2b76384..3f5de2a50f4 100644
--- a/core/l10n/sc.js
+++ b/core/l10n/sc.js
@@ -42,16 +42,16 @@ OC.L10N.register(
"No translation provider available" : "Nissunu servìtziu de tradutzione a disponimentu",
"Could not detect language" : "Impossìbile rilevare sa lìngua",
"Unable to translate" : "Impossìbile tradùere",
- "Nextcloud Server" : "Serbidore de Nextcloud",
- "Some of your link shares have been removed" : "Carchi ligòngiu de cumpartzidura tuo nch'est istadu bogadu",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Pro un'errore de seguresa nch'amus dèpidu bogare carchi ligòngiu de cumpartzidura. Càstia su ligòngiu pro àteras informatziones.",
- "Learn more ↗" : "Àteras informatziones ↗",
- "Preparing update" : "Aprontende s'agiornamentu",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Passu de s'acontzu:",
"Repair info:" : "Informatziones de s'acontzu:",
"Repair warning:" : "Avisu de s'acontzu:",
"Repair error:" : "Errore in s'acontzu:",
+ "Nextcloud Server" : "Serbidore de Nextcloud",
+ "Some of your link shares have been removed" : "Carchi ligòngiu de cumpartzidura tuo nch'est istadu bogadu",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Pro un'errore de seguresa nch'amus dèpidu bogare carchi ligòngiu de cumpartzidura. Càstia su ligòngiu pro àteras informatziones.",
+ "Learn more ↗" : "Àteras informatziones ↗",
+ "Preparing update" : "Aprontende s'agiornamentu",
"Turned on maintenance mode" : "Furriadu a modalidade de mantenidura",
"Turned off maintenance mode" : "Modalidade de mantenidura disativada",
"Maintenance mode is kept active" : "Sa modalidade de mantenidura abarrat ativa",
@@ -242,11 +242,12 @@ OC.L10N.register(
"Collaborative tags" : "Etichetas collaborativas",
"No tags found" : "Peruna eticheta agatada",
"Personal" : "Personale",
+ "Accounts" : "Accounts",
"Admin" : "Amministratzione",
"Help" : "Agiudu",
"Access forbidden" : "Atzessu proibidu",
- "Page not found" : "Pàgina no agatada",
"Back to %s" : "A coa a %s",
+ "Page not found" : "Pàgina no agatada",
"Too many requests" : "Tropu dimandas",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Tropu rechestas sunt arribadas dae sa rete tua. Torra a proare prus a tardu o cuntata s'amministradore tuo chi ddoe at un'errore.",
"Error" : "Errore",
@@ -316,13 +317,9 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Immoe custa istàntzia de %s est in modalidade de mantenidura, e podet trigare unu pagu.",
"This page will refresh itself when the instance is available again." : "Custa pàgina s'at a atualizare cando s'istàntzia at a èssere torra a disponimentu.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Cuntata s'amministratzione de sistema si custu messàgiu abarrat o torrat a cumpàrrere.",
- "Currently open" : "Abertos immoe",
- "Login with username or email" : "Atzede cun nùmene de utente o indiritzu de posta eletrònica",
- "Login with username" : "Atzede cun nùmene de utente",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Tzarradas, video mutidas, cumpartzidura de s'ischermu, reuniones in lìnia e vìdeo-cunferèntzias – in su navigadore tuo e cun aplicatziones mòbiles.",
"Edit Profile" : "Modìfica su profilu",
"The headline and about sections will show up here" : "Is setziones de tìtulu e informatziones ant a èssere ammustradas inoghe",
- "Error loading message template: {error}" : "Errore in su carrigamentu de su modellu de messàgiu: {error}",
"Very weak password" : "Crae dèbile meda",
"Weak password" : "Crae dèbile",
"So-so password" : "Crae aici aici",
diff --git a/core/l10n/sc.json b/core/l10n/sc.json
index 3a6f4ae81af..bde88fa81f6 100644
--- a/core/l10n/sc.json
+++ b/core/l10n/sc.json
@@ -40,16 +40,16 @@
"No translation provider available" : "Nissunu servìtziu de tradutzione a disponimentu",
"Could not detect language" : "Impossìbile rilevare sa lìngua",
"Unable to translate" : "Impossìbile tradùere",
- "Nextcloud Server" : "Serbidore de Nextcloud",
- "Some of your link shares have been removed" : "Carchi ligòngiu de cumpartzidura tuo nch'est istadu bogadu",
- "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Pro un'errore de seguresa nch'amus dèpidu bogare carchi ligòngiu de cumpartzidura. Càstia su ligòngiu pro àteras informatziones.",
- "Learn more ↗" : "Àteras informatziones ↗",
- "Preparing update" : "Aprontende s'agiornamentu",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Passu de s'acontzu:",
"Repair info:" : "Informatziones de s'acontzu:",
"Repair warning:" : "Avisu de s'acontzu:",
"Repair error:" : "Errore in s'acontzu:",
+ "Nextcloud Server" : "Serbidore de Nextcloud",
+ "Some of your link shares have been removed" : "Carchi ligòngiu de cumpartzidura tuo nch'est istadu bogadu",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Pro un'errore de seguresa nch'amus dèpidu bogare carchi ligòngiu de cumpartzidura. Càstia su ligòngiu pro àteras informatziones.",
+ "Learn more ↗" : "Àteras informatziones ↗",
+ "Preparing update" : "Aprontende s'agiornamentu",
"Turned on maintenance mode" : "Furriadu a modalidade de mantenidura",
"Turned off maintenance mode" : "Modalidade de mantenidura disativada",
"Maintenance mode is kept active" : "Sa modalidade de mantenidura abarrat ativa",
@@ -240,11 +240,12 @@
"Collaborative tags" : "Etichetas collaborativas",
"No tags found" : "Peruna eticheta agatada",
"Personal" : "Personale",
+ "Accounts" : "Accounts",
"Admin" : "Amministratzione",
"Help" : "Agiudu",
"Access forbidden" : "Atzessu proibidu",
- "Page not found" : "Pàgina no agatada",
"Back to %s" : "A coa a %s",
+ "Page not found" : "Pàgina no agatada",
"Too many requests" : "Tropu dimandas",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Tropu rechestas sunt arribadas dae sa rete tua. Torra a proare prus a tardu o cuntata s'amministradore tuo chi ddoe at un'errore.",
"Error" : "Errore",
@@ -314,13 +315,9 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Immoe custa istàntzia de %s est in modalidade de mantenidura, e podet trigare unu pagu.",
"This page will refresh itself when the instance is available again." : "Custa pàgina s'at a atualizare cando s'istàntzia at a èssere torra a disponimentu.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Cuntata s'amministratzione de sistema si custu messàgiu abarrat o torrat a cumpàrrere.",
- "Currently open" : "Abertos immoe",
- "Login with username or email" : "Atzede cun nùmene de utente o indiritzu de posta eletrònica",
- "Login with username" : "Atzede cun nùmene de utente",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Tzarradas, video mutidas, cumpartzidura de s'ischermu, reuniones in lìnia e vìdeo-cunferèntzias – in su navigadore tuo e cun aplicatziones mòbiles.",
"Edit Profile" : "Modìfica su profilu",
"The headline and about sections will show up here" : "Is setziones de tìtulu e informatziones ant a èssere ammustradas inoghe",
- "Error loading message template: {error}" : "Errore in su carrigamentu de su modellu de messàgiu: {error}",
"Very weak password" : "Crae dèbile meda",
"Weak password" : "Crae dèbile",
"So-so password" : "Crae aici aici",
diff --git a/core/l10n/sk.js b/core/l10n/sk.js
index ad3af1b10df..18a857662a8 100644
--- a/core/l10n/sk.js
+++ b/core/l10n/sk.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Úloha nebola nájdená",
"Internal error" : "Interná chyba",
"Not found" : "Nenájdené",
+ "Node is locked" : "Uzol je uzamknutý",
"Bad request" : "Neplatná požiadavka",
"Requested task type does not exist" : "Vyžiadaný typ úlohy neexistuje",
"Necessary language model provider is not available" : "Potrebný poskytovateľ jazykového modelu nie je dostupný",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Nie je dostupný žiadny poskytovateľ prekladu",
"Could not detect language" : "Nepodarilo sa zistiť jazyk",
"Unable to translate" : "Nie je možné preložiť",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Krok opravy:",
+ "Repair info:" : "Informácie o oprave:",
+ "Repair warning:" : "Varovanie o oprave:",
+ "Repair error:" : "Chyba opravy:",
"Nextcloud Server" : "Nextcloud Server",
"Some of your link shares have been removed" : "Niektoré odkazy so sprístupnením boli odstránené.",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Kvôli bezpečnostnej chyba sme museli odstrániť niektoré z vašich odkazov pre zdieľanie. Pre viac informácií nasledujte tento link.",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Zadajte svoj kľúč predplatného v aplikácii podpory, aby ste zvýšili limit pre množstvo účtov. To vám tiež poskytuje všetky ďalšie výhody, ktoré Nextcloud Enterprise ponúka a je vysoko odporúčaný pre prevádzku vo firemnom prostredí.",
"Learn more ↗" : "Viac informácií ↗",
"Preparing update" : "Pripravuje sa aktualizácia",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Krok opravy:",
- "Repair info:" : "Informácie o oprave:",
- "Repair warning:" : "Varovanie o oprave:",
- "Repair error:" : "Chyba opravy:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Prosím, použite aktualizáciu z príkazového riadka, pretože aktualizácia cez prehliadač je zakázaná vo vašom config.php.",
"Turned on maintenance mode" : "Mód údržby je zapnutý",
"Turned off maintenance mode" : "Mód údržby je vypnutý",
@@ -80,7 +81,81 @@ OC.L10N.register(
"%s (incompatible)" : "%s (nekompatibilná)",
"The following apps have been disabled: %s" : "Nasledujúce aplikácie boli vypnuté: %s",
"Already up to date" : "Už aktuálne",
+ "Electronic book document" : "Dokument elektronickej knihy",
+ "TrueType Font Collection" : "Kolekcia fontov TrueType",
+ "GPX geographic data" : "GPX geografické dáta",
+ "Gzip archive" : "Gzip archív",
+ "Adobe Illustrator document" : "Dokument Adobe Illustrator",
+ "Java source code" : "Zdrojový kód Java",
+ "JavaScript source code" : "Zdrojový kód Javascriptu",
+ "JSON document" : "Dokument JSON",
+ "Microsoft Access database" : "Databáza Microsoft Access",
+ "Microsoft OneNote document" : "Dokument Microsoft OneNote",
+ "Microsoft Word document" : "Dokument Microsoft Word",
"Unknown" : "Neznámy",
+ "PDF document" : "PDF dokument",
+ "PostScript document" : "Dokument PostScriptu",
+ "RSS summary" : "Zhrnutie RSS",
+ "Android package" : "Balík pre Android",
+ "KML geographic data" : "KML geografické dáta",
+ "KML geographic compressed data" : "KML komprimované geografické dáta",
+ "Lotus Word Pro document" : "Dokument Lotus Word Pro",
+ "Excel spreadsheet" : "Tabuľka Excelu",
+ "Excel add-in" : "Rozšírenie Excelu",
+ "Excel 2007 binary spreadsheet" : "Binárna tabuľka Excel 2007",
+ "Excel spreadsheet template" : "Šablóna tabuľky Excel",
+ "Outlook Message" : "Správa Outlooku",
+ "PowerPoint presentation" : "PowerPoint prezentácia",
+ "PowerPoint add-in" : "Rozšírenie PowerPointu",
+ "PowerPoint presentation template" : "Šablóna prezentácie PowerPoint",
+ "Word document" : "Dokument Wordu",
+ "ODF formula" : "Vzorec ODF",
+ "ODG drawing" : "Kresba ODG",
+ "ODG drawing (Flat XML)" : "Výkres ODG (Čisté XML)",
+ "ODG template" : "Šablóna ODG",
+ "ODP presentation" : "Prezentácia ODP",
+ "ODP presentation (Flat XML)" : "Prezentácia ODP (Čisté XML)",
+ "ODP template" : "Šablóna ODP",
+ "ODS spreadsheet" : "Tabuľka ODS",
+ "ODS spreadsheet (Flat XML)" : "Tabuľka ODS (Čisté XML)",
+ "ODS template" : "Šablóna ODS",
+ "ODT document" : "Dokument ODT",
+ "ODT document (Flat XML)" : "Dokument ODT (Čisté XML)",
+ "ODT template" : "Šablóna ODT",
+ "PowerPoint 2007 presentation" : "Prezentácia PowerPointu 2007",
+ "PowerPoint 2007 show" : "Prezentácia PowerPointu 2007",
+ "PowerPoint 2007 presentation template" : "Šablóna prezentácie PowerPointu 2007",
+ "Excel 2007 spreadsheet" : "Tabuľka Excelu 2007",
+ "Excel 2007 spreadsheet template" : "Šablóna tabuľky Excelu 2007",
+ "Word 2007 document" : "Dokument Wordu 2007",
+ "Word 2007 document template" : "Šablóna dokumentu Wordu 2007",
+ "Microsoft Visio document" : "Dokument Microsoft Visio",
+ "WordPerfect document" : "Dokument WordPerfectu",
+ "7-zip archive" : "7-zip archív",
+ "Blender scene" : "Scéna Blenderu",
+ "Bzip2 archive" : "Bzip2 archív",
+ "Debian package" : "Balík Debianu",
+ "FictionBook document" : "Dokument FictionBook",
+ "Unknown font" : "Neznáme písmo",
+ "Krita document" : "Dokument Krita",
+ "Mobipocket e-book" : "E-kniha Mobipocket",
+ "Windows Installer package" : "Inštalačný balík Windows",
+ "Perl script" : "Skript Perlu",
+ "PHP script" : "Skript PHP",
+ "Tar archive" : "Archív TAR",
+ "XML document" : "Dokument XML",
+ "YAML document" : "Dokument YAML",
+ "Zip archive" : "Zip archív",
+ "Zstandard archive" : "Zstandartd archív",
+ "AAC audio" : "AAC audio",
+ "FLAC audio" : "FLAC audio",
+ "MPEG-4 audio" : "MPEG-4 audio",
+ "MP3 audio" : "MP3 audio",
+ "Ogg audio" : "Ogg audio",
+ "RIFF/WAVe standard Audio" : "RIFF/WAVe standard Audio",
+ "WebM audio" : "WebM audio",
+ "MP3 ShoutCast playlist" : "MP3 ShoutCast playlist",
+ "Windows BMP image" : "Obrázok Windows BMP",
"Error occurred while checking server setup" : "Počas kontroly nastavenia serveru sa stala chyba",
"For more details see the {linkstart}documentation ↗{linkend}." : "Viac podrobností nájdete v {linkstart}dokumentácii ↗{linkend}.",
"unknown text" : "neznámy text",
@@ -302,9 +377,9 @@ OC.L10N.register(
"Admin" : "Administrácia",
"Help" : "Pomoc",
"Access forbidden" : "Prístup odmietnutý",
+ "Back to %s" : "Späť na %s",
"Page not found" : "Stránka nenájdená",
"The page could not be found on the server or you may not be allowed to view it." : "Túto stránku sa nepodarilo na serveri nájsť alebo nemáte oprávnenie na jej zobrazenie.",
- "Back to %s" : "Späť na %s",
"Too many requests" : "Priveľa požiadavok",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Príliš mnoho požiadaviek z vašej siete. Skúste to znovu neskôr alebo kontaktujte svojho administrátora ak je toto chyba.",
"Error" : "Chyba",
@@ -380,16 +455,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Táto %s inštancia je v súčasnej dobe v režime údržby. Počkajte prosím.",
"This page will refresh itself when the instance is available again." : "Táto stránka sa obnoví sama hneď ako bude inštancia znovu dostupná.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Kontaktujte prosím správcu systému, ak sa táto správa objavuje opakovane alebo neočakávane.",
- "Currently open" : "V súčasnosti otvorené",
- "Login with username or email" : "Prihlásiť sa pomocou užívateľského mena alebo e-mailu",
- "Login with username" : "Prihlásiť sa s užívateľským menom",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Četovanie, videohovory, zdieľanie obrazovky, online stretnutia a webové konferencie - vo vašom prehliadači a pomocou mobilných aplikácií.",
"You have not added any info yet" : "Zatiaľ ste nepridali žiadne informácie",
"{user} has not added any info yet" : "{user} zatiaľ nepridal žiadne informácie",
"Error opening the user status modal, try hard refreshing the page" : "Chyba pri otváraní modálneho okna stavu používateľa, skúste stránku obnoviť",
"Edit Profile" : "Upraviť rofil",
"The headline and about sections will show up here" : "Tu sa zobrazí titul a sekcia Informácie",
- "Error loading message template: {error}" : "Chyba pri nahrávaní šablóny správy: {error}",
"Very weak password" : "Veľmi slabé heslo",
"Weak password" : "Slabé heslo",
"So-so password" : "Priemerné heslo",
diff --git a/core/l10n/sk.json b/core/l10n/sk.json
index adddcfbcf44..937728badcb 100644
--- a/core/l10n/sk.json
+++ b/core/l10n/sk.json
@@ -42,6 +42,7 @@
"Task not found" : "Úloha nebola nájdená",
"Internal error" : "Interná chyba",
"Not found" : "Nenájdené",
+ "Node is locked" : "Uzol je uzamknutý",
"Bad request" : "Neplatná požiadavka",
"Requested task type does not exist" : "Vyžiadaný typ úlohy neexistuje",
"Necessary language model provider is not available" : "Potrebný poskytovateľ jazykového modelu nie je dostupný",
@@ -50,6 +51,11 @@
"No translation provider available" : "Nie je dostupný žiadny poskytovateľ prekladu",
"Could not detect language" : "Nepodarilo sa zistiť jazyk",
"Unable to translate" : "Nie je možné preložiť",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Krok opravy:",
+ "Repair info:" : "Informácie o oprave:",
+ "Repair warning:" : "Varovanie o oprave:",
+ "Repair error:" : "Chyba opravy:",
"Nextcloud Server" : "Nextcloud Server",
"Some of your link shares have been removed" : "Niektoré odkazy so sprístupnením boli odstránené.",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Kvôli bezpečnostnej chyba sme museli odstrániť niektoré z vašich odkazov pre zdieľanie. Pre viac informácií nasledujte tento link.",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Zadajte svoj kľúč predplatného v aplikácii podpory, aby ste zvýšili limit pre množstvo účtov. To vám tiež poskytuje všetky ďalšie výhody, ktoré Nextcloud Enterprise ponúka a je vysoko odporúčaný pre prevádzku vo firemnom prostredí.",
"Learn more ↗" : "Viac informácií ↗",
"Preparing update" : "Pripravuje sa aktualizácia",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Krok opravy:",
- "Repair info:" : "Informácie o oprave:",
- "Repair warning:" : "Varovanie o oprave:",
- "Repair error:" : "Chyba opravy:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Prosím, použite aktualizáciu z príkazového riadka, pretože aktualizácia cez prehliadač je zakázaná vo vašom config.php.",
"Turned on maintenance mode" : "Mód údržby je zapnutý",
"Turned off maintenance mode" : "Mód údržby je vypnutý",
@@ -78,7 +79,81 @@
"%s (incompatible)" : "%s (nekompatibilná)",
"The following apps have been disabled: %s" : "Nasledujúce aplikácie boli vypnuté: %s",
"Already up to date" : "Už aktuálne",
+ "Electronic book document" : "Dokument elektronickej knihy",
+ "TrueType Font Collection" : "Kolekcia fontov TrueType",
+ "GPX geographic data" : "GPX geografické dáta",
+ "Gzip archive" : "Gzip archív",
+ "Adobe Illustrator document" : "Dokument Adobe Illustrator",
+ "Java source code" : "Zdrojový kód Java",
+ "JavaScript source code" : "Zdrojový kód Javascriptu",
+ "JSON document" : "Dokument JSON",
+ "Microsoft Access database" : "Databáza Microsoft Access",
+ "Microsoft OneNote document" : "Dokument Microsoft OneNote",
+ "Microsoft Word document" : "Dokument Microsoft Word",
"Unknown" : "Neznámy",
+ "PDF document" : "PDF dokument",
+ "PostScript document" : "Dokument PostScriptu",
+ "RSS summary" : "Zhrnutie RSS",
+ "Android package" : "Balík pre Android",
+ "KML geographic data" : "KML geografické dáta",
+ "KML geographic compressed data" : "KML komprimované geografické dáta",
+ "Lotus Word Pro document" : "Dokument Lotus Word Pro",
+ "Excel spreadsheet" : "Tabuľka Excelu",
+ "Excel add-in" : "Rozšírenie Excelu",
+ "Excel 2007 binary spreadsheet" : "Binárna tabuľka Excel 2007",
+ "Excel spreadsheet template" : "Šablóna tabuľky Excel",
+ "Outlook Message" : "Správa Outlooku",
+ "PowerPoint presentation" : "PowerPoint prezentácia",
+ "PowerPoint add-in" : "Rozšírenie PowerPointu",
+ "PowerPoint presentation template" : "Šablóna prezentácie PowerPoint",
+ "Word document" : "Dokument Wordu",
+ "ODF formula" : "Vzorec ODF",
+ "ODG drawing" : "Kresba ODG",
+ "ODG drawing (Flat XML)" : "Výkres ODG (Čisté XML)",
+ "ODG template" : "Šablóna ODG",
+ "ODP presentation" : "Prezentácia ODP",
+ "ODP presentation (Flat XML)" : "Prezentácia ODP (Čisté XML)",
+ "ODP template" : "Šablóna ODP",
+ "ODS spreadsheet" : "Tabuľka ODS",
+ "ODS spreadsheet (Flat XML)" : "Tabuľka ODS (Čisté XML)",
+ "ODS template" : "Šablóna ODS",
+ "ODT document" : "Dokument ODT",
+ "ODT document (Flat XML)" : "Dokument ODT (Čisté XML)",
+ "ODT template" : "Šablóna ODT",
+ "PowerPoint 2007 presentation" : "Prezentácia PowerPointu 2007",
+ "PowerPoint 2007 show" : "Prezentácia PowerPointu 2007",
+ "PowerPoint 2007 presentation template" : "Šablóna prezentácie PowerPointu 2007",
+ "Excel 2007 spreadsheet" : "Tabuľka Excelu 2007",
+ "Excel 2007 spreadsheet template" : "Šablóna tabuľky Excelu 2007",
+ "Word 2007 document" : "Dokument Wordu 2007",
+ "Word 2007 document template" : "Šablóna dokumentu Wordu 2007",
+ "Microsoft Visio document" : "Dokument Microsoft Visio",
+ "WordPerfect document" : "Dokument WordPerfectu",
+ "7-zip archive" : "7-zip archív",
+ "Blender scene" : "Scéna Blenderu",
+ "Bzip2 archive" : "Bzip2 archív",
+ "Debian package" : "Balík Debianu",
+ "FictionBook document" : "Dokument FictionBook",
+ "Unknown font" : "Neznáme písmo",
+ "Krita document" : "Dokument Krita",
+ "Mobipocket e-book" : "E-kniha Mobipocket",
+ "Windows Installer package" : "Inštalačný balík Windows",
+ "Perl script" : "Skript Perlu",
+ "PHP script" : "Skript PHP",
+ "Tar archive" : "Archív TAR",
+ "XML document" : "Dokument XML",
+ "YAML document" : "Dokument YAML",
+ "Zip archive" : "Zip archív",
+ "Zstandard archive" : "Zstandartd archív",
+ "AAC audio" : "AAC audio",
+ "FLAC audio" : "FLAC audio",
+ "MPEG-4 audio" : "MPEG-4 audio",
+ "MP3 audio" : "MP3 audio",
+ "Ogg audio" : "Ogg audio",
+ "RIFF/WAVe standard Audio" : "RIFF/WAVe standard Audio",
+ "WebM audio" : "WebM audio",
+ "MP3 ShoutCast playlist" : "MP3 ShoutCast playlist",
+ "Windows BMP image" : "Obrázok Windows BMP",
"Error occurred while checking server setup" : "Počas kontroly nastavenia serveru sa stala chyba",
"For more details see the {linkstart}documentation ↗{linkend}." : "Viac podrobností nájdete v {linkstart}dokumentácii ↗{linkend}.",
"unknown text" : "neznámy text",
@@ -300,9 +375,9 @@
"Admin" : "Administrácia",
"Help" : "Pomoc",
"Access forbidden" : "Prístup odmietnutý",
+ "Back to %s" : "Späť na %s",
"Page not found" : "Stránka nenájdená",
"The page could not be found on the server or you may not be allowed to view it." : "Túto stránku sa nepodarilo na serveri nájsť alebo nemáte oprávnenie na jej zobrazenie.",
- "Back to %s" : "Späť na %s",
"Too many requests" : "Priveľa požiadavok",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Príliš mnoho požiadaviek z vašej siete. Skúste to znovu neskôr alebo kontaktujte svojho administrátora ak je toto chyba.",
"Error" : "Chyba",
@@ -378,16 +453,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Táto %s inštancia je v súčasnej dobe v režime údržby. Počkajte prosím.",
"This page will refresh itself when the instance is available again." : "Táto stránka sa obnoví sama hneď ako bude inštancia znovu dostupná.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Kontaktujte prosím správcu systému, ak sa táto správa objavuje opakovane alebo neočakávane.",
- "Currently open" : "V súčasnosti otvorené",
- "Login with username or email" : "Prihlásiť sa pomocou užívateľského mena alebo e-mailu",
- "Login with username" : "Prihlásiť sa s užívateľským menom",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Četovanie, videohovory, zdieľanie obrazovky, online stretnutia a webové konferencie - vo vašom prehliadači a pomocou mobilných aplikácií.",
"You have not added any info yet" : "Zatiaľ ste nepridali žiadne informácie",
"{user} has not added any info yet" : "{user} zatiaľ nepridal žiadne informácie",
"Error opening the user status modal, try hard refreshing the page" : "Chyba pri otváraní modálneho okna stavu používateľa, skúste stránku obnoviť",
"Edit Profile" : "Upraviť rofil",
"The headline and about sections will show up here" : "Tu sa zobrazí titul a sekcia Informácie",
- "Error loading message template: {error}" : "Chyba pri nahrávaní šablóny správy: {error}",
"Very weak password" : "Veľmi slabé heslo",
"Weak password" : "Slabé heslo",
"So-so password" : "Priemerné heslo",
diff --git a/core/l10n/sl.js b/core/l10n/sl.js
index 3e2f39dc488..31f10c6e27e 100644
--- a/core/l10n/sl.js
+++ b/core/l10n/sl.js
@@ -27,7 +27,7 @@ OC.L10N.register(
"Could not complete login" : "Prijave ni mogoče dokončati",
"State token missing" : "Manjka žeton stanja",
"Your login token is invalid or has expired" : "Prijavni žeton je neveljaven, ali pa je že potekel.",
- "Please use original client" : "Uporabite izvorni odjemalec",
+ "Please use original client" : "Uporabite izvirnega odjemalca",
"This community release of Nextcloud is unsupported and push notifications are limited." : "Ta skupnostna objava oblaka Nextcloud ni podprta, nekatera potisna obvestila so zato omejena.",
"Login" : "Prijava",
"Unsupported email length (>255)" : "Nepodprta dolžina sporočila ( > 255 )",
@@ -52,6 +52,11 @@ OC.L10N.register(
"No translation provider available" : "Ponudnik prevoda ni na voljo.",
"Could not detect language" : "Ni mogoče zaznati jezika.",
"Unable to translate" : "Ni mogoče prevajati",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Korak nadgradnje:",
+ "Repair info:" : "Podrobnosti nadgradnje:",
+ "Repair warning:" : "Opozorilo nadgradnje:",
+ "Repair error:" : "Napaka nadgradnje:",
"Nextcloud Server" : "Strežnik Nextcloud",
"Some of your link shares have been removed" : "Nekatere povezave za souporabo so bile odstranjene.",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Zaradi varnostnih razlogov so bile nekatere povezave odstranjene. Več podrobnosti je na voljo v uradno izdanem opozorilu.",
@@ -59,11 +64,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Vpišite ključ naročila podpornega programa in povečajte omejitev za uporabnika. S tem pridobite tudi vse dodatne ugodnosti, ki jih omogoča Poslovno okolje Nextcloud. Način je zelo priporočljiv za podjetja.",
"Learn more ↗" : "Več o tem ↗",
"Preparing update" : "Poteka priprava na posodobitev ...",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Korak nadgradnje:",
- "Repair info:" : "Podrobnosti nadgradnje:",
- "Repair warning:" : "Opozorilo nadgradnje:",
- "Repair error:" : "Napaka nadgradnje:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Posodobitev sistema je treba izvesti v ukazni vrstici, ker je posodabljanje z brskalnikom v config.php onemogočeno.",
"Turned on maintenance mode" : "Vzdrževalni način je omogočen ...",
"Turned off maintenance mode" : "Vzdrževalni način je onemogočen.",
@@ -80,8 +80,101 @@ OC.L10N.register(
"%s (incompatible)" : "%s (neskladno)",
"The following apps have been disabled: %s" : "Zaradi neskladnosti so onemogočeni naslednji programi: %s.",
"Already up to date" : "Sistem je že posodobljen",
+ "Windows Command Script" : "Ukazni skript Windows",
+ "Electronic book document" : "Dokument elektronske knjige",
+ "TrueType Font Collection" : "Zbirka pisav TTF",
+ "Web Open Font Format" : "Odprti zapis spletne pisave",
+ "GPX geographic data" : "Geografski podatki GPX",
+ "Gzip archive" : "Arhiv GZIP",
+ "Adobe Illustrator document" : "Dokument Adobe Illustrator",
+ "Java source code" : "Izvorna koda Java",
+ "JavaScript source code" : "Izvorna koda Javascript",
+ "JSON document" : "Dokument JSON",
+ "Microsoft Access database" : "Podatkovna zbirka Microsoft Access",
+ "Microsoft OneNote document" : "Dokument Microsoft OneNote",
+ "Microsoft Word document" : "Dokument Microsoft Word",
"Unknown" : "Neznano",
- "PNG image" : "PNG slika",
+ "PDF document" : "Dokument PDF",
+ "PostScript document" : "Dokument PostScript",
+ "RSS summary" : "Povzetek virov RSS",
+ "Android package" : "Programski paket Android",
+ "KML geographic data" : "Geografski podatki KLM",
+ "KML geographic compressed data" : "Stisnjeni geografski podatki KLM",
+ "Lotus Word Pro document" : "Dokument Lotus Word Pro",
+ "Excel spreadsheet" : "Preglednica Excel",
+ "Excel add-in" : "Razširitev Excel",
+ "Excel spreadsheet template" : "Predloga preglednice Excel",
+ "Outlook Message" : "Sporočilo Outlook",
+ "PowerPoint presentation" : "Predstavitev PowerPoint",
+ "PowerPoint add-in" : "Razširitev PowerPoint",
+ "PowerPoint presentation template" : "Predloga predstavitve PowerPoint",
+ "Word document" : "Dokument Word",
+ "ODF formula" : "Formula ODF",
+ "ODG drawing" : "Risba ODG",
+ "ODG template" : "Predloga ODG",
+ "ODP presentation" : "Predstavitev ODP",
+ "ODP template" : "Predloga ODP",
+ "ODS spreadsheet" : "Preglednica ODS",
+ "ODS template" : "Predloga ODS",
+ "ODT document" : "Dokument ODT",
+ "ODT template" : "Predloga ODT",
+ "PowerPoint 2007 presentation" : "Predstavitev PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Predloga predstavitve PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Preglednica Excel 2007",
+ "Excel 2007 spreadsheet template" : "Predloga preglednice Excel 2007",
+ "Word 2007 document" : "Dokument Word 2007",
+ "Word 2007 document template" : "Predloga dokumenta Word 2007",
+ "Microsoft Visio document" : "Dokument Microsoft Visio",
+ "WordPerfect document" : "Dokument WordPerfect",
+ "7-zip archive" : "Arhiv 7-zip",
+ "Bzip2 archive" : "Arhiv Bzip2",
+ "Debian package" : "Programski paket Debian",
+ "FictionBook document" : "Dokument FictionBook",
+ "Unknown font" : "Neznan zapis pisave",
+ "Krita document" : "Dokument Krita",
+ "Mobipocket e-book" : "Elektronska knjiga Mobipocket",
+ "Windows Installer package" : "Namestitveni paket Windows",
+ "Perl script" : "Skript Perl",
+ "PHP script" : "Skript PHP",
+ "Tar archive" : "Arhiv Tar",
+ "XML document" : "Dokument XML",
+ "YAML document" : "Dokument YAML",
+ "Zip archive" : "Arhiv ZIP",
+ "Zstandard archive" : "Arhiv Zstandard",
+ "AAC audio" : "Zvok AAC",
+ "FLAC audio" : "Zvok FLAC",
+ "MPEG-4 audio" : "Zvok MPEG-4",
+ "MP3 audio" : "Zvok MP3",
+ "Ogg audio" : "Zvok OGG",
+ "WebM audio" : "Zvok WebM",
+ "Windows BMP image" : "Slika Windows BMP",
+ "EMF image" : "Slika EMF",
+ "GIF image" : "Slika GIF",
+ "HEIC image" : "Slika HEIC",
+ "HEIF image" : "Slika HEIF",
+ "JPEG image" : "Slika JPEG",
+ "PNG image" : "Slika PNG",
+ "SVG image" : "Risba SVG",
+ "TIFF image" : "Slika TIFF",
+ "WebP image" : "Slika WebP",
+ "Digital raw image" : "Surova digitalna slika",
+ "Windows Icon" : "Ikona Windows",
+ "VCS/ICS calendar" : "Koledar VCS/ICS",
+ "CSS stylesheet" : "Slogovna predloga CSS",
+ "CSV document" : "Dokument CSV",
+ "HTML document" : "Dokument HTML",
+ "Markdown document" : "Dokument Markdown",
+ "Plain text document" : "Besedilni dokument",
+ "Rich Text document" : "Dokument z obogatenim besedilom",
+ "Electronic business card" : "Elektronska poslovna kartica",
+ "C++ source code" : "Izvorna koda C++",
+ "LDIF address book" : "Imenik LDIF",
+ "NFO document" : "Dokument NFO",
+ "PHP source" : "Izvorna koda PHP",
+ "Python script" : "Skript Python",
+ "MPEG video" : "Video MPEG",
+ "DV video" : "Video DV",
+ "MPEG-4 video" : "Video MPEG-4",
"Error occurred while checking server setup" : "Prišlo je do napake med preverjanjem nastavitev strežnika",
"For more details see the {linkstart}documentation ↗{linkend}." : "Za več podrobnosti preverite {linkstart}dokumentacijo ↗{linkend}.",
"unknown text" : "neznano besedilo",
@@ -173,7 +266,7 @@ OC.L10N.register(
"Schedule work & meetings, synced with all your devices." : "Načrtujte delo in sestanke, ki se samodejno usklajujejo z vsemi vašimi napravami.",
"Keep your colleagues and friends in one place without leaking their private info." : "Združite sodelavce in prijatelje na enem mestu brez skrbi za njihove zasebne podatke.",
"Simple email app nicely integrated with Files, Contacts and Calendar." : "Enostaven program za pošto se odlično povezuje z Datotekami, Stiki in Koledarjem.",
- "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Klepet, videoklici, souparaba zaslona, spletni sestanki in konference v spletnem brskalniku ali z mobilnimi aplikacijami.",
+ "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Klepet, videopogovori, souporaba zaslona, spletni sestanki in spletne konference – v spletnem brskalniku ali na mobilnih napravah.",
"Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Sodelovanje pri ustvarjanju dokumentov, preglednic in predstavitev, ki zahtevajo storitev Collabora Online.",
"Distraction free note taking app." : "Enostavno beleženje in zapisovanje",
"Recommended apps" : "Priporočeni programi",
@@ -216,18 +309,18 @@ OC.L10N.register(
"Password is strong" : "Geslo je močno",
"Password is very strong" : "Geslo je zelo močno",
"Password is extremely strong" : "Geslo je izjemno močno",
- "Unknown password strength" : "Nenznana moč gesla",
- "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "Vaš podatkovni imenik in datoteke je verjetno dostopen s spleta, ker datoteka <code>.htaccess</code> ne deluje.",
- "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "Za podatke o pravilnih nastavitvah strežnika si {linkStart}preberite dokumentacijo{linkEnd}",
- "Autoconfig file detected" : "Zaznana je datoteka za samodejno konfiguracijo",
- "The setup form below is pre-filled with the values from the config file." : "Spodnja namestitev je predizpolnjena z vfednostmi iz konfiguracijske datoteke.",
+ "Unknown password strength" : "Neznana moč gesla",
+ "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "Podatkovni imenik in datoteke so verjetno dostopne s spleta, ker datoteka <code>.htaccess</code> ne deluje.",
+ "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "Za podrobnosti o pravilnih nastavitvah strežnika {linkStart}preglejte dokumentacijo{linkEnd}",
+ "Autoconfig file detected" : "Zaznana je datoteka za samodejno nastavitev",
+ "The setup form below is pre-filled with the values from the config file." : "Namestitveni obrazec je izpolnjen iz vrednostmi, prevzetimi iz nastavitvene datoteke.",
"Security warning" : "Varnostno opozorilo",
"Create administration account" : "Ustvari skrbniški račun",
"Administration account name" : "Ime skrbniškega računa",
"Administration account password" : "Geslo skrbniškega računa",
"Storage & database" : "Shramba in podatkovna zbirka",
"Data folder" : "Podatkovna mapa",
- "Database configuration" : "Nastavitve podatkovnih baz",
+ "Database configuration" : "Nastavitve podatkovne zbirke",
"Only {firstAndOnlyDatabase} is available." : "Na voljo je le {firstAndOnlyDatabase}",
"Install and activate additional PHP modules to choose other database types." : "Namestite in omogočite dodatne module PHP za izbor drugih vrst podatkovnih zbirk.",
"For more details check out the documentation." : "Za več podrobnosti preverite dokumentacijo.",
@@ -303,9 +396,9 @@ OC.L10N.register(
"Admin" : "Skrbništvo",
"Help" : "Pomoč",
"Access forbidden" : "Dostop je prepovedan",
+ "Back to %s" : "Nazaj na %s",
"Page not found" : "Strani ni mogoče najti",
"The page could not be found on the server or you may not be allowed to view it." : "Strani na strežniku ni mogoče najti ali pa ni ustreznih dovoljenj za prikaz.",
- "Back to %s" : "Nazaj na %s",
"Too many requests" : "Zaznanih je preveč sočasnih zahtev",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Iz omrežja je bilo prejetih preveč zahtev. Če je to napaka, stopite v stik s skrbnikom, sicer pa poskusite spet kasneje.",
"Error" : "Napaka",
@@ -381,16 +474,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Strežnik %s je trenutno v vzdrževalnem načinu, kar onemogoča prijavo.",
"This page will refresh itself when the instance is available again." : "Stran bo samodejno osvežena, ko bo okolje spet pripravljeno za delo.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Če se bo to sporočilo še naprej nepričakovano pojavljalo, stopite v stik s skrbnikom sistema.",
- "Currently open" : "Trenutno odprto",
- "Login with username or email" : "Prijava z uporabniškim imenom ali elektronskim naslovom",
- "Login with username" : "Prijava z uporabniškim imenom",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Klepet, video klici, souporaba zaslonske slike, spletni sestanki in konference – znotraj brskalnika in z mobilnimi napravami.",
"You have not added any info yet" : "Ni še vpisanih podrobnosti",
"{user} has not added any info yet" : "Oseba {user} še ni dodala nobenih podrobnosti.",
"Error opening the user status modal, try hard refreshing the page" : "Prišlo je do napake pri odpiranju modalnega okna stanja uporabnika. Napako je mogoče razrešiti z osvežitvijo strani.",
"Edit Profile" : "Uredi profil",
"The headline and about sections will show up here" : "Naslovnica in odsek s podatki bo prikazan na tem mestu.",
- "Error loading message template: {error}" : "Napaka nalaganja predloge sporočil: {error}",
"Very weak password" : "Zelo šibko geslo",
"Weak password" : "Šibko geslo",
"So-so password" : "Slabo geslo",
@@ -401,8 +490,8 @@ OC.L10N.register(
"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Podatkovna mapa in datoteke so najverjetneje javno dostopni v omrežju, ker datoteka .htaccess ni ustrezno nastavljena.",
"For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "Več podrobnosti, kako pravilno nastaviti strežnik, je zapisanih v <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">dokumentaciji</a>.",
"<strong>Create an admin account</strong>" : "<strong>Ustvari skrbniški račun</strong>",
- "New admin account name" : "Ime računa novega skrbnika",
- "New admin password" : "Geslo novega skrbnika",
+ "New admin account name" : "Ime novega skrbniškega računa",
+ "New admin password" : "Geslo novega skrbniškega računa",
"Show password" : "Pokaži geslo",
"Toggle password visibility" : "Preklopi vidnost gesla",
"Configure the database" : "Nastavi podatkovno zbirko",
diff --git a/core/l10n/sl.json b/core/l10n/sl.json
index eaeb755c11b..7f177ca0a1f 100644
--- a/core/l10n/sl.json
+++ b/core/l10n/sl.json
@@ -25,7 +25,7 @@
"Could not complete login" : "Prijave ni mogoče dokončati",
"State token missing" : "Manjka žeton stanja",
"Your login token is invalid or has expired" : "Prijavni žeton je neveljaven, ali pa je že potekel.",
- "Please use original client" : "Uporabite izvorni odjemalec",
+ "Please use original client" : "Uporabite izvirnega odjemalca",
"This community release of Nextcloud is unsupported and push notifications are limited." : "Ta skupnostna objava oblaka Nextcloud ni podprta, nekatera potisna obvestila so zato omejena.",
"Login" : "Prijava",
"Unsupported email length (>255)" : "Nepodprta dolžina sporočila ( > 255 )",
@@ -50,6 +50,11 @@
"No translation provider available" : "Ponudnik prevoda ni na voljo.",
"Could not detect language" : "Ni mogoče zaznati jezika.",
"Unable to translate" : "Ni mogoče prevajati",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Korak nadgradnje:",
+ "Repair info:" : "Podrobnosti nadgradnje:",
+ "Repair warning:" : "Opozorilo nadgradnje:",
+ "Repair error:" : "Napaka nadgradnje:",
"Nextcloud Server" : "Strežnik Nextcloud",
"Some of your link shares have been removed" : "Nekatere povezave za souporabo so bile odstranjene.",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Zaradi varnostnih razlogov so bile nekatere povezave odstranjene. Več podrobnosti je na voljo v uradno izdanem opozorilu.",
@@ -57,11 +62,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Vpišite ključ naročila podpornega programa in povečajte omejitev za uporabnika. S tem pridobite tudi vse dodatne ugodnosti, ki jih omogoča Poslovno okolje Nextcloud. Način je zelo priporočljiv za podjetja.",
"Learn more ↗" : "Več o tem ↗",
"Preparing update" : "Poteka priprava na posodobitev ...",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Korak nadgradnje:",
- "Repair info:" : "Podrobnosti nadgradnje:",
- "Repair warning:" : "Opozorilo nadgradnje:",
- "Repair error:" : "Napaka nadgradnje:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Posodobitev sistema je treba izvesti v ukazni vrstici, ker je posodabljanje z brskalnikom v config.php onemogočeno.",
"Turned on maintenance mode" : "Vzdrževalni način je omogočen ...",
"Turned off maintenance mode" : "Vzdrževalni način je onemogočen.",
@@ -78,8 +78,101 @@
"%s (incompatible)" : "%s (neskladno)",
"The following apps have been disabled: %s" : "Zaradi neskladnosti so onemogočeni naslednji programi: %s.",
"Already up to date" : "Sistem je že posodobljen",
+ "Windows Command Script" : "Ukazni skript Windows",
+ "Electronic book document" : "Dokument elektronske knjige",
+ "TrueType Font Collection" : "Zbirka pisav TTF",
+ "Web Open Font Format" : "Odprti zapis spletne pisave",
+ "GPX geographic data" : "Geografski podatki GPX",
+ "Gzip archive" : "Arhiv GZIP",
+ "Adobe Illustrator document" : "Dokument Adobe Illustrator",
+ "Java source code" : "Izvorna koda Java",
+ "JavaScript source code" : "Izvorna koda Javascript",
+ "JSON document" : "Dokument JSON",
+ "Microsoft Access database" : "Podatkovna zbirka Microsoft Access",
+ "Microsoft OneNote document" : "Dokument Microsoft OneNote",
+ "Microsoft Word document" : "Dokument Microsoft Word",
"Unknown" : "Neznano",
- "PNG image" : "PNG slika",
+ "PDF document" : "Dokument PDF",
+ "PostScript document" : "Dokument PostScript",
+ "RSS summary" : "Povzetek virov RSS",
+ "Android package" : "Programski paket Android",
+ "KML geographic data" : "Geografski podatki KLM",
+ "KML geographic compressed data" : "Stisnjeni geografski podatki KLM",
+ "Lotus Word Pro document" : "Dokument Lotus Word Pro",
+ "Excel spreadsheet" : "Preglednica Excel",
+ "Excel add-in" : "Razširitev Excel",
+ "Excel spreadsheet template" : "Predloga preglednice Excel",
+ "Outlook Message" : "Sporočilo Outlook",
+ "PowerPoint presentation" : "Predstavitev PowerPoint",
+ "PowerPoint add-in" : "Razširitev PowerPoint",
+ "PowerPoint presentation template" : "Predloga predstavitve PowerPoint",
+ "Word document" : "Dokument Word",
+ "ODF formula" : "Formula ODF",
+ "ODG drawing" : "Risba ODG",
+ "ODG template" : "Predloga ODG",
+ "ODP presentation" : "Predstavitev ODP",
+ "ODP template" : "Predloga ODP",
+ "ODS spreadsheet" : "Preglednica ODS",
+ "ODS template" : "Predloga ODS",
+ "ODT document" : "Dokument ODT",
+ "ODT template" : "Predloga ODT",
+ "PowerPoint 2007 presentation" : "Predstavitev PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Predloga predstavitve PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Preglednica Excel 2007",
+ "Excel 2007 spreadsheet template" : "Predloga preglednice Excel 2007",
+ "Word 2007 document" : "Dokument Word 2007",
+ "Word 2007 document template" : "Predloga dokumenta Word 2007",
+ "Microsoft Visio document" : "Dokument Microsoft Visio",
+ "WordPerfect document" : "Dokument WordPerfect",
+ "7-zip archive" : "Arhiv 7-zip",
+ "Bzip2 archive" : "Arhiv Bzip2",
+ "Debian package" : "Programski paket Debian",
+ "FictionBook document" : "Dokument FictionBook",
+ "Unknown font" : "Neznan zapis pisave",
+ "Krita document" : "Dokument Krita",
+ "Mobipocket e-book" : "Elektronska knjiga Mobipocket",
+ "Windows Installer package" : "Namestitveni paket Windows",
+ "Perl script" : "Skript Perl",
+ "PHP script" : "Skript PHP",
+ "Tar archive" : "Arhiv Tar",
+ "XML document" : "Dokument XML",
+ "YAML document" : "Dokument YAML",
+ "Zip archive" : "Arhiv ZIP",
+ "Zstandard archive" : "Arhiv Zstandard",
+ "AAC audio" : "Zvok AAC",
+ "FLAC audio" : "Zvok FLAC",
+ "MPEG-4 audio" : "Zvok MPEG-4",
+ "MP3 audio" : "Zvok MP3",
+ "Ogg audio" : "Zvok OGG",
+ "WebM audio" : "Zvok WebM",
+ "Windows BMP image" : "Slika Windows BMP",
+ "EMF image" : "Slika EMF",
+ "GIF image" : "Slika GIF",
+ "HEIC image" : "Slika HEIC",
+ "HEIF image" : "Slika HEIF",
+ "JPEG image" : "Slika JPEG",
+ "PNG image" : "Slika PNG",
+ "SVG image" : "Risba SVG",
+ "TIFF image" : "Slika TIFF",
+ "WebP image" : "Slika WebP",
+ "Digital raw image" : "Surova digitalna slika",
+ "Windows Icon" : "Ikona Windows",
+ "VCS/ICS calendar" : "Koledar VCS/ICS",
+ "CSS stylesheet" : "Slogovna predloga CSS",
+ "CSV document" : "Dokument CSV",
+ "HTML document" : "Dokument HTML",
+ "Markdown document" : "Dokument Markdown",
+ "Plain text document" : "Besedilni dokument",
+ "Rich Text document" : "Dokument z obogatenim besedilom",
+ "Electronic business card" : "Elektronska poslovna kartica",
+ "C++ source code" : "Izvorna koda C++",
+ "LDIF address book" : "Imenik LDIF",
+ "NFO document" : "Dokument NFO",
+ "PHP source" : "Izvorna koda PHP",
+ "Python script" : "Skript Python",
+ "MPEG video" : "Video MPEG",
+ "DV video" : "Video DV",
+ "MPEG-4 video" : "Video MPEG-4",
"Error occurred while checking server setup" : "Prišlo je do napake med preverjanjem nastavitev strežnika",
"For more details see the {linkstart}documentation ↗{linkend}." : "Za več podrobnosti preverite {linkstart}dokumentacijo ↗{linkend}.",
"unknown text" : "neznano besedilo",
@@ -171,7 +264,7 @@
"Schedule work & meetings, synced with all your devices." : "Načrtujte delo in sestanke, ki se samodejno usklajujejo z vsemi vašimi napravami.",
"Keep your colleagues and friends in one place without leaking their private info." : "Združite sodelavce in prijatelje na enem mestu brez skrbi za njihove zasebne podatke.",
"Simple email app nicely integrated with Files, Contacts and Calendar." : "Enostaven program za pošto se odlično povezuje z Datotekami, Stiki in Koledarjem.",
- "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Klepet, videoklici, souparaba zaslona, spletni sestanki in konference v spletnem brskalniku ali z mobilnimi aplikacijami.",
+ "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Klepet, videopogovori, souporaba zaslona, spletni sestanki in spletne konference – v spletnem brskalniku ali na mobilnih napravah.",
"Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Sodelovanje pri ustvarjanju dokumentov, preglednic in predstavitev, ki zahtevajo storitev Collabora Online.",
"Distraction free note taking app." : "Enostavno beleženje in zapisovanje",
"Recommended apps" : "Priporočeni programi",
@@ -214,18 +307,18 @@
"Password is strong" : "Geslo je močno",
"Password is very strong" : "Geslo je zelo močno",
"Password is extremely strong" : "Geslo je izjemno močno",
- "Unknown password strength" : "Nenznana moč gesla",
- "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "Vaš podatkovni imenik in datoteke je verjetno dostopen s spleta, ker datoteka <code>.htaccess</code> ne deluje.",
- "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "Za podatke o pravilnih nastavitvah strežnika si {linkStart}preberite dokumentacijo{linkEnd}",
- "Autoconfig file detected" : "Zaznana je datoteka za samodejno konfiguracijo",
- "The setup form below is pre-filled with the values from the config file." : "Spodnja namestitev je predizpolnjena z vfednostmi iz konfiguracijske datoteke.",
+ "Unknown password strength" : "Neznana moč gesla",
+ "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "Podatkovni imenik in datoteke so verjetno dostopne s spleta, ker datoteka <code>.htaccess</code> ne deluje.",
+ "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "Za podrobnosti o pravilnih nastavitvah strežnika {linkStart}preglejte dokumentacijo{linkEnd}",
+ "Autoconfig file detected" : "Zaznana je datoteka za samodejno nastavitev",
+ "The setup form below is pre-filled with the values from the config file." : "Namestitveni obrazec je izpolnjen iz vrednostmi, prevzetimi iz nastavitvene datoteke.",
"Security warning" : "Varnostno opozorilo",
"Create administration account" : "Ustvari skrbniški račun",
"Administration account name" : "Ime skrbniškega računa",
"Administration account password" : "Geslo skrbniškega računa",
"Storage & database" : "Shramba in podatkovna zbirka",
"Data folder" : "Podatkovna mapa",
- "Database configuration" : "Nastavitve podatkovnih baz",
+ "Database configuration" : "Nastavitve podatkovne zbirke",
"Only {firstAndOnlyDatabase} is available." : "Na voljo je le {firstAndOnlyDatabase}",
"Install and activate additional PHP modules to choose other database types." : "Namestite in omogočite dodatne module PHP za izbor drugih vrst podatkovnih zbirk.",
"For more details check out the documentation." : "Za več podrobnosti preverite dokumentacijo.",
@@ -301,9 +394,9 @@
"Admin" : "Skrbništvo",
"Help" : "Pomoč",
"Access forbidden" : "Dostop je prepovedan",
+ "Back to %s" : "Nazaj na %s",
"Page not found" : "Strani ni mogoče najti",
"The page could not be found on the server or you may not be allowed to view it." : "Strani na strežniku ni mogoče najti ali pa ni ustreznih dovoljenj za prikaz.",
- "Back to %s" : "Nazaj na %s",
"Too many requests" : "Zaznanih je preveč sočasnih zahtev",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Iz omrežja je bilo prejetih preveč zahtev. Če je to napaka, stopite v stik s skrbnikom, sicer pa poskusite spet kasneje.",
"Error" : "Napaka",
@@ -379,16 +472,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Strežnik %s je trenutno v vzdrževalnem načinu, kar onemogoča prijavo.",
"This page will refresh itself when the instance is available again." : "Stran bo samodejno osvežena, ko bo okolje spet pripravljeno za delo.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Če se bo to sporočilo še naprej nepričakovano pojavljalo, stopite v stik s skrbnikom sistema.",
- "Currently open" : "Trenutno odprto",
- "Login with username or email" : "Prijava z uporabniškim imenom ali elektronskim naslovom",
- "Login with username" : "Prijava z uporabniškim imenom",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Klepet, video klici, souporaba zaslonske slike, spletni sestanki in konference – znotraj brskalnika in z mobilnimi napravami.",
"You have not added any info yet" : "Ni še vpisanih podrobnosti",
"{user} has not added any info yet" : "Oseba {user} še ni dodala nobenih podrobnosti.",
"Error opening the user status modal, try hard refreshing the page" : "Prišlo je do napake pri odpiranju modalnega okna stanja uporabnika. Napako je mogoče razrešiti z osvežitvijo strani.",
"Edit Profile" : "Uredi profil",
"The headline and about sections will show up here" : "Naslovnica in odsek s podatki bo prikazan na tem mestu.",
- "Error loading message template: {error}" : "Napaka nalaganja predloge sporočil: {error}",
"Very weak password" : "Zelo šibko geslo",
"Weak password" : "Šibko geslo",
"So-so password" : "Slabo geslo",
@@ -399,8 +488,8 @@
"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Podatkovna mapa in datoteke so najverjetneje javno dostopni v omrežju, ker datoteka .htaccess ni ustrezno nastavljena.",
"For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "Več podrobnosti, kako pravilno nastaviti strežnik, je zapisanih v <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">dokumentaciji</a>.",
"<strong>Create an admin account</strong>" : "<strong>Ustvari skrbniški račun</strong>",
- "New admin account name" : "Ime računa novega skrbnika",
- "New admin password" : "Geslo novega skrbnika",
+ "New admin account name" : "Ime novega skrbniškega računa",
+ "New admin password" : "Geslo novega skrbniškega računa",
"Show password" : "Pokaži geslo",
"Toggle password visibility" : "Preklopi vidnost gesla",
"Configure the database" : "Nastavi podatkovno zbirko",
diff --git a/core/l10n/sr.js b/core/l10n/sr.js
index 39cd4f50868..45619021ed6 100644
--- a/core/l10n/sr.js
+++ b/core/l10n/sr.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Задатак није пронађен",
"Internal error" : "Интерна грешка",
"Not found" : "Није нађено",
+ "Node is locked" : "Чвор је закључан.",
"Bad request" : "Неисправан захтев",
"Requested task type does not exist" : "Тражени тип задатка не постоји",
"Necessary language model provider is not available" : "Није доступан неопходни пружалац услуге језичког модела",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Није доступан ниједан пружалац услуге превода",
"Could not detect language" : "Не може да се детектује језик",
"Unable to translate" : "Не може да се преведе",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Корак поправке:",
+ "Repair info:" : "Инфо о поправци:",
+ "Repair warning:" : "Упозорење о поправци:",
+ "Repair error:" : "Грешка поправке:",
"Nextcloud Server" : "Nextcloud сервер",
"Some of your link shares have been removed" : "Неке везе дељења су уклоњене",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Услед безбедоносних мера, морали смо да уклонимо неке од ваших веза дељења. Кликните везу за више информација.",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Унестите ваш кључ претплате у апликацију за подршку да бисте увећали границу броја налога. На овај начин добијате још погодности које нуди Nextcloud Enterprise и топло се препоручује за рад у компанијама.",
"Learn more ↗" : "Сазнајте више ↗",
"Preparing update" : "Припремам ажурирање",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Корак поправке:",
- "Repair info:" : "Инфо о поправци:",
- "Repair warning:" : "Упозорење о поправци:",
- "Repair error:" : "Грешка поправке:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Молимо вас да користите алат за ажурирање из командне линије јер је ажурирање из прегледача искључено у вашем config.php.",
"Turned on maintenance mode" : "Режим одржавања укључен",
"Turned off maintenance mode" : "Режим одржавања искључен",
@@ -327,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "Форма за пријаву је искључена.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloud формулар за пријаву је искључен. Ако је доступна, користите неку другу могућност пријаве, или се обратите администрацији.",
"More actions" : "Још акција",
+ "User menu" : "Кориснички мени",
+ "You will be identified as {user} by the account owner." : "Власник налога ће вас идентификовати као {user}.",
+ "You are currently not identified." : "Тренутно нисте идентификовани.",
+ "Set public name" : "Постави јавно име",
+ "Change public name" : "Измени јавно име",
"Password is too weak" : "Лозинка је сувише слаба",
"Password is weak" : "Лозинка је слаба",
"Password is average" : "Лозинка је просечна",
@@ -420,9 +426,10 @@ OC.L10N.register(
"Admin" : "Администрација",
"Help" : "Помоћ",
"Access forbidden" : "Забрањен приступ",
+ "You are not allowed to access this page." : "Није вам дозвољено да приступите овој страници.",
+ "Back to %s" : "Назад на %s",
"Page not found" : "Страна није нађена",
"The page could not be found on the server or you may not be allowed to view it." : "Страница не може да се пронађе на серверу или можда немате права да је видите.",
- "Back to %s" : "Назад на %s",
"Too many requests" : "Превише захтева",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Са ваше мреже долази превише захтева. Покушајте поново касније или контактирајте администратора уколико је ово нека грешка.",
"Error" : "Грешка",
@@ -498,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Овај %s је тренутно у режиму одржавања што може потрајати.",
"This page will refresh itself when the instance is available again." : "Ова страница ће се сама освежити када инстанца постане поново доступна.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Контактирајте администратора ако се порука понавља или се неочекивано појавила.",
- "Currently open" : "Тренутно отворена",
- "Login with username or email" : "Пријавa са корисничким именом или и-мејлом",
- "Login with username" : "Пријава са корисничким именом",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Ћаскање, видео позиви, дељење екрана, састанци на интернету & веб конференције – на десктоп рачунару и преко мобилних апликација.",
"You have not added any info yet" : "Још увек нисте додали никакве информације",
"{user} has not added any info yet" : "{user} још увек није унео никакве информације",
"Error opening the user status modal, try hard refreshing the page" : "Грешка приликом отварања модалног прозора за статус корисника, покушајте да освежите страну уз брисање кеша",
"Edit Profile" : "Уреди профил",
"The headline and about sections will show up here" : "Овде ће се појавити насловна линија и одељак „о”",
- "Error loading message template: {error}" : "Грешка при учитавању шаблона поруке: {error}",
"Very weak password" : "Веома слаба лозинка",
"Weak password" : "Слаба лозинка",
"So-so password" : "Осредња лозинка",
diff --git a/core/l10n/sr.json b/core/l10n/sr.json
index 235052799e5..4ef6f99262f 100644
--- a/core/l10n/sr.json
+++ b/core/l10n/sr.json
@@ -42,6 +42,7 @@
"Task not found" : "Задатак није пронађен",
"Internal error" : "Интерна грешка",
"Not found" : "Није нађено",
+ "Node is locked" : "Чвор је закључан.",
"Bad request" : "Неисправан захтев",
"Requested task type does not exist" : "Тражени тип задатка не постоји",
"Necessary language model provider is not available" : "Није доступан неопходни пружалац услуге језичког модела",
@@ -50,6 +51,11 @@
"No translation provider available" : "Није доступан ниједан пружалац услуге превода",
"Could not detect language" : "Не може да се детектује језик",
"Unable to translate" : "Не може да се преведе",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Корак поправке:",
+ "Repair info:" : "Инфо о поправци:",
+ "Repair warning:" : "Упозорење о поправци:",
+ "Repair error:" : "Грешка поправке:",
"Nextcloud Server" : "Nextcloud сервер",
"Some of your link shares have been removed" : "Неке везе дељења су уклоњене",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Услед безбедоносних мера, морали смо да уклонимо неке од ваших веза дељења. Кликните везу за више информација.",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Унестите ваш кључ претплате у апликацију за подршку да бисте увећали границу броја налога. На овај начин добијате још погодности које нуди Nextcloud Enterprise и топло се препоручује за рад у компанијама.",
"Learn more ↗" : "Сазнајте више ↗",
"Preparing update" : "Припремам ажурирање",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Корак поправке:",
- "Repair info:" : "Инфо о поправци:",
- "Repair warning:" : "Упозорење о поправци:",
- "Repair error:" : "Грешка поправке:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Молимо вас да користите алат за ажурирање из командне линије јер је ажурирање из прегледача искључено у вашем config.php.",
"Turned on maintenance mode" : "Режим одржавања укључен",
"Turned off maintenance mode" : "Режим одржавања искључен",
@@ -325,6 +326,11 @@
"Login form is disabled." : "Форма за пријаву је искључена.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloud формулар за пријаву је искључен. Ако је доступна, користите неку другу могућност пријаве, или се обратите администрацији.",
"More actions" : "Још акција",
+ "User menu" : "Кориснички мени",
+ "You will be identified as {user} by the account owner." : "Власник налога ће вас идентификовати као {user}.",
+ "You are currently not identified." : "Тренутно нисте идентификовани.",
+ "Set public name" : "Постави јавно име",
+ "Change public name" : "Измени јавно име",
"Password is too weak" : "Лозинка је сувише слаба",
"Password is weak" : "Лозинка је слаба",
"Password is average" : "Лозинка је просечна",
@@ -418,9 +424,10 @@
"Admin" : "Администрација",
"Help" : "Помоћ",
"Access forbidden" : "Забрањен приступ",
+ "You are not allowed to access this page." : "Није вам дозвољено да приступите овој страници.",
+ "Back to %s" : "Назад на %s",
"Page not found" : "Страна није нађена",
"The page could not be found on the server or you may not be allowed to view it." : "Страница не може да се пронађе на серверу или можда немате права да је видите.",
- "Back to %s" : "Назад на %s",
"Too many requests" : "Превише захтева",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Са ваше мреже долази превише захтева. Покушајте поново касније или контактирајте администратора уколико је ово нека грешка.",
"Error" : "Грешка",
@@ -496,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Овај %s је тренутно у режиму одржавања што може потрајати.",
"This page will refresh itself when the instance is available again." : "Ова страница ће се сама освежити када инстанца постане поново доступна.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Контактирајте администратора ако се порука понавља или се неочекивано појавила.",
- "Currently open" : "Тренутно отворена",
- "Login with username or email" : "Пријавa са корисничким именом или и-мејлом",
- "Login with username" : "Пријава са корисничким именом",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Ћаскање, видео позиви, дељење екрана, састанци на интернету & веб конференције – на десктоп рачунару и преко мобилних апликација.",
"You have not added any info yet" : "Још увек нисте додали никакве информације",
"{user} has not added any info yet" : "{user} још увек није унео никакве информације",
"Error opening the user status modal, try hard refreshing the page" : "Грешка приликом отварања модалног прозора за статус корисника, покушајте да освежите страну уз брисање кеша",
"Edit Profile" : "Уреди профил",
"The headline and about sections will show up here" : "Овде ће се појавити насловна линија и одељак „о”",
- "Error loading message template: {error}" : "Грешка при учитавању шаблона поруке: {error}",
"Very weak password" : "Веома слаба лозинка",
"Weak password" : "Слаба лозинка",
"So-so password" : "Осредња лозинка",
diff --git a/core/l10n/sv.js b/core/l10n/sv.js
index 554c33dc2ef..6a524d7f0cc 100644
--- a/core/l10n/sv.js
+++ b/core/l10n/sv.js
@@ -52,6 +52,11 @@ OC.L10N.register(
"No translation provider available" : "Ingen översättning tillgänglig",
"Could not detect language" : "Kunde inte identifiera språk",
"Unable to translate" : "Kan inte översätta",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Reparationssteg: ",
+ "Repair info:" : "Reparationsinfo:",
+ "Repair warning:" : "Reparationsvarning:",
+ "Repair error:" : "Reparationsfel:",
"Nextcloud Server" : "Nextcloud-server",
"Some of your link shares have been removed" : "Några av dina delade länkar har tagits bort",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "På grund av ett säkerhetsfel var vi tvungna att ta bort några av dina delade länkar. Se länken för mer information.",
@@ -59,11 +64,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Ange din prenumerationsnyckel i supportappen för att öka användargränsen. Detta ger dig också alla ytterligare fördelar som Nextcloud Enterprise erbjuder och rekommenderas starkt för användning i företag.",
"Learn more ↗" : "Läs mer ↗",
"Preparing update" : "Förbereder uppdatering",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Reparationssteg: ",
- "Repair info:" : "Reparationsinfo:",
- "Repair warning:" : "Reparationsvarning:",
- "Repair error:" : "Reparationsfel:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Var vänlig och uppdatera via kommandotolken då uppdatering via webbläsaren är inaktiverat i config.php",
"Turned on maintenance mode" : "Aktiverade underhållsläge",
"Turned off maintenance mode" : "Inaktivera underhållsläge",
@@ -303,9 +303,9 @@ OC.L10N.register(
"Admin" : "Admin",
"Help" : "Hjälp",
"Access forbidden" : "Åtkomst förbjuden",
+ "Back to %s" : "Tillbaka till %s",
"Page not found" : "Sidan hittades inte",
"The page could not be found on the server or you may not be allowed to view it." : "Sidan kunde inte hittas på servern eller så kanske du inte har behörighet att se den.",
- "Back to %s" : "Tillbaka till %s",
"Too many requests" : "För många förfrågningar",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Det kom för många förfrågningar från ditt nätverk. Försök senare eller kontakta din administratör om detta är ett fel.",
"Error" : "Fel",
@@ -381,16 +381,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Denna %s-instans befinner sig för närvarande i underhållsläge, vilket kan ta ett tag.",
"This page will refresh itself when the instance is available again." : "Denna sida uppdaterar sig själv när instansen är tillgänglig igen.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Hör av dig till din systemadministratör om detta meddelande fortsätter eller visas oväntat.",
- "Currently open" : "För närvarande öppen",
- "Login with username or email" : "Logga in med användarnamn eller e-post",
- "Login with username" : "Logga in med användarnamn",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatt, videosamtal, skärmdelning, onlinemöten och webbkonferenser – i din webbläsare och med mobilappar.",
"You have not added any info yet" : "Du har inte angivit någon information ännu",
"{user} has not added any info yet" : "{user} har inte angivit någon information ännu",
"Error opening the user status modal, try hard refreshing the page" : "Kunde inte öppna användarstatus-rutan, försök att ladda om sidan",
"Edit Profile" : "Redigera profil",
"The headline and about sections will show up here" : "Rubriken och avsnitten \"om\" kommer att dyka upp här",
- "Error loading message template: {error}" : "Fel uppstod under inläsningen av meddelandemallen: {error}",
"Very weak password" : "Väldigt svagt lösenord",
"Weak password" : "Svagt lösenord",
"So-so password" : "Okej lösenord",
diff --git a/core/l10n/sv.json b/core/l10n/sv.json
index 2c1293aee15..2113ea695c9 100644
--- a/core/l10n/sv.json
+++ b/core/l10n/sv.json
@@ -50,6 +50,11 @@
"No translation provider available" : "Ingen översättning tillgänglig",
"Could not detect language" : "Kunde inte identifiera språk",
"Unable to translate" : "Kan inte översätta",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Reparationssteg: ",
+ "Repair info:" : "Reparationsinfo:",
+ "Repair warning:" : "Reparationsvarning:",
+ "Repair error:" : "Reparationsfel:",
"Nextcloud Server" : "Nextcloud-server",
"Some of your link shares have been removed" : "Några av dina delade länkar har tagits bort",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "På grund av ett säkerhetsfel var vi tvungna att ta bort några av dina delade länkar. Se länken för mer information.",
@@ -57,11 +62,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Ange din prenumerationsnyckel i supportappen för att öka användargränsen. Detta ger dig också alla ytterligare fördelar som Nextcloud Enterprise erbjuder och rekommenderas starkt för användning i företag.",
"Learn more ↗" : "Läs mer ↗",
"Preparing update" : "Förbereder uppdatering",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Reparationssteg: ",
- "Repair info:" : "Reparationsinfo:",
- "Repair warning:" : "Reparationsvarning:",
- "Repair error:" : "Reparationsfel:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Var vänlig och uppdatera via kommandotolken då uppdatering via webbläsaren är inaktiverat i config.php",
"Turned on maintenance mode" : "Aktiverade underhållsläge",
"Turned off maintenance mode" : "Inaktivera underhållsläge",
@@ -301,9 +301,9 @@
"Admin" : "Admin",
"Help" : "Hjälp",
"Access forbidden" : "Åtkomst förbjuden",
+ "Back to %s" : "Tillbaka till %s",
"Page not found" : "Sidan hittades inte",
"The page could not be found on the server or you may not be allowed to view it." : "Sidan kunde inte hittas på servern eller så kanske du inte har behörighet att se den.",
- "Back to %s" : "Tillbaka till %s",
"Too many requests" : "För många förfrågningar",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Det kom för många förfrågningar från ditt nätverk. Försök senare eller kontakta din administratör om detta är ett fel.",
"Error" : "Fel",
@@ -379,16 +379,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Denna %s-instans befinner sig för närvarande i underhållsläge, vilket kan ta ett tag.",
"This page will refresh itself when the instance is available again." : "Denna sida uppdaterar sig själv när instansen är tillgänglig igen.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Hör av dig till din systemadministratör om detta meddelande fortsätter eller visas oväntat.",
- "Currently open" : "För närvarande öppen",
- "Login with username or email" : "Logga in med användarnamn eller e-post",
- "Login with username" : "Logga in med användarnamn",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Chatt, videosamtal, skärmdelning, onlinemöten och webbkonferenser – i din webbläsare och med mobilappar.",
"You have not added any info yet" : "Du har inte angivit någon information ännu",
"{user} has not added any info yet" : "{user} har inte angivit någon information ännu",
"Error opening the user status modal, try hard refreshing the page" : "Kunde inte öppna användarstatus-rutan, försök att ladda om sidan",
"Edit Profile" : "Redigera profil",
"The headline and about sections will show up here" : "Rubriken och avsnitten \"om\" kommer att dyka upp här",
- "Error loading message template: {error}" : "Fel uppstod under inläsningen av meddelandemallen: {error}",
"Very weak password" : "Väldigt svagt lösenord",
"Weak password" : "Svagt lösenord",
"So-so password" : "Okej lösenord",
diff --git a/core/l10n/sw.js b/core/l10n/sw.js
new file mode 100644
index 00000000000..479a6e7da67
--- /dev/null
+++ b/core/l10n/sw.js
@@ -0,0 +1,532 @@
+OC.L10N.register(
+ "core",
+ {
+ "Please select a file." : "Tafadhali teua faili",
+ "File is too big" : "Faili ni kubwa mno",
+ "The selected file is not an image." : "Faili lililoteuliwa si taswira",
+ "The selected file cannot be read." : "Faili lililochaguliwa halisomeki",
+ "The file was uploaded" : "Faili lilipakiwa",
+ "The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Faili lililopakiwa linazidi kiwango cha juu cha ukubwa wa faili linalielekea katika php.ini",
+ "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Faili iliyopakiliwa imezidi kiwango cha ukubwa wa faili iliyoelekezwa maalum katika fomu ya HTML",
+ "The file was only partially uploaded" : "Faili lilipakiwa kwa sehemu ndogo tu",
+ "No file was uploaded" : "Hakuna faili lililopakiwa",
+ "Missing a temporary folder" : "Imekosa faili la muda",
+ "Could not write file to disk" : "Haikuweza kuandika faili kwenye disk",
+ "A PHP extension stopped the file upload" : "Uongezaji wa PHP umesimamisha upakiaji wa faili",
+ "Invalid file provided" : "Faili iliyotolewa si halali",
+ "No image or file provided" : "Hakuna taswira au faili lililotolewa",
+ "Unknown filetype" : "Aina ya faili haijulikani",
+ "An error occurred. Please contact your admin." : "Hitilafu imetokea. Tafadhali wasiliana na msimamizi wako",
+ "Invalid image" : "Taswira si halisi",
+ "No temporary profile picture available, try again" : "Hakuna picha ya muda ya wasifu inayopatikana, jaribu tena",
+ "No crop data provided" : "Hakuna data iliyokatwa iliyotolewa",
+ "No valid crop data provided" : "Hakuna data halali iliyokatwa iliyotolewa",
+ "Crop is not square" : "Ukataji si mraba",
+ "State token does not match" : "Tokeni ya Serikali hailingani",
+ "Invalid app password" : "Nenosiri la app si halali",
+ "Could not complete login" : "Haiwezi kukamilisha uingiaji",
+ "State token missing" : "Tokeni ya Serikali inakosekana",
+ "Your login token is invalid or has expired" : "Tokeni za uingiaji wako si halali au zimepitwa wakati",
+ "Please use original client" : "Tafadhali tumia mteja halisi",
+ "This community release of Nextcloud is unsupported and push notifications are limited." : "Toleo hili la jumuiya la Nextcloud halitumiki na arifa zinazotumwa na programu huzuiwa.",
+ "Login" : "Ingia",
+ "Unsupported email length (>255)" : "Urefu wa barua pepe usiotumika (>255)",
+ "Password reset is disabled" : "Uwekaji mpya wa nenosiri umezimwa",
+ "Could not reset password because the token is expired" : "Haikuweza kuweka upya nenosiri kwa sababu tokeni zimeisha muda wake wa matumizi",
+ "Could not reset password because the token is invalid" : "Haikuweza kuweka upya nenosiri kwa sababu tokeni si halali",
+ "Password is too long. Maximum allowed length is 469 characters." : "Nenosiri ni refu sana. Kiwango cha juu cha urefu ulioruhusiwa ni wahusika 469",
+ "%s password reset" : "%s weka nenosiri upya",
+ "Password reset" : "Uwekaji mpya wa nenosiri",
+ "Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Bofya kitufe kifuatacho ili kuweka upya nenosiri lako. Ikiwa haujaomba kuweka upya nenosiri, basi puuza barua pepe hii.",
+ "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Bofya kiungo kifuatacho ili kuweka upya nenosiri lako. Ikiwa hujaomba kuweka upya nenosiri, basi puuza barua pepe hii.",
+ "Reset your password" : "Pangilia upya nenosiri lako",
+ "The given provider is not available" : "Mgavi aliyetolewa hapatikani",
+ "Task not found" : "Jukumu halijapatikana",
+ "Internal error" : "Hitilafu ya ndani",
+ "Not found" : "Haipatikani",
+ "Node is locked" : "Nodi imefungwa",
+ "Bad request" : "Uombaji mbaya",
+ "Requested task type does not exist" : "Uandikaji wa jukumu lililoombwa haupatikani",
+ "Necessary language model provider is not available" : "Mgavi muhimu wa aina ya lugha hapatikani",
+ "No text to image provider is available" : "Hakuna maandishi yaliyopo kwa mgavi wa taswira",
+ "Image not found" : "Taswira haipatikani",
+ "No translation provider available" : "Hakuna mgavi wa tafsiri aliyepo",
+ "Could not detect language" : "Haikuweza kugundua lugha",
+ "Unable to translate" : "Haiwezi kutafsiri",
+ "[%d / %d]: %s" : "[%d/%d]: %s",
+ "Repair step:" : "Rekwbisha hatua:",
+ "Repair info:" : "Rekebisha taarifa",
+ "Repair warning:" : "Rekebisha onyo:",
+ "Repair error:" : "Rekebisha hitilafu:",
+ "Nextcloud Server" : "Seva ya Nextcloud",
+ "Some of your link shares have been removed" : "Baadhi ya ushirikishaji wa kiungo chako umeondolewa",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Kwa sababu ya hitilafu ya usalama ilitubidi kuondoa baadhi ya viungio vyako vilivyoshirikishwa. Tafadhali tazama kiungo kwa habari zaidi.",
+ "The account limit of this instance is reached." : "Kikomo cha akaunti cha tukio hili kimefikiwa.",
+ "Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Weka ufunguo wako wa usajili katika programu ya usaidizi ili kuongeza kikomo cha akaunti. Hii pia hukupa manufaa yote ya ziada ambayo Nextcloud Enterprise inatoa na inapendekezwa sana kwa uendeshaji ndani ya makampuni.",
+ "Learn more ↗" : "Jifunze zaidi",
+ "Preparing update" : "Andaa usasishaji",
+ "Please use the command line updater because updating via browser is disabled in your config.php." : "Tafadhali tumia kisasisho cha mstari wa amri kwa sababu kusasisha kupitia kivinjari kumezimwa katika config.php yako.",
+ "Turned on maintenance mode" : "Hali ya matengenezo imewashwa",
+ "Turned off maintenance mode" : "Hali ya matengenezo imezimwa",
+ "Maintenance mode is kept active" : "Hali ya matengenezo iko hai",
+ "Updating database schema" : "Skema ua kanzidata inasasishwa",
+ "Updated database" : "Kanzidata iliyosasishwa",
+ "Update app \"%s\" from App Store" : "Sasisha program \"%s\" kutoka katika stoo ya program",
+ "Checking whether the database schema for %s can be updated (this can take a long time depending on the database size)" : "Kuangalia kama schema ya kanzidata ya %s inaweza kusasishwa (hii inaweza kuchukua muda mrefu kulingana na saizi ya kanzidata) ",
+ "Updated \"%1$s\" to %2$s" : "Imesasishwa \"%1$s\" kwenda %2$s",
+ "Set log level to debug" : "Pangilia kiwango kirefu kwenda utatuzi",
+ "Reset log level" : "Weka upya kiwango kirefu",
+ "Starting code integrity check" : "Inaanza ukaguzi wa uadilifu wa msimbo",
+ "Finished code integrity check" : "Imemaliza ukaguzi wa uadilifu wa msimbo",
+ "%s (incompatible)" : "%s (isiyooana)",
+ "The following apps have been disabled: %s" : "Program zifuatazo hazijawezeshwa:%s",
+ "Already up to date" : "Imesasishwa tayari",
+ "Windows Command Script" : "Hati ya amri ya Windows",
+ "Electronic book document" : "Nyaraka za kitabu cha kielektroniki",
+ "TrueType Font Collection" : "Ukusanyaji wa TrueType Front",
+ "Web Open Font Format" : "Muundo wa mbele wa Wavuti",
+ "GPX geographic data" : "Data za kijiografia za GPX",
+ "Gzip archive" : "Kumbukumbu za Gzip",
+ "Adobe Illustrator document" : "Waraka wa uelekezaji wa Adobe",
+ "Java source code" : "Chanzo cha msimbo wa Java",
+ "JavaScript source code" : "Chanzo cha msimbo wa JavaScript",
+ "JSON document" : "Waraka wa JSON",
+ "Microsoft Access database" : "Ufikiaji wa kanzidata ya Microsoft",
+ "Microsoft OneNote document" : "Waraka wa Microsoft OneNote",
+ "Microsoft Word document" : "Waraka wa Microsoft Word",
+ "Unknown" : "Haijulikani",
+ "PDF document" : "Waraka wa PDF",
+ "PostScript document" : "Waraka wa PostScript",
+ "RSS summary" : "Ufupishaji wa RSS",
+ "Android package" : "Kifurushi cha Android",
+ "KML geographic data" : "Data za kijiografia za KML",
+ "KML geographic compressed data" : "Data za kijiografia za KML zilizofinywa",
+ "Lotus Word Pro document" : "Hati ya Lotus Word Pro",
+ "Excel spreadsheet" : "Lahajedwali ya Excel",
+ "Excel add-in" : "Nyongeza ya Excel",
+ "Excel 2007 binary spreadsheet" : "Excel 2007 yenye jozi za lahajedwali",
+ "Excel spreadsheet template" : "Kiolezo cha lahajedwali cha Excel",
+ "Outlook Message" : "Mtazamo wa ujumbe",
+ "PowerPoint presentation" : "Uwasilishaji wa Powerpoint",
+ "PowerPoint add-in" : "Program jalizi ya PowerPoint",
+ "PowerPoint presentation template" : "Uwasilishaji wa kiolezo cha Powerpoint",
+ "Word document" : "Waraka wa maneno",
+ "ODF formula" : "Fomula ya ODF",
+ "ODG drawing" : "Mchoro wa ODG",
+ "ODG drawing (Flat XML)" : "Mchoro wa ODG (Flat XML)",
+ "ODG template" : "Kiolezo cha ODG",
+ "ODP presentation" : "Uwasilishaji wa ODP",
+ "ODP presentation (Flat XML)" : "Uwasilishaji wa ODP (Flat XML)",
+ "ODP template" : "Kiolezo cha ODP",
+ "ODS spreadsheet" : "Lahajedwali ya ODS",
+ "ODS spreadsheet (Flat XML)" : "Lahajedwali ya ODS (Flat XML)",
+ "ODS template" : "Kiolezo chz ODS",
+ "ODT document" : "Waraka wa ODT",
+ "ODT document (Flat XML)" : "Waraka wa ODT (Flat XML)",
+ "ODT template" : "Kiolezo cha ODT",
+ "PowerPoint 2007 presentation" : "Uwasilishaji wa Powerpoint ya 2007",
+ "PowerPoint 2007 show" : "Onesho la PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Kiolezo cha uwasilishaji wa PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Lahajedwali ya Excel 2007",
+ "Excel 2007 spreadsheet template" : "Kiolezo cha lahajedwali ya Excel 2007",
+ "Word 2007 document" : "Hati ya Word 2007",
+ "Word 2007 document template" : "Kiolezo cha hati ya Word 2007",
+ "Microsoft Visio document" : "Hati ya Microsoft Visio",
+ "WordPerfect document" : "Hati ya WordPerfect",
+ "7-zip archive" : "Kumbukumbu ya 7-zip",
+ "Blender scene" : "Tukio la blender",
+ "Bzip2 archive" : "Kumbukumbu ya Bzip2",
+ "Debian package" : "Kifurushi cha Debian",
+ "FictionBook document" : "Hati ya kitabu cha Fiction",
+ "Unknown font" : "Fonti isiyojulikana",
+ "Krita document" : "Hati ya Krita",
+ "Mobipocket e-book" : "Kitabu cha kielektroniki cha Mobpocket",
+ "Windows Installer package" : "Kifurushi cha kisakinishi cha Windows",
+ "Perl script" : "Hati ya Perl",
+ "PHP script" : "Hati ya PHP",
+ "Tar archive" : "Kumbukumbu ya Tar",
+ "XML document" : "Waraka wa XML",
+ "YAML document" : "Waraka wa YAML",
+ "Zip archive" : "Kumbukumbu za Zip",
+ "Zstandard archive" : "Kumbukumbu za Zstandard",
+ "AAC audio" : "Sauti ya AAC",
+ "FLAC audio" : "Sauti ya FLAC",
+ "MPEG-4 audio" : "Sauti ya MPEG-4",
+ "MP3 audio" : "Sauti ya MP3",
+ "Ogg audio" : "Sauti ya Ogg",
+ "RIFF/WAVe standard Audio" : "Sauti ya RIFF/WAVe standard",
+ "WebM audio" : "Sauti ya WebM",
+ "MP3 ShoutCast playlist" : "Orodha ya kucheza ya MP3 ShoutCast",
+ "Windows BMP image" : "Taswira ya Windows BMP",
+ "Better Portable Graphics image" : "Picha bora ya Michoro inayobebeka",
+ "EMF image" : "Taswira ya EMF",
+ "GIF image" : "Taswira ya GIF",
+ "HEIC image" : "Taswira ya HEIC",
+ "HEIF image" : "Taswira ya HEIF",
+ "JPEG-2000 JP2 image" : "Taswira ya JPEG-2000 JP2",
+ "JPEG image" : "Taswira ya JEPG",
+ "PNG image" : "Taswira ya PNG",
+ "SVG image" : "Taswira ya SVG",
+ "Truevision Targa image" : "Taswira ya Truevision Targa",
+ "TIFF image" : "Taswira ya TIFF",
+ "WebP image" : "Taswira ya WavutiP",
+ "Digital raw image" : "Taswira mbichi ya kidijitali",
+ "Windows Icon" : "Aikoni ya window",
+ "Email message" : "Jumbe za barua pepe",
+ "VCS/ICS calendar" : "Kalenda ya VCS/ICS",
+ "CSS stylesheet" : "Laha ya mtindo ya CSS",
+ "CSV document" : "Waraka wa CSV",
+ "HTML document" : "Waraka wa HTML",
+ "Markdown document" : "Hati ya alama",
+ "Org-mode file" : "Faili ya modi ya Org",
+ "Plain text document" : "Hati ya maandishi wazi",
+ "Rich Text document" : "Hati ya maandishi tajiri",
+ "Electronic business card" : "Kadi ya biashara ya kielektroniki",
+ "C++ source code" : "Msimbo wa chanzo C++",
+ "LDIF address book" : "Kitabu cha anwani cha LDIF",
+ "NFO document" : "Waraka wa NFO",
+ "PHP source" : "Chanzo cha PHP",
+ "Python script" : "Hati ya Python",
+ "ReStructuredText document" : "Hati ya Nakala Iliyoundwa upya",
+ "3GPP multimedia file" : "Faili ya media titika ya 3GPP",
+ "MPEG video" : "Picha mjongeo ya MPEG",
+ "DV video" : "Picha mjongeo ya DV",
+ "MPEG-2 transport stream" : "Mkondo wa usafiri wa MPEG-2",
+ "MPEG-4 video" : "Picha mjongeo ya MPEG-4",
+ "Ogg video" : "Picha mjongeo ya Ogg",
+ "QuickTime video" : "Picha mjongeo ya QuickTime",
+ "WebM video" : "Picha mjongeo ya WebM",
+ "Flash video" : "Picha mjongeo ya Flash",
+ "Matroska video" : "Picha mjongeo ya Matroska",
+ "Windows Media video" : "Picha mjongeo ya Windows Media",
+ "AVI video" : "Picha mjongeo ya AVI",
+ "Error occurred while checking server setup" : "Hitilafu imetokea wakati ikiangalia mpangilio wa seva",
+ "For more details see the {linkstart}documentation ↗{linkend}." : "Kwa maelezo zaidi ona {linkstart}uwasilishaji nyaraka {linkend}",
+ "unknown text" : "andiko lisilojulikana",
+ "Hello world!" : "Halo dunia!",
+ "sunny" : "a jua",
+ "Hello {name}, the weather is {weather}" : "Halo{name}, hali ya hewa ni {weather}",
+ "Hello {name}" : "Halo {name}",
+ "<strong>These are your search results<script>alert(1)</script></strong>" : "<strong>Haya ni matokeo ya utafutaji wako<script>toa taarifa(1)</script></strong>",
+ "new" : "mpya",
+ "_download %n file_::_download %n files_" : ["download %n file","pakua faili %n "],
+ "The update is in progress, leaving this page might interrupt the process in some environments." : "Usasishaji unaendelea, kuacha ukurasa huu kunaweza kukatiza mchakato katika baadhi ya mazingira",
+ "Update to {version}" : "Sasisha kwenda {version}",
+ "An error occurred." : "Hitilafu imetokea",
+ "Please reload the page." : "Tafadhali pakia ukurasa upya ",
+ "The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "Usasishaji haujafaulu. Kwa habari zaidi<a href=\"{url}\"> angalia chapisho letu la jukwaa </a> linaloangazia suala hili.",
+ "The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "Uasasishaji umefanikiwa. Tafadhali toa taarifa ya jambo hili kwenye <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Jamii ya Nextcloud</a>.",
+ "Continue to {productName}" : "Endelea katika {productName}",
+ "_The update was successful. Redirecting you to {productName} in %n second._::_The update was successful. Redirecting you to {productName} in %n seconds._" : ["The update was successful. Redirecting you to {productName} in %n second."," Usasishaji umekamilika. Elekeza upya katika {productName} ndani ya %n sekunde."],
+ "Applications menu" : "Mwongozo wa maombi",
+ "Apps" : "Maombi",
+ "More apps" : "Apps zaidi",
+ "_{count} notification_::_{count} notifications_" : ["{count} notification","{count} taarifa"],
+ "No" : "Hapana",
+ "Yes" : "Ndiyo",
+ "The remote URL must include the user." : "Rimoti ya URL lazima ijumuishe mtumiaji",
+ "Invalid remote URL." : "Rimoti ya URL si halali",
+ "Failed to add the public link to your Nextcloud" : "Imeshindwa kuongeza kiungio cha jamii kwenye Nextcloud yako",
+ "Federated user" : "Mtumiaji aliyeshirikishwa",
+ "user@your-nextcloud.org" : "mtimiaji@nextcloudyako.org",
+ "Create share" : "Tengeneza ushirikishaji",
+ "Direct link copied to clipboard" : "Kiungio cha moja kwa moja kimenakiliwa kwenye ubao wa kunakili",
+ "Please copy the link manually:" : "Tafadhali nakili kiungio kikawaida",
+ "Custom date range" : "Safu ya tarehe maalum",
+ "Pick start date" : "Chagua tarehe ya kuanza",
+ "Pick end date" : "Chagua tarehe ya mwisho",
+ "Search in date range" : "Tafuta katika safu ya tarehe",
+ "Search in current app" : "Tafuta katika app ya hivi karibuni",
+ "Clear search" : "Futa utafutaji",
+ "Search everywhere" : "Tafuta kila mahali",
+ "Searching …" : "Inatafuta",
+ "Start typing to search" : "Anza kuandika ili kutafuta",
+ "No matching results" : "Hakuna matokeo yanayolingana",
+ "Today" : "Leo",
+ "Last 7 days" : "Siku 7 zilizopita",
+ "Last 30 days" : "Siku 30 zilizopita",
+ "This year" : "Mwaka huu",
+ "Last year" : "Mwaka uliopita",
+ "Unified search" : "Utafutaji wa umoja",
+ "Search apps, files, tags, messages" : "Tafuta app, faili, lebo, jumbe",
+ "Places" : "Maeneo",
+ "Date" : "Tarehe",
+ "Search people" : "Tafuta watu",
+ "People" : "Watu",
+ "Filter in current view" : "Chuja katika mwonekano wa sasa",
+ "Results" : "Matokeo",
+ "Load more results" : "Pakia matokeo zaidi",
+ "Search in" : "Tafuta katika",
+ "Log in" : "Ingia",
+ "Logging in …" : "Inaingia",
+ "Log in to {productName}" : "Ingia kwa {productName}",
+ "Wrong login or password." : "Makosa ya uingiaji au nenosiri",
+ "This account is disabled" : "Akaunti hii haijawezeshwa ",
+ "We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "Tumegundua majaribio mengi batili ya kuingia kutoka kwa IP yako. Kwa hivyo kuingia kwako kunakofuata kunasisitizwa hadi sekunde 30.",
+ "Account name or email" : "Jina la akaunti au barua pepe",
+ "Account name" : "Jina la akaunti",
+ "Server side authentication failed!" : "Uthibitishaji wa upande wa seva umeshindwa",
+ "Please contact your administrator." : "Tafadhali wasiliana na msimamizi wako",
+ "Session error" : "Hitilafu ya kipindi",
+ "It appears your session token has expired, please refresh the page and try again." : "Inaonekana tokeni za kipindi chako zimepitwa na wakati, tafadhali pumzisha ukurasa na ujaribu tena.",
+ "An internal error occurred." : "Hitilafu ya ndani imetokea",
+ "Please try again or contact your administrator." : "Tafadhali jaribu tena au wasiliana na msimamizi wako",
+ "Password" : "Nenosiri",
+ "Log in with a device" : "Ingia na kifaa",
+ "Login or email" : "Ingia au barua pepe",
+ "Your account is not setup for passwordless login." : "Akaunti yako haijapangiliwa uingiaji bila nenosiri",
+ "Your connection is not secure" : "Muunganisho wako si salama",
+ "Passwordless authentication is only available over a secure connection." : "Uthibitisho wa bila nenosiri upo tu penye usalalma wa hali ya juu",
+ "Browser not supported" : "Kivinjari hakitumiki",
+ "Passwordless authentication is not supported in your browser." : "Uthibitisho wa bila nenosiri hautumiki katika kivinjari chako",
+ "Reset password" : "Pangilia upya nenosiri",
+ "Back to login" : "Rudi kwenye uingiaji",
+ "If this account exists, a password reset message has been sent to its email address. If you do not receive it, verify your email address and/or Login, check your spam/junk folders or ask your local administration for help." : "Kama akaunti hii ipo, ujumbe wa kuweka upya nenosiri umetumwa kwa anwani yake ya barua pepe. Usipoipokea, thibitisha anwani yako ya barua pepe na/au Ingia, angalia folda zako za barua taka au taka au uombe usaidizi wa utawala wa eneo lako.",
+ "Couldn't send reset email. Please contact your administrator." : "Haiwezi kutuma barua pepe iliyowekwa upya. Tafadhali wasiliana na msimamizi wako",
+ "Password cannot be changed. Please contact your administrator." : "Nenosiri haliwezi kubadilishwa. Tafadhali wasiliana na msimamizi wako",
+ "New password" : "Nenosiri jipya",
+ "Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "Faili zako zimesimbwa kwa njia fiche. Hakutakuwa na njia ya kurejesha data yako baada ya kuweka upya nenosiri lako. Ikiwa huna uhakika wa kufanya, tafadhali wasiliana na msimamizi wako kabla ya kuendelea. Je, kweli unataka kuendelea?",
+ "I know what I'm doing" : "Ninajua nikifanyacho",
+ "Resetting password" : "Inaweka upya nenosiri",
+ "Schedule work & meetings, synced with all your devices." : "Ratibu kazi na mikutano, iliyosawazishwa na vifaa vyako vyote.",
+ "Keep your colleagues and friends in one place without leaking their private info." : "Waweke wenzako na marafiki katika sehemu moja bila kuvujisha habari zao za faragha.",
+ "Simple email app nicely integrated with Files, Contacts and Calendar." : "Programu rahisi ya barua pepe iliyounganishwa vizuri na Faili, Anwani na Kalenda.",
+ "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Kupiga gumzo, simu za video, kushiriki skrini, mikutano ya mtandaoni na mikutano ya wavuti - katika kivinjari chako na programu za simu.",
+ "Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Hati shirikishi, lahajedwali na mawasilisho, yaliyoundwa kwenye Collabora mtandaoni.",
+ "Distraction free note taking app." : "Programu ya kuchukua nukuu bila usumbufu.",
+ "Recommended apps" : "Program iliyopendekezwa",
+ "Loading apps …" : "Inapakia program",
+ "Could not fetch list of apps from the App Store." : "Haiwezi kuleta orodha ya maombi kutoka katika stoo ya maombi",
+ "App download or installation failed" : "Upakuaji au usanikishaji wa program umeshindikana",
+ "Cannot install this app because it is not compatible" : "Haiwezi kusakinisha program hii kwa sababu si sambamba",
+ "Cannot install this app" : "Haiwezi kusakinisha program hii",
+ "Skip" : "Ruka",
+ "Installing apps …" : "Inasakinisha program",
+ "Install recommended apps" : "Sakinisha program zilizopendekezwa",
+ "Avatar of {displayName}" : "Avatar ya {displayName}",
+ "Settings menu" : "Pangilia mwongozo",
+ "Loading your contacts …" : "Inapakia mawasiliano yako",
+ "Looking for {term} …" : "Inatafuta {term}",
+ "Search contacts" : "Tafuta mawasiliano",
+ "Reset search" : "Pangilia utafutaji",
+ "Search contacts …" : "Tafuta mawasiliano...",
+ "Could not load your contacts" : "Haikuweza kupakia mawasiliano yako",
+ "No contacts found" : "Hakuna mawasiliano yaliyopatikana",
+ "Show all contacts" : "Onesha mawasiliano yote",
+ "Install the Contacts app" : "Sakinisha program ya mawasiliano",
+ "Search" : "Tafuta",
+ "No results for {query}" : "Hakuna matokeo kwa {query}",
+ "Press Enter to start searching" : "Bonyeza ingia kuanza kutafuta",
+ "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Please enter {minSearchLength} character or more to search","Tafadhali weka vibambo {minSearchLength} au zaidi ili kutafuta"],
+ "An error occurred while searching for {type}" : "Hitilafu imetokea wakati ikitafuta {type}",
+ "Search starts once you start typing and results may be reached with the arrow keys" : "Utafutaji huanza mara moja unapoanza kuandika na matokeo yanaweza kufikiwa na funguo za mishale",
+ "Search for {name} only" : "Tafuta tu {name}",
+ "Loading more results …" : "Inapakia matokeo zaidi",
+ "Forgot password?" : "Umesahau nenosiri?",
+ "Back to login form" : "Rudi kwenye fomu ya uingiaji",
+ "Back" : "Rudi",
+ "Login form is disabled." : "Fomu ya uingiaji haikuwezeshwa",
+ "The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Fomu ya kuingia ya Nextcloud imezimwa. Tumia chaguo jingine la kuingia ikiwa linapatikana au wasiliana na utawala wako.",
+ "More actions" : "Vitendo zaidi",
+ "User menu" : "Mwongozo wa mtumiaji",
+ "You will be identified as {user} by the account owner." : "Utatambulika kama {user} na mmiliki wa akaunti",
+ "You are currently not identified." : "Kwa sasa hutambuliki",
+ "Set public name" : "Pangilia jina la umma",
+ "Change public name" : "Badili jina la umma",
+ "Password is too weak" : "Nenosiri ni dhaifu sana",
+ "Password is weak" : "Nenosiri ni dhaifu",
+ "Password is average" : "Nenosiri ni wastani",
+ "Password is strong" : "Nenosiri ni imara",
+ "Password is very strong" : "Nenosiri ni imara sana",
+ "Password is extremely strong" : "Nenosiri ni imara zaidi sana",
+ "Unknown password strength" : "Nguvu ya nenosiri haijulikani",
+ "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "Saraka yako ya data na faili pengine zinaweza kufikiwa kutoka kwa mtandao kwa sababu faili ya <code>.htaccess</code> haifanyi kazi.",
+ "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "Kwa maelezo ya jinsi ya kusanidi seva yako ipasavyo, tafadhali {linkStart} tazama hati {linkEnd}",
+ "Autoconfig file detected" : "Faili ya usanidi otomatiki imegunduliwa",
+ "The setup form below is pre-filled with the values from the config file." : "Fomu iliyopo hapa chini imejaa thamani kutoka kwa faili ya usanidi.",
+ "Security warning" : "Onyo la usalama",
+ "Create administration account" : "Tengeneza akaunti ya msimamizi",
+ "Administration account name" : "Jina la akaunti ya msimamizi",
+ "Administration account password" : "Nenosiri la akaunti ya msimamizi",
+ "Storage & database" : "Uhifadhi na kanzidata",
+ "Data folder" : "Kisanduku cha data",
+ "Database configuration" : "Usanidi wa kanzi data",
+ "Only {firstAndOnlyDatabase} is available." : "Yupo tu {firstAndOnlyDatabase}",
+ "Install and activate additional PHP modules to choose other database types." : "Sakinisha na uwashe moduli za ziada za PHP ili kuchagua aina zingine za hifadhidata",
+ "For more details check out the documentation." : "Kwa maelezo zaidi angalia nyaraka ",
+ "Performance warning" : "Onyo la utendaji kazi",
+ "You chose SQLite as database." : "Umechagua SQLite kama kanzidata",
+ "SQLite should only be used for minimal and development instances. For production we recommend a different database backend." : "SQLite inapaswa kutumika tu kwa hali ndogo na za ukuzaji. Kwa ajili ya uzalishaji tunapendekeza mazingira tofauti ya hifadhidata.",
+ "If you use clients for file syncing, the use of SQLite is highly discouraged." : "Ikiwa unatumia wateja kusawazisha faili, utumiaji wa SQLite umekatishwa tamaa sana.",
+ "Database user" : "Mtumiaji wa kanzidata",
+ "Database password" : "Nenosiri la kanzidata",
+ "Database name" : "Jina la kanzidata",
+ "Database tablespace" : "Nafasi ya meza ya kanzidata",
+ "Please specify the port number along with the host name (e.g., localhost:5432)." : "Tafadhali bainisha nambari ya mlango pamoja na jina la mwenyeji (k.m., mwenyeji wa eneo:5432).",
+ "Database host" : "Mwenyeji wa kanzidata",
+ "localhost" : "mwenyeji wa eneo",
+ "Installing …" : "Inasakinisha",
+ "Install" : "Sakinisha",
+ "Need help?" : "Unahitaji masaada?",
+ "See the documentation" : "Angalia mkusanyiko wa nyaraka",
+ "{name} version {version} and above" : "{name} toleo {version}na juu",
+ "This browser is not supported" : "Kivinjari hiki hakitumiki",
+ "Your browser is not supported. Please upgrade to a newer version or a supported one." : "Kivinjari chako hakitumiki. Tafadhali boresha hadi toleo jipya au kivinjari kinachotumika",
+ "Continue with this unsupported browser" : "Endelea na kivinjari kisichotumika",
+ "Supported versions" : "Toleo linalotumika",
+ "Search {types} …" : "Tafuta {types}...",
+ "Choose {file}" : "Chagua {file}",
+ "Choose" : "Chagua",
+ "Copy to {target}" : "Nakili kwenda {target}",
+ "Copy" : "Nakili",
+ "Move to {target}" : "Hamishia {target}",
+ "Move" : "Hamisha",
+ "OK" : "Sawa",
+ "read-only" : "soma tu",
+ "_{count} file conflict_::_{count} file conflicts_" : ["{count} file conflict","{count} migogoro ya faili"],
+ "One file conflict" : "Mgogoro mmoja wa faili",
+ "New Files" : "Faili mpya",
+ "Already existing files" : "Faili zilizopo tayari",
+ "Which files do you want to keep?" : "Faili ipi unataka kuliweka",
+ "If you select both versions, the copied file will have a number added to its name." : "Kama utachagua matoleo yote, faili zilizonakiliwa zitakuwa na namba zilizoongezeka kwenye jina lake",
+ "Cancel" : "Cancel",
+ "Continue" : "Endelea",
+ "(all selected)" : "(yote yamechaguliwa)",
+ "({count} selected)" : "({count} imechaguliwa)",
+ "Error loading file exists template" : "Hitilafu kupakia faili kiolezo kilichopo",
+ "Saving …" : "Inahifadhi...",
+ "seconds ago" : "sukunde zilizopita",
+ "Connection to server lost" : "Muunganiko kwenye seva umepotea",
+ "_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Problem loading page, reloading in %n second","Tatizo kupakia ukurasa, pakia upya %n sekunde"],
+ "Add to a project" : "Ongeza kwenye mradi",
+ "Show details" : "Onesha maelezo",
+ "Hide details" : "Ficha maelezo",
+ "Rename project" : "Ita mradi jina jipya",
+ "Failed to rename the project" : "Imeshindwa kuupa mradi jina jipya",
+ "Failed to create a project" : "Imeshindwa kutengeneza mradi",
+ "Failed to add the item to the project" : "Imeshindwa kuongeza kipengele katika mradi",
+ "Connect items to a project to make them easier to find" : "Unganisha vipengele kwenye mradi kuvifanya vipatikane kwa urahisi",
+ "Type to search for existing projects" : "Andika kutafuta kwa miradi iliyopo",
+ "New in" : "Mpya katika",
+ "View changelog" : "Tazama logi ya mabadiliko",
+ "No action available" : "Hakuna kitendo kilichopo",
+ "Error fetching contact actions" : "Hitilafu kuleta matendo ya mawasiliano",
+ "Close \"{dialogTitle}\" dialog" : "Funga \"{dialogTitle}\" mazungumzo",
+ "Email length is at max (255)" : "Urefu wa barua pepe uko katika kuwango cha (255)",
+ "Non-existing tag #{tag}" : "Lebo isiyokuwepo #{tag}",
+ "Restricted" : "Imezuiliwa",
+ "Invisible" : "Haionekani",
+ "Delete" : "Futa",
+ "Rename" : "Ipe jina jipya",
+ "Collaborative tags" : "Lebo zinazoshirikiana",
+ "No tags found" : "Hakuna lebo zilizopatikana",
+ "Clipboard not available, please copy manually" : "Ubao wa kunakili haupatikani, tafadhali nakili wewe mwenyewe",
+ "Personal" : "Binafsi",
+ "Accounts" : "Akaunti",
+ "Admin" : "Msimamizi",
+ "Help" : "Msaada",
+ "Access forbidden" : "Ufukiaji umezuiliwa",
+ "You are not allowed to access this page." : "Huruhusiwa kufikia ukurasa huu",
+ "Back to %s" : "Rudi kwenye %s",
+ "Page not found" : "Ukurasa haupatikani",
+ "The page could not be found on the server or you may not be allowed to view it." : "Ukurasa haukuweza kupatikana kwenye seva au huenda usiruhusiwe kuutazama.",
+ "Too many requests" : "Maombi mengi",
+ "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Kulikuwa na maombi mengi kutoka kwa mtandao wako. Jaribu tena baadaye au wasiliana na msimamizi wako ikiwa hili ni kosa.",
+ "Error" : "Hitilafu",
+ "Internal Server Error" : "Hitilafu ya ndani ya seva",
+ "The server was unable to complete your request." : "Seva haikuweza kukamilisha ombi lako.",
+ "If this happens again, please send the technical details below to the server administrator." : "Hili likitokea tena, tafadhali tuma maelezo ya kiufundi hapa chini kwa msimamizi wa seva.",
+ "More details can be found in the server log." : "Maelezo zaidi yanaweza kupatikana kwenye logi ya seva.",
+ "For more details see the documentation ↗." : "Kwa maelezo zaidi angalia wasilisho la nyaraka",
+ "Technical details" : "Maelezo ya kiufundi",
+ "Remote Address: %s" : "Anwani ya mbali: %s",
+ "Request ID: %s" : "Omba utambulisho: %s",
+ "Type: %s" : "Aina: %s",
+ "Code: %s" : "Kanuni: %s",
+ "Message: %s" : "Ujumbe: %s",
+ "File: %s" : "Faili:%s",
+ "Line: %s" : "Mstari: %s",
+ "Trace" : "Fuatilia",
+ "It looks like you are trying to reinstall your Nextcloud. However the file CAN_INSTALL is missing from your config directory. Please create the file CAN_INSTALL in your config folder to continue." : "Inaonekana unajaribu kusakinisha tena Nextcloud yako. Walakini faili CAN_INSTALL haipo kwenye saraka yako ya usanidi. Tafadhali unda faili CAN_INSTALL katika folda yako ya usanidi ili kuendelea.",
+ "Could not remove CAN_INSTALL from the config folder. Please remove this file manually." : "Haikuweza kuondoa CAN_INSTALL kutoka kwa folda ya usanidi. Tafadhali ondoa faili hii wewe mwenyewe.",
+ "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Programu hii inahitaji JavaScript kwa uendeshaji sahihi. Tafadhali {linkstart} wezesha JavaScript {linkend} na upakie upya ukurasa.",
+ "Skip to main content" : "Ruka hadi kwenye lengo kuu",
+ "Skip to navigation of app" : "Ruka hadi kwenye usogezaji wa program",
+ "Go to %s" : "Nenda kwenye %s",
+ "Get your own free account" : "Pata akaunti yako ya bure",
+ "Connect to your account" : "Unganisha kwenye akaunti yako",
+ "Please log in before granting %1$s access to your %2$s account." : "Tafadhali ingia kabla ya kutoa %1$s ufikiaji kwenye akaunti yako %2$s",
+ "If you are not trying to set up a new device or app, someone is trying to trick you into granting them access to your data. In this case do not proceed and instead contact your system administrator." : "Iwapo hujaribu kusanidi kifaa au programu mpya, mtu anajaribu kukuhadaa ili umpe idhini ya kufikia data yako. Katika kesi hii usiendelee na badala yake wasiliana na msimamizi wa mfumo wako.\n ",
+ "App password" : "Nenosiri la program",
+ "Grant access" : "Toa ufikiaji",
+ "Alternative log in using app password" : "Uingiaji mbadala kutumia nenosiri la program",
+ "Account access" : "Ufikiaji wa akaunti",
+ "Currently logged in as %1$s (%2$s)." : "Sasa umeingia kama %1$s (%2$s)",
+ "You are about to grant %1$s access to your %2$s account." : "Unakaribia kutoa %1$s uingiaji %2$skwenye akaunti yako",
+ "Account connected" : "Akaunti imeunganishwa",
+ "Your client should now be connected!" : "Mteja wako anapaswa kuunganishwa sasa",
+ "You can close this window." : "Unaweza kufunga window hii",
+ "Previous" : "Iliyopita",
+ "This share is password-protected" : "Ushirikishaji huu unalindwa na nenosiri",
+ "The password is wrong or expired. Please try again or request a new one." : "Nenosiri si sahihi au limeisha muda wake. Tafadhali jaribu tena au uombe mpya.",
+ "Please type in your email address to request a temporary password" : "Tafadhali andika ndani ya barua pepe yako kuomba nenosiri la muda",
+ "Email address" : "Anwani ya barua pepe",
+ "Password sent!" : "Nenosiri limetumwa",
+ "You are not authorized to request a password for this share" : "Hujathibitishwa kuomba nenosiri kwa uwasilishaji huu",
+ "Two-factor authentication" : "Uthibitishaji wa mambo mawili",
+ "Enhanced security is enabled for your account. Choose a second factor for authentication:" : "Usalama ulioimarishwa umewezeshwa kwa akaunti yako. Chagua kipengele cha pili cha uthibitishaji:",
+ "Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Haikuweza kupakia angalau mojawapo ya mbinu zako za uthibitishaji wa vipengele viwili vilivyowezeshwa. Tafadhali wasiliana na msimamizi wako.",
+ "Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance." : "Uthibitishaji wa vipengele viwili unatekelezwa lakini haujasanidiwa kwenye akaunti yako. Wasiliana na msimamizi wako kwa usaidizi.",
+ "Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication." : "Uthibitishaji wa vipengele viwili unatekelezwa lakini haujasanidiwa kwenye akaunti yako. Tafadhali endelea kusanidi uthibitishaji wa vipengele viwili.",
+ "Set up two-factor authentication" : "Sanidi uthibitishaji wa vipengele viwili",
+ "Two-factor authentication is enforced but has not been configured on your account. Use one of your backup codes to log in or contact your admin for assistance." : "Uthibitishaji wa vipengele viwili unatekelezwa lakini haujasanidiwa kwenye akaunti yako. Tumia mojawapo ya misimbo yako mbadala kuingia au kuwasiliana na msimamizi wako kwa usaidizi.",
+ "Use backup code" : "Tumia nambari ya kuthibitisha",
+ "Cancel login" : "Sitisha uingiaji",
+ "Enhanced security is enforced for your account. Choose which provider to set up:" : "Usalama ulioimarishwa unatekelezwa kwa akaunti yako. Chagua ni mtoa huduma gani wa kuweka:",
+ "Error while validating your second factor" : "Hitilafu wakati wa kuthibitisha kipengele chako cha pili",
+ "Access through untrusted domain" : "Fikia kupitia kikoa kisichoaminika",
+ "Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php." : "Tafadhali wasiliana na msimamizi wako. Ikiwa wewe ni msimamizi, hariri mipangilio ya \"vikoa_vinavyoaminika\" katika config/config.php kama mfano katika config.sample.php.",
+ "Further information how to configure this can be found in the %1$sdocumentation%2$s." : "Maelezo zaidi jinsi ya kusanidi haya yanaweza kupatikana katika %1$s hati %2$s ",
+ "App update required" : "Usasishaji wa program unahitajika",
+ "%1$s will be updated to version %2$s" : "%1$s itasasishwa kwenda toleo %2$s",
+ "The following apps will be updated:" : "Programu zifuatazo zitasasishwa:",
+ "These incompatible apps will be disabled:" : "Programu hizi zisizooana zitazimwa",
+ "The theme %s has been disabled." : "Lengo %s halijawezeshwa",
+ "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Tafadhali hakikisha kuwa hifadhidata, folda ya usanidi na folda ya data zimechelezwa kabla ya kuendelea.",
+ "Start update" : "Anza usasishaji",
+ "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "Ili kuzuia kuisha kwa usakinishaji mkubwa, badala yake unaweza kutekeleza amri ifuatayo kutoka kwa saraka yako ya usakinishaji:\n ",
+ "Detailed logs" : "Kumbukumbu za kina",
+ "Update needed" : "Sasisha inayotakiwa",
+ "Please use the command line updater because you have a big instance with more than 50 accounts." : "Tafadhali tumia kisasisho cha mstari wa amri kwa sababu una tukio kubwa na lenye zaidi ya akaunti 50.",
+ "For help, see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation</a>." : "Kwa msaada, angalia <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\"> onesho la nyaraka</a>",
+ "I know that if I continue doing the update via web UI has the risk, that the request runs into a timeout and could cause data loss, but I have a backup and know how to restore my instance in case of a failure." : "Ninajua kuwa ikiwa nitaendelea kusasisha kupitia kiolesura cha wavuti kuna hatari, kwamba ombi linakwenda kwa muda na linaweza kusababisha upotezaji wa data, lakini nina nakala rudufu na ninajua jinsi ya kurejesha mfano wangu ikiwa itashindwa.",
+ "Upgrade via web on my own risk" : "Upgrade via web on my own risk",
+ "Maintenance mode" : "Modi ya matengenezo",
+ "This %s instance is currently in maintenance mode, which may take a while." : "%s kwa sasa ni katika hali ya matengenezo, ambayo inaweza kuchukua muda. ",
+ "This page will refresh itself when the instance is available again." : "Ukurasa huu utajipumzisha upya wakati mfano unapatikana tena.\n ",
+ "Contact your system administrator if this message persists or appeared unexpectedly." : "Wasiliana na msimamizi wa mfumo wako ikiwa ujumbe huu utaendelea au ulionekana bila kutarajiwa.",
+ "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Kupiga gumzo, simu za picha mjongeo, kushiriki skrini, mikutano ya mtandaoni na mikutano ya wavuti - katika kivinjari chako na programu za simu.",
+ "You have not added any info yet" : "Hujaongeza taarifa yoyote bado",
+ "{user} has not added any info yet" : "{user} hajaongeza taarifa yoyote bado",
+ "Error opening the user status modal, try hard refreshing the page" : "Hitilafu imetokea wakati wa kufungua modi ya hali ya mtumiaji, jaribu kuonyesha upya ukurasa kwa bidii",
+ "Edit Profile" : "Hariri wasifu",
+ "The headline and about sections will show up here" : "Kichwa cha habari na sehemu kuhusu zitaonekana hapa",
+ "Very weak password" : "Nenosiri dhaifu sana",
+ "Weak password" : "Nenosiri dhaifu",
+ "So-so password" : "Nenosiri la so-so",
+ "Good password" : "Nenosiri zuri",
+ "Strong password" : "Nenosiri imara",
+ "Profile not found" : "Wasifu haupatikani",
+ "The profile does not exist." : "Wasifu haupo",
+ "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Saraka yako ya data na faili pengine zinaweza kufikiwa kutoka kwa mtandao kwa sababu faili ya .htaccess haifanyi kazi.",
+ "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "Kwa taarifa jinsi ya kusanidi seva yako vizuri, tafadhali angalia <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">onesho la nyaraka</a>",
+ "<strong>Create an admin account</strong>" : "<strong>tengeneza akaunti ya msimsmizi</strong>",
+ "New admin account name" : "Jina jipya la akaunti ya msimamizi",
+ "New admin password" : "Nenosiri jipya la msimamizi",
+ "Show password" : "Onesha nenosiri",
+ "Toggle password visibility" : "Geuza mwonekano wa nenosiri",
+ "Configure the database" : "Sanidi hifadhidata",
+ "Only %s is available." : "Yupo tu %s",
+ "Database account" : "Akaunti ya kanzidata"
+},
+"nplurals=2; plural=(n != 1);");
diff --git a/core/l10n/sw.json b/core/l10n/sw.json
new file mode 100644
index 00000000000..ca3d12944dd
--- /dev/null
+++ b/core/l10n/sw.json
@@ -0,0 +1,530 @@
+{ "translations": {
+ "Please select a file." : "Tafadhali teua faili",
+ "File is too big" : "Faili ni kubwa mno",
+ "The selected file is not an image." : "Faili lililoteuliwa si taswira",
+ "The selected file cannot be read." : "Faili lililochaguliwa halisomeki",
+ "The file was uploaded" : "Faili lilipakiwa",
+ "The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Faili lililopakiwa linazidi kiwango cha juu cha ukubwa wa faili linalielekea katika php.ini",
+ "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Faili iliyopakiliwa imezidi kiwango cha ukubwa wa faili iliyoelekezwa maalum katika fomu ya HTML",
+ "The file was only partially uploaded" : "Faili lilipakiwa kwa sehemu ndogo tu",
+ "No file was uploaded" : "Hakuna faili lililopakiwa",
+ "Missing a temporary folder" : "Imekosa faili la muda",
+ "Could not write file to disk" : "Haikuweza kuandika faili kwenye disk",
+ "A PHP extension stopped the file upload" : "Uongezaji wa PHP umesimamisha upakiaji wa faili",
+ "Invalid file provided" : "Faili iliyotolewa si halali",
+ "No image or file provided" : "Hakuna taswira au faili lililotolewa",
+ "Unknown filetype" : "Aina ya faili haijulikani",
+ "An error occurred. Please contact your admin." : "Hitilafu imetokea. Tafadhali wasiliana na msimamizi wako",
+ "Invalid image" : "Taswira si halisi",
+ "No temporary profile picture available, try again" : "Hakuna picha ya muda ya wasifu inayopatikana, jaribu tena",
+ "No crop data provided" : "Hakuna data iliyokatwa iliyotolewa",
+ "No valid crop data provided" : "Hakuna data halali iliyokatwa iliyotolewa",
+ "Crop is not square" : "Ukataji si mraba",
+ "State token does not match" : "Tokeni ya Serikali hailingani",
+ "Invalid app password" : "Nenosiri la app si halali",
+ "Could not complete login" : "Haiwezi kukamilisha uingiaji",
+ "State token missing" : "Tokeni ya Serikali inakosekana",
+ "Your login token is invalid or has expired" : "Tokeni za uingiaji wako si halali au zimepitwa wakati",
+ "Please use original client" : "Tafadhali tumia mteja halisi",
+ "This community release of Nextcloud is unsupported and push notifications are limited." : "Toleo hili la jumuiya la Nextcloud halitumiki na arifa zinazotumwa na programu huzuiwa.",
+ "Login" : "Ingia",
+ "Unsupported email length (>255)" : "Urefu wa barua pepe usiotumika (>255)",
+ "Password reset is disabled" : "Uwekaji mpya wa nenosiri umezimwa",
+ "Could not reset password because the token is expired" : "Haikuweza kuweka upya nenosiri kwa sababu tokeni zimeisha muda wake wa matumizi",
+ "Could not reset password because the token is invalid" : "Haikuweza kuweka upya nenosiri kwa sababu tokeni si halali",
+ "Password is too long. Maximum allowed length is 469 characters." : "Nenosiri ni refu sana. Kiwango cha juu cha urefu ulioruhusiwa ni wahusika 469",
+ "%s password reset" : "%s weka nenosiri upya",
+ "Password reset" : "Uwekaji mpya wa nenosiri",
+ "Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Bofya kitufe kifuatacho ili kuweka upya nenosiri lako. Ikiwa haujaomba kuweka upya nenosiri, basi puuza barua pepe hii.",
+ "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Bofya kiungo kifuatacho ili kuweka upya nenosiri lako. Ikiwa hujaomba kuweka upya nenosiri, basi puuza barua pepe hii.",
+ "Reset your password" : "Pangilia upya nenosiri lako",
+ "The given provider is not available" : "Mgavi aliyetolewa hapatikani",
+ "Task not found" : "Jukumu halijapatikana",
+ "Internal error" : "Hitilafu ya ndani",
+ "Not found" : "Haipatikani",
+ "Node is locked" : "Nodi imefungwa",
+ "Bad request" : "Uombaji mbaya",
+ "Requested task type does not exist" : "Uandikaji wa jukumu lililoombwa haupatikani",
+ "Necessary language model provider is not available" : "Mgavi muhimu wa aina ya lugha hapatikani",
+ "No text to image provider is available" : "Hakuna maandishi yaliyopo kwa mgavi wa taswira",
+ "Image not found" : "Taswira haipatikani",
+ "No translation provider available" : "Hakuna mgavi wa tafsiri aliyepo",
+ "Could not detect language" : "Haikuweza kugundua lugha",
+ "Unable to translate" : "Haiwezi kutafsiri",
+ "[%d / %d]: %s" : "[%d/%d]: %s",
+ "Repair step:" : "Rekwbisha hatua:",
+ "Repair info:" : "Rekebisha taarifa",
+ "Repair warning:" : "Rekebisha onyo:",
+ "Repair error:" : "Rekebisha hitilafu:",
+ "Nextcloud Server" : "Seva ya Nextcloud",
+ "Some of your link shares have been removed" : "Baadhi ya ushirikishaji wa kiungo chako umeondolewa",
+ "Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Kwa sababu ya hitilafu ya usalama ilitubidi kuondoa baadhi ya viungio vyako vilivyoshirikishwa. Tafadhali tazama kiungo kwa habari zaidi.",
+ "The account limit of this instance is reached." : "Kikomo cha akaunti cha tukio hili kimefikiwa.",
+ "Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Weka ufunguo wako wa usajili katika programu ya usaidizi ili kuongeza kikomo cha akaunti. Hii pia hukupa manufaa yote ya ziada ambayo Nextcloud Enterprise inatoa na inapendekezwa sana kwa uendeshaji ndani ya makampuni.",
+ "Learn more ↗" : "Jifunze zaidi",
+ "Preparing update" : "Andaa usasishaji",
+ "Please use the command line updater because updating via browser is disabled in your config.php." : "Tafadhali tumia kisasisho cha mstari wa amri kwa sababu kusasisha kupitia kivinjari kumezimwa katika config.php yako.",
+ "Turned on maintenance mode" : "Hali ya matengenezo imewashwa",
+ "Turned off maintenance mode" : "Hali ya matengenezo imezimwa",
+ "Maintenance mode is kept active" : "Hali ya matengenezo iko hai",
+ "Updating database schema" : "Skema ua kanzidata inasasishwa",
+ "Updated database" : "Kanzidata iliyosasishwa",
+ "Update app \"%s\" from App Store" : "Sasisha program \"%s\" kutoka katika stoo ya program",
+ "Checking whether the database schema for %s can be updated (this can take a long time depending on the database size)" : "Kuangalia kama schema ya kanzidata ya %s inaweza kusasishwa (hii inaweza kuchukua muda mrefu kulingana na saizi ya kanzidata) ",
+ "Updated \"%1$s\" to %2$s" : "Imesasishwa \"%1$s\" kwenda %2$s",
+ "Set log level to debug" : "Pangilia kiwango kirefu kwenda utatuzi",
+ "Reset log level" : "Weka upya kiwango kirefu",
+ "Starting code integrity check" : "Inaanza ukaguzi wa uadilifu wa msimbo",
+ "Finished code integrity check" : "Imemaliza ukaguzi wa uadilifu wa msimbo",
+ "%s (incompatible)" : "%s (isiyooana)",
+ "The following apps have been disabled: %s" : "Program zifuatazo hazijawezeshwa:%s",
+ "Already up to date" : "Imesasishwa tayari",
+ "Windows Command Script" : "Hati ya amri ya Windows",
+ "Electronic book document" : "Nyaraka za kitabu cha kielektroniki",
+ "TrueType Font Collection" : "Ukusanyaji wa TrueType Front",
+ "Web Open Font Format" : "Muundo wa mbele wa Wavuti",
+ "GPX geographic data" : "Data za kijiografia za GPX",
+ "Gzip archive" : "Kumbukumbu za Gzip",
+ "Adobe Illustrator document" : "Waraka wa uelekezaji wa Adobe",
+ "Java source code" : "Chanzo cha msimbo wa Java",
+ "JavaScript source code" : "Chanzo cha msimbo wa JavaScript",
+ "JSON document" : "Waraka wa JSON",
+ "Microsoft Access database" : "Ufikiaji wa kanzidata ya Microsoft",
+ "Microsoft OneNote document" : "Waraka wa Microsoft OneNote",
+ "Microsoft Word document" : "Waraka wa Microsoft Word",
+ "Unknown" : "Haijulikani",
+ "PDF document" : "Waraka wa PDF",
+ "PostScript document" : "Waraka wa PostScript",
+ "RSS summary" : "Ufupishaji wa RSS",
+ "Android package" : "Kifurushi cha Android",
+ "KML geographic data" : "Data za kijiografia za KML",
+ "KML geographic compressed data" : "Data za kijiografia za KML zilizofinywa",
+ "Lotus Word Pro document" : "Hati ya Lotus Word Pro",
+ "Excel spreadsheet" : "Lahajedwali ya Excel",
+ "Excel add-in" : "Nyongeza ya Excel",
+ "Excel 2007 binary spreadsheet" : "Excel 2007 yenye jozi za lahajedwali",
+ "Excel spreadsheet template" : "Kiolezo cha lahajedwali cha Excel",
+ "Outlook Message" : "Mtazamo wa ujumbe",
+ "PowerPoint presentation" : "Uwasilishaji wa Powerpoint",
+ "PowerPoint add-in" : "Program jalizi ya PowerPoint",
+ "PowerPoint presentation template" : "Uwasilishaji wa kiolezo cha Powerpoint",
+ "Word document" : "Waraka wa maneno",
+ "ODF formula" : "Fomula ya ODF",
+ "ODG drawing" : "Mchoro wa ODG",
+ "ODG drawing (Flat XML)" : "Mchoro wa ODG (Flat XML)",
+ "ODG template" : "Kiolezo cha ODG",
+ "ODP presentation" : "Uwasilishaji wa ODP",
+ "ODP presentation (Flat XML)" : "Uwasilishaji wa ODP (Flat XML)",
+ "ODP template" : "Kiolezo cha ODP",
+ "ODS spreadsheet" : "Lahajedwali ya ODS",
+ "ODS spreadsheet (Flat XML)" : "Lahajedwali ya ODS (Flat XML)",
+ "ODS template" : "Kiolezo chz ODS",
+ "ODT document" : "Waraka wa ODT",
+ "ODT document (Flat XML)" : "Waraka wa ODT (Flat XML)",
+ "ODT template" : "Kiolezo cha ODT",
+ "PowerPoint 2007 presentation" : "Uwasilishaji wa Powerpoint ya 2007",
+ "PowerPoint 2007 show" : "Onesho la PowerPoint 2007",
+ "PowerPoint 2007 presentation template" : "Kiolezo cha uwasilishaji wa PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Lahajedwali ya Excel 2007",
+ "Excel 2007 spreadsheet template" : "Kiolezo cha lahajedwali ya Excel 2007",
+ "Word 2007 document" : "Hati ya Word 2007",
+ "Word 2007 document template" : "Kiolezo cha hati ya Word 2007",
+ "Microsoft Visio document" : "Hati ya Microsoft Visio",
+ "WordPerfect document" : "Hati ya WordPerfect",
+ "7-zip archive" : "Kumbukumbu ya 7-zip",
+ "Blender scene" : "Tukio la blender",
+ "Bzip2 archive" : "Kumbukumbu ya Bzip2",
+ "Debian package" : "Kifurushi cha Debian",
+ "FictionBook document" : "Hati ya kitabu cha Fiction",
+ "Unknown font" : "Fonti isiyojulikana",
+ "Krita document" : "Hati ya Krita",
+ "Mobipocket e-book" : "Kitabu cha kielektroniki cha Mobpocket",
+ "Windows Installer package" : "Kifurushi cha kisakinishi cha Windows",
+ "Perl script" : "Hati ya Perl",
+ "PHP script" : "Hati ya PHP",
+ "Tar archive" : "Kumbukumbu ya Tar",
+ "XML document" : "Waraka wa XML",
+ "YAML document" : "Waraka wa YAML",
+ "Zip archive" : "Kumbukumbu za Zip",
+ "Zstandard archive" : "Kumbukumbu za Zstandard",
+ "AAC audio" : "Sauti ya AAC",
+ "FLAC audio" : "Sauti ya FLAC",
+ "MPEG-4 audio" : "Sauti ya MPEG-4",
+ "MP3 audio" : "Sauti ya MP3",
+ "Ogg audio" : "Sauti ya Ogg",
+ "RIFF/WAVe standard Audio" : "Sauti ya RIFF/WAVe standard",
+ "WebM audio" : "Sauti ya WebM",
+ "MP3 ShoutCast playlist" : "Orodha ya kucheza ya MP3 ShoutCast",
+ "Windows BMP image" : "Taswira ya Windows BMP",
+ "Better Portable Graphics image" : "Picha bora ya Michoro inayobebeka",
+ "EMF image" : "Taswira ya EMF",
+ "GIF image" : "Taswira ya GIF",
+ "HEIC image" : "Taswira ya HEIC",
+ "HEIF image" : "Taswira ya HEIF",
+ "JPEG-2000 JP2 image" : "Taswira ya JPEG-2000 JP2",
+ "JPEG image" : "Taswira ya JEPG",
+ "PNG image" : "Taswira ya PNG",
+ "SVG image" : "Taswira ya SVG",
+ "Truevision Targa image" : "Taswira ya Truevision Targa",
+ "TIFF image" : "Taswira ya TIFF",
+ "WebP image" : "Taswira ya WavutiP",
+ "Digital raw image" : "Taswira mbichi ya kidijitali",
+ "Windows Icon" : "Aikoni ya window",
+ "Email message" : "Jumbe za barua pepe",
+ "VCS/ICS calendar" : "Kalenda ya VCS/ICS",
+ "CSS stylesheet" : "Laha ya mtindo ya CSS",
+ "CSV document" : "Waraka wa CSV",
+ "HTML document" : "Waraka wa HTML",
+ "Markdown document" : "Hati ya alama",
+ "Org-mode file" : "Faili ya modi ya Org",
+ "Plain text document" : "Hati ya maandishi wazi",
+ "Rich Text document" : "Hati ya maandishi tajiri",
+ "Electronic business card" : "Kadi ya biashara ya kielektroniki",
+ "C++ source code" : "Msimbo wa chanzo C++",
+ "LDIF address book" : "Kitabu cha anwani cha LDIF",
+ "NFO document" : "Waraka wa NFO",
+ "PHP source" : "Chanzo cha PHP",
+ "Python script" : "Hati ya Python",
+ "ReStructuredText document" : "Hati ya Nakala Iliyoundwa upya",
+ "3GPP multimedia file" : "Faili ya media titika ya 3GPP",
+ "MPEG video" : "Picha mjongeo ya MPEG",
+ "DV video" : "Picha mjongeo ya DV",
+ "MPEG-2 transport stream" : "Mkondo wa usafiri wa MPEG-2",
+ "MPEG-4 video" : "Picha mjongeo ya MPEG-4",
+ "Ogg video" : "Picha mjongeo ya Ogg",
+ "QuickTime video" : "Picha mjongeo ya QuickTime",
+ "WebM video" : "Picha mjongeo ya WebM",
+ "Flash video" : "Picha mjongeo ya Flash",
+ "Matroska video" : "Picha mjongeo ya Matroska",
+ "Windows Media video" : "Picha mjongeo ya Windows Media",
+ "AVI video" : "Picha mjongeo ya AVI",
+ "Error occurred while checking server setup" : "Hitilafu imetokea wakati ikiangalia mpangilio wa seva",
+ "For more details see the {linkstart}documentation ↗{linkend}." : "Kwa maelezo zaidi ona {linkstart}uwasilishaji nyaraka {linkend}",
+ "unknown text" : "andiko lisilojulikana",
+ "Hello world!" : "Halo dunia!",
+ "sunny" : "a jua",
+ "Hello {name}, the weather is {weather}" : "Halo{name}, hali ya hewa ni {weather}",
+ "Hello {name}" : "Halo {name}",
+ "<strong>These are your search results<script>alert(1)</script></strong>" : "<strong>Haya ni matokeo ya utafutaji wako<script>toa taarifa(1)</script></strong>",
+ "new" : "mpya",
+ "_download %n file_::_download %n files_" : ["download %n file","pakua faili %n "],
+ "The update is in progress, leaving this page might interrupt the process in some environments." : "Usasishaji unaendelea, kuacha ukurasa huu kunaweza kukatiza mchakato katika baadhi ya mazingira",
+ "Update to {version}" : "Sasisha kwenda {version}",
+ "An error occurred." : "Hitilafu imetokea",
+ "Please reload the page." : "Tafadhali pakia ukurasa upya ",
+ "The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "Usasishaji haujafaulu. Kwa habari zaidi<a href=\"{url}\"> angalia chapisho letu la jukwaa </a> linaloangazia suala hili.",
+ "The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "Uasasishaji umefanikiwa. Tafadhali toa taarifa ya jambo hili kwenye <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Jamii ya Nextcloud</a>.",
+ "Continue to {productName}" : "Endelea katika {productName}",
+ "_The update was successful. Redirecting you to {productName} in %n second._::_The update was successful. Redirecting you to {productName} in %n seconds._" : ["The update was successful. Redirecting you to {productName} in %n second."," Usasishaji umekamilika. Elekeza upya katika {productName} ndani ya %n sekunde."],
+ "Applications menu" : "Mwongozo wa maombi",
+ "Apps" : "Maombi",
+ "More apps" : "Apps zaidi",
+ "_{count} notification_::_{count} notifications_" : ["{count} notification","{count} taarifa"],
+ "No" : "Hapana",
+ "Yes" : "Ndiyo",
+ "The remote URL must include the user." : "Rimoti ya URL lazima ijumuishe mtumiaji",
+ "Invalid remote URL." : "Rimoti ya URL si halali",
+ "Failed to add the public link to your Nextcloud" : "Imeshindwa kuongeza kiungio cha jamii kwenye Nextcloud yako",
+ "Federated user" : "Mtumiaji aliyeshirikishwa",
+ "user@your-nextcloud.org" : "mtimiaji@nextcloudyako.org",
+ "Create share" : "Tengeneza ushirikishaji",
+ "Direct link copied to clipboard" : "Kiungio cha moja kwa moja kimenakiliwa kwenye ubao wa kunakili",
+ "Please copy the link manually:" : "Tafadhali nakili kiungio kikawaida",
+ "Custom date range" : "Safu ya tarehe maalum",
+ "Pick start date" : "Chagua tarehe ya kuanza",
+ "Pick end date" : "Chagua tarehe ya mwisho",
+ "Search in date range" : "Tafuta katika safu ya tarehe",
+ "Search in current app" : "Tafuta katika app ya hivi karibuni",
+ "Clear search" : "Futa utafutaji",
+ "Search everywhere" : "Tafuta kila mahali",
+ "Searching …" : "Inatafuta",
+ "Start typing to search" : "Anza kuandika ili kutafuta",
+ "No matching results" : "Hakuna matokeo yanayolingana",
+ "Today" : "Leo",
+ "Last 7 days" : "Siku 7 zilizopita",
+ "Last 30 days" : "Siku 30 zilizopita",
+ "This year" : "Mwaka huu",
+ "Last year" : "Mwaka uliopita",
+ "Unified search" : "Utafutaji wa umoja",
+ "Search apps, files, tags, messages" : "Tafuta app, faili, lebo, jumbe",
+ "Places" : "Maeneo",
+ "Date" : "Tarehe",
+ "Search people" : "Tafuta watu",
+ "People" : "Watu",
+ "Filter in current view" : "Chuja katika mwonekano wa sasa",
+ "Results" : "Matokeo",
+ "Load more results" : "Pakia matokeo zaidi",
+ "Search in" : "Tafuta katika",
+ "Log in" : "Ingia",
+ "Logging in …" : "Inaingia",
+ "Log in to {productName}" : "Ingia kwa {productName}",
+ "Wrong login or password." : "Makosa ya uingiaji au nenosiri",
+ "This account is disabled" : "Akaunti hii haijawezeshwa ",
+ "We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "Tumegundua majaribio mengi batili ya kuingia kutoka kwa IP yako. Kwa hivyo kuingia kwako kunakofuata kunasisitizwa hadi sekunde 30.",
+ "Account name or email" : "Jina la akaunti au barua pepe",
+ "Account name" : "Jina la akaunti",
+ "Server side authentication failed!" : "Uthibitishaji wa upande wa seva umeshindwa",
+ "Please contact your administrator." : "Tafadhali wasiliana na msimamizi wako",
+ "Session error" : "Hitilafu ya kipindi",
+ "It appears your session token has expired, please refresh the page and try again." : "Inaonekana tokeni za kipindi chako zimepitwa na wakati, tafadhali pumzisha ukurasa na ujaribu tena.",
+ "An internal error occurred." : "Hitilafu ya ndani imetokea",
+ "Please try again or contact your administrator." : "Tafadhali jaribu tena au wasiliana na msimamizi wako",
+ "Password" : "Nenosiri",
+ "Log in with a device" : "Ingia na kifaa",
+ "Login or email" : "Ingia au barua pepe",
+ "Your account is not setup for passwordless login." : "Akaunti yako haijapangiliwa uingiaji bila nenosiri",
+ "Your connection is not secure" : "Muunganisho wako si salama",
+ "Passwordless authentication is only available over a secure connection." : "Uthibitisho wa bila nenosiri upo tu penye usalalma wa hali ya juu",
+ "Browser not supported" : "Kivinjari hakitumiki",
+ "Passwordless authentication is not supported in your browser." : "Uthibitisho wa bila nenosiri hautumiki katika kivinjari chako",
+ "Reset password" : "Pangilia upya nenosiri",
+ "Back to login" : "Rudi kwenye uingiaji",
+ "If this account exists, a password reset message has been sent to its email address. If you do not receive it, verify your email address and/or Login, check your spam/junk folders or ask your local administration for help." : "Kama akaunti hii ipo, ujumbe wa kuweka upya nenosiri umetumwa kwa anwani yake ya barua pepe. Usipoipokea, thibitisha anwani yako ya barua pepe na/au Ingia, angalia folda zako za barua taka au taka au uombe usaidizi wa utawala wa eneo lako.",
+ "Couldn't send reset email. Please contact your administrator." : "Haiwezi kutuma barua pepe iliyowekwa upya. Tafadhali wasiliana na msimamizi wako",
+ "Password cannot be changed. Please contact your administrator." : "Nenosiri haliwezi kubadilishwa. Tafadhali wasiliana na msimamizi wako",
+ "New password" : "Nenosiri jipya",
+ "Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?" : "Faili zako zimesimbwa kwa njia fiche. Hakutakuwa na njia ya kurejesha data yako baada ya kuweka upya nenosiri lako. Ikiwa huna uhakika wa kufanya, tafadhali wasiliana na msimamizi wako kabla ya kuendelea. Je, kweli unataka kuendelea?",
+ "I know what I'm doing" : "Ninajua nikifanyacho",
+ "Resetting password" : "Inaweka upya nenosiri",
+ "Schedule work & meetings, synced with all your devices." : "Ratibu kazi na mikutano, iliyosawazishwa na vifaa vyako vyote.",
+ "Keep your colleagues and friends in one place without leaking their private info." : "Waweke wenzako na marafiki katika sehemu moja bila kuvujisha habari zao za faragha.",
+ "Simple email app nicely integrated with Files, Contacts and Calendar." : "Programu rahisi ya barua pepe iliyounganishwa vizuri na Faili, Anwani na Kalenda.",
+ "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Kupiga gumzo, simu za video, kushiriki skrini, mikutano ya mtandaoni na mikutano ya wavuti - katika kivinjari chako na programu za simu.",
+ "Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Hati shirikishi, lahajedwali na mawasilisho, yaliyoundwa kwenye Collabora mtandaoni.",
+ "Distraction free note taking app." : "Programu ya kuchukua nukuu bila usumbufu.",
+ "Recommended apps" : "Program iliyopendekezwa",
+ "Loading apps …" : "Inapakia program",
+ "Could not fetch list of apps from the App Store." : "Haiwezi kuleta orodha ya maombi kutoka katika stoo ya maombi",
+ "App download or installation failed" : "Upakuaji au usanikishaji wa program umeshindikana",
+ "Cannot install this app because it is not compatible" : "Haiwezi kusakinisha program hii kwa sababu si sambamba",
+ "Cannot install this app" : "Haiwezi kusakinisha program hii",
+ "Skip" : "Ruka",
+ "Installing apps …" : "Inasakinisha program",
+ "Install recommended apps" : "Sakinisha program zilizopendekezwa",
+ "Avatar of {displayName}" : "Avatar ya {displayName}",
+ "Settings menu" : "Pangilia mwongozo",
+ "Loading your contacts …" : "Inapakia mawasiliano yako",
+ "Looking for {term} …" : "Inatafuta {term}",
+ "Search contacts" : "Tafuta mawasiliano",
+ "Reset search" : "Pangilia utafutaji",
+ "Search contacts …" : "Tafuta mawasiliano...",
+ "Could not load your contacts" : "Haikuweza kupakia mawasiliano yako",
+ "No contacts found" : "Hakuna mawasiliano yaliyopatikana",
+ "Show all contacts" : "Onesha mawasiliano yote",
+ "Install the Contacts app" : "Sakinisha program ya mawasiliano",
+ "Search" : "Tafuta",
+ "No results for {query}" : "Hakuna matokeo kwa {query}",
+ "Press Enter to start searching" : "Bonyeza ingia kuanza kutafuta",
+ "_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Please enter {minSearchLength} character or more to search","Tafadhali weka vibambo {minSearchLength} au zaidi ili kutafuta"],
+ "An error occurred while searching for {type}" : "Hitilafu imetokea wakati ikitafuta {type}",
+ "Search starts once you start typing and results may be reached with the arrow keys" : "Utafutaji huanza mara moja unapoanza kuandika na matokeo yanaweza kufikiwa na funguo za mishale",
+ "Search for {name} only" : "Tafuta tu {name}",
+ "Loading more results …" : "Inapakia matokeo zaidi",
+ "Forgot password?" : "Umesahau nenosiri?",
+ "Back to login form" : "Rudi kwenye fomu ya uingiaji",
+ "Back" : "Rudi",
+ "Login form is disabled." : "Fomu ya uingiaji haikuwezeshwa",
+ "The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Fomu ya kuingia ya Nextcloud imezimwa. Tumia chaguo jingine la kuingia ikiwa linapatikana au wasiliana na utawala wako.",
+ "More actions" : "Vitendo zaidi",
+ "User menu" : "Mwongozo wa mtumiaji",
+ "You will be identified as {user} by the account owner." : "Utatambulika kama {user} na mmiliki wa akaunti",
+ "You are currently not identified." : "Kwa sasa hutambuliki",
+ "Set public name" : "Pangilia jina la umma",
+ "Change public name" : "Badili jina la umma",
+ "Password is too weak" : "Nenosiri ni dhaifu sana",
+ "Password is weak" : "Nenosiri ni dhaifu",
+ "Password is average" : "Nenosiri ni wastani",
+ "Password is strong" : "Nenosiri ni imara",
+ "Password is very strong" : "Nenosiri ni imara sana",
+ "Password is extremely strong" : "Nenosiri ni imara zaidi sana",
+ "Unknown password strength" : "Nguvu ya nenosiri haijulikani",
+ "Your data directory and files are probably accessible from the internet because the <code>.htaccess</code> file does not work." : "Saraka yako ya data na faili pengine zinaweza kufikiwa kutoka kwa mtandao kwa sababu faili ya <code>.htaccess</code> haifanyi kazi.",
+ "For information how to properly configure your server, please {linkStart}see the documentation{linkEnd}" : "Kwa maelezo ya jinsi ya kusanidi seva yako ipasavyo, tafadhali {linkStart} tazama hati {linkEnd}",
+ "Autoconfig file detected" : "Faili ya usanidi otomatiki imegunduliwa",
+ "The setup form below is pre-filled with the values from the config file." : "Fomu iliyopo hapa chini imejaa thamani kutoka kwa faili ya usanidi.",
+ "Security warning" : "Onyo la usalama",
+ "Create administration account" : "Tengeneza akaunti ya msimamizi",
+ "Administration account name" : "Jina la akaunti ya msimamizi",
+ "Administration account password" : "Nenosiri la akaunti ya msimamizi",
+ "Storage & database" : "Uhifadhi na kanzidata",
+ "Data folder" : "Kisanduku cha data",
+ "Database configuration" : "Usanidi wa kanzi data",
+ "Only {firstAndOnlyDatabase} is available." : "Yupo tu {firstAndOnlyDatabase}",
+ "Install and activate additional PHP modules to choose other database types." : "Sakinisha na uwashe moduli za ziada za PHP ili kuchagua aina zingine za hifadhidata",
+ "For more details check out the documentation." : "Kwa maelezo zaidi angalia nyaraka ",
+ "Performance warning" : "Onyo la utendaji kazi",
+ "You chose SQLite as database." : "Umechagua SQLite kama kanzidata",
+ "SQLite should only be used for minimal and development instances. For production we recommend a different database backend." : "SQLite inapaswa kutumika tu kwa hali ndogo na za ukuzaji. Kwa ajili ya uzalishaji tunapendekeza mazingira tofauti ya hifadhidata.",
+ "If you use clients for file syncing, the use of SQLite is highly discouraged." : "Ikiwa unatumia wateja kusawazisha faili, utumiaji wa SQLite umekatishwa tamaa sana.",
+ "Database user" : "Mtumiaji wa kanzidata",
+ "Database password" : "Nenosiri la kanzidata",
+ "Database name" : "Jina la kanzidata",
+ "Database tablespace" : "Nafasi ya meza ya kanzidata",
+ "Please specify the port number along with the host name (e.g., localhost:5432)." : "Tafadhali bainisha nambari ya mlango pamoja na jina la mwenyeji (k.m., mwenyeji wa eneo:5432).",
+ "Database host" : "Mwenyeji wa kanzidata",
+ "localhost" : "mwenyeji wa eneo",
+ "Installing …" : "Inasakinisha",
+ "Install" : "Sakinisha",
+ "Need help?" : "Unahitaji masaada?",
+ "See the documentation" : "Angalia mkusanyiko wa nyaraka",
+ "{name} version {version} and above" : "{name} toleo {version}na juu",
+ "This browser is not supported" : "Kivinjari hiki hakitumiki",
+ "Your browser is not supported. Please upgrade to a newer version or a supported one." : "Kivinjari chako hakitumiki. Tafadhali boresha hadi toleo jipya au kivinjari kinachotumika",
+ "Continue with this unsupported browser" : "Endelea na kivinjari kisichotumika",
+ "Supported versions" : "Toleo linalotumika",
+ "Search {types} …" : "Tafuta {types}...",
+ "Choose {file}" : "Chagua {file}",
+ "Choose" : "Chagua",
+ "Copy to {target}" : "Nakili kwenda {target}",
+ "Copy" : "Nakili",
+ "Move to {target}" : "Hamishia {target}",
+ "Move" : "Hamisha",
+ "OK" : "Sawa",
+ "read-only" : "soma tu",
+ "_{count} file conflict_::_{count} file conflicts_" : ["{count} file conflict","{count} migogoro ya faili"],
+ "One file conflict" : "Mgogoro mmoja wa faili",
+ "New Files" : "Faili mpya",
+ "Already existing files" : "Faili zilizopo tayari",
+ "Which files do you want to keep?" : "Faili ipi unataka kuliweka",
+ "If you select both versions, the copied file will have a number added to its name." : "Kama utachagua matoleo yote, faili zilizonakiliwa zitakuwa na namba zilizoongezeka kwenye jina lake",
+ "Cancel" : "Cancel",
+ "Continue" : "Endelea",
+ "(all selected)" : "(yote yamechaguliwa)",
+ "({count} selected)" : "({count} imechaguliwa)",
+ "Error loading file exists template" : "Hitilafu kupakia faili kiolezo kilichopo",
+ "Saving …" : "Inahifadhi...",
+ "seconds ago" : "sukunde zilizopita",
+ "Connection to server lost" : "Muunganiko kwenye seva umepotea",
+ "_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Problem loading page, reloading in %n second","Tatizo kupakia ukurasa, pakia upya %n sekunde"],
+ "Add to a project" : "Ongeza kwenye mradi",
+ "Show details" : "Onesha maelezo",
+ "Hide details" : "Ficha maelezo",
+ "Rename project" : "Ita mradi jina jipya",
+ "Failed to rename the project" : "Imeshindwa kuupa mradi jina jipya",
+ "Failed to create a project" : "Imeshindwa kutengeneza mradi",
+ "Failed to add the item to the project" : "Imeshindwa kuongeza kipengele katika mradi",
+ "Connect items to a project to make them easier to find" : "Unganisha vipengele kwenye mradi kuvifanya vipatikane kwa urahisi",
+ "Type to search for existing projects" : "Andika kutafuta kwa miradi iliyopo",
+ "New in" : "Mpya katika",
+ "View changelog" : "Tazama logi ya mabadiliko",
+ "No action available" : "Hakuna kitendo kilichopo",
+ "Error fetching contact actions" : "Hitilafu kuleta matendo ya mawasiliano",
+ "Close \"{dialogTitle}\" dialog" : "Funga \"{dialogTitle}\" mazungumzo",
+ "Email length is at max (255)" : "Urefu wa barua pepe uko katika kuwango cha (255)",
+ "Non-existing tag #{tag}" : "Lebo isiyokuwepo #{tag}",
+ "Restricted" : "Imezuiliwa",
+ "Invisible" : "Haionekani",
+ "Delete" : "Futa",
+ "Rename" : "Ipe jina jipya",
+ "Collaborative tags" : "Lebo zinazoshirikiana",
+ "No tags found" : "Hakuna lebo zilizopatikana",
+ "Clipboard not available, please copy manually" : "Ubao wa kunakili haupatikani, tafadhali nakili wewe mwenyewe",
+ "Personal" : "Binafsi",
+ "Accounts" : "Akaunti",
+ "Admin" : "Msimamizi",
+ "Help" : "Msaada",
+ "Access forbidden" : "Ufukiaji umezuiliwa",
+ "You are not allowed to access this page." : "Huruhusiwa kufikia ukurasa huu",
+ "Back to %s" : "Rudi kwenye %s",
+ "Page not found" : "Ukurasa haupatikani",
+ "The page could not be found on the server or you may not be allowed to view it." : "Ukurasa haukuweza kupatikana kwenye seva au huenda usiruhusiwe kuutazama.",
+ "Too many requests" : "Maombi mengi",
+ "There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Kulikuwa na maombi mengi kutoka kwa mtandao wako. Jaribu tena baadaye au wasiliana na msimamizi wako ikiwa hili ni kosa.",
+ "Error" : "Hitilafu",
+ "Internal Server Error" : "Hitilafu ya ndani ya seva",
+ "The server was unable to complete your request." : "Seva haikuweza kukamilisha ombi lako.",
+ "If this happens again, please send the technical details below to the server administrator." : "Hili likitokea tena, tafadhali tuma maelezo ya kiufundi hapa chini kwa msimamizi wa seva.",
+ "More details can be found in the server log." : "Maelezo zaidi yanaweza kupatikana kwenye logi ya seva.",
+ "For more details see the documentation ↗." : "Kwa maelezo zaidi angalia wasilisho la nyaraka",
+ "Technical details" : "Maelezo ya kiufundi",
+ "Remote Address: %s" : "Anwani ya mbali: %s",
+ "Request ID: %s" : "Omba utambulisho: %s",
+ "Type: %s" : "Aina: %s",
+ "Code: %s" : "Kanuni: %s",
+ "Message: %s" : "Ujumbe: %s",
+ "File: %s" : "Faili:%s",
+ "Line: %s" : "Mstari: %s",
+ "Trace" : "Fuatilia",
+ "It looks like you are trying to reinstall your Nextcloud. However the file CAN_INSTALL is missing from your config directory. Please create the file CAN_INSTALL in your config folder to continue." : "Inaonekana unajaribu kusakinisha tena Nextcloud yako. Walakini faili CAN_INSTALL haipo kwenye saraka yako ya usanidi. Tafadhali unda faili CAN_INSTALL katika folda yako ya usanidi ili kuendelea.",
+ "Could not remove CAN_INSTALL from the config folder. Please remove this file manually." : "Haikuweza kuondoa CAN_INSTALL kutoka kwa folda ya usanidi. Tafadhali ondoa faili hii wewe mwenyewe.",
+ "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Programu hii inahitaji JavaScript kwa uendeshaji sahihi. Tafadhali {linkstart} wezesha JavaScript {linkend} na upakie upya ukurasa.",
+ "Skip to main content" : "Ruka hadi kwenye lengo kuu",
+ "Skip to navigation of app" : "Ruka hadi kwenye usogezaji wa program",
+ "Go to %s" : "Nenda kwenye %s",
+ "Get your own free account" : "Pata akaunti yako ya bure",
+ "Connect to your account" : "Unganisha kwenye akaunti yako",
+ "Please log in before granting %1$s access to your %2$s account." : "Tafadhali ingia kabla ya kutoa %1$s ufikiaji kwenye akaunti yako %2$s",
+ "If you are not trying to set up a new device or app, someone is trying to trick you into granting them access to your data. In this case do not proceed and instead contact your system administrator." : "Iwapo hujaribu kusanidi kifaa au programu mpya, mtu anajaribu kukuhadaa ili umpe idhini ya kufikia data yako. Katika kesi hii usiendelee na badala yake wasiliana na msimamizi wa mfumo wako.\n ",
+ "App password" : "Nenosiri la program",
+ "Grant access" : "Toa ufikiaji",
+ "Alternative log in using app password" : "Uingiaji mbadala kutumia nenosiri la program",
+ "Account access" : "Ufikiaji wa akaunti",
+ "Currently logged in as %1$s (%2$s)." : "Sasa umeingia kama %1$s (%2$s)",
+ "You are about to grant %1$s access to your %2$s account." : "Unakaribia kutoa %1$s uingiaji %2$skwenye akaunti yako",
+ "Account connected" : "Akaunti imeunganishwa",
+ "Your client should now be connected!" : "Mteja wako anapaswa kuunganishwa sasa",
+ "You can close this window." : "Unaweza kufunga window hii",
+ "Previous" : "Iliyopita",
+ "This share is password-protected" : "Ushirikishaji huu unalindwa na nenosiri",
+ "The password is wrong or expired. Please try again or request a new one." : "Nenosiri si sahihi au limeisha muda wake. Tafadhali jaribu tena au uombe mpya.",
+ "Please type in your email address to request a temporary password" : "Tafadhali andika ndani ya barua pepe yako kuomba nenosiri la muda",
+ "Email address" : "Anwani ya barua pepe",
+ "Password sent!" : "Nenosiri limetumwa",
+ "You are not authorized to request a password for this share" : "Hujathibitishwa kuomba nenosiri kwa uwasilishaji huu",
+ "Two-factor authentication" : "Uthibitishaji wa mambo mawili",
+ "Enhanced security is enabled for your account. Choose a second factor for authentication:" : "Usalama ulioimarishwa umewezeshwa kwa akaunti yako. Chagua kipengele cha pili cha uthibitishaji:",
+ "Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Haikuweza kupakia angalau mojawapo ya mbinu zako za uthibitishaji wa vipengele viwili vilivyowezeshwa. Tafadhali wasiliana na msimamizi wako.",
+ "Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance." : "Uthibitishaji wa vipengele viwili unatekelezwa lakini haujasanidiwa kwenye akaunti yako. Wasiliana na msimamizi wako kwa usaidizi.",
+ "Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication." : "Uthibitishaji wa vipengele viwili unatekelezwa lakini haujasanidiwa kwenye akaunti yako. Tafadhali endelea kusanidi uthibitishaji wa vipengele viwili.",
+ "Set up two-factor authentication" : "Sanidi uthibitishaji wa vipengele viwili",
+ "Two-factor authentication is enforced but has not been configured on your account. Use one of your backup codes to log in or contact your admin for assistance." : "Uthibitishaji wa vipengele viwili unatekelezwa lakini haujasanidiwa kwenye akaunti yako. Tumia mojawapo ya misimbo yako mbadala kuingia au kuwasiliana na msimamizi wako kwa usaidizi.",
+ "Use backup code" : "Tumia nambari ya kuthibitisha",
+ "Cancel login" : "Sitisha uingiaji",
+ "Enhanced security is enforced for your account. Choose which provider to set up:" : "Usalama ulioimarishwa unatekelezwa kwa akaunti yako. Chagua ni mtoa huduma gani wa kuweka:",
+ "Error while validating your second factor" : "Hitilafu wakati wa kuthibitisha kipengele chako cha pili",
+ "Access through untrusted domain" : "Fikia kupitia kikoa kisichoaminika",
+ "Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php." : "Tafadhali wasiliana na msimamizi wako. Ikiwa wewe ni msimamizi, hariri mipangilio ya \"vikoa_vinavyoaminika\" katika config/config.php kama mfano katika config.sample.php.",
+ "Further information how to configure this can be found in the %1$sdocumentation%2$s." : "Maelezo zaidi jinsi ya kusanidi haya yanaweza kupatikana katika %1$s hati %2$s ",
+ "App update required" : "Usasishaji wa program unahitajika",
+ "%1$s will be updated to version %2$s" : "%1$s itasasishwa kwenda toleo %2$s",
+ "The following apps will be updated:" : "Programu zifuatazo zitasasishwa:",
+ "These incompatible apps will be disabled:" : "Programu hizi zisizooana zitazimwa",
+ "The theme %s has been disabled." : "Lengo %s halijawezeshwa",
+ "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Tafadhali hakikisha kuwa hifadhidata, folda ya usanidi na folda ya data zimechelezwa kabla ya kuendelea.",
+ "Start update" : "Anza usasishaji",
+ "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "Ili kuzuia kuisha kwa usakinishaji mkubwa, badala yake unaweza kutekeleza amri ifuatayo kutoka kwa saraka yako ya usakinishaji:\n ",
+ "Detailed logs" : "Kumbukumbu za kina",
+ "Update needed" : "Sasisha inayotakiwa",
+ "Please use the command line updater because you have a big instance with more than 50 accounts." : "Tafadhali tumia kisasisho cha mstari wa amri kwa sababu una tukio kubwa na lenye zaidi ya akaunti 50.",
+ "For help, see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation</a>." : "Kwa msaada, angalia <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\"> onesho la nyaraka</a>",
+ "I know that if I continue doing the update via web UI has the risk, that the request runs into a timeout and could cause data loss, but I have a backup and know how to restore my instance in case of a failure." : "Ninajua kuwa ikiwa nitaendelea kusasisha kupitia kiolesura cha wavuti kuna hatari, kwamba ombi linakwenda kwa muda na linaweza kusababisha upotezaji wa data, lakini nina nakala rudufu na ninajua jinsi ya kurejesha mfano wangu ikiwa itashindwa.",
+ "Upgrade via web on my own risk" : "Upgrade via web on my own risk",
+ "Maintenance mode" : "Modi ya matengenezo",
+ "This %s instance is currently in maintenance mode, which may take a while." : "%s kwa sasa ni katika hali ya matengenezo, ambayo inaweza kuchukua muda. ",
+ "This page will refresh itself when the instance is available again." : "Ukurasa huu utajipumzisha upya wakati mfano unapatikana tena.\n ",
+ "Contact your system administrator if this message persists or appeared unexpectedly." : "Wasiliana na msimamizi wa mfumo wako ikiwa ujumbe huu utaendelea au ulionekana bila kutarajiwa.",
+ "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Kupiga gumzo, simu za picha mjongeo, kushiriki skrini, mikutano ya mtandaoni na mikutano ya wavuti - katika kivinjari chako na programu za simu.",
+ "You have not added any info yet" : "Hujaongeza taarifa yoyote bado",
+ "{user} has not added any info yet" : "{user} hajaongeza taarifa yoyote bado",
+ "Error opening the user status modal, try hard refreshing the page" : "Hitilafu imetokea wakati wa kufungua modi ya hali ya mtumiaji, jaribu kuonyesha upya ukurasa kwa bidii",
+ "Edit Profile" : "Hariri wasifu",
+ "The headline and about sections will show up here" : "Kichwa cha habari na sehemu kuhusu zitaonekana hapa",
+ "Very weak password" : "Nenosiri dhaifu sana",
+ "Weak password" : "Nenosiri dhaifu",
+ "So-so password" : "Nenosiri la so-so",
+ "Good password" : "Nenosiri zuri",
+ "Strong password" : "Nenosiri imara",
+ "Profile not found" : "Wasifu haupatikani",
+ "The profile does not exist." : "Wasifu haupo",
+ "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Saraka yako ya data na faili pengine zinaweza kufikiwa kutoka kwa mtandao kwa sababu faili ya .htaccess haifanyi kazi.",
+ "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "Kwa taarifa jinsi ya kusanidi seva yako vizuri, tafadhali angalia <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">onesho la nyaraka</a>",
+ "<strong>Create an admin account</strong>" : "<strong>tengeneza akaunti ya msimsmizi</strong>",
+ "New admin account name" : "Jina jipya la akaunti ya msimamizi",
+ "New admin password" : "Nenosiri jipya la msimamizi",
+ "Show password" : "Onesha nenosiri",
+ "Toggle password visibility" : "Geuza mwonekano wa nenosiri",
+ "Configure the database" : "Sanidi hifadhidata",
+ "Only %s is available." : "Yupo tu %s",
+ "Database account" : "Akaunti ya kanzidata"
+},"pluralForm" :"nplurals=2; plural=(n != 1);"
+} \ No newline at end of file
diff --git a/core/l10n/th.js b/core/l10n/th.js
index c19f0a3951c..d909cc42e7b 100644
--- a/core/l10n/th.js
+++ b/core/l10n/th.js
@@ -48,17 +48,17 @@ OC.L10N.register(
"No translation provider available" : "ไม่มีผู้ให้บริการแปลที่พร้อมใช้งาน",
"Could not detect language" : "ไม่สามารถตรวจจับภาษา",
"Unable to translate" : "ไม่สามารถแปล",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "ขั้นตอนการซ่อมแซม:",
+ "Repair info:" : "ข้อมูลการซ่อมแซม:",
+ "Repair warning:" : "คำเตือนการซ่อมแซม:",
+ "Repair error:" : "ข้อผิดพลาดการซ่อมแซม:",
"Nextcloud Server" : "เซิร์ฟเวอร์ Nextcloud",
"Some of your link shares have been removed" : "ลิงก์แชร์บางลิงก์ของคุณถูกลบออก",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "เนื่องจากข้อบกพร่องความปลอดภัย เราจำเป็นต้องลบลิงก์แชร์บางลิงก์ของคุณออก โปรดดูที่ลิงก์สำหรับข้อมูลเพิ่มเติม",
"The account limit of this instance is reached." : "ถึงขีดจำกัดจำนวนบัญชีของเซิร์ฟเวอร์นี้แล้ว",
"Learn more ↗" : "เรียนรู้เพิ่มเติม ↗",
"Preparing update" : "กำลังเตรียมอัปเดต",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "ขั้นตอนการซ่อมแซม:",
- "Repair info:" : "ข้อมูลการซ่อมแซม:",
- "Repair warning:" : "คำเตือนการซ่อมแซม:",
- "Repair error:" : "ข้อผิดพลาดการซ่อมแซม:",
"Turned on maintenance mode" : "เปิดโหมดการบำรุงรักษาแล้ว",
"Turned off maintenance mode" : "ปิดโหมดการบำรุงรักษาแล้ว",
"Maintenance mode is kept active" : "โหมดการบำรุงรักษาถูกเปิดไว้",
@@ -252,9 +252,9 @@ OC.L10N.register(
"Admin" : "ผู้ดูแลระบบ",
"Help" : "ช่วยเหลือ",
"Access forbidden" : "ไม่ได้รับอนุญาตให้เข้าถึง",
+ "Back to %s" : "กลับสู่ %s",
"Page not found" : "ไม่พบหน้า",
"The page could not be found on the server or you may not be allowed to view it." : "ไม่พบหน้านี้บนเซิร์ฟเวอร์ หรือคุณอาจไม่ได้รับอนุญาตให้ดูหน้านี้",
- "Back to %s" : "กลับสู่ %s",
"Too many requests" : "มีคำขอมากเกินไป",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "มีการส่งคำขอจากเครือข่ายของคุณมากเกินไป กรุณาลองอีกครั้งในภายหลัง หรือติดต่อผู้ดูแลระบบหากเป็นข้อผิดพลาด",
"Error" : "ข้อผิดพลาด",
@@ -328,11 +328,9 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "เซิร์ฟเวอร์ %s นี้อยู่ในโหมดการบำรุงรักษา ซึ่งอาจใช้เวลาสักครู่",
"This page will refresh itself when the instance is available again." : "หน้านี้จะรีเฟรชตัวเองเมื่อเซิร์ฟเวอร์สามารถใช้ได้อีกครั้ง",
"Contact your system administrator if this message persists or appeared unexpectedly." : "ติดต่อผู้ดูแลระบบของคุณหากข้อความนี้ยังคงอยู่หรือปรากฏโดยไม่คาดคิด",
- "Currently open" : "เปิดอยู่ในขณะนี้",
"You have not added any info yet" : "คุณยังไม่ได้เพิ่มข้อมูลใด ๆ",
"{user} has not added any info yet" : "{user} ยังไม่ได้เพิ่มข้อมูลใด ๆ",
"Edit Profile" : "แก้ไขโปรไฟล์",
- "Error loading message template: {error}" : "เกิดข้อผิดพลาดขณะกำลังโหลดเทมเพลตข้อความ: {error} ",
"Very weak password" : "รหัสผ่านระดับต่ำมาก",
"Weak password" : "รหัสผ่านระดับต่ำ",
"So-so password" : "รหัสผ่านระดับปกติ",
diff --git a/core/l10n/th.json b/core/l10n/th.json
index d4b940fb03f..93a08cd1f78 100644
--- a/core/l10n/th.json
+++ b/core/l10n/th.json
@@ -46,17 +46,17 @@
"No translation provider available" : "ไม่มีผู้ให้บริการแปลที่พร้อมใช้งาน",
"Could not detect language" : "ไม่สามารถตรวจจับภาษา",
"Unable to translate" : "ไม่สามารถแปล",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "ขั้นตอนการซ่อมแซม:",
+ "Repair info:" : "ข้อมูลการซ่อมแซม:",
+ "Repair warning:" : "คำเตือนการซ่อมแซม:",
+ "Repair error:" : "ข้อผิดพลาดการซ่อมแซม:",
"Nextcloud Server" : "เซิร์ฟเวอร์ Nextcloud",
"Some of your link shares have been removed" : "ลิงก์แชร์บางลิงก์ของคุณถูกลบออก",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "เนื่องจากข้อบกพร่องความปลอดภัย เราจำเป็นต้องลบลิงก์แชร์บางลิงก์ของคุณออก โปรดดูที่ลิงก์สำหรับข้อมูลเพิ่มเติม",
"The account limit of this instance is reached." : "ถึงขีดจำกัดจำนวนบัญชีของเซิร์ฟเวอร์นี้แล้ว",
"Learn more ↗" : "เรียนรู้เพิ่มเติม ↗",
"Preparing update" : "กำลังเตรียมอัปเดต",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "ขั้นตอนการซ่อมแซม:",
- "Repair info:" : "ข้อมูลการซ่อมแซม:",
- "Repair warning:" : "คำเตือนการซ่อมแซม:",
- "Repair error:" : "ข้อผิดพลาดการซ่อมแซม:",
"Turned on maintenance mode" : "เปิดโหมดการบำรุงรักษาแล้ว",
"Turned off maintenance mode" : "ปิดโหมดการบำรุงรักษาแล้ว",
"Maintenance mode is kept active" : "โหมดการบำรุงรักษาถูกเปิดไว้",
@@ -250,9 +250,9 @@
"Admin" : "ผู้ดูแลระบบ",
"Help" : "ช่วยเหลือ",
"Access forbidden" : "ไม่ได้รับอนุญาตให้เข้าถึง",
+ "Back to %s" : "กลับสู่ %s",
"Page not found" : "ไม่พบหน้า",
"The page could not be found on the server or you may not be allowed to view it." : "ไม่พบหน้านี้บนเซิร์ฟเวอร์ หรือคุณอาจไม่ได้รับอนุญาตให้ดูหน้านี้",
- "Back to %s" : "กลับสู่ %s",
"Too many requests" : "มีคำขอมากเกินไป",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "มีการส่งคำขอจากเครือข่ายของคุณมากเกินไป กรุณาลองอีกครั้งในภายหลัง หรือติดต่อผู้ดูแลระบบหากเป็นข้อผิดพลาด",
"Error" : "ข้อผิดพลาด",
@@ -326,11 +326,9 @@
"This %s instance is currently in maintenance mode, which may take a while." : "เซิร์ฟเวอร์ %s นี้อยู่ในโหมดการบำรุงรักษา ซึ่งอาจใช้เวลาสักครู่",
"This page will refresh itself when the instance is available again." : "หน้านี้จะรีเฟรชตัวเองเมื่อเซิร์ฟเวอร์สามารถใช้ได้อีกครั้ง",
"Contact your system administrator if this message persists or appeared unexpectedly." : "ติดต่อผู้ดูแลระบบของคุณหากข้อความนี้ยังคงอยู่หรือปรากฏโดยไม่คาดคิด",
- "Currently open" : "เปิดอยู่ในขณะนี้",
"You have not added any info yet" : "คุณยังไม่ได้เพิ่มข้อมูลใด ๆ",
"{user} has not added any info yet" : "{user} ยังไม่ได้เพิ่มข้อมูลใด ๆ",
"Edit Profile" : "แก้ไขโปรไฟล์",
- "Error loading message template: {error}" : "เกิดข้อผิดพลาดขณะกำลังโหลดเทมเพลตข้อความ: {error} ",
"Very weak password" : "รหัสผ่านระดับต่ำมาก",
"Weak password" : "รหัสผ่านระดับต่ำ",
"So-so password" : "รหัสผ่านระดับปกติ",
diff --git a/core/l10n/tr.js b/core/l10n/tr.js
index f89154d7c4b..ae1275fa13c 100644
--- a/core/l10n/tr.js
+++ b/core/l10n/tr.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Görev bulunamadı",
"Internal error" : "İçeride bir sorun çıktı",
"Not found" : "Bulunamadı",
+ "Node is locked" : "Düğüm kilitlenmiş",
"Bad request" : "İstek hatalı",
"Requested task type does not exist" : "İstenilen görev türü bulunamadı",
"Necessary language model provider is not available" : "Gerekli dil modeli sağlayıcısı kullanılamıyor",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Kullanılabilecek bir çeviri hizmeti sağlayıcı yok",
"Could not detect language" : "Dil algılanamadı",
"Unable to translate" : "Çevrilemedi",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Onarım adımı:",
+ "Repair info:" : "Onarım bilgileri:",
+ "Repair warning:" : "Onarım uyarısı:",
+ "Repair error:" : "Onarım sorunu:",
"Nextcloud Server" : "Nextcloud sunucusu",
"Some of your link shares have been removed" : "Bazı paylaşım bağlantılarınız silindi",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Bir güvenlik açığı nedeniyle bazı paylaşım bağlantılarınızı silmek zorunda kaldık. ayrıntılı bilgi almak için bağlantıya bakabilirsiniz.",
@@ -59,14 +65,9 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Hesap sayısı sınırını artırmak için destek uygulamasına abonelik kodunuzu yazın. Bu ayrıca size Nextcloud Enterprise sürümünün sunduğu ve kurumsal operasyonlar için önemle önerilen tüm ek faydaları sağlar.",
"Learn more ↗" : "Ayrıntılı bilgi alın ↗",
"Preparing update" : "Güncelleme hazırlanıyor",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Onarım adımı:",
- "Repair info:" : "Onarım bilgileri:",
- "Repair warning:" : "Onarım uyarısı:",
- "Repair error:" : "Onarım sorunu:",
- "Please use the command line updater because updating via browser is disabled in your config.php." : "Tarayıcı üzerinden güncelleme config.php dosyasında kullanımdan kaldırılmış olduğundan, komut satırı güncelleyicisini kullanın.",
- "Turned on maintenance mode" : "Bakım kipi kullanıma alındı",
- "Turned off maintenance mode" : "Bakım kipi kullanımdan kaldırıldı",
+ "Please use the command line updater because updating via browser is disabled in your config.php." : "Tarayıcı üzerinden güncelleme özelliği config.php dosyasından kapatılmış olduğundan, komut satırı güncelleyicisini kullanın.",
+ "Turned on maintenance mode" : "Bakım kipi açıldı",
+ "Turned off maintenance mode" : "Bakım kipi kapatıldı",
"Maintenance mode is kept active" : "Bakım kipi kullanımda tutuldu",
"Updating database schema" : "Veri tabanı şeması güncelleniyor",
"Updated database" : "Veri tabanı güncellendi",
@@ -80,8 +81,125 @@ OC.L10N.register(
"%s (incompatible)" : "%s (uyumsuz)",
"The following apps have been disabled: %s" : "Şu uygulamalar kullanımdan kaldırıldı: %s",
"Already up to date" : "Zaten güncel",
+ "Windows Command Script" : "Windows komut satırı betiği",
+ "Electronic book document" : "Elektronik kitap belgesi",
+ "TrueType Font Collection" : "TrueType yazı tipi derlemesi",
+ "Web Open Font Format" : "Web Open yazı tipi biçimi",
+ "GPX geographic data" : "GPX coğrafi verileri",
+ "Gzip archive" : "Gzip arşivi",
+ "Adobe Illustrator document" : "Adobe Illustrator belgesi",
+ "Java source code" : "Java kaynak kodu",
+ "JavaScript source code" : "JavaScript kaynak kodu",
+ "JSON document" : "JSON belgesi",
+ "Microsoft Access database" : "Microsoft Access veri tabanı",
+ "Microsoft OneNote document" : "Microsoft OneNote belgesi",
+ "Microsoft Word document" : "Microsoft Word belgesi",
"Unknown" : "Bilinmiyor",
- "PNG image" : "PNG Görseli",
+ "PDF document" : "PDF belgesi",
+ "PostScript document" : "PostScript belgesi",
+ "RSS summary" : "RSS özeti",
+ "Android package" : "Android paketi",
+ "KML geographic data" : "KML coğrafi verileri",
+ "KML geographic compressed data" : "KML sıkıştırılmış coğrafi verileri",
+ "Lotus Word Pro document" : "Lotus Word Pro belgesi",
+ "Excel spreadsheet" : "Excel çalışma sayfası",
+ "Excel add-in" : "Excel eklentisi",
+ "Excel 2007 binary spreadsheet" : "Excel 2007 binary çalışma sayfası",
+ "Excel spreadsheet template" : "Excel çalışma sayfası kalıbı",
+ "Outlook Message" : "Outlook iletisi",
+ "PowerPoint presentation" : "PowerPoint sunumu",
+ "PowerPoint add-in" : "PowerPoint eklentisi",
+ "PowerPoint presentation template" : "PowerPoint sunumu kalıbı",
+ "Word document" : "Word belgesi",
+ "ODF formula" : "ODF formülü",
+ "ODG drawing" : "ODG çizimi",
+ "ODG drawing (Flat XML)" : "ODG çizimi (Düz XML)",
+ "ODG template" : "ODG kalıbı",
+ "ODP presentation" : "ODP sunumu",
+ "ODP presentation (Flat XML)" : "ODP sunumu (Düz XML)",
+ "ODP template" : "ODP kalıbı",
+ "ODS spreadsheet" : "ODS çalışma sayfası",
+ "ODS spreadsheet (Flat XML)" : "ODS çalışma sayfası (Düz XML)",
+ "ODS template" : "ODS kalıbı",
+ "ODT document" : "ODT belgesi",
+ "ODT document (Flat XML)" : "ODT belgesi (Düz XML)",
+ "ODT template" : "ODT kalıbı",
+ "PowerPoint 2007 presentation" : "PowerPoint 2007 sunumu",
+ "PowerPoint 2007 show" : "PowerPoint 2007 gösterisi",
+ "PowerPoint 2007 presentation template" : "PowerPoint 2007 sunumu kalıbı",
+ "Excel 2007 spreadsheet" : "Excel 2007 çalışma sayfası",
+ "Excel 2007 spreadsheet template" : "Excel 2007 çalışma sayfası kalıbı",
+ "Word 2007 document" : "Word 2007 belgesi",
+ "Word 2007 document template" : "Word 2007 belgesi kalıbı",
+ "Microsoft Visio document" : "Microsoft Visio belgesi",
+ "WordPerfect document" : "WordPerfect belgesi",
+ "7-zip archive" : "7-zip arşivi",
+ "Blender scene" : "Blender manzarası",
+ "Bzip2 archive" : "Bzip2 arşivi",
+ "Debian package" : "Debian paketi",
+ "FictionBook document" : "FictionBook belgesi",
+ "Unknown font" : "Yazı tipi bilinmiyor",
+ "Krita document" : "Krita belgesi",
+ "Mobipocket e-book" : "Mobipocket e-kitabı",
+ "Windows Installer package" : "Windows kurulum paketi",
+ "Perl script" : "Perl betiği",
+ "PHP script" : "PHP betiği",
+ "Tar archive" : "Tar arşivi",
+ "XML document" : "XML belgesi",
+ "YAML document" : "YAML belgesi",
+ "Zip archive" : "Zip arşivi",
+ "Zstandard archive" : "Zstandard arşivi",
+ "AAC audio" : "AAC ses dosyası",
+ "FLAC audio" : "FLAC ses dosyası",
+ "MPEG-4 audio" : "MPEG-4 ses dosyası",
+ "MP3 audio" : "MP3 ses dosyası",
+ "Ogg audio" : "Ogg ses dosyası",
+ "RIFF/WAVe standard Audio" : "RIFF/WAVe standart ses dosyası",
+ "WebM audio" : "WebM ses dosyası",
+ "MP3 ShoutCast playlist" : "MP3 ShoutCast oynatma listesi",
+ "Windows BMP image" : "Windows BMP görseli",
+ "Better Portable Graphics image" : "Better Portable Graphics görseli",
+ "EMF image" : "EMF görseli",
+ "GIF image" : "GIF görseli",
+ "HEIC image" : "HEIC görseli",
+ "HEIF image" : "HEIF görseli",
+ "JPEG-2000 JP2 image" : "JPEG-2000 JP2 görseli",
+ "JPEG image" : "JPEG görseli",
+ "PNG image" : "PNG görseli",
+ "SVG image" : "SVG görseli",
+ "Truevision Targa image" : "Truevision Targa görseli",
+ "TIFF image" : "TIFF görseli",
+ "WebP image" : "WebP görseli",
+ "Digital raw image" : "Dijital ham görseli",
+ "Windows Icon" : "Windows simgesi",
+ "Email message" : "E-posta iletisi",
+ "VCS/ICS calendar" : "VCS/ICS takvimi",
+ "CSS stylesheet" : "CSS biçem sayfası",
+ "CSV document" : "CSV belgesi",
+ "HTML document" : "HTML belgesi",
+ "Markdown document" : "Markdown belgesi",
+ "Org-mode file" : "Org-mode dosyası",
+ "Plain text document" : "Düz metin belgesi",
+ "Rich Text document" : "Zengin metin belgesi",
+ "Electronic business card" : "Elektronik kartvizit",
+ "C++ source code" : "C++ kaynak kodu",
+ "LDIF address book" : "LDIF adres defteri",
+ "NFO document" : "NFO belgesi",
+ "PHP source" : "PHP kaynak kodu",
+ "Python script" : "Python betiği",
+ "ReStructuredText document" : "ReStructuredText belgesi",
+ "3GPP multimedia file" : "3GPP çoklu ortam dosyası",
+ "MPEG video" : "MPEG görüntü dosyası",
+ "DV video" : "DV görüntü dosyası",
+ "MPEG-2 transport stream" : "MPEG-2 aktarım akışı",
+ "MPEG-4 video" : "MPEG-4 görüntü dosyası",
+ "Ogg video" : "Ogg görüntü dosyası",
+ "QuickTime video" : "QuickTime görüntü dosyası",
+ "WebM video" : "WebM görüntü dosyası",
+ "Flash video" : "Flash görüntü dosyası",
+ "Matroska video" : "Matroska görüntü dosyası",
+ "Windows Media video" : "Windows Media görüntü dosyası",
+ "AVI video" : "AVI görüntü dosyası",
"Error occurred while checking server setup" : "Sunucu ayarları denetlenirken sorun çıktı",
"For more details see the {linkstart}documentation ↗{linkend}." : "Ayrıntılı bilgi almak için {linkstart}belgeler ↗{linkend} bölümüne bakabilirsiniz.",
"unknown text" : "bilinmeyen metin",
@@ -173,7 +291,7 @@ OC.L10N.register(
"Schedule work & meetings, synced with all your devices." : "İşlerinizi ve toplantılarınızı planlayın ve tüm aygıtlarınızla eşitleyin.",
"Keep your colleagues and friends in one place without leaking their private info." : "İş arkadaşlarınızın ve tanıdıklarınızın kayıtlarını kişisel bilgilerini sızdırmadan tek bir yerde tutun.",
"Simple email app nicely integrated with Files, Contacts and Calendar." : "Dosyalar, Kişiler ve Takvim uygulamaları ile bir arada çalışan basit bir e-posta uygulaması.",
- "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Sohbet, görüntülü çağrı, ekran paylaşımı, çevrim içi toplantılar ve internet görüşmeleri - masaüstü ve mobil için uygulamalar.",
+ "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Sohbet, görüntülü çağrı, ekran paylaşımı, çevrim içi toplantılar ve internet görüşmeleri. Bilgisayar ve mobil aygıtlar için uygulamalar.",
"Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Collabora Online üzerinde hazırlanmış iş birlikli çalışma belgeleri, hesap tabloları ve sunumlar.",
"Distraction free note taking app." : "Dikkatinizi dağıtmayan not alma uygulaması.",
"Recommended apps" : "Önerilen uygulamalar",
@@ -210,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "Oturum açma formu kullanımdan kaldırılmış.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloud oturum açma formu kullanımdan kaldırılmış. Varsa başka bir oturum açma seçeneğini kullanın ya da yöneticiniz ile görüşün.",
"More actions" : "Diğer işlemler",
+ "User menu" : "Kullanıcı menüsü",
+ "You will be identified as {user} by the account owner." : "Hesap sahibi tarafından {user} olarak tanınacaksınız.",
+ "You are currently not identified." : "Şu anda tanımlanmamışsınız.",
+ "Set public name" : "Herkese açık adı ayarla",
+ "Change public name" : "Herkese açık adı değiştir",
"Password is too weak" : "Parola çok kolay",
"Password is weak" : "Parola kolay",
"Password is average" : "Parola orta zorlukta",
@@ -225,11 +348,11 @@ OC.L10N.register(
"Create administration account" : "Yönetici hesabı oluştur",
"Administration account name" : "Yönetici hesabı kullanıcı adı",
"Administration account password" : "Yönetici hesabı parolası",
- "Storage & database" : "Depolama ve veri tabanı",
+ "Storage & database" : "Depolama alanı ve veri tabanı",
"Data folder" : "Veri klasörü",
"Database configuration" : "Veri tabanı yapılandırması",
"Only {firstAndOnlyDatabase} is available." : "Yalnızca {firstAndOnlyDatabase} kullanılabilir.",
- "Install and activate additional PHP modules to choose other database types." : "Diğer veri tabanı türlerini seçebilmek için ek PHP modüllerini kurun ve kullanıma alın.",
+ "Install and activate additional PHP modules to choose other database types." : "Diğer veri tabanı türlerini seçebilmek için ek PHP modüllerini kurun ve etkinleştirin.",
"For more details check out the documentation." : "Ayrıntılı bilgi almak için belgelere bakabilirsiniz.",
"Performance warning" : "Başarım uyarısı",
"You chose SQLite as database." : "Veri tabanı olarak SQLite seçtiniz.",
@@ -272,7 +395,7 @@ OC.L10N.register(
"({count} selected)" : "({count} seçilmiş)",
"Error loading file exists template" : "Dosya var kalıbı yüklenirken sorun çıktı",
"Saving …" : "Kaydediliyor …",
- "seconds ago" : "saniyeler önce",
+ "seconds ago" : "saniye önce",
"Connection to server lost" : "Sunucu bağlantısı kesildi",
"_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Sayfa yüklenirken bir sorun çıktı. %n saniye sonra yeniden yüklenecek","Sayfa yüklenirken bir sorun çıktı. %n saniye sonra yeniden yüklenecek"],
"Add to a project" : "Bir projeye ekle",
@@ -303,9 +426,10 @@ OC.L10N.register(
"Admin" : "Yönetici",
"Help" : "Yardım",
"Access forbidden" : "Erişim engellendi",
+ "You are not allowed to access this page." : "Bu sayfaya erişme izniniz yok.",
+ "Back to %s" : "%s sayfasına dön",
"Page not found" : "Sayfa bulunamadı",
"The page could not be found on the server or you may not be allowed to view it." : "Sayfa sunucuda bulunamadı ya da görüntülemenize izin verilmiyor olabilir.",
- "Back to %s" : "%s sayfasına dön",
"Too many requests" : "Çok fazla istekte bulunuldu",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Ağınızdan çok fazla istekte bulunuldu. Bir süre sonra yeniden deneyin ya da bir sorun olduğunu düşünüyorsanız BT yöneticiniz ile görüşün.",
"Error" : "Hata",
@@ -350,15 +474,15 @@ OC.L10N.register(
"Password sent!" : "Parola gönderildi!",
"You are not authorized to request a password for this share" : "Bu paylaşım için parola isteğinde bulunma izniniz yok",
"Two-factor authentication" : "İki adımlı doğrulama",
- "Enhanced security is enabled for your account. Choose a second factor for authentication:" : "Hesabınız için gelişmiş güvenlik kullanıma alındı. Kimlik doğrulaması için bir ikinci aşama seçin:",
+ "Enhanced security is enabled for your account. Choose a second factor for authentication:" : "Hesabınız için gelişmiş güvenlik etkinleştirildi. Kimlik doğrulaması için bir ikinci adım seçin:",
"Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Kullanıma alınmış iki adımlı doğrulama yöntemlerinden en az biri yüklenemedi. Lütfen yöneticiniz ile görüşün.",
- "Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance." : "İki adımlı doğrulama kullanımı zorunlu kılınmış ancak hesabınız için yapılandırılmamış. Yardım almak için sistem yöneticiniz ile görüşün.",
- "Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication." : "İki adımlı doğrulama kullanımı dayatılmış ancak hesabınız için yapılandırılması tamamlanmamış. Lütfen işlemi sürdürmek için iki adımlı doğrulamayı kurun.",
+ "Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance." : "İki adımlı doğrulama kullanımı zorunlu kılınmış. Ancak hesabınız için yapılandırılmamış. Yardım almak için sistem yöneticiniz ile görüşün.",
+ "Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication." : "İki adımlı doğrulama kullanımı zorunlu kılınmış. Ancak hesabınız için yapılandırılmamış. Lütfen işlemi sürdürmek için iki adımlı doğrulamayı kurun.",
"Set up two-factor authentication" : "İki adımlı doğrulama kurulumu",
"Two-factor authentication is enforced but has not been configured on your account. Use one of your backup codes to log in or contact your admin for assistance." : "İki adımlı doğrulama kullanımı zorunlu kılınmış ancak hesabınız için yapılandırılmamış. Yedek kodlarınızdan birini kullanın ya da yardım almak için sistem yöneticiniz ile görüşün.",
"Use backup code" : "Yedek kodu kullanacağım",
"Cancel login" : "Oturum açmaktan vazgeç",
- "Enhanced security is enforced for your account. Choose which provider to set up:" : "Hesabınız için gelişmiş güvenlik kullanımı dayatılmış. Kuracağınız hizmet sağlayıcıyı seçin:",
+ "Enhanced security is enforced for your account. Choose which provider to set up:" : "Hesabınız için gelişmiş güvenlik kullanımı zorunlu kılınmış. Kurulacak hizmet sağlayıcıyı seçin:",
"Error while validating your second factor" : "İkinci aşama doğrulanırken sorun çıktı",
"Access through untrusted domain" : "Güvenilmeyen etki alanı üzerinden erişim",
"Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php." : "Lütfen BT yöneticiniz ile görüşün. Yöneticisi siz iseniz, config/config.php dosyası içerisindeki \"trusted_domain\" ayarını config/config.sample.php dosyasındaki gibi düzenleyin.",
@@ -381,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Bu %s kopyası şu anda bakım kipinde, bu işlem biraz zaman alabilir.",
"This page will refresh itself when the instance is available again." : "Sistem yeniden kullanılabilir olduğunda bu sayfa kendiliğinden yenilenecek",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Bu ileti görüntülenmeyi sürdürüyor ya da beklenmedik şekilde ortaya çıkıyorsa BT yöneticiniz ile görüşün.",
- "Currently open" : "Şu anda açık",
- "Login with username or email" : "Kullanıcı adı ya da e-posta ile oturum açın",
- "Login with username" : "Kullanıcı adı ile oturum aç",
- "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Sohbet, görüntülü çağrı, ekran paylaşımı, çevrim içi toplantılar ve internet görüşmeleri - masaüstü ve mobil için uygulamalar.",
+ "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Sohbet, görüntülü çağrı, ekran paylaşımı, çevrim içi toplantılar ve internet görüşmeleri. Bilgisayar ve mobil aygıtlar için uygulamalar.",
"You have not added any info yet" : "Henüz herhangi bir bilgi eklememişsiniz",
"{user} has not added any info yet" : "{user} henüz herhangi bir bilgi eklememiş",
"Error opening the user status modal, try hard refreshing the page" : "Üste açılan kullanıcı durumu penceresinde sorun çıktı. Sayfası temizleyerek yenilemeyi deneyin ",
"Edit Profile" : "Profili düzenle",
"The headline and about sections will show up here" : "Başlık ve hakkında bölümleri burada görüntülenir",
- "Error loading message template: {error}" : "İleti kalıbı yüklenirken sorun çıktı: {error}",
"Very weak password" : "Parola çok zayıf",
"Weak password" : "Parola zayıf",
"So-so password" : "Parola idare eder",
diff --git a/core/l10n/tr.json b/core/l10n/tr.json
index 9ca5ed1cba4..16bf2c68f53 100644
--- a/core/l10n/tr.json
+++ b/core/l10n/tr.json
@@ -42,6 +42,7 @@
"Task not found" : "Görev bulunamadı",
"Internal error" : "İçeride bir sorun çıktı",
"Not found" : "Bulunamadı",
+ "Node is locked" : "Düğüm kilitlenmiş",
"Bad request" : "İstek hatalı",
"Requested task type does not exist" : "İstenilen görev türü bulunamadı",
"Necessary language model provider is not available" : "Gerekli dil modeli sağlayıcısı kullanılamıyor",
@@ -50,6 +51,11 @@
"No translation provider available" : "Kullanılabilecek bir çeviri hizmeti sağlayıcı yok",
"Could not detect language" : "Dil algılanamadı",
"Unable to translate" : "Çevrilemedi",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Onarım adımı:",
+ "Repair info:" : "Onarım bilgileri:",
+ "Repair warning:" : "Onarım uyarısı:",
+ "Repair error:" : "Onarım sorunu:",
"Nextcloud Server" : "Nextcloud sunucusu",
"Some of your link shares have been removed" : "Bazı paylaşım bağlantılarınız silindi",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Bir güvenlik açığı nedeniyle bazı paylaşım bağlantılarınızı silmek zorunda kaldık. ayrıntılı bilgi almak için bağlantıya bakabilirsiniz.",
@@ -57,14 +63,9 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Hesap sayısı sınırını artırmak için destek uygulamasına abonelik kodunuzu yazın. Bu ayrıca size Nextcloud Enterprise sürümünün sunduğu ve kurumsal operasyonlar için önemle önerilen tüm ek faydaları sağlar.",
"Learn more ↗" : "Ayrıntılı bilgi alın ↗",
"Preparing update" : "Güncelleme hazırlanıyor",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Onarım adımı:",
- "Repair info:" : "Onarım bilgileri:",
- "Repair warning:" : "Onarım uyarısı:",
- "Repair error:" : "Onarım sorunu:",
- "Please use the command line updater because updating via browser is disabled in your config.php." : "Tarayıcı üzerinden güncelleme config.php dosyasında kullanımdan kaldırılmış olduğundan, komut satırı güncelleyicisini kullanın.",
- "Turned on maintenance mode" : "Bakım kipi kullanıma alındı",
- "Turned off maintenance mode" : "Bakım kipi kullanımdan kaldırıldı",
+ "Please use the command line updater because updating via browser is disabled in your config.php." : "Tarayıcı üzerinden güncelleme özelliği config.php dosyasından kapatılmış olduğundan, komut satırı güncelleyicisini kullanın.",
+ "Turned on maintenance mode" : "Bakım kipi açıldı",
+ "Turned off maintenance mode" : "Bakım kipi kapatıldı",
"Maintenance mode is kept active" : "Bakım kipi kullanımda tutuldu",
"Updating database schema" : "Veri tabanı şeması güncelleniyor",
"Updated database" : "Veri tabanı güncellendi",
@@ -78,8 +79,125 @@
"%s (incompatible)" : "%s (uyumsuz)",
"The following apps have been disabled: %s" : "Şu uygulamalar kullanımdan kaldırıldı: %s",
"Already up to date" : "Zaten güncel",
+ "Windows Command Script" : "Windows komut satırı betiği",
+ "Electronic book document" : "Elektronik kitap belgesi",
+ "TrueType Font Collection" : "TrueType yazı tipi derlemesi",
+ "Web Open Font Format" : "Web Open yazı tipi biçimi",
+ "GPX geographic data" : "GPX coğrafi verileri",
+ "Gzip archive" : "Gzip arşivi",
+ "Adobe Illustrator document" : "Adobe Illustrator belgesi",
+ "Java source code" : "Java kaynak kodu",
+ "JavaScript source code" : "JavaScript kaynak kodu",
+ "JSON document" : "JSON belgesi",
+ "Microsoft Access database" : "Microsoft Access veri tabanı",
+ "Microsoft OneNote document" : "Microsoft OneNote belgesi",
+ "Microsoft Word document" : "Microsoft Word belgesi",
"Unknown" : "Bilinmiyor",
- "PNG image" : "PNG Görseli",
+ "PDF document" : "PDF belgesi",
+ "PostScript document" : "PostScript belgesi",
+ "RSS summary" : "RSS özeti",
+ "Android package" : "Android paketi",
+ "KML geographic data" : "KML coğrafi verileri",
+ "KML geographic compressed data" : "KML sıkıştırılmış coğrafi verileri",
+ "Lotus Word Pro document" : "Lotus Word Pro belgesi",
+ "Excel spreadsheet" : "Excel çalışma sayfası",
+ "Excel add-in" : "Excel eklentisi",
+ "Excel 2007 binary spreadsheet" : "Excel 2007 binary çalışma sayfası",
+ "Excel spreadsheet template" : "Excel çalışma sayfası kalıbı",
+ "Outlook Message" : "Outlook iletisi",
+ "PowerPoint presentation" : "PowerPoint sunumu",
+ "PowerPoint add-in" : "PowerPoint eklentisi",
+ "PowerPoint presentation template" : "PowerPoint sunumu kalıbı",
+ "Word document" : "Word belgesi",
+ "ODF formula" : "ODF formülü",
+ "ODG drawing" : "ODG çizimi",
+ "ODG drawing (Flat XML)" : "ODG çizimi (Düz XML)",
+ "ODG template" : "ODG kalıbı",
+ "ODP presentation" : "ODP sunumu",
+ "ODP presentation (Flat XML)" : "ODP sunumu (Düz XML)",
+ "ODP template" : "ODP kalıbı",
+ "ODS spreadsheet" : "ODS çalışma sayfası",
+ "ODS spreadsheet (Flat XML)" : "ODS çalışma sayfası (Düz XML)",
+ "ODS template" : "ODS kalıbı",
+ "ODT document" : "ODT belgesi",
+ "ODT document (Flat XML)" : "ODT belgesi (Düz XML)",
+ "ODT template" : "ODT kalıbı",
+ "PowerPoint 2007 presentation" : "PowerPoint 2007 sunumu",
+ "PowerPoint 2007 show" : "PowerPoint 2007 gösterisi",
+ "PowerPoint 2007 presentation template" : "PowerPoint 2007 sunumu kalıbı",
+ "Excel 2007 spreadsheet" : "Excel 2007 çalışma sayfası",
+ "Excel 2007 spreadsheet template" : "Excel 2007 çalışma sayfası kalıbı",
+ "Word 2007 document" : "Word 2007 belgesi",
+ "Word 2007 document template" : "Word 2007 belgesi kalıbı",
+ "Microsoft Visio document" : "Microsoft Visio belgesi",
+ "WordPerfect document" : "WordPerfect belgesi",
+ "7-zip archive" : "7-zip arşivi",
+ "Blender scene" : "Blender manzarası",
+ "Bzip2 archive" : "Bzip2 arşivi",
+ "Debian package" : "Debian paketi",
+ "FictionBook document" : "FictionBook belgesi",
+ "Unknown font" : "Yazı tipi bilinmiyor",
+ "Krita document" : "Krita belgesi",
+ "Mobipocket e-book" : "Mobipocket e-kitabı",
+ "Windows Installer package" : "Windows kurulum paketi",
+ "Perl script" : "Perl betiği",
+ "PHP script" : "PHP betiği",
+ "Tar archive" : "Tar arşivi",
+ "XML document" : "XML belgesi",
+ "YAML document" : "YAML belgesi",
+ "Zip archive" : "Zip arşivi",
+ "Zstandard archive" : "Zstandard arşivi",
+ "AAC audio" : "AAC ses dosyası",
+ "FLAC audio" : "FLAC ses dosyası",
+ "MPEG-4 audio" : "MPEG-4 ses dosyası",
+ "MP3 audio" : "MP3 ses dosyası",
+ "Ogg audio" : "Ogg ses dosyası",
+ "RIFF/WAVe standard Audio" : "RIFF/WAVe standart ses dosyası",
+ "WebM audio" : "WebM ses dosyası",
+ "MP3 ShoutCast playlist" : "MP3 ShoutCast oynatma listesi",
+ "Windows BMP image" : "Windows BMP görseli",
+ "Better Portable Graphics image" : "Better Portable Graphics görseli",
+ "EMF image" : "EMF görseli",
+ "GIF image" : "GIF görseli",
+ "HEIC image" : "HEIC görseli",
+ "HEIF image" : "HEIF görseli",
+ "JPEG-2000 JP2 image" : "JPEG-2000 JP2 görseli",
+ "JPEG image" : "JPEG görseli",
+ "PNG image" : "PNG görseli",
+ "SVG image" : "SVG görseli",
+ "Truevision Targa image" : "Truevision Targa görseli",
+ "TIFF image" : "TIFF görseli",
+ "WebP image" : "WebP görseli",
+ "Digital raw image" : "Dijital ham görseli",
+ "Windows Icon" : "Windows simgesi",
+ "Email message" : "E-posta iletisi",
+ "VCS/ICS calendar" : "VCS/ICS takvimi",
+ "CSS stylesheet" : "CSS biçem sayfası",
+ "CSV document" : "CSV belgesi",
+ "HTML document" : "HTML belgesi",
+ "Markdown document" : "Markdown belgesi",
+ "Org-mode file" : "Org-mode dosyası",
+ "Plain text document" : "Düz metin belgesi",
+ "Rich Text document" : "Zengin metin belgesi",
+ "Electronic business card" : "Elektronik kartvizit",
+ "C++ source code" : "C++ kaynak kodu",
+ "LDIF address book" : "LDIF adres defteri",
+ "NFO document" : "NFO belgesi",
+ "PHP source" : "PHP kaynak kodu",
+ "Python script" : "Python betiği",
+ "ReStructuredText document" : "ReStructuredText belgesi",
+ "3GPP multimedia file" : "3GPP çoklu ortam dosyası",
+ "MPEG video" : "MPEG görüntü dosyası",
+ "DV video" : "DV görüntü dosyası",
+ "MPEG-2 transport stream" : "MPEG-2 aktarım akışı",
+ "MPEG-4 video" : "MPEG-4 görüntü dosyası",
+ "Ogg video" : "Ogg görüntü dosyası",
+ "QuickTime video" : "QuickTime görüntü dosyası",
+ "WebM video" : "WebM görüntü dosyası",
+ "Flash video" : "Flash görüntü dosyası",
+ "Matroska video" : "Matroska görüntü dosyası",
+ "Windows Media video" : "Windows Media görüntü dosyası",
+ "AVI video" : "AVI görüntü dosyası",
"Error occurred while checking server setup" : "Sunucu ayarları denetlenirken sorun çıktı",
"For more details see the {linkstart}documentation ↗{linkend}." : "Ayrıntılı bilgi almak için {linkstart}belgeler ↗{linkend} bölümüne bakabilirsiniz.",
"unknown text" : "bilinmeyen metin",
@@ -171,7 +289,7 @@
"Schedule work & meetings, synced with all your devices." : "İşlerinizi ve toplantılarınızı planlayın ve tüm aygıtlarınızla eşitleyin.",
"Keep your colleagues and friends in one place without leaking their private info." : "İş arkadaşlarınızın ve tanıdıklarınızın kayıtlarını kişisel bilgilerini sızdırmadan tek bir yerde tutun.",
"Simple email app nicely integrated with Files, Contacts and Calendar." : "Dosyalar, Kişiler ve Takvim uygulamaları ile bir arada çalışan basit bir e-posta uygulaması.",
- "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Sohbet, görüntülü çağrı, ekran paylaşımı, çevrim içi toplantılar ve internet görüşmeleri - masaüstü ve mobil için uygulamalar.",
+ "Chatting, video calls, screen sharing, online meetings and web conferencing – in your browser and with mobile apps." : "Sohbet, görüntülü çağrı, ekran paylaşımı, çevrim içi toplantılar ve internet görüşmeleri. Bilgisayar ve mobil aygıtlar için uygulamalar.",
"Collaborative documents, spreadsheets and presentations, built on Collabora Online." : "Collabora Online üzerinde hazırlanmış iş birlikli çalışma belgeleri, hesap tabloları ve sunumlar.",
"Distraction free note taking app." : "Dikkatinizi dağıtmayan not alma uygulaması.",
"Recommended apps" : "Önerilen uygulamalar",
@@ -208,6 +326,11 @@
"Login form is disabled." : "Oturum açma formu kullanımdan kaldırılmış.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloud oturum açma formu kullanımdan kaldırılmış. Varsa başka bir oturum açma seçeneğini kullanın ya da yöneticiniz ile görüşün.",
"More actions" : "Diğer işlemler",
+ "User menu" : "Kullanıcı menüsü",
+ "You will be identified as {user} by the account owner." : "Hesap sahibi tarafından {user} olarak tanınacaksınız.",
+ "You are currently not identified." : "Şu anda tanımlanmamışsınız.",
+ "Set public name" : "Herkese açık adı ayarla",
+ "Change public name" : "Herkese açık adı değiştir",
"Password is too weak" : "Parola çok kolay",
"Password is weak" : "Parola kolay",
"Password is average" : "Parola orta zorlukta",
@@ -223,11 +346,11 @@
"Create administration account" : "Yönetici hesabı oluştur",
"Administration account name" : "Yönetici hesabı kullanıcı adı",
"Administration account password" : "Yönetici hesabı parolası",
- "Storage & database" : "Depolama ve veri tabanı",
+ "Storage & database" : "Depolama alanı ve veri tabanı",
"Data folder" : "Veri klasörü",
"Database configuration" : "Veri tabanı yapılandırması",
"Only {firstAndOnlyDatabase} is available." : "Yalnızca {firstAndOnlyDatabase} kullanılabilir.",
- "Install and activate additional PHP modules to choose other database types." : "Diğer veri tabanı türlerini seçebilmek için ek PHP modüllerini kurun ve kullanıma alın.",
+ "Install and activate additional PHP modules to choose other database types." : "Diğer veri tabanı türlerini seçebilmek için ek PHP modüllerini kurun ve etkinleştirin.",
"For more details check out the documentation." : "Ayrıntılı bilgi almak için belgelere bakabilirsiniz.",
"Performance warning" : "Başarım uyarısı",
"You chose SQLite as database." : "Veri tabanı olarak SQLite seçtiniz.",
@@ -270,7 +393,7 @@
"({count} selected)" : "({count} seçilmiş)",
"Error loading file exists template" : "Dosya var kalıbı yüklenirken sorun çıktı",
"Saving …" : "Kaydediliyor …",
- "seconds ago" : "saniyeler önce",
+ "seconds ago" : "saniye önce",
"Connection to server lost" : "Sunucu bağlantısı kesildi",
"_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Sayfa yüklenirken bir sorun çıktı. %n saniye sonra yeniden yüklenecek","Sayfa yüklenirken bir sorun çıktı. %n saniye sonra yeniden yüklenecek"],
"Add to a project" : "Bir projeye ekle",
@@ -301,9 +424,10 @@
"Admin" : "Yönetici",
"Help" : "Yardım",
"Access forbidden" : "Erişim engellendi",
+ "You are not allowed to access this page." : "Bu sayfaya erişme izniniz yok.",
+ "Back to %s" : "%s sayfasına dön",
"Page not found" : "Sayfa bulunamadı",
"The page could not be found on the server or you may not be allowed to view it." : "Sayfa sunucuda bulunamadı ya da görüntülemenize izin verilmiyor olabilir.",
- "Back to %s" : "%s sayfasına dön",
"Too many requests" : "Çok fazla istekte bulunuldu",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Ağınızdan çok fazla istekte bulunuldu. Bir süre sonra yeniden deneyin ya da bir sorun olduğunu düşünüyorsanız BT yöneticiniz ile görüşün.",
"Error" : "Hata",
@@ -348,15 +472,15 @@
"Password sent!" : "Parola gönderildi!",
"You are not authorized to request a password for this share" : "Bu paylaşım için parola isteğinde bulunma izniniz yok",
"Two-factor authentication" : "İki adımlı doğrulama",
- "Enhanced security is enabled for your account. Choose a second factor for authentication:" : "Hesabınız için gelişmiş güvenlik kullanıma alındı. Kimlik doğrulaması için bir ikinci aşama seçin:",
+ "Enhanced security is enabled for your account. Choose a second factor for authentication:" : "Hesabınız için gelişmiş güvenlik etkinleştirildi. Kimlik doğrulaması için bir ikinci adım seçin:",
"Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Kullanıma alınmış iki adımlı doğrulama yöntemlerinden en az biri yüklenemedi. Lütfen yöneticiniz ile görüşün.",
- "Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance." : "İki adımlı doğrulama kullanımı zorunlu kılınmış ancak hesabınız için yapılandırılmamış. Yardım almak için sistem yöneticiniz ile görüşün.",
- "Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication." : "İki adımlı doğrulama kullanımı dayatılmış ancak hesabınız için yapılandırılması tamamlanmamış. Lütfen işlemi sürdürmek için iki adımlı doğrulamayı kurun.",
+ "Two-factor authentication is enforced but has not been configured on your account. Contact your admin for assistance." : "İki adımlı doğrulama kullanımı zorunlu kılınmış. Ancak hesabınız için yapılandırılmamış. Yardım almak için sistem yöneticiniz ile görüşün.",
+ "Two-factor authentication is enforced but has not been configured on your account. Please continue to setup two-factor authentication." : "İki adımlı doğrulama kullanımı zorunlu kılınmış. Ancak hesabınız için yapılandırılmamış. Lütfen işlemi sürdürmek için iki adımlı doğrulamayı kurun.",
"Set up two-factor authentication" : "İki adımlı doğrulama kurulumu",
"Two-factor authentication is enforced but has not been configured on your account. Use one of your backup codes to log in or contact your admin for assistance." : "İki adımlı doğrulama kullanımı zorunlu kılınmış ancak hesabınız için yapılandırılmamış. Yedek kodlarınızdan birini kullanın ya da yardım almak için sistem yöneticiniz ile görüşün.",
"Use backup code" : "Yedek kodu kullanacağım",
"Cancel login" : "Oturum açmaktan vazgeç",
- "Enhanced security is enforced for your account. Choose which provider to set up:" : "Hesabınız için gelişmiş güvenlik kullanımı dayatılmış. Kuracağınız hizmet sağlayıcıyı seçin:",
+ "Enhanced security is enforced for your account. Choose which provider to set up:" : "Hesabınız için gelişmiş güvenlik kullanımı zorunlu kılınmış. Kurulacak hizmet sağlayıcıyı seçin:",
"Error while validating your second factor" : "İkinci aşama doğrulanırken sorun çıktı",
"Access through untrusted domain" : "Güvenilmeyen etki alanı üzerinden erişim",
"Please contact your administrator. If you are an administrator, edit the \"trusted_domains\" setting in config/config.php like the example in config.sample.php." : "Lütfen BT yöneticiniz ile görüşün. Yöneticisi siz iseniz, config/config.php dosyası içerisindeki \"trusted_domain\" ayarını config/config.sample.php dosyasındaki gibi düzenleyin.",
@@ -379,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Bu %s kopyası şu anda bakım kipinde, bu işlem biraz zaman alabilir.",
"This page will refresh itself when the instance is available again." : "Sistem yeniden kullanılabilir olduğunda bu sayfa kendiliğinden yenilenecek",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Bu ileti görüntülenmeyi sürdürüyor ya da beklenmedik şekilde ortaya çıkıyorsa BT yöneticiniz ile görüşün.",
- "Currently open" : "Şu anda açık",
- "Login with username or email" : "Kullanıcı adı ya da e-posta ile oturum açın",
- "Login with username" : "Kullanıcı adı ile oturum aç",
- "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Sohbet, görüntülü çağrı, ekran paylaşımı, çevrim içi toplantılar ve internet görüşmeleri - masaüstü ve mobil için uygulamalar.",
+ "Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Sohbet, görüntülü çağrı, ekran paylaşımı, çevrim içi toplantılar ve internet görüşmeleri. Bilgisayar ve mobil aygıtlar için uygulamalar.",
"You have not added any info yet" : "Henüz herhangi bir bilgi eklememişsiniz",
"{user} has not added any info yet" : "{user} henüz herhangi bir bilgi eklememiş",
"Error opening the user status modal, try hard refreshing the page" : "Üste açılan kullanıcı durumu penceresinde sorun çıktı. Sayfası temizleyerek yenilemeyi deneyin ",
"Edit Profile" : "Profili düzenle",
"The headline and about sections will show up here" : "Başlık ve hakkında bölümleri burada görüntülenir",
- "Error loading message template: {error}" : "İleti kalıbı yüklenirken sorun çıktı: {error}",
"Very weak password" : "Parola çok zayıf",
"Weak password" : "Parola zayıf",
"So-so password" : "Parola idare eder",
diff --git a/core/l10n/ug.js b/core/l10n/ug.js
index 8aa285f5e69..4f292c6c6d2 100644
--- a/core/l10n/ug.js
+++ b/core/l10n/ug.js
@@ -51,6 +51,11 @@ OC.L10N.register(
"No translation provider available" : "تەرجىمە تەمىنلىگۈچى يوق",
"Could not detect language" : "تىلنى بايقىيالمىدى",
"Unable to translate" : "تەرجىمە قىلالمىدى",
+ "[%d / %d]: %s" : "[% d /% d]:% s",
+ "Repair step:" : "رېمونت قىلىش باسقۇچى:",
+ "Repair info:" : "رېمونت ئۇچۇرى:",
+ "Repair warning:" : "رېمونت ئاگاھلاندۇرۇشى:",
+ "Repair error:" : "رېمونت خاتالىقى:",
"Nextcloud Server" : "Nextcloud مۇلازىمىتىرى",
"Some of your link shares have been removed" : "بەزى ئۇلىنىشلىرىڭىز ئۆچۈرۈلدى",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "بىخەتەرلىك خاتالىقى سەۋەبىدىن بەزى ئۇلىنىشلىرىڭىزنى ئۆچۈرۈۋەتتۇق. تېخىمۇ كۆپ ئۇچۇرغا ئېرىشىش ئۈچۈن ئۇلىنىشنى كۆرۈڭ.",
@@ -58,11 +63,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "ھېسابات چەكلىمىسىنى ئاشۇرۇش ئۈچۈن مۇشتەرىلىك ئاچقۇچىڭىزنى قوللاش دېتالىغا كىرگۈزۈڭ. بۇ سىزگە Nextcloud كارخانا تەمىنلىگەن بارلىق قوشۇمچە پايدىلارنى بېرىدۇ ھەمدە شىركەتلەردە مەشغۇلات قىلىشقا تەۋسىيە قىلىنىدۇ.",
"Learn more ↗" : "تەپسىلاتى ↗",
"Preparing update" : "يېڭىلاش تەييارلىقى",
- "[%d / %d]: %s" : "[% d /% d]:% s",
- "Repair step:" : "رېمونت قىلىش باسقۇچى:",
- "Repair info:" : "رېمونت ئۇچۇرى:",
- "Repair warning:" : "رېمونت ئاگاھلاندۇرۇشى:",
- "Repair error:" : "رېمونت خاتالىقى:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "بۇيرۇق قۇرىنى يېڭىلاشنى ئىشلىتىڭ ، چۈنكى config.php دا توركۆرگۈ ئارقىلىق يېڭىلاش چەكلەنگەن.",
"Turned on maintenance mode" : "ئاسراش ھالىتىنى ئاچتى",
"Turned off maintenance mode" : "ئاسراش ھالىتىنى ئېتىۋەتتى",
@@ -274,9 +274,9 @@ OC.L10N.register(
"Admin" : "باشقۇرغۇچى",
"Help" : "ياردەم",
"Access forbidden" : "زىيارەت قىلىش چەكلەنگەن",
+ "Back to %s" : "% S گە قايتىش",
"Page not found" : "بەت تېپىلمىدى",
"The page could not be found on the server or you may not be allowed to view it." : "بۇ بەتنى مۇلازىمېتىردىن تاپقىلى بولمايدۇ ياكى ئۇنى كۆرۈشكە رۇخسەت قىلىنماسلىقىڭىز مۇمكىن.",
- "Back to %s" : "% S گە قايتىش",
"Too many requests" : "بەك كۆپ تەلەپ",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "تورىڭىزدىن بەك كۆپ تەلەپلەر بار ئىدى. كېيىن قايتا سىناڭ ياكى باشقۇرغۇچى بىلەن ئالاقىلىشىڭ.",
"Error" : "خاتالىق",
@@ -352,16 +352,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "بۇ% s مىسال ھازىر ئاسراش ھالىتىدە بولۇپ ، بۇنىڭغا بىر ئاز ۋاقىت كېتىشى مۇمكىن.",
"This page will refresh itself when the instance is available again." : "مىسال قايتا بولغاندا بۇ بەت ئۆزىنى يېڭىلايدۇ.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "ئەگەر بۇ ئۇچۇر داۋاملاشسا ياكى ئويلىمىغان يەردىن سىستېما باشقۇرغۇچى بىلەن ئالاقىلىشىڭ.",
- "Currently open" : "نۆۋەتتە ئېچىلدى",
- "Login with username or email" : "ئىشلەتكۈچى ئىسمى ياكى ئېلېكترونلۇق خەت بىلەن كىرىڭ",
- "Login with username" : "ئىشلەتكۈچى ئىسمى بىلەن كىرىڭ",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "تور كۆرگۈڭىزدە ۋە كۆچمە ئەپلەر بىلەن پاراڭلىشىش ، سىنلىق سۆزلىشىش ، ئېكراندىن ئورتاقلىشىش ، توردىكى ئۇچرىشىش ۋە تور يىغىنى.",
"You have not added any info yet" : "سىز تېخى ھېچقانداق ئۇچۇر قوشمىدىڭىز",
"{user} has not added any info yet" : "{user} تېخى ھېچقانداق ئۇچۇر قوشمىدى",
"Error opening the user status modal, try hard refreshing the page" : "ئىشلەتكۈچى ھالىتى ھالىتىنى ئېچىشتا خاتالىق ، بەتنى يېڭىلاشنى سىناپ بېقىڭ",
"Edit Profile" : "ئارخىپنى تەھرىرلەش",
"The headline and about sections will show up here" : "ماۋزۇ ۋە بۆلەكلەر بۇ يەردە كۆرسىتىلىدۇ",
- "Error loading message template: {error}" : "ئۇچۇر قېلىپىنى يۈكلەشتە خاتالىق: {error}",
"Very weak password" : "پارول بەك ئاجىز",
"Weak password" : "پارول ئاجىز",
"So-so password" : "شۇڭا مەخپىي نومۇر",
diff --git a/core/l10n/ug.json b/core/l10n/ug.json
index 7b451a4144b..3e1f68d70b5 100644
--- a/core/l10n/ug.json
+++ b/core/l10n/ug.json
@@ -49,6 +49,11 @@
"No translation provider available" : "تەرجىمە تەمىنلىگۈچى يوق",
"Could not detect language" : "تىلنى بايقىيالمىدى",
"Unable to translate" : "تەرجىمە قىلالمىدى",
+ "[%d / %d]: %s" : "[% d /% d]:% s",
+ "Repair step:" : "رېمونت قىلىش باسقۇچى:",
+ "Repair info:" : "رېمونت ئۇچۇرى:",
+ "Repair warning:" : "رېمونت ئاگاھلاندۇرۇشى:",
+ "Repair error:" : "رېمونت خاتالىقى:",
"Nextcloud Server" : "Nextcloud مۇلازىمىتىرى",
"Some of your link shares have been removed" : "بەزى ئۇلىنىشلىرىڭىز ئۆچۈرۈلدى",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "بىخەتەرلىك خاتالىقى سەۋەبىدىن بەزى ئۇلىنىشلىرىڭىزنى ئۆچۈرۈۋەتتۇق. تېخىمۇ كۆپ ئۇچۇرغا ئېرىشىش ئۈچۈن ئۇلىنىشنى كۆرۈڭ.",
@@ -56,11 +61,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "ھېسابات چەكلىمىسىنى ئاشۇرۇش ئۈچۈن مۇشتەرىلىك ئاچقۇچىڭىزنى قوللاش دېتالىغا كىرگۈزۈڭ. بۇ سىزگە Nextcloud كارخانا تەمىنلىگەن بارلىق قوشۇمچە پايدىلارنى بېرىدۇ ھەمدە شىركەتلەردە مەشغۇلات قىلىشقا تەۋسىيە قىلىنىدۇ.",
"Learn more ↗" : "تەپسىلاتى ↗",
"Preparing update" : "يېڭىلاش تەييارلىقى",
- "[%d / %d]: %s" : "[% d /% d]:% s",
- "Repair step:" : "رېمونت قىلىش باسقۇچى:",
- "Repair info:" : "رېمونت ئۇچۇرى:",
- "Repair warning:" : "رېمونت ئاگاھلاندۇرۇشى:",
- "Repair error:" : "رېمونت خاتالىقى:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "بۇيرۇق قۇرىنى يېڭىلاشنى ئىشلىتىڭ ، چۈنكى config.php دا توركۆرگۈ ئارقىلىق يېڭىلاش چەكلەنگەن.",
"Turned on maintenance mode" : "ئاسراش ھالىتىنى ئاچتى",
"Turned off maintenance mode" : "ئاسراش ھالىتىنى ئېتىۋەتتى",
@@ -272,9 +272,9 @@
"Admin" : "باشقۇرغۇچى",
"Help" : "ياردەم",
"Access forbidden" : "زىيارەت قىلىش چەكلەنگەن",
+ "Back to %s" : "% S گە قايتىش",
"Page not found" : "بەت تېپىلمىدى",
"The page could not be found on the server or you may not be allowed to view it." : "بۇ بەتنى مۇلازىمېتىردىن تاپقىلى بولمايدۇ ياكى ئۇنى كۆرۈشكە رۇخسەت قىلىنماسلىقىڭىز مۇمكىن.",
- "Back to %s" : "% S گە قايتىش",
"Too many requests" : "بەك كۆپ تەلەپ",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "تورىڭىزدىن بەك كۆپ تەلەپلەر بار ئىدى. كېيىن قايتا سىناڭ ياكى باشقۇرغۇچى بىلەن ئالاقىلىشىڭ.",
"Error" : "خاتالىق",
@@ -350,16 +350,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "بۇ% s مىسال ھازىر ئاسراش ھالىتىدە بولۇپ ، بۇنىڭغا بىر ئاز ۋاقىت كېتىشى مۇمكىن.",
"This page will refresh itself when the instance is available again." : "مىسال قايتا بولغاندا بۇ بەت ئۆزىنى يېڭىلايدۇ.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "ئەگەر بۇ ئۇچۇر داۋاملاشسا ياكى ئويلىمىغان يەردىن سىستېما باشقۇرغۇچى بىلەن ئالاقىلىشىڭ.",
- "Currently open" : "نۆۋەتتە ئېچىلدى",
- "Login with username or email" : "ئىشلەتكۈچى ئىسمى ياكى ئېلېكترونلۇق خەت بىلەن كىرىڭ",
- "Login with username" : "ئىشلەتكۈچى ئىسمى بىلەن كىرىڭ",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "تور كۆرگۈڭىزدە ۋە كۆچمە ئەپلەر بىلەن پاراڭلىشىش ، سىنلىق سۆزلىشىش ، ئېكراندىن ئورتاقلىشىش ، توردىكى ئۇچرىشىش ۋە تور يىغىنى.",
"You have not added any info yet" : "سىز تېخى ھېچقانداق ئۇچۇر قوشمىدىڭىز",
"{user} has not added any info yet" : "{user} تېخى ھېچقانداق ئۇچۇر قوشمىدى",
"Error opening the user status modal, try hard refreshing the page" : "ئىشلەتكۈچى ھالىتى ھالىتىنى ئېچىشتا خاتالىق ، بەتنى يېڭىلاشنى سىناپ بېقىڭ",
"Edit Profile" : "ئارخىپنى تەھرىرلەش",
"The headline and about sections will show up here" : "ماۋزۇ ۋە بۆلەكلەر بۇ يەردە كۆرسىتىلىدۇ",
- "Error loading message template: {error}" : "ئۇچۇر قېلىپىنى يۈكلەشتە خاتالىق: {error}",
"Very weak password" : "پارول بەك ئاجىز",
"Weak password" : "پارول ئاجىز",
"So-so password" : "شۇڭا مەخپىي نومۇر",
diff --git a/core/l10n/uk.js b/core/l10n/uk.js
index b36cf0ccfc0..acad234cf70 100644
--- a/core/l10n/uk.js
+++ b/core/l10n/uk.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "Завдання не знайдено",
"Internal error" : "Внутрішня помилка",
"Not found" : "Не знайдено",
+ "Node is locked" : "Вузол заблоковано",
"Bad request" : "Хибний запит",
"Requested task type does not exist" : "Запитаний вид завдання відсутній",
"Necessary language model provider is not available" : "Постачальний потрібної мовної моделі недоступний",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "Постачальник послуг перекладу недоступний",
"Could not detect language" : "Не вдалося визначити мову",
"Unable to translate" : "Не вдалося перекласти",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Крок у відновленні:",
+ "Repair info:" : "Інформація про відновлення:",
+ "Repair warning:" : "Застереження щодо відновлення:",
+ "Repair error:" : "Помилка під час відновлення:",
"Nextcloud Server" : "Сервер Nextcloud",
"Some of your link shares have been removed" : "Окремі посилання на спільні елементи було вилучено",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Через ваду з безпекою ми вимушені були вилучити деякі ваші спільні посилання. Будь ласка, перегляньте цю докладну інформацію.",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Зазначте ваш ключ підписки у застосунку підтримки, щоб збільшити кількість дозволених облікових записів. Після цього ви отримаєте всі додаткові переваги, які надає Nextcloud для бізнесу. Ми рекомендуємо це зробити для комерційних користувачів.",
"Learn more ↗" : "Дізнайтеся більше ↗",
"Preparing update" : "Підготовка оновлення",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Крок у відновленні:",
- "Repair info:" : "Інформація про відновлення:",
- "Repair warning:" : "Застереження щодо відновлення:",
- "Repair error:" : "Помилка під час відновлення:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Будь ласка, скористайтеся оновленням через командний рядок, оскільки оновлення через бравзер вимкнено у файлі налаштувань config.php.",
"Turned on maintenance mode" : "Активовано режим технічного обслуговування",
"Turned off maintenance mode" : "Вимкнено режим технічного обслуговування",
@@ -80,7 +81,44 @@ OC.L10N.register(
"%s (incompatible)" : "%s (несумісне)",
"The following apps have been disabled: %s" : "Ці застосунки було вимкнено: %s",
"Already up to date" : "Вже актуально",
+ "Windows Command Script" : "Скрипт Windows",
+ "Electronic book document" : "Документ електронної книги",
+ "TrueType Font Collection" : "Колекція шрифтів TrueType",
+ "Web Open Font Format" : "Відкритий формат шрифтів Web",
+ "GPX geographic data" : "Дані географічних координат GPX",
+ "Gzip archive" : "Архів Gzip",
+ "Adobe Illustrator document" : "Документ Adobe Illustrator",
+ "Java source code" : "Вихідний код Java",
+ "JavaScript source code" : "Вихідний код JavaScript",
+ "JSON document" : "Документ JSON",
+ "Microsoft Access database" : "База даних Microsoft Access",
+ "Microsoft Word document" : "Документ Microsoft Word",
"Unknown" : "Невідомо",
+ "PDF document" : "Документ PDF",
+ "PostScript document" : "Документ PostScript",
+ "Android package" : "Пакунок Android",
+ "Excel spreadsheet" : "Електронна таблиця Excel",
+ "Excel add-in" : "Доповнення Excel",
+ "Outlook Message" : "Ел. лист Outlook",
+ "PowerPoint presentation" : "Презентація PowerPoint",
+ "Word document" : "Документ Word",
+ "ODP presentation" : "Презентація ODP",
+ "ODS spreadsheet" : "Електронна таблиця ODS",
+ "ODT document" : "Документ ODT",
+ "PowerPoint 2007 presentation" : "Презентація PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Електронна таблиця Excel 2007",
+ "Word 2007 document" : "Документ Word 2007",
+ "7-zip archive" : "Архів 7-zip",
+ "PHP script" : "Скрипт PHP",
+ "Zip archive" : "Архів Zip",
+ "JPEG image" : "Зображення JPEG",
+ "PNG image" : "Зображення PNG",
+ "SVG image" : "Зображення SVG",
+ "CSV document" : "Документ CSV",
+ "HTML document" : "Документ HTML",
+ "PHP source" : "Вихідний файл PHP",
+ "Python script" : "Скрипт Python",
+ "AVI video" : "Відео AVI",
"Error occurred while checking server setup" : "При перевірці налаштувань серверу сталася помилка",
"For more details see the {linkstart}documentation ↗{linkend}." : "Додаткову інформацію див. у {linkstart}документації ↗{linkend}.",
"unknown text" : "невідомий текст",
@@ -209,6 +247,11 @@ OC.L10N.register(
"Login form is disabled." : "Форма входу вимкнена.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Форму авторизації у хмарі Nextcloud вимкнено. Скористайтеся іншим способом входу, якщо є така можливість, або сконтактуйте з адміністратором.",
"More actions" : "Більше дій",
+ "User menu" : "Меню користувача",
+ "You will be identified as {user} by the account owner." : "Вас буде визначено як {user} власником облікового запису.",
+ "You are currently not identified." : "Вас не визначено.",
+ "Set public name" : "Встановити загальне ім'я",
+ "Change public name" : "Змінити загальне ім'я",
"Password is too weak" : "Занадто простий пароль ",
"Password is weak" : "Простий пароль",
"Password is average" : "Пароль середньої складності",
@@ -302,9 +345,10 @@ OC.L10N.register(
"Admin" : "Адміністратор",
"Help" : "Допомога",
"Access forbidden" : "Доступ заборонено",
+ "You are not allowed to access this page." : "Відсутні права доступу до цієї сторінки.",
+ "Back to %s" : "Назад до %s",
"Page not found" : "Сторінку не знайдено",
"The page could not be found on the server or you may not be allowed to view it." : "Не вдалося знайти сторінку на сервері або вам не дозволено її перегляд.",
- "Back to %s" : "Назад до %s",
"Too many requests" : "Забагато запитів",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Забагато запитів із вашої мережі. Повторіть спробу пізніше або зверніться до адміністратора, якщо це помилка.",
"Error" : "Помилка",
@@ -380,16 +424,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Для сервера хмари %s увімкнено режим технічного обслуговування.",
"This page will refresh itself when the instance is available again." : "Ця сторінка оновиться автоматично, коли сервер знову стане доступний.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Зверніться до вашого системного адміністратора, якщо це повідомлення не зникає або з'явилося несподівано.",
- "Currently open" : "Наразі відкрито",
- "Login with username or email" : "Увійти з ім'ям користувача або ел. поштою",
- "Login with username" : "Увійти з ім'ям користувача",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Чати, відеовиклики, демонстрація екану, онлайнові зустрічі та вебконференції у вашому браузері та на мобільних застосунках.",
"You have not added any info yet" : "Ви ще не додали жодної інформації",
"{user} has not added any info yet" : "{user} ще не додав жодної інформації",
"Error opening the user status modal, try hard refreshing the page" : "Помилка відкриття режиму статусу користувача. Спробуйте оновити сторінку",
"Edit Profile" : "Редагувати профіль",
"The headline and about sections will show up here" : "Тут відображатимуться заголовок і розділи про",
- "Error loading message template: {error}" : "Помилка при завантаженні шаблону повідомлення: {error}",
"Very weak password" : "Дуже слабкий пароль",
"Weak password" : "Слабкий пароль",
"So-so password" : "Такий собі пароль",
diff --git a/core/l10n/uk.json b/core/l10n/uk.json
index e1099c7616b..22f25447279 100644
--- a/core/l10n/uk.json
+++ b/core/l10n/uk.json
@@ -42,6 +42,7 @@
"Task not found" : "Завдання не знайдено",
"Internal error" : "Внутрішня помилка",
"Not found" : "Не знайдено",
+ "Node is locked" : "Вузол заблоковано",
"Bad request" : "Хибний запит",
"Requested task type does not exist" : "Запитаний вид завдання відсутній",
"Necessary language model provider is not available" : "Постачальний потрібної мовної моделі недоступний",
@@ -50,6 +51,11 @@
"No translation provider available" : "Постачальник послуг перекладу недоступний",
"Could not detect language" : "Не вдалося визначити мову",
"Unable to translate" : "Не вдалося перекласти",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Крок у відновленні:",
+ "Repair info:" : "Інформація про відновлення:",
+ "Repair warning:" : "Застереження щодо відновлення:",
+ "Repair error:" : "Помилка під час відновлення:",
"Nextcloud Server" : "Сервер Nextcloud",
"Some of your link shares have been removed" : "Окремі посилання на спільні елементи було вилучено",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Через ваду з безпекою ми вимушені були вилучити деякі ваші спільні посилання. Будь ласка, перегляньте цю докладну інформацію.",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Зазначте ваш ключ підписки у застосунку підтримки, щоб збільшити кількість дозволених облікових записів. Після цього ви отримаєте всі додаткові переваги, які надає Nextcloud для бізнесу. Ми рекомендуємо це зробити для комерційних користувачів.",
"Learn more ↗" : "Дізнайтеся більше ↗",
"Preparing update" : "Підготовка оновлення",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Крок у відновленні:",
- "Repair info:" : "Інформація про відновлення:",
- "Repair warning:" : "Застереження щодо відновлення:",
- "Repair error:" : "Помилка під час відновлення:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Будь ласка, скористайтеся оновленням через командний рядок, оскільки оновлення через бравзер вимкнено у файлі налаштувань config.php.",
"Turned on maintenance mode" : "Активовано режим технічного обслуговування",
"Turned off maintenance mode" : "Вимкнено режим технічного обслуговування",
@@ -78,7 +79,44 @@
"%s (incompatible)" : "%s (несумісне)",
"The following apps have been disabled: %s" : "Ці застосунки було вимкнено: %s",
"Already up to date" : "Вже актуально",
+ "Windows Command Script" : "Скрипт Windows",
+ "Electronic book document" : "Документ електронної книги",
+ "TrueType Font Collection" : "Колекція шрифтів TrueType",
+ "Web Open Font Format" : "Відкритий формат шрифтів Web",
+ "GPX geographic data" : "Дані географічних координат GPX",
+ "Gzip archive" : "Архів Gzip",
+ "Adobe Illustrator document" : "Документ Adobe Illustrator",
+ "Java source code" : "Вихідний код Java",
+ "JavaScript source code" : "Вихідний код JavaScript",
+ "JSON document" : "Документ JSON",
+ "Microsoft Access database" : "База даних Microsoft Access",
+ "Microsoft Word document" : "Документ Microsoft Word",
"Unknown" : "Невідомо",
+ "PDF document" : "Документ PDF",
+ "PostScript document" : "Документ PostScript",
+ "Android package" : "Пакунок Android",
+ "Excel spreadsheet" : "Електронна таблиця Excel",
+ "Excel add-in" : "Доповнення Excel",
+ "Outlook Message" : "Ел. лист Outlook",
+ "PowerPoint presentation" : "Презентація PowerPoint",
+ "Word document" : "Документ Word",
+ "ODP presentation" : "Презентація ODP",
+ "ODS spreadsheet" : "Електронна таблиця ODS",
+ "ODT document" : "Документ ODT",
+ "PowerPoint 2007 presentation" : "Презентація PowerPoint 2007",
+ "Excel 2007 spreadsheet" : "Електронна таблиця Excel 2007",
+ "Word 2007 document" : "Документ Word 2007",
+ "7-zip archive" : "Архів 7-zip",
+ "PHP script" : "Скрипт PHP",
+ "Zip archive" : "Архів Zip",
+ "JPEG image" : "Зображення JPEG",
+ "PNG image" : "Зображення PNG",
+ "SVG image" : "Зображення SVG",
+ "CSV document" : "Документ CSV",
+ "HTML document" : "Документ HTML",
+ "PHP source" : "Вихідний файл PHP",
+ "Python script" : "Скрипт Python",
+ "AVI video" : "Відео AVI",
"Error occurred while checking server setup" : "При перевірці налаштувань серверу сталася помилка",
"For more details see the {linkstart}documentation ↗{linkend}." : "Додаткову інформацію див. у {linkstart}документації ↗{linkend}.",
"unknown text" : "невідомий текст",
@@ -207,6 +245,11 @@
"Login form is disabled." : "Форма входу вимкнена.",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Форму авторизації у хмарі Nextcloud вимкнено. Скористайтеся іншим способом входу, якщо є така можливість, або сконтактуйте з адміністратором.",
"More actions" : "Більше дій",
+ "User menu" : "Меню користувача",
+ "You will be identified as {user} by the account owner." : "Вас буде визначено як {user} власником облікового запису.",
+ "You are currently not identified." : "Вас не визначено.",
+ "Set public name" : "Встановити загальне ім'я",
+ "Change public name" : "Змінити загальне ім'я",
"Password is too weak" : "Занадто простий пароль ",
"Password is weak" : "Простий пароль",
"Password is average" : "Пароль середньої складності",
@@ -300,9 +343,10 @@
"Admin" : "Адміністратор",
"Help" : "Допомога",
"Access forbidden" : "Доступ заборонено",
+ "You are not allowed to access this page." : "Відсутні права доступу до цієї сторінки.",
+ "Back to %s" : "Назад до %s",
"Page not found" : "Сторінку не знайдено",
"The page could not be found on the server or you may not be allowed to view it." : "Не вдалося знайти сторінку на сервері або вам не дозволено її перегляд.",
- "Back to %s" : "Назад до %s",
"Too many requests" : "Забагато запитів",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Забагато запитів із вашої мережі. Повторіть спробу пізніше або зверніться до адміністратора, якщо це помилка.",
"Error" : "Помилка",
@@ -378,16 +422,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Для сервера хмари %s увімкнено режим технічного обслуговування.",
"This page will refresh itself when the instance is available again." : "Ця сторінка оновиться автоматично, коли сервер знову стане доступний.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Зверніться до вашого системного адміністратора, якщо це повідомлення не зникає або з'явилося несподівано.",
- "Currently open" : "Наразі відкрито",
- "Login with username or email" : "Увійти з ім'ям користувача або ел. поштою",
- "Login with username" : "Увійти з ім'ям користувача",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Чати, відеовиклики, демонстрація екану, онлайнові зустрічі та вебконференції у вашому браузері та на мобільних застосунках.",
"You have not added any info yet" : "Ви ще не додали жодної інформації",
"{user} has not added any info yet" : "{user} ще не додав жодної інформації",
"Error opening the user status modal, try hard refreshing the page" : "Помилка відкриття режиму статусу користувача. Спробуйте оновити сторінку",
"Edit Profile" : "Редагувати профіль",
"The headline and about sections will show up here" : "Тут відображатимуться заголовок і розділи про",
- "Error loading message template: {error}" : "Помилка при завантаженні шаблону повідомлення: {error}",
"Very weak password" : "Дуже слабкий пароль",
"Weak password" : "Слабкий пароль",
"So-so password" : "Такий собі пароль",
diff --git a/core/l10n/uz.js b/core/l10n/uz.js
index 6c7ffa413b6..ff003f18000 100644
--- a/core/l10n/uz.js
+++ b/core/l10n/uz.js
@@ -51,6 +51,11 @@ OC.L10N.register(
"No translation provider available" : "Tarjima provayderi mavjud emas",
"Could not detect language" : "Tilni aniqlab bo'lmadi",
"Unable to translate" : "Tarjima qilib bo'lmadi",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Ta'mirlash bosqichi:",
+ "Repair info:" : "Repair info:",
+ "Repair warning:" : "Ta'mirlash haqida ogohlantirish:",
+ "Repair error:" : "Ta'mirlash xatosi:",
"Nextcloud Server" : "Next bulutli Server",
"Some of your link shares have been removed" : "Sizning havola aktsiyalaringizdan ba'zilari olib tashlandi",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Xavfsizlik xatosi tufayli biz sizning ba'zi havolalaringizni olib tashlashimiz kerak edi. Qo'shimcha ma'lumot olish uchun link qarang.",
@@ -58,11 +63,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Hisob cheklovini oshirish uchun obuna kalitini qo'llab-quvvatlash ilovasiga kiriting. Bu sizga Next cloud Enterprise taklif qiladigan va kompaniyalarda ishlash uchun juda tavsiya etiladigan barcha qo'shimcha imtiyozlarni beradi.",
"Learn more ↗" : "Ko'proq ma'lumot oling. ↗",
"Preparing update" : "Yangilanish tayyorlanmoqda",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Ta'mirlash bosqichi:",
- "Repair info:" : "Repair info:",
- "Repair warning:" : "Ta'mirlash haqida ogohlantirish:",
- "Repair error:" : "Ta'mirlash xatosi:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Iltimos, buyruq satrini yangilashdan foydalaning, chunki config.php da brauzer orqali yangilash o'chirilgan.",
"Turned on maintenance mode" : "Ta'minot rejimi yoqilgan",
"Turned off maintenance mode" : "Ta'minot rejimi o'chirilgan",
@@ -256,7 +256,7 @@ OC.L10N.register(
"Copy" : "Nusxalash",
"Move to {target}" : " {target}ga o`tish",
"Move" : "O`tish",
- "OK" : "OK",
+ "OK" : "Yaxshi",
"read-only" : "faqat o'qish uchun",
"_{count} file conflict_::_{count} file conflicts_" : ["{count} fayl xatolilklari"],
"One file conflict" : "Bitta fayl ziddiyati",
@@ -301,9 +301,9 @@ OC.L10N.register(
"Admin" : "Admin",
"Help" : "Yordam",
"Access forbidden" : "Kirish taqiqlangan",
+ "Back to %s" : "%sga qaytish",
"Page not found" : "Sahifa topilmadi",
"The page could not be found on the server or you may not be allowed to view it." : "Sahifani serverda topib bo'lmadi yoki sizga uni ko'rishga ruxsat berilmasligi mumkin.",
- "Back to %s" : "%sga qaytish",
"Too many requests" : "Juda koʻp soʻrovlar",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Tarmogʻingizdan juda koʻp soʻrovlar kelib tushdi. Keyinroq qayta urinib ko‘ring yoki xatolik yuz bergan bo‘lsa, administratoringizga murojaat qiling.",
"Error" : "Xatolik",
@@ -379,16 +379,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Bu %s misol hozirda sozlanish rejimida, bu biroz vaqt olishi mumkin.",
"This page will refresh itself when the instance is available again." : "Misol yana mavjud bo'lganda, bu sahifa o'zini yangilaydi.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Agar bu xabar davom etsa yoki kutilmaganda paydo bo'lsa, tizim administratoriga murojaat qiling.",
- "Currently open" : "Hozirda ochiq",
- "Login with username or email" : "Foydalanuvchi nomi yoki elektron pochta bilan kiring",
- "Login with username" : "Foydalanuvchi nomi bilan kirish",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Suhbat, video qo'ng'iroqlar, skrinshotlar, onlayn uchrashuvlar va veb – konferentsiyalar-brauzeringizda va mobil ilovalar bilan.",
"You have not added any info yet" : "Siz hali hech qanday ma'lumot qo'shmadingiz",
"{user} has not added any info yet" : "{user} hali hech qanday ma'lumot qo'shmagan",
"Error opening the user status modal, try hard refreshing the page" : "Foydalanuvchi holati modalini ochishda xato, sahifani yangilashga harakat qiling",
"Edit Profile" : "Profilni Tahrirlash",
"The headline and about sections will show up here" : "The headline and about sections will show up here",
- "Error loading message template: {error}" : " Xabar shablonini yuklashda xato ro'y berdi: {error}",
"Very weak password" : "Juda zaif parol",
"Weak password" : "Zaif parol",
"So-so password" : "Shunday parol",
diff --git a/core/l10n/uz.json b/core/l10n/uz.json
index de8f583af7a..4ca05538b63 100644
--- a/core/l10n/uz.json
+++ b/core/l10n/uz.json
@@ -49,6 +49,11 @@
"No translation provider available" : "Tarjima provayderi mavjud emas",
"Could not detect language" : "Tilni aniqlab bo'lmadi",
"Unable to translate" : "Tarjima qilib bo'lmadi",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Ta'mirlash bosqichi:",
+ "Repair info:" : "Repair info:",
+ "Repair warning:" : "Ta'mirlash haqida ogohlantirish:",
+ "Repair error:" : "Ta'mirlash xatosi:",
"Nextcloud Server" : "Next bulutli Server",
"Some of your link shares have been removed" : "Sizning havola aktsiyalaringizdan ba'zilari olib tashlandi",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Xavfsizlik xatosi tufayli biz sizning ba'zi havolalaringizni olib tashlashimiz kerak edi. Qo'shimcha ma'lumot olish uchun link qarang.",
@@ -56,11 +61,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Hisob cheklovini oshirish uchun obuna kalitini qo'llab-quvvatlash ilovasiga kiriting. Bu sizga Next cloud Enterprise taklif qiladigan va kompaniyalarda ishlash uchun juda tavsiya etiladigan barcha qo'shimcha imtiyozlarni beradi.",
"Learn more ↗" : "Ko'proq ma'lumot oling. ↗",
"Preparing update" : "Yangilanish tayyorlanmoqda",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Ta'mirlash bosqichi:",
- "Repair info:" : "Repair info:",
- "Repair warning:" : "Ta'mirlash haqida ogohlantirish:",
- "Repair error:" : "Ta'mirlash xatosi:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Iltimos, buyruq satrini yangilashdan foydalaning, chunki config.php da brauzer orqali yangilash o'chirilgan.",
"Turned on maintenance mode" : "Ta'minot rejimi yoqilgan",
"Turned off maintenance mode" : "Ta'minot rejimi o'chirilgan",
@@ -254,7 +254,7 @@
"Copy" : "Nusxalash",
"Move to {target}" : " {target}ga o`tish",
"Move" : "O`tish",
- "OK" : "OK",
+ "OK" : "Yaxshi",
"read-only" : "faqat o'qish uchun",
"_{count} file conflict_::_{count} file conflicts_" : ["{count} fayl xatolilklari"],
"One file conflict" : "Bitta fayl ziddiyati",
@@ -299,9 +299,9 @@
"Admin" : "Admin",
"Help" : "Yordam",
"Access forbidden" : "Kirish taqiqlangan",
+ "Back to %s" : "%sga qaytish",
"Page not found" : "Sahifa topilmadi",
"The page could not be found on the server or you may not be allowed to view it." : "Sahifani serverda topib bo'lmadi yoki sizga uni ko'rishga ruxsat berilmasligi mumkin.",
- "Back to %s" : "%sga qaytish",
"Too many requests" : "Juda koʻp soʻrovlar",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Tarmogʻingizdan juda koʻp soʻrovlar kelib tushdi. Keyinroq qayta urinib ko‘ring yoki xatolik yuz bergan bo‘lsa, administratoringizga murojaat qiling.",
"Error" : "Xatolik",
@@ -377,16 +377,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Bu %s misol hozirda sozlanish rejimida, bu biroz vaqt olishi mumkin.",
"This page will refresh itself when the instance is available again." : "Misol yana mavjud bo'lganda, bu sahifa o'zini yangilaydi.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Agar bu xabar davom etsa yoki kutilmaganda paydo bo'lsa, tizim administratoriga murojaat qiling.",
- "Currently open" : "Hozirda ochiq",
- "Login with username or email" : "Foydalanuvchi nomi yoki elektron pochta bilan kiring",
- "Login with username" : "Foydalanuvchi nomi bilan kirish",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Suhbat, video qo'ng'iroqlar, skrinshotlar, onlayn uchrashuvlar va veb – konferentsiyalar-brauzeringizda va mobil ilovalar bilan.",
"You have not added any info yet" : "Siz hali hech qanday ma'lumot qo'shmadingiz",
"{user} has not added any info yet" : "{user} hali hech qanday ma'lumot qo'shmagan",
"Error opening the user status modal, try hard refreshing the page" : "Foydalanuvchi holati modalini ochishda xato, sahifani yangilashga harakat qiling",
"Edit Profile" : "Profilni Tahrirlash",
"The headline and about sections will show up here" : "The headline and about sections will show up here",
- "Error loading message template: {error}" : " Xabar shablonini yuklashda xato ro'y berdi: {error}",
"Very weak password" : "Juda zaif parol",
"Weak password" : "Zaif parol",
"So-so password" : "Shunday parol",
diff --git a/core/l10n/vi.js b/core/l10n/vi.js
index c181bb40001..a171f94e07a 100644
--- a/core/l10n/vi.js
+++ b/core/l10n/vi.js
@@ -51,6 +51,11 @@ OC.L10N.register(
"No translation provider available" : "Không có nhà cung cấp bản dịch",
"Could not detect language" : "Không thể phát hiện ngôn ngữ",
"Unable to translate" : "Không thể dịch",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Bước sửa chữa:",
+ "Repair info:" : "Thông tin sửa chữa:",
+ "Repair warning:" : "Cảnh báo sửa chữa:",
+ "Repair error:" : "Lỗi sửa chữa:",
"Nextcloud Server" : "Máy chủ vWorkspace",
"Some of your link shares have been removed" : "Một số liên kết chia sẻ của bạn đã bị xóa",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Do lỗi bảo mật, chúng tôi đã phải xóa một số liên kết chia sẻ của bạn. Vui lòng xem liên kết để biết thêm thông tin.",
@@ -58,11 +63,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Hãy nhập khóa đăng ký của bạn vào ứng dụng \"Support\" để tăng giới hạn tài khoản. Việc này cũng sẽ cung cấp cho bạn những đặc quyền do Nextcloud Enterprise cung cấp.",
"Learn more ↗" : "Để biết thêm↗",
"Preparing update" : "Đang chuẩn bị cập nhật",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Bước sửa chữa:",
- "Repair info:" : "Thông tin sửa chữa:",
- "Repair warning:" : "Cảnh báo sửa chữa:",
- "Repair error:" : "Lỗi sửa chữa:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Vui lòng sử dụng trình cập nhật dòng lệnh vì cập nhật qua trình duyệt bị tắt trong config.php của bạn.",
"Turned on maintenance mode" : "Bật chế độ bảo trì",
"Turned off maintenance mode" : "Tắt chế độ bảo trì",
@@ -274,9 +274,9 @@ OC.L10N.register(
"Admin" : "Quản trị",
"Help" : "Giúp đỡ",
"Access forbidden" : "Truy cập bị cấm",
+ "Back to %s" : "Quay lại %s",
"Page not found" : "Trang không tìm thấy",
"The page could not be found on the server or you may not be allowed to view it." : "Không thể tìm thấy trang trên máy chủ hoặc bạn có thể không được phép xem nó.",
- "Back to %s" : "Quay lại %s",
"Too many requests" : "Có quá nhiều yêu cầu",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Có quá nhiều yêu cầu từ mạng của bạn. Thử lại sau hoặc liên hệ với quản trị viên của bạn nếu đây là lỗi.",
"Error" : "Lỗi",
@@ -352,16 +352,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "Bản cài đặt%s hiện tại đang trong chế độ \"bảo trì\", do vậy có thể bạn cần phải đợi thêm chút ít thời gian.",
"This page will refresh itself when the instance is available again." : "Trang này sẽ tự làm mới khi phiên bản khả dụng trở lại.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Liên hệ với người quản trị nếu lỗi này vẫn tồn tại hoặc xuất hiện bất ngờ.",
- "Currently open" : "Hiện đang mở",
- "Login with username or email" : "Đăng nhập bằng tên người dùng hoặc Email",
- "Login with username" : "Đăng nhập bằng tên đăng nhập",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Trò chuyện, cuộc gọi video, chia sẻ màn hình, cuộc họp trực tuyến và hội nghị trên web - trong trình duyệt của bạn và với các ứng dụng dành cho thiết bị di động.",
"You have not added any info yet" : "Bạn chưa thêm bất kỳ thông tin nào",
"{user} has not added any info yet" : "{user} chưa thêm bất kỳ thông tin nào",
"Error opening the user status modal, try hard refreshing the page" : "Lỗi khi mở phương thức trạng thái người dùng, hãy thử làm mới trang",
"Edit Profile" : "Chỉnh sửa hồ sơ",
"The headline and about sections will show up here" : "Dòng tiêu đề và phần giới thiệu sẽ hiển thị ở đây",
- "Error loading message template: {error}" : "Lỗi khi tải mẫu thông điệp: {error}",
"Very weak password" : "Mật khẩu rất yếu",
"Weak password" : "Mật khẩu yếu",
"So-so password" : "Mật khẩu tạm được",
diff --git a/core/l10n/vi.json b/core/l10n/vi.json
index 9c8a6e0f77f..1aa846012ab 100644
--- a/core/l10n/vi.json
+++ b/core/l10n/vi.json
@@ -49,6 +49,11 @@
"No translation provider available" : "Không có nhà cung cấp bản dịch",
"Could not detect language" : "Không thể phát hiện ngôn ngữ",
"Unable to translate" : "Không thể dịch",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "Bước sửa chữa:",
+ "Repair info:" : "Thông tin sửa chữa:",
+ "Repair warning:" : "Cảnh báo sửa chữa:",
+ "Repair error:" : "Lỗi sửa chữa:",
"Nextcloud Server" : "Máy chủ vWorkspace",
"Some of your link shares have been removed" : "Một số liên kết chia sẻ của bạn đã bị xóa",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Do lỗi bảo mật, chúng tôi đã phải xóa một số liên kết chia sẻ của bạn. Vui lòng xem liên kết để biết thêm thông tin.",
@@ -56,11 +61,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Hãy nhập khóa đăng ký của bạn vào ứng dụng \"Support\" để tăng giới hạn tài khoản. Việc này cũng sẽ cung cấp cho bạn những đặc quyền do Nextcloud Enterprise cung cấp.",
"Learn more ↗" : "Để biết thêm↗",
"Preparing update" : "Đang chuẩn bị cập nhật",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "Bước sửa chữa:",
- "Repair info:" : "Thông tin sửa chữa:",
- "Repair warning:" : "Cảnh báo sửa chữa:",
- "Repair error:" : "Lỗi sửa chữa:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "Vui lòng sử dụng trình cập nhật dòng lệnh vì cập nhật qua trình duyệt bị tắt trong config.php của bạn.",
"Turned on maintenance mode" : "Bật chế độ bảo trì",
"Turned off maintenance mode" : "Tắt chế độ bảo trì",
@@ -272,9 +272,9 @@
"Admin" : "Quản trị",
"Help" : "Giúp đỡ",
"Access forbidden" : "Truy cập bị cấm",
+ "Back to %s" : "Quay lại %s",
"Page not found" : "Trang không tìm thấy",
"The page could not be found on the server or you may not be allowed to view it." : "Không thể tìm thấy trang trên máy chủ hoặc bạn có thể không được phép xem nó.",
- "Back to %s" : "Quay lại %s",
"Too many requests" : "Có quá nhiều yêu cầu",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Có quá nhiều yêu cầu từ mạng của bạn. Thử lại sau hoặc liên hệ với quản trị viên của bạn nếu đây là lỗi.",
"Error" : "Lỗi",
@@ -350,16 +350,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "Bản cài đặt%s hiện tại đang trong chế độ \"bảo trì\", do vậy có thể bạn cần phải đợi thêm chút ít thời gian.",
"This page will refresh itself when the instance is available again." : "Trang này sẽ tự làm mới khi phiên bản khả dụng trở lại.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Liên hệ với người quản trị nếu lỗi này vẫn tồn tại hoặc xuất hiện bất ngờ.",
- "Currently open" : "Hiện đang mở",
- "Login with username or email" : "Đăng nhập bằng tên người dùng hoặc Email",
- "Login with username" : "Đăng nhập bằng tên đăng nhập",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "Trò chuyện, cuộc gọi video, chia sẻ màn hình, cuộc họp trực tuyến và hội nghị trên web - trong trình duyệt của bạn và với các ứng dụng dành cho thiết bị di động.",
"You have not added any info yet" : "Bạn chưa thêm bất kỳ thông tin nào",
"{user} has not added any info yet" : "{user} chưa thêm bất kỳ thông tin nào",
"Error opening the user status modal, try hard refreshing the page" : "Lỗi khi mở phương thức trạng thái người dùng, hãy thử làm mới trang",
"Edit Profile" : "Chỉnh sửa hồ sơ",
"The headline and about sections will show up here" : "Dòng tiêu đề và phần giới thiệu sẽ hiển thị ở đây",
- "Error loading message template: {error}" : "Lỗi khi tải mẫu thông điệp: {error}",
"Very weak password" : "Mật khẩu rất yếu",
"Weak password" : "Mật khẩu yếu",
"So-so password" : "Mật khẩu tạm được",
diff --git a/core/l10n/zh_CN.js b/core/l10n/zh_CN.js
index 9755d0fe1ae..9c5ea62d27b 100644
--- a/core/l10n/zh_CN.js
+++ b/core/l10n/zh_CN.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "找不到任务",
"Internal error" : "内部错误",
"Not found" : "未找到",
+ "Node is locked" : "节点已锁定",
"Bad request" : "请求错误",
"Requested task type does not exist" : "请求的任务类型不存在",
"Necessary language model provider is not available" : "无必要的语言模型提供程序",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "没有可用的翻译提供程序",
"Could not detect language" : "无法检测语言",
"Unable to translate" : "无法翻译",
+ "[%d / %d]: %s" : "[%d / %d]:%s",
+ "Repair step:" : "修复日志 步骤:",
+ "Repair info:" : "修复 信息:",
+ "Repair warning:" : "修复 警告:",
+ "Repair error:" : "修复 错误:",
"Nextcloud Server" : "Nextcloud 服务器",
"Some of your link shares have been removed" : "您的一些链接共享已被移除",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "由于一个安全缺陷,我们必须移除您的部分链接共享。更多信息请查看此链接。",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "在支持应用中输入你的订阅秘钥以拓展账号数量限制。这也确保您可以体验到 Nextcloud Enterprise 额外优势,强烈建议在公司应用场景中启用订阅。",
"Learn more ↗" : "了解更多 ↗",
"Preparing update" : "正在准备更新",
- "[%d / %d]: %s" : "[%d / %d]:%s",
- "Repair step:" : "修复日志 步骤:",
- "Repair info:" : "修复 信息:",
- "Repair warning:" : "修复 警告:",
- "Repair error:" : "修复 错误:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "请使用命令行更新程序,因为通过浏览器更新在您的config.php中被禁用。",
"Turned on maintenance mode" : "启用维护模式",
"Turned off maintenance mode" : "关闭维护模式",
@@ -225,7 +226,7 @@ OC.L10N.register(
"Yes" : "是",
"The remote URL must include the user." : "远程 URL 必须包含用户。",
"Invalid remote URL." : "无效远程 URL。",
- "Failed to add the public link to your Nextcloud" : "添加公开链接到您的Nextcloud失败",
+ "Failed to add the public link to your Nextcloud" : "无法将公开链接添加到您的 Nextcloud",
"Federated user" : "联合云用户",
"user@your-nextcloud.org" : "user@your-nextcloud.org",
"Create share" : "创建共享",
@@ -327,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "登录表单已禁用",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloud 登录表单已禁用。如果可以,请使用其他登录选项或联系你的管理人员。",
"More actions" : "更多操作 ",
+ "User menu" : "用户菜单",
+ "You will be identified as {user} by the account owner." : "账号所有者会将您标识为 {user}。",
+ "You are currently not identified." : "您当前未被标识。",
+ "Set public name" : "设置公开名称",
+ "Change public name" : "更改公开名称",
"Password is too weak" : "密码太弱",
"Password is weak" : "弱密码",
"Password is average" : "一般密码",
@@ -396,9 +402,9 @@ OC.L10N.register(
"Show details" : "显示详情",
"Hide details" : "隐藏详细信息",
"Rename project" : "重命名项目",
- "Failed to rename the project" : "重命名项目失败",
- "Failed to create a project" : "创建项目失败",
- "Failed to add the item to the project" : "添加条目到项目中失败",
+ "Failed to rename the project" : "无法重命名项目",
+ "Failed to create a project" : "无法创建项目",
+ "Failed to add the item to the project" : "无法将条目添加到项目中",
"Connect items to a project to make them easier to find" : "将条目关联到项目以使它们更容易查找",
"Type to search for existing projects" : "输入以搜索已有项目",
"New in" : "新品",
@@ -420,9 +426,10 @@ OC.L10N.register(
"Admin" : "管理",
"Help" : "帮助",
"Access forbidden" : "访问禁止",
+ "You are not allowed to access this page." : "不允许您访问此页面。",
+ "Back to %s" : "返回 %s",
"Page not found" : "未找到页面",
"The page could not be found on the server or you may not be allowed to view it." : "该页面在服务器上无法找到,或者您可能不被允许浏览。",
- "Back to %s" : "返回 %s",
"Too many requests" : "请求过多",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "您的网络请求过多。如果出现错误,请稍后重试或与您的管理员联系。",
"Error" : "错误",
@@ -498,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "该实例 %s 当前处于维护模式,这将花费一些时间。",
"This page will refresh itself when the instance is available again." : "当实例再次可用时,页面会自动刷新。",
"Contact your system administrator if this message persists or appeared unexpectedly." : "如果这个消息一直存在或不停出现,请联系您的系统管理员。",
- "Currently open" : "当前打开",
- "Login with username or email" : "使用用户名或电子邮箱进行登录",
- "Login with username" : "使用用户名登录",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "在浏览器和移动设备应用中进行聊天,视频通话,屏幕共享,线上见面和网络会议。",
"You have not added any info yet" : "您尚未添加任何信息",
"{user} has not added any info yet" : "{user} 尚未添加任何信息",
"Error opening the user status modal, try hard refreshing the page" : "打开用户状态模块时出错,请努力刷新页面",
"Edit Profile" : "编辑个人资料",
"The headline and about sections will show up here" : "标题和关于部分将显示在此处",
- "Error loading message template: {error}" : "加载消息模板出错:{error}",
"Very weak password" : "非常弱的密码",
"Weak password" : "弱密码",
"So-so password" : "一般强度的密码",
diff --git a/core/l10n/zh_CN.json b/core/l10n/zh_CN.json
index 6a2df414bae..6df0d68e261 100644
--- a/core/l10n/zh_CN.json
+++ b/core/l10n/zh_CN.json
@@ -42,6 +42,7 @@
"Task not found" : "找不到任务",
"Internal error" : "内部错误",
"Not found" : "未找到",
+ "Node is locked" : "节点已锁定",
"Bad request" : "请求错误",
"Requested task type does not exist" : "请求的任务类型不存在",
"Necessary language model provider is not available" : "无必要的语言模型提供程序",
@@ -50,6 +51,11 @@
"No translation provider available" : "没有可用的翻译提供程序",
"Could not detect language" : "无法检测语言",
"Unable to translate" : "无法翻译",
+ "[%d / %d]: %s" : "[%d / %d]:%s",
+ "Repair step:" : "修复日志 步骤:",
+ "Repair info:" : "修复 信息:",
+ "Repair warning:" : "修复 警告:",
+ "Repair error:" : "修复 错误:",
"Nextcloud Server" : "Nextcloud 服务器",
"Some of your link shares have been removed" : "您的一些链接共享已被移除",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "由于一个安全缺陷,我们必须移除您的部分链接共享。更多信息请查看此链接。",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "在支持应用中输入你的订阅秘钥以拓展账号数量限制。这也确保您可以体验到 Nextcloud Enterprise 额外优势,强烈建议在公司应用场景中启用订阅。",
"Learn more ↗" : "了解更多 ↗",
"Preparing update" : "正在准备更新",
- "[%d / %d]: %s" : "[%d / %d]:%s",
- "Repair step:" : "修复日志 步骤:",
- "Repair info:" : "修复 信息:",
- "Repair warning:" : "修复 警告:",
- "Repair error:" : "修复 错误:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "请使用命令行更新程序,因为通过浏览器更新在您的config.php中被禁用。",
"Turned on maintenance mode" : "启用维护模式",
"Turned off maintenance mode" : "关闭维护模式",
@@ -223,7 +224,7 @@
"Yes" : "是",
"The remote URL must include the user." : "远程 URL 必须包含用户。",
"Invalid remote URL." : "无效远程 URL。",
- "Failed to add the public link to your Nextcloud" : "添加公开链接到您的Nextcloud失败",
+ "Failed to add the public link to your Nextcloud" : "无法将公开链接添加到您的 Nextcloud",
"Federated user" : "联合云用户",
"user@your-nextcloud.org" : "user@your-nextcloud.org",
"Create share" : "创建共享",
@@ -325,6 +326,11 @@
"Login form is disabled." : "登录表单已禁用",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloud 登录表单已禁用。如果可以,请使用其他登录选项或联系你的管理人员。",
"More actions" : "更多操作 ",
+ "User menu" : "用户菜单",
+ "You will be identified as {user} by the account owner." : "账号所有者会将您标识为 {user}。",
+ "You are currently not identified." : "您当前未被标识。",
+ "Set public name" : "设置公开名称",
+ "Change public name" : "更改公开名称",
"Password is too weak" : "密码太弱",
"Password is weak" : "弱密码",
"Password is average" : "一般密码",
@@ -394,9 +400,9 @@
"Show details" : "显示详情",
"Hide details" : "隐藏详细信息",
"Rename project" : "重命名项目",
- "Failed to rename the project" : "重命名项目失败",
- "Failed to create a project" : "创建项目失败",
- "Failed to add the item to the project" : "添加条目到项目中失败",
+ "Failed to rename the project" : "无法重命名项目",
+ "Failed to create a project" : "无法创建项目",
+ "Failed to add the item to the project" : "无法将条目添加到项目中",
"Connect items to a project to make them easier to find" : "将条目关联到项目以使它们更容易查找",
"Type to search for existing projects" : "输入以搜索已有项目",
"New in" : "新品",
@@ -418,9 +424,10 @@
"Admin" : "管理",
"Help" : "帮助",
"Access forbidden" : "访问禁止",
+ "You are not allowed to access this page." : "不允许您访问此页面。",
+ "Back to %s" : "返回 %s",
"Page not found" : "未找到页面",
"The page could not be found on the server or you may not be allowed to view it." : "该页面在服务器上无法找到,或者您可能不被允许浏览。",
- "Back to %s" : "返回 %s",
"Too many requests" : "请求过多",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "您的网络请求过多。如果出现错误,请稍后重试或与您的管理员联系。",
"Error" : "错误",
@@ -496,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "该实例 %s 当前处于维护模式,这将花费一些时间。",
"This page will refresh itself when the instance is available again." : "当实例再次可用时,页面会自动刷新。",
"Contact your system administrator if this message persists or appeared unexpectedly." : "如果这个消息一直存在或不停出现,请联系您的系统管理员。",
- "Currently open" : "当前打开",
- "Login with username or email" : "使用用户名或电子邮箱进行登录",
- "Login with username" : "使用用户名登录",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "在浏览器和移动设备应用中进行聊天,视频通话,屏幕共享,线上见面和网络会议。",
"You have not added any info yet" : "您尚未添加任何信息",
"{user} has not added any info yet" : "{user} 尚未添加任何信息",
"Error opening the user status modal, try hard refreshing the page" : "打开用户状态模块时出错,请努力刷新页面",
"Edit Profile" : "编辑个人资料",
"The headline and about sections will show up here" : "标题和关于部分将显示在此处",
- "Error loading message template: {error}" : "加载消息模板出错:{error}",
"Very weak password" : "非常弱的密码",
"Weak password" : "弱密码",
"So-so password" : "一般强度的密码",
diff --git a/core/l10n/zh_HK.js b/core/l10n/zh_HK.js
index f99baec22e3..b33f0895829 100644
--- a/core/l10n/zh_HK.js
+++ b/core/l10n/zh_HK.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "找不到任務",
"Internal error" : "內部錯誤",
"Not found" : "找不到",
+ "Node is locked" : "節點已上鎖",
"Bad request" : "請求無效",
"Requested task type does not exist" : "請求的任務類型不存在",
"Necessary language model provider is not available" : "沒有可用的語言模型提供者",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "沒有可用翻譯提供者",
"Could not detect language" : "無法檢測語言",
"Unable to translate" : "無法翻譯",
+ "[%d / %d]: %s" : "[%d / %d]:%s",
+ "Repair step:" : "修復步驟:",
+ "Repair info:" : "修復資訊:",
+ "Repair warning:" : "修復警告:",
+ "Repair error:" : "修復錯誤:",
"Nextcloud Server" : "Nextcloud 伺服器",
"Some of your link shares have been removed" : "部分分享連結己被移除",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "由於安全性問題,我們必須移除您一部分的連結分享。查看更多資訊請點選連結。",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "在支援應用程式中輸入您的訂閱金鑰以增加帳戶限制。這也確實為您提供了 Nextcloud Enterprise 提供的所有額外好處,並且強烈推薦用於公司的營運。",
"Learn more ↗" : "了解更多",
"Preparing update" : "正在準備更新",
- "[%d / %d]: %s" : "[%d / %d]:%s",
- "Repair step:" : "修復步驟:",
- "Repair info:" : "修復資訊:",
- "Repair warning:" : "修復警告:",
- "Repair error:" : "修復錯誤:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "由於更新功能已在 config.php 中設定停用,請使用命令列(command line)更新系統。",
"Turned on maintenance mode" : "已啟用維護模式",
"Turned off maintenance mode" : "停用維護模式",
@@ -327,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "登入表格已停用",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloud 登入表單已停用。使用其他登入選項(若可用)或聯絡您的管理人員。",
"More actions" : "更多操作",
+ "User menu" : "用戶選項單",
+ "You will be identified as {user} by the account owner." : "帳號所有者會將您辨識為 {user}。",
+ "You are currently not identified." : "目前無法辨識您的身分。",
+ "Set public name" : "設定公開名稱",
+ "Change public name" : "變更公開名稱",
"Password is too weak" : "密碼強度非常弱",
"Password is weak" : "密碼強度弱",
"Password is average" : "密碼強度一般",
@@ -420,9 +426,10 @@ OC.L10N.register(
"Admin" : "管理",
"Help" : "說明",
"Access forbidden" : "存取被拒",
+ "You are not allowed to access this page." : "您無法存取此頁面。",
+ "Back to %s" : "回到 %s",
"Page not found" : "沒有找到頁面",
"The page could not be found on the server or you may not be allowed to view it." : "在伺服器上找不到該頁面,或者您可能無法查看它。",
- "Back to %s" : "回到 %s",
"Too many requests" : "太多要求",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "有太多請求來自你的網路,請稍後再試,若你認為這不該發生,請回報系統管理員這項錯誤。",
"Error" : "錯誤",
@@ -498,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "此 %s 實例目前處於維護模式,可能需要一段時間才能完成。",
"This page will refresh itself when the instance is available again." : "安裝恢復可用之後,本頁會自動重新整理",
"Contact your system administrator if this message persists or appeared unexpectedly." : "若這個訊息持續出現,請聯絡系統管理員。",
- "Currently open" : "目前開啟",
- "Login with username or email" : "以用戶名稱或電郵地址登入",
- "Login with username" : "以用戶名稱登入",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "對話、視訊電話、螢幕分享、線上會議與網路研討會 - 實現於你的瀏覽器與手機 apps 之中。",
"You have not added any info yet" : "您尚未新增任何資訊",
"{user} has not added any info yet" : "{user} 尚未新增任何資訊",
"Error opening the user status modal, try hard refreshing the page" : "打開用戶狀態模式時出錯,請嘗試刷新頁面",
"Edit Profile" : "編輯個人設定",
"The headline and about sections will show up here" : "標題與關於部份將在此顯示",
- "Error loading message template: {error}" : "載入訊息模板時出錯: {error}",
"Very weak password" : "密碼安全性極弱",
"Weak password" : "密碼安全性弱",
"So-so password" : "密碼安全性普通",
diff --git a/core/l10n/zh_HK.json b/core/l10n/zh_HK.json
index 5ade206118c..2c224a95065 100644
--- a/core/l10n/zh_HK.json
+++ b/core/l10n/zh_HK.json
@@ -42,6 +42,7 @@
"Task not found" : "找不到任務",
"Internal error" : "內部錯誤",
"Not found" : "找不到",
+ "Node is locked" : "節點已上鎖",
"Bad request" : "請求無效",
"Requested task type does not exist" : "請求的任務類型不存在",
"Necessary language model provider is not available" : "沒有可用的語言模型提供者",
@@ -50,6 +51,11 @@
"No translation provider available" : "沒有可用翻譯提供者",
"Could not detect language" : "無法檢測語言",
"Unable to translate" : "無法翻譯",
+ "[%d / %d]: %s" : "[%d / %d]:%s",
+ "Repair step:" : "修復步驟:",
+ "Repair info:" : "修復資訊:",
+ "Repair warning:" : "修復警告:",
+ "Repair error:" : "修復錯誤:",
"Nextcloud Server" : "Nextcloud 伺服器",
"Some of your link shares have been removed" : "部分分享連結己被移除",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "由於安全性問題,我們必須移除您一部分的連結分享。查看更多資訊請點選連結。",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "在支援應用程式中輸入您的訂閱金鑰以增加帳戶限制。這也確實為您提供了 Nextcloud Enterprise 提供的所有額外好處,並且強烈推薦用於公司的營運。",
"Learn more ↗" : "了解更多",
"Preparing update" : "正在準備更新",
- "[%d / %d]: %s" : "[%d / %d]:%s",
- "Repair step:" : "修復步驟:",
- "Repair info:" : "修復資訊:",
- "Repair warning:" : "修復警告:",
- "Repair error:" : "修復錯誤:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "由於更新功能已在 config.php 中設定停用,請使用命令列(command line)更新系統。",
"Turned on maintenance mode" : "已啟用維護模式",
"Turned off maintenance mode" : "停用維護模式",
@@ -325,6 +326,11 @@
"Login form is disabled." : "登入表格已停用",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloud 登入表單已停用。使用其他登入選項(若可用)或聯絡您的管理人員。",
"More actions" : "更多操作",
+ "User menu" : "用戶選項單",
+ "You will be identified as {user} by the account owner." : "帳號所有者會將您辨識為 {user}。",
+ "You are currently not identified." : "目前無法辨識您的身分。",
+ "Set public name" : "設定公開名稱",
+ "Change public name" : "變更公開名稱",
"Password is too weak" : "密碼強度非常弱",
"Password is weak" : "密碼強度弱",
"Password is average" : "密碼強度一般",
@@ -418,9 +424,10 @@
"Admin" : "管理",
"Help" : "說明",
"Access forbidden" : "存取被拒",
+ "You are not allowed to access this page." : "您無法存取此頁面。",
+ "Back to %s" : "回到 %s",
"Page not found" : "沒有找到頁面",
"The page could not be found on the server or you may not be allowed to view it." : "在伺服器上找不到該頁面,或者您可能無法查看它。",
- "Back to %s" : "回到 %s",
"Too many requests" : "太多要求",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "有太多請求來自你的網路,請稍後再試,若你認為這不該發生,請回報系統管理員這項錯誤。",
"Error" : "錯誤",
@@ -496,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "此 %s 實例目前處於維護模式,可能需要一段時間才能完成。",
"This page will refresh itself when the instance is available again." : "安裝恢復可用之後,本頁會自動重新整理",
"Contact your system administrator if this message persists or appeared unexpectedly." : "若這個訊息持續出現,請聯絡系統管理員。",
- "Currently open" : "目前開啟",
- "Login with username or email" : "以用戶名稱或電郵地址登入",
- "Login with username" : "以用戶名稱登入",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "對話、視訊電話、螢幕分享、線上會議與網路研討會 - 實現於你的瀏覽器與手機 apps 之中。",
"You have not added any info yet" : "您尚未新增任何資訊",
"{user} has not added any info yet" : "{user} 尚未新增任何資訊",
"Error opening the user status modal, try hard refreshing the page" : "打開用戶狀態模式時出錯,請嘗試刷新頁面",
"Edit Profile" : "編輯個人設定",
"The headline and about sections will show up here" : "標題與關於部份將在此顯示",
- "Error loading message template: {error}" : "載入訊息模板時出錯: {error}",
"Very weak password" : "密碼安全性極弱",
"Weak password" : "密碼安全性弱",
"So-so password" : "密碼安全性普通",
diff --git a/core/l10n/zh_TW.js b/core/l10n/zh_TW.js
index ae5eb155760..e052b677c38 100644
--- a/core/l10n/zh_TW.js
+++ b/core/l10n/zh_TW.js
@@ -44,6 +44,7 @@ OC.L10N.register(
"Task not found" : "找不到任務",
"Internal error" : "內部錯誤",
"Not found" : "找不到",
+ "Node is locked" : "節點已鎖定",
"Bad request" : "錯誤的請求",
"Requested task type does not exist" : "請求的任務類型不存在",
"Necessary language model provider is not available" : "沒有可用的語言模型程式",
@@ -52,6 +53,11 @@ OC.L10N.register(
"No translation provider available" : "沒有可用的翻譯提供者",
"Could not detect language" : "無法偵測語言",
"Unable to translate" : "無法翻譯",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "修復步驟:",
+ "Repair info:" : "修復資訊:",
+ "Repair warning:" : "修復警告:",
+ "Repair error:" : "修復錯誤:",
"Nextcloud Server" : "Nextcloud 伺服器",
"Some of your link shares have been removed" : "部分分享連結己被移除",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "出於安全性問題,我們必須移除您一部分的分享連結。查看更多資訊請點選連結。",
@@ -59,11 +65,6 @@ OC.L10N.register(
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "在支援應用程式中輸入您的訂閱金鑰以增加帳號限制。這也確實為您提供了 Nextcloud Enterprise 提供的所有額外好處,並且強烈推薦用於公司的營運。",
"Learn more ↗" : "深入瞭解 ↗",
"Preparing update" : "準備更新",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "修復步驟:",
- "Repair info:" : "修復資訊:",
- "Repair warning:" : "修復警告:",
- "Repair error:" : "修復錯誤:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "透過瀏覽器更新的功能已在您的 config.php 中停用,因此請使用命令列更新程式。",
"Turned on maintenance mode" : "啟用維護模式",
"Turned off maintenance mode" : "停用維護模式",
@@ -327,6 +328,11 @@ OC.L10N.register(
"Login form is disabled." : "登入表單已停用。",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloud 登入表單已停用。使用其他登入選項(若可用)或聯絡您的管理人員。",
"More actions" : "更多動作",
+ "User menu" : "使用者選單",
+ "You will be identified as {user} by the account owner." : "帳號所有人會將您辨識為 {user}。",
+ "You are currently not identified." : "目前無法辨識您的身份。",
+ "Set public name" : "設定公開名稱",
+ "Change public name" : "變更公開名稱",
"Password is too weak" : "非常弱密碼",
"Password is weak" : "弱密碼",
"Password is average" : "一般密碼",
@@ -420,9 +426,10 @@ OC.L10N.register(
"Admin" : "管理",
"Help" : "說明",
"Access forbidden" : "存取被拒",
+ "You are not allowed to access this page." : "您無法存取此頁面。",
+ "Back to %s" : "返回 %s",
"Page not found" : "找不到頁面",
"The page could not be found on the server or you may not be allowed to view it." : "在伺服器上找不到該頁面,或者您可能無權檢視。",
- "Back to %s" : "返回 %s",
"Too many requests" : "太多請求",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "有太多請求來自您的網路,請稍後再試。若您認為這不該發生,請聯絡系統管理員這是錯誤。",
"Error" : "錯誤",
@@ -498,16 +505,12 @@ OC.L10N.register(
"This %s instance is currently in maintenance mode, which may take a while." : "這個 %s 站台目前處於維護模式,需要一段時間恢復。",
"This page will refresh itself when the instance is available again." : "在站台恢復可用之後,本頁會自動重新整理。",
"Contact your system administrator if this message persists or appeared unexpectedly." : "若這個訊息持續出現,請聯絡系統管理員。",
- "Currently open" : "目前開啟",
- "Login with username or email" : "以使用者名稱或電子郵件登入",
- "Login with username" : "以使用者名稱登入",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "對話、視訊電話、螢幕分享、線上會議、網路研討會等 - 在您的瀏覽器與手機應用程式之中實現。",
"You have not added any info yet" : "您尚未新增任何資訊",
"{user} has not added any info yet" : "{user} 尚未新增任何資訊",
"Error opening the user status modal, try hard refreshing the page" : "開啟使用者狀態的模組時發生問題,嘗試重新整理頁面",
"Edit Profile" : "編輯個人檔案",
"The headline and about sections will show up here" : "標題與關於區段將在此顯示",
- "Error loading message template: {error}" : "載入訊息範本時發生錯誤:{error}",
"Very weak password" : "密碼安全性極弱",
"Weak password" : "密碼安全性弱",
"So-so password" : "密碼安全性普通",
diff --git a/core/l10n/zh_TW.json b/core/l10n/zh_TW.json
index 186b88ad878..67baf061f9f 100644
--- a/core/l10n/zh_TW.json
+++ b/core/l10n/zh_TW.json
@@ -42,6 +42,7 @@
"Task not found" : "找不到任務",
"Internal error" : "內部錯誤",
"Not found" : "找不到",
+ "Node is locked" : "節點已鎖定",
"Bad request" : "錯誤的請求",
"Requested task type does not exist" : "請求的任務類型不存在",
"Necessary language model provider is not available" : "沒有可用的語言模型程式",
@@ -50,6 +51,11 @@
"No translation provider available" : "沒有可用的翻譯提供者",
"Could not detect language" : "無法偵測語言",
"Unable to translate" : "無法翻譯",
+ "[%d / %d]: %s" : "[%d / %d]: %s",
+ "Repair step:" : "修復步驟:",
+ "Repair info:" : "修復資訊:",
+ "Repair warning:" : "修復警告:",
+ "Repair error:" : "修復錯誤:",
"Nextcloud Server" : "Nextcloud 伺服器",
"Some of your link shares have been removed" : "部分分享連結己被移除",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "出於安全性問題,我們必須移除您一部分的分享連結。查看更多資訊請點選連結。",
@@ -57,11 +63,6 @@
"Enter your subscription key in the support app in order to increase the account limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "在支援應用程式中輸入您的訂閱金鑰以增加帳號限制。這也確實為您提供了 Nextcloud Enterprise 提供的所有額外好處,並且強烈推薦用於公司的營運。",
"Learn more ↗" : "深入瞭解 ↗",
"Preparing update" : "準備更新",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair step:" : "修復步驟:",
- "Repair info:" : "修復資訊:",
- "Repair warning:" : "修復警告:",
- "Repair error:" : "修復錯誤:",
"Please use the command line updater because updating via browser is disabled in your config.php." : "透過瀏覽器更新的功能已在您的 config.php 中停用,因此請使用命令列更新程式。",
"Turned on maintenance mode" : "啟用維護模式",
"Turned off maintenance mode" : "停用維護模式",
@@ -325,6 +326,11 @@
"Login form is disabled." : "登入表單已停用。",
"The Nextcloud login form is disabled. Use another login option if available or contact your administration." : "Nextcloud 登入表單已停用。使用其他登入選項(若可用)或聯絡您的管理人員。",
"More actions" : "更多動作",
+ "User menu" : "使用者選單",
+ "You will be identified as {user} by the account owner." : "帳號所有人會將您辨識為 {user}。",
+ "You are currently not identified." : "目前無法辨識您的身份。",
+ "Set public name" : "設定公開名稱",
+ "Change public name" : "變更公開名稱",
"Password is too weak" : "非常弱密碼",
"Password is weak" : "弱密碼",
"Password is average" : "一般密碼",
@@ -418,9 +424,10 @@
"Admin" : "管理",
"Help" : "說明",
"Access forbidden" : "存取被拒",
+ "You are not allowed to access this page." : "您無法存取此頁面。",
+ "Back to %s" : "返回 %s",
"Page not found" : "找不到頁面",
"The page could not be found on the server or you may not be allowed to view it." : "在伺服器上找不到該頁面,或者您可能無權檢視。",
- "Back to %s" : "返回 %s",
"Too many requests" : "太多請求",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "有太多請求來自您的網路,請稍後再試。若您認為這不該發生,請聯絡系統管理員這是錯誤。",
"Error" : "錯誤",
@@ -496,16 +503,12 @@
"This %s instance is currently in maintenance mode, which may take a while." : "這個 %s 站台目前處於維護模式,需要一段時間恢復。",
"This page will refresh itself when the instance is available again." : "在站台恢復可用之後,本頁會自動重新整理。",
"Contact your system administrator if this message persists or appeared unexpectedly." : "若這個訊息持續出現,請聯絡系統管理員。",
- "Currently open" : "目前開啟",
- "Login with username or email" : "以使用者名稱或電子郵件登入",
- "Login with username" : "以使用者名稱登入",
"Chatting, video calls, screensharing, online meetings and web conferencing – in your browser and with mobile apps." : "對話、視訊電話、螢幕分享、線上會議、網路研討會等 - 在您的瀏覽器與手機應用程式之中實現。",
"You have not added any info yet" : "您尚未新增任何資訊",
"{user} has not added any info yet" : "{user} 尚未新增任何資訊",
"Error opening the user status modal, try hard refreshing the page" : "開啟使用者狀態的模組時發生問題,嘗試重新整理頁面",
"Edit Profile" : "編輯個人檔案",
"The headline and about sections will show up here" : "標題與關於區段將在此顯示",
- "Error loading message template: {error}" : "載入訊息範本時發生錯誤:{error}",
"Very weak password" : "密碼安全性極弱",
"Weak password" : "密碼安全性弱",
"So-so password" : "密碼安全性普通",
diff --git a/core/openapi-ex_app.json b/core/openapi-ex_app.json
index 95a86e8e112..7f7612a03c9 100644
--- a/core/openapi-ex_app.json
+++ b/core/openapi-ex_app.json
@@ -754,6 +754,7 @@
"output": {
"type": "object",
"nullable": true,
+ "default": null,
"description": "The resulting task output, files are represented by their IDs",
"additionalProperties": {
"type": "object"
@@ -762,6 +763,7 @@
"errorMessage": {
"type": "string",
"nullable": true,
+ "default": null,
"description": "An error message if the task failed"
}
}
diff --git a/core/openapi-full.json b/core/openapi-full.json
index b67bceff1d2..5edb86992dc 100644
--- a/core/openapi-full.json
+++ b/core/openapi-full.json
@@ -1173,6 +1173,13 @@
],
"parameters": [
{
+ "name": "user-agent",
+ "in": "header",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
"name": "OCS-APIRequest",
"in": "header",
"description": "Required to be true for the API request to pass",
@@ -1603,7 +1610,8 @@
"description": "can be piped, top prio first, e.g.: \"commenters|share-recipients\"",
"schema": {
"type": "string",
- "nullable": true
+ "nullable": true,
+ "default": null
}
},
{
@@ -4003,6 +4011,7 @@
"type": "integer",
"format": "int64",
"nullable": true,
+ "default": null,
"description": "Timestamp of the last usage"
}
}
@@ -4197,11 +4206,13 @@
"webhookUri": {
"type": "string",
"nullable": true,
+ "default": null,
"description": "URI to be requested when the task finishes"
},
"webhookMethod": {
"type": "string",
"nullable": true,
+ "default": null,
"description": "Method used for the webhook request (HTTP:GET, HTTP:POST, HTTP:PUT, HTTP:DELETE or AppAPI:APP_ID:GET, AppAPI:APP_ID:POST...)"
}
}
@@ -4710,7 +4721,8 @@
"description": "An arbitrary identifier for the task",
"schema": {
"type": "string",
- "nullable": true
+ "nullable": true,
+ "default": null
}
},
{
@@ -4838,7 +4850,8 @@
"description": "An arbitrary identifier for the task",
"schema": {
"type": "string",
- "nullable": true
+ "nullable": true,
+ "default": null
}
},
{
@@ -6046,7 +6059,8 @@
"description": "An arbitrary identifier for the task",
"schema": {
"type": "string",
- "nullable": true
+ "nullable": true,
+ "default": null
}
},
{
@@ -6873,7 +6887,8 @@
"description": "An arbitrary identifier for the task",
"schema": {
"type": "string",
- "nullable": true
+ "nullable": true,
+ "default": null
}
},
{
@@ -7412,7 +7427,8 @@
"schema": {
"type": "integer",
"format": "int64",
- "nullable": true
+ "nullable": true,
+ "default": null
}
},
{
@@ -7422,7 +7438,8 @@
"schema": {
"type": "integer",
"format": "int64",
- "nullable": true
+ "nullable": true,
+ "default": null
}
},
{
@@ -7431,6 +7448,7 @@
"description": "Offset for searching",
"schema": {
"nullable": true,
+ "default": null,
"oneOf": [
{
"type": "integer",
@@ -8046,6 +8064,15 @@
"basic_auth": []
}
],
+ "parameters": [
+ {
+ "name": "user-agent",
+ "in": "header",
+ "schema": {
+ "type": "string"
+ }
+ }
+ ],
"responses": {
"200": {
"description": "Login flow init returned",
@@ -9480,6 +9507,7 @@
"output": {
"type": "object",
"nullable": true,
+ "default": null,
"description": "The resulting task output, files are represented by their IDs",
"additionalProperties": {
"type": "object"
@@ -9488,6 +9516,7 @@
"errorMessage": {
"type": "string",
"nullable": true,
+ "default": null,
"description": "An error message if the task failed"
}
}
diff --git a/core/openapi.json b/core/openapi.json
index 696b674d514..5f9178202eb 100644
--- a/core/openapi.json
+++ b/core/openapi.json
@@ -1173,6 +1173,13 @@
],
"parameters": [
{
+ "name": "user-agent",
+ "in": "header",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
"name": "OCS-APIRequest",
"in": "header",
"description": "Required to be true for the API request to pass",
@@ -1603,7 +1610,8 @@
"description": "can be piped, top prio first, e.g.: \"commenters|share-recipients\"",
"schema": {
"type": "string",
- "nullable": true
+ "nullable": true,
+ "default": null
}
},
{
@@ -4003,6 +4011,7 @@
"type": "integer",
"format": "int64",
"nullable": true,
+ "default": null,
"description": "Timestamp of the last usage"
}
}
@@ -4197,11 +4206,13 @@
"webhookUri": {
"type": "string",
"nullable": true,
+ "default": null,
"description": "URI to be requested when the task finishes"
},
"webhookMethod": {
"type": "string",
"nullable": true,
+ "default": null,
"description": "Method used for the webhook request (HTTP:GET, HTTP:POST, HTTP:PUT, HTTP:DELETE or AppAPI:APP_ID:GET, AppAPI:APP_ID:POST...)"
}
}
@@ -4710,7 +4721,8 @@
"description": "An arbitrary identifier for the task",
"schema": {
"type": "string",
- "nullable": true
+ "nullable": true,
+ "default": null
}
},
{
@@ -4838,7 +4850,8 @@
"description": "An arbitrary identifier for the task",
"schema": {
"type": "string",
- "nullable": true
+ "nullable": true,
+ "default": null
}
},
{
@@ -6046,7 +6059,8 @@
"description": "An arbitrary identifier for the task",
"schema": {
"type": "string",
- "nullable": true
+ "nullable": true,
+ "default": null
}
},
{
@@ -6873,7 +6887,8 @@
"description": "An arbitrary identifier for the task",
"schema": {
"type": "string",
- "nullable": true
+ "nullable": true,
+ "default": null
}
},
{
@@ -7412,7 +7427,8 @@
"schema": {
"type": "integer",
"format": "int64",
- "nullable": true
+ "nullable": true,
+ "default": null
}
},
{
@@ -7422,7 +7438,8 @@
"schema": {
"type": "integer",
"format": "int64",
- "nullable": true
+ "nullable": true,
+ "default": null
}
},
{
@@ -7431,6 +7448,7 @@
"description": "Offset for searching",
"schema": {
"nullable": true,
+ "default": null,
"oneOf": [
{
"type": "integer",
@@ -8046,6 +8064,15 @@
"basic_auth": []
}
],
+ "parameters": [
+ {
+ "name": "user-agent",
+ "in": "header",
+ "schema": {
+ "type": "string"
+ }
+ }
+ ],
"responses": {
"200": {
"description": "Login flow init returned",
diff --git a/core/register_command.php b/core/register_command.php
index 72a4b70f059..ed64983e762 100644
--- a/core/register_command.php
+++ b/core/register_command.php
@@ -27,6 +27,7 @@ use OC\Core\Command\Config\App\GetConfig;
use OC\Core\Command\Config\App\SetConfig;
use OC\Core\Command\Config\Import;
use OC\Core\Command\Config\ListConfigs;
+use OC\Core\Command\Config\Preset;
use OC\Core\Command\Db\AddMissingColumns;
use OC\Core\Command\Db\AddMissingIndices;
use OC\Core\Command\Db\AddMissingPrimaryKeys;
@@ -68,9 +69,15 @@ use OC\Core\Command\Maintenance\Repair;
use OC\Core\Command\Maintenance\RepairShareOwnership;
use OC\Core\Command\Maintenance\UpdateHtaccess;
use OC\Core\Command\Maintenance\UpdateTheme;
+use OC\Core\Command\Memcache\DistributedClear;
+use OC\Core\Command\Memcache\DistributedDelete;
+use OC\Core\Command\Memcache\DistributedGet;
+use OC\Core\Command\Memcache\DistributedSet;
use OC\Core\Command\Memcache\RedisCommand;
use OC\Core\Command\Preview\Generate;
use OC\Core\Command\Preview\ResetRenderedTexts;
+use OC\Core\Command\Router\ListRoutes;
+use OC\Core\Command\Router\MatchRoute;
use OC\Core\Command\Security\BruteforceAttempts;
use OC\Core\Command\Security\BruteforceResetAttempts;
use OC\Core\Command\Security\ExportCertificates;
@@ -92,6 +99,7 @@ use OC\Core\Command\User\ClearGeneratedAvatarCacheCommand;
use OC\Core\Command\User\Info;
use OC\Core\Command\User\Keys\Verify;
use OC\Core\Command\User\LastSeen;
+use OC\Core\Command\User\Profile;
use OC\Core\Command\User\Report;
use OC\Core\Command\User\ResetPassword;
use OC\Core\Command\User\Setting;
@@ -109,6 +117,8 @@ $application->add(Server::get(SignApp::class));
$application->add(Server::get(SignCore::class));
$application->add(Server::get(CheckApp::class));
$application->add(Server::get(CheckCore::class));
+$application->add(Server::get(ListRoutes::class));
+$application->add(Server::get(MatchRoute::class));
$config = Server::get(IConfig::class);
@@ -140,6 +150,7 @@ if ($config->getSystemValueBool('installed', false)) {
$application->add(Server::get(SetConfig::class));
$application->add(Server::get(Import::class));
$application->add(Server::get(ListConfigs::class));
+ $application->add(Server::get(Preset::class));
$application->add(Server::get(Command\Config\System\DeleteConfig::class));
$application->add(Server::get(Command\Config\System\GetConfig::class));
$application->add(Server::get(Command\Config\System\SetConfig::class));
@@ -206,6 +217,7 @@ if ($config->getSystemValueBool('installed', false)) {
$application->add(Server::get(Report::class));
$application->add(Server::get(ResetPassword::class));
$application->add(Server::get(Setting::class));
+ $application->add(Server::get(Profile::class));
$application->add(Server::get(Command\User\ListCommand::class));
$application->add(Server::get(ClearGeneratedAvatarCacheCommand::class));
$application->add(Server::get(Info::class));
@@ -243,6 +255,10 @@ if ($config->getSystemValueBool('installed', false)) {
$application->add(Server::get(Statistics::class));
$application->add(Server::get(RedisCommand::class));
+ $application->add(Server::get(DistributedClear::class));
+ $application->add(Server::get(DistributedDelete::class));
+ $application->add(Server::get(DistributedGet::class));
+ $application->add(Server::get(DistributedSet::class));
} else {
$application->add(Server::get(Command\Maintenance\Install::class));
}
diff --git a/core/src/OC/dialogs.js b/core/src/OC/dialogs.js
index c10f676701d..5c6934e67a2 100644
--- a/core/src/OC/dialogs.js
+++ b/core/src/OC/dialogs.js
@@ -9,7 +9,7 @@ import _ from 'underscore'
import $ from 'jquery'
import IconMove from '@mdi/svg/svg/folder-move.svg?raw'
-import IconCopy from '@mdi/svg/svg/folder-multiple.svg?raw'
+import IconCopy from '@mdi/svg/svg/folder-multiple-outline.svg?raw'
import OC from './index.js'
import { DialogBuilder, FilePickerType, getFilePickerBuilder, spawnDialog } from '@nextcloud/dialogs'
@@ -278,13 +278,13 @@ const Dialogs = {
} else {
builder.setButtonFactory((nodes, path) => {
const buttons = []
- const node = nodes?.[0]?.attributes?.displayName || nodes?.[0]?.basename
- const target = node || basename(path)
+ const [node] = nodes
+ const target = node?.displayname || node?.basename || basename(path)
if (type === FilePickerType.Choose) {
buttons.push({
callback: legacyCallback(callback, FilePickerType.Choose),
- label: node && !this.multiSelect ? t('core', 'Choose {file}', { file: node }) : t('core', 'Choose'),
+ label: node && !this.multiSelect ? t('core', 'Choose {file}', { file: target }) : t('core', 'Choose'),
type: 'primary',
})
}
diff --git a/core/src/OC/eventsource.js b/core/src/OC/eventsource.js
index bdafa364beb..090c351c057 100644
--- a/core/src/OC/eventsource.js
+++ b/core/src/OC/eventsource.js
@@ -7,7 +7,7 @@
/* eslint-disable */
import $ from 'jquery'
-import { getToken } from './requesttoken.js'
+import { getRequestToken } from './requesttoken.ts'
/**
* Create a new event source
@@ -28,7 +28,7 @@ const OCEventSource = function(src, data) {
dataStr += name + '=' + encodeURIComponent(data[name]) + '&'
}
}
- dataStr += 'requesttoken=' + encodeURIComponent(getToken())
+ dataStr += 'requesttoken=' + encodeURIComponent(getRequestToken())
if (!this.useFallBack && typeof EventSource !== 'undefined') {
joinChar = '&'
if (src.indexOf('?') === -1) {
diff --git a/core/src/OC/index.js b/core/src/OC/index.js
index eff3289308a..5afc941b396 100644
--- a/core/src/OC/index.js
+++ b/core/src/OC/index.js
@@ -49,9 +49,7 @@ import {
getPort,
getProtocol,
} from './host.js'
-import {
- getToken as getRequestToken,
-} from './requesttoken.js'
+import { getRequestToken } from './requesttoken.ts'
import {
hideMenus,
registerMenu,
diff --git a/core/src/OC/requesttoken.js b/core/src/OC/requesttoken.js
deleted file mode 100644
index ed89af59c17..00000000000
--- a/core/src/OC/requesttoken.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
- * SPDX-License-Identifier: AGPL-3.0-or-later
- */
-
-import { emit } from '@nextcloud/event-bus'
-
-/**
- * @private
- * @param {Document} global the document to read the initial value from
- * @param {Function} emit the function to invoke for every new token
- * @return {object}
- */
-export const manageToken = (global, emit) => {
- let token = global.getElementsByTagName('head')[0].getAttribute('data-requesttoken')
-
- return {
- getToken: () => token,
- setToken: newToken => {
- token = newToken
-
- emit('csrf-token-update', {
- token,
- })
- },
- }
-}
-
-const manageFromDocument = manageToken(document, emit)
-
-/**
- * @return {string}
- */
-export const getToken = manageFromDocument.getToken
-
-/**
- * @param {string} newToken new token
- */
-export const setToken = manageFromDocument.setToken
diff --git a/core/src/OC/requesttoken.ts b/core/src/OC/requesttoken.ts
new file mode 100644
index 00000000000..8ecf0b3de7e
--- /dev/null
+++ b/core/src/OC/requesttoken.ts
@@ -0,0 +1,49 @@
+/**
+ * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+import { emit } from '@nextcloud/event-bus'
+import { generateUrl } from '@nextcloud/router'
+
+/**
+ * Get the current CSRF token.
+ */
+export function getRequestToken(): string {
+ return document.head.dataset.requesttoken!
+}
+
+/**
+ * Set a new CSRF token (e.g. because of session refresh).
+ * This also emits an event bus event for the updated token.
+ *
+ * @param token - The new token
+ * @fires Error - If the passed token is not a potential valid token
+ */
+export function setRequestToken(token: string): void {
+ if (!token || typeof token !== 'string') {
+ throw new Error('Invalid CSRF token given', { cause: { token } })
+ }
+
+ document.head.dataset.requesttoken = token
+ emit('csrf-token-update', { token })
+}
+
+/**
+ * Fetch the request token from the API.
+ * This does also set it on the current context, see `setRequestToken`.
+ *
+ * @fires Error - If the request failed
+ */
+export async function fetchRequestToken(): Promise<string> {
+ const url = generateUrl('/csrftoken')
+
+ const response = await fetch(url)
+ if (!response.ok) {
+ throw new Error('Could not fetch CSRF token from API', { cause: response })
+ }
+
+ const { token } = await response.json()
+ setRequestToken(token)
+ return token
+}
diff --git a/core/src/components/AccountMenu/AccountMenuEntry.vue b/core/src/components/AccountMenu/AccountMenuEntry.vue
index 47db84a7d33..d983226d273 100644
--- a/core/src/components/AccountMenu/AccountMenuEntry.vue
+++ b/core/src/components/AccountMenu/AccountMenuEntry.vue
@@ -11,28 +11,30 @@
compact
:href="href"
:name="name"
- target="_self">
+ target="_self"
+ @click="onClick">
<template #icon>
- <img class="account-menu-entry__icon"
+ <NcLoadingIcon v-if="loading" :size="20" class="account-menu-entry__loading" />
+ <slot v-else-if="$scopedSlots.icon" name="icon" />
+ <img v-else
+ class="account-menu-entry__icon"
:class="{ 'account-menu-entry__icon--active': active }"
:src="iconSource"
alt="">
</template>
- <template v-if="loading" #indicator>
- <NcLoadingIcon />
- </template>
</NcListItem>
</template>
-<script>
+<script lang="ts">
import { loadState } from '@nextcloud/initial-state'
+import { defineComponent } from 'vue'
import NcListItem from '@nextcloud/vue/components/NcListItem'
import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
const versionHash = loadState('core', 'versionHash', '')
-export default {
+export default defineComponent({
name: 'AccountMenuEntry',
components: {
@@ -55,11 +57,11 @@ export default {
},
active: {
type: Boolean,
- required: true,
+ default: false,
},
icon: {
type: String,
- required: true,
+ default: '',
},
},
@@ -76,11 +78,17 @@ export default {
},
methods: {
- handleClick() {
- this.loading = true
+ onClick(e: MouseEvent) {
+ this.$emit('click', e)
+
+ // Allow to not show the loading indicator
+ // in case the click event was already handled
+ if (!e.defaultPrevented) {
+ this.loading = true
+ }
},
},
-}
+})
</script>
<style lang="scss" scoped>
@@ -96,6 +104,12 @@ export default {
}
}
+ &__loading {
+ height: 20px;
+ width: 20px;
+ margin: calc((var(--default-clickable-area) - 20px) / 2); // 20px icon size
+ }
+
:deep(.list-item-content__main) {
width: fit-content;
}
diff --git a/core/src/components/AppMenuIcon.vue b/core/src/components/AppMenuIcon.vue
index f2cee75e644..089a2016e58 100644
--- a/core/src/components/AppMenuIcon.vue
+++ b/core/src/components/AppMenuIcon.vue
@@ -18,7 +18,7 @@ import type { INavigationEntry } from '../types/navigation'
import { n } from '@nextcloud/l10n'
import { computed } from 'vue'
-import IconDot from 'vue-material-design-icons/Circle.vue'
+import IconDot from 'vue-material-design-icons/CircleOutline.vue'
const props = defineProps<{
app: INavigationEntry
diff --git a/core/src/components/PublicPageMenu/PublicPageMenuEntry.vue b/core/src/components/PublicPageMenu/PublicPageMenuEntry.vue
index 4a8640f38a8..413806c7089 100644
--- a/core/src/components/PublicPageMenu/PublicPageMenuEntry.vue
+++ b/core/src/components/PublicPageMenu/PublicPageMenuEntry.vue
@@ -11,22 +11,24 @@
role="presentation"
@click="$emit('click')">
<template #icon>
- <div role="presentation" :class="['icon', icon, 'public-page-menu-entry__icon']" />
+ <slot v-if="$scopedSlots.icon" name="icon" />
+ <div v-else role="presentation" :class="['icon', icon, 'public-page-menu-entry__icon']" />
</template>
</NcListItem>
</template>
<script setup lang="ts">
-import NcListItem from '@nextcloud/vue/components/NcListItem'
import { onMounted } from 'vue'
+import NcListItem from '@nextcloud/vue/components/NcListItem'
+
const props = defineProps<{
/** Only emit click event but do not open href */
clickOnly?: boolean
// menu entry props
id: string
label: string
- icon: string
+ icon?: string
href: string
details?: string
}>()
diff --git a/core/src/components/UnifiedSearch/UnifiedSearchLocalSearchBar.vue b/core/src/components/UnifiedSearch/UnifiedSearchLocalSearchBar.vue
index 1860c54e1ff..171eada8a06 100644
--- a/core/src/components/UnifiedSearch/UnifiedSearchLocalSearchBar.vue
+++ b/core/src/components/UnifiedSearch/UnifiedSearchLocalSearchBar.vue
@@ -32,7 +32,7 @@
{{ t('core', 'Search everywhere') }}
</template>
<template #icon>
- <NcIconSvgWrapper :path="mdiCloudSearch" />
+ <NcIconSvgWrapper :path="mdiCloudSearchOutline" />
</template>
</NcButton>
</div>
@@ -41,7 +41,7 @@
<script lang="ts" setup>
import type { ComponentPublicInstance } from 'vue'
-import { mdiCloudSearch, mdiClose } from '@mdi/js'
+import { mdiCloudSearchOutline, mdiClose } from '@mdi/js'
import { translate as t } from '@nextcloud/l10n'
import { useIsMobile } from '@nextcloud/vue/composables/useIsMobile'
import { useElementSize } from '@vueuse/core'
diff --git a/core/src/components/UnifiedSearch/UnifiedSearchModal.vue b/core/src/components/UnifiedSearch/UnifiedSearchModal.vue
index 1edfbd45746..002606f058b 100644
--- a/core/src/components/UnifiedSearch/UnifiedSearchModal.vue
+++ b/core/src/components/UnifiedSearch/UnifiedSearchModal.vue
@@ -159,8 +159,8 @@ import debounce from 'debounce'
import { unifiedSearchLogger } from '../../logger'
import IconArrowRight from 'vue-material-design-icons/ArrowRight.vue'
-import IconAccountGroup from 'vue-material-design-icons/AccountGroup.vue'
-import IconCalendarRange from 'vue-material-design-icons/CalendarRange.vue'
+import IconAccountGroup from 'vue-material-design-icons/AccountGroupOutline.vue'
+import IconCalendarRange from 'vue-material-design-icons/CalendarRangeOutline.vue'
import IconDotsHorizontal from 'vue-material-design-icons/DotsHorizontal.vue'
import IconFilter from 'vue-material-design-icons/Filter.vue'
import IconListBox from 'vue-material-design-icons/ListBox.vue'
@@ -329,7 +329,13 @@ export default defineComponent({
query: {
immediate: true,
handler() {
- this.searchQuery = this.query.trim()
+ this.searchQuery = this.query
+ },
+ },
+
+ searchQuery: {
+ handler() {
+ this.$emit('update:query', this.searchQuery)
},
},
},
diff --git a/core/src/components/login/PasswordLessLoginForm.vue b/core/src/components/login/PasswordLessLoginForm.vue
index bbca2ebf31d..bc4d25bf70f 100644
--- a/core/src/components/login/PasswordLessLoginForm.vue
+++ b/core/src/components/login/PasswordLessLoginForm.vue
@@ -57,7 +57,7 @@ import {
import NcEmptyContent from '@nextcloud/vue/components/NcEmptyContent'
import NcTextField from '@nextcloud/vue/components/NcTextField'
-import InformationIcon from 'vue-material-design-icons/Information.vue'
+import InformationIcon from 'vue-material-design-icons/InformationOutline.vue'
import LoginButton from './LoginButton.vue'
import LockOpenIcon from 'vue-material-design-icons/LockOpen.vue'
import logger from '../../logger'
diff --git a/core/src/components/setup/RecommendedApps.vue b/core/src/components/setup/RecommendedApps.vue
index b31e4b54ca4..f2120c28402 100644
--- a/core/src/components/setup/RecommendedApps.vue
+++ b/core/src/components/setup/RecommendedApps.vue
@@ -38,17 +38,16 @@
<div class="dialog-row">
<NcButton v-if="showInstallButton && !installingApps"
- type="tertiary"
- role="link"
+ data-cy-setup-recommended-apps-skip
:href="defaultPageUrl"
- data-cy-setup-recommended-apps-skip>
+ variant="tertiary">
{{ t('core', 'Skip') }}
</NcButton>
<NcButton v-if="showInstallButton"
- type="primary"
+ data-cy-setup-recommended-apps-install
:disabled="installingApps || !isAnyAppSelected"
- data-cy-setup-recommended-apps-install>
+ variant="primary"
@click.stop.prevent="installApps">
{{ installingApps ? t('core', 'Installing apps …') : t('core', 'Install recommended apps') }}
</NcButton>
diff --git a/core/src/globals.js b/core/src/globals.js
index 8511b699563..4b07cc17c3e 100644
--- a/core/src/globals.js
+++ b/core/src/globals.js
@@ -29,7 +29,7 @@ import 'strengthify/strengthify.css'
import OC from './OC/index.js'
import OCP from './OCP/index.js'
import OCA from './OCA/index.js'
-import { getToken as getRequestToken } from './OC/requesttoken.js'
+import { getRequestToken } from './OC/requesttoken.ts'
const warnIfNotTesting = function() {
if (window.TESTING === undefined) {
diff --git a/core/src/init.js b/core/src/init.js
index 9e10a6941e1..1bcd8218702 100644
--- a/core/src/init.js
+++ b/core/src/init.js
@@ -8,8 +8,8 @@ import _ from 'underscore'
import $ from 'jquery'
import moment from 'moment'
-import { initSessionHeartBeat } from './session-heartbeat.js'
import OC from './OC/index.js'
+import { initSessionHeartBeat } from './session-heartbeat.ts'
import { setUp as setUpContactsMenu } from './components/ContactsMenu.js'
import { setUp as setUpMainMenu } from './components/MainMenu.js'
import { setUp as setUpUserMenu } from './components/UserMenu.js'
diff --git a/core/src/jquery/requesttoken.js b/core/src/jquery/requesttoken.js
index c2868e2728a..1e9e06515a6 100644
--- a/core/src/jquery/requesttoken.js
+++ b/core/src/jquery/requesttoken.js
@@ -5,11 +5,11 @@
import $ from 'jquery'
-import { getToken } from '../OC/requesttoken.js'
+import { getRequestToken } from '../OC/requesttoken.ts'
$(document).on('ajaxSend', function(elm, xhr, settings) {
if (settings.crossDomain === false) {
- xhr.setRequestHeader('requesttoken', getToken())
+ xhr.setRequestHeader('requesttoken', getRequestToken())
xhr.setRequestHeader('OCS-APIREQUEST', 'true')
}
})
diff --git a/core/src/public-page-user-menu.ts b/core/src/public-page-user-menu.ts
new file mode 100644
index 00000000000..25024271fb5
--- /dev/null
+++ b/core/src/public-page-user-menu.ts
@@ -0,0 +1,15 @@
+/**
+ * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+import { getCSPNonce } from '@nextcloud/auth'
+import Vue from 'vue'
+
+import PublicPageUserMenu from './views/PublicPageUserMenu.vue'
+
+__webpack_nonce__ = getCSPNonce()
+
+const View = Vue.extend(PublicPageUserMenu)
+const instance = new View()
+instance.$mount('#public-page-user-menu')
diff --git a/core/src/session-heartbeat.js b/core/src/session-heartbeat.js
deleted file mode 100644
index 3bd4d6b9ccd..00000000000
--- a/core/src/session-heartbeat.js
+++ /dev/null
@@ -1,168 +0,0 @@
-/**
- * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
- * SPDX-License-Identifier: AGPL-3.0-or-later
- */
-
-import $ from 'jquery'
-import { emit } from '@nextcloud/event-bus'
-import { loadState } from '@nextcloud/initial-state'
-import { getCurrentUser } from '@nextcloud/auth'
-import { generateUrl } from '@nextcloud/router'
-
-import OC from './OC/index.js'
-import { setToken as setRequestToken, getToken as getRequestToken } from './OC/requesttoken.js'
-
-let config = null
-/**
- * The legacy jsunit tests overwrite OC.config before calling initCore
- * therefore we need to wait with assigning the config fallback until initCore calls initSessionHeartBeat
- */
-const loadConfig = () => {
- try {
- config = loadState('core', 'config')
- } catch (e) {
- // This fallback is just for our legacy jsunit tests since we have no way to mock loadState calls
- config = OC.config
- }
-}
-
-/**
- * session heartbeat (defaults to enabled)
- *
- * @return {boolean}
- */
-const keepSessionAlive = () => {
- return config.session_keepalive === undefined
- || !!config.session_keepalive
-}
-
-/**
- * get interval in seconds
- *
- * @return {number}
- */
-const getInterval = () => {
- let interval = NaN
- if (config.session_lifetime) {
- interval = Math.floor(config.session_lifetime / 2)
- }
-
- // minimum one minute, max 24 hours, default 15 minutes
- return Math.min(
- 24 * 3600,
- Math.max(
- 60,
- isNaN(interval) ? 900 : interval,
- ),
- )
-}
-
-const getToken = async () => {
- const url = generateUrl('/csrftoken')
-
- // Not using Axios here as Axios is not stubbable with the sinon fake server
- // see https://stackoverflow.com/questions/41516044/sinon-mocha-test-with-async-ajax-calls-didnt-return-promises
- // see js/tests/specs/coreSpec.js for the tests
- const resp = await $.get(url)
-
- return resp.token
-}
-
-const poll = async () => {
- try {
- const token = await getToken()
- setRequestToken(token)
- } catch (e) {
- console.error('session heartbeat failed', e)
- }
-}
-
-const startPolling = () => {
- const interval = setInterval(poll, getInterval() * 1000)
-
- console.info('session heartbeat polling started')
-
- return interval
-}
-
-const registerAutoLogout = () => {
- if (!config.auto_logout || !getCurrentUser()) {
- return
- }
-
- let lastActive = Date.now()
- window.addEventListener('mousemove', e => {
- lastActive = Date.now()
- localStorage.setItem('lastActive', lastActive)
- })
-
- window.addEventListener('touchstart', e => {
- lastActive = Date.now()
- localStorage.setItem('lastActive', lastActive)
- })
-
- window.addEventListener('storage', e => {
- if (e.key !== 'lastActive') {
- return
- }
- lastActive = e.newValue
- })
-
- let intervalId = 0
- const logoutCheck = () => {
- const timeout = Date.now() - config.session_lifetime * 1000
- if (lastActive < timeout) {
- clearTimeout(intervalId)
- console.info('Inactivity timout reached, logging out')
- const logoutUrl = generateUrl('/logout') + '?requesttoken=' + encodeURIComponent(getRequestToken())
- window.location = logoutUrl
- }
- }
- intervalId = setInterval(logoutCheck, 1000)
-}
-
-/**
- * Calls the server periodically to ensure that session and CSRF
- * token doesn't expire
- */
-export const initSessionHeartBeat = () => {
- loadConfig()
-
- registerAutoLogout()
-
- if (!keepSessionAlive()) {
- console.info('session heartbeat disabled')
- return
- }
- let interval = startPolling()
-
- window.addEventListener('online', async () => {
- console.info('browser is online again, resuming heartbeat')
- interval = startPolling()
- try {
- await poll()
- console.info('session token successfully updated after resuming network')
-
- // Let apps know we're online and requests will have the new token
- emit('networkOnline', {
- success: true,
- })
- } catch (e) {
- console.error('could not update session token after resuming network', e)
-
- // Let apps know we're online but requests might have an outdated token
- emit('networkOnline', {
- success: false,
- })
- }
- })
- window.addEventListener('offline', () => {
- console.info('browser is offline, stopping heartbeat')
-
- // Let apps know we're offline
- emit('networkOffline', {})
-
- clearInterval(interval)
- console.info('session heartbeat polling stopped')
- })
-}
diff --git a/core/src/session-heartbeat.ts b/core/src/session-heartbeat.ts
new file mode 100644
index 00000000000..42a9bfccef7
--- /dev/null
+++ b/core/src/session-heartbeat.ts
@@ -0,0 +1,158 @@
+/**
+ * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+import { emit } from '@nextcloud/event-bus'
+import { loadState } from '@nextcloud/initial-state'
+import { getCurrentUser } from '@nextcloud/auth'
+import { generateUrl } from '@nextcloud/router'
+import {
+ fetchRequestToken,
+ getRequestToken,
+} from './OC/requesttoken.ts'
+import logger from './logger.js'
+
+interface OcJsConfig {
+ auto_logout: boolean
+ session_keepalive: boolean
+ session_lifetime: number
+}
+
+// This is always set, exception would be e.g. error pages where this is undefined
+const {
+ auto_logout: autoLogout,
+ session_keepalive: keepSessionAlive,
+ session_lifetime: sessionLifetime,
+} = loadState<Partial<OcJsConfig>>('core', 'config', {})
+
+/**
+ * Calls the server periodically to ensure that session and CSRF
+ * token doesn't expire
+ */
+export function initSessionHeartBeat() {
+ registerAutoLogout()
+
+ if (!keepSessionAlive) {
+ logger.info('Session heartbeat disabled')
+ return
+ }
+
+ let interval = startPolling()
+ window.addEventListener('online', async () => {
+ logger.info('Browser is online again, resuming heartbeat')
+
+ interval = startPolling()
+ try {
+ await poll()
+ logger.info('Session token successfully updated after resuming network')
+
+ // Let apps know we're online and requests will have the new token
+ emit('networkOnline', {
+ success: true,
+ })
+ } catch (error) {
+ logger.error('could not update session token after resuming network', { error })
+
+ // Let apps know we're online but requests might have an outdated token
+ emit('networkOnline', {
+ success: false,
+ })
+ }
+ })
+
+ window.addEventListener('offline', () => {
+ logger.info('Browser is offline, stopping heartbeat')
+
+ // Let apps know we're offline
+ emit('networkOffline', {})
+
+ clearInterval(interval)
+ logger.info('Session heartbeat polling stopped')
+ })
+}
+
+/**
+ * Get interval in seconds
+ */
+function getInterval(): number {
+ const interval = sessionLifetime
+ ? Math.floor(sessionLifetime / 2)
+ : 900
+
+ // minimum one minute, max 24 hours, default 15 minutes
+ return Math.min(
+ 24 * 3600,
+ Math.max(
+ 60,
+ interval,
+ ),
+ )
+}
+
+/**
+ * Poll the CSRF token for changes.
+ * This will also extend the current session if needed.
+ */
+async function poll() {
+ try {
+ await fetchRequestToken()
+ } catch (error) {
+ logger.error('session heartbeat failed', { error })
+ }
+}
+
+/**
+ * Start an window interval with the polling as the callback.
+ *
+ * @return The interval id
+ */
+function startPolling(): number {
+ const interval = window.setInterval(poll, getInterval() * 1000)
+
+ logger.info('session heartbeat polling started')
+ return interval
+}
+
+/**
+ * If enabled this will register event listeners to track if a user is active.
+ * If not the user will be automatically logged out after the configured IDLE time.
+ */
+function registerAutoLogout() {
+ if (!autoLogout || !getCurrentUser()) {
+ return
+ }
+
+ let lastActive = Date.now()
+ window.addEventListener('mousemove', () => {
+ lastActive = Date.now()
+ localStorage.setItem('lastActive', JSON.stringify(lastActive))
+ })
+
+ window.addEventListener('touchstart', () => {
+ lastActive = Date.now()
+ localStorage.setItem('lastActive', JSON.stringify(lastActive))
+ })
+
+ window.addEventListener('storage', (event) => {
+ if (event.key !== 'lastActive') {
+ return
+ }
+ if (event.newValue === null) {
+ return
+ }
+ lastActive = JSON.parse(event.newValue)
+ })
+
+ let intervalId = 0
+ const logoutCheck = () => {
+ const timeout = Date.now() - (sessionLifetime ?? 86400) * 1000
+ if (lastActive < timeout) {
+ clearTimeout(intervalId)
+ logger.info('Inactivity timout reached, logging out')
+ const logoutUrl = generateUrl('/logout') + '?requesttoken=' + encodeURIComponent(getRequestToken())
+ window.location.href = logoutUrl
+ }
+ }
+ intervalId = window.setInterval(logoutCheck, 1000)
+}
diff --git a/core/src/tests/OC/requesttoken.spec.js b/core/src/tests/OC/requesttoken.spec.js
deleted file mode 100644
index 36833742d14..00000000000
--- a/core/src/tests/OC/requesttoken.spec.js
+++ /dev/null
@@ -1,44 +0,0 @@
-/**
- * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors
- * SPDX-License-Identifier: AGPL-3.0-or-later
- */
-
-import { beforeEach, describe, expect, test, vi } from 'vitest'
-import { manageToken, setToken } from '../../OC/requesttoken.js'
-
-const eventbus = vi.hoisted(() => ({ emit: vi.fn() }))
-vi.mock('@nextcloud/event-bus', () => eventbus)
-
-describe('request token', () => {
-
- let emit
- let manager
- const token = 'abc123'
-
- beforeEach(() => {
- emit = vi.fn()
- const head = window.document.getElementsByTagName('head')[0]
- head.setAttribute('data-requesttoken', token)
-
- manager = manageToken(window.document, emit)
- })
-
- test('reads the token from the document', () => {
- expect(manager.getToken()).toBe('abc123')
- })
-
- test('remembers the updated token', () => {
- manager.setToken('bca321')
-
- expect(manager.getToken()).toBe('bca321')
- })
-
- describe('@nextcloud/auth integration', () => {
- test('fires off an event for @nextcloud/auth', () => {
- setToken('123')
-
- expect(eventbus.emit).toHaveBeenCalledWith('csrf-token-update', { token: '123' })
- })
- })
-
-})
diff --git a/core/src/tests/OC/requesttoken.spec.ts b/core/src/tests/OC/requesttoken.spec.ts
new file mode 100644
index 00000000000..8f92dbed153
--- /dev/null
+++ b/core/src/tests/OC/requesttoken.spec.ts
@@ -0,0 +1,147 @@
+/**
+ * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+import { setupServer } from 'msw/node'
+import { http, HttpResponse } from 'msw'
+import { beforeAll, beforeEach, describe, expect, it, vi } from 'vitest'
+import { fetchRequestToken, getRequestToken, setRequestToken } from '../../OC/requesttoken.ts'
+
+const eventbus = vi.hoisted(() => ({ emit: vi.fn() }))
+vi.mock('@nextcloud/event-bus', () => eventbus)
+
+const server = setupServer()
+
+describe('getRequestToken', () => {
+ it('can read the token from DOM', () => {
+ mockToken('tokenmock-123')
+ expect(getRequestToken()).toBe('tokenmock-123')
+ })
+
+ it('can handle missing token', () => {
+ mockToken(undefined)
+ expect(getRequestToken()).toBeUndefined()
+ })
+})
+
+describe('setRequestToken', () => {
+ beforeEach(() => {
+ vi.resetAllMocks()
+ })
+
+ it('does emit an event on change', () => {
+ setRequestToken('new-token')
+ expect(eventbus.emit).toBeCalledTimes(1)
+ expect(eventbus.emit).toBeCalledWith('csrf-token-update', { token: 'new-token' })
+ })
+
+ it('does set the new token to the DOM', () => {
+ setRequestToken('new-token')
+ expect(document.head.dataset.requesttoken).toBe('new-token')
+ })
+
+ it('does remember the new token', () => {
+ mockToken('old-token')
+ setRequestToken('new-token')
+ expect(getRequestToken()).toBe('new-token')
+ })
+
+ it('throws if the token is not a string', () => {
+ // @ts-expect-error mocking
+ expect(() => setRequestToken(123)).toThrowError('Invalid CSRF token given')
+ })
+
+ it('throws if the token is not valid', () => {
+ expect(() => setRequestToken('')).toThrowError('Invalid CSRF token given')
+ })
+
+ it('does not emit an event if the token is not valid', () => {
+ expect(() => setRequestToken('')).toThrowError('Invalid CSRF token given')
+ expect(eventbus.emit).not.toBeCalled()
+ })
+})
+
+describe('fetchRequestToken', () => {
+ const successfullCsrf = http.get('/index.php/csrftoken', () => {
+ return HttpResponse.json({ token: 'new-token' })
+ })
+ const forbiddenCsrf = http.get('/index.php/csrftoken', () => {
+ return HttpResponse.json([], { status: 403 })
+ })
+ const serverErrorCsrf = http.get('/index.php/csrftoken', () => {
+ return HttpResponse.json([], { status: 500 })
+ })
+ const networkErrorCsrf = http.get('/index.php/csrftoken', () => {
+ return new HttpResponse(null, { type: 'error' })
+ })
+
+ beforeAll(() => {
+ server.listen()
+ })
+
+ beforeEach(() => {
+ vi.resetAllMocks()
+ })
+
+ it('correctly parses response', async () => {
+ server.use(successfullCsrf)
+
+ mockToken('oldToken')
+ const token = await fetchRequestToken()
+ expect(token).toBe('new-token')
+ })
+
+ it('sets the token', async () => {
+ server.use(successfullCsrf)
+
+ mockToken('oldToken')
+ await fetchRequestToken()
+ expect(getRequestToken()).toBe('new-token')
+ })
+
+ it('does emit an event', async () => {
+ server.use(successfullCsrf)
+
+ await fetchRequestToken()
+ expect(eventbus.emit).toHaveBeenCalledOnce()
+ expect(eventbus.emit).toBeCalledWith('csrf-token-update', { token: 'new-token' })
+ })
+
+ it('handles 403 error due to invalid cookies', async () => {
+ server.use(forbiddenCsrf)
+
+ mockToken('oldToken')
+ await expect(() => fetchRequestToken()).rejects.toThrowError('Could not fetch CSRF token from API')
+ expect(getRequestToken()).toBe('oldToken')
+ })
+
+ it('handles server error', async () => {
+ server.use(serverErrorCsrf)
+
+ mockToken('oldToken')
+ await expect(() => fetchRequestToken()).rejects.toThrowError('Could not fetch CSRF token from API')
+ expect(getRequestToken()).toBe('oldToken')
+ })
+
+ it('handles network error', async () => {
+ server.use(networkErrorCsrf)
+
+ mockToken('oldToken')
+ await expect(() => fetchRequestToken()).rejects.toThrow()
+ expect(getRequestToken()).toBe('oldToken')
+ })
+})
+
+/**
+ * Mock the request token directly so we can test reading it.
+ *
+ * @param token - The CSRF token to mock
+ */
+function mockToken(token?: string) {
+ if (token === undefined) {
+ delete document.head.dataset.requesttoken
+ } else {
+ document.head.dataset.requesttoken = token
+ }
+}
diff --git a/core/src/tests/OC/session-heartbeat.spec.ts b/core/src/tests/OC/session-heartbeat.spec.ts
new file mode 100644
index 00000000000..61b82d92887
--- /dev/null
+++ b/core/src/tests/OC/session-heartbeat.spec.ts
@@ -0,0 +1,123 @@
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+import { beforeAll, beforeEach, describe, expect, it, vi } from 'vitest'
+
+const requestToken = vi.hoisted(() => ({
+ fetchRequestToken: vi.fn<() => Promise<string>>(),
+ setRequestToken: vi.fn<(token: string) => void>(),
+}))
+vi.mock('../../OC/requesttoken.ts', () => requestToken)
+
+const initialState = vi.hoisted(() => ({ loadState: vi.fn() }))
+vi.mock('@nextcloud/initial-state', () => initialState)
+
+describe('Session heartbeat', () => {
+ beforeAll(() => {
+ vi.useFakeTimers()
+ })
+
+ beforeEach(() => {
+ vi.clearAllTimers()
+ vi.resetModules()
+ vi.resetAllMocks()
+ })
+
+ it('sends heartbeat half the session lifetime when heartbeat enabled', async () => {
+ initialState.loadState.mockImplementationOnce(() => ({
+ session_keepalive: true,
+ session_lifetime: 300,
+ }))
+
+ const { initSessionHeartBeat } = await import('../../session-heartbeat.ts')
+ initSessionHeartBeat()
+
+ // initial state loaded
+ expect(initialState.loadState).toBeCalledWith('core', 'config', {})
+
+ // less than half, still nothing
+ await vi.advanceTimersByTimeAsync(100 * 1000)
+ expect(requestToken.fetchRequestToken).not.toBeCalled()
+
+ // reach past half, one call
+ await vi.advanceTimersByTimeAsync(60 * 1000)
+ expect(requestToken.fetchRequestToken).toBeCalledTimes(1)
+
+ // almost there to the next, still one
+ await vi.advanceTimersByTimeAsync(135 * 1000)
+ expect(requestToken.fetchRequestToken).toBeCalledTimes(1)
+
+ // past it, second call
+ await vi.advanceTimersByTimeAsync(5 * 1000)
+ expect(requestToken.fetchRequestToken).toBeCalledTimes(2)
+ })
+
+ it('does not send heartbeat when heartbeat disabled', async () => {
+ initialState.loadState.mockImplementationOnce(() => ({
+ session_keepalive: false,
+ session_lifetime: 300,
+ }))
+
+ const { initSessionHeartBeat } = await import('../../session-heartbeat.ts')
+ initSessionHeartBeat()
+
+ // initial state loaded
+ expect(initialState.loadState).toBeCalledWith('core', 'config', {})
+
+ // less than half, still nothing
+ await vi.advanceTimersByTimeAsync(100 * 1000)
+ expect(requestToken.fetchRequestToken).not.toBeCalled()
+
+ // more than one, still nothing
+ await vi.advanceTimersByTimeAsync(300 * 1000)
+ expect(requestToken.fetchRequestToken).not.toBeCalled()
+ })
+
+ it('limit heartbeat to at least one minute', async () => {
+ initialState.loadState.mockImplementationOnce(() => ({
+ session_keepalive: true,
+ session_lifetime: 55,
+ }))
+
+ const { initSessionHeartBeat } = await import('../../session-heartbeat.ts')
+ initSessionHeartBeat()
+
+ // initial state loaded
+ expect(initialState.loadState).toBeCalledWith('core', 'config', {})
+
+ // 30 / 55 seconds
+ await vi.advanceTimersByTimeAsync(30 * 1000)
+ expect(requestToken.fetchRequestToken).not.toBeCalled()
+
+ // 59 / 55 seconds should not be called except it does not limit
+ await vi.advanceTimersByTimeAsync(29 * 1000)
+ expect(requestToken.fetchRequestToken).not.toBeCalled()
+
+ // now one minute has passed
+ await vi.advanceTimersByTimeAsync(1000)
+ expect(requestToken.fetchRequestToken).toHaveBeenCalledOnce()
+ })
+
+ it('limit heartbeat to at least one minute', async () => {
+ initialState.loadState.mockImplementationOnce(() => ({
+ session_keepalive: true,
+ session_lifetime: 50 * 60 * 60,
+ }))
+
+ const { initSessionHeartBeat } = await import('../../session-heartbeat.ts')
+ initSessionHeartBeat()
+
+ // initial state loaded
+ expect(initialState.loadState).toBeCalledWith('core', 'config', {})
+
+ // 23 hours
+ await vi.advanceTimersByTimeAsync(23 * 60 * 60 * 1000)
+ expect(requestToken.fetchRequestToken).not.toBeCalled()
+
+ // one day - it should be called now
+ await vi.advanceTimersByTimeAsync(60 * 60 * 1000)
+ expect(requestToken.fetchRequestToken).toHaveBeenCalledOnce()
+ })
+})
diff --git a/core/src/twofactor-request-token.ts b/core/src/twofactor-request-token.ts
new file mode 100644
index 00000000000..868ceec01e9
--- /dev/null
+++ b/core/src/twofactor-request-token.ts
@@ -0,0 +1,25 @@
+/**
+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+import { onRequestTokenUpdate } from '@nextcloud/auth'
+import { getBaseUrl } from '@nextcloud/router'
+
+document.addEventListener('DOMContentLoaded', () => {
+ onRequestTokenUpdate((token) => {
+ const cancelLink = window.document.getElementById('cancel-login')
+ if (!cancelLink) {
+ return
+ }
+
+ const href = cancelLink.getAttribute('href')
+ if (!href) {
+ return
+ }
+
+ const parsedHref = new URL(href, getBaseUrl())
+ parsedHref.searchParams.set('requesttoken', token)
+ cancelLink.setAttribute('href', parsedHref.pathname + parsedHref.search)
+ })
+})
diff --git a/core/src/views/AccountMenu.vue b/core/src/views/AccountMenu.vue
index d1b4694ebc1..cac02129bac 100644
--- a/core/src/views/AccountMenu.vue
+++ b/core/src/views/AccountMenu.vue
@@ -211,7 +211,7 @@ export default defineComponent({
}
}
- // Ensure we do not wast space, as the header menu sets a default width of 350px
+ // Ensure we do not waste space, as the header menu sets a default width of 350px
:deep(.header-menu__content) {
width: fit-content !important;
}
diff --git a/core/src/views/ContactsMenu.vue b/core/src/views/ContactsMenu.vue
index 292e2bbcd29..9cf18b40ac7 100644
--- a/core/src/views/ContactsMenu.vue
+++ b/core/src/views/ContactsMenu.vue
@@ -62,17 +62,18 @@
</template>
<script>
+import { generateUrl } from '@nextcloud/router'
+import { getCurrentUser } from '@nextcloud/auth'
+import { t } from '@nextcloud/l10n'
import axios from '@nextcloud/axios'
-import Contacts from 'vue-material-design-icons/Contacts.vue'
import debounce from 'debounce'
-import { getCurrentUser } from '@nextcloud/auth'
-import { generateUrl } from '@nextcloud/router'
+
+import Contacts from 'vue-material-design-icons/ContactsOutline.vue'
import Magnify from 'vue-material-design-icons/Magnify.vue'
import NcButton from '@nextcloud/vue/components/NcButton'
import NcEmptyContent from '@nextcloud/vue/components/NcEmptyContent'
import NcHeaderMenu from '@nextcloud/vue/components/NcHeaderMenu'
import NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'
-import { translate as t } from '@nextcloud/l10n'
import Contact from '../components/ContactsMenu/Contact.vue'
import logger from '../logger.js'
diff --git a/core/src/views/Login.vue b/core/src/views/Login.vue
index 9236d1a9d09..a6fe8442779 100644
--- a/core/src/views/Login.vue
+++ b/core/src/views/Login.vue
@@ -95,6 +95,8 @@
<script>
import { loadState } from '@nextcloud/initial-state'
+import { generateUrl } from '@nextcloud/router'
+
import queryString from 'query-string'
import LoginForm from '../components/login/LoginForm.vue'
@@ -152,8 +154,7 @@ export default {
methods: {
passwordResetFinished() {
- this.resetPasswordTarget = ''
- this.directLogin = true
+ window.location.href = generateUrl('login')
},
},
}
diff --git a/core/src/views/PublicPageUserMenu.vue b/core/src/views/PublicPageUserMenu.vue
new file mode 100644
index 00000000000..7bd6521e7aa
--- /dev/null
+++ b/core/src/views/PublicPageUserMenu.vue
@@ -0,0 +1,138 @@
+<!--
+ - SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
+ - SPDX-License-Identifier: AGPL-3.0-or-later
+ -->
+<template>
+ <NcHeaderMenu id="public-page-user-menu"
+ class="public-page-user-menu"
+ is-nav
+ :aria-label="t('core', 'User menu')"
+ :description="avatarDescription">
+ <template #trigger>
+ <NcAvatar class="public-page-user-menu__avatar"
+ disable-menu
+ disable-tooltip
+ is-guest
+ :user="displayName || '?'" />
+ </template>
+
+ <!-- Privacy notice -->
+ <NcNoteCard class="public-page-user-menu__list-note"
+ :text="privacyNotice"
+ type="info" />
+
+ <ul class="public-page-user-menu__list">
+ <!-- Nickname dialog -->
+ <AccountMenuEntry id="set-nickname"
+ :name="!displayName ? t('core', 'Set public name') : t('core', 'Change public name')"
+ href="#"
+ @click.prevent.stop="setNickname">
+ <template #icon>
+ <IconAccount />
+ </template>
+ </AccountMenuEntry>
+ </ul>
+ </NcHeaderMenu>
+</template>
+
+<script lang="ts">
+import type { NextcloudUser } from '@nextcloud/auth'
+
+import '@nextcloud/dialogs/style.css'
+import { defineComponent } from 'vue'
+import { getGuestUser } from '@nextcloud/auth'
+import { showGuestUserPrompt } from '@nextcloud/dialogs'
+import { subscribe } from '@nextcloud/event-bus'
+import { t } from '@nextcloud/l10n'
+
+import NcAvatar from '@nextcloud/vue/components/NcAvatar'
+import NcHeaderMenu from '@nextcloud/vue/components/NcHeaderMenu'
+import NcNoteCard from '@nextcloud/vue/components/NcNoteCard'
+import IconAccount from 'vue-material-design-icons/AccountOutline.vue'
+
+import AccountMenuEntry from '../components/AccountMenu/AccountMenuEntry.vue'
+
+export default defineComponent({
+ name: 'PublicPageUserMenu',
+ components: {
+ AccountMenuEntry,
+ IconAccount,
+ NcAvatar,
+ NcHeaderMenu,
+ NcNoteCard,
+ },
+
+ setup() {
+ return {
+ t,
+ }
+ },
+
+ data() {
+ return {
+ displayName: getGuestUser().displayName,
+ }
+ },
+
+ computed: {
+ avatarDescription(): string {
+ return t('core', 'User menu')
+ },
+
+ privacyNotice(): string {
+ return this.displayName
+ ? t('core', 'You will be identified as {user} by the account owner.', { user: this.displayName })
+ : t('core', 'You are currently not identified.')
+ },
+ },
+
+ mounted() {
+ subscribe('user:info:changed', (user: NextcloudUser) => {
+ this.displayName = user.displayName || ''
+ })
+ },
+
+ methods: {
+ setNickname() {
+ showGuestUserPrompt({
+ nickname: this.displayName,
+ cancellable: true,
+ })
+ },
+ },
+})
+</script>
+
+<style scoped lang="scss">
+.public-page-user-menu {
+ &, * {
+ box-sizing: border-box;
+ }
+
+ // Ensure we do not waste space, as the header menu sets a default width of 350px
+ :deep(.header-menu__content) {
+ width: fit-content !important;
+ }
+
+ &__list-note {
+ padding-block: 5px !important;
+ padding-inline: 5px !important;
+ max-width: 300px;
+ margin: 5px !important;
+ margin-bottom: 0 !important;
+ }
+
+ &__list {
+ display: inline-flex;
+ flex-direction: column;
+ padding-block: var(--default-grid-baseline) 0;
+ width: 100%;
+
+ > :deep(li) {
+ box-sizing: border-box;
+ // basically "fit-content"
+ flex: 0 1;
+ }
+ }
+}
+</style>
diff --git a/core/templates/403.php b/core/templates/403.php
index 17866e670af..dc34c8d854f 100644
--- a/core/templates/403.php
+++ b/core/templates/403.php
@@ -14,9 +14,17 @@ if (!isset($_)) {//standalone page is not supported anymore - redirect to /
}
// @codeCoverageIgnoreEnd
?>
-<div class="guest-box">
+<div class="body-login-container update">
+ <div class="icon-big icon-password"></div>
<h2><?php p($l->t('Access forbidden')); ?></h2>
- <p class='hint'><?php if (isset($_['message'])) {
- p($_['message']);
- }?></p>
-</ul>
+ <p class="hint">
+ <?php if (isset($_['message'])): ?>
+ <?php p($_['message']); ?>
+ <?php else: ?>
+ <?php p($l->t('You are not allowed to access this page.')); ?>
+ <?php endif; ?>
+ </p>
+ <p><a class="button primary" href="<?php p(\OCP\Server::get(\OCP\IURLGenerator::class)->linkTo('', 'index.php')) ?>">
+ <?php p($l->t('Back to %s', [$theme->getName()])); ?>
+ </a></p>
+</div>
diff --git a/core/templates/confirmation.php b/core/templates/confirmation.php
index 7373f73fbc2..0a73699fd68 100644
--- a/core/templates/confirmation.php
+++ b/core/templates/confirmation.php
@@ -7,7 +7,7 @@
/** @var \OCP\IL10N $l */
/** @var \OCP\Defaults $theme */
?>
-<div class="update">
+<div class="guest-box">
<form method="POST">
<h2><?php p($_['title']) ?></h2>
<p><?php p($_['message']) ?></p>
diff --git a/core/templates/layout.public.php b/core/templates/layout.public.php
index 42f4ab73583..60460d60c83 100644
--- a/core/templates/layout.public.php
+++ b/core/templates/layout.public.php
@@ -77,6 +77,7 @@ p($theme->getTitle());
<div class="header-end">
<div id="public-page-menu"></div>
+ <div id="public-page-user-menu"></div>
</div>
</header>
diff --git a/core/templates/success.php b/core/templates/success.php
index 3d84daf3ef3..700a1611a67 100644
--- a/core/templates/success.php
+++ b/core/templates/success.php
@@ -8,7 +8,7 @@
/** @var \OCP\Defaults $theme */
?>
-<div class="update">
+<div class="guest-box">
<h2><?php p($_['title']) ?></h2>
<p><?php p($_['message']) ?></p>
<p><a class="button primary" href="<?php p(\OCP\Server::get(\OCP\IURLGenerator::class)->linkTo('', 'index.php')) ?>">
diff --git a/core/templates/twofactorselectchallenge.php b/core/templates/twofactorselectchallenge.php
index 8f31db3f154..e979cfd58ab 100644
--- a/core/templates/twofactorselectchallenge.php
+++ b/core/templates/twofactorselectchallenge.php
@@ -76,7 +76,7 @@ $noProviders = empty($_['providers']);
</a>
</p>
<?php endif; ?>
- <p><a class="two-factor-secondary" href="<?php print_unescaped($_['logout_url']); ?>">
+ <p><a id="cancel-login" class="two-factor-secondary" href="<?php print_unescaped($_['logout_url']); ?>">
<?php p($l->t('Cancel login')) ?>
</a></p>
</div>
diff --git a/core/templates/twofactorsetupchallenge.php b/core/templates/twofactorsetupchallenge.php
index 09a143f1100..c575ca21343 100644
--- a/core/templates/twofactorsetupchallenge.php
+++ b/core/templates/twofactorsetupchallenge.php
@@ -14,7 +14,7 @@ $template = $_['template'];
<div class="body-login-container update">
<h2 class="two-factor-header"><?php p($provider->getDisplayName()); ?></h2>
<?php print_unescaped($template); ?>
- <p><a class="two-factor-secondary" href="<?php print_unescaped($_['logout_url']); ?>">
+ <p><a id="cancel-login" class="two-factor-secondary" href="<?php print_unescaped($_['logout_url']); ?>">
<?php p($l->t('Cancel login')) ?>
</a></p>
</div>
diff --git a/core/templates/twofactorsetupselection.php b/core/templates/twofactorsetupselection.php
index 2eeaa49d6af..77139ab0e2a 100644
--- a/core/templates/twofactorsetupselection.php
+++ b/core/templates/twofactorsetupselection.php
@@ -35,7 +35,7 @@ declare(strict_types=1);
</li>
<?php endforeach; ?>
</ul>
- <p><a class="two-factor-secondary" href="<?php print_unescaped($_['logout_url']); ?>">
+ <p><a id="cancel-login" class="two-factor-secondary" href="<?php print_unescaped($_['logout_url']); ?>">
<?php p($l->t('Cancel login')) ?>
</a></p>
</div>
diff --git a/core/templates/twofactorshowchallenge.php b/core/templates/twofactorshowchallenge.php
index c0286c44c9c..6bc367d4025 100644
--- a/core/templates/twofactorshowchallenge.php
+++ b/core/templates/twofactorshowchallenge.php
@@ -38,7 +38,7 @@ $template = $_['template'];
</a>
</p>
<?php endif; ?>
- <p><a class="two-factor-secondary" href="<?php print_unescaped($_['logout_url']); ?>">
+ <p><a id="cancel-login" class="two-factor-secondary" href="<?php print_unescaped($_['logout_url']); ?>">
<?php p($l->t('Cancel login')) ?>
</a></p>
</div>