diff options
Diffstat (limited to 'apps')
179 files changed, 811 insertions, 687 deletions
diff --git a/apps/dav/appinfo/info.xml b/apps/dav/appinfo/info.xml index 2b3a9fcede8..a4ce51fd89c 100644 --- a/apps/dav/appinfo/info.xml +++ b/apps/dav/appinfo/info.xml @@ -57,6 +57,7 @@ <commands> <command>OCA\DAV\Command\ClearCalendarUnshares</command> + <command>OCA\DAV\Command\ClearContactsPhotoCache</command> <command>OCA\DAV\Command\CreateAddressBook</command> <command>OCA\DAV\Command\CreateCalendar</command> <command>OCA\DAV\Command\CreateSubscription</command> diff --git a/apps/dav/appinfo/v1/carddav.php b/apps/dav/appinfo/v1/carddav.php index 0220332297e..bcd66e47090 100644 --- a/apps/dav/appinfo/v1/carddav.php +++ b/apps/dav/appinfo/v1/carddav.php @@ -23,7 +23,6 @@ use OCA\DAV\Connector\Sabre\Principal; use OCP\Accounts\IAccountManager; use OCP\App\IAppManager; use OCP\EventDispatcher\IEventDispatcher; -use OCP\Files\AppData\IAppDataFactory; use OCP\IConfig; use OCP\IDBConnection; use OCP\IGroupManager; @@ -98,10 +97,7 @@ if ($debugging) { $server->addPlugin(new \Sabre\DAV\Sync\Plugin()); $server->addPlugin(new \Sabre\CardDAV\VCFExportPlugin()); -$server->addPlugin(new ImageExportPlugin(new PhotoCache( - Server::get(IAppDataFactory::class)->get('dav-photocache'), - Server::get(LoggerInterface::class) -))); +$server->addPlugin(new ImageExportPlugin(Server::get(PhotoCache::class))); $server->addPlugin(new ExceptionLoggerPlugin('carddav', Server::get(LoggerInterface::class))); $server->addPlugin(Server::get(CardDavRateLimitingPlugin::class)); $server->addPlugin(Server::get(CardDavValidatePlugin::class)); diff --git a/apps/dav/composer/composer/autoload_classmap.php b/apps/dav/composer/composer/autoload_classmap.php index fc753e79908..ad3f759b57d 100644 --- a/apps/dav/composer/composer/autoload_classmap.php +++ b/apps/dav/composer/composer/autoload_classmap.php @@ -156,6 +156,7 @@ return array( 'OCA\\DAV\\CardDAV\\Validation\\CardDavValidatePlugin' => $baseDir . '/../lib/CardDAV/Validation/CardDavValidatePlugin.php', 'OCA\\DAV\\CardDAV\\Xml\\Groups' => $baseDir . '/../lib/CardDAV/Xml/Groups.php', 'OCA\\DAV\\Command\\ClearCalendarUnshares' => $baseDir . '/../lib/Command/ClearCalendarUnshares.php', + 'OCA\\DAV\\Command\\ClearContactsPhotoCache' => $baseDir . '/../lib/Command/ClearContactsPhotoCache.php', 'OCA\\DAV\\Command\\CreateAddressBook' => $baseDir . '/../lib/Command/CreateAddressBook.php', 'OCA\\DAV\\Command\\CreateCalendar' => $baseDir . '/../lib/Command/CreateCalendar.php', 'OCA\\DAV\\Command\\CreateSubscription' => $baseDir . '/../lib/Command/CreateSubscription.php', diff --git a/apps/dav/composer/composer/autoload_static.php b/apps/dav/composer/composer/autoload_static.php index cd46530ecd4..d0a1f4871da 100644 --- a/apps/dav/composer/composer/autoload_static.php +++ b/apps/dav/composer/composer/autoload_static.php @@ -171,6 +171,7 @@ class ComposerStaticInitDAV 'OCA\\DAV\\CardDAV\\Validation\\CardDavValidatePlugin' => __DIR__ . '/..' . '/../lib/CardDAV/Validation/CardDavValidatePlugin.php', 'OCA\\DAV\\CardDAV\\Xml\\Groups' => __DIR__ . '/..' . '/../lib/CardDAV/Xml/Groups.php', 'OCA\\DAV\\Command\\ClearCalendarUnshares' => __DIR__ . '/..' . '/../lib/Command/ClearCalendarUnshares.php', + 'OCA\\DAV\\Command\\ClearContactsPhotoCache' => __DIR__ . '/..' . '/../lib/Command/ClearContactsPhotoCache.php', 'OCA\\DAV\\Command\\CreateAddressBook' => __DIR__ . '/..' . '/../lib/Command/CreateAddressBook.php', 'OCA\\DAV\\Command\\CreateCalendar' => __DIR__ . '/..' . '/../lib/Command/CreateCalendar.php', 'OCA\\DAV\\Command\\CreateSubscription' => __DIR__ . '/..' . '/../lib/Command/CreateSubscription.php', diff --git a/apps/dav/l10n/de.js b/apps/dav/l10n/de.js index 66e17898188..fc0617415f1 100644 --- a/apps/dav/l10n/de.js +++ b/apps/dav/l10n/de.js @@ -299,10 +299,10 @@ OC.L10N.register( "Calendar server" : "Kalender-Server", "Send invitations to attendees" : "Einladungen an die Teilnehmer senden", "Automatically generate a birthday calendar" : "Automatisch einen Kalender für Geburtstage erstellen", - "Birthday calendars will be generated by a background job." : "Kalender für Geburtstage werden von einem Hintergrund-Auftrag erstellt", + "Birthday calendars will be generated by a background job." : "Kalender für Geburtstage werden von einer Hintergrundaufgabe erstellt", "Hence they will not be available immediately after enabling but will show up after some time." : "Die Einträge werden nicht sofort angezeigt. Nach der Aktivierung wird es bis zur Anzeige ein wenig dauern.", "Send notifications for events" : "Sende Benachrichtigungen für Termine", - "Notifications are sent via background jobs, so these must occur often enough." : "Benachrichtigungen werden von Hintergrundjobs gesendet, so dass diese häufig genug ausgeführt werden.", + "Notifications are sent via background jobs, so these must occur often enough." : "Benachrichtigungen werden von Hintergrundaufgaben gesendet, so dass diese häufig genug ausgeführt werden.", "Send reminder notifications to calendar sharees as well" : "Erinnerungsbenachrichtigungen auch an die freigegebenen Kalender senden", "Reminders are always sent to organizers and attendees." : "Erinnerungen werden immer an Organisatoren und Teilnehmer gesendet.", "Enable notifications for events via push" : "Benachrichtigungen für Termine per Push aktivieren", diff --git a/apps/dav/l10n/de.json b/apps/dav/l10n/de.json index 94354959e6f..5d92b22c199 100644 --- a/apps/dav/l10n/de.json +++ b/apps/dav/l10n/de.json @@ -297,10 +297,10 @@ "Calendar server" : "Kalender-Server", "Send invitations to attendees" : "Einladungen an die Teilnehmer senden", "Automatically generate a birthday calendar" : "Automatisch einen Kalender für Geburtstage erstellen", - "Birthday calendars will be generated by a background job." : "Kalender für Geburtstage werden von einem Hintergrund-Auftrag erstellt", + "Birthday calendars will be generated by a background job." : "Kalender für Geburtstage werden von einer Hintergrundaufgabe erstellt", "Hence they will not be available immediately after enabling but will show up after some time." : "Die Einträge werden nicht sofort angezeigt. Nach der Aktivierung wird es bis zur Anzeige ein wenig dauern.", "Send notifications for events" : "Sende Benachrichtigungen für Termine", - "Notifications are sent via background jobs, so these must occur often enough." : "Benachrichtigungen werden von Hintergrundjobs gesendet, so dass diese häufig genug ausgeführt werden.", + "Notifications are sent via background jobs, so these must occur often enough." : "Benachrichtigungen werden von Hintergrundaufgaben gesendet, so dass diese häufig genug ausgeführt werden.", "Send reminder notifications to calendar sharees as well" : "Erinnerungsbenachrichtigungen auch an die freigegebenen Kalender senden", "Reminders are always sent to organizers and attendees." : "Erinnerungen werden immer an Organisatoren und Teilnehmer gesendet.", "Enable notifications for events via push" : "Benachrichtigungen für Termine per Push aktivieren", diff --git a/apps/dav/l10n/de_DE.js b/apps/dav/l10n/de_DE.js index 0a53ba564a7..41f9b53bfef 100644 --- a/apps/dav/l10n/de_DE.js +++ b/apps/dav/l10n/de_DE.js @@ -302,7 +302,7 @@ OC.L10N.register( "Birthday calendars will be generated by a background job." : "Kalender für Geburtstage werden von einem Hintergrund-Auftrag erstellt", "Hence they will not be available immediately after enabling but will show up after some time." : "Die Einträge werden nicht sofort angezeigt. Nach der Aktivierung wird es ein wenig dauern bis zur Anzeige.", "Send notifications for events" : "Sende Benachrichtigungen für Termine", - "Notifications are sent via background jobs, so these must occur often enough." : "Benachrichtigungen werden von Hintergrundjobs versendet, so dass diese häufig genug ausgeführt werden müssen.", + "Notifications are sent via background jobs, so these must occur often enough." : "Benachrichtigungen werden von Hintergrundaufgaben versendet, so dass diese häufig genug ausgeführt werden müssen.", "Send reminder notifications to calendar sharees as well" : "Erinnerungsbenachrichtigungen auch an die Kalenderfreigaben senden", "Reminders are always sent to organizers and attendees." : "Erinnerungen werden immer an Organisatoren und Teilnehmer gesendet.", "Enable notifications for events via push" : "Benachrichtigungen für Termine per Push aktivieren", diff --git a/apps/dav/l10n/de_DE.json b/apps/dav/l10n/de_DE.json index 7bf998eec36..469cb129a32 100644 --- a/apps/dav/l10n/de_DE.json +++ b/apps/dav/l10n/de_DE.json @@ -300,7 +300,7 @@ "Birthday calendars will be generated by a background job." : "Kalender für Geburtstage werden von einem Hintergrund-Auftrag erstellt", "Hence they will not be available immediately after enabling but will show up after some time." : "Die Einträge werden nicht sofort angezeigt. Nach der Aktivierung wird es ein wenig dauern bis zur Anzeige.", "Send notifications for events" : "Sende Benachrichtigungen für Termine", - "Notifications are sent via background jobs, so these must occur often enough." : "Benachrichtigungen werden von Hintergrundjobs versendet, so dass diese häufig genug ausgeführt werden müssen.", + "Notifications are sent via background jobs, so these must occur often enough." : "Benachrichtigungen werden von Hintergrundaufgaben versendet, so dass diese häufig genug ausgeführt werden müssen.", "Send reminder notifications to calendar sharees as well" : "Erinnerungsbenachrichtigungen auch an die Kalenderfreigaben senden", "Reminders are always sent to organizers and attendees." : "Erinnerungen werden immer an Organisatoren und Teilnehmer gesendet.", "Enable notifications for events via push" : "Benachrichtigungen für Termine per Push aktivieren", diff --git a/apps/dav/l10n/et_EE.js b/apps/dav/l10n/et_EE.js index 2cf7703d686..17753ff854a 100644 --- a/apps/dav/l10n/et_EE.js +++ b/apps/dav/l10n/et_EE.js @@ -72,7 +72,15 @@ OC.L10N.register( "Description: %s" : "Kirjeldus: %s", "Where: %s" : "Kus: %s", "%1$s via %2$s" : "%1$s %2$s kaudu", - "Every Day between %1$s - %2$s until %3$s" : "Iga päev ajavahemikus %1$s-%2$s kuni %3$s", + "Could not generate when statement" : "Ei õnnstunud luua tingimuslikku „when“ lausendit", + "Every Day for the entire day" : "Iga päev kogu päeva jooksul", + "Every Day for the entire day until %1$s" : "Iga päev kogu päeva jooksul kuni %1$s", + "Every Day between %1$s - %2$s" : "Iga päev ajavahemikus %1$s - %2$s", + "Every Day between %1$s - %2$s until %3$s" : "Iga päev ajavahemikus %1$s - %2$s kuni %3$s", + "Every %1$d Days for the entire day" : "Iga %1$d. päev kogu päeva jooksul", + "Every %1$d Days for the entire day until %2$s" : "Iga %1$d. päev kogu päeva jooksul kuni %2$s", + "Every %1$d Days between %2$s - %3$s" : "Iga %1$d. päev kogu päeva jooksul ajavahemikus %2$s - %3$s", + "Every %1$d Days between %2$s - %3$s until %4$s" : "Iga %1$d. päev kogu päeva jooksul ajavahemikus %2$s - %3$s, kuni %4$s", "Cancelled: %1$s" : "Tühistatud: %1$s", "\"%1$s\" has been canceled" : "„%1$s“ on tühistatud", "Re: %1$s" : "Re: %1$s", diff --git a/apps/dav/l10n/et_EE.json b/apps/dav/l10n/et_EE.json index e4615d45ca2..ddc6756da75 100644 --- a/apps/dav/l10n/et_EE.json +++ b/apps/dav/l10n/et_EE.json @@ -70,7 +70,15 @@ "Description: %s" : "Kirjeldus: %s", "Where: %s" : "Kus: %s", "%1$s via %2$s" : "%1$s %2$s kaudu", - "Every Day between %1$s - %2$s until %3$s" : "Iga päev ajavahemikus %1$s-%2$s kuni %3$s", + "Could not generate when statement" : "Ei õnnstunud luua tingimuslikku „when“ lausendit", + "Every Day for the entire day" : "Iga päev kogu päeva jooksul", + "Every Day for the entire day until %1$s" : "Iga päev kogu päeva jooksul kuni %1$s", + "Every Day between %1$s - %2$s" : "Iga päev ajavahemikus %1$s - %2$s", + "Every Day between %1$s - %2$s until %3$s" : "Iga päev ajavahemikus %1$s - %2$s kuni %3$s", + "Every %1$d Days for the entire day" : "Iga %1$d. päev kogu päeva jooksul", + "Every %1$d Days for the entire day until %2$s" : "Iga %1$d. päev kogu päeva jooksul kuni %2$s", + "Every %1$d Days between %2$s - %3$s" : "Iga %1$d. päev kogu päeva jooksul ajavahemikus %2$s - %3$s", + "Every %1$d Days between %2$s - %3$s until %4$s" : "Iga %1$d. päev kogu päeva jooksul ajavahemikus %2$s - %3$s, kuni %4$s", "Cancelled: %1$s" : "Tühistatud: %1$s", "\"%1$s\" has been canceled" : "„%1$s“ on tühistatud", "Re: %1$s" : "Re: %1$s", diff --git a/apps/dav/lib/AppInfo/Application.php b/apps/dav/lib/AppInfo/Application.php index edf7dd1214f..9d5921a1e83 100644 --- a/apps/dav/lib/AppInfo/Application.php +++ b/apps/dav/lib/AppInfo/Application.php @@ -20,7 +20,6 @@ use OCA\DAV\CalDAV\Reminder\NotificationProviderManager; use OCA\DAV\CalDAV\Reminder\Notifier; use OCA\DAV\Capabilities; use OCA\DAV\CardDAV\ContactsManager; -use OCA\DAV\CardDAV\PhotoCache; use OCA\DAV\CardDAV\SyncService; use OCA\DAV\Events\AddressBookCreatedEvent; use OCA\DAV\Events\AddressBookDeletedEvent; @@ -82,7 +81,6 @@ use OCP\Config\BeforePreferenceSetEvent; use OCP\Contacts\IManager as IContactsManager; use OCP\DB\Events\AddMissingIndicesEvent; use OCP\Federation\Events\TrustedServerRemovedEvent; -use OCP\Files\AppData\IAppDataFactory; use OCP\IUserSession; use OCP\Server; use OCP\Settings\Events\DeclarativeSettingsGetValueEvent; @@ -112,12 +110,6 @@ class Application extends App implements IBootstrap { public function register(IRegistrationContext $context): void { $context->registerServiceAlias('CardDAVSyncService', SyncService::class); - $context->registerService(PhotoCache::class, function (ContainerInterface $c) { - return new PhotoCache( - $c->get(IAppDataFactory::class)->get('dav-photocache'), - $c->get(LoggerInterface::class) - ); - }); $context->registerService(AppCalendarPlugin::class, function (ContainerInterface $c) { return new AppCalendarPlugin( $c->get(ICalendarManager::class), diff --git a/apps/dav/lib/CardDAV/PhotoCache.php b/apps/dav/lib/CardDAV/PhotoCache.php index 2f1999b6b1c..29f1b0240ef 100644 --- a/apps/dav/lib/CardDAV/PhotoCache.php +++ b/apps/dav/lib/CardDAV/PhotoCache.php @@ -3,8 +3,10 @@ * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ + namespace OCA\DAV\CardDAV; +use OCP\Files\AppData\IAppDataFactory; use OCP\Files\IAppData; use OCP\Files\NotFoundException; use OCP\Files\NotPermittedException; @@ -19,6 +21,7 @@ use Sabre\VObject\Property\Binary; use Sabre\VObject\Reader; class PhotoCache { + private ?IAppData $photoCacheAppData = null; /** @var array */ public const ALLOWED_CONTENT_TYPES = [ @@ -30,12 +33,9 @@ class PhotoCache { 'image/avif' => 'avif', ]; - /** - * PhotoCache constructor. - */ public function __construct( - protected IAppData $appData, - protected LoggerInterface $logger, + private IAppDataFactory $appDataFactory, + private LoggerInterface $logger, ) { } @@ -142,13 +142,12 @@ class PhotoCache { private function getFolder(int $addressBookId, string $cardUri, bool $createIfNotExists = true): ISimpleFolder { $hash = md5($addressBookId . ' ' . $cardUri); try { - return $this->appData->getFolder($hash); + return $this->getPhotoCacheAppData()->getFolder($hash); } catch (NotFoundException $e) { if ($createIfNotExists) { - return $this->appData->newFolder($hash); - } else { - throw $e; + return $this->getPhotoCacheAppData()->newFolder($hash); } + throw $e; } } @@ -265,4 +264,11 @@ class PhotoCache { // that's OK, nothing to do } } + + private function getPhotoCacheAppData(): IAppData { + if ($this->photoCacheAppData === null) { + $this->photoCacheAppData = $this->appDataFactory->get('dav-photocache'); + } + return $this->photoCacheAppData; + } } diff --git a/apps/dav/lib/Command/ClearContactsPhotoCache.php b/apps/dav/lib/Command/ClearContactsPhotoCache.php new file mode 100644 index 00000000000..82e64c3145a --- /dev/null +++ b/apps/dav/lib/Command/ClearContactsPhotoCache.php @@ -0,0 +1,75 @@ +<?php + +declare(strict_types=1); + +/** + * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ + +namespace OCA\DAV\Command; + +use OCP\Files\AppData\IAppDataFactory; +use OCP\Files\NotPermittedException; +use Symfony\Component\Console\Attribute\AsCommand; +use Symfony\Component\Console\Command\Command; +use Symfony\Component\Console\Helper\ProgressBar; +use Symfony\Component\Console\Helper\QuestionHelper; +use Symfony\Component\Console\Input\InputInterface; +use Symfony\Component\Console\Output\OutputInterface; +use Symfony\Component\Console\Question\ConfirmationQuestion; + +#[AsCommand( + name: 'dav:clear-contacts-photo-cache', + description: 'Clear cached contact photos', + hidden: false, +)] +class ClearContactsPhotoCache extends Command { + + public function __construct( + private IAppDataFactory $appDataFactory, + ) { + parent::__construct(); + } + + protected function execute(InputInterface $input, OutputInterface $output): int { + $photoCacheAppData = $this->appDataFactory->get('dav-photocache'); + + $folders = $photoCacheAppData->getDirectoryListing(); + $countFolders = count($folders); + + if ($countFolders === 0) { + $output->writeln('No cached contact photos found.'); + return self::SUCCESS; + } + + $output->writeln('Found ' . count($folders) . ' cached contact photos.'); + + /** @var QuestionHelper $helper */ + $helper = $this->getHelper('question'); + $question = new ConfirmationQuestion('Please confirm to clear the contacts photo cache [y/n] ', true); + + if ($helper->ask($input, $output, $question) === false) { + $output->writeln('Clearing the contacts photo cache aborted.'); + return self::SUCCESS; + } + + $progressBar = new ProgressBar($output, $countFolders); + $progressBar->start(); + + foreach ($folders as $folder) { + try { + $folder->delete(); + } catch (NotPermittedException) { + } + $progressBar->advance(); + } + + $progressBar->finish(); + + $output->writeln(''); + $output->writeln('Contacts photo cache cleared.'); + + return self::SUCCESS; + } +} diff --git a/apps/dav/lib/Server.php b/apps/dav/lib/Server.php index f1595bab391..d1029afa262 100644 --- a/apps/dav/lib/Server.php +++ b/apps/dav/lib/Server.php @@ -72,7 +72,6 @@ use OCP\Comments\ICommentsManager; use OCP\Defaults; use OCP\Diagnostics\IEventLogger; use OCP\EventDispatcher\IEventDispatcher; -use OCP\Files\AppData\IAppDataFactory; use OCP\Files\IFilenameValidator; use OCP\Files\IRootFolder; use OCP\FilesMetadata\IFilesMetadataManager; @@ -216,10 +215,7 @@ class Server { $this->server->addPlugin(new VCFExportPlugin()); $this->server->addPlugin(new MultiGetExportPlugin()); $this->server->addPlugin(new HasPhotoPlugin()); - $this->server->addPlugin(new ImageExportPlugin(new PhotoCache( - \OCP\Server::get(IAppDataFactory::class)->get('dav-photocache'), - $logger) - )); + $this->server->addPlugin(new ImageExportPlugin(\OCP\Server::get(PhotoCache::class))); $this->server->addPlugin(\OCP\Server::get(CardDavRateLimitingPlugin::class)); $this->server->addPlugin(\OCP\Server::get(CardDavValidatePlugin::class)); diff --git a/apps/files/appinfo/routes.php b/apps/files/appinfo/routes.php index a67ec7cbc14..04afe578c47 100644 --- a/apps/files/appinfo/routes.php +++ b/apps/files/appinfo/routes.php @@ -137,6 +137,11 @@ return [ 'verb' => 'GET' ], [ + 'name' => 'Template#listTemplateFields', + 'url' => '/api/v1/templates/fields/{fileId}', + 'verb' => 'GET' + ], + [ 'name' => 'Template#create', 'url' => '/api/v1/templates/create', 'verb' => 'POST' diff --git a/apps/files/l10n/ar.js b/apps/files/l10n/ar.js index 59a1b312fa6..56bf720f798 100644 --- a/apps/files/l10n/ar.js +++ b/apps/files/l10n/ar.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "الملفات المُفضَّلة", "No favorites" : "لا يوجد مفضلات ", "More favorites" : "مزيد من المُفضَّلة", - "Upload (max. %s)" : "الرفع ( حد اقصى. %s ) ", "Accept" : "قبول", "Reject" : "رفض", "Incoming ownership transfer from {user}" : "تم تحويل ملكية الملف إليك من قبل {user}", @@ -432,6 +431,7 @@ OC.L10N.register( "Upload file" : "رفع ملف", "Not favorited" : "ازالة من المفضلة", "An error occurred while trying to update the tags" : "حدث خطأ اثناء محاولة تحديث الوسوم", + "Upload (max. %s)" : "الرفع ( حد اقصى. %s ) ", "You don't have permission to upload or create files here." : "ليس لديك الصلاحية لرفع أو إنشاء ملفاتٍ هنا.", "Storage informations" : "معلومات التخزين", "Choose file" : "حدد ملف", diff --git a/apps/files/l10n/ar.json b/apps/files/l10n/ar.json index 36243f82425..2f13493ccb9 100644 --- a/apps/files/l10n/ar.json +++ b/apps/files/l10n/ar.json @@ -52,7 +52,6 @@ "Favorite files" : "الملفات المُفضَّلة", "No favorites" : "لا يوجد مفضلات ", "More favorites" : "مزيد من المُفضَّلة", - "Upload (max. %s)" : "الرفع ( حد اقصى. %s ) ", "Accept" : "قبول", "Reject" : "رفض", "Incoming ownership transfer from {user}" : "تم تحويل ملكية الملف إليك من قبل {user}", @@ -430,6 +429,7 @@ "Upload file" : "رفع ملف", "Not favorited" : "ازالة من المفضلة", "An error occurred while trying to update the tags" : "حدث خطأ اثناء محاولة تحديث الوسوم", + "Upload (max. %s)" : "الرفع ( حد اقصى. %s ) ", "You don't have permission to upload or create files here." : "ليس لديك الصلاحية لرفع أو إنشاء ملفاتٍ هنا.", "Storage informations" : "معلومات التخزين", "Choose file" : "حدد ملف", diff --git a/apps/files/l10n/ast.js b/apps/files/l10n/ast.js index c16944eac33..ff5e6a97c67 100644 --- a/apps/files/l10n/ast.js +++ b/apps/files/l10n/ast.js @@ -44,7 +44,6 @@ OC.L10N.register( "A file or folder has been <strong>changed</strong>" : "Hai un ficheru o una carpeta que <strong>camudó</strong>", "A favorite file or folder has been <strong>changed</strong>" : "Hai un ficheru o una carpeta de Favoritos que <strong>camudó</strong>", "No favorites" : "Nengún favoritu", - "Upload (max. %s)" : "Xubir (%s como máximu)", "Accept" : "Aceptar", "Reject" : "Refugar", "Incoming ownership transfer from {user}" : "Recibióse una tresferencia de propiedá de: {user}", @@ -330,6 +329,7 @@ OC.L10N.register( "Upload file" : "Xubir un ficheru", "Not favorited" : "Nun ta en Favoritos", "An error occurred while trying to update the tags" : "Prodúxose un error al tentar d'anovar les etiquetes", + "Upload (max. %s)" : "Xubir (%s como máximu)", "Storage informations" : "Información del almacenamientu", "Choose file" : "Escoyer un ficheru", "Go to the previous folder" : "Dir a la carpeta anterior", diff --git a/apps/files/l10n/ast.json b/apps/files/l10n/ast.json index 5a2aa7d692d..eaa7028350f 100644 --- a/apps/files/l10n/ast.json +++ b/apps/files/l10n/ast.json @@ -42,7 +42,6 @@ "A file or folder has been <strong>changed</strong>" : "Hai un ficheru o una carpeta que <strong>camudó</strong>", "A favorite file or folder has been <strong>changed</strong>" : "Hai un ficheru o una carpeta de Favoritos que <strong>camudó</strong>", "No favorites" : "Nengún favoritu", - "Upload (max. %s)" : "Xubir (%s como máximu)", "Accept" : "Aceptar", "Reject" : "Refugar", "Incoming ownership transfer from {user}" : "Recibióse una tresferencia de propiedá de: {user}", @@ -328,6 +327,7 @@ "Upload file" : "Xubir un ficheru", "Not favorited" : "Nun ta en Favoritos", "An error occurred while trying to update the tags" : "Prodúxose un error al tentar d'anovar les etiquetes", + "Upload (max. %s)" : "Xubir (%s como máximu)", "Storage informations" : "Información del almacenamientu", "Choose file" : "Escoyer un ficheru", "Go to the previous folder" : "Dir a la carpeta anterior", diff --git a/apps/files/l10n/bg.js b/apps/files/l10n/bg.js index 164f4523d76..d945971d3e6 100644 --- a/apps/files/l10n/bg.js +++ b/apps/files/l10n/bg.js @@ -43,7 +43,6 @@ OC.L10N.register( "A file or folder has been <strong>changed</strong>" : "<strong>Промяна</strong> на файл / папка", "A favorite file or folder has been <strong>changed</strong>" : "Предпочетен файл или папка е <strong>променен</strong>", "No favorites" : "Няма любими", - "Upload (max. %s)" : "Качи (макс. %s)", "Accept" : "Приемане", "Reject" : "Откажи", "Incoming ownership transfer from {user}" : "Входящо прехвърляне на собственост от {user}", @@ -247,6 +246,7 @@ OC.L10N.register( "Upload file" : "Качи файл", "Not favorited" : "Премахни от любими", "An error occurred while trying to update the tags" : "Възникна грешка при опита за промяна на етикети", + "Upload (max. %s)" : "Качи (макс. %s)", "Storage informations" : "Хранилище на информация", "Go to the previous folder" : "Връщане към предишната папка", "Open the files app settings" : "Отваряне на настройките на приложението за файлове", diff --git a/apps/files/l10n/bg.json b/apps/files/l10n/bg.json index d653ef6c367..3f0d09c5438 100644 --- a/apps/files/l10n/bg.json +++ b/apps/files/l10n/bg.json @@ -41,7 +41,6 @@ "A file or folder has been <strong>changed</strong>" : "<strong>Промяна</strong> на файл / папка", "A favorite file or folder has been <strong>changed</strong>" : "Предпочетен файл или папка е <strong>променен</strong>", "No favorites" : "Няма любими", - "Upload (max. %s)" : "Качи (макс. %s)", "Accept" : "Приемане", "Reject" : "Откажи", "Incoming ownership transfer from {user}" : "Входящо прехвърляне на собственост от {user}", @@ -245,6 +244,7 @@ "Upload file" : "Качи файл", "Not favorited" : "Премахни от любими", "An error occurred while trying to update the tags" : "Възникна грешка при опита за промяна на етикети", + "Upload (max. %s)" : "Качи (макс. %s)", "Storage informations" : "Хранилище на информация", "Go to the previous folder" : "Връщане към предишната папка", "Open the files app settings" : "Отваряне на настройките на приложението за файлове", diff --git a/apps/files/l10n/ca.js b/apps/files/l10n/ca.js index c68e0c6de8e..e915c9d443a 100644 --- a/apps/files/l10n/ca.js +++ b/apps/files/l10n/ca.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Fitxers preferits", "No favorites" : "No hi ha preferits", "More favorites" : "Més preferits", - "Upload (max. %s)" : "Puja (màx. %s)", "Accept" : "Accepta", "Reject" : "Rebutja", "Incoming ownership transfer from {user}" : "{user} us ha enviat una transferència de propietat", @@ -432,6 +431,7 @@ OC.L10N.register( "Upload file" : "Puja un fitxer", "Not favorited" : "No s'inclou en els preferits", "An error occurred while trying to update the tags" : "S'ha produït un error en intentar actualitzar les etiquetes", + "Upload (max. %s)" : "Puja (màx. %s)", "You don't have permission to upload or create files here." : "No teniu permís per pujar o crear fitxers aquí.", "Storage informations" : "Informació d'emmagatzematge", "Choose file" : "Tria el fitxer", diff --git a/apps/files/l10n/ca.json b/apps/files/l10n/ca.json index 64c9ce4052f..f7c596bb7d4 100644 --- a/apps/files/l10n/ca.json +++ b/apps/files/l10n/ca.json @@ -52,7 +52,6 @@ "Favorite files" : "Fitxers preferits", "No favorites" : "No hi ha preferits", "More favorites" : "Més preferits", - "Upload (max. %s)" : "Puja (màx. %s)", "Accept" : "Accepta", "Reject" : "Rebutja", "Incoming ownership transfer from {user}" : "{user} us ha enviat una transferència de propietat", @@ -430,6 +429,7 @@ "Upload file" : "Puja un fitxer", "Not favorited" : "No s'inclou en els preferits", "An error occurred while trying to update the tags" : "S'ha produït un error en intentar actualitzar les etiquetes", + "Upload (max. %s)" : "Puja (màx. %s)", "You don't have permission to upload or create files here." : "No teniu permís per pujar o crear fitxers aquí.", "Storage informations" : "Informació d'emmagatzematge", "Choose file" : "Tria el fitxer", diff --git a/apps/files/l10n/cs.js b/apps/files/l10n/cs.js index b28537c6ae4..5e39cb05347 100644 --- a/apps/files/l10n/cs.js +++ b/apps/files/l10n/cs.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Oblíbené soubory", "No favorites" : "Žádné oblíbené", "More favorites" : "Další oblíbené", - "Upload (max. %s)" : "Nahrát (max. %s)", "Accept" : "Přijmout", "Reject" : "Odmítnout", "Incoming ownership transfer from {user}" : "Příchozí převedení vlastnictví od {user}", @@ -192,6 +191,7 @@ OC.L10N.register( "Sort favorites first" : "Seřadit od oblíbených", "Sort folders before files" : "Při řazení zobrazovat složky a pak až soubory", "Show hidden files" : "Zobrazit skryté soubory", + "Show file type column" : "Zobrazovat sloupec Typ souboru", "Crop image previews" : "Oříznout náhledy obrázků", "Enable the grid view" : "Zapnout zobrazení v mřížce", "Enable folder tree" : "Zapnout strom složek", @@ -441,6 +441,7 @@ OC.L10N.register( "Upload file" : "Nahrát soubor", "Not favorited" : "Nepřidáno do oblíbených", "An error occurred while trying to update the tags" : "Při pokusu o úpravu štítků došlo k chybě", + "Upload (max. %s)" : "Nahrát (max. %s)", "You don't have permission to upload or create files here." : "Nemáte oprávnění sem nahrávat nebo zde vytvářet soubory.", "Storage informations" : "Informace o úložišti", "Choose file" : "Vyberte soubor", diff --git a/apps/files/l10n/cs.json b/apps/files/l10n/cs.json index 4258b4b31f4..e488079a351 100644 --- a/apps/files/l10n/cs.json +++ b/apps/files/l10n/cs.json @@ -52,7 +52,6 @@ "Favorite files" : "Oblíbené soubory", "No favorites" : "Žádné oblíbené", "More favorites" : "Další oblíbené", - "Upload (max. %s)" : "Nahrát (max. %s)", "Accept" : "Přijmout", "Reject" : "Odmítnout", "Incoming ownership transfer from {user}" : "Příchozí převedení vlastnictví od {user}", @@ -190,6 +189,7 @@ "Sort favorites first" : "Seřadit od oblíbených", "Sort folders before files" : "Při řazení zobrazovat složky a pak až soubory", "Show hidden files" : "Zobrazit skryté soubory", + "Show file type column" : "Zobrazovat sloupec Typ souboru", "Crop image previews" : "Oříznout náhledy obrázků", "Enable the grid view" : "Zapnout zobrazení v mřížce", "Enable folder tree" : "Zapnout strom složek", @@ -439,6 +439,7 @@ "Upload file" : "Nahrát soubor", "Not favorited" : "Nepřidáno do oblíbených", "An error occurred while trying to update the tags" : "Při pokusu o úpravu štítků došlo k chybě", + "Upload (max. %s)" : "Nahrát (max. %s)", "You don't have permission to upload or create files here." : "Nemáte oprávnění sem nahrávat nebo zde vytvářet soubory.", "Storage informations" : "Informace o úložišti", "Choose file" : "Vyberte soubor", diff --git a/apps/files/l10n/da.js b/apps/files/l10n/da.js index 929d5ad55f2..cd35222c4fe 100644 --- a/apps/files/l10n/da.js +++ b/apps/files/l10n/da.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Favoriser filer", "No favorites" : "Ingen foretrukne", "More favorites" : "Flere favoritter", - "Upload (max. %s)" : "Upload (max. %s)", "Accept" : "Accepter", "Reject" : "Afvis", "Incoming ownership transfer from {user}" : "Indgående ejerskabsoverførsel fra {user}", @@ -432,6 +431,7 @@ OC.L10N.register( "Upload file" : "Upload fil", "Not favorited" : "Ingen foretrukne", "An error occurred while trying to update the tags" : "Der opstod en fejl under forsøg på at opdatere mærkerne", + "Upload (max. %s)" : "Upload (max. %s)", "You don't have permission to upload or create files here." : "Du har ikke rettigheder til at uploade eller oprette filer her.", "Storage informations" : "Lagerinformationer", "Choose file" : "Vælg fil", diff --git a/apps/files/l10n/da.json b/apps/files/l10n/da.json index 0d031b957c0..d30d4964449 100644 --- a/apps/files/l10n/da.json +++ b/apps/files/l10n/da.json @@ -52,7 +52,6 @@ "Favorite files" : "Favoriser filer", "No favorites" : "Ingen foretrukne", "More favorites" : "Flere favoritter", - "Upload (max. %s)" : "Upload (max. %s)", "Accept" : "Accepter", "Reject" : "Afvis", "Incoming ownership transfer from {user}" : "Indgående ejerskabsoverførsel fra {user}", @@ -430,6 +429,7 @@ "Upload file" : "Upload fil", "Not favorited" : "Ingen foretrukne", "An error occurred while trying to update the tags" : "Der opstod en fejl under forsøg på at opdatere mærkerne", + "Upload (max. %s)" : "Upload (max. %s)", "You don't have permission to upload or create files here." : "Du har ikke rettigheder til at uploade eller oprette filer her.", "Storage informations" : "Lagerinformationer", "Choose file" : "Vælg fil", diff --git a/apps/files/l10n/de.js b/apps/files/l10n/de.js index 3237a8b49d0..2e418f8d5cc 100644 --- a/apps/files/l10n/de.js +++ b/apps/files/l10n/de.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Favorisierte Dateien", "No favorites" : "Keine Favoriten", "More favorites" : "Weitere Favoriten", - "Upload (max. %s)" : "Hochladen (max. %s)", "Accept" : "Akzeptieren", "Reject" : "Ablehnen", "Incoming ownership transfer from {user}" : "Eingehende Besitzübertragung von {user}", @@ -442,6 +441,7 @@ OC.L10N.register( "Upload file" : "Datei hochladen", "Not favorited" : "Nicht favorisiert", "An error occurred while trying to update the tags" : "Es ist ein Fehler beim Aktualisieren der Tags aufgetreten", + "Upload (max. %s)" : "Hochladen (max. %s)", "You don't have permission to upload or create files here." : "Keine Berechtigung, hier Dateien hochzuladen oder zu erstellen.", "Storage informations" : "Speicherinformationen", "Choose file" : "Datei auswählen", diff --git a/apps/files/l10n/de.json b/apps/files/l10n/de.json index f5ebd06c5a8..1e03f1c4bcd 100644 --- a/apps/files/l10n/de.json +++ b/apps/files/l10n/de.json @@ -52,7 +52,6 @@ "Favorite files" : "Favorisierte Dateien", "No favorites" : "Keine Favoriten", "More favorites" : "Weitere Favoriten", - "Upload (max. %s)" : "Hochladen (max. %s)", "Accept" : "Akzeptieren", "Reject" : "Ablehnen", "Incoming ownership transfer from {user}" : "Eingehende Besitzübertragung von {user}", @@ -440,6 +439,7 @@ "Upload file" : "Datei hochladen", "Not favorited" : "Nicht favorisiert", "An error occurred while trying to update the tags" : "Es ist ein Fehler beim Aktualisieren der Tags aufgetreten", + "Upload (max. %s)" : "Hochladen (max. %s)", "You don't have permission to upload or create files here." : "Keine Berechtigung, hier Dateien hochzuladen oder zu erstellen.", "Storage informations" : "Speicherinformationen", "Choose file" : "Datei auswählen", diff --git a/apps/files/l10n/de_DE.js b/apps/files/l10n/de_DE.js index bcf374148b5..de81d82bace 100644 --- a/apps/files/l10n/de_DE.js +++ b/apps/files/l10n/de_DE.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Favorisierte Dateien", "No favorites" : "Keine Favoriten", "More favorites" : "Weitere Favoriten", - "Upload (max. %s)" : "Hochladen (max. %s)", "Accept" : "Akzeptieren", "Reject" : "Ablehnen", "Incoming ownership transfer from {user}" : "Eingehende Besitzübertragung von {user}", @@ -442,6 +441,7 @@ OC.L10N.register( "Upload file" : "Datei hochladen", "Not favorited" : "Nicht favorisiert", "An error occurred while trying to update the tags" : "Es ist ein Fehler beim Aktualisieren der Schlagworte aufgetreten", + "Upload (max. %s)" : "Hochladen (max. %s)", "You don't have permission to upload or create files here." : "Keine Berechtigung, hier Dateien hochzuladen oder zu erstellen.", "Storage informations" : "Speicherinformationen", "Choose file" : "Datei auswählen", diff --git a/apps/files/l10n/de_DE.json b/apps/files/l10n/de_DE.json index fd0d1714920..0d9c3ccf5f8 100644 --- a/apps/files/l10n/de_DE.json +++ b/apps/files/l10n/de_DE.json @@ -52,7 +52,6 @@ "Favorite files" : "Favorisierte Dateien", "No favorites" : "Keine Favoriten", "More favorites" : "Weitere Favoriten", - "Upload (max. %s)" : "Hochladen (max. %s)", "Accept" : "Akzeptieren", "Reject" : "Ablehnen", "Incoming ownership transfer from {user}" : "Eingehende Besitzübertragung von {user}", @@ -440,6 +439,7 @@ "Upload file" : "Datei hochladen", "Not favorited" : "Nicht favorisiert", "An error occurred while trying to update the tags" : "Es ist ein Fehler beim Aktualisieren der Schlagworte aufgetreten", + "Upload (max. %s)" : "Hochladen (max. %s)", "You don't have permission to upload or create files here." : "Keine Berechtigung, hier Dateien hochzuladen oder zu erstellen.", "Storage informations" : "Speicherinformationen", "Choose file" : "Datei auswählen", diff --git a/apps/files/l10n/el.js b/apps/files/l10n/el.js index e7660c639ba..9c0a83ad309 100644 --- a/apps/files/l10n/el.js +++ b/apps/files/l10n/el.js @@ -43,7 +43,6 @@ OC.L10N.register( "A file or folder has been <strong>changed</strong>" : "Ένα αρχείο ή κατάλογος έχουν <strong>αλλάξει</strong>", "A favorite file or folder has been <strong>changed</strong>" : "Ένα αγαπημένο αρχείο ή φάκελός σας έχει <strong>τροποποιηθεί</strong>.", "No favorites" : "Δεν υπάρχουν αγαπημένα", - "Upload (max. %s)" : "Μεταφόρτωση (max. %s)", "Accept" : "Αποδοχή", "Reject" : "Απόρριψη", "Incoming ownership transfer from {user}" : "Εισερχόμενη μεταβίβαση κυριότητας από τον {user}", @@ -336,6 +335,7 @@ OC.L10N.register( "Upload file" : "Μεταφόρτωση αρχείου", "Not favorited" : "Δεν είναι αγαπημένο", "An error occurred while trying to update the tags" : "Ένα σφάλμα προέκυψε κατά τη διάρκεια ενημέρωσης των ετικετών", + "Upload (max. %s)" : "Μεταφόρτωση (max. %s)", "Storage informations" : "Πληροφορίες αποθήκευσης", "Choose file" : "Επιλέξτε αρχείο", "Go to the previous folder" : "Μετάβαση στον προηγούμενο φάκελο", diff --git a/apps/files/l10n/el.json b/apps/files/l10n/el.json index 08140644385..f23d54140e3 100644 --- a/apps/files/l10n/el.json +++ b/apps/files/l10n/el.json @@ -41,7 +41,6 @@ "A file or folder has been <strong>changed</strong>" : "Ένα αρχείο ή κατάλογος έχουν <strong>αλλάξει</strong>", "A favorite file or folder has been <strong>changed</strong>" : "Ένα αγαπημένο αρχείο ή φάκελός σας έχει <strong>τροποποιηθεί</strong>.", "No favorites" : "Δεν υπάρχουν αγαπημένα", - "Upload (max. %s)" : "Μεταφόρτωση (max. %s)", "Accept" : "Αποδοχή", "Reject" : "Απόρριψη", "Incoming ownership transfer from {user}" : "Εισερχόμενη μεταβίβαση κυριότητας από τον {user}", @@ -334,6 +333,7 @@ "Upload file" : "Μεταφόρτωση αρχείου", "Not favorited" : "Δεν είναι αγαπημένο", "An error occurred while trying to update the tags" : "Ένα σφάλμα προέκυψε κατά τη διάρκεια ενημέρωσης των ετικετών", + "Upload (max. %s)" : "Μεταφόρτωση (max. %s)", "Storage informations" : "Πληροφορίες αποθήκευσης", "Choose file" : "Επιλέξτε αρχείο", "Go to the previous folder" : "Μετάβαση στον προηγούμενο φάκελο", diff --git a/apps/files/l10n/en_GB.js b/apps/files/l10n/en_GB.js index 4949fbd61b3..031cec5f326 100644 --- a/apps/files/l10n/en_GB.js +++ b/apps/files/l10n/en_GB.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Favorite files", "No favorites" : "No favourites", "More favorites" : "More favorites", - "Upload (max. %s)" : "Upload (max. %s)", "Accept" : "Accept", "Reject" : "Reject", "Incoming ownership transfer from {user}" : "Incoming ownership transfer from {user}", @@ -442,6 +441,7 @@ OC.L10N.register( "Upload file" : "Upload file", "Not favorited" : "Not favourited", "An error occurred while trying to update the tags" : "An error occurred whilst trying to update the tags", + "Upload (max. %s)" : "Upload (max. %s)", "You don't have permission to upload or create files here." : "You don't have permission to upload or create files here.", "Storage informations" : "Storage informations", "Choose file" : "Choose file", diff --git a/apps/files/l10n/en_GB.json b/apps/files/l10n/en_GB.json index eb30639fa72..ba21ba660fb 100644 --- a/apps/files/l10n/en_GB.json +++ b/apps/files/l10n/en_GB.json @@ -52,7 +52,6 @@ "Favorite files" : "Favorite files", "No favorites" : "No favourites", "More favorites" : "More favorites", - "Upload (max. %s)" : "Upload (max. %s)", "Accept" : "Accept", "Reject" : "Reject", "Incoming ownership transfer from {user}" : "Incoming ownership transfer from {user}", @@ -440,6 +439,7 @@ "Upload file" : "Upload file", "Not favorited" : "Not favourited", "An error occurred while trying to update the tags" : "An error occurred whilst trying to update the tags", + "Upload (max. %s)" : "Upload (max. %s)", "You don't have permission to upload or create files here." : "You don't have permission to upload or create files here.", "Storage informations" : "Storage informations", "Choose file" : "Choose file", diff --git a/apps/files/l10n/es.js b/apps/files/l10n/es.js index 6a81757f167..5b9727fb1f5 100644 --- a/apps/files/l10n/es.js +++ b/apps/files/l10n/es.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Archivos favoritos", "No favorites" : "No hay favoritos", "More favorites" : "Más favoritos", - "Upload (max. %s)" : "Subida (máx. %s)", "Accept" : "Aceptar", "Reject" : "Rechazar", "Incoming ownership transfer from {user}" : "Ha llegado una transferencia de propiedad de {user}", @@ -434,6 +433,7 @@ OC.L10N.register( "Upload file" : "Subir archivo", "Not favorited" : "Quitado como favorito", "An error occurred while trying to update the tags" : "Se produjo un error al tratar de actualizar las etiquetas", + "Upload (max. %s)" : "Subida (máx. %s)", "You don't have permission to upload or create files here." : "No tiene permisos para subir o crear archivos aquí.", "Storage informations" : "Informaciones de almacenamiento", "Choose file" : "Elegir archivo", diff --git a/apps/files/l10n/es.json b/apps/files/l10n/es.json index 1fc8796f0c8..eb0fd4b6825 100644 --- a/apps/files/l10n/es.json +++ b/apps/files/l10n/es.json @@ -52,7 +52,6 @@ "Favorite files" : "Archivos favoritos", "No favorites" : "No hay favoritos", "More favorites" : "Más favoritos", - "Upload (max. %s)" : "Subida (máx. %s)", "Accept" : "Aceptar", "Reject" : "Rechazar", "Incoming ownership transfer from {user}" : "Ha llegado una transferencia de propiedad de {user}", @@ -432,6 +431,7 @@ "Upload file" : "Subir archivo", "Not favorited" : "Quitado como favorito", "An error occurred while trying to update the tags" : "Se produjo un error al tratar de actualizar las etiquetas", + "Upload (max. %s)" : "Subida (máx. %s)", "You don't have permission to upload or create files here." : "No tiene permisos para subir o crear archivos aquí.", "Storage informations" : "Informaciones de almacenamiento", "Choose file" : "Elegir archivo", diff --git a/apps/files/l10n/es_EC.js b/apps/files/l10n/es_EC.js index aeeba4b15d5..ab5ea72a34e 100644 --- a/apps/files/l10n/es_EC.js +++ b/apps/files/l10n/es_EC.js @@ -43,7 +43,6 @@ OC.L10N.register( "A file or folder has been <strong>changed</strong>" : "Un archivo o carpeta ha sido <strong>modificado</strong>.", "A favorite file or folder has been <strong>changed</strong>" : "Un archivo o carpeta favorito ha sido <strong>modificado</strong>.", "No favorites" : "No hay favoritos", - "Upload (max. %s)" : "Cargar (max. %s)", "Accept" : "Aceptar", "Reject" : "Rechazar", "Incoming ownership transfer from {user}" : "Transferencia de propiedad entrante de {user}.", @@ -251,6 +250,7 @@ OC.L10N.register( "Upload file" : "Cargar archivo", "Not favorited" : "No es un favorito", "An error occurred while trying to update the tags" : "Se presentó un error al intentar actualizar la etiqueta", + "Upload (max. %s)" : "Cargar (max. %s)", "Storage informations" : "Información de almacenamiento.", "Go to the previous folder" : "Ir a la carpeta anterior.", "Open the files app settings" : "Abrir la configuración de la aplicación de archivos.", diff --git a/apps/files/l10n/es_EC.json b/apps/files/l10n/es_EC.json index cab16362f3b..54c91b913f1 100644 --- a/apps/files/l10n/es_EC.json +++ b/apps/files/l10n/es_EC.json @@ -41,7 +41,6 @@ "A file or folder has been <strong>changed</strong>" : "Un archivo o carpeta ha sido <strong>modificado</strong>.", "A favorite file or folder has been <strong>changed</strong>" : "Un archivo o carpeta favorito ha sido <strong>modificado</strong>.", "No favorites" : "No hay favoritos", - "Upload (max. %s)" : "Cargar (max. %s)", "Accept" : "Aceptar", "Reject" : "Rechazar", "Incoming ownership transfer from {user}" : "Transferencia de propiedad entrante de {user}.", @@ -249,6 +248,7 @@ "Upload file" : "Cargar archivo", "Not favorited" : "No es un favorito", "An error occurred while trying to update the tags" : "Se presentó un error al intentar actualizar la etiqueta", + "Upload (max. %s)" : "Cargar (max. %s)", "Storage informations" : "Información de almacenamiento.", "Go to the previous folder" : "Ir a la carpeta anterior.", "Open the files app settings" : "Abrir la configuración de la aplicación de archivos.", diff --git a/apps/files/l10n/es_MX.js b/apps/files/l10n/es_MX.js index d57707ff578..12df1efeea6 100644 --- a/apps/files/l10n/es_MX.js +++ b/apps/files/l10n/es_MX.js @@ -47,7 +47,6 @@ OC.L10N.register( "Invalid folder path" : "Ruta de carpeta inválida", "Folder not found" : "No se encontró la carpeta", "No favorites" : "No hay favoritos", - "Upload (max. %s)" : "Cargar (max. %s)", "Accept" : "Aceptar", "Reject" : "Rechazar", "Incoming ownership transfer from {user}" : "Solicitud de transferencia de propiedad entrante de {user}", @@ -377,6 +376,7 @@ OC.L10N.register( "Upload file" : "Cargar archivo", "Not favorited" : "No es un favorito", "An error occurred while trying to update the tags" : "Se presentó un error al intentar actualizar la etiqueta", + "Upload (max. %s)" : "Cargar (max. %s)", "Storage informations" : "Informaciones de almacenamiento", "Choose file" : "Elegir archivo", "Go to the previous folder" : "Ir a la carpeta anterior", diff --git a/apps/files/l10n/es_MX.json b/apps/files/l10n/es_MX.json index 900561d5fb7..4b0cd70e5ce 100644 --- a/apps/files/l10n/es_MX.json +++ b/apps/files/l10n/es_MX.json @@ -45,7 +45,6 @@ "Invalid folder path" : "Ruta de carpeta inválida", "Folder not found" : "No se encontró la carpeta", "No favorites" : "No hay favoritos", - "Upload (max. %s)" : "Cargar (max. %s)", "Accept" : "Aceptar", "Reject" : "Rechazar", "Incoming ownership transfer from {user}" : "Solicitud de transferencia de propiedad entrante de {user}", @@ -375,6 +374,7 @@ "Upload file" : "Cargar archivo", "Not favorited" : "No es un favorito", "An error occurred while trying to update the tags" : "Se presentó un error al intentar actualizar la etiqueta", + "Upload (max. %s)" : "Cargar (max. %s)", "Storage informations" : "Informaciones de almacenamiento", "Choose file" : "Elegir archivo", "Go to the previous folder" : "Ir a la carpeta anterior", diff --git a/apps/files/l10n/et_EE.js b/apps/files/l10n/et_EE.js index 86f79a96ea9..11b74a29106 100644 --- a/apps/files/l10n/et_EE.js +++ b/apps/files/l10n/et_EE.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Lemmikfailid", "No favorites" : "Lemmikuid pole", "More favorites" : "Veel lemmikuid", - "Upload (max. %s)" : "Üleslaadimine (max. %s)", "Accept" : "Nõustu", "Reject" : "Keeldu", "Incoming ownership transfer from {user}" : "Saaduv omandi üleandmine kasutajalt {user}", @@ -442,6 +441,7 @@ OC.L10N.register( "Upload file" : "Laadi fail üles", "Not favorited" : "Lemmikuks lisamata", "An error occurred while trying to update the tags" : "Siltide uuendamisel tekkis tõrge", + "Upload (max. %s)" : "Üleslaadimine (max. %s)", "You don't have permission to upload or create files here." : "Sul puuduvad õigused siia failide üleslaadimiseks või loomiseks.", "Storage informations" : "Andmeruumi teave", "Choose file" : "Vali fail", diff --git a/apps/files/l10n/et_EE.json b/apps/files/l10n/et_EE.json index 7c1baa0915c..73bca5cbc79 100644 --- a/apps/files/l10n/et_EE.json +++ b/apps/files/l10n/et_EE.json @@ -52,7 +52,6 @@ "Favorite files" : "Lemmikfailid", "No favorites" : "Lemmikuid pole", "More favorites" : "Veel lemmikuid", - "Upload (max. %s)" : "Üleslaadimine (max. %s)", "Accept" : "Nõustu", "Reject" : "Keeldu", "Incoming ownership transfer from {user}" : "Saaduv omandi üleandmine kasutajalt {user}", @@ -440,6 +439,7 @@ "Upload file" : "Laadi fail üles", "Not favorited" : "Lemmikuks lisamata", "An error occurred while trying to update the tags" : "Siltide uuendamisel tekkis tõrge", + "Upload (max. %s)" : "Üleslaadimine (max. %s)", "You don't have permission to upload or create files here." : "Sul puuduvad õigused siia failide üleslaadimiseks või loomiseks.", "Storage informations" : "Andmeruumi teave", "Choose file" : "Vali fail", diff --git a/apps/files/l10n/eu.js b/apps/files/l10n/eu.js index 2cabb2838b0..b2f108756cc 100644 --- a/apps/files/l10n/eu.js +++ b/apps/files/l10n/eu.js @@ -51,7 +51,6 @@ OC.L10N.register( "Favorite files" : "Gogoko fitxategiak", "No favorites" : "Gogokorik ez", "More favorites" : "Gogoko gehiago", - "Upload (max. %s)" : "Igo (%s gehienez)", "Accept" : "Onartu", "Reject" : "Ukatu", "Incoming ownership transfer from {user}" : "{user}(r)en jabetza-transferentzia", @@ -403,6 +402,7 @@ OC.L10N.register( "Upload file" : "Igo fitxategia", "Not favorited" : "Ez da gogokoa", "An error occurred while trying to update the tags" : "Errore bat gertatu da etiketak eguneratzen saiatzean", + "Upload (max. %s)" : "Igo (%s gehienez)", "Storage informations" : "Biltegiaren informazioak", "Choose file" : "Aukeratu fitxategia", "Go to the previous folder" : "Joan aurreko karpetara", diff --git a/apps/files/l10n/eu.json b/apps/files/l10n/eu.json index e684f2741d7..7e8184fba4c 100644 --- a/apps/files/l10n/eu.json +++ b/apps/files/l10n/eu.json @@ -49,7 +49,6 @@ "Favorite files" : "Gogoko fitxategiak", "No favorites" : "Gogokorik ez", "More favorites" : "Gogoko gehiago", - "Upload (max. %s)" : "Igo (%s gehienez)", "Accept" : "Onartu", "Reject" : "Ukatu", "Incoming ownership transfer from {user}" : "{user}(r)en jabetza-transferentzia", @@ -401,6 +400,7 @@ "Upload file" : "Igo fitxategia", "Not favorited" : "Ez da gogokoa", "An error occurred while trying to update the tags" : "Errore bat gertatu da etiketak eguneratzen saiatzean", + "Upload (max. %s)" : "Igo (%s gehienez)", "Storage informations" : "Biltegiaren informazioak", "Choose file" : "Aukeratu fitxategia", "Go to the previous folder" : "Joan aurreko karpetara", diff --git a/apps/files/l10n/fa.js b/apps/files/l10n/fa.js index c71a442bcc6..7ab91258186 100644 --- a/apps/files/l10n/fa.js +++ b/apps/files/l10n/fa.js @@ -43,7 +43,6 @@ OC.L10N.register( "A file or folder has been <strong>changed</strong>" : "یک فایل یا پوشه تغییر کرده است", "A favorite file or folder has been <strong>changed</strong>" : "یک فایل یا پوشه مورد علاقه تغییر کرده است", "No favorites" : "هیچ برگزیده", - "Upload (max. %s)" : "آپلود (بیشترین سایز %s)", "Accept" : "قبول", "Reject" : "رد کردن", "Incoming ownership transfer from {user}" : "انتقال مالکیت ورودی از {user}", @@ -268,6 +267,7 @@ OC.L10N.register( "Upload file" : "بارگذاری پرونده", "Not favorited" : "مورد علاقه نیست", "An error occurred while trying to update the tags" : "یک خطا در حین بروزرسانی برچسبها رخ داده است", + "Upload (max. %s)" : "آپلود (بیشترین سایز %s)", "Storage informations" : "ذخیره سازی اطلاعات ", "Go to the previous folder" : "به پوشه قبلی بروید", "Open the files app settings" : "تنظیمات برنامه فایل ها را باز کنید", diff --git a/apps/files/l10n/fa.json b/apps/files/l10n/fa.json index bdc6488c9e8..0c4f8d4b40c 100644 --- a/apps/files/l10n/fa.json +++ b/apps/files/l10n/fa.json @@ -41,7 +41,6 @@ "A file or folder has been <strong>changed</strong>" : "یک فایل یا پوشه تغییر کرده است", "A favorite file or folder has been <strong>changed</strong>" : "یک فایل یا پوشه مورد علاقه تغییر کرده است", "No favorites" : "هیچ برگزیده", - "Upload (max. %s)" : "آپلود (بیشترین سایز %s)", "Accept" : "قبول", "Reject" : "رد کردن", "Incoming ownership transfer from {user}" : "انتقال مالکیت ورودی از {user}", @@ -266,6 +265,7 @@ "Upload file" : "بارگذاری پرونده", "Not favorited" : "مورد علاقه نیست", "An error occurred while trying to update the tags" : "یک خطا در حین بروزرسانی برچسبها رخ داده است", + "Upload (max. %s)" : "آپلود (بیشترین سایز %s)", "Storage informations" : "ذخیره سازی اطلاعات ", "Go to the previous folder" : "به پوشه قبلی بروید", "Open the files app settings" : "تنظیمات برنامه فایل ها را باز کنید", diff --git a/apps/files/l10n/fi.js b/apps/files/l10n/fi.js index a207528e026..2d76d97427f 100644 --- a/apps/files/l10n/fi.js +++ b/apps/files/l10n/fi.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Suosikkitiedostot", "No favorites" : "Ei suosikkeja", "More favorites" : "Lisää suosikeja", - "Upload (max. %s)" : "Lähetys (enintään %s)", "Accept" : "Hyväksy", "Reject" : "Hylkää", "Incoming ownership transfer from {user}" : "Saapuva omistajuussiirto käyttäjältä {user}", @@ -393,6 +392,7 @@ OC.L10N.register( "Upload file" : "Lähetä tiedosto", "Not favorited" : "Ei suosikeissa", "An error occurred while trying to update the tags" : "Tunnisteiden päivitystä yrittäessä tapahtui virhe", + "Upload (max. %s)" : "Lähetys (enintään %s)", "You don't have permission to upload or create files here." : "Sinulla ei ole oikeutta lähettää tai luoda tiedostoja tänne.", "Storage informations" : "Tallennustilan tietoja", "Choose file" : "Valitse tiedosto", diff --git a/apps/files/l10n/fi.json b/apps/files/l10n/fi.json index b9b238376e3..b42f43a044c 100644 --- a/apps/files/l10n/fi.json +++ b/apps/files/l10n/fi.json @@ -52,7 +52,6 @@ "Favorite files" : "Suosikkitiedostot", "No favorites" : "Ei suosikkeja", "More favorites" : "Lisää suosikeja", - "Upload (max. %s)" : "Lähetys (enintään %s)", "Accept" : "Hyväksy", "Reject" : "Hylkää", "Incoming ownership transfer from {user}" : "Saapuva omistajuussiirto käyttäjältä {user}", @@ -391,6 +390,7 @@ "Upload file" : "Lähetä tiedosto", "Not favorited" : "Ei suosikeissa", "An error occurred while trying to update the tags" : "Tunnisteiden päivitystä yrittäessä tapahtui virhe", + "Upload (max. %s)" : "Lähetys (enintään %s)", "You don't have permission to upload or create files here." : "Sinulla ei ole oikeutta lähettää tai luoda tiedostoja tänne.", "Storage informations" : "Tallennustilan tietoja", "Choose file" : "Valitse tiedosto", diff --git a/apps/files/l10n/fr.js b/apps/files/l10n/fr.js index 4fbb46411f3..bac401f6f1d 100644 --- a/apps/files/l10n/fr.js +++ b/apps/files/l10n/fr.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Fichiers favoris", "No favorites" : "Aucun favori", "More favorites" : "Plus de favoris", - "Upload (max. %s)" : "Envoi (max. %s)", "Accept" : "Accepter", "Reject" : "Refuser", "Incoming ownership transfer from {user}" : "Transfert de propriété de la part de {user}", @@ -442,6 +441,7 @@ OC.L10N.register( "Upload file" : "Téléverser un fichier", "Not favorited" : "Non marqué comme favori", "An error occurred while trying to update the tags" : "Une erreur est survenue lors de la mise à jour des étiquettes", + "Upload (max. %s)" : "Envoi (max. %s)", "You don't have permission to upload or create files here." : "Vous n'avez pas la permission de téléverser ou créer de fichiers ici.", "Storage informations" : "Informations sur le stockage", "Choose file" : "Choisir un fichier", diff --git a/apps/files/l10n/fr.json b/apps/files/l10n/fr.json index 77f0ae5147d..9ceeb8d42e4 100644 --- a/apps/files/l10n/fr.json +++ b/apps/files/l10n/fr.json @@ -52,7 +52,6 @@ "Favorite files" : "Fichiers favoris", "No favorites" : "Aucun favori", "More favorites" : "Plus de favoris", - "Upload (max. %s)" : "Envoi (max. %s)", "Accept" : "Accepter", "Reject" : "Refuser", "Incoming ownership transfer from {user}" : "Transfert de propriété de la part de {user}", @@ -440,6 +439,7 @@ "Upload file" : "Téléverser un fichier", "Not favorited" : "Non marqué comme favori", "An error occurred while trying to update the tags" : "Une erreur est survenue lors de la mise à jour des étiquettes", + "Upload (max. %s)" : "Envoi (max. %s)", "You don't have permission to upload or create files here." : "Vous n'avez pas la permission de téléverser ou créer de fichiers ici.", "Storage informations" : "Informations sur le stockage", "Choose file" : "Choisir un fichier", diff --git a/apps/files/l10n/ga.js b/apps/files/l10n/ga.js index a52a16fb4b4..ec95ac85cc2 100644 --- a/apps/files/l10n/ga.js +++ b/apps/files/l10n/ga.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Comhaid is fearr leat", "No favorites" : "Gan aon cheanáin", "More favorites" : "Gan aon cheanáin", - "Upload (max. %s)" : "Uaslódáil (%s ar a mhéad)", "Accept" : "Glac", "Reject" : "Diúltaigh", "Incoming ownership transfer from {user}" : "Aistriú úinéireachta isteach ó {user}", @@ -442,6 +441,7 @@ OC.L10N.register( "Upload file" : "Uaslódáil comhad", "Not favorited" : "Ní fearr leat", "An error occurred while trying to update the tags" : "Tharla earráid agus iarracht á déanamh na clibeanna a nuashonrú", + "Upload (max. %s)" : "Uaslódáil (%s ar a mhéad)", "You don't have permission to upload or create files here." : "Níl cead agat comhaid a uaslódáil nó a chruthú anseo.", "Storage informations" : "Faisnéis stórála", "Choose file" : "Roghnaigh comhad", diff --git a/apps/files/l10n/ga.json b/apps/files/l10n/ga.json index 2da61d98e94..bd88a8b4f00 100644 --- a/apps/files/l10n/ga.json +++ b/apps/files/l10n/ga.json @@ -52,7 +52,6 @@ "Favorite files" : "Comhaid is fearr leat", "No favorites" : "Gan aon cheanáin", "More favorites" : "Gan aon cheanáin", - "Upload (max. %s)" : "Uaslódáil (%s ar a mhéad)", "Accept" : "Glac", "Reject" : "Diúltaigh", "Incoming ownership transfer from {user}" : "Aistriú úinéireachta isteach ó {user}", @@ -440,6 +439,7 @@ "Upload file" : "Uaslódáil comhad", "Not favorited" : "Ní fearr leat", "An error occurred while trying to update the tags" : "Tharla earráid agus iarracht á déanamh na clibeanna a nuashonrú", + "Upload (max. %s)" : "Uaslódáil (%s ar a mhéad)", "You don't have permission to upload or create files here." : "Níl cead agat comhaid a uaslódáil nó a chruthú anseo.", "Storage informations" : "Faisnéis stórála", "Choose file" : "Roghnaigh comhad", diff --git a/apps/files/l10n/gl.js b/apps/files/l10n/gl.js index 8262941c787..875971086ac 100644 --- a/apps/files/l10n/gl.js +++ b/apps/files/l10n/gl.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Ficheiros favoritos", "No favorites" : "Non hai favoritos", "More favorites" : "Máis favoritos", - "Upload (max. %s)" : "Envío (máx. %s)", "Accept" : "Aceptar", "Reject" : "Rexeitar", "Incoming ownership transfer from {user}" : "Transferencia da propiedade entrante de {user}", @@ -430,6 +429,7 @@ OC.L10N.register( "Upload file" : "Enviar ficheiro", "Not favorited" : "Non marcado como favorito", "An error occurred while trying to update the tags" : "Produciuse un erro ao tentar actualizar as etiquetas", + "Upload (max. %s)" : "Envío (máx. %s)", "You don't have permission to upload or create files here." : "Non ten permiso para enviar ou crear ficheiros aquí.", "Storage informations" : "Información de almacenamento", "Choose file" : "Escoller o ficheiro", diff --git a/apps/files/l10n/gl.json b/apps/files/l10n/gl.json index 2e7c5c6a531..c475c6d664d 100644 --- a/apps/files/l10n/gl.json +++ b/apps/files/l10n/gl.json @@ -52,7 +52,6 @@ "Favorite files" : "Ficheiros favoritos", "No favorites" : "Non hai favoritos", "More favorites" : "Máis favoritos", - "Upload (max. %s)" : "Envío (máx. %s)", "Accept" : "Aceptar", "Reject" : "Rexeitar", "Incoming ownership transfer from {user}" : "Transferencia da propiedade entrante de {user}", @@ -428,6 +427,7 @@ "Upload file" : "Enviar ficheiro", "Not favorited" : "Non marcado como favorito", "An error occurred while trying to update the tags" : "Produciuse un erro ao tentar actualizar as etiquetas", + "Upload (max. %s)" : "Envío (máx. %s)", "You don't have permission to upload or create files here." : "Non ten permiso para enviar ou crear ficheiros aquí.", "Storage informations" : "Información de almacenamento", "Choose file" : "Escoller o ficheiro", diff --git a/apps/files/l10n/hu.js b/apps/files/l10n/hu.js index 10ab2b1a997..a9b2b1b679c 100644 --- a/apps/files/l10n/hu.js +++ b/apps/files/l10n/hu.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Kedvenc fájlok", "No favorites" : "Nincsenek kedvencek", "More favorites" : "További kedvencek", - "Upload (max. %s)" : "Feltöltés (legfeljebb %s)", "Accept" : "Elfogadás", "Reject" : "Elutasítás", "Incoming ownership transfer from {user}" : "Bejövő tulajdonjog-átruházás {user} részéről", @@ -416,6 +415,7 @@ OC.L10N.register( "Upload file" : "Fájl feltöltése", "Not favorited" : "Nincs a kedvencek között", "An error occurred while trying to update the tags" : "Hiba történt, miközben megpróbálta frissíteni a címkéket", + "Upload (max. %s)" : "Feltöltés (legfeljebb %s)", "Storage informations" : "Tárhely-információk", "Choose file" : "Válasszon fájlt", "Go to the previous folder" : "Ugrás az előző mappához", diff --git a/apps/files/l10n/hu.json b/apps/files/l10n/hu.json index 999670b9d3a..1bb11eda6e5 100644 --- a/apps/files/l10n/hu.json +++ b/apps/files/l10n/hu.json @@ -52,7 +52,6 @@ "Favorite files" : "Kedvenc fájlok", "No favorites" : "Nincsenek kedvencek", "More favorites" : "További kedvencek", - "Upload (max. %s)" : "Feltöltés (legfeljebb %s)", "Accept" : "Elfogadás", "Reject" : "Elutasítás", "Incoming ownership transfer from {user}" : "Bejövő tulajdonjog-átruházás {user} részéről", @@ -414,6 +413,7 @@ "Upload file" : "Fájl feltöltése", "Not favorited" : "Nincs a kedvencek között", "An error occurred while trying to update the tags" : "Hiba történt, miközben megpróbálta frissíteni a címkéket", + "Upload (max. %s)" : "Feltöltés (legfeljebb %s)", "Storage informations" : "Tárhely-információk", "Choose file" : "Válasszon fájlt", "Go to the previous folder" : "Ugrás az előző mappához", diff --git a/apps/files/l10n/id.js b/apps/files/l10n/id.js index 26b58d44082..3305ca979fa 100644 --- a/apps/files/l10n/id.js +++ b/apps/files/l10n/id.js @@ -43,7 +43,6 @@ OC.L10N.register( "A file or folder has been <strong>changed</strong>" : "Sebuah berkas atau folder telah <strong>diubah</strong>", "A favorite file or folder has been <strong>changed</strong>" : "Sebuah berkas atau folder favorit telah <strong>diubah</strong>", "No favorites" : "Tidak ada favorit", - "Upload (max. %s)" : "Unggah (maks. %s)", "Accept" : "Terima", "Reject" : "Ditolak", "Incoming ownership transfer from {user}" : "Permintaan transfer kepemilikan dari {user}", @@ -230,6 +229,7 @@ OC.L10N.register( "Upload file" : "Unggah berkas", "Not favorited" : "Tidak favorit", "An error occurred while trying to update the tags" : "Terjadi kesalahan saat mencoba untuk memperbarui label", + "Upload (max. %s)" : "Unggah (maks. %s)", "Storage informations" : "Informasi penyimpanan", "Open the files app settings" : "Buka setelan aplikasi berkas", "Unable to change the favourite state of the file" : "Gagal mengubah status favorit berkas", diff --git a/apps/files/l10n/id.json b/apps/files/l10n/id.json index 124d61723c6..bcccadd6383 100644 --- a/apps/files/l10n/id.json +++ b/apps/files/l10n/id.json @@ -41,7 +41,6 @@ "A file or folder has been <strong>changed</strong>" : "Sebuah berkas atau folder telah <strong>diubah</strong>", "A favorite file or folder has been <strong>changed</strong>" : "Sebuah berkas atau folder favorit telah <strong>diubah</strong>", "No favorites" : "Tidak ada favorit", - "Upload (max. %s)" : "Unggah (maks. %s)", "Accept" : "Terima", "Reject" : "Ditolak", "Incoming ownership transfer from {user}" : "Permintaan transfer kepemilikan dari {user}", @@ -228,6 +227,7 @@ "Upload file" : "Unggah berkas", "Not favorited" : "Tidak favorit", "An error occurred while trying to update the tags" : "Terjadi kesalahan saat mencoba untuk memperbarui label", + "Upload (max. %s)" : "Unggah (maks. %s)", "Storage informations" : "Informasi penyimpanan", "Open the files app settings" : "Buka setelan aplikasi berkas", "Unable to change the favourite state of the file" : "Gagal mengubah status favorit berkas", diff --git a/apps/files/l10n/is.js b/apps/files/l10n/is.js index ee87ac2320d..5953f810ff1 100644 --- a/apps/files/l10n/is.js +++ b/apps/files/l10n/is.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Eftirlætisskrár", "No favorites" : "Engin eftirlæti", "More favorites" : "Fleiri eftirlæti", - "Upload (max. %s)" : "Senda inn (hám. %s)", "Accept" : "Samþykkja", "Reject" : "Hafna", "Incoming ownership transfer from {user}" : "Innkomandi millifærsla eignarhalds frá {user}", @@ -413,6 +412,7 @@ OC.L10N.register( "Upload file" : "Senda inn skrá", "Not favorited" : "Ekki í eftirlætum", "An error occurred while trying to update the tags" : "Villa kom upp við að reyna að uppfæra merkin", + "Upload (max. %s)" : "Senda inn (hám. %s)", "Storage informations" : "Upplýsingar um geymslurými", "Choose file" : "Veldu skrá", "Go to the previous folder" : "Fara í fyrri möppu", diff --git a/apps/files/l10n/is.json b/apps/files/l10n/is.json index ba82fae1a98..20f83aa93cb 100644 --- a/apps/files/l10n/is.json +++ b/apps/files/l10n/is.json @@ -52,7 +52,6 @@ "Favorite files" : "Eftirlætisskrár", "No favorites" : "Engin eftirlæti", "More favorites" : "Fleiri eftirlæti", - "Upload (max. %s)" : "Senda inn (hám. %s)", "Accept" : "Samþykkja", "Reject" : "Hafna", "Incoming ownership transfer from {user}" : "Innkomandi millifærsla eignarhalds frá {user}", @@ -411,6 +410,7 @@ "Upload file" : "Senda inn skrá", "Not favorited" : "Ekki í eftirlætum", "An error occurred while trying to update the tags" : "Villa kom upp við að reyna að uppfæra merkin", + "Upload (max. %s)" : "Senda inn (hám. %s)", "Storage informations" : "Upplýsingar um geymslurými", "Choose file" : "Veldu skrá", "Go to the previous folder" : "Fara í fyrri möppu", diff --git a/apps/files/l10n/it.js b/apps/files/l10n/it.js index 1394712a176..7030acfa654 100644 --- a/apps/files/l10n/it.js +++ b/apps/files/l10n/it.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "File preferiti", "No favorites" : "Nessun preferito", "More favorites" : "Altri preferiti", - "Upload (max. %s)" : "Carica (massimo %s)", "Accept" : "Accetta", "Reject" : "Rifiuta", "Incoming ownership transfer from {user}" : "Trasferimento di proprietà in ingresso da {user}", @@ -442,6 +441,7 @@ OC.L10N.register( "Upload file" : "Carica file", "Not favorited" : "Non preferito", "An error occurred while trying to update the tags" : "Si è verificato un errore durante il tentativo di aggiornare le etichette", + "Upload (max. %s)" : "Carica (massimo %s)", "You don't have permission to upload or create files here." : "Non hai l'autorizzazione per caricare o creare file qui.", "Storage informations" : "Informazioni di archiviazione", "Choose file" : "Scegli file", diff --git a/apps/files/l10n/it.json b/apps/files/l10n/it.json index cd91fe47818..d72ae380f69 100644 --- a/apps/files/l10n/it.json +++ b/apps/files/l10n/it.json @@ -52,7 +52,6 @@ "Favorite files" : "File preferiti", "No favorites" : "Nessun preferito", "More favorites" : "Altri preferiti", - "Upload (max. %s)" : "Carica (massimo %s)", "Accept" : "Accetta", "Reject" : "Rifiuta", "Incoming ownership transfer from {user}" : "Trasferimento di proprietà in ingresso da {user}", @@ -440,6 +439,7 @@ "Upload file" : "Carica file", "Not favorited" : "Non preferito", "An error occurred while trying to update the tags" : "Si è verificato un errore durante il tentativo di aggiornare le etichette", + "Upload (max. %s)" : "Carica (massimo %s)", "You don't have permission to upload or create files here." : "Non hai l'autorizzazione per caricare o creare file qui.", "Storage informations" : "Informazioni di archiviazione", "Choose file" : "Scegli file", diff --git a/apps/files/l10n/ja.js b/apps/files/l10n/ja.js index 6c16223edef..744d20ed6a1 100644 --- a/apps/files/l10n/ja.js +++ b/apps/files/l10n/ja.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "お気に入りファイル", "No favorites" : "お気に入りなし", "More favorites" : "その他のお気に入り", - "Upload (max. %s)" : "アップロード ( 最大 %s )", "Accept" : "承諾", "Reject" : "拒否", "Incoming ownership transfer from {user}" : "{user} からの所有権転送を受信", @@ -442,6 +441,7 @@ OC.L10N.register( "Upload file" : "ファイルをアップロード", "Not favorited" : "お気に入りではありません", "An error occurred while trying to update the tags" : "タグを更新する際にエラーが発生しました", + "Upload (max. %s)" : "アップロード ( 最大 %s )", "You don't have permission to upload or create files here." : "ここにファイルをアップロードまたは作成する権限がありません。", "Storage informations" : "ストレージ情報", "Choose file" : "ファイルを選択", diff --git a/apps/files/l10n/ja.json b/apps/files/l10n/ja.json index 6e24c0a0326..da81853cfb7 100644 --- a/apps/files/l10n/ja.json +++ b/apps/files/l10n/ja.json @@ -52,7 +52,6 @@ "Favorite files" : "お気に入りファイル", "No favorites" : "お気に入りなし", "More favorites" : "その他のお気に入り", - "Upload (max. %s)" : "アップロード ( 最大 %s )", "Accept" : "承諾", "Reject" : "拒否", "Incoming ownership transfer from {user}" : "{user} からの所有権転送を受信", @@ -440,6 +439,7 @@ "Upload file" : "ファイルをアップロード", "Not favorited" : "お気に入りではありません", "An error occurred while trying to update the tags" : "タグを更新する際にエラーが発生しました", + "Upload (max. %s)" : "アップロード ( 最大 %s )", "You don't have permission to upload or create files here." : "ここにファイルをアップロードまたは作成する権限がありません。", "Storage informations" : "ストレージ情報", "Choose file" : "ファイルを選択", diff --git a/apps/files/l10n/ka.js b/apps/files/l10n/ka.js index cfe5550e1b9..04a5f34801a 100644 --- a/apps/files/l10n/ka.js +++ b/apps/files/l10n/ka.js @@ -42,7 +42,6 @@ OC.L10N.register( "Files" : "ფაილები", "A file or folder has been <strong>changed</strong>" : "A file or folder has been <strong>changed</strong>", "A favorite file or folder has been <strong>changed</strong>" : "A favorite file or folder has been <strong>changed</strong>", - "Upload (max. %s)" : "Upload (max. %s)", "Accept" : "Accept", "Reject" : "Reject", "Incoming ownership transfer from {user}" : "Incoming ownership transfer from {user}", @@ -283,6 +282,7 @@ OC.L10N.register( "Upload file" : "Upload file", "Not favorited" : "Not favorited", "An error occurred while trying to update the tags" : "An error occurred while trying to update the tags", + "Upload (max. %s)" : "Upload (max. %s)", "Storage informations" : "Storage informations", "Choose file" : "Choose file", "Go to the previous folder" : "Go to the previous folder", diff --git a/apps/files/l10n/ka.json b/apps/files/l10n/ka.json index 62a87193a52..9fc0ecebb60 100644 --- a/apps/files/l10n/ka.json +++ b/apps/files/l10n/ka.json @@ -40,7 +40,6 @@ "Files" : "ფაილები", "A file or folder has been <strong>changed</strong>" : "A file or folder has been <strong>changed</strong>", "A favorite file or folder has been <strong>changed</strong>" : "A favorite file or folder has been <strong>changed</strong>", - "Upload (max. %s)" : "Upload (max. %s)", "Accept" : "Accept", "Reject" : "Reject", "Incoming ownership transfer from {user}" : "Incoming ownership transfer from {user}", @@ -281,6 +280,7 @@ "Upload file" : "Upload file", "Not favorited" : "Not favorited", "An error occurred while trying to update the tags" : "An error occurred while trying to update the tags", + "Upload (max. %s)" : "Upload (max. %s)", "Storage informations" : "Storage informations", "Choose file" : "Choose file", "Go to the previous folder" : "Go to the previous folder", diff --git a/apps/files/l10n/ko.js b/apps/files/l10n/ko.js index 9a628f603bb..91476ef7c43 100644 --- a/apps/files/l10n/ko.js +++ b/apps/files/l10n/ko.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "즐겨찾는 파일", "No favorites" : "즐겨찾는 항목 없음", "More favorites" : "즐겨찾기 더 불러오기", - "Upload (max. %s)" : "업로드(최대 %s)", "Accept" : "수락", "Reject" : "거절", "Incoming ownership transfer from {user}" : "{user}의 소유권 이전 요청", @@ -419,6 +418,7 @@ OC.L10N.register( "Upload file" : "파일 업로드", "Not favorited" : "즐겨찾기에 없음", "An error occurred while trying to update the tags" : "태그를 업데이트하는 중 오류 발생", + "Upload (max. %s)" : "업로드(최대 %s)", "You don't have permission to upload or create files here." : "여기에 파일을 업로드하거나 만들 권한이 없습니다.", "Storage informations" : "저장소 정보", "Choose file" : "파일 선택", diff --git a/apps/files/l10n/ko.json b/apps/files/l10n/ko.json index 10b720f7f8c..13361f97b8d 100644 --- a/apps/files/l10n/ko.json +++ b/apps/files/l10n/ko.json @@ -52,7 +52,6 @@ "Favorite files" : "즐겨찾는 파일", "No favorites" : "즐겨찾는 항목 없음", "More favorites" : "즐겨찾기 더 불러오기", - "Upload (max. %s)" : "업로드(최대 %s)", "Accept" : "수락", "Reject" : "거절", "Incoming ownership transfer from {user}" : "{user}의 소유권 이전 요청", @@ -417,6 +416,7 @@ "Upload file" : "파일 업로드", "Not favorited" : "즐겨찾기에 없음", "An error occurred while trying to update the tags" : "태그를 업데이트하는 중 오류 발생", + "Upload (max. %s)" : "업로드(최대 %s)", "You don't have permission to upload or create files here." : "여기에 파일을 업로드하거나 만들 권한이 없습니다.", "Storage informations" : "저장소 정보", "Choose file" : "파일 선택", diff --git a/apps/files/l10n/lt_LT.js b/apps/files/l10n/lt_LT.js index e0687e17887..623d9dae5d5 100644 --- a/apps/files/l10n/lt_LT.js +++ b/apps/files/l10n/lt_LT.js @@ -49,7 +49,6 @@ OC.L10N.register( "The destination path does not exist: %1$s" : "Paskirties kelio nėra: %1$s", "You do not have permission to create a file at the specified location" : "Jūs neturite leidimo sukurti failą nurodytoje vietoje", "No favorites" : "Nėra mėgstamiausių", - "Upload (max. %s)" : "Įkelti (maks. %s)", "Accept" : "Priimti", "Reject" : "Atmesti", "Incoming ownership transfer from {user}" : "Gaunamasis nuosavybės perdavimas nuo {user}", @@ -309,6 +308,7 @@ OC.L10N.register( "Upload file" : "Įkelti failą", "Not favorited" : "Nepažymėtas mėgstamu", "An error occurred while trying to update the tags" : "Įvyko klaida bandant atnaujinti žymas", + "Upload (max. %s)" : "Įkelti (maks. %s)", "Storage informations" : "Informacija apie saugyklą", "Go to the previous folder" : "Eiti į ankstesnį aplanką", "Unable to change the favourite state of the file" : "Nepavyksta pakeisti failo Lankomiausiųjų būsenos", diff --git a/apps/files/l10n/lt_LT.json b/apps/files/l10n/lt_LT.json index c118a408467..f87535804a2 100644 --- a/apps/files/l10n/lt_LT.json +++ b/apps/files/l10n/lt_LT.json @@ -47,7 +47,6 @@ "The destination path does not exist: %1$s" : "Paskirties kelio nėra: %1$s", "You do not have permission to create a file at the specified location" : "Jūs neturite leidimo sukurti failą nurodytoje vietoje", "No favorites" : "Nėra mėgstamiausių", - "Upload (max. %s)" : "Įkelti (maks. %s)", "Accept" : "Priimti", "Reject" : "Atmesti", "Incoming ownership transfer from {user}" : "Gaunamasis nuosavybės perdavimas nuo {user}", @@ -307,6 +306,7 @@ "Upload file" : "Įkelti failą", "Not favorited" : "Nepažymėtas mėgstamu", "An error occurred while trying to update the tags" : "Įvyko klaida bandant atnaujinti žymas", + "Upload (max. %s)" : "Įkelti (maks. %s)", "Storage informations" : "Informacija apie saugyklą", "Go to the previous folder" : "Eiti į ankstesnį aplanką", "Unable to change the favourite state of the file" : "Nepavyksta pakeisti failo Lankomiausiųjų būsenos", diff --git a/apps/files/l10n/mk.js b/apps/files/l10n/mk.js index 0eebc8c5376..0f2c5742554 100644 --- a/apps/files/l10n/mk.js +++ b/apps/files/l10n/mk.js @@ -53,7 +53,6 @@ OC.L10N.register( "Favorite files" : "Омилени датотеки", "No favorites" : "Нема омилени", "More favorites" : "Повеќе омилени", - "Upload (max. %s)" : "Префрлање (макс. %s)", "Accept" : "Прифати", "Reject" : "Одбиј", "Incoming ownership transfer from {user}" : "Барање за трансфер на сопственост од {user}", @@ -320,6 +319,7 @@ OC.L10N.register( "Upload file" : "Прикачи датотека", "Not favorited" : "Нема фаворити", "An error occurred while trying to update the tags" : "Се случи грешка додека се обидувавте да ги освежите таговите", + "Upload (max. %s)" : "Префрлање (макс. %s)", "Storage informations" : "Информации за складиштето", "Choose file" : "Избери датотека", "Go to the previous folder" : "Врати се на предходната папка", diff --git a/apps/files/l10n/mk.json b/apps/files/l10n/mk.json index 4c970bba5ff..f1cde29917e 100644 --- a/apps/files/l10n/mk.json +++ b/apps/files/l10n/mk.json @@ -51,7 +51,6 @@ "Favorite files" : "Омилени датотеки", "No favorites" : "Нема омилени", "More favorites" : "Повеќе омилени", - "Upload (max. %s)" : "Префрлање (макс. %s)", "Accept" : "Прифати", "Reject" : "Одбиј", "Incoming ownership transfer from {user}" : "Барање за трансфер на сопственост од {user}", @@ -318,6 +317,7 @@ "Upload file" : "Прикачи датотека", "Not favorited" : "Нема фаворити", "An error occurred while trying to update the tags" : "Се случи грешка додека се обидувавте да ги освежите таговите", + "Upload (max. %s)" : "Префрлање (макс. %s)", "Storage informations" : "Информации за складиштето", "Choose file" : "Избери датотека", "Go to the previous folder" : "Врати се на предходната папка", diff --git a/apps/files/l10n/nb.js b/apps/files/l10n/nb.js index c05d7df2dba..d1f6d100edc 100644 --- a/apps/files/l10n/nb.js +++ b/apps/files/l10n/nb.js @@ -52,7 +52,6 @@ OC.L10N.register( "Favorite files" : "Favorittfiler", "No favorites" : "Ingen favoritter", "More favorites" : "Flere favoritter", - "Upload (max. %s)" : "Opplasting (maks %s)", "Accept" : "Aksepter", "Reject" : "Avvis", "Incoming ownership transfer from {user}" : "Ny eierskapsoverføring fra {user}", @@ -400,6 +399,7 @@ OC.L10N.register( "Upload file" : "Last opp fil", "Not favorited" : "Ikke i favoritter", "An error occurred while trying to update the tags" : "En feil oppsto under oppdatering av merkelappene", + "Upload (max. %s)" : "Opplasting (maks %s)", "Storage informations" : "Informasjon om lagring", "Choose file" : "Velg fil", "Go to the previous folder" : "Gå fil forrige mappe", diff --git a/apps/files/l10n/nb.json b/apps/files/l10n/nb.json index 20d1464f445..86236c006a4 100644 --- a/apps/files/l10n/nb.json +++ b/apps/files/l10n/nb.json @@ -50,7 +50,6 @@ "Favorite files" : "Favorittfiler", "No favorites" : "Ingen favoritter", "More favorites" : "Flere favoritter", - "Upload (max. %s)" : "Opplasting (maks %s)", "Accept" : "Aksepter", "Reject" : "Avvis", "Incoming ownership transfer from {user}" : "Ny eierskapsoverføring fra {user}", @@ -398,6 +397,7 @@ "Upload file" : "Last opp fil", "Not favorited" : "Ikke i favoritter", "An error occurred while trying to update the tags" : "En feil oppsto under oppdatering av merkelappene", + "Upload (max. %s)" : "Opplasting (maks %s)", "Storage informations" : "Informasjon om lagring", "Choose file" : "Velg fil", "Go to the previous folder" : "Gå fil forrige mappe", diff --git a/apps/files/l10n/nl.js b/apps/files/l10n/nl.js index f1576a4e645..9a0b5caa5f0 100644 --- a/apps/files/l10n/nl.js +++ b/apps/files/l10n/nl.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Favoriete bestanden", "No favorites" : "Geen favorieten", "More favorites" : "Meer favorieten", - "Upload (max. %s)" : "Upload (max. %s)", "Accept" : "Accepteren", "Reject" : "Afwijzen", "Incoming ownership transfer from {user}" : "Inkomend verzoek voor eigendomsoverdracht van {user}", @@ -430,6 +429,7 @@ OC.L10N.register( "Upload file" : "Bestand uploaden", "Not favorited" : "Niet in favorieten", "An error occurred while trying to update the tags" : "Er trad een fout op bij je poging om de tags bij te werken", + "Upload (max. %s)" : "Upload (max. %s)", "You don't have permission to upload or create files here." : "Je hebt geen toestemming om hier bestanden te uploaden of aan te maken.", "Storage informations" : "Opslaginformatie", "Choose file" : "Kies bestand", diff --git a/apps/files/l10n/nl.json b/apps/files/l10n/nl.json index edbd2421acb..59e3501d036 100644 --- a/apps/files/l10n/nl.json +++ b/apps/files/l10n/nl.json @@ -52,7 +52,6 @@ "Favorite files" : "Favoriete bestanden", "No favorites" : "Geen favorieten", "More favorites" : "Meer favorieten", - "Upload (max. %s)" : "Upload (max. %s)", "Accept" : "Accepteren", "Reject" : "Afwijzen", "Incoming ownership transfer from {user}" : "Inkomend verzoek voor eigendomsoverdracht van {user}", @@ -428,6 +427,7 @@ "Upload file" : "Bestand uploaden", "Not favorited" : "Niet in favorieten", "An error occurred while trying to update the tags" : "Er trad een fout op bij je poging om de tags bij te werken", + "Upload (max. %s)" : "Upload (max. %s)", "You don't have permission to upload or create files here." : "Je hebt geen toestemming om hier bestanden te uploaden of aan te maken.", "Storage informations" : "Opslaginformatie", "Choose file" : "Kies bestand", diff --git a/apps/files/l10n/pl.js b/apps/files/l10n/pl.js index d2d3541974d..d3f16e7a1c0 100644 --- a/apps/files/l10n/pl.js +++ b/apps/files/l10n/pl.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Ulubione pliki", "No favorites" : "Brak ulubionych", "More favorites" : "Więcej ulubionych", - "Upload (max. %s)" : "Wysyłanie (maks. %s)", "Accept" : "Akceptuj", "Reject" : "Odrzuć", "Incoming ownership transfer from {user}" : "Przychodzące przeniesienie własności od {user}", @@ -71,6 +70,7 @@ OC.L10N.register( "Transferred from %1$s on %2$s" : "Przeniesiono z %1$s dnia %2$s", "Files compatibility" : "Zgodność plików", "Allow to restrict filenames to ensure files can be synced with all clients. By default all filenames valid on POSIX (e.g. Linux or macOS) are allowed." : "Zezwalaj na ograniczenie nazw plików, aby zapewnić synchronizację plików ze wszystkimi klientami. Domyślnie dozwolone są wszystkie nazwy plików obowiązujące w systemie POSIX (np. Linux lub macOS).", + "After enabling the Windows compatible filenames, existing files cannot be modified anymore but can be renamed to valid new names by their owner." : "Po włączeniu nazw plików zgodnych z systemem Windows, istniejące pliki nie można już modyfikować, ale ich właściciel może zmienić ich nazwy na nowe, prawidłowe.", "It is also possible to migrate files automatically after enabling this setting, please refer to the documentation about the occ command." : "Możliwe jest również automatyczne migrowanie plików po włączeniu tego ustawienia. Więcej informacji można znaleźć w dokumentacji polecenia occ.", "Enforce Windows compatibility" : "Wymuszaj zgodność z systemem Windows", "This will block filenames not valid on Windows systems, like using reserved names or special characters. But this will not enforce compatibility of case sensitivity." : "Spowoduje to zablokowanie nazw plików nieprawidłowych w systemach Windows, na przykład nazw zastrzeżonych lub znaków specjalnych. Nie wymusi to jednak zgodności z rozróżnianiem wielkości liter.", @@ -97,6 +97,11 @@ OC.L10N.register( "Renamed \"{oldName}\" to \"{newName}\"" : "Zmieniono nazwę \"{oldName}\" na \"{newName}\"", "Rename file" : "Zmień nazwę pliku", "Folder" : "Katalog", + "Unknown file type" : "Nieznany typ pliku", + "{ext} image" : "{ext} zdjęcie", + "{ext} video" : "{ext} wideo", + "{ext} audio" : "{ext} dźwiękowy", + "{ext} text" : "{ext} tekstowy", "Pending" : "Oczekujące", "Unknown date" : "Nieznana data", "Clear filter" : "Wyczyść filtr", @@ -107,6 +112,7 @@ OC.L10N.register( "Total rows summary" : "Podsumowanie wszystkich wierszy", "Toggle selection for all files and folders" : "Przełącz zaznaczenie dla wszystkich plików i katalogów", "Name" : "Nazwa", + "File type" : "Typ pliku", "Size" : "Rozmiar", "\"{displayName}\" failed on some elements" : "\"{displayName}\" nie powiodło się w niektórych elementach", "\"{displayName}\" batch action executed successfully" : "Akcja wsadowa \"{displayName}\" została wykonana pomyślnie", @@ -185,6 +191,7 @@ OC.L10N.register( "Sort favorites first" : "Najpierw sortuj ulubione", "Sort folders before files" : "Sortuj katalogi przed plikami", "Show hidden files" : "Pokaż ukryte pliki", + "Show file type column" : "Pokaż kolumnę typu pliku", "Crop image previews" : "Przytnij podglądy obrazów", "Enable the grid view" : "Włącz widok siatki", "Enable folder tree" : "Włącz drzewo katalogów", @@ -434,6 +441,7 @@ OC.L10N.register( "Upload file" : "Wyślij plik", "Not favorited" : "Wyłączone z ulubionych", "An error occurred while trying to update the tags" : "Wystąpił błąd podczas próby aktualizacji etykiet", + "Upload (max. %s)" : "Wysyłanie (maks. %s)", "You don't have permission to upload or create files here." : "Nie masz uprawnień do wysyłania lub tworzenia plików w tym miejscu.", "Storage informations" : "Informacje o przechowywaniu", "Choose file" : "Wybierz plik", diff --git a/apps/files/l10n/pl.json b/apps/files/l10n/pl.json index 18d1ea4ba19..762872a0dab 100644 --- a/apps/files/l10n/pl.json +++ b/apps/files/l10n/pl.json @@ -52,7 +52,6 @@ "Favorite files" : "Ulubione pliki", "No favorites" : "Brak ulubionych", "More favorites" : "Więcej ulubionych", - "Upload (max. %s)" : "Wysyłanie (maks. %s)", "Accept" : "Akceptuj", "Reject" : "Odrzuć", "Incoming ownership transfer from {user}" : "Przychodzące przeniesienie własności od {user}", @@ -69,6 +68,7 @@ "Transferred from %1$s on %2$s" : "Przeniesiono z %1$s dnia %2$s", "Files compatibility" : "Zgodność plików", "Allow to restrict filenames to ensure files can be synced with all clients. By default all filenames valid on POSIX (e.g. Linux or macOS) are allowed." : "Zezwalaj na ograniczenie nazw plików, aby zapewnić synchronizację plików ze wszystkimi klientami. Domyślnie dozwolone są wszystkie nazwy plików obowiązujące w systemie POSIX (np. Linux lub macOS).", + "After enabling the Windows compatible filenames, existing files cannot be modified anymore but can be renamed to valid new names by their owner." : "Po włączeniu nazw plików zgodnych z systemem Windows, istniejące pliki nie można już modyfikować, ale ich właściciel może zmienić ich nazwy na nowe, prawidłowe.", "It is also possible to migrate files automatically after enabling this setting, please refer to the documentation about the occ command." : "Możliwe jest również automatyczne migrowanie plików po włączeniu tego ustawienia. Więcej informacji można znaleźć w dokumentacji polecenia occ.", "Enforce Windows compatibility" : "Wymuszaj zgodność z systemem Windows", "This will block filenames not valid on Windows systems, like using reserved names or special characters. But this will not enforce compatibility of case sensitivity." : "Spowoduje to zablokowanie nazw plików nieprawidłowych w systemach Windows, na przykład nazw zastrzeżonych lub znaków specjalnych. Nie wymusi to jednak zgodności z rozróżnianiem wielkości liter.", @@ -95,6 +95,11 @@ "Renamed \"{oldName}\" to \"{newName}\"" : "Zmieniono nazwę \"{oldName}\" na \"{newName}\"", "Rename file" : "Zmień nazwę pliku", "Folder" : "Katalog", + "Unknown file type" : "Nieznany typ pliku", + "{ext} image" : "{ext} zdjęcie", + "{ext} video" : "{ext} wideo", + "{ext} audio" : "{ext} dźwiękowy", + "{ext} text" : "{ext} tekstowy", "Pending" : "Oczekujące", "Unknown date" : "Nieznana data", "Clear filter" : "Wyczyść filtr", @@ -105,6 +110,7 @@ "Total rows summary" : "Podsumowanie wszystkich wierszy", "Toggle selection for all files and folders" : "Przełącz zaznaczenie dla wszystkich plików i katalogów", "Name" : "Nazwa", + "File type" : "Typ pliku", "Size" : "Rozmiar", "\"{displayName}\" failed on some elements" : "\"{displayName}\" nie powiodło się w niektórych elementach", "\"{displayName}\" batch action executed successfully" : "Akcja wsadowa \"{displayName}\" została wykonana pomyślnie", @@ -183,6 +189,7 @@ "Sort favorites first" : "Najpierw sortuj ulubione", "Sort folders before files" : "Sortuj katalogi przed plikami", "Show hidden files" : "Pokaż ukryte pliki", + "Show file type column" : "Pokaż kolumnę typu pliku", "Crop image previews" : "Przytnij podglądy obrazów", "Enable the grid view" : "Włącz widok siatki", "Enable folder tree" : "Włącz drzewo katalogów", @@ -432,6 +439,7 @@ "Upload file" : "Wyślij plik", "Not favorited" : "Wyłączone z ulubionych", "An error occurred while trying to update the tags" : "Wystąpił błąd podczas próby aktualizacji etykiet", + "Upload (max. %s)" : "Wysyłanie (maks. %s)", "You don't have permission to upload or create files here." : "Nie masz uprawnień do wysyłania lub tworzenia plików w tym miejscu.", "Storage informations" : "Informacje o przechowywaniu", "Choose file" : "Wybierz plik", diff --git a/apps/files/l10n/pt_BR.js b/apps/files/l10n/pt_BR.js index 8e77d1b2bb5..cf3e93c2c61 100644 --- a/apps/files/l10n/pt_BR.js +++ b/apps/files/l10n/pt_BR.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Arquivos favoritos", "No favorites" : "Sem favoritos", "More favorites" : "Mais favoritos", - "Upload (max. %s)" : "Upload (max. %s)", "Accept" : "Aceitar", "Reject" : "Rejeitar", "Incoming ownership transfer from {user}" : "Transferência de propriedade recebida de {user}", @@ -442,6 +441,7 @@ OC.L10N.register( "Upload file" : "Enviar arquivo", "Not favorited" : "Sem favoritos", "An error occurred while trying to update the tags" : "Ocorreu um erro enquanto tentava atualizar as etiquetas", + "Upload (max. %s)" : "Upload (max. %s)", "You don't have permission to upload or create files here." : "Você não tem permissão para carregar ou criar arquivos aqui.", "Storage informations" : "Informações de armazenamento", "Choose file" : "Escolher arquivo", diff --git a/apps/files/l10n/pt_BR.json b/apps/files/l10n/pt_BR.json index 09de897bc56..b04c0f95abc 100644 --- a/apps/files/l10n/pt_BR.json +++ b/apps/files/l10n/pt_BR.json @@ -52,7 +52,6 @@ "Favorite files" : "Arquivos favoritos", "No favorites" : "Sem favoritos", "More favorites" : "Mais favoritos", - "Upload (max. %s)" : "Upload (max. %s)", "Accept" : "Aceitar", "Reject" : "Rejeitar", "Incoming ownership transfer from {user}" : "Transferência de propriedade recebida de {user}", @@ -440,6 +439,7 @@ "Upload file" : "Enviar arquivo", "Not favorited" : "Sem favoritos", "An error occurred while trying to update the tags" : "Ocorreu um erro enquanto tentava atualizar as etiquetas", + "Upload (max. %s)" : "Upload (max. %s)", "You don't have permission to upload or create files here." : "Você não tem permissão para carregar ou criar arquivos aqui.", "Storage informations" : "Informações de armazenamento", "Choose file" : "Escolher arquivo", diff --git a/apps/files/l10n/pt_PT.js b/apps/files/l10n/pt_PT.js index e886d15e416..aa7899cb1af 100644 --- a/apps/files/l10n/pt_PT.js +++ b/apps/files/l10n/pt_PT.js @@ -47,7 +47,6 @@ OC.L10N.register( "Invalid folder path" : "Caminho da pasta inválido", "Folder not found" : "Pasta não encontrada", "No favorites" : "Sem favoritos", - "Upload (max. %s)" : "Envio (máx. %s)", "Accept" : "Aceitar", "Reject" : "Rejeitar", "Incoming ownership transfer from {user}" : "Transferência de propriedade recebida de {user}", @@ -258,6 +257,7 @@ OC.L10N.register( "Upload file" : "Enviar ficheiro", "Not favorited" : "Não favorito", "An error occurred while trying to update the tags" : "Ocorreu um erro ao tentar atualizar as etiquetas", + "Upload (max. %s)" : "Envio (máx. %s)", "{fileCount} files and {folderCount} folders" : "{fileCount} ficheiros e {folderCount} pastas", "Personal Files" : "Ficheiros pessoais", "Text file" : "Ficheiro de Texto", diff --git a/apps/files/l10n/pt_PT.json b/apps/files/l10n/pt_PT.json index fbfd1f8b17e..c4440430255 100644 --- a/apps/files/l10n/pt_PT.json +++ b/apps/files/l10n/pt_PT.json @@ -45,7 +45,6 @@ "Invalid folder path" : "Caminho da pasta inválido", "Folder not found" : "Pasta não encontrada", "No favorites" : "Sem favoritos", - "Upload (max. %s)" : "Envio (máx. %s)", "Accept" : "Aceitar", "Reject" : "Rejeitar", "Incoming ownership transfer from {user}" : "Transferência de propriedade recebida de {user}", @@ -256,6 +255,7 @@ "Upload file" : "Enviar ficheiro", "Not favorited" : "Não favorito", "An error occurred while trying to update the tags" : "Ocorreu um erro ao tentar atualizar as etiquetas", + "Upload (max. %s)" : "Envio (máx. %s)", "{fileCount} files and {folderCount} folders" : "{fileCount} ficheiros e {folderCount} pastas", "Personal Files" : "Ficheiros pessoais", "Text file" : "Ficheiro de Texto", diff --git a/apps/files/l10n/ro.js b/apps/files/l10n/ro.js index e9a3ad15038..af3e0c15499 100644 --- a/apps/files/l10n/ro.js +++ b/apps/files/l10n/ro.js @@ -43,7 +43,6 @@ OC.L10N.register( "A file or folder has been <strong>changed</strong>" : "Un nou fișier sau dosar a fost <strong>modificat</strong>", "A favorite file or folder has been <strong>changed</strong>" : "Un fișier sau dosar favorit a fost <strong>schimbat</strong>", "No favorites" : "Fără favorite", - "Upload (max. %s)" : "Încarcă (max. %s)", "Accept" : "Accept", "Reject" : "Respinge", "Incoming ownership transfer from {user}" : "Se transferă proprietatea de la {user}", @@ -269,6 +268,7 @@ OC.L10N.register( "Upload file" : "Încarcă fișier", "Not favorited" : "Scoate de la favorite", "An error occurred while trying to update the tags" : "A apărut o eroare în timpul actualizării etichetelor", + "Upload (max. %s)" : "Încarcă (max. %s)", "Storage informations" : "Informații despre stocare", "Go to the previous folder" : "Salt la folderul anterior", "Open the files app settings" : "Deschide setările aplicației Fișiere", diff --git a/apps/files/l10n/ro.json b/apps/files/l10n/ro.json index d724774b53d..dd45db7a848 100644 --- a/apps/files/l10n/ro.json +++ b/apps/files/l10n/ro.json @@ -41,7 +41,6 @@ "A file or folder has been <strong>changed</strong>" : "Un nou fișier sau dosar a fost <strong>modificat</strong>", "A favorite file or folder has been <strong>changed</strong>" : "Un fișier sau dosar favorit a fost <strong>schimbat</strong>", "No favorites" : "Fără favorite", - "Upload (max. %s)" : "Încarcă (max. %s)", "Accept" : "Accept", "Reject" : "Respinge", "Incoming ownership transfer from {user}" : "Se transferă proprietatea de la {user}", @@ -267,6 +266,7 @@ "Upload file" : "Încarcă fișier", "Not favorited" : "Scoate de la favorite", "An error occurred while trying to update the tags" : "A apărut o eroare în timpul actualizării etichetelor", + "Upload (max. %s)" : "Încarcă (max. %s)", "Storage informations" : "Informații despre stocare", "Go to the previous folder" : "Salt la folderul anterior", "Open the files app settings" : "Deschide setările aplicației Fișiere", diff --git a/apps/files/l10n/ru.js b/apps/files/l10n/ru.js index 19a5884ab39..cc89e83849f 100644 --- a/apps/files/l10n/ru.js +++ b/apps/files/l10n/ru.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Избранные файлы", "No favorites" : "Нет избранного", "More favorites" : "Больше избранного", - "Upload (max. %s)" : "Загрузка (максимум %s)", "Accept" : "Принять", "Reject" : "Отклонить", "Incoming ownership transfer from {user}" : "Запрос передачи владения от пользователя {user}", @@ -432,6 +431,7 @@ OC.L10N.register( "Upload file" : "Загрузить файл", "Not favorited" : "Не избранное", "An error occurred while trying to update the tags" : "Во время обновления тегов возникла ошибка", + "Upload (max. %s)" : "Загрузка (максимум %s)", "You don't have permission to upload or create files here." : "У вас нет разрешения на загрузку или создание файлов здесь.", "Storage informations" : "Сведения о хранилище", "Choose file" : "Выберите файл", diff --git a/apps/files/l10n/ru.json b/apps/files/l10n/ru.json index a6f6a5d1f86..33e7f77e149 100644 --- a/apps/files/l10n/ru.json +++ b/apps/files/l10n/ru.json @@ -52,7 +52,6 @@ "Favorite files" : "Избранные файлы", "No favorites" : "Нет избранного", "More favorites" : "Больше избранного", - "Upload (max. %s)" : "Загрузка (максимум %s)", "Accept" : "Принять", "Reject" : "Отклонить", "Incoming ownership transfer from {user}" : "Запрос передачи владения от пользователя {user}", @@ -430,6 +429,7 @@ "Upload file" : "Загрузить файл", "Not favorited" : "Не избранное", "An error occurred while trying to update the tags" : "Во время обновления тегов возникла ошибка", + "Upload (max. %s)" : "Загрузка (максимум %s)", "You don't have permission to upload or create files here." : "У вас нет разрешения на загрузку или создание файлов здесь.", "Storage informations" : "Сведения о хранилище", "Choose file" : "Выберите файл", diff --git a/apps/files/l10n/sc.js b/apps/files/l10n/sc.js index c069340f269..506fa00892b 100644 --- a/apps/files/l10n/sc.js +++ b/apps/files/l10n/sc.js @@ -42,7 +42,6 @@ OC.L10N.register( "Files" : "Archìvios", "A file or folder has been <strong>changed</strong>" : "Ant <strong>cambiadu</strong> un'archìviu o una cartella", "A favorite file or folder has been <strong>changed</strong>" : "Ant <strong>cambiadu</strong>un'archìviu o una cartella preferida", - "Upload (max. %s)" : "Càrriga (max. %s)", "Accept" : "Atzeta", "Reject" : "Refuda", "Incoming ownership transfer from {user}" : "Tràmuda de propriedade in intrada dae {user}", @@ -280,6 +279,7 @@ OC.L10N.register( "Upload file" : "Càrriga archìviu", "Not favorited" : "Non preferidu", "An error occurred while trying to update the tags" : "B'at àpidu un'errore proende a agiornare is etichetas", + "Upload (max. %s)" : "Càrriga (max. %s)", "Storage informations" : "Informatziones de s'archiviatzione", "Choose file" : "Sèbera un'archìviu", "Go to the previous folder" : "Bae a sa cartella pretzedente", diff --git a/apps/files/l10n/sc.json b/apps/files/l10n/sc.json index 3966e3006c1..825441d33f2 100644 --- a/apps/files/l10n/sc.json +++ b/apps/files/l10n/sc.json @@ -40,7 +40,6 @@ "Files" : "Archìvios", "A file or folder has been <strong>changed</strong>" : "Ant <strong>cambiadu</strong> un'archìviu o una cartella", "A favorite file or folder has been <strong>changed</strong>" : "Ant <strong>cambiadu</strong>un'archìviu o una cartella preferida", - "Upload (max. %s)" : "Càrriga (max. %s)", "Accept" : "Atzeta", "Reject" : "Refuda", "Incoming ownership transfer from {user}" : "Tràmuda de propriedade in intrada dae {user}", @@ -278,6 +277,7 @@ "Upload file" : "Càrriga archìviu", "Not favorited" : "Non preferidu", "An error occurred while trying to update the tags" : "B'at àpidu un'errore proende a agiornare is etichetas", + "Upload (max. %s)" : "Càrriga (max. %s)", "Storage informations" : "Informatziones de s'archiviatzione", "Choose file" : "Sèbera un'archìviu", "Go to the previous folder" : "Bae a sa cartella pretzedente", diff --git a/apps/files/l10n/sk.js b/apps/files/l10n/sk.js index 96931816ccb..d6a227a745e 100644 --- a/apps/files/l10n/sk.js +++ b/apps/files/l10n/sk.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Obľúbené súbory", "No favorites" : "Žiadne obľúbené", "More favorites" : "Viac obľúbených", - "Upload (max. %s)" : "Nahrať (max. %s)", "Accept" : "Prijať", "Reject" : "Odmietnuť", "Incoming ownership transfer from {user}" : "Prichádzajúci prevod vlastníctva od {user}", @@ -432,6 +431,7 @@ OC.L10N.register( "Upload file" : "Nahrať súbor", "Not favorited" : "Nie je obľúbený", "An error occurred while trying to update the tags" : "Pri pokuse o aktualizáciu štítkov došlo k chybe", + "Upload (max. %s)" : "Nahrať (max. %s)", "You don't have permission to upload or create files here." : "Nemáte oprávnenie nahrávať alebo vytvárať súbory v tomto mieste.", "Storage informations" : "Úložiskové informácie", "Choose file" : "Vybrať súbor", diff --git a/apps/files/l10n/sk.json b/apps/files/l10n/sk.json index c7959344aeb..4f18cb54092 100644 --- a/apps/files/l10n/sk.json +++ b/apps/files/l10n/sk.json @@ -52,7 +52,6 @@ "Favorite files" : "Obľúbené súbory", "No favorites" : "Žiadne obľúbené", "More favorites" : "Viac obľúbených", - "Upload (max. %s)" : "Nahrať (max. %s)", "Accept" : "Prijať", "Reject" : "Odmietnuť", "Incoming ownership transfer from {user}" : "Prichádzajúci prevod vlastníctva od {user}", @@ -430,6 +429,7 @@ "Upload file" : "Nahrať súbor", "Not favorited" : "Nie je obľúbený", "An error occurred while trying to update the tags" : "Pri pokuse o aktualizáciu štítkov došlo k chybe", + "Upload (max. %s)" : "Nahrať (max. %s)", "You don't have permission to upload or create files here." : "Nemáte oprávnenie nahrávať alebo vytvárať súbory v tomto mieste.", "Storage informations" : "Úložiskové informácie", "Choose file" : "Vybrať súbor", diff --git a/apps/files/l10n/sl.js b/apps/files/l10n/sl.js index 8d0f4ad1972..a2c227228db 100644 --- a/apps/files/l10n/sl.js +++ b/apps/files/l10n/sl.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Priljubljene datoteke", "No favorites" : "Ni priljubljenih datotek", "More favorites" : "Več priljubljenih", - "Upload (max. %s)" : "Pošiljanje (omejitev %s)", "Accept" : "Sprejmi", "Reject" : "Zavrni", "Incoming ownership transfer from {user}" : "Vpisana je zahteva za prenos lastništva uporabnika {user}", @@ -435,6 +434,7 @@ OC.L10N.register( "Upload file" : "Pošlji datoteko", "Not favorited" : "Ni priljubljeno", "An error occurred while trying to update the tags" : "Prišlo je do napake med posodabljanjem oznak", + "Upload (max. %s)" : "Pošiljanje (omejitev %s)", "You don't have permission to upload or create files here." : "Nimate pravic za nalaganje ali ustvarjanje datotek na tem mestu.", "Storage informations" : "Podrobnosti shrambe", "Choose file" : "Izbor datotek", diff --git a/apps/files/l10n/sl.json b/apps/files/l10n/sl.json index 579b32d200f..0b515cbb493 100644 --- a/apps/files/l10n/sl.json +++ b/apps/files/l10n/sl.json @@ -52,7 +52,6 @@ "Favorite files" : "Priljubljene datoteke", "No favorites" : "Ni priljubljenih datotek", "More favorites" : "Več priljubljenih", - "Upload (max. %s)" : "Pošiljanje (omejitev %s)", "Accept" : "Sprejmi", "Reject" : "Zavrni", "Incoming ownership transfer from {user}" : "Vpisana je zahteva za prenos lastništva uporabnika {user}", @@ -433,6 +432,7 @@ "Upload file" : "Pošlji datoteko", "Not favorited" : "Ni priljubljeno", "An error occurred while trying to update the tags" : "Prišlo je do napake med posodabljanjem oznak", + "Upload (max. %s)" : "Pošiljanje (omejitev %s)", "You don't have permission to upload or create files here." : "Nimate pravic za nalaganje ali ustvarjanje datotek na tem mestu.", "Storage informations" : "Podrobnosti shrambe", "Choose file" : "Izbor datotek", diff --git a/apps/files/l10n/sr.js b/apps/files/l10n/sr.js index 472eed0ffb4..a0afae068cc 100644 --- a/apps/files/l10n/sr.js +++ b/apps/files/l10n/sr.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Омиљени фајлови", "No favorites" : "Нема омиљених", "More favorites" : "Још омиљених", - "Upload (max. %s)" : "Отпремање (макс. %s)", "Accept" : "Прихвати", "Reject" : "Одбаци", "Incoming ownership transfer from {user}" : "Надолазећи пренос власништва од корисника {user}", @@ -71,6 +70,7 @@ OC.L10N.register( "Transferred from %1$s on %2$s" : "Пренесено са %1$s на %2$s", "Files compatibility" : "Компатибилност фајлова", "Allow to restrict filenames to ensure files can be synced with all clients. By default all filenames valid on POSIX (e.g. Linux or macOS) are allowed." : "Дозвољава се ограничавање имена фајлова тако да сви клијенти могу да их синхронизују. Подразумевано се дозвољавају сва имена фајлова која су исправна на POSIX системима (нпр. Linux или macOS).", + "After enabling the Windows compatible filenames, existing files cannot be modified anymore but can be renamed to valid new names by their owner." : "Када се укључе Windows компатибилна имена фајлова, постојећи фајлови се више неће моћи мењати, али њихов власник може да им промени име на исправно ново име.", "It is also possible to migrate files automatically after enabling this setting, please refer to the documentation about the occ command." : "Фајлови такође могу аутоматски да се мигрирају након укључивања овог подешавања, молимо вас да погледате документацију у вези са occ командом.", "Enforce Windows compatibility" : "Форсирај Windows компатибилност", "This will block filenames not valid on Windows systems, like using reserved names or special characters. But this will not enforce compatibility of case sensitivity." : "Ово ће да блокира имена фајлова која су неисправна на Windows системима, као што су она која користе резервисана имена или специјалне карактере. Али ово неће форсирати компатибилност разликовања малих и великих слова.", @@ -97,6 +97,11 @@ OC.L10N.register( "Renamed \"{oldName}\" to \"{newName}\"" : "„{oldName}” је промењено на „{newName}”", "Rename file" : "Промени назив фајла", "Folder" : "Фасцикла", + "Unknown file type" : "Непознат тип фајла", + "{ext} image" : "{ext} слика", + "{ext} video" : "{ext} видео", + "{ext} audio" : "{ext} аудио", + "{ext} text" : "{ext} текст", "Pending" : "На чекању", "Unknown date" : "Непознат датум", "Clear filter" : "Очисти филтер", @@ -107,6 +112,7 @@ OC.L10N.register( "Total rows summary" : "Резиме укупног броја редова", "Toggle selection for all files and folders" : "Укљ./искљ. избор за све фајлове и фолдере", "Name" : "Назив", + "File type" : "Тип фајла", "Size" : "Величина", "\"{displayName}\" failed on some elements" : "„{displayName}” није успело на неким елементима", "\"{displayName}\" batch action executed successfully" : "Пакетна акција „{displayName}” се успешно извршила", @@ -185,6 +191,7 @@ OC.L10N.register( "Sort favorites first" : "Сортирај прво омиљене", "Sort folders before files" : "Поређај фолдере испред фајлова", "Show hidden files" : "Прикажи скривене фајлове", + "Show file type column" : "Прикажи колону са типом фајла", "Crop image previews" : "Опсецање прегледа слика", "Enable the grid view" : "Укључи приказ мреже", "Enable folder tree" : "Укључи стабло фолдера", @@ -434,6 +441,7 @@ OC.L10N.register( "Upload file" : "Отпреми фајл", "Not favorited" : "Није омиљено", "An error occurred while trying to update the tags" : "Дошло је до грешке при покушају ажурирања ознака", + "Upload (max. %s)" : "Отпремање (макс. %s)", "You don't have permission to upload or create files here." : "Немате дозволу да овде отпремите или креирате фајлове.", "Storage informations" : "Информације о складишту", "Choose file" : "Изаберите фајл", diff --git a/apps/files/l10n/sr.json b/apps/files/l10n/sr.json index 8d9da0774b6..4e7357d6946 100644 --- a/apps/files/l10n/sr.json +++ b/apps/files/l10n/sr.json @@ -52,7 +52,6 @@ "Favorite files" : "Омиљени фајлови", "No favorites" : "Нема омиљених", "More favorites" : "Још омиљених", - "Upload (max. %s)" : "Отпремање (макс. %s)", "Accept" : "Прихвати", "Reject" : "Одбаци", "Incoming ownership transfer from {user}" : "Надолазећи пренос власништва од корисника {user}", @@ -69,6 +68,7 @@ "Transferred from %1$s on %2$s" : "Пренесено са %1$s на %2$s", "Files compatibility" : "Компатибилност фајлова", "Allow to restrict filenames to ensure files can be synced with all clients. By default all filenames valid on POSIX (e.g. Linux or macOS) are allowed." : "Дозвољава се ограничавање имена фајлова тако да сви клијенти могу да их синхронизују. Подразумевано се дозвољавају сва имена фајлова која су исправна на POSIX системима (нпр. Linux или macOS).", + "After enabling the Windows compatible filenames, existing files cannot be modified anymore but can be renamed to valid new names by their owner." : "Када се укључе Windows компатибилна имена фајлова, постојећи фајлови се више неће моћи мењати, али њихов власник може да им промени име на исправно ново име.", "It is also possible to migrate files automatically after enabling this setting, please refer to the documentation about the occ command." : "Фајлови такође могу аутоматски да се мигрирају након укључивања овог подешавања, молимо вас да погледате документацију у вези са occ командом.", "Enforce Windows compatibility" : "Форсирај Windows компатибилност", "This will block filenames not valid on Windows systems, like using reserved names or special characters. But this will not enforce compatibility of case sensitivity." : "Ово ће да блокира имена фајлова која су неисправна на Windows системима, као што су она која користе резервисана имена или специјалне карактере. Али ово неће форсирати компатибилност разликовања малих и великих слова.", @@ -95,6 +95,11 @@ "Renamed \"{oldName}\" to \"{newName}\"" : "„{oldName}” је промењено на „{newName}”", "Rename file" : "Промени назив фајла", "Folder" : "Фасцикла", + "Unknown file type" : "Непознат тип фајла", + "{ext} image" : "{ext} слика", + "{ext} video" : "{ext} видео", + "{ext} audio" : "{ext} аудио", + "{ext} text" : "{ext} текст", "Pending" : "На чекању", "Unknown date" : "Непознат датум", "Clear filter" : "Очисти филтер", @@ -105,6 +110,7 @@ "Total rows summary" : "Резиме укупног броја редова", "Toggle selection for all files and folders" : "Укљ./искљ. избор за све фајлове и фолдере", "Name" : "Назив", + "File type" : "Тип фајла", "Size" : "Величина", "\"{displayName}\" failed on some elements" : "„{displayName}” није успело на неким елементима", "\"{displayName}\" batch action executed successfully" : "Пакетна акција „{displayName}” се успешно извршила", @@ -183,6 +189,7 @@ "Sort favorites first" : "Сортирај прво омиљене", "Sort folders before files" : "Поређај фолдере испред фајлова", "Show hidden files" : "Прикажи скривене фајлове", + "Show file type column" : "Прикажи колону са типом фајла", "Crop image previews" : "Опсецање прегледа слика", "Enable the grid view" : "Укључи приказ мреже", "Enable folder tree" : "Укључи стабло фолдера", @@ -432,6 +439,7 @@ "Upload file" : "Отпреми фајл", "Not favorited" : "Није омиљено", "An error occurred while trying to update the tags" : "Дошло је до грешке при покушају ажурирања ознака", + "Upload (max. %s)" : "Отпремање (макс. %s)", "You don't have permission to upload or create files here." : "Немате дозволу да овде отпремите или креирате фајлове.", "Storage informations" : "Информације о складишту", "Choose file" : "Изаберите фајл", diff --git a/apps/files/l10n/sv.js b/apps/files/l10n/sv.js index ad6b2e96bf4..7953398ec9a 100644 --- a/apps/files/l10n/sv.js +++ b/apps/files/l10n/sv.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Favoritfiler", "No favorites" : "Inga favoriter", "More favorites" : "Fler favoriter", - "Upload (max. %s)" : "Ladda upp (högst %s)", "Accept" : "Acceptera", "Reject" : "Avvisa", "Incoming ownership transfer from {user}" : "Inkommande ägaröverföring från {user}", @@ -442,6 +441,7 @@ OC.L10N.register( "Upload file" : "Ladda upp fil", "Not favorited" : "Inte favoriserade", "An error occurred while trying to update the tags" : "Fel vid uppdatering av taggarna", + "Upload (max. %s)" : "Ladda upp (högst %s)", "You don't have permission to upload or create files here." : "Du har inte behörighet att ladda upp eller skapa filer här.", "Storage informations" : "Lagringsinformation", "Choose file" : "Välj fil", diff --git a/apps/files/l10n/sv.json b/apps/files/l10n/sv.json index 514dd77aab7..dc764721f91 100644 --- a/apps/files/l10n/sv.json +++ b/apps/files/l10n/sv.json @@ -52,7 +52,6 @@ "Favorite files" : "Favoritfiler", "No favorites" : "Inga favoriter", "More favorites" : "Fler favoriter", - "Upload (max. %s)" : "Ladda upp (högst %s)", "Accept" : "Acceptera", "Reject" : "Avvisa", "Incoming ownership transfer from {user}" : "Inkommande ägaröverföring från {user}", @@ -440,6 +439,7 @@ "Upload file" : "Ladda upp fil", "Not favorited" : "Inte favoriserade", "An error occurred while trying to update the tags" : "Fel vid uppdatering av taggarna", + "Upload (max. %s)" : "Ladda upp (högst %s)", "You don't have permission to upload or create files here." : "Du har inte behörighet att ladda upp eller skapa filer här.", "Storage informations" : "Lagringsinformation", "Choose file" : "Välj fil", diff --git a/apps/files/l10n/th.js b/apps/files/l10n/th.js index c6bef3b89d3..297a116b71e 100644 --- a/apps/files/l10n/th.js +++ b/apps/files/l10n/th.js @@ -44,7 +44,6 @@ OC.L10N.register( "A file or folder has been <strong>changed</strong>" : "มีไฟล์หรือโฟลเดอร์ที่มีการ<strong>เปลี่ยนแปลง</strong>", "A favorite file or folder has been <strong>changed</strong>" : "มีไฟล์หรือโฟลเดอร์ในรายการโปรดที่มีการ<strong>เปลี่ยนแปลง</strong>", "No favorites" : "ยังไม่มีรายการโปรด", - "Upload (max. %s)" : "อัปโหลด (สูงสุด %s)", "Accept" : "ยอมรับ", "Reject" : "ปฏิเสธ", "Incoming ownership transfer from {user}" : "คำขอการโอนย้ายความเป็นเจ้าของจาก {user}", @@ -238,6 +237,7 @@ OC.L10N.register( "Upload file" : "อัปโหลดไฟล์", "Not favorited" : "ไม่ได้เป็นรายการโปรด", "An error occurred while trying to update the tags" : "เกิดข้อผิดพลาดขณะกำลังพยายามอัปเดตแท็ก", + "Upload (max. %s)" : "อัปโหลด (สูงสุด %s)", "Storage informations" : "ข้อมูลพื้นที่จัดเก็บ", "Open the files app settings" : "เปิดการตั้งค่าแอปไฟล์", "Unable to change the favourite state of the file" : "ไม่สามารถเปลี่ยนสถานะรายการโปรดของไฟล์", diff --git a/apps/files/l10n/th.json b/apps/files/l10n/th.json index 08b39c447ec..6cdaaf5ebf0 100644 --- a/apps/files/l10n/th.json +++ b/apps/files/l10n/th.json @@ -42,7 +42,6 @@ "A file or folder has been <strong>changed</strong>" : "มีไฟล์หรือโฟลเดอร์ที่มีการ<strong>เปลี่ยนแปลง</strong>", "A favorite file or folder has been <strong>changed</strong>" : "มีไฟล์หรือโฟลเดอร์ในรายการโปรดที่มีการ<strong>เปลี่ยนแปลง</strong>", "No favorites" : "ยังไม่มีรายการโปรด", - "Upload (max. %s)" : "อัปโหลด (สูงสุด %s)", "Accept" : "ยอมรับ", "Reject" : "ปฏิเสธ", "Incoming ownership transfer from {user}" : "คำขอการโอนย้ายความเป็นเจ้าของจาก {user}", @@ -236,6 +235,7 @@ "Upload file" : "อัปโหลดไฟล์", "Not favorited" : "ไม่ได้เป็นรายการโปรด", "An error occurred while trying to update the tags" : "เกิดข้อผิดพลาดขณะกำลังพยายามอัปเดตแท็ก", + "Upload (max. %s)" : "อัปโหลด (สูงสุด %s)", "Storage informations" : "ข้อมูลพื้นที่จัดเก็บ", "Open the files app settings" : "เปิดการตั้งค่าแอปไฟล์", "Unable to change the favourite state of the file" : "ไม่สามารถเปลี่ยนสถานะรายการโปรดของไฟล์", diff --git a/apps/files/l10n/tr.js b/apps/files/l10n/tr.js index caa474b97b0..a6b72ef1f00 100644 --- a/apps/files/l10n/tr.js +++ b/apps/files/l10n/tr.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Sık kullanılan dosyalar", "No favorites" : "Sık kullanılan bir öge yok", "More favorites" : "Diğer sık kullanılanlar", - "Upload (max. %s)" : "Yükle (en büyük: %s)", "Accept" : "Kabul et", "Reject" : "Reddet", "Incoming ownership transfer from {user}" : "{user} kullanıcısından gelen sahiplik aktarımı ", @@ -432,6 +431,7 @@ OC.L10N.register( "Upload file" : "Dosya yükle", "Not favorited" : "Sık kullanılanlarda değil", "An error occurred while trying to update the tags" : "Etiketler güncellenirken bir sorun çıktı", + "Upload (max. %s)" : "Yükle (en büyük: %s)", "You don't have permission to upload or create files here." : "Buraya dosya yükleme ya da ekleme izniniz yok.", "Storage informations" : "Depolama bilgileri", "Choose file" : "Dosya seçin", diff --git a/apps/files/l10n/tr.json b/apps/files/l10n/tr.json index 61e693c225d..ef22ca6dc3c 100644 --- a/apps/files/l10n/tr.json +++ b/apps/files/l10n/tr.json @@ -52,7 +52,6 @@ "Favorite files" : "Sık kullanılan dosyalar", "No favorites" : "Sık kullanılan bir öge yok", "More favorites" : "Diğer sık kullanılanlar", - "Upload (max. %s)" : "Yükle (en büyük: %s)", "Accept" : "Kabul et", "Reject" : "Reddet", "Incoming ownership transfer from {user}" : "{user} kullanıcısından gelen sahiplik aktarımı ", @@ -430,6 +429,7 @@ "Upload file" : "Dosya yükle", "Not favorited" : "Sık kullanılanlarda değil", "An error occurred while trying to update the tags" : "Etiketler güncellenirken bir sorun çıktı", + "Upload (max. %s)" : "Yükle (en büyük: %s)", "You don't have permission to upload or create files here." : "Buraya dosya yükleme ya da ekleme izniniz yok.", "Storage informations" : "Depolama bilgileri", "Choose file" : "Dosya seçin", diff --git a/apps/files/l10n/ug.js b/apps/files/l10n/ug.js index aea2933b5e4..8f002b2634b 100644 --- a/apps/files/l10n/ug.js +++ b/apps/files/l10n/ug.js @@ -46,7 +46,6 @@ OC.L10N.register( "Failed to authorize" : "ھوقۇق بېرىش مەغلۇب بولدى", "Invalid folder path" : "ھۆججەت قىسقۇچ يولى ئىناۋەتسىز", "Folder not found" : "ھۆججەت قىسقۇچ تېپىلمىدى", - "Upload (max. %s)" : "يۈكلەش (max.% S)", "Accept" : "قوبۇل قىلىڭ", "Reject" : "رەت قىلىش", "Incoming ownership transfer from {user}" : "{user} دىن كەلگەن ئىگىدارلىق ھوقۇقىنى يۆتكەش", @@ -362,6 +361,7 @@ OC.L10N.register( "Upload file" : "Upload file", "Not favorited" : "ياقتۇرمايدۇ", "An error occurred while trying to update the tags" : "خەتكۈچلەرنى يېڭىلىماقچى بولغاندا خاتالىق كۆرۈلدى", + "Upload (max. %s)" : "يۈكلەش (max.% S)", "Storage informations" : "ساقلاش ئۇچۇرى", "Choose file" : "ھۆججەت تاللاڭ", "Go to the previous folder" : "ئالدىنقى قىسقۇچقا بېرىڭ", diff --git a/apps/files/l10n/ug.json b/apps/files/l10n/ug.json index f524c4e77be..49432a5ae81 100644 --- a/apps/files/l10n/ug.json +++ b/apps/files/l10n/ug.json @@ -44,7 +44,6 @@ "Failed to authorize" : "ھوقۇق بېرىش مەغلۇب بولدى", "Invalid folder path" : "ھۆججەت قىسقۇچ يولى ئىناۋەتسىز", "Folder not found" : "ھۆججەت قىسقۇچ تېپىلمىدى", - "Upload (max. %s)" : "يۈكلەش (max.% S)", "Accept" : "قوبۇل قىلىڭ", "Reject" : "رەت قىلىش", "Incoming ownership transfer from {user}" : "{user} دىن كەلگەن ئىگىدارلىق ھوقۇقىنى يۆتكەش", @@ -360,6 +359,7 @@ "Upload file" : "Upload file", "Not favorited" : "ياقتۇرمايدۇ", "An error occurred while trying to update the tags" : "خەتكۈچلەرنى يېڭىلىماقچى بولغاندا خاتالىق كۆرۈلدى", + "Upload (max. %s)" : "يۈكلەش (max.% S)", "Storage informations" : "ساقلاش ئۇچۇرى", "Choose file" : "ھۆججەت تاللاڭ", "Go to the previous folder" : "ئالدىنقى قىسقۇچقا بېرىڭ", diff --git a/apps/files/l10n/uk.js b/apps/files/l10n/uk.js index bfb02d10ecc..eaae1276272 100644 --- a/apps/files/l10n/uk.js +++ b/apps/files/l10n/uk.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "Файли із зіркою", "No favorites" : "Немає улюблених", "More favorites" : "Ще файли із зіркою", - "Upload (max. %s)" : "Завантаження (макс. %s)", "Accept" : "Прийняти", "Reject" : "Відхилити", "Incoming ownership transfer from {user}" : "Запит від користувача {user} на передавання прав власника", @@ -433,6 +432,7 @@ OC.L10N.register( "Upload file" : "Завантажити файл", "Not favorited" : "Без зірочки", "An error occurred while trying to update the tags" : "Виникла помилка при спробі оновити мітки", + "Upload (max. %s)" : "Завантаження (макс. %s)", "You don't have permission to upload or create files here." : "У вас відсутні дозволи для завантаження або створення файлів в цьому каталозі.", "Storage informations" : "Інформація про сховище", "Choose file" : "Вибрати файл", diff --git a/apps/files/l10n/uk.json b/apps/files/l10n/uk.json index cdde9673fb9..1ecace7ac24 100644 --- a/apps/files/l10n/uk.json +++ b/apps/files/l10n/uk.json @@ -52,7 +52,6 @@ "Favorite files" : "Файли із зіркою", "No favorites" : "Немає улюблених", "More favorites" : "Ще файли із зіркою", - "Upload (max. %s)" : "Завантаження (макс. %s)", "Accept" : "Прийняти", "Reject" : "Відхилити", "Incoming ownership transfer from {user}" : "Запит від користувача {user} на передавання прав власника", @@ -431,6 +430,7 @@ "Upload file" : "Завантажити файл", "Not favorited" : "Без зірочки", "An error occurred while trying to update the tags" : "Виникла помилка при спробі оновити мітки", + "Upload (max. %s)" : "Завантаження (макс. %s)", "You don't have permission to upload or create files here." : "У вас відсутні дозволи для завантаження або створення файлів в цьому каталозі.", "Storage informations" : "Інформація про сховище", "Choose file" : "Вибрати файл", diff --git a/apps/files/l10n/vi.js b/apps/files/l10n/vi.js index a8e39aa2527..e1b8b9c799a 100644 --- a/apps/files/l10n/vi.js +++ b/apps/files/l10n/vi.js @@ -47,7 +47,6 @@ OC.L10N.register( "Invalid folder path" : "Đường dẫn tới thư mục không hợp lệ", "Folder not found" : "Không thể tìm thấy thư mục", "No favorites" : "Không có mục ưa thích nào", - "Upload (max. %s)" : "Tải lên (tối đa %s)", "Accept" : "Đồng ý", "Reject" : "Từ chối", "Incoming ownership transfer from {user}" : "Có yêu cầu chuyển quyền sở hữu từ {user} ", @@ -360,6 +359,7 @@ OC.L10N.register( "Upload file" : "Tải lên tập tin", "Not favorited" : "Không được yêu thích", "An error occurred while trying to update the tags" : "Đã xảy ra lỗi khi cố gắng cập nhật tags", + "Upload (max. %s)" : "Tải lên (tối đa %s)", "Storage informations" : "Thông tin lưu trữ", "Choose file" : "Chọn tập tin", "Go to the previous folder" : "Chuyển đến thư mục trước đó", diff --git a/apps/files/l10n/vi.json b/apps/files/l10n/vi.json index 272a1e3eebc..6aa381cb647 100644 --- a/apps/files/l10n/vi.json +++ b/apps/files/l10n/vi.json @@ -45,7 +45,6 @@ "Invalid folder path" : "Đường dẫn tới thư mục không hợp lệ", "Folder not found" : "Không thể tìm thấy thư mục", "No favorites" : "Không có mục ưa thích nào", - "Upload (max. %s)" : "Tải lên (tối đa %s)", "Accept" : "Đồng ý", "Reject" : "Từ chối", "Incoming ownership transfer from {user}" : "Có yêu cầu chuyển quyền sở hữu từ {user} ", @@ -358,6 +357,7 @@ "Upload file" : "Tải lên tập tin", "Not favorited" : "Không được yêu thích", "An error occurred while trying to update the tags" : "Đã xảy ra lỗi khi cố gắng cập nhật tags", + "Upload (max. %s)" : "Tải lên (tối đa %s)", "Storage informations" : "Thông tin lưu trữ", "Choose file" : "Chọn tập tin", "Go to the previous folder" : "Chuyển đến thư mục trước đó", diff --git a/apps/files/l10n/zh_CN.js b/apps/files/l10n/zh_CN.js index b0cc1433457..6b838b18d59 100644 --- a/apps/files/l10n/zh_CN.js +++ b/apps/files/l10n/zh_CN.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "收藏的文件", "No favorites" : "无收藏", "More favorites" : "更多收藏", - "Upload (max. %s)" : "上传 (最大 %s)", "Accept" : "接受", "Reject" : "拒绝", "Incoming ownership transfer from {user}" : "来自 {user} 的所有权转移", @@ -442,6 +441,7 @@ OC.L10N.register( "Upload file" : "上传文件", "Not favorited" : "未收藏", "An error occurred while trying to update the tags" : "更新标签时出错", + "Upload (max. %s)" : "上传 (最大 %s)", "You don't have permission to upload or create files here." : "您没有在此处上传或创建文件的权限。", "Storage informations" : "存储信息", "Choose file" : "选择文件", diff --git a/apps/files/l10n/zh_CN.json b/apps/files/l10n/zh_CN.json index e15d9f5b180..3bc8e7fa416 100644 --- a/apps/files/l10n/zh_CN.json +++ b/apps/files/l10n/zh_CN.json @@ -52,7 +52,6 @@ "Favorite files" : "收藏的文件", "No favorites" : "无收藏", "More favorites" : "更多收藏", - "Upload (max. %s)" : "上传 (最大 %s)", "Accept" : "接受", "Reject" : "拒绝", "Incoming ownership transfer from {user}" : "来自 {user} 的所有权转移", @@ -440,6 +439,7 @@ "Upload file" : "上传文件", "Not favorited" : "未收藏", "An error occurred while trying to update the tags" : "更新标签时出错", + "Upload (max. %s)" : "上传 (最大 %s)", "You don't have permission to upload or create files here." : "您没有在此处上传或创建文件的权限。", "Storage informations" : "存储信息", "Choose file" : "选择文件", diff --git a/apps/files/l10n/zh_HK.js b/apps/files/l10n/zh_HK.js index af981fd94cc..fc32992c566 100644 --- a/apps/files/l10n/zh_HK.js +++ b/apps/files/l10n/zh_HK.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "最愛的檔案", "No favorites" : "沒有最愛", "More favorites" : "更多最愛", - "Upload (max. %s)" : "上傳(上限 %s)", "Accept" : "接受", "Reject" : "拒絕", "Incoming ownership transfer from {user}" : "來自 {user} 的擁有權轉移", @@ -442,6 +441,7 @@ OC.L10N.register( "Upload file" : "上傳檔案", "Not favorited" : "未加入至最愛", "An error occurred while trying to update the tags" : "更新標籤時發生錯誤", + "Upload (max. %s)" : "上傳(上限 %s)", "You don't have permission to upload or create files here." : "您無權在此上傳或建立檔案。", "Storage informations" : "儲存資訊", "Choose file" : "選擇檔案", diff --git a/apps/files/l10n/zh_HK.json b/apps/files/l10n/zh_HK.json index e04500132ed..c54ce4b4700 100644 --- a/apps/files/l10n/zh_HK.json +++ b/apps/files/l10n/zh_HK.json @@ -52,7 +52,6 @@ "Favorite files" : "最愛的檔案", "No favorites" : "沒有最愛", "More favorites" : "更多最愛", - "Upload (max. %s)" : "上傳(上限 %s)", "Accept" : "接受", "Reject" : "拒絕", "Incoming ownership transfer from {user}" : "來自 {user} 的擁有權轉移", @@ -440,6 +439,7 @@ "Upload file" : "上傳檔案", "Not favorited" : "未加入至最愛", "An error occurred while trying to update the tags" : "更新標籤時發生錯誤", + "Upload (max. %s)" : "上傳(上限 %s)", "You don't have permission to upload or create files here." : "您無權在此上傳或建立檔案。", "Storage informations" : "儲存資訊", "Choose file" : "選擇檔案", diff --git a/apps/files/l10n/zh_TW.js b/apps/files/l10n/zh_TW.js index 4ff34d480e5..a398179eee4 100644 --- a/apps/files/l10n/zh_TW.js +++ b/apps/files/l10n/zh_TW.js @@ -54,7 +54,6 @@ OC.L10N.register( "Favorite files" : "收藏檔案", "No favorites" : "沒有最愛", "More favorites" : "更多收藏", - "Upload (max. %s)" : "上傳(最多 %s)", "Accept" : "接受", "Reject" : "拒絕", "Incoming ownership transfer from {user}" : "{user} 傳來的所有權轉移", @@ -442,6 +441,7 @@ OC.L10N.register( "Upload file" : "上傳檔案", "Not favorited" : "未加入至喜愛", "An error occurred while trying to update the tags" : "更新標籤時發生錯誤", + "Upload (max. %s)" : "上傳(最多 %s)", "You don't have permission to upload or create files here." : "您無權在此上傳或建立檔案。", "Storage informations" : "儲存空間資訊", "Choose file" : "選擇檔案", diff --git a/apps/files/l10n/zh_TW.json b/apps/files/l10n/zh_TW.json index 0def7339d4d..bbe462c93aa 100644 --- a/apps/files/l10n/zh_TW.json +++ b/apps/files/l10n/zh_TW.json @@ -52,7 +52,6 @@ "Favorite files" : "收藏檔案", "No favorites" : "沒有最愛", "More favorites" : "更多收藏", - "Upload (max. %s)" : "上傳(最多 %s)", "Accept" : "接受", "Reject" : "拒絕", "Incoming ownership transfer from {user}" : "{user} 傳來的所有權轉移", @@ -440,6 +439,7 @@ "Upload file" : "上傳檔案", "Not favorited" : "未加入至喜愛", "An error occurred while trying to update the tags" : "更新標籤時發生錯誤", + "Upload (max. %s)" : "上傳(最多 %s)", "You don't have permission to upload or create files here." : "您無權在此上傳或建立檔案。", "Storage informations" : "儲存空間資訊", "Choose file" : "選擇檔案", diff --git a/apps/files/lib/Controller/TemplateController.php b/apps/files/lib/Controller/TemplateController.php index 3321fb5f119..ee4c86941c7 100644 --- a/apps/files/lib/Controller/TemplateController.php +++ b/apps/files/lib/Controller/TemplateController.php @@ -53,6 +53,24 @@ class TemplateController extends OCSController { } /** + * List the fields for the template specified by the given file ID + * + * @param int $fileId File ID of the template + * @return DataResponse<Http::STATUS_OK, array<string, FilesTemplateField>, array{}> + * + * 200: Fields returned + */ + #[NoAdminRequired] + public function listTemplateFields(int $fileId): DataResponse { + $fields = $this->templateManager->listTemplateFields($fileId); + + return new DataResponse( + array_merge([], ...$fields), + Http::STATUS_OK + ); + } + + /** * Create a template * * @param string $filePath Path of the file diff --git a/apps/files/openapi.json b/apps/files/openapi.json index fbb1bd17eeb..c227b12d922 100644 --- a/apps/files/openapi.json +++ b/apps/files/openapi.json @@ -1233,6 +1233,80 @@ } } }, + "/ocs/v2.php/apps/files/api/v1/templates/fields/{fileId}": { + "get": { + "operationId": "template-list-template-fields", + "summary": "List the fields for the template specified by the given file ID", + "tags": [ + "template" + ], + "security": [ + { + "bearer_auth": [] + }, + { + "basic_auth": [] + } + ], + "parameters": [ + { + "name": "fileId", + "in": "path", + "description": "File ID of the template", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + }, + { + "name": "OCS-APIRequest", + "in": "header", + "description": "Required to be true for the API request to pass", + "required": true, + "schema": { + "type": "boolean", + "default": true + } + } + ], + "responses": { + "200": { + "description": "Fields returned", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "ocs" + ], + "properties": { + "ocs": { + "type": "object", + "required": [ + "meta", + "data" + ], + "properties": { + "meta": { + "$ref": "#/components/schemas/OCSMeta" + }, + "data": { + "type": "object", + "additionalProperties": { + "$ref": "#/components/schemas/TemplateField" + } + } + } + } + } + } + } + } + } + } + } + }, "/ocs/v2.php/apps/files/api/v1/templates/create": { "post": { "operationId": "template-create", diff --git a/apps/files/src/services/Templates.js b/apps/files/src/services/Templates.js index 3a0a0fdb809..d7f25846ceb 100644 --- a/apps/files/src/services/Templates.js +++ b/apps/files/src/services/Templates.js @@ -11,6 +11,11 @@ export const getTemplates = async function() { return response.data.ocs.data } +export const getTemplateFields = async function(fileId) { + const response = await axios.get(generateOcsUrl(`apps/files/api/v1/templates/fields/${fileId}`)) + return response.data.ocs.data +} + /** * Create a new file from a specified template * diff --git a/apps/files/src/views/TemplatePicker.vue b/apps/files/src/views/TemplatePicker.vue index 15286a220e9..2682570bd5d 100644 --- a/apps/files/src/views/TemplatePicker.vue +++ b/apps/files/src/views/TemplatePicker.vue @@ -57,7 +57,7 @@ import { translate as t } from '@nextcloud/l10n' import { generateRemoteUrl } from '@nextcloud/router' import { normalize, extname, join } from 'path' import { defineComponent } from 'vue' -import { createFromTemplate, getTemplates } from '../services/Templates.js' +import { createFromTemplate, getTemplates, getTemplateFields } from '../services/Templates.js' import NcEmptyContent from '@nextcloud/vue/components/NcEmptyContent' import NcModal from '@nextcloud/vue/components/NcModal' @@ -215,7 +215,7 @@ export default defineComponent({ } }, - async createFile(templateFields) { + async createFile(templateFields = []) { const currentDirectory = new URL(window.location.href).searchParams.get('dir') || '/' // If the file doesn't have an extension, add the default one @@ -274,9 +274,12 @@ export default defineComponent({ }, async onSubmit() { - if (this.selectedTemplate?.fields?.length > 0) { + const fileId = this.selectedTemplate?.fileid + const fields = await getTemplateFields(fileId) + + if (fields.length > 0) { spawnDialog(TemplateFiller, { - fields: this.selectedTemplate.fields, + fields, onSubmit: this.createFile, }) } else { diff --git a/apps/files_external/tests/Auth/AuthMechanismTest.php b/apps/files_external/tests/Auth/AuthMechanismTest.php index 682d2e1326f..d6279ea4f1f 100644 --- a/apps/files_external/tests/Auth/AuthMechanismTest.php +++ b/apps/files_external/tests/Auth/AuthMechanismTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2020-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -13,7 +15,7 @@ use OCA\Files_External\Lib\StorageConfig; class AuthMechanismTest extends \Test\TestCase { public function testJsonSerialization(): void { $mechanism = $this->getMockBuilder(AuthMechanism::class) - ->setMethods(['jsonSerializeDefinition']) + ->onlyMethods(['jsonSerializeDefinition']) ->getMock(); $mechanism->expects($this->once()) ->method('jsonSerializeDefinition') @@ -26,7 +28,7 @@ class AuthMechanismTest extends \Test\TestCase { $this->assertEquals('scheme', $json['scheme']); } - public function validateStorageProvider() { + public static function validateStorageProvider(): array { return [ [true, 'scheme', true], [false, 'scheme', false], @@ -38,9 +40,9 @@ class AuthMechanismTest extends \Test\TestCase { /** * @dataProvider validateStorageProvider */ - public function testValidateStorage($expectedSuccess, $scheme, $definitionSuccess): void { + public function testValidateStorage(bool $expectedSuccess, string $scheme, bool $definitionSuccess): void { $mechanism = $this->getMockBuilder(AuthMechanism::class) - ->setMethods(['validateStorageDefinition']) + ->onlyMethods(['validateStorageDefinition']) ->getMock(); $mechanism->expects($this->atMost(1)) ->method('validateStorageDefinition') @@ -48,16 +50,12 @@ class AuthMechanismTest extends \Test\TestCase { $mechanism->setScheme($scheme); - $backend = $this->getMockBuilder(Backend::class) - ->disableOriginalConstructor() - ->getMock(); + $backend = $this->createMock(Backend::class); $backend->expects($this->once()) ->method('getAuthSchemes') ->willReturn(['scheme' => true, 'foobar' => true]); - $storageConfig = $this->getMockBuilder(StorageConfig::class) - ->disableOriginalConstructor() - ->getMock(); + $storageConfig = $this->createMock(StorageConfig::class); $storageConfig->expects($this->once()) ->method('getBackend') ->willReturn($backend); diff --git a/apps/files_external/tests/Auth/Password/GlobalAuth.php b/apps/files_external/tests/Auth/Password/GlobalAuthTest.php index 998db198b53..02f15cb76c4 100644 --- a/apps/files_external/tests/Auth/Password/GlobalAuth.php +++ b/apps/files_external/tests/Auth/Password/GlobalAuthTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -8,26 +10,16 @@ namespace OCA\Files_External\Tests\Auth\Password; use OCA\Files_External\Lib\Auth\Password\GlobalAuth; use OCA\Files_External\Lib\InsufficientDataForMeaningfulAnswerException; -use OCA\Files_external\Lib\StorageConfig; +use OCA\Files_External\Lib\StorageConfig; use OCP\IL10N; use OCP\Security\ICredentialsManager; +use PHPUnit\Framework\MockObject\MockObject; use Test\TestCase; class GlobalAuthTest extends TestCase { - /** - * @var IL10N|\PHPUnit\Framework\MockObject\MockObject - */ - private $l10n; - - /** - * @var ICredentialsManager|\PHPUnit\Framework\MockObject\MockObject - */ - private $credentialsManager; - - /** - * @var GlobalAuth - */ - private $instance; + private IL10N&MockObject $l10n; + private ICredentialsManager&MockObject $credentialsManager; + private GlobalAuth $instance; protected function setUp(): void { parent::setUp(); @@ -37,7 +29,7 @@ class GlobalAuthTest extends TestCase { } private function getStorageConfig($type, $config = []) { - /** @var \OCA\Files_External\Lib\StorageConfig|\PHPUnit\Framework\MockObject\MockObject $storageConfig */ + /** @var \OCA\Files_External\Lib\StorageConfig&MockObject $storageConfig */ $storageConfig = $this->createMock(StorageConfig::class); $storageConfig->expects($this->any()) ->method('getType') diff --git a/apps/files_external/tests/Backend/BackendTest.php b/apps/files_external/tests/Backend/BackendTest.php index 26aa5ebe6af..1e158654595 100644 --- a/apps/files_external/tests/Backend/BackendTest.php +++ b/apps/files_external/tests/Backend/BackendTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2017-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -12,7 +14,7 @@ use OCA\Files_External\Lib\StorageConfig; class BackendTest extends \Test\TestCase { public function testJsonSerialization(): void { $backend = $this->getMockBuilder(Backend::class) - ->setMethods(['jsonSerializeDefinition']) + ->onlyMethods(['jsonSerializeDefinition']) ->getMock(); $backend->expects($this->once()) ->method('jsonSerializeDefinition') @@ -32,7 +34,7 @@ class BackendTest extends \Test\TestCase { $this->assertContains('barauth', array_keys($json['authSchemes'])); } - public function validateStorageProvider() { + public static function validateStorageProvider(): array { return [ [true, true], [false, false], @@ -42,9 +44,9 @@ class BackendTest extends \Test\TestCase { /** * @dataProvider validateStorageProvider */ - public function testValidateStorage($expectedSuccess, $definitionSuccess): void { + public function testValidateStorage(bool $expectedSuccess, bool $definitionSuccess): void { $backend = $this->getMockBuilder(Backend::class) - ->setMethods(['validateStorageDefinition']) + ->onlyMethods(['validateStorageDefinition']) ->getMock(); $backend->expects($this->atMost(1)) ->method('validateStorageDefinition') diff --git a/apps/files_external/tests/Backend/LegacyBackendTest.php b/apps/files_external/tests/Backend/LegacyBackendTest.php index cea46c1a0cd..147965e2499 100644 --- a/apps/files_external/tests/Backend/LegacyBackendTest.php +++ b/apps/files_external/tests/Backend/LegacyBackendTest.php @@ -6,6 +6,7 @@ */ namespace OCA\Files_External\Tests\Backend; +use OCA\Files_External\Lib\Auth\Builtin; use OCA\Files_External\Lib\Backend\LegacyBackend; use OCA\Files_External\Lib\DefinitionParameter; use OCA\Files_External\Lib\MissingDependency; @@ -15,18 +16,16 @@ class LegacyBackendTest extends \Test\TestCase { /** * @return MissingDependency[] */ - public static function checkDependencies() { + public static function checkDependencies(): array { return [ (new MissingDependency('abc'))->setMessage('foobar') ]; } public function testConstructor(): void { - $auth = $this->getMockBuilder('\OCA\Files_External\Lib\Auth\Builtin') - ->disableOriginalConstructor() - ->getMock(); + $auth = $this->createMock(Builtin::class); - $class = '\OCA\Files_External\Tests\Backend\LegacyBackendTest'; + $class = self::class; $definition = [ 'configuration' => [ 'textfield' => 'Text field', @@ -43,7 +42,7 @@ class LegacyBackendTest extends \Test\TestCase { $backend = new LegacyBackend($class, $definition, $auth); - $this->assertEquals('\OCA\Files_External\Tests\Backend\LegacyBackendTest', $backend->getStorageClass()); + $this->assertEquals(self::class, $backend->getStorageClass()); $this->assertEquals('Backend text', $backend->getText()); $this->assertEquals(123, $backend->getPriority()); $this->assertContains('foo/bar.js', $backend->getCustomJs()); @@ -74,11 +73,9 @@ class LegacyBackendTest extends \Test\TestCase { } public function testNoDependencies(): void { - $auth = $this->getMockBuilder('\OCA\Files_External\Lib\Auth\Builtin') - ->disableOriginalConstructor() - ->getMock(); + $auth = $this->createMock(Builtin::class); - $class = '\OCA\Files_External\Tests\Backend\LegacyBackendTest'; + $class = self::class; $definition = [ 'configuration' => [ ], diff --git a/apps/files_external/tests/Command/ApplicableTest.php b/apps/files_external/tests/Command/ApplicableTest.php index 8854e4ad485..59db18a42de 100644 --- a/apps/files_external/tests/Command/ApplicableTest.php +++ b/apps/files_external/tests/Command/ApplicableTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2017-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -9,12 +11,13 @@ namespace OCA\Files_External\Tests\Command; use OCA\Files_External\Command\Applicable; use OCP\IGroupManager; use OCP\IUserManager; +use PHPUnit\Framework\MockObject\MockObject; -class ApplicableTest extends CommandTest { - private function getInstance($storageService) { - /** @var IUserManager|\PHPUnit\Framework\MockObject\MockObject $userManager */ +class ApplicableTest extends CommandTestCase { + private function getInstance($storageService): Applicable { + /** @var IUserManager&MockObject $userManager */ $userManager = $this->createMock(IUserManager::class); - /** @var IGroupManager|\PHPUnit\Framework\MockObject\MockObject $groupManager */ + /** @var IGroupManager&MockObject $groupManager */ $groupManager = $this->createMock(IGroupManager::class); $userManager->expects($this->any()) diff --git a/apps/files_external/tests/Command/CommandTest.php b/apps/files_external/tests/Command/CommandTestCase.php index ed991fd784d..47985b687cd 100644 --- a/apps/files_external/tests/Command/CommandTest.php +++ b/apps/files_external/tests/Command/CommandTestCase.php @@ -9,21 +9,20 @@ namespace OCA\Files_External\Tests\Command; use OCA\Files_External\Lib\StorageConfig; use OCA\Files_External\NotFoundException; use OCA\Files_External\Service\GlobalStoragesService; +use PHPUnit\Framework\MockObject\MockObject; use Symfony\Component\Console\Command\Command; use Symfony\Component\Console\Input\ArrayInput; use Symfony\Component\Console\Input\Input; use Symfony\Component\Console\Output\BufferedOutput; use Test\TestCase; -abstract class CommandTest extends TestCase { +abstract class CommandTestCase extends TestCase { /** * @param StorageConfig[] $mounts - * @return GlobalStoragesService|\PHPUnit\Framework\MockObject\MockObject + * @return GlobalStoragesService&MockObject */ protected function getGlobalStorageService(array $mounts = []) { - $mock = $this->getMockBuilder('OCA\Files_External\Service\GlobalStoragesService') - ->disableOriginalConstructor() - ->getMock(); + $mock = $this->createMock(GlobalStoragesService::class); $this->bindMounts($mock, $mounts); @@ -31,10 +30,10 @@ abstract class CommandTest extends TestCase { } /** - * @param \PHPUnit\Framework\MockObject\MockObject $mock + * @param MockObject $mock * @param StorageConfig[] $mounts */ - protected function bindMounts(\PHPUnit\Framework\MockObject\MockObject $mock, array $mounts) { + protected function bindMounts(MockObject $mock, array $mounts) { $mock->expects($this->any()) ->method('getStorage') ->willReturnCallback(function ($id) use ($mounts) { @@ -70,7 +69,7 @@ abstract class CommandTest extends TestCase { return $mount; } - protected function getInput(Command $command, array $arguments = [], array $options = []) { + protected function getInput(Command $command, array $arguments = [], array $options = []): ArrayInput { $input = new ArrayInput([]); $input->bind($command->getDefinition()); foreach ($arguments as $key => $value) { @@ -82,7 +81,7 @@ abstract class CommandTest extends TestCase { return $input; } - protected function executeCommand(Command $command, Input $input) { + protected function executeCommand(Command $command, Input $input): string { $output = new BufferedOutput(); $this->invokePrivate($command, 'execute', [$input, $output]); return $output->fetch(); diff --git a/apps/files_external/tests/Command/ListCommandTest.php b/apps/files_external/tests/Command/ListCommandTest.php index bd4430b4116..5b84e500e3f 100644 --- a/apps/files_external/tests/Command/ListCommandTest.php +++ b/apps/files_external/tests/Command/ListCommandTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -16,24 +18,20 @@ use OCA\Files_External\Service\GlobalStoragesService; use OCA\Files_External\Service\UserStoragesService; use OCP\Authentication\LoginCredentials\IStore; use OCP\IL10N; -use OCP\ISession; use OCP\IUserManager; use OCP\IUserSession; -use OCP\Security\ICrypto; +use PHPUnit\Framework\MockObject\MockObject; use Symfony\Component\Console\Output\BufferedOutput; -class ListCommandTest extends CommandTest { - /** - * @return ListCommand|\PHPUnit\Framework\MockObject\MockObject - */ - private function getInstance() { - /** @var GlobalStoragesService|\PHPUnit\Framework\MockObject\MockObject $globalService */ +class ListCommandTest extends CommandTestCase { + private function getInstance(): ListCommand { + /** @var GlobalStoragesService&MockObject $globalService */ $globalService = $this->createMock(GlobalStoragesService::class); - /** @var UserStoragesService|\PHPUnit\Framework\MockObject\MockObject $userService */ + /** @var UserStoragesService&MockObject $userService */ $userService = $this->createMock(UserStoragesService::class); - /** @var IUserManager|\PHPUnit\Framework\MockObject\MockObject $userManager */ + /** @var IUserManager&MockObject $userManager */ $userManager = $this->createMock(IUserManager::class); - /** @var IUserSession|\PHPUnit\Framework\MockObject\MockObject $userSession */ + /** @var IUserSession&MockObject $userSession */ $userSession = $this->createMock(IUserSession::class); return new ListCommand($globalService, $userService, $userSession, $userManager); @@ -41,8 +39,6 @@ class ListCommandTest extends CommandTest { public function testListAuthIdentifier(): void { $l10n = $this->createMock(IL10N::class); - $session = $this->createMock(ISession::class); - $crypto = $this->createMock(ICrypto::class); $instance = $this->getInstance(); $mount1 = new StorageConfig(); $mount1->setAuthMechanism(new Password($l10n)); diff --git a/apps/files_external/tests/Config/UserPlaceholderHandlerTest.php b/apps/files_external/tests/Config/UserPlaceholderHandlerTest.php index b3c7db9306f..c46d3ed5010 100644 --- a/apps/files_external/tests/Config/UserPlaceholderHandlerTest.php +++ b/apps/files_external/tests/Config/UserPlaceholderHandlerTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later @@ -12,25 +14,15 @@ use OCP\IUserManager; use OCP\IUserSession; use OCP\Share\Exceptions\ShareNotFound; use OCP\Share\IManager; +use PHPUnit\Framework\MockObject\MockObject; class UserPlaceholderHandlerTest extends \Test\TestCase { - /** @var IUser|\PHPUnit\Framework\MockObject\MockObject */ - protected $user; - - /** @var IUserSession|\PHPUnit\Framework\MockObject\MockObject */ - protected $session; - - /** @var IManager|\PHPUnit\Framework\MockObject\MockObject */ - private $shareManager; - - /** @var IRequest|\PHPUnit\Framework\MockObject\MockObject */ - private $request; - - /** @var IUserManager|\PHPUnit\Framework\MockObject\MockObject */ - private $userManager; - - /** @var UserPlaceholderHandler */ - protected $handler; + protected IUser&MockObject $user; + protected IUserSession&MockObject $session; + protected IManager&MockObject $shareManager; + protected IRequest&MockObject $request; + protected IUserManager&MockObject $userManager; + protected UserPlaceholderHandler $handler; protected function setUp(): void { parent::setUp(); @@ -47,13 +39,13 @@ class UserPlaceholderHandlerTest extends \Test\TestCase { $this->handler = new UserPlaceholderHandler($this->session, $this->shareManager, $this->request, $this->userManager); } - protected function setUser() { + protected function setUser(): void { $this->session->expects($this->any()) ->method('getUser') ->willReturn($this->user); } - public function optionProvider() { + public static function optionProvider(): array { return [ ['/foo/bar/$user/foobar', '/foo/bar/alice/foobar'], [['/foo/bar/$user/foobar'], ['/foo/bar/alice/foobar']], @@ -64,7 +56,7 @@ class UserPlaceholderHandlerTest extends \Test\TestCase { /** * @dataProvider optionProvider */ - public function testHandle($option, $expected): void { + public function testHandle(string|array $option, string|array $expected): void { $this->setUser(); $this->assertSame($expected, $this->handler->handle($option)); } @@ -72,7 +64,7 @@ class UserPlaceholderHandlerTest extends \Test\TestCase { /** * @dataProvider optionProvider */ - public function testHandleNoUser($option): void { + public function testHandleNoUser(string|array $option): void { $this->shareManager->expects($this->once()) ->method('getShareByToken') ->willThrowException(new ShareNotFound()); diff --git a/apps/files_external/tests/Controller/AjaxControllerTest.php b/apps/files_external/tests/Controller/AjaxControllerTest.php index 005e6e9714c..b1ea7a2b1b1 100644 --- a/apps/files_external/tests/Controller/AjaxControllerTest.php +++ b/apps/files_external/tests/Controller/AjaxControllerTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later @@ -14,32 +16,22 @@ use OCP\IL10N; use OCP\IRequest; use OCP\IUser; use OCP\IUserSession; +use PHPUnit\Framework\MockObject\MockObject; use Test\TestCase; class AjaxControllerTest extends TestCase { - /** @var IRequest */ - private $request; - /** @var RSA */ - private $rsa; - /** @var GlobalAuth */ - private $globalAuth; - /** @var IUserSession */ - private $userSession; - /** @var IGroupManager */ - private $groupManager; - /** @var AjaxController */ - private $ajaxController; - /** @var IL10N */ - private $l10n; + private IRequest&MockObject $request; + private RSA&MockObject $rsa; + private GlobalAuth&MockObject $globalAuth; + private IUserSession&MockObject $userSession; + private IGroupManager&MockObject $groupManager; + private IL10N&MockObject $l10n; + private AjaxController $ajaxController; protected function setUp(): void { $this->request = $this->createMock(IRequest::class); - $this->rsa = $this->getMockBuilder('\\OCA\\Files_External\\Lib\\Auth\\PublicKey\\RSA') - ->disableOriginalConstructor() - ->getMock(); - $this->globalAuth = $this->getMockBuilder('\\OCA\\Files_External\\Lib\\Auth\\Password\GlobalAuth') - ->disableOriginalConstructor() - ->getMock(); + $this->rsa = $this->createMock(RSA::class); + $this->globalAuth = $this->createMock(GlobalAuth::class); $this->userSession = $this->createMock(IUserSession::class); $this->groupManager = $this->createMock(IGroupManager::class); $this->l10n = $this->createMock(IL10N::class); diff --git a/apps/files_external/tests/Controller/GlobalStoragesControllerTest.php b/apps/files_external/tests/Controller/GlobalStoragesControllerTest.php index 4c318951d1b..2edc3ea3efc 100644 --- a/apps/files_external/tests/Controller/GlobalStoragesControllerTest.php +++ b/apps/files_external/tests/Controller/GlobalStoragesControllerTest.php @@ -9,6 +9,7 @@ namespace OCA\Files_External\Tests\Controller; use OC\User\User; use OCA\Files_External\Controller\GlobalStoragesController; use OCA\Files_External\Service\BackendService; +use OCA\Files_External\Service\GlobalStoragesService; use OCP\EventDispatcher\IEventDispatcher; use OCP\IConfig; use OCP\IGroupManager; @@ -17,13 +18,11 @@ use OCP\IRequest; use OCP\IUserSession; use Psr\Log\LoggerInterface; -class GlobalStoragesControllerTest extends StoragesControllerTest { +class GlobalStoragesControllerTest extends StoragesControllerTestCase { protected function setUp(): void { parent::setUp(); - $this->service = $this->getMockBuilder('\OCA\Files_External\Service\GlobalStoragesService') - ->disableOriginalConstructor() - ->getMock(); + $this->service = $this->createMock(GlobalStoragesService::class); $this->service->method('getVisibilityType') ->willReturn(BackendService::VISIBILITY_ADMIN); @@ -31,7 +30,7 @@ class GlobalStoragesControllerTest extends StoragesControllerTest { $this->controller = $this->createController(true); } - private function createController($allowCreateLocal = true) { + private function createController(bool $allowCreateLocal = true): GlobalStoragesController { $session = $this->createMock(IUserSession::class); $session->method('getUser') ->willReturn(new User('test', null, $this->createMock(IEventDispatcher::class))); diff --git a/apps/files_external/tests/Controller/StoragesControllerTest.php b/apps/files_external/tests/Controller/StoragesControllerTestCase.php index 0d604ff2d47..bb29904ab0d 100644 --- a/apps/files_external/tests/Controller/StoragesControllerTest.php +++ b/apps/files_external/tests/Controller/StoragesControllerTestCase.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2017-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -7,10 +9,12 @@ namespace OCA\Files_External\Tests\Controller; use OCA\Files_External\Controller\GlobalStoragesController; +use OCA\Files_External\Controller\UserStoragesController; use OCA\Files_External\Lib\Auth\AuthMechanism; +use OCA\Files_External\Lib\Auth\NullMechanism; use OCA\Files_External\Lib\Backend\Backend; +use OCA\Files_External\Lib\Backend\SMB; use OCA\Files_External\Lib\StorageConfig; - use OCA\Files_External\MountConfig; use OCA\Files_External\NotFoundException; use OCA\Files_External\Service\GlobalStoragesService; @@ -18,33 +22,25 @@ use OCA\Files_External\Service\UserStoragesService; use OCP\AppFramework\Http; use PHPUnit\Framework\MockObject\MockObject; -abstract class StoragesControllerTest extends \Test\TestCase { - - /** - * @var GlobalStoragesController - */ - protected $controller; - - /** - * @var GlobalStoragesService|UserStoragesService|MockObject - */ - protected $service; +abstract class StoragesControllerTestCase extends \Test\TestCase { + protected GlobalStoragesController|UserStoragesController $controller; + protected GlobalStoragesService|UserStoragesService|MockObject $service; protected function setUp(): void { + parent::setUp(); MountConfig::$skipTest = true; } protected function tearDown(): void { MountConfig::$skipTest = false; + parent::tearDown(); } /** - * @return \OCA\Files_External\Lib\Backend\Backend|MockObject + * @return \OCA\Files_External\Lib\Backend\Backend&MockObject */ - protected function getBackendMock($class = '\OCA\Files_External\Lib\Backend\SMB', $storageClass = '\OCA\Files_External\Lib\Storage\SMB') { - $backend = $this->getMockBuilder(Backend::class) - ->disableOriginalConstructor() - ->getMock(); + protected function getBackendMock($class = SMB::class, $storageClass = \OCA\Files_External\Lib\Storage\SMB::class) { + $backend = $this->createMock(Backend::class); $backend->method('getStorageClass') ->willReturn($storageClass); $backend->method('getIdentifier') @@ -57,10 +53,8 @@ abstract class StoragesControllerTest extends \Test\TestCase { /** * @return AuthMechanism|MockObject */ - protected function getAuthMechMock($scheme = 'null', $class = '\OCA\Files_External\Lib\Auth\NullMechanism') { - $authMech = $this->getMockBuilder(AuthMechanism::class) - ->disableOriginalConstructor() - ->getMock(); + protected function getAuthMechMock($scheme = 'null', $class = NullMechanism::class) { + $authMech = $this->createMock(AuthMechanism::class); $authMech->method('getScheme') ->willReturn($scheme); $authMech->method('getIdentifier') @@ -98,8 +92,8 @@ abstract class StoragesControllerTest extends \Test\TestCase { $response = $this->controller->create( 'mount', - '\OCA\Files_External\Lib\Storage\SMB', - '\OCA\Files_External\Lib\Auth\NullMechanism', + \OCA\Files_External\Lib\Storage\SMB::class, + NullMechanism::class, [], [], [], @@ -130,7 +124,7 @@ abstract class StoragesControllerTest extends \Test\TestCase { $response = $this->controller->create( 'mount', 'local', - '\OCA\Files_External\Lib\Auth\NullMechanism', + NullMechanism::class, [], [], [], @@ -170,8 +164,8 @@ abstract class StoragesControllerTest extends \Test\TestCase { $response = $this->controller->update( 1, 'mount', - '\OCA\Files_External\Lib\Storage\SMB', - '\OCA\Files_External\Lib\Auth\NullMechanism', + \OCA\Files_External\Lib\Storage\SMB::class, + NullMechanism::class, [], [], [], @@ -184,7 +178,7 @@ abstract class StoragesControllerTest extends \Test\TestCase { $this->assertEquals($storageConfig->jsonSerialize(), $data); } - public function mountPointNamesProvider() { + public static function mountPointNamesProvider(): array { return [ [''], ['/'], @@ -212,8 +206,8 @@ abstract class StoragesControllerTest extends \Test\TestCase { $response = $this->controller->create( $mountPoint, - '\OCA\Files_External\Lib\Storage\SMB', - '\OCA\Files_External\Lib\Auth\NullMechanism', + \OCA\Files_External\Lib\Storage\SMB::class, + NullMechanism::class, [], [], [], @@ -226,8 +220,8 @@ abstract class StoragesControllerTest extends \Test\TestCase { $response = $this->controller->update( 1, $mountPoint, - '\OCA\Files_External\Lib\Storage\SMB', - '\OCA\Files_External\Lib\Auth\NullMechanism', + \OCA\Files_External\Lib\Storage\SMB::class, + NullMechanism::class, [], [], [], @@ -250,7 +244,7 @@ abstract class StoragesControllerTest extends \Test\TestCase { $response = $this->controller->create( 'mount', '\OC\Files\Storage\InvalidStorage', - '\OCA\Files_External\Lib\Auth\NullMechanism', + NullMechanism::class, [], [], [], @@ -264,7 +258,7 @@ abstract class StoragesControllerTest extends \Test\TestCase { 1, 'mount', '\OC\Files\Storage\InvalidStorage', - '\OCA\Files_External\Lib\Auth\NullMechanism', + NullMechanism::class, [], [], [], @@ -303,8 +297,8 @@ abstract class StoragesControllerTest extends \Test\TestCase { $response = $this->controller->update( 255, 'mount', - '\OCA\Files_External\Lib\Storage\SMB', - '\OCA\Files_External\Lib\Auth\NullMechanism', + \OCA\Files_External\Lib\Storage\SMB::class, + NullMechanism::class, [], [], [], @@ -354,7 +348,7 @@ abstract class StoragesControllerTest extends \Test\TestCase { $this->assertEquals($expected, $response->getData()); } - public function validateStorageProvider() { + public static function validateStorageProvider(): array { return [ [true, true, true], [false, true, false], @@ -366,7 +360,7 @@ abstract class StoragesControllerTest extends \Test\TestCase { /** * @dataProvider validateStorageProvider */ - public function testValidateStorage($backendValidate, $authMechValidate, $expectSuccess): void { + public function testValidateStorage(bool $backendValidate, bool $authMechValidate, bool $expectSuccess): void { $backend = $this->getBackendMock(); $backend->method('validateStorage') ->willReturn($backendValidate); @@ -401,8 +395,8 @@ abstract class StoragesControllerTest extends \Test\TestCase { $response = $this->controller->create( 'mount', - '\OCA\Files_External\Lib\Storage\SMB', - '\OCA\Files_External\Lib\Auth\NullMechanism', + \OCA\Files_External\Lib\Storage\SMB::class, + NullMechanism::class, [], [], [], diff --git a/apps/files_external/tests/Controller/UserStoragesControllerTest.php b/apps/files_external/tests/Controller/UserStoragesControllerTest.php index c15ded48ea7..3e8d89ec060 100644 --- a/apps/files_external/tests/Controller/UserStoragesControllerTest.php +++ b/apps/files_external/tests/Controller/UserStoragesControllerTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -8,8 +10,10 @@ namespace OCA\Files_External\Tests\Controller; use OC\User\User; use OCA\Files_External\Controller\UserStoragesController; +use OCA\Files_External\Lib\Storage\SMB; use OCA\Files_External\Lib\StorageConfig; use OCA\Files_External\Service\BackendService; +use OCA\Files_External\Service\UserStoragesService; use OCP\AppFramework\Http; use OCP\EventDispatcher\IEventDispatcher; use OCP\IConfig; @@ -19,18 +23,16 @@ use OCP\IRequest; use OCP\IUserSession; use Psr\Log\LoggerInterface; -class UserStoragesControllerTest extends StoragesControllerTest { +class UserStoragesControllerTest extends StoragesControllerTestCase { /** * @var array */ - private $oldAllowedBackends; + private array $oldAllowedBackends; protected function setUp(): void { parent::setUp(); - $this->service = $this->getMockBuilder('\OCA\Files_External\Service\UserStoragesService') - ->disableOriginalConstructor() - ->getMock(); + $this->service = $this->createMock(UserStoragesService::class); $this->service->method('getVisibilityType') ->willReturn(BackendService::VISIBILITY_PERSONAL); @@ -38,7 +40,7 @@ class UserStoragesControllerTest extends StoragesControllerTest { $this->controller = $this->createController(true); } - private function createController($allowCreateLocal = true) { + private function createController(bool $allowCreateLocal = true) { $session = $this->createMock(IUserSession::class); $session->method('getUser') ->willReturn(new User('test', null, $this->createMock(IEventDispatcher::class))); @@ -88,7 +90,7 @@ class UserStoragesControllerTest extends StoragesControllerTest { $response = $this->controller->create( 'mount', - '\OCA\Files_External\Lib\Storage\SMB', + SMB::class, '\Auth\Mechanism', [], [], @@ -102,7 +104,7 @@ class UserStoragesControllerTest extends StoragesControllerTest { $response = $this->controller->update( 1, 'mount', - '\OCA\Files_External\Lib\Storage\SMB', + SMB::class, '\Auth\Mechanism', [], [], diff --git a/apps/files_external/tests/DefinitionParameterTest.php b/apps/files_external/tests/DefinitionParameterTest.php index 3fc65eaf897..f39ba90c871 100644 --- a/apps/files_external/tests/DefinitionParameterTest.php +++ b/apps/files_external/tests/DefinitionParameterTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2019-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -48,7 +50,7 @@ class DefinitionParameterTest extends \Test\TestCase { ], $param->jsonSerialize()); } - public function validateValueProvider() { + public static function validateValueProvider(): array { return [ [Param::VALUE_TEXT, Param::FLAG_NONE, 'abc', true], [Param::VALUE_TEXT, Param::FLAG_NONE, '', false], diff --git a/apps/files_external/tests/FrontendDefinitionTraitTest.php b/apps/files_external/tests/FrontendDefinitionTraitTest.php index bc5d88ff3f0..a01b772bded 100644 --- a/apps/files_external/tests/FrontendDefinitionTraitTest.php +++ b/apps/files_external/tests/FrontendDefinitionTraitTest.php @@ -16,7 +16,7 @@ class FrontendDefinitionTraitTest extends \Test\TestCase { ->getMock(); $param->method('getName')->willReturn('foo'); - $trait = $this->getMockForTrait('\OCA\Files_External\Lib\FrontendDefinitionTrait'); + $trait = $this->getMockForTrait(\OCA\Files_External\Lib\FrontendDefinitionTrait::class); $trait->setText('test'); $trait->addParameters([$param]); $trait->addCustomJs('foo/bar.js'); @@ -32,7 +32,7 @@ class FrontendDefinitionTraitTest extends \Test\TestCase { $this->assertArrayHasKey('foo', $configuration); } - public function validateStorageProvider() { + public static function validateStorageProvider(): array { return [ [true, ['foo' => true, 'bar' => true, 'baz' => true]], [false, ['foo' => true, 'bar' => false]] @@ -42,7 +42,7 @@ class FrontendDefinitionTraitTest extends \Test\TestCase { /** * @dataProvider validateStorageProvider */ - public function testValidateStorage($expectedSuccess, $params): void { + public function testValidateStorage(bool $expectedSuccess, array $params): void { $backendParams = []; foreach ($params as $name => $valid) { $param = $this->getMockBuilder(DefinitionParameter::class) @@ -67,7 +67,7 @@ class FrontendDefinitionTraitTest extends \Test\TestCase { $storageConfig->expects($this->any()) ->method('setBackendOption'); - $trait = $this->getMockForTrait('\OCA\Files_External\Lib\FrontendDefinitionTrait'); + $trait = $this->getMockForTrait(\OCA\Files_External\Lib\FrontendDefinitionTrait::class); $trait->setText('test'); $trait->addParameters($backendParams); @@ -98,7 +98,7 @@ class FrontendDefinitionTraitTest extends \Test\TestCase { ->method('setBackendOption') ->with('param', 'foobar'); - $trait = $this->getMockForTrait('\OCA\Files_External\Lib\FrontendDefinitionTrait'); + $trait = $this->getMockForTrait(\OCA\Files_External\Lib\FrontendDefinitionTrait::class); $trait->setText('test'); $trait->addParameter($param); diff --git a/apps/files_external/tests/LegacyDependencyCheckPolyfillTest.php b/apps/files_external/tests/LegacyDependencyCheckPolyfillTest.php index 5fcfe1dd1e6..b6a351d44c0 100644 --- a/apps/files_external/tests/LegacyDependencyCheckPolyfillTest.php +++ b/apps/files_external/tests/LegacyDependencyCheckPolyfillTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2019-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -13,7 +15,7 @@ class LegacyDependencyCheckPolyfillTest extends \Test\TestCase { /** * @return MissingDependency[] */ - public static function checkDependencies() { + public static function checkDependencies(): array { return [ (new MissingDependency('dependency'))->setMessage('missing dependency'), (new MissingDependency('program'))->setMessage('cannot find program'), @@ -21,10 +23,10 @@ class LegacyDependencyCheckPolyfillTest extends \Test\TestCase { } public function testCheckDependencies(): void { - $trait = $this->getMockForTrait('\OCA\Files_External\Lib\LegacyDependencyCheckPolyfill'); + $trait = $this->getMockForTrait(\OCA\Files_External\Lib\LegacyDependencyCheckPolyfill::class); $trait->expects($this->once()) ->method('getStorageClass') - ->willReturn('\OCA\Files_External\Tests\LegacyDependencyCheckPolyfillTest'); + ->willReturn(self::class); $dependencies = $trait->checkDependencies(); $this->assertCount(2, $dependencies); diff --git a/apps/files_external/tests/Listener/StorePasswordListenerTest.php b/apps/files_external/tests/Listener/StorePasswordListenerTest.php index ec278f84331..04635b7dafd 100644 --- a/apps/files_external/tests/Listener/StorePasswordListenerTest.php +++ b/apps/files_external/tests/Listener/StorePasswordListenerTest.php @@ -22,15 +22,12 @@ use Test\TestCase; * @group DB */ class StorePasswordListenerTest extends TestCase { - /** @var MockObject|IUser */ - protected $mockedUser; + protected IUser&MockObject $mockedUser; protected function setUp(): void { parent::setUp(); $this->mockedUser = $this->createMock(IUser::class); - $this->mockedUser - ->expects($this->any()) - ->method('getUID') + $this->mockedUser->method('getUID') ->willReturn('test'); } diff --git a/apps/files_external/tests/OwnCloudFunctionsTest.php b/apps/files_external/tests/OwnCloudFunctionsTest.php index 3488195d3e8..2890cad3ac1 100644 --- a/apps/files_external/tests/OwnCloudFunctionsTest.php +++ b/apps/files_external/tests/OwnCloudFunctionsTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2019-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -16,7 +18,7 @@ use OCA\Files_External\Lib\Storage\OwnCloud; * @package OCA\Files_External\Tests */ class OwnCloudFunctionsTest extends \Test\TestCase { - public function configUrlProvider() { + public static function configUrlProvider(): array { return [ [ [ @@ -88,7 +90,7 @@ class OwnCloudFunctionsTest extends \Test\TestCase { /** * @dataProvider configUrlProvider */ - public function testConfig($config, $expectedUri): void { + public function testConfig(array $config, string $expectedUri): void { $config['user'] = 'someuser'; $config['password'] = 'somepassword'; $instance = new OwnCloud($config); diff --git a/apps/files_external/tests/PersonalMountTest.php b/apps/files_external/tests/PersonalMountTest.php index b268d3b5142..618048c3335 100644 --- a/apps/files_external/tests/PersonalMountTest.php +++ b/apps/files_external/tests/PersonalMountTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2019-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -8,6 +10,7 @@ namespace OCA\Files_External\Tests; use OC\Files\Mount\Manager; use OC\Files\SetupManagerFactory; +use OC\Files\Storage\Storage; use OCA\Files_External\Lib\PersonalMount; use OCA\Files_External\Lib\StorageConfig; use OCA\Files_External\Service\UserStoragesService; @@ -17,13 +20,9 @@ class PersonalMountTest extends TestCase { public function testFindByStorageId(): void { $storageConfig = $this->createMock(StorageConfig::class); /** @var UserStoragesService $storageService */ - $storageService = $this->getMockBuilder('\OCA\Files_External\Service\UserStoragesService') - ->disableOriginalConstructor() - ->getMock(); + $storageService = $this->createMock(UserStoragesService::class); - $storage = $this->getMockBuilder('\OC\Files\Storage\Storage') - ->disableOriginalConstructor() - ->getMock(); + $storage = $this->createMock(Storage::class); $storage->expects($this->any()) ->method('getId') diff --git a/apps/files_external/tests/Service/BackendServiceTest.php b/apps/files_external/tests/Service/BackendServiceTest.php index c3a77d81b67..1feefbc2b25 100644 --- a/apps/files_external/tests/Service/BackendServiceTest.php +++ b/apps/files_external/tests/Service/BackendServiceTest.php @@ -13,25 +13,20 @@ use OCA\Files_External\Lib\Config\IAuthMechanismProvider; use OCA\Files_External\Lib\Config\IBackendProvider; use OCA\Files_External\Service\BackendService; use OCP\IAppConfig; +use PHPUnit\Framework\MockObject\MockObject; class BackendServiceTest extends \Test\TestCase { - - /** @var IAppConfig|\PHPUnit\Framework\MockObject\MockObject */ - protected $appConfig; + protected IAppConfig&MockObject $appConfig; protected function setUp(): void { $this->appConfig = $this->createMock(IAppConfig::class); } /** - * @param string $class - * - * @return \OCA\Files_External\Lib\Backend\Backend|\PHPUnit\Framework\MockObject\MockObject + * @return \OCA\Files_External\Lib\Backend\Backend&MockObject */ - protected function getBackendMock($class) { - $backend = $this->getMockBuilder(Backend::class) - ->disableOriginalConstructor() - ->getMock(); + protected function getBackendMock(string $class) { + $backend = $this->createMock(Backend::class); $backend->method('getIdentifier')->willReturn('identifier:' . $class); $backend->method('getIdentifierAliases')->willReturn(['identifier:' . $class]); return $backend; @@ -40,12 +35,10 @@ class BackendServiceTest extends \Test\TestCase { /** * @param string $class * - * @return AuthMechanism|\PHPUnit\Framework\MockObject\MockObject + * @return AuthMechanism&MockObject */ protected function getAuthMechanismMock($class) { - $backend = $this->getMockBuilder(AuthMechanism::class) - ->disableOriginalConstructor() - ->getMock(); + $backend = $this->createMock(AuthMechanism::class); $backend->method('getIdentifier')->willReturn('identifier:' . $class); $backend->method('getIdentifierAliases')->willReturn(['identifier:' . $class]); return $backend; @@ -56,10 +49,8 @@ class BackendServiceTest extends \Test\TestCase { $backend = $this->getBackendMock('\Foo\Bar'); - /** @var \OCA\Files_External\Lib\Backend\Backend|\PHPUnit\Framework\MockObject\MockObject $backendAlias */ - $backendAlias = $this->getMockBuilder(Backend::class) - ->disableOriginalConstructor() - ->getMock(); + /** @var \OCA\Files_External\Lib\Backend\Backend&MockObject $backendAlias */ + $backendAlias = $this->createMock(Backend::class); $backendAlias->method('getIdentifierAliases') ->willReturn(['identifier_real', 'identifier_alias']); $backendAlias->method('getIdentifier') @@ -85,7 +76,7 @@ class BackendServiceTest extends \Test\TestCase { $backend1 = $this->getBackendMock('\Foo\Bar'); $backend2 = $this->getBackendMock('\Bar\Foo'); - /** @var IBackendProvider|\PHPUnit\Framework\MockObject\MockObject $providerMock */ + /** @var IBackendProvider&MockObject $providerMock */ $providerMock = $this->createMock(IBackendProvider::class); $providerMock->expects($this->once()) ->method('getBackends') @@ -104,7 +95,7 @@ class BackendServiceTest extends \Test\TestCase { $backend1 = $this->getAuthMechanismMock('\Foo\Bar'); $backend2 = $this->getAuthMechanismMock('\Bar\Foo'); - /** @var IAuthMechanismProvider|\PHPUnit\Framework\MockObject\MockObject $providerMock */ + /** @var IAuthMechanismProvider&MockObject $providerMock */ $providerMock = $this->createMock(IAuthMechanismProvider::class); $providerMock->expects($this->once()) ->method('getAuthMechanisms') @@ -125,13 +116,13 @@ class BackendServiceTest extends \Test\TestCase { $backend2 = $this->getBackendMock('\Dead\Beef'); - /** @var IBackendProvider|\PHPUnit\Framework\MockObject\MockObject $provider1Mock */ + /** @var IBackendProvider&MockObject $provider1Mock */ $provider1Mock = $this->createMock(IBackendProvider::class); $provider1Mock->expects($this->once()) ->method('getBackends') ->willReturn([$backend1a, $backend1b]); $service->registerBackendProvider($provider1Mock); - /** @var IBackendProvider|\PHPUnit\Framework\MockObject\MockObject $provider2Mock */ + /** @var IBackendProvider&MockObject $provider2Mock */ $provider2Mock = $this->createMock(IBackendProvider::class); $provider2Mock->expects($this->once()) ->method('getBackends') @@ -202,7 +193,7 @@ class BackendServiceTest extends \Test\TestCase { $this->assertArrayNotHasKey('identifier:\Backend\NotAvailable', $availableBackends); } - public function invalidConfigPlaceholderProvider() { + public static function invalidConfigPlaceholderProvider(): array { return [ [['@user']], [['$user']], diff --git a/apps/files_external/tests/Service/DBConfigServiceTest.php b/apps/files_external/tests/Service/DBConfigServiceTest.php index 51051d6c9f2..c902aa28270 100644 --- a/apps/files_external/tests/Service/DBConfigServiceTest.php +++ b/apps/files_external/tests/Service/DBConfigServiceTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2019-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -16,17 +18,10 @@ use Test\TestCase; * @group DB */ class DBConfigServiceTest extends TestCase { - /** - * @var DBConfigService - */ - private $dbConfig; - - /** - * @var IDBConnection - */ - private $connection; + private IDBConnection $connection; + private DBConfigService $dbConfig; - private $mounts = []; + private array $mounts = []; protected function setUp(): void { parent::setUp(); @@ -39,9 +34,10 @@ class DBConfigServiceTest extends TestCase { $this->dbConfig->removeMount($mount); } $this->mounts = []; + parent::tearDown(); } - private function addMount($mountPoint, $storageBackend, $authBackend, $priority, $type) { + private function addMount(string $mountPoint, string $storageBackend, string $authBackend, int $priority, int $type) { $id = $this->dbConfig->addMount($mountPoint, $storageBackend, $authBackend, $priority, $type); $this->mounts[] = $id; return $id; diff --git a/apps/files_external/tests/Service/GlobalStoragesServiceTest.php b/apps/files_external/tests/Service/GlobalStoragesServiceTest.php index b4907f7f00f..1a1754799dc 100644 --- a/apps/files_external/tests/Service/GlobalStoragesServiceTest.php +++ b/apps/files_external/tests/Service/GlobalStoragesServiceTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2019-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -14,7 +16,7 @@ use OCA\Files_External\Service\GlobalStoragesService; /** * @group DB */ -class GlobalStoragesServiceTest extends StoragesServiceTest { +class GlobalStoragesServiceTest extends StoragesServiceTestCase { protected function setUp(): void { parent::setUp(); $this->service = new GlobalStoragesService($this->backendService, $this->dbConfig, $this->mountCache, $this->eventDispatcher); @@ -44,7 +46,7 @@ class GlobalStoragesServiceTest extends StoragesServiceTest { ]); } - public function storageDataProvider() { + public static function storageDataProvider(): array { return [ // all users [ @@ -172,7 +174,7 @@ class GlobalStoragesServiceTest extends StoragesServiceTest { $this->assertEquals(0, $newStorage->getStatus()); } - public function hooksAddStorageDataProvider() { + public static function hooksAddStorageDataProvider(): array { return [ // applicable all [ @@ -301,7 +303,7 @@ class GlobalStoragesServiceTest extends StoragesServiceTest { } } - public function hooksUpdateStorageDataProvider() { + public static function hooksUpdateStorageDataProvider(): array { return [ [ // nothing to multiple users and groups @@ -421,11 +423,12 @@ class GlobalStoragesServiceTest extends StoragesServiceTest { * @dataProvider hooksUpdateStorageDataProvider */ public function testHooksUpdateStorage( - $sourceApplicableUsers, - $sourceApplicableGroups, - $updatedApplicableUsers, - $updatedApplicableGroups, - $expectedCalls): void { + array $sourceApplicableUsers, + array $sourceApplicableGroups, + array $updatedApplicableUsers, + array $updatedApplicableGroups, + array $expectedCalls, + ): void { $storage = $this->makeTestStorageData(); $storage->setApplicableUsers($sourceApplicableUsers); $storage->setApplicableGroups($sourceApplicableGroups); @@ -532,7 +535,7 @@ class GlobalStoragesServiceTest extends StoragesServiceTest { } } - public function hooksDeleteStorageDataProvider() { + public static function hooksDeleteStorageDataProvider(): array { return [ [ ['user1', 'user2'], @@ -580,9 +583,10 @@ class GlobalStoragesServiceTest extends StoragesServiceTest { * @dataProvider hooksDeleteStorageDataProvider */ public function testHooksDeleteStorage( - $sourceApplicableUsers, - $sourceApplicableGroups, - $expectedCalls): void { + array $sourceApplicableUsers, + array $sourceApplicableGroups, + array $expectedCalls, + ): void { $storage = $this->makeTestStorageData(); $storage->setApplicableUsers($sourceApplicableUsers); $storage->setApplicableGroups($sourceApplicableGroups); diff --git a/apps/files_external/tests/Service/StoragesServiceTest.php b/apps/files_external/tests/Service/StoragesServiceTestCase.php index 8d24b98d6af..a5cffd45ec2 100644 --- a/apps/files_external/tests/Service/StoragesServiceTest.php +++ b/apps/files_external/tests/Service/StoragesServiceTestCase.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2019-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -10,9 +12,10 @@ use OC\Files\Cache\Storage; use OC\Files\Filesystem; use OCA\Files_External\Lib\Auth\AuthMechanism; use OCA\Files_External\Lib\Auth\InvalidAuth; +use OCA\Files_External\Lib\Auth\NullMechanism; use OCA\Files_External\Lib\Backend\Backend; use OCA\Files_External\Lib\Backend\InvalidBackend; - +use OCA\Files_External\Lib\Backend\SMB; use OCA\Files_External\Lib\StorageConfig; use OCA\Files_External\MountConfig; use OCA\Files_External\NotFoundException; @@ -31,9 +34,10 @@ use OCP\IUser; use OCP\Security\ICrypto; use OCP\Server; use OCP\Util; +use PHPUnit\Framework\MockObject\MockObject; class CleaningDBConfig extends DBConfigService { - private $mountIds = []; + private array $mountIds = []; public function addMount($mountPoint, $storageBackend, $authBackend, $priority, $type) { $id = parent::addMount($mountPoint, $storageBackend, $authBackend, $priority, $type); // TODO: Change the autogenerated stub @@ -51,41 +55,14 @@ class CleaningDBConfig extends DBConfigService { /** * @group DB */ -abstract class StoragesServiceTest extends \Test\TestCase { - /** - * @var StoragesService - */ - protected $service; - - /** @var BackendService */ - protected $backendService; - - /** - * Data directory - * - * @var string - */ - protected $dataDir; - - /** @var CleaningDBConfig */ - protected $dbConfig; - - /** - * Hook calls - * - * @var array - */ - protected static $hookCalls; - - /** - * @var \PHPUnit\Framework\MockObject\MockObject|IUserMountCache - */ - protected $mountCache; - - /** - * @var \PHPUnit\Framework\MockObject\MockObject|IEventDispatcher - */ - protected IEventDispatcher $eventDispatcher; +abstract class StoragesServiceTestCase extends \Test\TestCase { + protected StoragesService $service; + protected BackendService $backendService; + protected string $dataDir; + protected CleaningDBConfig $dbConfig; + protected static array $hookCalls; + protected IUserMountCache&MockObject $mountCache; + protected IEventDispatcher&MockObject $eventDispatcher; protected function setUp(): void { parent::setUp(); @@ -102,10 +79,7 @@ abstract class StoragesServiceTest extends \Test\TestCase { $this->eventDispatcher = $this->createMock(IEventDispatcher::class); // prepare BackendService mock - $this->backendService = - $this->getMockBuilder('\OCA\Files_External\Service\BackendService') - ->disableOriginalConstructor() - ->getMock(); + $this->backendService = $this->createMock(BackendService::class); $authMechanisms = [ 'identifier:\Auth\Mechanism' => $this->getAuthMechMock('null', '\Auth\Mechanism'), @@ -172,12 +146,11 @@ abstract class StoragesServiceTest extends \Test\TestCase { if ($this->dbConfig) { $this->dbConfig->clean(); } + parent::tearDown(); } - protected function getBackendMock($class = '\OCA\Files_External\Lib\Backend\SMB', $storageClass = '\OCA\Files_External\Lib\Storage\SMB') { - $backend = $this->getMockBuilder(Backend::class) - ->disableOriginalConstructor() - ->getMock(); + protected function getBackendMock($class = SMB::class, $storageClass = \OCA\Files_External\Lib\Storage\SMB::class) { + $backend = $this->createMock(Backend::class); $backend->method('getStorageClass') ->willReturn($storageClass); $backend->method('getIdentifier') @@ -185,10 +158,8 @@ abstract class StoragesServiceTest extends \Test\TestCase { return $backend; } - protected function getAuthMechMock($scheme = 'null', $class = '\OCA\Files_External\Lib\Auth\NullMechanism') { - $authMech = $this->getMockBuilder(AuthMechanism::class) - ->disableOriginalConstructor() - ->getMock(); + protected function getAuthMechMock($scheme = 'null', $class = NullMechanism::class) { + $authMech = $this->createMock(AuthMechanism::class); $authMech->method('getScheme') ->willReturn($scheme); $authMech->method('getIdentifier') @@ -199,12 +170,8 @@ abstract class StoragesServiceTest extends \Test\TestCase { /** * Creates a StorageConfig instance based on array data - * - * @param array $data - * - * @return StorageConfig storage config instance */ - protected function makeStorageConfig($data) { + protected function makeStorageConfig(array $data): StorageConfig { $storage = new StorageConfig(); if (isset($data['id'])) { $storage->setId($data['id']); @@ -259,7 +226,7 @@ abstract class StoragesServiceTest extends \Test\TestCase { $this->ActualNonExistingStorageTest(); } - public function deleteStorageDataProvider() { + public static function deleteStorageDataProvider(): array { return [ // regular case, can properly delete the oc_storages entry [ @@ -286,7 +253,7 @@ abstract class StoragesServiceTest extends \Test\TestCase { /** * @dataProvider deleteStorageDataProvider */ - public function testDeleteStorage($backendOptions, $rustyStorageId): void { + public function testDeleteStorage(array $backendOptions, string $rustyStorageId): void { $backend = $this->backendService->getBackend('identifier:\OCA\Files_External\Lib\Backend\DAV'); $authMechanism = $this->backendService->getAuthMechanism('identifier:\Auth\Mechanism'); $storage = new StorageConfig(255); @@ -463,14 +430,14 @@ abstract class StoragesServiceTest extends \Test\TestCase { $this->assertEmpty($this->service->getStorages()); } - public static function createHookCallback($params) { + public static function createHookCallback($params): void { self::$hookCalls[] = [ 'signal' => Filesystem::signal_create_mount, 'params' => $params ]; } - public static function deleteHookCallback($params) { + public static function deleteHookCallback($params): void { self::$hookCalls[] = [ 'signal' => Filesystem::signal_delete_mount, 'params' => $params diff --git a/apps/files_external/tests/Service/UserGlobalStoragesServiceTest.php b/apps/files_external/tests/Service/UserGlobalStoragesServiceTest.php index e3c5cd486e9..1ec4e56bd9e 100644 --- a/apps/files_external/tests/Service/UserGlobalStoragesServiceTest.php +++ b/apps/files_external/tests/Service/UserGlobalStoragesServiceTest.php @@ -16,6 +16,7 @@ use OCP\IGroupManager; use OCP\IUser; use OCP\IUserSession; use OCP\Server; +use PHPUnit\Framework\MockObject\MockObject; use Test\Traits\UserTrait; /** @@ -24,20 +25,9 @@ use Test\Traits\UserTrait; class UserGlobalStoragesServiceTest extends GlobalStoragesServiceTest { use UserTrait; - /** @var IGroupManager|\PHPUnit\Framework\MockObject\MockObject groupManager */ - protected $groupManager; - - /** - * @var StoragesService - */ - protected $globalStoragesService; - - /** - * @var UserGlobalStoragesService - */ - protected $service; - - protected $user; + protected IGroupManager&MockObject $groupManager; + protected StoragesService $globalStoragesService; + protected User $user; public const USER_ID = 'test_user'; public const GROUP_ID = 'test_group'; @@ -49,7 +39,7 @@ class UserGlobalStoragesServiceTest extends GlobalStoragesServiceTest { $this->globalStoragesService = $this->service; $this->user = new User(self::USER_ID, null, Server::get(IEventDispatcher::class)); - /** @var IUserSession|\PHPUnit\Framework\MockObject\MockObject $userSession */ + /** @var IUserSession&MockObject $userSession */ $userSession = $this->createMock(IUserSession::class); $userSession ->expects($this->any()) @@ -87,7 +77,7 @@ class UserGlobalStoragesServiceTest extends GlobalStoragesServiceTest { ); } - public function applicableStorageProvider() { + public static function applicableStorageProvider(): array { return [ [[], [], true], @@ -211,7 +201,7 @@ class UserGlobalStoragesServiceTest extends GlobalStoragesServiceTest { $this->actualDeletedUnexistingStorageTest(); } - public function getUniqueStoragesProvider() { + public static function getUniqueStoragesProvider(): array { return [ // 'all' vs group [100, [], [], 100, [], [self::GROUP_ID], 2], diff --git a/apps/files_external/tests/Service/UserStoragesServiceTest.php b/apps/files_external/tests/Service/UserStoragesServiceTest.php index a7b9f200417..53d7f5960e8 100644 --- a/apps/files_external/tests/Service/UserStoragesServiceTest.php +++ b/apps/files_external/tests/Service/UserStoragesServiceTest.php @@ -17,22 +17,19 @@ use OCA\Files_External\Service\UserStoragesService; use OCP\IUserManager; use OCP\IUserSession; use OCP\Server; +use PHPUnit\Framework\MockObject\MockObject; use Test\Traits\UserTrait; /** * @group DB */ -class UserStoragesServiceTest extends StoragesServiceTest { +class UserStoragesServiceTest extends StoragesServiceTestCase { use UserTrait; - private $user; + protected \OC\User\User $user; - private $userId; - - /** - * @var StoragesService - */ - protected $globalStoragesService; + protected string $userId; + protected StoragesService $globalStoragesService; protected function setUp(): void { parent::setUp(); @@ -43,7 +40,7 @@ class UserStoragesServiceTest extends StoragesServiceTest { $this->createUser($this->userId, $this->userId); $this->user = Server::get(IUserManager::class)->get($this->userId); - /** @var IUserSession|\PHPUnit\Framework\MockObject\MockObject $userSession */ + /** @var IUserSession&MockObject $userSession */ $userSession = $this->createMock(IUserSession::class); $userSession ->expects($this->any()) diff --git a/apps/files_external/tests/Settings/AdminTest.php b/apps/files_external/tests/Settings/AdminTest.php index aceb8d2e915..fd4a1949760 100644 --- a/apps/files_external/tests/Settings/AdminTest.php +++ b/apps/files_external/tests/Settings/AdminTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later @@ -12,19 +14,15 @@ use OCA\Files_External\Service\GlobalStoragesService; use OCA\Files_External\Settings\Admin; use OCP\AppFramework\Http\TemplateResponse; use OCP\Encryption\IManager; +use PHPUnit\Framework\MockObject\MockObject; use Test\TestCase; class AdminTest extends TestCase { - /** @var Admin */ - private $admin; - /** @var IManager|\PHPUnit\Framework\MockObject\MockObject */ - private $encryptionManager; - /** @var GlobalStoragesService|\PHPUnit\Framework\MockObject\MockObject */ - private $globalStoragesService; - /** @var BackendService|\PHPUnit\Framework\MockObject\MockObject */ - private $backendService; - /** @var GlobalAuth|\PHPUnit\Framework\MockObject\MockObject */ - private $globalAuth; + private IManager&MockObject $encryptionManager; + private GlobalStoragesService&MockObject $globalStoragesService; + private BackendService&MockObject $backendService; + private GlobalAuth&MockObject $globalAuth; + private Admin $admin; protected function setUp(): void { parent::setUp(); diff --git a/apps/files_external/tests/Settings/SectionTest.php b/apps/files_external/tests/Settings/SectionTest.php index 9154106ff8a..c64849ff7ba 100644 --- a/apps/files_external/tests/Settings/SectionTest.php +++ b/apps/files_external/tests/Settings/SectionTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later @@ -8,20 +10,18 @@ namespace OCA\Files_External\Tests\Settings; use OCA\Files_External\Settings\Section; use OCP\IL10N; use OCP\IURLGenerator; +use PHPUnit\Framework\MockObject\MockObject; use Test\TestCase; class SectionTest extends TestCase { - /** @var IL10N */ - private $l; - /** @var IURLGenerator */ - private $urlGenerator; - /** @var Section */ - private $section; + private IL10N&MockObject $l; + private IURLGenerator&MockObject $urlGenerator; + private Section $section; protected function setUp(): void { parent::setUp(); - $this->urlGenerator = $this->getMockBuilder(IURLGenerator::class)->disableOriginalConstructor()->getMock(); - $this->l = $this->getMockBuilder(IL10N::class)->disableOriginalConstructor()->getMock(); + $this->urlGenerator = $this->createMock(IURLGenerator::class); + $this->l = $this->createMock(IL10N::class); $this->section = new Section( $this->urlGenerator, diff --git a/apps/files_external/tests/Storage/Amazons3MultiPartTest.php b/apps/files_external/tests/Storage/Amazons3MultiPartTest.php index 1ac18406d24..641f00d5147 100644 --- a/apps/files_external/tests/Storage/Amazons3MultiPartTest.php +++ b/apps/files_external/tests/Storage/Amazons3MultiPartTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later diff --git a/apps/files_external/tests/Storage/Amazons3Test.php b/apps/files_external/tests/Storage/Amazons3Test.php index fd7fd9225c9..6d27b0b3253 100644 --- a/apps/files_external/tests/Storage/Amazons3Test.php +++ b/apps/files_external/tests/Storage/Amazons3Test.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2019-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. diff --git a/apps/files_external/tests/Storage/FtpTest.php b/apps/files_external/tests/Storage/FtpTest.php index 81b92e0fae9..095a5236049 100644 --- a/apps/files_external/tests/Storage/FtpTest.php +++ b/apps/files_external/tests/Storage/FtpTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2019-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. diff --git a/apps/files_external/tests/Storage/OwncloudTest.php b/apps/files_external/tests/Storage/OwncloudTest.php index 28041a665f8..ab6cd443dba 100644 --- a/apps/files_external/tests/Storage/OwncloudTest.php +++ b/apps/files_external/tests/Storage/OwncloudTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2017-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. diff --git a/apps/files_external/tests/Storage/SFTP_KeyTest.php b/apps/files_external/tests/Storage/SFTP_KeyTest.php index 9be3cb7d3e8..17e2087f91b 100644 --- a/apps/files_external/tests/Storage/SFTP_KeyTest.php +++ b/apps/files_external/tests/Storage/SFTP_KeyTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2019-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -40,7 +42,7 @@ class SFTP_KeyTest extends \Test\Files\Storage\Storage { parent::tearDown(); } - + public function testInvalidAddressShouldThrowException(): void { $this->expectException(\InvalidArgumentException::class); @@ -52,24 +54,24 @@ class SFTP_KeyTest extends \Test\Files\Storage\Storage { $this->assertTrue($this->instance->assertHostAddressValid('localhost')); } - + public function testNegativePortNumberShouldThrowException(): void { $this->expectException(\InvalidArgumentException::class); $this->instance->assertPortNumberValid('-1'); } - + public function testNonNumericalPortNumberShouldThrowException(): void { $this->expectException(\InvalidArgumentException::class); $this->instance->assertPortNumberValid('a'); } - + public function testHighPortNumberShouldThrowException(): void { $this->expectException(\InvalidArgumentException::class); - + $this->instance->assertPortNumberValid('65536'); } diff --git a/apps/files_external/tests/Storage/SftpTest.php b/apps/files_external/tests/Storage/SftpTest.php index cc29486f426..082f0d7c502 100644 --- a/apps/files_external/tests/Storage/SftpTest.php +++ b/apps/files_external/tests/Storage/SftpTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2019-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -52,7 +54,7 @@ class SftpTest extends \Test\Files\Storage\Storage { $this->assertEquals($expectedStorageId, $instance->getId()); } - public function configProvider() { + public static function configProvider(): array { return [ [ // no root path diff --git a/apps/files_external/tests/Storage/SmbTest.php b/apps/files_external/tests/Storage/SmbTest.php index 51737d05dc6..afcb5c1034f 100644 --- a/apps/files_external/tests/Storage/SmbTest.php +++ b/apps/files_external/tests/Storage/SmbTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2017-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. diff --git a/apps/files_external/tests/Storage/SwiftTest.php b/apps/files_external/tests/Storage/SwiftTest.php index c21c8c6f506..17037e76ee3 100644 --- a/apps/files_external/tests/Storage/SwiftTest.php +++ b/apps/files_external/tests/Storage/SwiftTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2018-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. diff --git a/apps/files_external/tests/Storage/WebdavTest.php b/apps/files_external/tests/Storage/WebdavTest.php index f1d3415e91e..a8de178effd 100644 --- a/apps/files_external/tests/Storage/WebdavTest.php +++ b/apps/files_external/tests/Storage/WebdavTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2017-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. diff --git a/apps/files_external/tests/StorageConfigTest.php b/apps/files_external/tests/StorageConfigTest.php index b67d69a3ce7..b3024cb228c 100644 --- a/apps/files_external/tests/StorageConfigTest.php +++ b/apps/files_external/tests/StorageConfigTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2017-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -13,12 +15,8 @@ use OCA\Files_External\Lib\StorageConfig; class StorageConfigTest extends \Test\TestCase { public function testJsonSerialization(): void { - $backend = $this->getMockBuilder(Backend::class) - ->disableOriginalConstructor() - ->getMock(); - $parameter = $this->getMockBuilder(DefinitionParameter::class) - ->disableOriginalConstructor() - ->getMock(); + $backend = $this->createMock(Backend::class); + $parameter = $this->createMock(DefinitionParameter::class); $parameter ->expects($this->once()) ->method('getType') @@ -30,9 +28,7 @@ class StorageConfigTest extends \Test\TestCase { $backend->method('getIdentifier') ->willReturn('storage::identifier'); - $authMech = $this->getMockBuilder(AuthMechanism::class) - ->disableOriginalConstructor() - ->getMock(); + $authMech = $this->createMock(AuthMechanism::class); $authMech->method('getIdentifier') ->willReturn('auth::identifier'); diff --git a/apps/files_sharing/l10n/cs.js b/apps/files_sharing/l10n/cs.js index b81d24b6513..5516d79a1c2 100644 --- a/apps/files_sharing/l10n/cs.js +++ b/apps/files_sharing/l10n/cs.js @@ -314,6 +314,7 @@ OC.L10N.register( "Use this method to share files with individuals or organizations outside your organization. Files and folders can be shared via public share links and email addresses. You can also share to other Nextcloud accounts hosted on different instances using their federated cloud ID." : "Tuto metodu používejte pro sdílení souborů s jednotlivci nebo organizacemi vně té vaší. Soubory a složky je možné nasdílet prostřednictvím veřejných odkazů na sdílení a e-mailových adres. Je také možné nasdílet ostatním Nextcloud účtům hostovaným na různých instancích a to prostřednictvím jejich identifikátorů v rámci federovaného cloudu.", "Shares that are not part of the internal or external shares. This can be shares from apps or other sources." : "Sdílení, která nejsou součástí interních nebo externích sdílení. Toto mohou být sdílení z aplikací nebo jiných zdrojů.", "Share with accounts and teams" : "Nasdílet účtům a týmům", + "Email, federated cloud ID" : "E-mail, identif. federovaného cloudu", "Unable to load the shares list" : "Nedaří se načíst seznam sdílení", "Expires {relativetime}" : "Platnost končí {relativetime}", "this share just expired." : "platnost tohoto sdílení právě skončila.", diff --git a/apps/files_sharing/l10n/cs.json b/apps/files_sharing/l10n/cs.json index fc3d8509e17..412fd67e258 100644 --- a/apps/files_sharing/l10n/cs.json +++ b/apps/files_sharing/l10n/cs.json @@ -312,6 +312,7 @@ "Use this method to share files with individuals or organizations outside your organization. Files and folders can be shared via public share links and email addresses. You can also share to other Nextcloud accounts hosted on different instances using their federated cloud ID." : "Tuto metodu používejte pro sdílení souborů s jednotlivci nebo organizacemi vně té vaší. Soubory a složky je možné nasdílet prostřednictvím veřejných odkazů na sdílení a e-mailových adres. Je také možné nasdílet ostatním Nextcloud účtům hostovaným na různých instancích a to prostřednictvím jejich identifikátorů v rámci federovaného cloudu.", "Shares that are not part of the internal or external shares. This can be shares from apps or other sources." : "Sdílení, která nejsou součástí interních nebo externích sdílení. Toto mohou být sdílení z aplikací nebo jiných zdrojů.", "Share with accounts and teams" : "Nasdílet účtům a týmům", + "Email, federated cloud ID" : "E-mail, identif. federovaného cloudu", "Unable to load the shares list" : "Nedaří se načíst seznam sdílení", "Expires {relativetime}" : "Platnost končí {relativetime}", "this share just expired." : "platnost tohoto sdílení právě skončila.", diff --git a/apps/files_sharing/l10n/de.js b/apps/files_sharing/l10n/de.js index e686a33970e..8801321c4b1 100644 --- a/apps/files_sharing/l10n/de.js +++ b/apps/files_sharing/l10n/de.js @@ -310,7 +310,7 @@ OC.L10N.register( "Unable to fetch inherited shares" : "Vererbte Freigaben konnten nicht geladen werden", "Link shares" : "Freigaben teilen", "Shares" : "Freigaben", - "Use this method to share files with individuals or teams within your organization. If the recipient already has access to the share but cannot locate it, you can send them the internal share link for easy access." : "Diese Methode verwenden, um Dateien für Einzelpersonen oder Teams innerhalb deiner Organisation freizugeben. Wenn der Empfangende bereits Zugriff auf die Freigabe hat, diese aber nicht finden kann, kannst du ihnen den internen Freigabelink für einen einfachen Zugriff senden.", + "Use this method to share files with individuals or teams within your organization. If the recipient already has access to the share but cannot locate it, you can send them the internal share link for easy access." : "Verwende diese Methode, um Dateien für Personen oder Teams innerhalb deiner Organisation freizugeben. Wenn der Empfangende bereits Zugriff auf die Freigabe hat, diese aber nicht finden kann, kannst du ihm den internen Freigabelink für einen einfachen Zugriff senden.", "Use this method to share files with individuals or organizations outside your organization. Files and folders can be shared via public share links and email addresses. You can also share to other Nextcloud accounts hosted on different instances using their federated cloud ID." : "Verwende diese Methode, um Dateien für Personen oder Organisationen außerhalb deiner Organisation freizugeben. Dateien und Ordner können über öffentliche Freigabelinks und E-Mail-Adressen freigegeben werden. Du kannst auch Dateien für andere Nextcloud-Konten freigeben, die auf verschiedenen Instanzen gehostet werden, indem du deren Federated-Cloud-ID verwenden.", "Shares that are not part of the internal or external shares. This can be shares from apps or other sources." : "Freigaben, die nicht zu internen oder externen Freigaben gehören. Dies können Freigaben von Apps oder anderen Quellen sein.", "Share with accounts, teams, federated cloud IDs" : "Teilen mit Konten, Teams, Federated-Cloud-IDs", @@ -359,7 +359,7 @@ OC.L10N.register( "Shared by link" : "Über einen Link geteilt", "List of files that are shared by link." : "Liste der Dateien, die mittels Link geteilt wurden.", "No shared links" : "Keine geteilten Links", - "Files and folders you shared by link will show up here" : "Von dir mittels Link geteilte Dateien und Ordner werden hier angezeigt werden", + "Files and folders you shared by link will show up here" : "Von dir mittels Link geteilte Dateien und Ordner werden hier angezeigt", "File requests" : "Dateianfragen", "List of file requests." : "Liste der Dateianfragen.", "No file requests" : "Keine Dateianfragen", @@ -367,11 +367,11 @@ OC.L10N.register( "Deleted shares" : "Gelöschte Freigaben", "List of shares you left." : "Liste der Freigaben, die du verlassen hast.", "No deleted shares" : "Keine gelöschten Freigaben", - "Shares you have left will show up here" : "Freigaben, die du verlassen hast, werden hier angezeigt werden.", + "Shares you have left will show up here" : "Freigaben, die du verlassen hast, werden hier angezeigt", "Pending shares" : "Ausstehende Freigaben", "List of unapproved shares." : "Liste ungeprüfter Freigaben.", "No pending shares" : "Keine ausstehenden Freigaben", - "Shares you have received but not approved will show up here" : "Freigaben die du erhalten, aber nicht bestätigt hast, werden hier angezeigt", + "Shares you have received but not approved will show up here" : "Freigaben, die du erhalten, aber nicht bestätigt hast, werden hier angezeigt", "Error updating the share: {errorMessage}" : "Fehler beim Aktualisieren der Freigabe: {errorMessage}", "Error updating the share" : "Fehler beim Aktualisieren der Freigabe", "File \"{path}\" has been unshared" : "Freigabe für die Datei \"{path}\" wurde entfernt", diff --git a/apps/files_sharing/l10n/de.json b/apps/files_sharing/l10n/de.json index a797c90fe56..8c2da36e505 100644 --- a/apps/files_sharing/l10n/de.json +++ b/apps/files_sharing/l10n/de.json @@ -308,7 +308,7 @@ "Unable to fetch inherited shares" : "Vererbte Freigaben konnten nicht geladen werden", "Link shares" : "Freigaben teilen", "Shares" : "Freigaben", - "Use this method to share files with individuals or teams within your organization. If the recipient already has access to the share but cannot locate it, you can send them the internal share link for easy access." : "Diese Methode verwenden, um Dateien für Einzelpersonen oder Teams innerhalb deiner Organisation freizugeben. Wenn der Empfangende bereits Zugriff auf die Freigabe hat, diese aber nicht finden kann, kannst du ihnen den internen Freigabelink für einen einfachen Zugriff senden.", + "Use this method to share files with individuals or teams within your organization. If the recipient already has access to the share but cannot locate it, you can send them the internal share link for easy access." : "Verwende diese Methode, um Dateien für Personen oder Teams innerhalb deiner Organisation freizugeben. Wenn der Empfangende bereits Zugriff auf die Freigabe hat, diese aber nicht finden kann, kannst du ihm den internen Freigabelink für einen einfachen Zugriff senden.", "Use this method to share files with individuals or organizations outside your organization. Files and folders can be shared via public share links and email addresses. You can also share to other Nextcloud accounts hosted on different instances using their federated cloud ID." : "Verwende diese Methode, um Dateien für Personen oder Organisationen außerhalb deiner Organisation freizugeben. Dateien und Ordner können über öffentliche Freigabelinks und E-Mail-Adressen freigegeben werden. Du kannst auch Dateien für andere Nextcloud-Konten freigeben, die auf verschiedenen Instanzen gehostet werden, indem du deren Federated-Cloud-ID verwenden.", "Shares that are not part of the internal or external shares. This can be shares from apps or other sources." : "Freigaben, die nicht zu internen oder externen Freigaben gehören. Dies können Freigaben von Apps oder anderen Quellen sein.", "Share with accounts, teams, federated cloud IDs" : "Teilen mit Konten, Teams, Federated-Cloud-IDs", @@ -357,7 +357,7 @@ "Shared by link" : "Über einen Link geteilt", "List of files that are shared by link." : "Liste der Dateien, die mittels Link geteilt wurden.", "No shared links" : "Keine geteilten Links", - "Files and folders you shared by link will show up here" : "Von dir mittels Link geteilte Dateien und Ordner werden hier angezeigt werden", + "Files and folders you shared by link will show up here" : "Von dir mittels Link geteilte Dateien und Ordner werden hier angezeigt", "File requests" : "Dateianfragen", "List of file requests." : "Liste der Dateianfragen.", "No file requests" : "Keine Dateianfragen", @@ -365,11 +365,11 @@ "Deleted shares" : "Gelöschte Freigaben", "List of shares you left." : "Liste der Freigaben, die du verlassen hast.", "No deleted shares" : "Keine gelöschten Freigaben", - "Shares you have left will show up here" : "Freigaben, die du verlassen hast, werden hier angezeigt werden.", + "Shares you have left will show up here" : "Freigaben, die du verlassen hast, werden hier angezeigt", "Pending shares" : "Ausstehende Freigaben", "List of unapproved shares." : "Liste ungeprüfter Freigaben.", "No pending shares" : "Keine ausstehenden Freigaben", - "Shares you have received but not approved will show up here" : "Freigaben die du erhalten, aber nicht bestätigt hast, werden hier angezeigt", + "Shares you have received but not approved will show up here" : "Freigaben, die du erhalten, aber nicht bestätigt hast, werden hier angezeigt", "Error updating the share: {errorMessage}" : "Fehler beim Aktualisieren der Freigabe: {errorMessage}", "Error updating the share" : "Fehler beim Aktualisieren der Freigabe", "File \"{path}\" has been unshared" : "Freigabe für die Datei \"{path}\" wurde entfernt", diff --git a/apps/files_sharing/l10n/de_DE.js b/apps/files_sharing/l10n/de_DE.js index 608e60101c9..3a60bab00d5 100644 --- a/apps/files_sharing/l10n/de_DE.js +++ b/apps/files_sharing/l10n/de_DE.js @@ -310,7 +310,7 @@ OC.L10N.register( "Unable to fetch inherited shares" : "Laden der vererbten Freigaben fehlgeschlagen", "Link shares" : "Freigaben teilen", "Shares" : "Freigaben", - "Use this method to share files with individuals or teams within your organization. If the recipient already has access to the share but cannot locate it, you can send them the internal share link for easy access." : "Diese Methode verwenden, um Dateien für Einzelpersonen oder Teams innerhalb Ihrer Organisation freizugeben. Wenn der Empfänger bereits Zugriff auf die Freigabe hat, diese aber nicht finden kann, können Sie ihm den internen Freigabelink für einen einfachen Zugriff senden.", + "Use this method to share files with individuals or teams within your organization. If the recipient already has access to the share but cannot locate it, you can send them the internal share link for easy access." : "Verwenden Sie diese Methode, um Dateien für Personen oder Teams innerhalb Ihrer Organisation freizugeben. Wenn der Empfänger bereits Zugriff auf die Freigabe hat, diese aber nicht finden kann, können Sie ihm den internen Freigabelink für einen einfachen Zugriff senden.", "Use this method to share files with individuals or organizations outside your organization. Files and folders can be shared via public share links and email addresses. You can also share to other Nextcloud accounts hosted on different instances using their federated cloud ID." : "Verwenden Sie diese Methode, um Dateien für Personen oder Organisationen außerhalb Ihrer Organisation freizugeben. Dateien und Ordner können über öffentliche Freigabelinks und E-Mail-Adressen freigegeben werden. Sie können auch Dateien für andere Nextcloud-Konten freigeben, die auf verschiedenen Instanzen gehostet werden, indem Sie deren Federated-Cloud-ID verwenden.", "Shares that are not part of the internal or external shares. This can be shares from apps or other sources." : "Freigaben, die nicht zu internen oder externen Freigaben gehören. Dies können Freigaben von Apps oder anderen Quellen sein.", "Share with accounts, teams, federated cloud IDs" : "Teilen mit Konten, Teams, Federated-Cloud-IDs", @@ -348,18 +348,18 @@ OC.L10N.register( "Files and folders shared with you will show up here" : "Mit Ihnen geteilte Dateien und Ordner werden hier angezeigt", "Overview of shared files." : "Übersicht geteilter Dateien", "No shares" : "Keine Freigaben", - "Files and folders you shared or have been shared with you will show up here" : "Von Ihnen oder mit Ihnen geteilte Ordner und Dateien werden hier angezeigt werden", + "Files and folders you shared or have been shared with you will show up here" : "Von Ihnen oder mit Ihnen geteilte Ordner und Dateien werden hier angezeigt", "Shared with you" : "Mit Ihnen geteilt", "List of files that are shared with you." : "Liste der Dateien, die mit Ihnen geteilt wurden.", "Nothing shared with you yet" : "Bis jetzt wurde nichts mit Ihnen geteilt", - "Files and folders others shared with you will show up here" : "Mit Ihnen geteilte Dateien und Ordner werden hier angezeigt werden", + "Files and folders others shared with you will show up here" : "Mit Ihnen geteilte Dateien und Ordner werden hier angezeigt", "List of files that you shared with others." : "Liste der Dateien, die Sie mit anderen geteilt haben.", "Nothing shared yet" : "Noch nichts geteilt", - "Files and folders you shared will show up here" : "Von Ihnen geteilte Dateien und Ordner werden hier angezeigt werden", + "Files and folders you shared will show up here" : "Von Ihnen geteilte Dateien und Ordner werden hier angezeigt", "Shared by link" : "Über einen Link geteilt", "List of files that are shared by link." : "Liste der Dateien, die mittels Link geteilt wurden.", "No shared links" : "Keine geteilten Links", - "Files and folders you shared by link will show up here" : "Von Ihnen mittels Link geteilte Dateien und Ordner werden hier angezeigt werden", + "Files and folders you shared by link will show up here" : "Von Ihnen mittels Link geteilte Dateien und Ordner werden hier angezeigt", "File requests" : "Dateianfragen", "List of file requests." : "Liste der Dateianfragen.", "No file requests" : "Keine Dateianfragen", @@ -367,11 +367,11 @@ OC.L10N.register( "Deleted shares" : "Gelöschte Freigaben", "List of shares you left." : "Liste der Freigaben, die Sie verlassen haben.", "No deleted shares" : "Keine gelöschten Freigaben", - "Shares you have left will show up here" : "Freigaben die Sie verlassen haben, werden hier angezeigt werden", + "Shares you have left will show up here" : "Freigaben, die Sie verlassen haben, werden hier angezeigt", "Pending shares" : "Ausstehende Freigaben", "List of unapproved shares." : "Liste ungeprüfter Freigaben.", "No pending shares" : "Keine ausstehenden Freigaben", - "Shares you have received but not approved will show up here" : "Freigaben die Sie erhalten, aber nicht bestätigt haben, werden hier angezeigt werden", + "Shares you have received but not approved will show up here" : "Freigaben, die Sie erhalten, aber nicht bestätigt haben, werden hier angezeigt", "Error updating the share: {errorMessage}" : "Fehler beim Aktualisieren der Freigabe: {errorMessage}", "Error updating the share" : "Fehler beim Aktualisieren der Freigabe", "File \"{path}\" has been unshared" : "Freigabe für die Datei \"{path}\" wurde entfernt", diff --git a/apps/files_sharing/l10n/de_DE.json b/apps/files_sharing/l10n/de_DE.json index 97c1ac18a7c..8d95f9dc4ec 100644 --- a/apps/files_sharing/l10n/de_DE.json +++ b/apps/files_sharing/l10n/de_DE.json @@ -308,7 +308,7 @@ "Unable to fetch inherited shares" : "Laden der vererbten Freigaben fehlgeschlagen", "Link shares" : "Freigaben teilen", "Shares" : "Freigaben", - "Use this method to share files with individuals or teams within your organization. If the recipient already has access to the share but cannot locate it, you can send them the internal share link for easy access." : "Diese Methode verwenden, um Dateien für Einzelpersonen oder Teams innerhalb Ihrer Organisation freizugeben. Wenn der Empfänger bereits Zugriff auf die Freigabe hat, diese aber nicht finden kann, können Sie ihm den internen Freigabelink für einen einfachen Zugriff senden.", + "Use this method to share files with individuals or teams within your organization. If the recipient already has access to the share but cannot locate it, you can send them the internal share link for easy access." : "Verwenden Sie diese Methode, um Dateien für Personen oder Teams innerhalb Ihrer Organisation freizugeben. Wenn der Empfänger bereits Zugriff auf die Freigabe hat, diese aber nicht finden kann, können Sie ihm den internen Freigabelink für einen einfachen Zugriff senden.", "Use this method to share files with individuals or organizations outside your organization. Files and folders can be shared via public share links and email addresses. You can also share to other Nextcloud accounts hosted on different instances using their federated cloud ID." : "Verwenden Sie diese Methode, um Dateien für Personen oder Organisationen außerhalb Ihrer Organisation freizugeben. Dateien und Ordner können über öffentliche Freigabelinks und E-Mail-Adressen freigegeben werden. Sie können auch Dateien für andere Nextcloud-Konten freigeben, die auf verschiedenen Instanzen gehostet werden, indem Sie deren Federated-Cloud-ID verwenden.", "Shares that are not part of the internal or external shares. This can be shares from apps or other sources." : "Freigaben, die nicht zu internen oder externen Freigaben gehören. Dies können Freigaben von Apps oder anderen Quellen sein.", "Share with accounts, teams, federated cloud IDs" : "Teilen mit Konten, Teams, Federated-Cloud-IDs", @@ -346,18 +346,18 @@ "Files and folders shared with you will show up here" : "Mit Ihnen geteilte Dateien und Ordner werden hier angezeigt", "Overview of shared files." : "Übersicht geteilter Dateien", "No shares" : "Keine Freigaben", - "Files and folders you shared or have been shared with you will show up here" : "Von Ihnen oder mit Ihnen geteilte Ordner und Dateien werden hier angezeigt werden", + "Files and folders you shared or have been shared with you will show up here" : "Von Ihnen oder mit Ihnen geteilte Ordner und Dateien werden hier angezeigt", "Shared with you" : "Mit Ihnen geteilt", "List of files that are shared with you." : "Liste der Dateien, die mit Ihnen geteilt wurden.", "Nothing shared with you yet" : "Bis jetzt wurde nichts mit Ihnen geteilt", - "Files and folders others shared with you will show up here" : "Mit Ihnen geteilte Dateien und Ordner werden hier angezeigt werden", + "Files and folders others shared with you will show up here" : "Mit Ihnen geteilte Dateien und Ordner werden hier angezeigt", "List of files that you shared with others." : "Liste der Dateien, die Sie mit anderen geteilt haben.", "Nothing shared yet" : "Noch nichts geteilt", - "Files and folders you shared will show up here" : "Von Ihnen geteilte Dateien und Ordner werden hier angezeigt werden", + "Files and folders you shared will show up here" : "Von Ihnen geteilte Dateien und Ordner werden hier angezeigt", "Shared by link" : "Über einen Link geteilt", "List of files that are shared by link." : "Liste der Dateien, die mittels Link geteilt wurden.", "No shared links" : "Keine geteilten Links", - "Files and folders you shared by link will show up here" : "Von Ihnen mittels Link geteilte Dateien und Ordner werden hier angezeigt werden", + "Files and folders you shared by link will show up here" : "Von Ihnen mittels Link geteilte Dateien und Ordner werden hier angezeigt", "File requests" : "Dateianfragen", "List of file requests." : "Liste der Dateianfragen.", "No file requests" : "Keine Dateianfragen", @@ -365,11 +365,11 @@ "Deleted shares" : "Gelöschte Freigaben", "List of shares you left." : "Liste der Freigaben, die Sie verlassen haben.", "No deleted shares" : "Keine gelöschten Freigaben", - "Shares you have left will show up here" : "Freigaben die Sie verlassen haben, werden hier angezeigt werden", + "Shares you have left will show up here" : "Freigaben, die Sie verlassen haben, werden hier angezeigt", "Pending shares" : "Ausstehende Freigaben", "List of unapproved shares." : "Liste ungeprüfter Freigaben.", "No pending shares" : "Keine ausstehenden Freigaben", - "Shares you have received but not approved will show up here" : "Freigaben die Sie erhalten, aber nicht bestätigt haben, werden hier angezeigt werden", + "Shares you have received but not approved will show up here" : "Freigaben, die Sie erhalten, aber nicht bestätigt haben, werden hier angezeigt", "Error updating the share: {errorMessage}" : "Fehler beim Aktualisieren der Freigabe: {errorMessage}", "Error updating the share" : "Fehler beim Aktualisieren der Freigabe", "File \"{path}\" has been unshared" : "Freigabe für die Datei \"{path}\" wurde entfernt", diff --git a/apps/files_sharing/l10n/sr.js b/apps/files_sharing/l10n/sr.js index 26f8840d067..fd1fde2794c 100644 --- a/apps/files_sharing/l10n/sr.js +++ b/apps/files_sharing/l10n/sr.js @@ -313,7 +313,9 @@ OC.L10N.register( "Use this method to share files with individuals or teams within your organization. If the recipient already has access to the share but cannot locate it, you can send them the internal share link for easy access." : "Употребите ову методу да фајлове делите да појединцима или тимовима унутар своје организације. Ако прималац већ има приступ дељењу, али не може да га лоцира, можете му послати интерни линк дељења тако да може лако да му приступи.", "Use this method to share files with individuals or organizations outside your organization. Files and folders can be shared via public share links and email addresses. You can also share to other Nextcloud accounts hosted on different instances using their federated cloud ID." : "Употребите ову методу да фајлове делите са појединцима или организацијама ван своје организације. Фајлови и фолдери могу да се деле путем јавних линкова дељења и и-мејл адресама. Такође можете да делите осталим Nextcloud налозима који се хостују на другим инстанцама користећи њихов ID здруженог облака.", "Shares that are not part of the internal or external shares. This can be shares from apps or other sources." : "Дељења која нису део интерних или спољних дељења. Ово могу бити дељења из апликација или осталих извора.", + "Share with accounts, teams, federated cloud IDs" : "Дели са налозима, тимовима, ID-јевима здруженог облака", "Share with accounts and teams" : "Дељење са налозима и тимовима", + "Email, federated cloud ID" : "И-мејл, ID здруженог облака", "Unable to load the shares list" : "Неуспело учитавање листе дељења", "Expires {relativetime}" : "Истиче {relativetime}", "this share just expired." : "ово дељење је управо истекло.", diff --git a/apps/files_sharing/l10n/sr.json b/apps/files_sharing/l10n/sr.json index 4d33aa6ab03..c4d99ff0434 100644 --- a/apps/files_sharing/l10n/sr.json +++ b/apps/files_sharing/l10n/sr.json @@ -311,7 +311,9 @@ "Use this method to share files with individuals or teams within your organization. If the recipient already has access to the share but cannot locate it, you can send them the internal share link for easy access." : "Употребите ову методу да фајлове делите да појединцима или тимовима унутар своје организације. Ако прималац већ има приступ дељењу, али не може да га лоцира, можете му послати интерни линк дељења тако да може лако да му приступи.", "Use this method to share files with individuals or organizations outside your organization. Files and folders can be shared via public share links and email addresses. You can also share to other Nextcloud accounts hosted on different instances using their federated cloud ID." : "Употребите ову методу да фајлове делите са појединцима или организацијама ван своје организације. Фајлови и фолдери могу да се деле путем јавних линкова дељења и и-мејл адресама. Такође можете да делите осталим Nextcloud налозима који се хостују на другим инстанцама користећи њихов ID здруженог облака.", "Shares that are not part of the internal or external shares. This can be shares from apps or other sources." : "Дељења која нису део интерних или спољних дељења. Ово могу бити дељења из апликација или осталих извора.", + "Share with accounts, teams, federated cloud IDs" : "Дели са налозима, тимовима, ID-јевима здруженог облака", "Share with accounts and teams" : "Дељење са налозима и тимовима", + "Email, federated cloud ID" : "И-мејл, ID здруженог облака", "Unable to load the shares list" : "Неуспело учитавање листе дељења", "Expires {relativetime}" : "Истиче {relativetime}", "this share just expired." : "ово дељење је управо истекло.", diff --git a/apps/files_versions/tests/BackgroundJob/ExpireVersionsTest.php b/apps/files_versions/tests/BackgroundJob/ExpireVersionsTest.php index 7a35e9f5f39..21e88e86f90 100644 --- a/apps/files_versions/tests/BackgroundJob/ExpireVersionsTest.php +++ b/apps/files_versions/tests/BackgroundJob/ExpireVersionsTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later @@ -16,17 +18,10 @@ use PHPUnit\Framework\MockObject\MockObject; use Test\TestCase; class ExpireVersionsTest extends TestCase { - /** @var IConfig|MockObject */ - private $config; - - /** @var IUserManager|MockObject */ - private $userManager; - - /** @var Expiration|MockObject */ - private $expiration; - - /** @var IJobList|MockObject */ - private $jobList; + private IConfig&MockObject $config; + private IUserManager&MockObject $userManager; + private Expiration&MockObject $expiration; + private IJobList&MockObject $jobList; protected function setUp(): void { parent::setUp(); diff --git a/apps/files_versions/tests/Command/CleanupTest.php b/apps/files_versions/tests/Command/CleanupTest.php index 62d9576e9c5..b0a5c0ca268 100644 --- a/apps/files_versions/tests/Command/CleanupTest.php +++ b/apps/files_versions/tests/Command/CleanupTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2017-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -8,11 +10,13 @@ namespace OCA\Files_Versions\Tests\Command; use OC\User\Manager; use OCA\Files_Versions\Command\CleanUp; +use OCA\Files_Versions\Db\VersionsMapper; use OCP\Files\Cache\ICache; use OCP\Files\Folder; use OCP\Files\IRootFolder; use OCP\Files\Storage\IStorage; use OCP\UserInterface; +use PHPUnit\Framework\MockObject\MockObject; use Test\TestCase; /** @@ -23,28 +27,17 @@ use Test\TestCase; * @package OCA\Files_Versions\Tests\Command */ class CleanupTest extends TestCase { - - /** @var CleanUp */ - protected $cleanup; - - /** @var \PHPUnit\Framework\MockObject\MockObject | Manager */ - protected $userManager; - - /** @var \PHPUnit\Framework\MockObject\MockObject | IRootFolder */ - protected $rootFolder; - - /** @var \PHPUnit\Framework\MockObject\MockObject | VersionsMapper */ - protected $versionMapper; + protected Manager&MockObject $userManager; + protected IRootFolder&MockObject $rootFolder; + protected VersionsMapper&MockObject $versionMapper; + protected CleanUp $cleanup; protected function setUp(): void { parent::setUp(); - $this->rootFolder = $this->getMockBuilder('OCP\Files\IRootFolder') - ->disableOriginalConstructor()->getMock(); - $this->userManager = $this->getMockBuilder('OC\User\Manager') - ->disableOriginalConstructor()->getMock(); - $this->versionMapper = $this->getMockBuilder('OCA\Files_Versions\Db\VersionsMapper') - ->disableOriginalConstructor()->getMock(); + $this->rootFolder = $this->createMock(IRootFolder::class); + $this->userManager = $this->createMock(Manager::class); + $this->versionMapper = $this->createMock(VersionsMapper::class); $this->cleanup = new CleanUp($this->rootFolder, $this->userManager, $this->versionMapper); } @@ -53,7 +46,7 @@ class CleanupTest extends TestCase { * @dataProvider dataTestDeleteVersions * @param boolean $nodeExists */ - public function testDeleteVersions($nodeExists): void { + public function testDeleteVersions(bool $nodeExists): void { $this->rootFolder->expects($this->once()) ->method('nodeExists') ->with('/testUser/files_versions') @@ -92,7 +85,7 @@ class CleanupTest extends TestCase { $this->invokePrivate($this->cleanup, 'deleteVersions', ['testUser']); } - public function dataTestDeleteVersions() { + public static function dataTestDeleteVersions(): array { return [ [true], [false] @@ -106,8 +99,8 @@ class CleanupTest extends TestCase { public function testExecuteDeleteListOfUsers(): void { $userIds = ['user1', 'user2', 'user3']; - $instance = $this->getMockBuilder('OCA\Files_Versions\Command\CleanUp') - ->setMethods(['deleteVersions']) + $instance = $this->getMockBuilder(CleanUp::class) + ->onlyMethods(['deleteVersions']) ->setConstructorArgs([$this->rootFolder, $this->userManager, $this->versionMapper]) ->getMock(); $instance->expects($this->exactly(count($userIds))) @@ -119,14 +112,12 @@ class CleanupTest extends TestCase { $this->userManager->expects($this->exactly(count($userIds))) ->method('userExists')->willReturn(true); - $inputInterface = $this->getMockBuilder('\Symfony\Component\Console\Input\InputInterface') - ->disableOriginalConstructor()->getMock(); + $inputInterface = $this->createMock(\Symfony\Component\Console\Input\InputInterface::class); $inputInterface->expects($this->once())->method('getArgument') ->with('user_id') ->willReturn($userIds); - $outputInterface = $this->getMockBuilder('\Symfony\Component\Console\Output\OutputInterface') - ->disableOriginalConstructor()->getMock(); + $outputInterface = $this->createMock(\Symfony\Component\Console\Output\OutputInterface::class); $this->invokePrivate($instance, 'execute', [$inputInterface, $outputInterface]); } @@ -138,8 +129,8 @@ class CleanupTest extends TestCase { $userIds = []; $backendUsers = ['user1', 'user2']; - $instance = $this->getMockBuilder('OCA\Files_Versions\Command\CleanUp') - ->setMethods(['deleteVersions']) + $instance = $this->getMockBuilder(CleanUp::class) + ->onlyMethods(['deleteVersions']) ->setConstructorArgs([$this->rootFolder, $this->userManager, $this->versionMapper]) ->getMock(); @@ -155,14 +146,12 @@ class CleanupTest extends TestCase { $this->assertTrue(in_array($user, $backendUsers)); }); - $inputInterface = $this->getMockBuilder('\Symfony\Component\Console\Input\InputInterface') - ->disableOriginalConstructor()->getMock(); + $inputInterface = $this->createMock(\Symfony\Component\Console\Input\InputInterface::class); $inputInterface->expects($this->once())->method('getArgument') ->with('user_id') ->willReturn($userIds); - $outputInterface = $this->getMockBuilder('\Symfony\Component\Console\Output\OutputInterface') - ->disableOriginalConstructor()->getMock(); + $outputInterface = $this->createMock(\Symfony\Component\Console\Output\OutputInterface::class); $this->userManager->expects($this->once()) ->method('getBackends') diff --git a/apps/files_versions/tests/Command/ExpireTest.php b/apps/files_versions/tests/Command/ExpireTest.php index 11f4eb2e2be..b74457a7fd6 100644 --- a/apps/files_versions/tests/Command/ExpireTest.php +++ b/apps/files_versions/tests/Command/ExpireTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. diff --git a/apps/files_versions/tests/Controller/PreviewControllerTest.php b/apps/files_versions/tests/Controller/PreviewControllerTest.php index 0e36703d5aa..542ea2b6b34 100644 --- a/apps/files_versions/tests/Controller/PreviewControllerTest.php +++ b/apps/files_versions/tests/Controller/PreviewControllerTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later @@ -12,7 +14,6 @@ use OCP\AppFramework\Http; use OCP\AppFramework\Http\DataResponse; use OCP\Files\File; use OCP\Files\Folder; -use OCP\Files\IMimeTypeDetector; use OCP\Files\IRootFolder; use OCP\Files\NotFoundException; use OCP\Files\SimpleFS\ISimpleFile; @@ -25,29 +26,14 @@ use PHPUnit\Framework\MockObject\MockObject; use Test\TestCase; class PreviewControllerTest extends TestCase { - - /** @var IRootFolder|\PHPUnit\Framework\MockObject\MockObject */ - private $rootFolder; - - /** @var string */ - private $userId; - - /** @var IMimeTypeDetector|\PHPUnit\Framework\MockObject\MockObject */ - private $mimeTypeDetector; - - /** @var IPreview|\PHPUnit\Framework\MockObject\MockObject */ - private $previewManager; - - /** @var PreviewController|\PHPUnit\Framework\MockObject\MockObject */ - private $controller; - - /** @var IUserSession|\PHPUnit\Framework\MockObject\MockObject */ - private $userSession; - - /** @var IVersionManager|\PHPUnit\Framework\MockObject\MockObject */ - private $versionManager; + private IRootFolder&MockObject $rootFolder; + private string $userId; + private IPreview&MockObject $previewManager; + private IUserSession&MockObject $userSession; + private IVersionManager&MockObject $versionManager; private IMimeIconProvider&MockObject $mimeIconProvider; + private PreviewController $controller; protected function setUp(): void { parent::setUp(); diff --git a/apps/files_versions/tests/ExpirationTest.php b/apps/files_versions/tests/ExpirationTest.php index ac8af7c093a..866e4861741 100644 --- a/apps/files_versions/tests/ExpirationTest.php +++ b/apps/files_versions/tests/ExpirationTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -15,7 +17,7 @@ use Psr\Log\LoggerInterface; class ExpirationTest extends \Test\TestCase { public const SECONDS_PER_DAY = 86400; //60*60*24 - public function expirationData() { + public static function expirationData(): array { $today = 100 * self::SECONDS_PER_DAY; $back10Days = (100 - 10) * self::SECONDS_PER_DAY; $back20Days = (100 - 20) * self::SECONDS_PER_DAY; @@ -81,14 +83,8 @@ class ExpirationTest extends \Test\TestCase { /** * @dataProvider expirationData - * - * @param string $retentionObligation - * @param int $timeNow - * @param int $timestamp - * @param bool $quotaExceeded - * @param string $expectedResult */ - public function testExpiration($retentionObligation, $timeNow, $timestamp, $quotaExceeded, $expectedResult): void { + public function testExpiration(string $retentionObligation, int $timeNow, int $timestamp, bool $quotaExceeded, bool $expectedResult): void { $mockedConfig = $this->getMockedConfig($retentionObligation); $mockedTimeFactory = $this->getMockedTimeFactory($timeNow); $mockedLogger = $this->createMock(LoggerInterface::class); @@ -100,11 +96,7 @@ class ExpirationTest extends \Test\TestCase { } - /** - * @param int $time - * @return ITimeFactory|MockObject - */ - private function getMockedTimeFactory($time) { + private function getMockedTimeFactory(int $time): ITimeFactory&MockObject { $mockedTimeFactory = $this->createMock(ITimeFactory::class); $mockedTimeFactory->expects($this->any()) ->method('getTime') @@ -113,11 +105,7 @@ class ExpirationTest extends \Test\TestCase { return $mockedTimeFactory; } - /** - * @param string $returnValue - * @return IConfig|MockObject - */ - private function getMockedConfig($returnValue) { + private function getMockedConfig(string $returnValue): IConfig&MockObject { $mockedConfig = $this->createMock(IConfig::class); $mockedConfig->expects($this->any()) ->method('getSystemValue') diff --git a/apps/files_versions/tests/StorageTest.php b/apps/files_versions/tests/StorageTest.php index dd5b94c7a22..592f03f5e63 100644 --- a/apps/files_versions/tests/StorageTest.php +++ b/apps/files_versions/tests/StorageTest.php @@ -24,7 +24,7 @@ class StorageTest extends TestCase { private $versionsRoot; private $userFolder; - private $expireTimestamp = 10; + private int $expireTimestamp = 10; protected function setUp(): void { parent::setUp(); @@ -46,7 +46,7 @@ class StorageTest extends TestCase { } - protected function createPastFile(string $path, int $mtime) { + protected function createPastFile(string $path, int $mtime): void { try { $file = $this->userFolder->get($path); } catch (NotFoundException $e) { diff --git a/apps/files_versions/tests/VersioningTest.php b/apps/files_versions/tests/VersioningTest.php index eaa0a02e261..659b2cff10c 100644 --- a/apps/files_versions/tests/VersioningTest.php +++ b/apps/files_versions/tests/VersioningTest.php @@ -1,4 +1,6 @@ <?php + +declare(strict_types=1); /** * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. @@ -163,7 +165,7 @@ class VersioningTest extends \Test\TestCase { } } - public function versionsProvider() { + public static function versionsProvider(): array { return [ // first set of versions uniformly distributed versions [ @@ -683,7 +685,7 @@ class VersioningTest extends \Test\TestCase { $firstVersion = current($versions); - $this->assertFalse(Storage::rollback('folder/test.txt', $firstVersion['version'], $this->user2), 'Revert did not happen'); + $this->assertFalse(Storage::rollback('folder/test.txt', (int)$firstVersion['version'], $this->user2), 'Revert did not happen'); $this->loginAsUser(self::TEST_VERSIONS_USER); @@ -743,8 +745,8 @@ class VersioningTest extends \Test\TestCase { return; } - $eventHandler = $this->getMockBuilder(\stdclass::class) - ->setMethods(['callback']) + $eventHandler = $this->getMockBuilder(DummyHookListener::class) + ->onlyMethods(['callback']) ->getMock(); $eventHandler->expects($this->any()) @@ -763,7 +765,7 @@ class VersioningTest extends \Test\TestCase { ); } - private function doTestRestore() { + private function doTestRestore(): void { $filePath = self::TEST_VERSIONS_USER . '/files/sub/test.txt'; $this->rootView->file_put_contents($filePath, 'test file'); @@ -941,11 +943,7 @@ class VersioningTest extends \Test\TestCase { ); } - /** - * @param View $view - * @param string $path - */ - private function createAndCheckVersions(View $view, $path) { + private function createAndCheckVersions(View $view, string $path): array { $view->file_put_contents($path, 'test file'); $view->file_put_contents($path, 'version 1'); $view->file_put_contents($path, 'version 2'); @@ -967,11 +965,7 @@ class VersioningTest extends \Test\TestCase { return $versions; } - /** - * @param string $user - * @param bool $create - */ - public static function loginHelper($user, $create = false) { + public static function loginHelper(string $user, bool $create = false) { if ($create) { $backend = new \Test\Util\User\Dummy(); $backend->createUser($user, $user); @@ -987,6 +981,11 @@ class VersioningTest extends \Test\TestCase { } } +class DummyHookListener { + public function callback() { + } +} + // extend the original class to make it possible to test protected methods class VersionStorageToTest extends Storage { diff --git a/apps/files_versions/tests/Versions/VersionManagerTest.php b/apps/files_versions/tests/Versions/VersionManagerTest.php index 8001d9fbf0e..79caa65d5f1 100644 --- a/apps/files_versions/tests/Versions/VersionManagerTest.php +++ b/apps/files_versions/tests/Versions/VersionManagerTest.php @@ -6,7 +6,7 @@ declare(strict_types=1); * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later */ -namespace OCA\files_versions\tests\Versions; +namespace OCA\Files_Versions\Tests\Versions; use OC\Files\Storage\Local; use OCA\Files_Versions\Events\VersionRestoredEvent; @@ -15,6 +15,7 @@ use OCA\Files_Versions\Versions\IVersionBackend; use OCA\Files_Versions\Versions\VersionManager; use OCP\EventDispatcher\IEventDispatcher; use OCP\Files\Storage\IStorage; +use PHPUnit\Framework\MockObject\MockObject; use Test\TestCase; class VersionManagerTest extends TestCase { @@ -25,10 +26,10 @@ class VersionManagerTest extends TestCase { return $backend; } - private function getStorage(string $class): IStorage { + private function getStorage(string $class): IStorage&MockObject { return $this->getMockBuilder($class) ->disableOriginalConstructor() - ->setMethodsExcept(['instanceOfStorage']) + ->onlyMethods(array_diff(get_class_methods($class), ['instanceOfStorage'])) ->getMock(); } diff --git a/apps/settings/l10n/de.js b/apps/settings/l10n/de.js index 1b90e97094c..a2ffe6ec50f 100644 --- a/apps/settings/l10n/de.js +++ b/apps/settings/l10n/de.js @@ -10,7 +10,7 @@ OC.L10N.register( "Published" : "Veröffentlicht", "Synchronize to trusted servers and the global and public address book" : "Mit vertrauenswürdigen Servern und dem globalen und öffentlichen Adressbuch synchronisieren", "Verify" : "Überprüfen", - "Verifying …" : "Überprüfe …", + "Verifying …" : "Überprüfe…", "Unable to change password" : "Passwort konnte nicht geändert werden", "Very weak password" : "Sehr schwaches Passwort", "Weak password" : "Schwaches Passwort", @@ -71,7 +71,7 @@ OC.L10N.register( "If you received this email, the email configuration seems to be correct." : "Wenn du diese E-Mail empfangen hast, sind die E-Mail-Einstellungen korrekt.", "Email could not be sent. Check your mail server log" : "E-Mail konnte nicht versandt werden. E-Mail-Serverprotokoll überprüfen", "A problem occurred while sending the email. Please revise your settings. (Error: %s)" : "Beim Senden der E-Mail ist ein Problem aufgetreten. Bitte die Einstellungen überprüfen. (Fehler: %s)", - "You need to set your account email before being able to send test emails. Go to %s for that." : "Vor dem Versenden von Test-E-Mails musse die Konto-E-Mailadresse festgelegt werden. Gehe dazu zu %s.", + "You need to set your account email before being able to send test emails. Go to %s for that." : "Vor dem Versenden von Test-E-Mails muss die Konto-E-Mail-Adresse festgelegt werden. Gehe dazu zu %s.", "Recently active" : "Kürzlich aktiv", "Disabled accounts" : "Deaktivierte Konten", "Invalid account" : "Ungültiges Konto", @@ -103,12 +103,12 @@ OC.L10N.register( "Your Login is: %s" : "Dein Anmeldename lautet: %s", "Set your password" : "Setze dein Passwort", "Go to %s" : "%s aufrufen", - "Install Client" : "Installiere den Client", + "Install Client" : "Client installieren", "Logged in account must be a sub admin" : "Das angemeldete Konto muss eine Unteradministration sein.", "Apps" : "Apps", "Personal" : "Persönlich", "Administration" : "Administration", - "Users" : "Benutzer", + "Users" : "Konten", "Additional settings" : "Zusätzliche Einstellungen", "Artificial Intelligence" : "Künstliche Intelligenz", "Administration privileges" : "Administrationsrechte", @@ -142,8 +142,8 @@ OC.L10N.register( "Your remote address could not be determined." : "Deine Remote-Adresse konnte nicht ermittelt werden.", "Your remote address was identified as \"%s\" and is brute-force throttled at the moment slowing down the performance of various requests. If the remote address is not your address this can be an indication that a proxy is not configured correctly." : "Deine Remote-Adresse wurde als \"%s\" erkannt und wird derzeit durch die Brute-Force-Erkennung gedrosselt, was die Leistung verschiedener Anfragen verlangsamt. Wenn die Remote-Adresse nicht deine Adresse ist, kann dies ein Hinweis darauf sein, dass ein Proxy nicht richtig konfiguriert ist.", "Your remote address \"%s\" is not brute-force throttled." : "Deine Remote-Adresse \"%s\" ist nicht durch die Brute-Force-Erkennung gedrosselt.", - "Old administration imported certificates" : "Alte, von der Adminstration importierte Zertifikate", - "A background job is pending that checks for administration imported SSL certificates. Please check back later." : "Eine Hintergrundaufgabe, die nach, von der Adminstration importierten SSL-Zertifikaten sucht, läuft noch. Bitte später erneut versuchen.", + "Old administration imported certificates" : "Alte, von der Administration importierte Zertifikate", + "A background job is pending that checks for administration imported SSL certificates. Please check back later." : "Eine Hintergrundaufgabe, die nach von der Administration importierten SSL-Zertifikaten sucht, läuft noch. Bitte später erneut versuchen.", "There are some administration imported SSL certificates present, that are not used anymore with Nextcloud 21. They can be imported on the command line via \"occ security:certificates:import\" command. Their paths inside the data directory are shown below." : "Es sind einige, von der Administration importierte SSL-Zertifikate vorhanden, die von Nextcloud 21 nicht mehr verwendet werden. Du kannst diese über den Befehl \"occ security:certificates:import\" in der Befehlszeile importieren. Deine Pfade innerhalb des Datenverzeichnisses werden unten angezeigt.", "Code integrity" : "Codeintegrität", "Integrity checker has been disabled. Integrity cannot be verified." : "Die Integritätsprüfung wurde deaktiviert. Die Integrität kann nicht überprüft werden.", @@ -153,8 +153,8 @@ OC.L10N.register( "It was not possible to execute the cron job via CLI. The following technical errors have appeared:\n%s" : "Es war nicht möglich, den Cron-Job über die CLI auszuführen. Es sind folgende technische Fehler aufgetreten:\n%s", "The last cron job ran without errors." : "Der letzte Cron-Job wurde ohne Fehler ausgeführt.", "Cron last run" : "Cron zuletzt ausgeführt", - "Last background job execution ran %s. Something seems wrong. {link}." : "Letzte Hintergrund-Jobausführung lief %s. Etwas scheint nicht in Ordnung zu sein. {link}.", - "Last background job execution ran %s." : "Letzte Hintergrund-Jobausführung lief %s.", + "Last background job execution ran %s. Something seems wrong. {link}." : "Letzte Hintergrundaufgaben-Ausführung lief %s. Etwas scheint nicht in Ordnung zu sein. {link}.", + "Last background job execution ran %s." : "Letzte Hintergrundaufgaben-Ausführung lief %s.", "Data directory protected" : "Datenverzeichnis geschützt", "Your data directory and files are probably accessible from the internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Dein Datenverzeichnis und deine Dateien sind wahrscheinlich vom Internet aus erreichbar. Die .htaccess-Datei funktioniert nicht. Es wird dringend empfohlen, deinen Webserver dahingehend zu konfigurieren, dass das Datenverzeichnis nicht mehr vom Internet aus erreichbar ist oder dass du es aus dem Document-Root-Verzeichnis des Webservers herausverschiebst.", "Could not check that the data directory is protected. Please check manually that your server does not allow access to the data directory." : "Es konnte nicht überprüft werden, ob das Datenverzeichnis geschützt ist. Bitte überprüfe manuell, ob dein Server keinen Zugriff auf das Datenverzeichnis erlaubt.", @@ -351,7 +351,7 @@ OC.L10N.register( "Text processing" : "Textverarbeitung", "Text processing tasks can be implemented by different apps. Here you can set which app should be used for which task." : "Textverarbeitungsaufgaben können mittels verschiedener Apps umgesetzt werden. Hier kann eingestellt werden, welche App für welche Aufgabe verwendet werden soll.", "None of your currently installed apps provide text processing functionality using the Text Processing API." : "Keine deiner derzeit installierten Apps bietet Funktionalität zur Textverarbeitung durch Nutzung der Text-Processing-API.", - "Here you can decide which group can access certain sections of the administration settings." : "Hier kann festgelegt werden, welche Gruppe auf bestimmte Bereiche der Verwaltungseinstellungen zugreifen kann.", + "Here you can decide which group can access certain sections of the administration settings." : "Hier kann festgelegt werden, welche Gruppe auf bestimmte Bereiche der Administrationseinstellungen zugreifen kann.", "Unable to modify setting" : "Einstellung konnte nicht geändert werden", "None" : "Keine", "Changed disclaimer text" : "Geänderter Haftungsausschlusstext", @@ -548,11 +548,11 @@ OC.L10N.register( "Use system cron service to call the cron.php file every 5 minutes." : "Den System-Cron-Dienst verwenden, um die Datei cron.php alle 5 Minuten aufzurufen.", "The cron.php needs to be executed by the system account \"{user}\"." : "Die cron.php muss von dem Systemkonto \"{user}\" ausgeführt werden.", "The PHP POSIX extension is required. See {linkstart}PHP documentation{linkend} for more details." : "Die PHP-POSIX-Erweiterung ist erforderlich. Weitere Einzelheiten hierzu in der {linkstart}PHP-Dokumentation{linkend}.", - "Unable to update background job mode" : "Hintergrund-Job-Modus kann nicht aktualisiert werden", - "For the server to work properly, it's important to configure background jobs correctly. Cron is the recommended setting. Please see the documentation for more information." : "Damit der Server ordnungsgemäß funktioniert, ist es wichtig, Hintergrund-Aufgaben richtig zu konfigurieren. Cron ist die empfohlene Einstellung. Weitere Informationen finden sich in der Dokumentation.", + "Unable to update background job mode" : "Hintergrundaufgaben-Modus kann nicht aktualisiert werden", + "For the server to work properly, it's important to configure background jobs correctly. Cron is the recommended setting. Please see the documentation for more information." : "Damit der Server ordnungsgemäß funktioniert, ist es wichtig, Hintergrundaufgaben richtig zu konfigurieren. Cron ist die empfohlene Einstellung. Weitere Informationen finden sich in der Dokumentation.", "Last job execution ran {time}. Something seems wrong." : "Der letzte Job lief {time}. Etwas scheint nicht zu stimmen.", "Last job ran {relativeTime}." : "Der letzte Job lief {relativeTime}.", - "Background job did not run yet!" : "Hintergrund-Job wurde bislang nicht ausgeführt!", + "Background job did not run yet!" : "Hintergrundaufgabe wurde bislang nicht ausgeführt!", "AJAX" : "AJAX", "Execute one task with each page loaded. Use case: Single account instance." : "Mit jeder geladenen Seite wird eine Aufgabe ausgeführt. Anwendungsfall: Einzelkonto-Installation.", "Webcron" : "Webcron", @@ -746,7 +746,7 @@ OC.L10N.register( "Visibility" : "Sichtbarkeit", "Show language" : "Sprache anzeigen", "Show account backend" : "Konto-Backend anzeigen", - "Show storage path" : "Zeige Speicherpfad", + "Show storage path" : "Speicherpfad anzeigen", "Show first login" : "Erste Anmeldung anzeigen", "Show last login" : "Letzte Anmeldung anzeigen", "Sorting" : "Sortiere", diff --git a/apps/settings/l10n/de.json b/apps/settings/l10n/de.json index 19b887b7028..ba7f4102561 100644 --- a/apps/settings/l10n/de.json +++ b/apps/settings/l10n/de.json @@ -8,7 +8,7 @@ "Published" : "Veröffentlicht", "Synchronize to trusted servers and the global and public address book" : "Mit vertrauenswürdigen Servern und dem globalen und öffentlichen Adressbuch synchronisieren", "Verify" : "Überprüfen", - "Verifying …" : "Überprüfe …", + "Verifying …" : "Überprüfe…", "Unable to change password" : "Passwort konnte nicht geändert werden", "Very weak password" : "Sehr schwaches Passwort", "Weak password" : "Schwaches Passwort", @@ -69,7 +69,7 @@ "If you received this email, the email configuration seems to be correct." : "Wenn du diese E-Mail empfangen hast, sind die E-Mail-Einstellungen korrekt.", "Email could not be sent. Check your mail server log" : "E-Mail konnte nicht versandt werden. E-Mail-Serverprotokoll überprüfen", "A problem occurred while sending the email. Please revise your settings. (Error: %s)" : "Beim Senden der E-Mail ist ein Problem aufgetreten. Bitte die Einstellungen überprüfen. (Fehler: %s)", - "You need to set your account email before being able to send test emails. Go to %s for that." : "Vor dem Versenden von Test-E-Mails musse die Konto-E-Mailadresse festgelegt werden. Gehe dazu zu %s.", + "You need to set your account email before being able to send test emails. Go to %s for that." : "Vor dem Versenden von Test-E-Mails muss die Konto-E-Mail-Adresse festgelegt werden. Gehe dazu zu %s.", "Recently active" : "Kürzlich aktiv", "Disabled accounts" : "Deaktivierte Konten", "Invalid account" : "Ungültiges Konto", @@ -101,12 +101,12 @@ "Your Login is: %s" : "Dein Anmeldename lautet: %s", "Set your password" : "Setze dein Passwort", "Go to %s" : "%s aufrufen", - "Install Client" : "Installiere den Client", + "Install Client" : "Client installieren", "Logged in account must be a sub admin" : "Das angemeldete Konto muss eine Unteradministration sein.", "Apps" : "Apps", "Personal" : "Persönlich", "Administration" : "Administration", - "Users" : "Benutzer", + "Users" : "Konten", "Additional settings" : "Zusätzliche Einstellungen", "Artificial Intelligence" : "Künstliche Intelligenz", "Administration privileges" : "Administrationsrechte", @@ -140,8 +140,8 @@ "Your remote address could not be determined." : "Deine Remote-Adresse konnte nicht ermittelt werden.", "Your remote address was identified as \"%s\" and is brute-force throttled at the moment slowing down the performance of various requests. If the remote address is not your address this can be an indication that a proxy is not configured correctly." : "Deine Remote-Adresse wurde als \"%s\" erkannt und wird derzeit durch die Brute-Force-Erkennung gedrosselt, was die Leistung verschiedener Anfragen verlangsamt. Wenn die Remote-Adresse nicht deine Adresse ist, kann dies ein Hinweis darauf sein, dass ein Proxy nicht richtig konfiguriert ist.", "Your remote address \"%s\" is not brute-force throttled." : "Deine Remote-Adresse \"%s\" ist nicht durch die Brute-Force-Erkennung gedrosselt.", - "Old administration imported certificates" : "Alte, von der Adminstration importierte Zertifikate", - "A background job is pending that checks for administration imported SSL certificates. Please check back later." : "Eine Hintergrundaufgabe, die nach, von der Adminstration importierten SSL-Zertifikaten sucht, läuft noch. Bitte später erneut versuchen.", + "Old administration imported certificates" : "Alte, von der Administration importierte Zertifikate", + "A background job is pending that checks for administration imported SSL certificates. Please check back later." : "Eine Hintergrundaufgabe, die nach von der Administration importierten SSL-Zertifikaten sucht, läuft noch. Bitte später erneut versuchen.", "There are some administration imported SSL certificates present, that are not used anymore with Nextcloud 21. They can be imported on the command line via \"occ security:certificates:import\" command. Their paths inside the data directory are shown below." : "Es sind einige, von der Administration importierte SSL-Zertifikate vorhanden, die von Nextcloud 21 nicht mehr verwendet werden. Du kannst diese über den Befehl \"occ security:certificates:import\" in der Befehlszeile importieren. Deine Pfade innerhalb des Datenverzeichnisses werden unten angezeigt.", "Code integrity" : "Codeintegrität", "Integrity checker has been disabled. Integrity cannot be verified." : "Die Integritätsprüfung wurde deaktiviert. Die Integrität kann nicht überprüft werden.", @@ -151,8 +151,8 @@ "It was not possible to execute the cron job via CLI. The following technical errors have appeared:\n%s" : "Es war nicht möglich, den Cron-Job über die CLI auszuführen. Es sind folgende technische Fehler aufgetreten:\n%s", "The last cron job ran without errors." : "Der letzte Cron-Job wurde ohne Fehler ausgeführt.", "Cron last run" : "Cron zuletzt ausgeführt", - "Last background job execution ran %s. Something seems wrong. {link}." : "Letzte Hintergrund-Jobausführung lief %s. Etwas scheint nicht in Ordnung zu sein. {link}.", - "Last background job execution ran %s." : "Letzte Hintergrund-Jobausführung lief %s.", + "Last background job execution ran %s. Something seems wrong. {link}." : "Letzte Hintergrundaufgaben-Ausführung lief %s. Etwas scheint nicht in Ordnung zu sein. {link}.", + "Last background job execution ran %s." : "Letzte Hintergrundaufgaben-Ausführung lief %s.", "Data directory protected" : "Datenverzeichnis geschützt", "Your data directory and files are probably accessible from the internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Dein Datenverzeichnis und deine Dateien sind wahrscheinlich vom Internet aus erreichbar. Die .htaccess-Datei funktioniert nicht. Es wird dringend empfohlen, deinen Webserver dahingehend zu konfigurieren, dass das Datenverzeichnis nicht mehr vom Internet aus erreichbar ist oder dass du es aus dem Document-Root-Verzeichnis des Webservers herausverschiebst.", "Could not check that the data directory is protected. Please check manually that your server does not allow access to the data directory." : "Es konnte nicht überprüft werden, ob das Datenverzeichnis geschützt ist. Bitte überprüfe manuell, ob dein Server keinen Zugriff auf das Datenverzeichnis erlaubt.", @@ -349,7 +349,7 @@ "Text processing" : "Textverarbeitung", "Text processing tasks can be implemented by different apps. Here you can set which app should be used for which task." : "Textverarbeitungsaufgaben können mittels verschiedener Apps umgesetzt werden. Hier kann eingestellt werden, welche App für welche Aufgabe verwendet werden soll.", "None of your currently installed apps provide text processing functionality using the Text Processing API." : "Keine deiner derzeit installierten Apps bietet Funktionalität zur Textverarbeitung durch Nutzung der Text-Processing-API.", - "Here you can decide which group can access certain sections of the administration settings." : "Hier kann festgelegt werden, welche Gruppe auf bestimmte Bereiche der Verwaltungseinstellungen zugreifen kann.", + "Here you can decide which group can access certain sections of the administration settings." : "Hier kann festgelegt werden, welche Gruppe auf bestimmte Bereiche der Administrationseinstellungen zugreifen kann.", "Unable to modify setting" : "Einstellung konnte nicht geändert werden", "None" : "Keine", "Changed disclaimer text" : "Geänderter Haftungsausschlusstext", @@ -546,11 +546,11 @@ "Use system cron service to call the cron.php file every 5 minutes." : "Den System-Cron-Dienst verwenden, um die Datei cron.php alle 5 Minuten aufzurufen.", "The cron.php needs to be executed by the system account \"{user}\"." : "Die cron.php muss von dem Systemkonto \"{user}\" ausgeführt werden.", "The PHP POSIX extension is required. See {linkstart}PHP documentation{linkend} for more details." : "Die PHP-POSIX-Erweiterung ist erforderlich. Weitere Einzelheiten hierzu in der {linkstart}PHP-Dokumentation{linkend}.", - "Unable to update background job mode" : "Hintergrund-Job-Modus kann nicht aktualisiert werden", - "For the server to work properly, it's important to configure background jobs correctly. Cron is the recommended setting. Please see the documentation for more information." : "Damit der Server ordnungsgemäß funktioniert, ist es wichtig, Hintergrund-Aufgaben richtig zu konfigurieren. Cron ist die empfohlene Einstellung. Weitere Informationen finden sich in der Dokumentation.", + "Unable to update background job mode" : "Hintergrundaufgaben-Modus kann nicht aktualisiert werden", + "For the server to work properly, it's important to configure background jobs correctly. Cron is the recommended setting. Please see the documentation for more information." : "Damit der Server ordnungsgemäß funktioniert, ist es wichtig, Hintergrundaufgaben richtig zu konfigurieren. Cron ist die empfohlene Einstellung. Weitere Informationen finden sich in der Dokumentation.", "Last job execution ran {time}. Something seems wrong." : "Der letzte Job lief {time}. Etwas scheint nicht zu stimmen.", "Last job ran {relativeTime}." : "Der letzte Job lief {relativeTime}.", - "Background job did not run yet!" : "Hintergrund-Job wurde bislang nicht ausgeführt!", + "Background job did not run yet!" : "Hintergrundaufgabe wurde bislang nicht ausgeführt!", "AJAX" : "AJAX", "Execute one task with each page loaded. Use case: Single account instance." : "Mit jeder geladenen Seite wird eine Aufgabe ausgeführt. Anwendungsfall: Einzelkonto-Installation.", "Webcron" : "Webcron", @@ -744,7 +744,7 @@ "Visibility" : "Sichtbarkeit", "Show language" : "Sprache anzeigen", "Show account backend" : "Konto-Backend anzeigen", - "Show storage path" : "Zeige Speicherpfad", + "Show storage path" : "Speicherpfad anzeigen", "Show first login" : "Erste Anmeldung anzeigen", "Show last login" : "Letzte Anmeldung anzeigen", "Sorting" : "Sortiere", diff --git a/apps/settings/l10n/de_DE.js b/apps/settings/l10n/de_DE.js index 002bd98e591..72922885aa7 100644 --- a/apps/settings/l10n/de_DE.js +++ b/apps/settings/l10n/de_DE.js @@ -4,7 +4,7 @@ OC.L10N.register( "Private" : "Privat", "Only visible to people matched via phone number integration through Talk on mobile" : "Nur sichtbar für Personen, die über die Rufnummernintegration von Talk auf dem Smartphone abgeglichen wurden.", "Local" : "Lokal", - "Only visible to people on this instance and guests" : "Nur für Personen dieser Instanz und Gästen sichtbar", + "Only visible to people on this instance and guests" : "Nur für Personen dieser Instanz und Gäste sichtbar", "Federated" : "Federated", "Only synchronize to trusted servers" : "Nur mit vertrauenswürdigen Servern synchronisieren", "Published" : "Veröffentlicht", @@ -25,11 +25,11 @@ OC.L10N.register( "{actor} added {user} to group {group}" : "{actor} hat {user} zur Gruppe {group} hinzugefügt", "An administrator added you to group {group}" : "Die Administration hat Sie zur Gruppe {group} hinzugefügt", "An administrator added {user} to group {group}" : "Die Administration hat {user} zur Gruppe {group} hinzugefügt", - "{actor} removed you from group {group}" : "{actor} hat Sie von der Gruppe {group} entfernt", - "You removed {user} from group {group}" : "Sie haben {user} von der Gruppe {group} entfernt", - "{actor} removed {user} from group {group}" : "{actor} hat {user} von der Gruppe {group} entfernt", - "An administrator removed you from group {group}" : "Die Administration hat Sie von der Gruppe {group} entfernt", - "An administrator removed {user} from group {group}" : "Die Administration hat {user} von der Gruppe {group} entfernt", + "{actor} removed you from group {group}" : "{actor} hat Sie aus der Gruppe {group} entfernt", + "You removed {user} from group {group}" : "Sie haben {user} aus der Gruppe {group} entfernt", + "{actor} removed {user} from group {group}" : "{actor} hat {user} aus der Gruppe {group} entfernt", + "An administrator removed you from group {group}" : "Die Administration hat Sie aus der Gruppe {group} entfernt", + "An administrator removed {user} from group {group}" : "Die Administration hat {user} aus der Gruppe {group} entfernt", "Your <strong>group memberships</strong> were modified" : "Ihre <strong>Gruppenmitgliedschaft</strong> wurde geändert", "{actor} changed your password" : "{actor} hat Ihr Passwort geändert", "You changed your password" : "Sie haben Ihr Passwort geändert", @@ -42,8 +42,8 @@ OC.L10N.register( "An administrator created an app password for a session named \"{token}\"" : "Die Administration hat ein App-Passwort für eine Sitzung mit dem Namen \"{token}\" erstellt", "You deleted app password \"{token}\"" : "Sie haben das App-Passwort \"{token}\" gelöscht", "You renamed app password \"{token}\" to \"{newToken}\"" : "Sie haben das App-Passwort \"{token}\" in \"{newToken}\" umbenannt", - "You granted filesystem access to app password \"{token}\"" : "Sie haben Dateisystemzugriff für App-Passwort \"{token}\" erlaubt", - "You revoked filesystem access from app password \"{token}\"" : "Sie haben Dateisystemzugriff für App-Passwort \"{token}\" widerrufen", + "You granted filesystem access to app password \"{token}\"" : "Sie haben den Dateisystemzugriff für das App-Passwort \"{token}\" erlaubt", + "You revoked filesystem access from app password \"{token}\"" : "Sie haben den Dateisystemzugriff für das App-Passwort \"{token}\" widerrufen", "Security" : "Sicherheit", "You successfully logged in using two-factor authentication (%1$s)" : "Sie haben sich mittels Zwei-Faktor-Authentifizierung angemeldet (%1$s)", "A login attempt using two-factor authentication failed (%1$s)" : "Ein Anmeldeversuch mittels Zwei-Faktor-Authentifizierung schlug fehl (%1$s)", @@ -63,9 +63,9 @@ OC.L10N.register( "Wrong admin recovery password. Please check the password and try again." : "Falsches Wiederherstellungspasswort für das Admin-Konto. Bitte überprüfen Sie das Passwort und versuchen Sie es erneut.", "Backend does not support password change, but the encryption of the account key was updated." : "Das Backend unterstützt keine Passwortänderung, aber die Verschlüsselung des Kontoschlüssels wurde aktualisiert.", "Administrator documentation" : "Dokumentation für die Administration", - "User documentation" : "Nutzungsdokumentation", + "User documentation" : "Dokumentation für Benutzer", "Nextcloud help overview" : "Übersicht über die Nextcloud-Hilfe", - "Invalid SMTP password." : "Ungültiges SMTP-Passwort.", + "Invalid SMTP password." : "Ungültiges SMTP-Passwort", "Email setting test" : "Test der E-Mail-Einstellungen", "Well done, %s!" : "Gut gemacht, %s!", "If you received this email, the email configuration seems to be correct." : "Wenn Sie diese E-Mail empfangen haben, sind die E-Mail-Einstellungen korrekt.", @@ -79,8 +79,8 @@ OC.L10N.register( "Settings saved" : "Einstellungen gespeichert", "Unable to change full name" : "Der vollständige Name konnte nicht geändert werden", "Unable to change email address" : "E-Mail-Adresse konnte nicht geändert werden", - "Unable to set invalid phone number" : "Ungültige Rufnummer kann nicht eingestellt werden", - "Unable to set invalid website" : "Ungültige Webseite kann nicht eingestellt werden", + "Unable to set invalid phone number" : "Ungültige Telefonnummer konnte nicht festgelegt werden", + "Unable to set invalid website" : "Ungültige Webseite konnte nicht festgelegt werden", "Some account data was invalid" : "Einige Kontodaten waren ungültig", "In order to verify your Twitter account, post the following tweet on Twitter (please make sure to post it without any line breaks):" : "Um Ihr Twitter-Konto zu überprüfen, veröffentlichen Sie bitte den folgenden Tweet auf Twitter (Bitte stellen Sie sicher, dass der Tweet keinen Zeilenumbruch enthält):", "In order to verify your Website, store the following content in your web-root at '.well-known/CloudIdVerificationCode.txt' (please make sure that the complete text is in one line):" : "Um Ihre Webseite zu überprüfen, speichern Sie bitte den folgenden Inhalt im Web-Wurzelverzeichnist in der Datei '.well-known/CloudIdVerificationCode.txt' (bitte stellen Sie sicher, das sich der gesamte Text in einer Zeile befindet):", @@ -103,11 +103,11 @@ OC.L10N.register( "Your Login is: %s" : "Ihr Anmeldename lautet: %s", "Set your password" : "Setzen Sie Ihr Passwort", "Go to %s" : "%s aufrufen", - "Install Client" : "Installiere den Client", + "Install Client" : "Client installieren", "Logged in account must be a sub admin" : "Das angemeldete Konto muss eine Unteradministration sein.", "Apps" : "Apps", "Personal" : "Persönlich", - "Administration" : "Verwaltung", + "Administration" : "Administration", "Users" : "Konten", "Additional settings" : "Zusätzliche Einstellungen", "Artificial Intelligence" : "Künstliche Intelligenz", @@ -126,8 +126,8 @@ OC.L10N.register( "Send emails using" : "E-Mails senden mittels", "User's email account" : "E-Mail-Konto des Benutzers", "System email account" : "System-E-Mail-Konto", - "Security & setup checks" : "Sicherheits- & Einrichtungsüberprüfungen", - "Background jobs" : "Hintergrund-Aufgaben", + "Security & setup checks" : "Sicherheits- und Einrichtungsüberprüfungen", + "Background jobs" : "Hintergrundaufgaben", "Unlimited" : "Unbegrenzt", "Verifying" : "Überprüfe", "Allowed admin IP ranges" : "Zulässige Administrations-IP-Bereiche", @@ -142,8 +142,8 @@ OC.L10N.register( "Your remote address could not be determined." : "Ihre Remote-Adresse konnte nicht ermittelt werden.", "Your remote address was identified as \"%s\" and is brute-force throttled at the moment slowing down the performance of various requests. If the remote address is not your address this can be an indication that a proxy is not configured correctly." : "Ihre Remote-Adresse wurde als \"%s\" erkannt und wird derzeit durch die Brute-Force-Erkennung gedrosselt, was die Leistung verschiedener Anfragen verlangsamt. Wenn die Remote-Adresse nicht Ihre Adresse ist, kann dies ein Hinweis darauf sein, dass ein Proxy nicht richtig konfiguriert ist.", "Your remote address \"%s\" is not brute-force throttled." : "Ihre Remote-Adresse \"%s\" ist nicht durch die Brute-Force-Erkennung gedrosselt.", - "Old administration imported certificates" : "Alte, von der Adminstration importierte Zertifikate", - "A background job is pending that checks for administration imported SSL certificates. Please check back later." : "Eine Hintergrundaufgabe, die nach, von der Adminstration importierten SSL-Zertifikaten sucht, läuft noch. Bitte später erneut versuchen.", + "Old administration imported certificates" : "Alte, von der Administration importierte Zertifikate", + "A background job is pending that checks for administration imported SSL certificates. Please check back later." : "Eine Hintergrundaufgabe, die nach von der Administration importierten SSL-Zertifikaten sucht, läuft noch. Bitte später erneut versuchen.", "There are some administration imported SSL certificates present, that are not used anymore with Nextcloud 21. They can be imported on the command line via \"occ security:certificates:import\" command. Their paths inside the data directory are shown below." : "Es sind einige, von der Administration importierte SSL-Zertifikate vorhanden, die von Nextcloud 21 nicht mehr verwendet werden. Sie können über den Befehl \"occ security:certificates:import\" in der Befehlszeile importiert werden. Ihre Pfade innerhalb des Datenverzeichnisses werden unten angezeigt.", "Code integrity" : "Codeintegrität", "Integrity checker has been disabled. Integrity cannot be verified." : "Die Integritätsprüfung wurde deaktiviert. Die Integrität kann nicht überprüft werden.", @@ -153,8 +153,8 @@ OC.L10N.register( "It was not possible to execute the cron job via CLI. The following technical errors have appeared:\n%s" : "Es war nicht möglich, den Cron-Job über die CLI auszuführen. Es sind folgende technische Fehler aufgetreten:\n%s", "The last cron job ran without errors." : "Der letzte Cron-Job wurde ohne Fehler ausgeführt.", "Cron last run" : "Cron zuletzt ausgeführt", - "Last background job execution ran %s. Something seems wrong. {link}." : "Letzte Hintergrund-Jobausführung lief %s. Etwas scheint nicht in Ordnung zu sein. {link}.", - "Last background job execution ran %s." : "Letzte Hintergrund-Jobausführung lief %s.", + "Last background job execution ran %s. Something seems wrong. {link}." : "Letzte Hintergrundaufgaben-Ausführung lief %s. Etwas scheint nicht in Ordnung zu sein. {link}.", + "Last background job execution ran %s." : "Letzte Hintergrundaufgaben-Ausführung lief %s.", "Data directory protected" : "Datenverzeichnis geschützt", "Your data directory and files are probably accessible from the internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Ihr Datenverzeichnis und Ihre Dateien sind wahrscheinlich vom Internet aus erreichbar. Die .htaccess-Datei funktioniert nicht. Es wird dringend empfohlen, Ihren Webserver dahingehend zu konfigurieren, dass das Datenverzeichnis nicht mehr vom Internet aus erreichbar ist oder dass Sie es aus dem Document-Root-Verzeichnis des Webservers herausverschieben.", "Could not check that the data directory is protected. Please check manually that your server does not allow access to the data directory." : "Es konnte nicht überprüft werden, ob das Datenverzeichnis geschützt ist. Bitte überprüfen Sie manuell, ob Ihr Server keinen Zugriff auf das Datenverzeichnis erlaubt.", @@ -549,7 +549,7 @@ OC.L10N.register( "The cron.php needs to be executed by the system account \"{user}\"." : "Die cron.php muss von dem Systemkonto \"{user}\" ausgeführt werden.", "The PHP POSIX extension is required. See {linkstart}PHP documentation{linkend} for more details." : "Die PHP-POSIX-Erweiterung ist erforderlich. Weitere Einzelheiten finden Sie in der {linkstart}PHP-Dokumentation{linkend}.", "Unable to update background job mode" : "Hintergrund-Aufgaben-Modus kann nicht aktualisiert werden", - "For the server to work properly, it's important to configure background jobs correctly. Cron is the recommended setting. Please see the documentation for more information." : "Damit der Server ordnungsgemäß funktioniert, ist es wichtig, Hintergrund-Aufgaben richtig zu konfigurieren. Cron ist die empfohlene Einstellung. Weitere Informationen finden Sie in der Dokumentation.", + "For the server to work properly, it's important to configure background jobs correctly. Cron is the recommended setting. Please see the documentation for more information." : "Damit der Server ordnungsgemäß funktioniert, ist es wichtig, Hintergrundaufgaben richtig zu konfigurieren. Cron ist die empfohlene Einstellung. Weitere Informationen finden Sie in der Dokumentation.", "Last job execution ran {time}. Something seems wrong." : "Die letzte Aufgaben-Ausführung lief {time}. Etwas scheint falsch zu sein.", "Last job ran {relativeTime}." : "Die letzte Aufgabe lief {relativeTime}.", "Background job did not run yet!" : "Hintergrund-Aufgabe wurde bislang nicht ausgeführt!", @@ -746,7 +746,7 @@ OC.L10N.register( "Visibility" : "Sichtbarkeit", "Show language" : "Sprache anzeigen", "Show account backend" : "Konto-Backend anzeigen", - "Show storage path" : "Zeige Speicherpfad", + "Show storage path" : "Speicherpfad anzeigen", "Show first login" : "Erste Anmeldung anzeigen", "Show last login" : "Letzte Anmeldung anzeigen", "Sorting" : "Sortierung", diff --git a/apps/settings/l10n/de_DE.json b/apps/settings/l10n/de_DE.json index 4d040cf5a19..8562ab6b03d 100644 --- a/apps/settings/l10n/de_DE.json +++ b/apps/settings/l10n/de_DE.json @@ -2,7 +2,7 @@ "Private" : "Privat", "Only visible to people matched via phone number integration through Talk on mobile" : "Nur sichtbar für Personen, die über die Rufnummernintegration von Talk auf dem Smartphone abgeglichen wurden.", "Local" : "Lokal", - "Only visible to people on this instance and guests" : "Nur für Personen dieser Instanz und Gästen sichtbar", + "Only visible to people on this instance and guests" : "Nur für Personen dieser Instanz und Gäste sichtbar", "Federated" : "Federated", "Only synchronize to trusted servers" : "Nur mit vertrauenswürdigen Servern synchronisieren", "Published" : "Veröffentlicht", @@ -23,11 +23,11 @@ "{actor} added {user} to group {group}" : "{actor} hat {user} zur Gruppe {group} hinzugefügt", "An administrator added you to group {group}" : "Die Administration hat Sie zur Gruppe {group} hinzugefügt", "An administrator added {user} to group {group}" : "Die Administration hat {user} zur Gruppe {group} hinzugefügt", - "{actor} removed you from group {group}" : "{actor} hat Sie von der Gruppe {group} entfernt", - "You removed {user} from group {group}" : "Sie haben {user} von der Gruppe {group} entfernt", - "{actor} removed {user} from group {group}" : "{actor} hat {user} von der Gruppe {group} entfernt", - "An administrator removed you from group {group}" : "Die Administration hat Sie von der Gruppe {group} entfernt", - "An administrator removed {user} from group {group}" : "Die Administration hat {user} von der Gruppe {group} entfernt", + "{actor} removed you from group {group}" : "{actor} hat Sie aus der Gruppe {group} entfernt", + "You removed {user} from group {group}" : "Sie haben {user} aus der Gruppe {group} entfernt", + "{actor} removed {user} from group {group}" : "{actor} hat {user} aus der Gruppe {group} entfernt", + "An administrator removed you from group {group}" : "Die Administration hat Sie aus der Gruppe {group} entfernt", + "An administrator removed {user} from group {group}" : "Die Administration hat {user} aus der Gruppe {group} entfernt", "Your <strong>group memberships</strong> were modified" : "Ihre <strong>Gruppenmitgliedschaft</strong> wurde geändert", "{actor} changed your password" : "{actor} hat Ihr Passwort geändert", "You changed your password" : "Sie haben Ihr Passwort geändert", @@ -40,8 +40,8 @@ "An administrator created an app password for a session named \"{token}\"" : "Die Administration hat ein App-Passwort für eine Sitzung mit dem Namen \"{token}\" erstellt", "You deleted app password \"{token}\"" : "Sie haben das App-Passwort \"{token}\" gelöscht", "You renamed app password \"{token}\" to \"{newToken}\"" : "Sie haben das App-Passwort \"{token}\" in \"{newToken}\" umbenannt", - "You granted filesystem access to app password \"{token}\"" : "Sie haben Dateisystemzugriff für App-Passwort \"{token}\" erlaubt", - "You revoked filesystem access from app password \"{token}\"" : "Sie haben Dateisystemzugriff für App-Passwort \"{token}\" widerrufen", + "You granted filesystem access to app password \"{token}\"" : "Sie haben den Dateisystemzugriff für das App-Passwort \"{token}\" erlaubt", + "You revoked filesystem access from app password \"{token}\"" : "Sie haben den Dateisystemzugriff für das App-Passwort \"{token}\" widerrufen", "Security" : "Sicherheit", "You successfully logged in using two-factor authentication (%1$s)" : "Sie haben sich mittels Zwei-Faktor-Authentifizierung angemeldet (%1$s)", "A login attempt using two-factor authentication failed (%1$s)" : "Ein Anmeldeversuch mittels Zwei-Faktor-Authentifizierung schlug fehl (%1$s)", @@ -61,9 +61,9 @@ "Wrong admin recovery password. Please check the password and try again." : "Falsches Wiederherstellungspasswort für das Admin-Konto. Bitte überprüfen Sie das Passwort und versuchen Sie es erneut.", "Backend does not support password change, but the encryption of the account key was updated." : "Das Backend unterstützt keine Passwortänderung, aber die Verschlüsselung des Kontoschlüssels wurde aktualisiert.", "Administrator documentation" : "Dokumentation für die Administration", - "User documentation" : "Nutzungsdokumentation", + "User documentation" : "Dokumentation für Benutzer", "Nextcloud help overview" : "Übersicht über die Nextcloud-Hilfe", - "Invalid SMTP password." : "Ungültiges SMTP-Passwort.", + "Invalid SMTP password." : "Ungültiges SMTP-Passwort", "Email setting test" : "Test der E-Mail-Einstellungen", "Well done, %s!" : "Gut gemacht, %s!", "If you received this email, the email configuration seems to be correct." : "Wenn Sie diese E-Mail empfangen haben, sind die E-Mail-Einstellungen korrekt.", @@ -77,8 +77,8 @@ "Settings saved" : "Einstellungen gespeichert", "Unable to change full name" : "Der vollständige Name konnte nicht geändert werden", "Unable to change email address" : "E-Mail-Adresse konnte nicht geändert werden", - "Unable to set invalid phone number" : "Ungültige Rufnummer kann nicht eingestellt werden", - "Unable to set invalid website" : "Ungültige Webseite kann nicht eingestellt werden", + "Unable to set invalid phone number" : "Ungültige Telefonnummer konnte nicht festgelegt werden", + "Unable to set invalid website" : "Ungültige Webseite konnte nicht festgelegt werden", "Some account data was invalid" : "Einige Kontodaten waren ungültig", "In order to verify your Twitter account, post the following tweet on Twitter (please make sure to post it without any line breaks):" : "Um Ihr Twitter-Konto zu überprüfen, veröffentlichen Sie bitte den folgenden Tweet auf Twitter (Bitte stellen Sie sicher, dass der Tweet keinen Zeilenumbruch enthält):", "In order to verify your Website, store the following content in your web-root at '.well-known/CloudIdVerificationCode.txt' (please make sure that the complete text is in one line):" : "Um Ihre Webseite zu überprüfen, speichern Sie bitte den folgenden Inhalt im Web-Wurzelverzeichnist in der Datei '.well-known/CloudIdVerificationCode.txt' (bitte stellen Sie sicher, das sich der gesamte Text in einer Zeile befindet):", @@ -101,11 +101,11 @@ "Your Login is: %s" : "Ihr Anmeldename lautet: %s", "Set your password" : "Setzen Sie Ihr Passwort", "Go to %s" : "%s aufrufen", - "Install Client" : "Installiere den Client", + "Install Client" : "Client installieren", "Logged in account must be a sub admin" : "Das angemeldete Konto muss eine Unteradministration sein.", "Apps" : "Apps", "Personal" : "Persönlich", - "Administration" : "Verwaltung", + "Administration" : "Administration", "Users" : "Konten", "Additional settings" : "Zusätzliche Einstellungen", "Artificial Intelligence" : "Künstliche Intelligenz", @@ -124,8 +124,8 @@ "Send emails using" : "E-Mails senden mittels", "User's email account" : "E-Mail-Konto des Benutzers", "System email account" : "System-E-Mail-Konto", - "Security & setup checks" : "Sicherheits- & Einrichtungsüberprüfungen", - "Background jobs" : "Hintergrund-Aufgaben", + "Security & setup checks" : "Sicherheits- und Einrichtungsüberprüfungen", + "Background jobs" : "Hintergrundaufgaben", "Unlimited" : "Unbegrenzt", "Verifying" : "Überprüfe", "Allowed admin IP ranges" : "Zulässige Administrations-IP-Bereiche", @@ -140,8 +140,8 @@ "Your remote address could not be determined." : "Ihre Remote-Adresse konnte nicht ermittelt werden.", "Your remote address was identified as \"%s\" and is brute-force throttled at the moment slowing down the performance of various requests. If the remote address is not your address this can be an indication that a proxy is not configured correctly." : "Ihre Remote-Adresse wurde als \"%s\" erkannt und wird derzeit durch die Brute-Force-Erkennung gedrosselt, was die Leistung verschiedener Anfragen verlangsamt. Wenn die Remote-Adresse nicht Ihre Adresse ist, kann dies ein Hinweis darauf sein, dass ein Proxy nicht richtig konfiguriert ist.", "Your remote address \"%s\" is not brute-force throttled." : "Ihre Remote-Adresse \"%s\" ist nicht durch die Brute-Force-Erkennung gedrosselt.", - "Old administration imported certificates" : "Alte, von der Adminstration importierte Zertifikate", - "A background job is pending that checks for administration imported SSL certificates. Please check back later." : "Eine Hintergrundaufgabe, die nach, von der Adminstration importierten SSL-Zertifikaten sucht, läuft noch. Bitte später erneut versuchen.", + "Old administration imported certificates" : "Alte, von der Administration importierte Zertifikate", + "A background job is pending that checks for administration imported SSL certificates. Please check back later." : "Eine Hintergrundaufgabe, die nach von der Administration importierten SSL-Zertifikaten sucht, läuft noch. Bitte später erneut versuchen.", "There are some administration imported SSL certificates present, that are not used anymore with Nextcloud 21. They can be imported on the command line via \"occ security:certificates:import\" command. Their paths inside the data directory are shown below." : "Es sind einige, von der Administration importierte SSL-Zertifikate vorhanden, die von Nextcloud 21 nicht mehr verwendet werden. Sie können über den Befehl \"occ security:certificates:import\" in der Befehlszeile importiert werden. Ihre Pfade innerhalb des Datenverzeichnisses werden unten angezeigt.", "Code integrity" : "Codeintegrität", "Integrity checker has been disabled. Integrity cannot be verified." : "Die Integritätsprüfung wurde deaktiviert. Die Integrität kann nicht überprüft werden.", @@ -151,8 +151,8 @@ "It was not possible to execute the cron job via CLI. The following technical errors have appeared:\n%s" : "Es war nicht möglich, den Cron-Job über die CLI auszuführen. Es sind folgende technische Fehler aufgetreten:\n%s", "The last cron job ran without errors." : "Der letzte Cron-Job wurde ohne Fehler ausgeführt.", "Cron last run" : "Cron zuletzt ausgeführt", - "Last background job execution ran %s. Something seems wrong. {link}." : "Letzte Hintergrund-Jobausführung lief %s. Etwas scheint nicht in Ordnung zu sein. {link}.", - "Last background job execution ran %s." : "Letzte Hintergrund-Jobausführung lief %s.", + "Last background job execution ran %s. Something seems wrong. {link}." : "Letzte Hintergrundaufgaben-Ausführung lief %s. Etwas scheint nicht in Ordnung zu sein. {link}.", + "Last background job execution ran %s." : "Letzte Hintergrundaufgaben-Ausführung lief %s.", "Data directory protected" : "Datenverzeichnis geschützt", "Your data directory and files are probably accessible from the internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Ihr Datenverzeichnis und Ihre Dateien sind wahrscheinlich vom Internet aus erreichbar. Die .htaccess-Datei funktioniert nicht. Es wird dringend empfohlen, Ihren Webserver dahingehend zu konfigurieren, dass das Datenverzeichnis nicht mehr vom Internet aus erreichbar ist oder dass Sie es aus dem Document-Root-Verzeichnis des Webservers herausverschieben.", "Could not check that the data directory is protected. Please check manually that your server does not allow access to the data directory." : "Es konnte nicht überprüft werden, ob das Datenverzeichnis geschützt ist. Bitte überprüfen Sie manuell, ob Ihr Server keinen Zugriff auf das Datenverzeichnis erlaubt.", @@ -547,7 +547,7 @@ "The cron.php needs to be executed by the system account \"{user}\"." : "Die cron.php muss von dem Systemkonto \"{user}\" ausgeführt werden.", "The PHP POSIX extension is required. See {linkstart}PHP documentation{linkend} for more details." : "Die PHP-POSIX-Erweiterung ist erforderlich. Weitere Einzelheiten finden Sie in der {linkstart}PHP-Dokumentation{linkend}.", "Unable to update background job mode" : "Hintergrund-Aufgaben-Modus kann nicht aktualisiert werden", - "For the server to work properly, it's important to configure background jobs correctly. Cron is the recommended setting. Please see the documentation for more information." : "Damit der Server ordnungsgemäß funktioniert, ist es wichtig, Hintergrund-Aufgaben richtig zu konfigurieren. Cron ist die empfohlene Einstellung. Weitere Informationen finden Sie in der Dokumentation.", + "For the server to work properly, it's important to configure background jobs correctly. Cron is the recommended setting. Please see the documentation for more information." : "Damit der Server ordnungsgemäß funktioniert, ist es wichtig, Hintergrundaufgaben richtig zu konfigurieren. Cron ist die empfohlene Einstellung. Weitere Informationen finden Sie in der Dokumentation.", "Last job execution ran {time}. Something seems wrong." : "Die letzte Aufgaben-Ausführung lief {time}. Etwas scheint falsch zu sein.", "Last job ran {relativeTime}." : "Die letzte Aufgabe lief {relativeTime}.", "Background job did not run yet!" : "Hintergrund-Aufgabe wurde bislang nicht ausgeführt!", @@ -744,7 +744,7 @@ "Visibility" : "Sichtbarkeit", "Show language" : "Sprache anzeigen", "Show account backend" : "Konto-Backend anzeigen", - "Show storage path" : "Zeige Speicherpfad", + "Show storage path" : "Speicherpfad anzeigen", "Show first login" : "Erste Anmeldung anzeigen", "Show last login" : "Letzte Anmeldung anzeigen", "Sorting" : "Sortierung", diff --git a/apps/twofactor_backupcodes/l10n/de.js b/apps/twofactor_backupcodes/l10n/de.js index 84b83e42bac..34ea526248c 100644 --- a/apps/twofactor_backupcodes/l10n/de.js +++ b/apps/twofactor_backupcodes/l10n/de.js @@ -7,8 +7,8 @@ OC.L10N.register( "You enabled two-factor authentication but did not generate backup codes yet. They are needed to restore access to your account in case you lose your second factor." : "Du hast die Zwei-Faktor-Authentifizierung aktiviert, aber noch keine Backup-Codes erzeugt. Diese werden für den Fall benötigt, dass du den Zugriff auf deinen zweiten Faktor verloren hast.", "Backup code" : "Backup-Code", "Use backup code" : "Verwende Backup-Code", - "Two factor backup codes" : "Zweifaktor-Backup-Codes", - "A two-factor auth backup codes provider" : "Ein Anbieter für Zweifaktor-Backup-Codes", + "Two factor backup codes" : "Zwei-Faktor-Backup-Codes", + "A two-factor auth backup codes provider" : "Ein Anbieter für Zwei-Faktor-Backup-Codes", "An error occurred while generating your backup codes" : "Es ist ein Fehler beim Erstellen deiner Backup-Codes aufgetreten", "Backup codes have been generated. {used} of {total} codes have been used." : "Backup-Codes wurden erzeugt. {used} von {total} Codes wurden benutzt.", "These are your backup codes. Please save and/or print them as you will not be able to read the codes again later." : "Dies sind deine Backup-Codes. Bitte speichere und/oder drucke diese aus, da du die Codes später nicht mehr abrufen kannst.", diff --git a/apps/twofactor_backupcodes/l10n/de.json b/apps/twofactor_backupcodes/l10n/de.json index 0b4b9fdc282..08d1955057f 100644 --- a/apps/twofactor_backupcodes/l10n/de.json +++ b/apps/twofactor_backupcodes/l10n/de.json @@ -5,8 +5,8 @@ "You enabled two-factor authentication but did not generate backup codes yet. They are needed to restore access to your account in case you lose your second factor." : "Du hast die Zwei-Faktor-Authentifizierung aktiviert, aber noch keine Backup-Codes erzeugt. Diese werden für den Fall benötigt, dass du den Zugriff auf deinen zweiten Faktor verloren hast.", "Backup code" : "Backup-Code", "Use backup code" : "Verwende Backup-Code", - "Two factor backup codes" : "Zweifaktor-Backup-Codes", - "A two-factor auth backup codes provider" : "Ein Anbieter für Zweifaktor-Backup-Codes", + "Two factor backup codes" : "Zwei-Faktor-Backup-Codes", + "A two-factor auth backup codes provider" : "Ein Anbieter für Zwei-Faktor-Backup-Codes", "An error occurred while generating your backup codes" : "Es ist ein Fehler beim Erstellen deiner Backup-Codes aufgetreten", "Backup codes have been generated. {used} of {total} codes have been used." : "Backup-Codes wurden erzeugt. {used} von {total} Codes wurden benutzt.", "These are your backup codes. Please save and/or print them as you will not be able to read the codes again later." : "Dies sind deine Backup-Codes. Bitte speichere und/oder drucke diese aus, da du die Codes später nicht mehr abrufen kannst.", diff --git a/apps/twofactor_backupcodes/l10n/de_DE.js b/apps/twofactor_backupcodes/l10n/de_DE.js index 7020b01bdd1..63ddc32462b 100644 --- a/apps/twofactor_backupcodes/l10n/de_DE.js +++ b/apps/twofactor_backupcodes/l10n/de_DE.js @@ -7,8 +7,8 @@ OC.L10N.register( "You enabled two-factor authentication but did not generate backup codes yet. They are needed to restore access to your account in case you lose your second factor." : "Sie haben die Zwei-Faktor-Authentifizierung aktiviert, aber noch keine Backup-Codes erzeugt. Diese werden für den Fall benötigt, dass Sie den Zugriff auf Ihren zweiten Faktor verlieren.", "Backup code" : "Backup-Code", "Use backup code" : "Backup-Code verwenden", - "Two factor backup codes" : "Zweifaktor-Backup-Codes", - "A two-factor auth backup codes provider" : "Ein Anbieter für Zweifaktor-Backup-Codes", + "Two factor backup codes" : "Zwei-Faktor-Backup-Codes", + "A two-factor auth backup codes provider" : "Ein Anbieter für Zwei-Faktor-Backup-Codes", "An error occurred while generating your backup codes" : "Es ist ein Fehler beim Erstellen Ihrer Backup-Codes aufgetreten", "Backup codes have been generated. {used} of {total} codes have been used." : "Backup-Codes wurden erzeugt. {used} von {total} Codes wurden benutzt.", "These are your backup codes. Please save and/or print them as you will not be able to read the codes again later." : "Dies sind Ihre Backup-Codes. Bitte speichern und/oder drucken Sie diese aus, da Sie die Codes später nicht mehr abrufen können.", diff --git a/apps/twofactor_backupcodes/l10n/de_DE.json b/apps/twofactor_backupcodes/l10n/de_DE.json index d50865d7e0d..506e08f3c41 100644 --- a/apps/twofactor_backupcodes/l10n/de_DE.json +++ b/apps/twofactor_backupcodes/l10n/de_DE.json @@ -5,8 +5,8 @@ "You enabled two-factor authentication but did not generate backup codes yet. They are needed to restore access to your account in case you lose your second factor." : "Sie haben die Zwei-Faktor-Authentifizierung aktiviert, aber noch keine Backup-Codes erzeugt. Diese werden für den Fall benötigt, dass Sie den Zugriff auf Ihren zweiten Faktor verlieren.", "Backup code" : "Backup-Code", "Use backup code" : "Backup-Code verwenden", - "Two factor backup codes" : "Zweifaktor-Backup-Codes", - "A two-factor auth backup codes provider" : "Ein Anbieter für Zweifaktor-Backup-Codes", + "Two factor backup codes" : "Zwei-Faktor-Backup-Codes", + "A two-factor auth backup codes provider" : "Ein Anbieter für Zwei-Faktor-Backup-Codes", "An error occurred while generating your backup codes" : "Es ist ein Fehler beim Erstellen Ihrer Backup-Codes aufgetreten", "Backup codes have been generated. {used} of {total} codes have been used." : "Backup-Codes wurden erzeugt. {used} von {total} Codes wurden benutzt.", "These are your backup codes. Please save and/or print them as you will not be able to read the codes again later." : "Dies sind Ihre Backup-Codes. Bitte speichern und/oder drucken Sie diese aus, da Sie die Codes später nicht mehr abrufen können.", diff --git a/apps/user_ldap/l10n/et_EE.js b/apps/user_ldap/l10n/et_EE.js index 46695f1973a..92cb8c11e68 100644 --- a/apps/user_ldap/l10n/et_EE.js +++ b/apps/user_ldap/l10n/et_EE.js @@ -5,6 +5,7 @@ OC.L10N.register( "Failed to delete the server configuration" : "Serveri seadistuse kustutamine ebaõnnestus", "Invalid configuration: Anonymous binding is not allowed." : "Vale seadistus: anonüümne sidumine pole lubatud.", "Valid configuration, connection established!" : "Korrektne seadistus, ühendus on loodud!", + "Valid configuration, but binding failed. Please check the server settings and credentials." : "Seadistus on korrektne, kuid sidumine ei õnnestunud. Palun kontrolli serveri seadistusi ja ühenduse kasutajanime/salasõna.", "Invalid configuration: %s" : "Vigane seadistus: %s", "No action specified" : "Tegevusi pole määratletud", "No configuration specified" : "Seadistust pole määratletud", @@ -30,11 +31,15 @@ OC.L10N.register( "Could not detect Base DN, please enter it manually." : "BaasDN-i tuvastamine ebaõnnestus. Palun sisesta see käsitsi.", "{nthServer}. Server" : "{nthServer}. Server", "No object found in the given Base DN. Please revise." : "BaasDN-is ei leitu ühtegi objekti.", - "More than 1,000 directory entries available." : "Saadaval on rohkem kui 1000 kataloogi kirjet.", + "More than 1,000 directory entries available." : "Saadaval on rohkem kui 1000 kataloogikirjet.", + "_{objectsFound} entry available within the provided Base DN_::_{objectsFound} entries available within the provided Base DN_" : ["„Base DN“ alusel on saadaval {objectsFound} kirje","„Base DN“ alusel on saadaval {objectsFound} kirjet"], + "An error occurred. Please check the Base DN, as well as connection settings and credentials." : "Tekkis viga. Palun kontrolli, kas „Base DN“ on õige, ühendus toimib ning kasutajanimi/salasõna on korrektsed.", "Do you really want to delete the current Server Configuration?" : "Oled kindel, et tahad kustutada praegust serveri seadistust?", "Confirm Deletion" : "Kinnita kustutamine", "Mappings cleared successfully!" : "Vastandused on eemaldatud!", "Error while clearing the mappings." : "Viga vastanduse/seose eemaldamisel.", + "Anonymous bind is not allowed. Please provide a User DN and Password." : "Anonüümne sidumine pole lubatud. Palun sisesta kasutaja „User DN“ ja salasõna.", + "LDAP Operations error. Anonymous bind might not be allowed." : "LDAP päringu viga. Anonüümne sidumine pole ilmselt lubatud.", "Mode switch" : "Režiimi lüliti", "Select attributes" : "Vali atribuudid", "User found and settings verified." : "Kasutaja leiti ja seaded on kontrollitud.", diff --git a/apps/user_ldap/l10n/et_EE.json b/apps/user_ldap/l10n/et_EE.json index 8e9306fb653..47aba4f4b3d 100644 --- a/apps/user_ldap/l10n/et_EE.json +++ b/apps/user_ldap/l10n/et_EE.json @@ -3,6 +3,7 @@ "Failed to delete the server configuration" : "Serveri seadistuse kustutamine ebaõnnestus", "Invalid configuration: Anonymous binding is not allowed." : "Vale seadistus: anonüümne sidumine pole lubatud.", "Valid configuration, connection established!" : "Korrektne seadistus, ühendus on loodud!", + "Valid configuration, but binding failed. Please check the server settings and credentials." : "Seadistus on korrektne, kuid sidumine ei õnnestunud. Palun kontrolli serveri seadistusi ja ühenduse kasutajanime/salasõna.", "Invalid configuration: %s" : "Vigane seadistus: %s", "No action specified" : "Tegevusi pole määratletud", "No configuration specified" : "Seadistust pole määratletud", @@ -28,11 +29,15 @@ "Could not detect Base DN, please enter it manually." : "BaasDN-i tuvastamine ebaõnnestus. Palun sisesta see käsitsi.", "{nthServer}. Server" : "{nthServer}. Server", "No object found in the given Base DN. Please revise." : "BaasDN-is ei leitu ühtegi objekti.", - "More than 1,000 directory entries available." : "Saadaval on rohkem kui 1000 kataloogi kirjet.", + "More than 1,000 directory entries available." : "Saadaval on rohkem kui 1000 kataloogikirjet.", + "_{objectsFound} entry available within the provided Base DN_::_{objectsFound} entries available within the provided Base DN_" : ["„Base DN“ alusel on saadaval {objectsFound} kirje","„Base DN“ alusel on saadaval {objectsFound} kirjet"], + "An error occurred. Please check the Base DN, as well as connection settings and credentials." : "Tekkis viga. Palun kontrolli, kas „Base DN“ on õige, ühendus toimib ning kasutajanimi/salasõna on korrektsed.", "Do you really want to delete the current Server Configuration?" : "Oled kindel, et tahad kustutada praegust serveri seadistust?", "Confirm Deletion" : "Kinnita kustutamine", "Mappings cleared successfully!" : "Vastandused on eemaldatud!", "Error while clearing the mappings." : "Viga vastanduse/seose eemaldamisel.", + "Anonymous bind is not allowed. Please provide a User DN and Password." : "Anonüümne sidumine pole lubatud. Palun sisesta kasutaja „User DN“ ja salasõna.", + "LDAP Operations error. Anonymous bind might not be allowed." : "LDAP päringu viga. Anonüümne sidumine pole ilmselt lubatud.", "Mode switch" : "Režiimi lüliti", "Select attributes" : "Vali atribuudid", "User found and settings verified." : "Kasutaja leiti ja seaded on kontrollitud.", |