diff options
Diffstat (limited to 'lib')
98 files changed, 1266 insertions, 552 deletions
diff --git a/lib/base.php b/lib/base.php index 7d86245818d..e7bedb69596 100644 --- a/lib/base.php +++ b/lib/base.php @@ -217,12 +217,7 @@ class OC { // set the right include path set_include_path( - OC::$SERVERROOT . '/lib/private' . PATH_SEPARATOR . - self::$configDir . PATH_SEPARATOR . - OC::$SERVERROOT . '/3rdparty' . PATH_SEPARATOR . - implode(PATH_SEPARATOR, $paths) . PATH_SEPARATOR . - get_include_path() . PATH_SEPARATOR . - OC::$SERVERROOT + implode(PATH_SEPARATOR, $paths) ); } @@ -625,7 +620,9 @@ class OC { @ini_set('display_errors', 0); @ini_set('log_errors', 1); - date_default_timezone_set('UTC'); + if(!date_default_timezone_set('UTC')) { + throw new \RuntimeException('Could not set timezone to UTC'); + }; //try to configure php to enable big file uploads. //this doesn´t work always depending on the webserver and php configuration. @@ -660,7 +657,6 @@ class OC { stream_wrapper_register('static', 'OC\Files\Stream\StaticStream'); stream_wrapper_register('close', 'OC\Files\Stream\Close'); stream_wrapper_register('quota', 'OC\Files\Stream\Quota'); - stream_wrapper_register('oc', 'OC\Files\Stream\OC'); \OC::$server->getEventLogger()->start('init_session', 'Initialize session'); OC_App::loadApps(array('session')); diff --git a/lib/composer/composer/autoload_classmap.php b/lib/composer/composer/autoload_classmap.php index f4d189d667a..532a6f39848 100644 --- a/lib/composer/composer/autoload_classmap.php +++ b/lib/composer/composer/autoload_classmap.php @@ -404,6 +404,7 @@ return array( 'OC\\Core\\Controller\\AvatarController' => $baseDir . '/core/Controller/AvatarController.php', 'OC\\Core\\Controller\\LoginController' => $baseDir . '/core/Controller/LoginController.php', 'OC\\Core\\Controller\\LostController' => $baseDir . '/core/Controller/LostController.php', + 'OC\\Core\\Controller\\OCJSController' => $baseDir . '/core/Controller/OCJSController.php', 'OC\\Core\\Controller\\OCSController' => $baseDir . '/core/Controller/OCSController.php', 'OC\\Core\\Controller\\SetupController' => $baseDir . '/core/Controller/SetupController.php', 'OC\\Core\\Controller\\TwoFactorChallengeController' => $baseDir . '/core/Controller/TwoFactorChallengeController.php', @@ -533,7 +534,6 @@ return array( 'OC\\Files\\Stream\\Close' => $baseDir . '/lib/private/Files/Stream/Close.php', 'OC\\Files\\Stream\\Dir' => $baseDir . '/lib/private/Files/Stream/Dir.php', 'OC\\Files\\Stream\\Encryption' => $baseDir . '/lib/private/Files/Stream/Encryption.php', - 'OC\\Files\\Stream\\OC' => $baseDir . '/lib/private/Files/Stream/OC.php', 'OC\\Files\\Stream\\Quota' => $baseDir . '/lib/private/Files/Stream/Quota.php', 'OC\\Files\\Stream\\StaticStream' => $baseDir . '/lib/private/Files/Stream/StaticStream.php', 'OC\\Files\\Type\\Detection' => $baseDir . '/lib/private/Files/Type/Detection.php', @@ -678,6 +678,7 @@ return array( 'OC\\Security\\Bruteforce\\Throttler' => $baseDir . '/lib/private/Security/Bruteforce/Throttler.php', 'OC\\Security\\CSP\\ContentSecurityPolicy' => $baseDir . '/lib/private/Security/CSP/ContentSecurityPolicy.php', 'OC\\Security\\CSP\\ContentSecurityPolicyManager' => $baseDir . '/lib/private/Security/CSP/ContentSecurityPolicyManager.php', + 'OC\\Security\\CSP\\ContentSecurityPolicyNonceManager' => $baseDir . '/lib/private/Security/CSP/ContentSecurityPolicyNonceManager.php', 'OC\\Security\\CSRF\\CsrfToken' => $baseDir . '/lib/private/Security/CSRF/CsrfToken.php', 'OC\\Security\\CSRF\\CsrfTokenGenerator' => $baseDir . '/lib/private/Security/CSRF/CsrfTokenGenerator.php', 'OC\\Security\\CSRF\\CsrfTokenManager' => $baseDir . '/lib/private/Security/CSRF/CsrfTokenManager.php', @@ -755,6 +756,7 @@ return array( 'OC\\TemplateLayout' => $baseDir . '/lib/private/TemplateLayout.php', 'OC\\Template\\Base' => $baseDir . '/lib/private/Template/Base.php', 'OC\\Template\\CSSResourceLocator' => $baseDir . '/lib/private/Template/CSSResourceLocator.php', + 'OC\\Template\\JSConfigHelper' => $baseDir . '/lib/private/Template/JSConfigHelper.php', 'OC\\Template\\JSResourceLocator' => $baseDir . '/lib/private/Template/JSResourceLocator.php', 'OC\\Template\\ResourceLocator' => $baseDir . '/lib/private/Template/ResourceLocator.php', 'OC\\Template\\ResourceNotFoundException' => $baseDir . '/lib/private/Template/ResourceNotFoundException.php', diff --git a/lib/composer/composer/autoload_static.php b/lib/composer/composer/autoload_static.php index d2f58f1cd71..c0a3e9b50c6 100644 --- a/lib/composer/composer/autoload_static.php +++ b/lib/composer/composer/autoload_static.php @@ -434,6 +434,7 @@ class ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c 'OC\\Core\\Controller\\AvatarController' => __DIR__ . '/../../..' . '/core/Controller/AvatarController.php', 'OC\\Core\\Controller\\LoginController' => __DIR__ . '/../../..' . '/core/Controller/LoginController.php', 'OC\\Core\\Controller\\LostController' => __DIR__ . '/../../..' . '/core/Controller/LostController.php', + 'OC\\Core\\Controller\\OCJSController' => __DIR__ . '/../../..' . '/core/Controller/OCJSController.php', 'OC\\Core\\Controller\\OCSController' => __DIR__ . '/../../..' . '/core/Controller/OCSController.php', 'OC\\Core\\Controller\\SetupController' => __DIR__ . '/../../..' . '/core/Controller/SetupController.php', 'OC\\Core\\Controller\\TwoFactorChallengeController' => __DIR__ . '/../../..' . '/core/Controller/TwoFactorChallengeController.php', @@ -563,7 +564,6 @@ class ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c 'OC\\Files\\Stream\\Close' => __DIR__ . '/../../..' . '/lib/private/Files/Stream/Close.php', 'OC\\Files\\Stream\\Dir' => __DIR__ . '/../../..' . '/lib/private/Files/Stream/Dir.php', 'OC\\Files\\Stream\\Encryption' => __DIR__ . '/../../..' . '/lib/private/Files/Stream/Encryption.php', - 'OC\\Files\\Stream\\OC' => __DIR__ . '/../../..' . '/lib/private/Files/Stream/OC.php', 'OC\\Files\\Stream\\Quota' => __DIR__ . '/../../..' . '/lib/private/Files/Stream/Quota.php', 'OC\\Files\\Stream\\StaticStream' => __DIR__ . '/../../..' . '/lib/private/Files/Stream/StaticStream.php', 'OC\\Files\\Type\\Detection' => __DIR__ . '/../../..' . '/lib/private/Files/Type/Detection.php', @@ -708,6 +708,7 @@ class ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c 'OC\\Security\\Bruteforce\\Throttler' => __DIR__ . '/../../..' . '/lib/private/Security/Bruteforce/Throttler.php', 'OC\\Security\\CSP\\ContentSecurityPolicy' => __DIR__ . '/../../..' . '/lib/private/Security/CSP/ContentSecurityPolicy.php', 'OC\\Security\\CSP\\ContentSecurityPolicyManager' => __DIR__ . '/../../..' . '/lib/private/Security/CSP/ContentSecurityPolicyManager.php', + 'OC\\Security\\CSP\\ContentSecurityPolicyNonceManager' => __DIR__ . '/../../..' . '/lib/private/Security/CSP/ContentSecurityPolicyNonceManager.php', 'OC\\Security\\CSRF\\CsrfToken' => __DIR__ . '/../../..' . '/lib/private/Security/CSRF/CsrfToken.php', 'OC\\Security\\CSRF\\CsrfTokenGenerator' => __DIR__ . '/../../..' . '/lib/private/Security/CSRF/CsrfTokenGenerator.php', 'OC\\Security\\CSRF\\CsrfTokenManager' => __DIR__ . '/../../..' . '/lib/private/Security/CSRF/CsrfTokenManager.php', @@ -785,6 +786,7 @@ class ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c 'OC\\TemplateLayout' => __DIR__ . '/../../..' . '/lib/private/TemplateLayout.php', 'OC\\Template\\Base' => __DIR__ . '/../../..' . '/lib/private/Template/Base.php', 'OC\\Template\\CSSResourceLocator' => __DIR__ . '/../../..' . '/lib/private/Template/CSSResourceLocator.php', + 'OC\\Template\\JSConfigHelper' => __DIR__ . '/../../..' . '/lib/private/Template/JSConfigHelper.php', 'OC\\Template\\JSResourceLocator' => __DIR__ . '/../../..' . '/lib/private/Template/JSResourceLocator.php', 'OC\\Template\\ResourceLocator' => __DIR__ . '/../../..' . '/lib/private/Template/ResourceLocator.php', 'OC\\Template\\ResourceNotFoundException' => __DIR__ . '/../../..' . '/lib/private/Template/ResourceNotFoundException.php', diff --git a/lib/l10n/ast.js b/lib/l10n/ast.js index 26175da343a..47b0dcfb72f 100644 --- a/lib/l10n/ast.js +++ b/lib/l10n/ast.js @@ -117,8 +117,8 @@ OC.L10N.register( "Admin" : "Almin", "Recommended" : "Recomendáu", "App \"%s\" cannot be installed because appinfo file cannot be read." : "L'aplicación \"%s\" nun puede instalase porque nun se llee'l ficheru appinfo.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "L'aplicación \"%s\" nun puede instalase porque les siguientes dependencies nun se cumplen: %s", "No app name specified" : "Nun s'especificó nome de l'aplicación", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "L'aplicación \"%s\" nun puede instalase porque les siguientes dependencies nun se cumplen: %s", "File is currently busy, please try again later" : "Fichaeru ta ocupáu, por favor intentelo de nuevu más tarde", "Can't read file" : "Nun ye a lleese'l ficheru", "Application is not enabled" : "L'aplicación nun ta habilitada", @@ -126,7 +126,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Token caducáu. Recarga la páxina.", "Unknown user" : "Usuariu desconocíu", "No database drivers (sqlite, mysql, or postgresql) installed." : "Nun hai controladores de bases de datos (sqlite, mysql, o postgresql)", - "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform nun ta soportáu", "Cannot write into \"config\" directory" : "Nun pue escribise nel direutoriu \"config\"", "Cannot write into \"apps\" directory" : "Nun pue escribise nel direutoriu \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Esto pue iguase %sdando permisos d'escritura al sirvidor Web nel direutoriu%s d'apps o deshabilitando la tienda d'apps nel ficheru de configuración.", @@ -159,6 +158,7 @@ OC.L10N.register( "Storage incomplete configuration. %s" : "Configuración d'almacenamientu incompleta. %s", "Storage connection error. %s" : "Fallu de conexón al almacenamientu. %s", "Storage not available" : "Almacenamientu non disponible", - "Storage connection timeout. %s" : "Tiempu escosao de conexón al almacenamientu. %s" + "Storage connection timeout. %s" : "Tiempu escosao de conexón al almacenamientu. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform nun ta soportáu" }, "nplurals=2; plural=(n != 1);"); diff --git a/lib/l10n/ast.json b/lib/l10n/ast.json index 474cd5c2ede..289136e5906 100644 --- a/lib/l10n/ast.json +++ b/lib/l10n/ast.json @@ -115,8 +115,8 @@ "Admin" : "Almin", "Recommended" : "Recomendáu", "App \"%s\" cannot be installed because appinfo file cannot be read." : "L'aplicación \"%s\" nun puede instalase porque nun se llee'l ficheru appinfo.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "L'aplicación \"%s\" nun puede instalase porque les siguientes dependencies nun se cumplen: %s", "No app name specified" : "Nun s'especificó nome de l'aplicación", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "L'aplicación \"%s\" nun puede instalase porque les siguientes dependencies nun se cumplen: %s", "File is currently busy, please try again later" : "Fichaeru ta ocupáu, por favor intentelo de nuevu más tarde", "Can't read file" : "Nun ye a lleese'l ficheru", "Application is not enabled" : "L'aplicación nun ta habilitada", @@ -124,7 +124,6 @@ "Token expired. Please reload page." : "Token caducáu. Recarga la páxina.", "Unknown user" : "Usuariu desconocíu", "No database drivers (sqlite, mysql, or postgresql) installed." : "Nun hai controladores de bases de datos (sqlite, mysql, o postgresql)", - "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform nun ta soportáu", "Cannot write into \"config\" directory" : "Nun pue escribise nel direutoriu \"config\"", "Cannot write into \"apps\" directory" : "Nun pue escribise nel direutoriu \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Esto pue iguase %sdando permisos d'escritura al sirvidor Web nel direutoriu%s d'apps o deshabilitando la tienda d'apps nel ficheru de configuración.", @@ -157,6 +156,7 @@ "Storage incomplete configuration. %s" : "Configuración d'almacenamientu incompleta. %s", "Storage connection error. %s" : "Fallu de conexón al almacenamientu. %s", "Storage not available" : "Almacenamientu non disponible", - "Storage connection timeout. %s" : "Tiempu escosao de conexón al almacenamientu. %s" + "Storage connection timeout. %s" : "Tiempu escosao de conexón al almacenamientu. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform nun ta soportáu" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/lib/l10n/cs_CZ.js b/lib/l10n/cs_CZ.js index a5b1d961f57..e62da4187cc 100644 --- a/lib/l10n/cs_CZ.js +++ b/lib/l10n/cs_CZ.js @@ -20,6 +20,7 @@ OC.L10N.register( "Server version %s or lower is required." : "Je potřeba verze serveru %s nebo nižší.", "Unknown filetype" : "Neznámý typ souboru", "Invalid image" : "Chybný obrázek", + "Avatar image is not square" : "Avatar není čtvercový", "today" : "dnes", "yesterday" : "včera", "_%n day ago_::_%n days ago_" : ["včera","před %n dny","před %n dny"], @@ -115,6 +116,51 @@ OC.L10N.register( "Expiration date is in the past" : "Datum vypršení je v minulosti", "Cannot set expiration date more than %s days in the future" : "Datum vypršení nelze nastavit na více než %s dní do budoucnosti", "Could not find category \"%s\"" : "Nelze nalézt kategorii \"%s\"", + "Sunday" : "Neděle", + "Monday" : "Pondělí", + "Tuesday" : "Úterý", + "Wednesday" : "Středa", + "Thursday" : "Čtvrtek", + "Friday" : "Pátek", + "Saturday" : "Sobota", + "Sun." : "Ne", + "Mon." : "Po", + "Tue." : "Út", + "Wed." : "St", + "Thu." : "Čt", + "Fri." : "Pá", + "Sat." : "So", + "Su" : "Ne", + "Mo" : "Po", + "Tu" : "Út", + "We" : "St", + "Th" : "Čt", + "Fr" : "Pá", + "Sa" : "So", + "January" : "Leden", + "February" : "Únor", + "March" : "Březen", + "April" : "Duben", + "May" : "Květen", + "June" : "Červen", + "July" : "Červenec", + "August" : "Srpen", + "September" : "Září", + "October" : "Říjen", + "November" : "Listopad", + "December" : "Prosinec", + "Jan." : "leden", + "Feb." : "únor", + "Mar." : "březen", + "Apr." : "duben", + "May." : "květen", + "Jun." : "červen", + "Jul." : "červenec", + "Aug." : "srpen", + "Sep." : "září", + "Oct." : "říjen", + "Nov." : "listopad", + "Dec." : "prosinec", "Apps" : "Aplikace", "Only the following characters are allowed in a username: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"" : "Pouze následující znaky jsou povoleny pro uživatelské jméno: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"", "A valid username must be provided" : "Musíte zadat platné uživatelské jméno", @@ -130,9 +176,9 @@ OC.L10N.register( "Recommended" : "Doporučené", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Aplikace \"%s\" nemůže být nainstalována protože soubor appinfo nelze přečíst.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Aplikaci \"%s\" nelze nainstalovat, protože není kompatibilní s touto verzí serveru.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Aplikaci \"%s\" nelze nainstalovat, protože nejsou splněny následující závislosti: %s", "No app name specified" : "Nebyl zadan název aplikace", "App '%s' could not be installed!" : "Aplikaci '%s' nelze nainstalovat!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Aplikaci \"%s\" nelze nainstalovat, protože nejsou splněny následující závislosti: %s", "a safe home for all your data" : "bezpečný domov pro všechna vaše data", "File is currently busy, please try again later" : "Soubor je používán, zkus to později", "Can't read file" : "Nelze přečíst soubor", @@ -141,8 +187,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Token vypršel. Obnovte prosím stránku.", "Unknown user" : "Neznámý uživatel", "No database drivers (sqlite, mysql, or postgresql) installed." : "Nejsou instalovány ovladače databází (sqlite, mysql nebo postresql).", - "Microsoft Windows Platform is not supported" : "Platforma Microsoft Windows není podporována", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Provozování Nextcloud Serveru na platformě Microsoft Windows není podporováno. Doporučujeme, abyste použili linuxový server ve virtuálním stroji, pokud nemáte možnost server migrovat.", "Cannot write into \"config\" directory" : "Nelze zapisovat do adresáře \"config\"", "Cannot write into \"apps\" directory" : "Nelze zapisovat do adresáře \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "To lze obvykle vyřešit %spovolením zápisu webovému serveru do adresáře apps%s nebo zakázáním appstore v konfiguračním souboru.", @@ -175,8 +219,11 @@ OC.L10N.register( "Storage unauthorized. %s" : "Úložiště neověřeno. %s", "Storage incomplete configuration. %s" : "Nekompletní konfigurace úložiště. %s", "Storage connection error. %s" : "Chyba připojení úložiště. %s", - "Storage not available" : "Úložiště není dostupné", + "Storage is temporarily not available" : "Úložiště je dočasně nedostupné", "Storage connection timeout. %s" : "Vypršení připojení k úložišti. %s", + "Microsoft Windows Platform is not supported" : "Platforma Microsoft Windows není podporována", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Provozování Nextcloud Serveru na platformě Microsoft Windows není podporováno. Doporučujeme, abyste použili linuxový server ve virtuálním stroji, pokud nemáte možnost server migrovat.", + "Storage not available" : "Úložiště není dostupné", "ownCloud %s or higher is required." : "Vyžadován ownCloud %s nebo vyšší.", "ownCloud %s or lower is required." : "Vyžadován ownCloud %s nebo nižší.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "Aplikaci \"%s\" nelze nainstalovat, protože není kompatibilní s touto verzí Nextcloud.", diff --git a/lib/l10n/cs_CZ.json b/lib/l10n/cs_CZ.json index d923f93d28d..934416f8857 100644 --- a/lib/l10n/cs_CZ.json +++ b/lib/l10n/cs_CZ.json @@ -18,6 +18,7 @@ "Server version %s or lower is required." : "Je potřeba verze serveru %s nebo nižší.", "Unknown filetype" : "Neznámý typ souboru", "Invalid image" : "Chybný obrázek", + "Avatar image is not square" : "Avatar není čtvercový", "today" : "dnes", "yesterday" : "včera", "_%n day ago_::_%n days ago_" : ["včera","před %n dny","před %n dny"], @@ -113,6 +114,51 @@ "Expiration date is in the past" : "Datum vypršení je v minulosti", "Cannot set expiration date more than %s days in the future" : "Datum vypršení nelze nastavit na více než %s dní do budoucnosti", "Could not find category \"%s\"" : "Nelze nalézt kategorii \"%s\"", + "Sunday" : "Neděle", + "Monday" : "Pondělí", + "Tuesday" : "Úterý", + "Wednesday" : "Středa", + "Thursday" : "Čtvrtek", + "Friday" : "Pátek", + "Saturday" : "Sobota", + "Sun." : "Ne", + "Mon." : "Po", + "Tue." : "Út", + "Wed." : "St", + "Thu." : "Čt", + "Fri." : "Pá", + "Sat." : "So", + "Su" : "Ne", + "Mo" : "Po", + "Tu" : "Út", + "We" : "St", + "Th" : "Čt", + "Fr" : "Pá", + "Sa" : "So", + "January" : "Leden", + "February" : "Únor", + "March" : "Březen", + "April" : "Duben", + "May" : "Květen", + "June" : "Červen", + "July" : "Červenec", + "August" : "Srpen", + "September" : "Září", + "October" : "Říjen", + "November" : "Listopad", + "December" : "Prosinec", + "Jan." : "leden", + "Feb." : "únor", + "Mar." : "březen", + "Apr." : "duben", + "May." : "květen", + "Jun." : "červen", + "Jul." : "červenec", + "Aug." : "srpen", + "Sep." : "září", + "Oct." : "říjen", + "Nov." : "listopad", + "Dec." : "prosinec", "Apps" : "Aplikace", "Only the following characters are allowed in a username: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"" : "Pouze následující znaky jsou povoleny pro uživatelské jméno: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"", "A valid username must be provided" : "Musíte zadat platné uživatelské jméno", @@ -128,9 +174,9 @@ "Recommended" : "Doporučené", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Aplikace \"%s\" nemůže být nainstalována protože soubor appinfo nelze přečíst.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Aplikaci \"%s\" nelze nainstalovat, protože není kompatibilní s touto verzí serveru.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Aplikaci \"%s\" nelze nainstalovat, protože nejsou splněny následující závislosti: %s", "No app name specified" : "Nebyl zadan název aplikace", "App '%s' could not be installed!" : "Aplikaci '%s' nelze nainstalovat!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Aplikaci \"%s\" nelze nainstalovat, protože nejsou splněny následující závislosti: %s", "a safe home for all your data" : "bezpečný domov pro všechna vaše data", "File is currently busy, please try again later" : "Soubor je používán, zkus to později", "Can't read file" : "Nelze přečíst soubor", @@ -139,8 +185,6 @@ "Token expired. Please reload page." : "Token vypršel. Obnovte prosím stránku.", "Unknown user" : "Neznámý uživatel", "No database drivers (sqlite, mysql, or postgresql) installed." : "Nejsou instalovány ovladače databází (sqlite, mysql nebo postresql).", - "Microsoft Windows Platform is not supported" : "Platforma Microsoft Windows není podporována", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Provozování Nextcloud Serveru na platformě Microsoft Windows není podporováno. Doporučujeme, abyste použili linuxový server ve virtuálním stroji, pokud nemáte možnost server migrovat.", "Cannot write into \"config\" directory" : "Nelze zapisovat do adresáře \"config\"", "Cannot write into \"apps\" directory" : "Nelze zapisovat do adresáře \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "To lze obvykle vyřešit %spovolením zápisu webovému serveru do adresáře apps%s nebo zakázáním appstore v konfiguračním souboru.", @@ -173,8 +217,11 @@ "Storage unauthorized. %s" : "Úložiště neověřeno. %s", "Storage incomplete configuration. %s" : "Nekompletní konfigurace úložiště. %s", "Storage connection error. %s" : "Chyba připojení úložiště. %s", - "Storage not available" : "Úložiště není dostupné", + "Storage is temporarily not available" : "Úložiště je dočasně nedostupné", "Storage connection timeout. %s" : "Vypršení připojení k úložišti. %s", + "Microsoft Windows Platform is not supported" : "Platforma Microsoft Windows není podporována", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Provozování Nextcloud Serveru na platformě Microsoft Windows není podporováno. Doporučujeme, abyste použili linuxový server ve virtuálním stroji, pokud nemáte možnost server migrovat.", + "Storage not available" : "Úložiště není dostupné", "ownCloud %s or higher is required." : "Vyžadován ownCloud %s nebo vyšší.", "ownCloud %s or lower is required." : "Vyžadován ownCloud %s nebo nižší.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "Aplikaci \"%s\" nelze nainstalovat, protože není kompatibilní s touto verzí Nextcloud.", diff --git a/lib/l10n/da.js b/lib/l10n/da.js index 6b1f3ac0725..a492615679f 100644 --- a/lib/l10n/da.js +++ b/lib/l10n/da.js @@ -105,8 +105,8 @@ OC.L10N.register( "Users" : "Brugere", "Admin" : "Admin", "Recommended" : "Anbefalet", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App'en \"%s\" kan ikke installeres, da følgende krav ikke er opfyldt: %s ", "No app name specified" : "Intet app-navn angivet", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App'en \"%s\" kan ikke installeres, da følgende krav ikke er opfyldt: %s ", "File is currently busy, please try again later" : "Filen er i øjeblikket optaget - forsøg igen senere", "Can't read file" : "Kan ikke læse filen", "Application is not enabled" : "Programmet er ikke aktiveret", @@ -114,7 +114,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Adgang er udløbet. Genindlæs siden.", "Unknown user" : "Ukendt bruger", "No database drivers (sqlite, mysql, or postgresql) installed." : "Ingen database driver (sqlite, mysql eller postgresql) er installeret.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows platformen er ikke understøttet", "Cannot write into \"config\" directory" : "Kan ikke skrive til mappen \"config\"", "Cannot write into \"apps\" directory" : "Kan ikke skrive til mappen \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Dette kan som regel rettes ved at %sgive webserveren skriveadgang til apps-mappen%s eller slå appstore fra i config-filen.", @@ -140,6 +139,7 @@ OC.L10N.register( "Data directory (%s) is invalid" : "Datamappen (%s) er ugyldig", "Please check that the data directory contains a file \".ocdata\" in its root." : "Tjek venligst at datamappen indeholder en fil, \".ocdata\" i dens rod.", "Could not obtain lock type %d on \"%s\"." : "Kunne ikke opnå en låsetype %d på \"%s\".", - "Storage not available" : "Lagerplads er ikke tilgængeligt" + "Storage not available" : "Lagerplads er ikke tilgængeligt", + "Microsoft Windows Platform is not supported" : "Microsoft Windows platformen er ikke understøttet" }, "nplurals=2; plural=(n != 1);"); diff --git a/lib/l10n/da.json b/lib/l10n/da.json index c1bb49d836c..cd51a351bd0 100644 --- a/lib/l10n/da.json +++ b/lib/l10n/da.json @@ -103,8 +103,8 @@ "Users" : "Brugere", "Admin" : "Admin", "Recommended" : "Anbefalet", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App'en \"%s\" kan ikke installeres, da følgende krav ikke er opfyldt: %s ", "No app name specified" : "Intet app-navn angivet", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App'en \"%s\" kan ikke installeres, da følgende krav ikke er opfyldt: %s ", "File is currently busy, please try again later" : "Filen er i øjeblikket optaget - forsøg igen senere", "Can't read file" : "Kan ikke læse filen", "Application is not enabled" : "Programmet er ikke aktiveret", @@ -112,7 +112,6 @@ "Token expired. Please reload page." : "Adgang er udløbet. Genindlæs siden.", "Unknown user" : "Ukendt bruger", "No database drivers (sqlite, mysql, or postgresql) installed." : "Ingen database driver (sqlite, mysql eller postgresql) er installeret.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows platformen er ikke understøttet", "Cannot write into \"config\" directory" : "Kan ikke skrive til mappen \"config\"", "Cannot write into \"apps\" directory" : "Kan ikke skrive til mappen \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Dette kan som regel rettes ved at %sgive webserveren skriveadgang til apps-mappen%s eller slå appstore fra i config-filen.", @@ -138,6 +137,7 @@ "Data directory (%s) is invalid" : "Datamappen (%s) er ugyldig", "Please check that the data directory contains a file \".ocdata\" in its root." : "Tjek venligst at datamappen indeholder en fil, \".ocdata\" i dens rod.", "Could not obtain lock type %d on \"%s\"." : "Kunne ikke opnå en låsetype %d på \"%s\".", - "Storage not available" : "Lagerplads er ikke tilgængeligt" + "Storage not available" : "Lagerplads er ikke tilgængeligt", + "Microsoft Windows Platform is not supported" : "Microsoft Windows platformen er ikke understøttet" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/lib/l10n/de.js b/lib/l10n/de.js index 8ecec466908..bdad0a145f5 100644 --- a/lib/l10n/de.js +++ b/lib/l10n/de.js @@ -20,6 +20,7 @@ OC.L10N.register( "Server version %s or lower is required." : "Server Version %s oder niedriger wird benötigt.", "Unknown filetype" : "Unbekannter Dateityp", "Invalid image" : "Ungültiges Bild", + "Avatar image is not square" : "Benutzerbild ist nicht quadratisch", "today" : "Heute", "yesterday" : "Gestern", "_%n day ago_::_%n days ago_" : ["Vor %n Tag","Vor %n Tagen"], @@ -115,6 +116,51 @@ OC.L10N.register( "Expiration date is in the past" : "Ablaufdatum ist in der Vergangenheit", "Cannot set expiration date more than %s days in the future" : "Das Ablaufdatum kann nicht mehr als %s Tage in die Zukunft liegen", "Could not find category \"%s\"" : "Die Kategorie „%s“ konnte nicht gefunden werden", + "Sunday" : "Sonntag", + "Monday" : "Montag", + "Tuesday" : "Dienstag", + "Wednesday" : "Mittwoch", + "Thursday" : "Donnerstag", + "Friday" : "Freitag", + "Saturday" : "Samstag", + "Sun." : "Son.", + "Mon." : "Mon.", + "Tue." : "Die.", + "Wed." : "Mit.", + "Thu." : "Don.", + "Fri." : "Fre.", + "Sat." : "Sam.", + "Su" : "So", + "Mo" : "Mo", + "Tu" : "Di", + "We" : "Mi", + "Th" : "Do", + "Fr" : "Fr", + "Sa" : "Sa", + "January" : "Januar", + "February" : "Februar", + "March" : "März", + "April" : "April", + "May" : "Mai", + "June" : "Juni", + "July" : "Juli", + "August" : "August", + "September" : "September", + "October" : "Oktober", + "November" : "November", + "December" : "Dezember", + "Jan." : "Jan.", + "Feb." : "Feb.", + "Mar." : "Mär.", + "Apr." : "Apr.", + "May." : "Mai", + "Jun." : "Jun.", + "Jul." : "Jul.", + "Aug." : "Aug.", + "Sep." : "Sep.", + "Oct." : "Okt.", + "Nov." : "Nov.", + "Dec." : "Dez.", "Apps" : "Apps", "Only the following characters are allowed in a username: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"" : "Folgende Zeichen sind im Benutzernamen erlaubt: „a-z“, „A-Z“, „0-9“ und „_.@-'“", "A valid username must be provided" : "Es muss ein gültiger Benutzername angegeben werden", @@ -130,9 +176,9 @@ OC.L10N.register( "Recommended" : "Empfohlen", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Die Anwendung \"%s\" kann nicht installiert werden, weil die Anwendungsinfodatei nicht gelesen werden kann.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Die App \"%s\" kann nicht installiert werden, da sie mit dieser Serverversion nicht kompatibel ist.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Die App „%s“ kann nicht installiert werden, da die folgenden Abhängigkeiten nicht erfüllt sind: %s", "No app name specified" : "Es wurde kein App-Name angegeben", "App '%s' could not be installed!" : "'%s' - App konnte nicht installiert werden!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Die App „%s“ kann nicht installiert werden, da die folgenden Abhängigkeiten nicht erfüllt sind: %s", "a safe home for all your data" : "ein sicherer Ort für all Deine Daten", "File is currently busy, please try again later" : "Die Datei ist zur Zeit in Benutzung, bitte versuche es später noch einmal", "Can't read file" : "Datei kann nicht gelesen werden", @@ -141,8 +187,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Token abgelaufen. Bitte lade die Seite neu.", "Unknown user" : "Unbekannter Benutzer", "No database drivers (sqlite, mysql, or postgresql) installed." : "Keine Datenbanktreiber (SQLite, MySQL oder PostgreSQL) installiert.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows-Plattform wird nicht unterstützt", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Der Betrieb eines Nextcloud-Servers unter Microsoft Windows ist nicht unterstützt. Bitte ziehein Betracht einen Linux-Server im Rahmen einer virtuellen Maschine aufzusetzen, wenn du keine Möglichkeit hast, den Server selbst zu migrieren.", "Cannot write into \"config\" directory" : "Das Schreiben in das „config“-Verzeichnis ist nicht möglich", "Cannot write into \"apps\" directory" : "Das Schreiben in das „apps“-Verzeichnis ist nicht möglich", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Dies kann normalerweise behoben werden, %sindem dem Webserver Schreibzugriff auf das App-Verzeichnis gegeben wird%s oder der App Store in der Konfigurationsdatei deaktiviert wird.", @@ -175,8 +219,11 @@ OC.L10N.register( "Storage unauthorized. %s" : "Speichern nicht erlaubt. %s", "Storage incomplete configuration. %s" : "Unvollständige Konfiguration des Storage. %s", "Storage connection error. %s" : "Verbindungsfehler zum Speicherplatz. %s", - "Storage not available" : "Speicher nicht verfügbar", + "Storage is temporarily not available" : "Speicher ist vorübergehend nicht verfügbar", "Storage connection timeout. %s" : "Zeitüberschreitung der Verbindung zum Speicherplatz. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows-Plattform wird nicht unterstützt", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Der Betrieb eines Nextcloud-Servers unter Microsoft Windows ist nicht unterstützt. Bitte ziehein Betracht einen Linux-Server im Rahmen einer virtuellen Maschine aufzusetzen, wenn du keine Möglichkeit hast, den Server selbst zu migrieren.", + "Storage not available" : "Speicher nicht verfügbar", "ownCloud %s or higher is required." : "ownCloud %s oder höher ist erforderlich.", "ownCloud %s or lower is required." : "ownCloud %s oder niedriger ist erforderlich.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "Die App \"%s\" kann nicht installiert werden, da sie mit dieser Version von Nextcloud nicht kompatibel ist.", diff --git a/lib/l10n/de.json b/lib/l10n/de.json index 2a72be9450f..3855f531d6e 100644 --- a/lib/l10n/de.json +++ b/lib/l10n/de.json @@ -18,6 +18,7 @@ "Server version %s or lower is required." : "Server Version %s oder niedriger wird benötigt.", "Unknown filetype" : "Unbekannter Dateityp", "Invalid image" : "Ungültiges Bild", + "Avatar image is not square" : "Benutzerbild ist nicht quadratisch", "today" : "Heute", "yesterday" : "Gestern", "_%n day ago_::_%n days ago_" : ["Vor %n Tag","Vor %n Tagen"], @@ -113,6 +114,51 @@ "Expiration date is in the past" : "Ablaufdatum ist in der Vergangenheit", "Cannot set expiration date more than %s days in the future" : "Das Ablaufdatum kann nicht mehr als %s Tage in die Zukunft liegen", "Could not find category \"%s\"" : "Die Kategorie „%s“ konnte nicht gefunden werden", + "Sunday" : "Sonntag", + "Monday" : "Montag", + "Tuesday" : "Dienstag", + "Wednesday" : "Mittwoch", + "Thursday" : "Donnerstag", + "Friday" : "Freitag", + "Saturday" : "Samstag", + "Sun." : "Son.", + "Mon." : "Mon.", + "Tue." : "Die.", + "Wed." : "Mit.", + "Thu." : "Don.", + "Fri." : "Fre.", + "Sat." : "Sam.", + "Su" : "So", + "Mo" : "Mo", + "Tu" : "Di", + "We" : "Mi", + "Th" : "Do", + "Fr" : "Fr", + "Sa" : "Sa", + "January" : "Januar", + "February" : "Februar", + "March" : "März", + "April" : "April", + "May" : "Mai", + "June" : "Juni", + "July" : "Juli", + "August" : "August", + "September" : "September", + "October" : "Oktober", + "November" : "November", + "December" : "Dezember", + "Jan." : "Jan.", + "Feb." : "Feb.", + "Mar." : "Mär.", + "Apr." : "Apr.", + "May." : "Mai", + "Jun." : "Jun.", + "Jul." : "Jul.", + "Aug." : "Aug.", + "Sep." : "Sep.", + "Oct." : "Okt.", + "Nov." : "Nov.", + "Dec." : "Dez.", "Apps" : "Apps", "Only the following characters are allowed in a username: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"" : "Folgende Zeichen sind im Benutzernamen erlaubt: „a-z“, „A-Z“, „0-9“ und „_.@-'“", "A valid username must be provided" : "Es muss ein gültiger Benutzername angegeben werden", @@ -128,9 +174,9 @@ "Recommended" : "Empfohlen", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Die Anwendung \"%s\" kann nicht installiert werden, weil die Anwendungsinfodatei nicht gelesen werden kann.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Die App \"%s\" kann nicht installiert werden, da sie mit dieser Serverversion nicht kompatibel ist.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Die App „%s“ kann nicht installiert werden, da die folgenden Abhängigkeiten nicht erfüllt sind: %s", "No app name specified" : "Es wurde kein App-Name angegeben", "App '%s' could not be installed!" : "'%s' - App konnte nicht installiert werden!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Die App „%s“ kann nicht installiert werden, da die folgenden Abhängigkeiten nicht erfüllt sind: %s", "a safe home for all your data" : "ein sicherer Ort für all Deine Daten", "File is currently busy, please try again later" : "Die Datei ist zur Zeit in Benutzung, bitte versuche es später noch einmal", "Can't read file" : "Datei kann nicht gelesen werden", @@ -139,8 +185,6 @@ "Token expired. Please reload page." : "Token abgelaufen. Bitte lade die Seite neu.", "Unknown user" : "Unbekannter Benutzer", "No database drivers (sqlite, mysql, or postgresql) installed." : "Keine Datenbanktreiber (SQLite, MySQL oder PostgreSQL) installiert.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows-Plattform wird nicht unterstützt", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Der Betrieb eines Nextcloud-Servers unter Microsoft Windows ist nicht unterstützt. Bitte ziehein Betracht einen Linux-Server im Rahmen einer virtuellen Maschine aufzusetzen, wenn du keine Möglichkeit hast, den Server selbst zu migrieren.", "Cannot write into \"config\" directory" : "Das Schreiben in das „config“-Verzeichnis ist nicht möglich", "Cannot write into \"apps\" directory" : "Das Schreiben in das „apps“-Verzeichnis ist nicht möglich", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Dies kann normalerweise behoben werden, %sindem dem Webserver Schreibzugriff auf das App-Verzeichnis gegeben wird%s oder der App Store in der Konfigurationsdatei deaktiviert wird.", @@ -173,8 +217,11 @@ "Storage unauthorized. %s" : "Speichern nicht erlaubt. %s", "Storage incomplete configuration. %s" : "Unvollständige Konfiguration des Storage. %s", "Storage connection error. %s" : "Verbindungsfehler zum Speicherplatz. %s", - "Storage not available" : "Speicher nicht verfügbar", + "Storage is temporarily not available" : "Speicher ist vorübergehend nicht verfügbar", "Storage connection timeout. %s" : "Zeitüberschreitung der Verbindung zum Speicherplatz. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows-Plattform wird nicht unterstützt", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Der Betrieb eines Nextcloud-Servers unter Microsoft Windows ist nicht unterstützt. Bitte ziehein Betracht einen Linux-Server im Rahmen einer virtuellen Maschine aufzusetzen, wenn du keine Möglichkeit hast, den Server selbst zu migrieren.", + "Storage not available" : "Speicher nicht verfügbar", "ownCloud %s or higher is required." : "ownCloud %s oder höher ist erforderlich.", "ownCloud %s or lower is required." : "ownCloud %s oder niedriger ist erforderlich.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "Die App \"%s\" kann nicht installiert werden, da sie mit dieser Version von Nextcloud nicht kompatibel ist.", diff --git a/lib/l10n/de_DE.js b/lib/l10n/de_DE.js index 140c46a453e..435dfe883df 100644 --- a/lib/l10n/de_DE.js +++ b/lib/l10n/de_DE.js @@ -20,6 +20,7 @@ OC.L10N.register( "Server version %s or lower is required." : "Server Version %s oder niedriger wird benötigt.", "Unknown filetype" : "Unbekannter Dateityp", "Invalid image" : "Ungültiges Bild", + "Avatar image is not square" : "Avatar-Bild ist nicht quadratisch", "today" : "Heute", "yesterday" : "Gestern", "_%n day ago_::_%n days ago_" : ["Vor %n Tag","Vor %n Tagen"], @@ -115,6 +116,51 @@ OC.L10N.register( "Expiration date is in the past" : "Das Ablaufdatum liegt in der Vergangenheit.", "Cannot set expiration date more than %s days in the future" : "Ablaufdatum kann nicht mehr als %s Tage in der Zukunft liegen", "Could not find category \"%s\"" : "Die Kategorie „%s“ konnte nicht gefunden werden", + "Sunday" : "Sonntag", + "Monday" : "Montag", + "Tuesday" : "Dienstag", + "Wednesday" : "Mittwoch", + "Thursday" : "Donnerstag", + "Friday" : "Freitag", + "Saturday" : "Samstag", + "Sun." : "Son.", + "Mon." : "Mon.", + "Tue." : "Die.", + "Wed." : "Mit.", + "Thu." : "Don.", + "Fri." : "Fre.", + "Sat." : "Sam.", + "Su" : "So", + "Mo" : "Mo", + "Tu" : "Di", + "We" : "Mi", + "Th" : "Do", + "Fr" : "Fr", + "Sa" : "Sa", + "January" : "Januar", + "February" : "Februar", + "March" : "März", + "April" : "April", + "May" : "Mai", + "June" : "Juni", + "July" : "Juli", + "August" : "August", + "September" : "September", + "October" : "Oktober", + "November" : "November", + "December" : "Dezember", + "Jan." : "Jan.", + "Feb." : "Feb.", + "Mar." : "Mär.", + "Apr." : "Apr.", + "May." : "Mai", + "Jun." : "Jun.", + "Jul." : "Jul.", + "Aug." : "Aug.", + "Sep." : "Sep.", + "Oct." : "Okt.", + "Nov." : "Nov.", + "Dec." : "Dez.", "Apps" : "Apps", "Only the following characters are allowed in a username: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"" : "Nur die folgenden Zeichen sind im Benutzernamen erlaubt: „a-z“, „A-Z“, „0-9“, and „_.@-'“", "A valid username must be provided" : "Es muss ein gültiger Benutzername angegeben werden", @@ -130,9 +176,9 @@ OC.L10N.register( "Recommended" : "Empfohlen", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Die Anwendung \"%s\" kann nicht installiert werden, weil die Anwendungsinfodatei nicht gelesen werden kann.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Die App \"%s\" kann nicht installiert werden, da sie mit dieser Serverversion nicht kompatibel ist.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Die App „%s“ kann nicht installiert werden, da die folgenden Abhängigkeiten nicht erfüllt sind: %s", "No app name specified" : "Es wurde kein App-Name angegeben", "App '%s' could not be installed!" : "'%s' - App konnte nicht installiert werden!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Die App „%s“ kann nicht installiert werden, da die folgenden Abhängigkeiten nicht erfüllt sind: %s", "a safe home for all your data" : "ein sicherer Ort für all Ihre Daten", "File is currently busy, please try again later" : "Die Datei ist zur Zeit in Benutzung, bitte versuchen Sie es später noch einmal", "Can't read file" : "Datei kann nicht gelesen werden", @@ -141,8 +187,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Token abgelaufen. Bitte laden Sie die Seite neu.", "Unknown user" : "Unbekannter Benutzer", "No database drivers (sqlite, mysql, or postgresql) installed." : "Keine Datenbanktreiber (SQLite, MYSQL oder PostgreSQL) installiert.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows-Plattform wird nicht unterstützt", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Der Betrieb eines Nextcloud Servers unter Microsoft Windows ist nicht unterstützt. Bitte ziehen Sie in Betracht einen Linux Server im Rahmen einer virtuellen Maschine aufzusetzen, wenn Sie keine Möglichkeit haben, den Server selbst zu migrieren.", "Cannot write into \"config\" directory" : "Das Schreiben in das „config“-Verzeichnis ist nicht möglich", "Cannot write into \"apps\" directory" : "Das Schreiben in das „apps“-Verzeichnis ist nicht möglich", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Dies kann normalerweise behoben werden, %sindem dem Webserver Schreibzugriff auf das App-Verzeichnis gegeben wird%s oder der App Store in der Konfigurationsdatei deaktiviert wird.", @@ -175,8 +219,11 @@ OC.L10N.register( "Storage unauthorized. %s" : "Speicher ungültig. %s", "Storage incomplete configuration. %s" : "Speicher-Konfiguration unvollständig. %s", "Storage connection error. %s" : "Speicher-Verbindungsfehler. %s", - "Storage not available" : "Speicher nicht verfügbar", + "Storage is temporarily not available" : "Speicher ist vorübergehend nicht verfügbar", "Storage connection timeout. %s" : "Speicher-Verbindungszeitüberschreitung. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows-Plattform wird nicht unterstützt", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Der Betrieb eines Nextcloud Servers unter Microsoft Windows ist nicht unterstützt. Bitte ziehen Sie in Betracht einen Linux Server im Rahmen einer virtuellen Maschine aufzusetzen, wenn Sie keine Möglichkeit haben, den Server selbst zu migrieren.", + "Storage not available" : "Speicher nicht verfügbar", "ownCloud %s or higher is required." : "ownCloud %s oder neuer erforderlich", "ownCloud %s or lower is required." : "ownCloud %s oder älter erforderlich", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "Die App \"%s\" kann nicht installiert werden, da sie mit dieser Version von Nextcloud nicht kompatibel ist.", diff --git a/lib/l10n/de_DE.json b/lib/l10n/de_DE.json index b6ead19e435..685123aac5f 100644 --- a/lib/l10n/de_DE.json +++ b/lib/l10n/de_DE.json @@ -18,6 +18,7 @@ "Server version %s or lower is required." : "Server Version %s oder niedriger wird benötigt.", "Unknown filetype" : "Unbekannter Dateityp", "Invalid image" : "Ungültiges Bild", + "Avatar image is not square" : "Avatar-Bild ist nicht quadratisch", "today" : "Heute", "yesterday" : "Gestern", "_%n day ago_::_%n days ago_" : ["Vor %n Tag","Vor %n Tagen"], @@ -113,6 +114,51 @@ "Expiration date is in the past" : "Das Ablaufdatum liegt in der Vergangenheit.", "Cannot set expiration date more than %s days in the future" : "Ablaufdatum kann nicht mehr als %s Tage in der Zukunft liegen", "Could not find category \"%s\"" : "Die Kategorie „%s“ konnte nicht gefunden werden", + "Sunday" : "Sonntag", + "Monday" : "Montag", + "Tuesday" : "Dienstag", + "Wednesday" : "Mittwoch", + "Thursday" : "Donnerstag", + "Friday" : "Freitag", + "Saturday" : "Samstag", + "Sun." : "Son.", + "Mon." : "Mon.", + "Tue." : "Die.", + "Wed." : "Mit.", + "Thu." : "Don.", + "Fri." : "Fre.", + "Sat." : "Sam.", + "Su" : "So", + "Mo" : "Mo", + "Tu" : "Di", + "We" : "Mi", + "Th" : "Do", + "Fr" : "Fr", + "Sa" : "Sa", + "January" : "Januar", + "February" : "Februar", + "March" : "März", + "April" : "April", + "May" : "Mai", + "June" : "Juni", + "July" : "Juli", + "August" : "August", + "September" : "September", + "October" : "Oktober", + "November" : "November", + "December" : "Dezember", + "Jan." : "Jan.", + "Feb." : "Feb.", + "Mar." : "Mär.", + "Apr." : "Apr.", + "May." : "Mai", + "Jun." : "Jun.", + "Jul." : "Jul.", + "Aug." : "Aug.", + "Sep." : "Sep.", + "Oct." : "Okt.", + "Nov." : "Nov.", + "Dec." : "Dez.", "Apps" : "Apps", "Only the following characters are allowed in a username: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"" : "Nur die folgenden Zeichen sind im Benutzernamen erlaubt: „a-z“, „A-Z“, „0-9“, and „_.@-'“", "A valid username must be provided" : "Es muss ein gültiger Benutzername angegeben werden", @@ -128,9 +174,9 @@ "Recommended" : "Empfohlen", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Die Anwendung \"%s\" kann nicht installiert werden, weil die Anwendungsinfodatei nicht gelesen werden kann.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Die App \"%s\" kann nicht installiert werden, da sie mit dieser Serverversion nicht kompatibel ist.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Die App „%s“ kann nicht installiert werden, da die folgenden Abhängigkeiten nicht erfüllt sind: %s", "No app name specified" : "Es wurde kein App-Name angegeben", "App '%s' could not be installed!" : "'%s' - App konnte nicht installiert werden!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Die App „%s“ kann nicht installiert werden, da die folgenden Abhängigkeiten nicht erfüllt sind: %s", "a safe home for all your data" : "ein sicherer Ort für all Ihre Daten", "File is currently busy, please try again later" : "Die Datei ist zur Zeit in Benutzung, bitte versuchen Sie es später noch einmal", "Can't read file" : "Datei kann nicht gelesen werden", @@ -139,8 +185,6 @@ "Token expired. Please reload page." : "Token abgelaufen. Bitte laden Sie die Seite neu.", "Unknown user" : "Unbekannter Benutzer", "No database drivers (sqlite, mysql, or postgresql) installed." : "Keine Datenbanktreiber (SQLite, MYSQL oder PostgreSQL) installiert.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows-Plattform wird nicht unterstützt", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Der Betrieb eines Nextcloud Servers unter Microsoft Windows ist nicht unterstützt. Bitte ziehen Sie in Betracht einen Linux Server im Rahmen einer virtuellen Maschine aufzusetzen, wenn Sie keine Möglichkeit haben, den Server selbst zu migrieren.", "Cannot write into \"config\" directory" : "Das Schreiben in das „config“-Verzeichnis ist nicht möglich", "Cannot write into \"apps\" directory" : "Das Schreiben in das „apps“-Verzeichnis ist nicht möglich", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Dies kann normalerweise behoben werden, %sindem dem Webserver Schreibzugriff auf das App-Verzeichnis gegeben wird%s oder der App Store in der Konfigurationsdatei deaktiviert wird.", @@ -173,8 +217,11 @@ "Storage unauthorized. %s" : "Speicher ungültig. %s", "Storage incomplete configuration. %s" : "Speicher-Konfiguration unvollständig. %s", "Storage connection error. %s" : "Speicher-Verbindungsfehler. %s", - "Storage not available" : "Speicher nicht verfügbar", + "Storage is temporarily not available" : "Speicher ist vorübergehend nicht verfügbar", "Storage connection timeout. %s" : "Speicher-Verbindungszeitüberschreitung. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows-Plattform wird nicht unterstützt", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Der Betrieb eines Nextcloud Servers unter Microsoft Windows ist nicht unterstützt. Bitte ziehen Sie in Betracht einen Linux Server im Rahmen einer virtuellen Maschine aufzusetzen, wenn Sie keine Möglichkeit haben, den Server selbst zu migrieren.", + "Storage not available" : "Speicher nicht verfügbar", "ownCloud %s or higher is required." : "ownCloud %s oder neuer erforderlich", "ownCloud %s or lower is required." : "ownCloud %s oder älter erforderlich", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "Die App \"%s\" kann nicht installiert werden, da sie mit dieser Version von Nextcloud nicht kompatibel ist.", diff --git a/lib/l10n/el.js b/lib/l10n/el.js index fe3634411b6..f64190a303f 100644 --- a/lib/l10n/el.js +++ b/lib/l10n/el.js @@ -105,8 +105,8 @@ OC.L10N.register( "Users" : "Χρήστες", "Admin" : "Διαχείριση", "Recommended" : "Προτείνεται", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Αυτή η εφαρμογή %s δεν μπορεί να εγκατασταθεί διότι δεν πληρούνται οι ακόλουθες εξαρτήσεις: %s", "No app name specified" : "Δεν προδιορίστηκε όνομα εφαρμογής", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Αυτή η εφαρμογή %s δεν μπορεί να εγκατασταθεί διότι δεν πληρούνται οι ακόλουθες εξαρτήσεις: %s", "File is currently busy, please try again later" : "Το αρχείο χρησιμοποιείται αυτή τη στιγμή, παρακαλώ προσπαθήστε αργότερα", "Can't read file" : "Αδυναμία ανάγνωσης αρχείου", "Application is not enabled" : "Δεν ενεργοποιήθηκε η εφαρμογή", @@ -114,7 +114,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Το αναγνωριστικό έληξε. Παρακαλώ φορτώστε ξανά την σελίδα.", "Unknown user" : "Άγνωστος χρήστης", "No database drivers (sqlite, mysql, or postgresql) installed." : "Δεν βρέθηκαν εγκατεστημένοι οδηγοί βάσεων δεδομένων (sqlite, mysql, or postgresql).", - "Microsoft Windows Platform is not supported" : "Η Πλατφόρμα Microsoft Windows δεν υποστηρίζεται", "Cannot write into \"config\" directory" : "Αδυναμία εγγραφής στον κατάλογο \"config\"", "Cannot write into \"apps\" directory" : "Αδυναμία εγγραφής στον κατάλογο \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Αυτό μπορεί συνήθως να διορθωθεί %sδίνοντας διακαιώματα εγγραφής για τον κατάλογο εφαρμογών στο διακομιστή δικτύου%s ή απενεργοποιώντας το κέντρο εφαρμογών στο αρχείο config.", @@ -142,6 +141,7 @@ OC.L10N.register( "Please check that the data directory contains a file \".ocdata\" in its root." : "Παρακαλώ ελέγξτε ότι ο κατάλογος δεδομένων περιέχει ένα αρχείο \".ocdata\" στη βάση του.", "Could not obtain lock type %d on \"%s\"." : "Αδυναμία ανάκτησης τύπου κλειδιού %d στο \"%s\".", "Storage not available" : "Μη διαθέσιμος αποθηκευτικός χώρος", + "Microsoft Windows Platform is not supported" : "Η Πλατφόρμα Microsoft Windows δεν υποστηρίζεται", "ownCloud %s or higher is required." : "Απαιτείται έκδοση nextcloud %s ή ψηλότερη." }, "nplurals=2; plural=(n != 1);"); diff --git a/lib/l10n/el.json b/lib/l10n/el.json index 1fb35d1ef05..a5a8be4c2de 100644 --- a/lib/l10n/el.json +++ b/lib/l10n/el.json @@ -103,8 +103,8 @@ "Users" : "Χρήστες", "Admin" : "Διαχείριση", "Recommended" : "Προτείνεται", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Αυτή η εφαρμογή %s δεν μπορεί να εγκατασταθεί διότι δεν πληρούνται οι ακόλουθες εξαρτήσεις: %s", "No app name specified" : "Δεν προδιορίστηκε όνομα εφαρμογής", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Αυτή η εφαρμογή %s δεν μπορεί να εγκατασταθεί διότι δεν πληρούνται οι ακόλουθες εξαρτήσεις: %s", "File is currently busy, please try again later" : "Το αρχείο χρησιμοποιείται αυτή τη στιγμή, παρακαλώ προσπαθήστε αργότερα", "Can't read file" : "Αδυναμία ανάγνωσης αρχείου", "Application is not enabled" : "Δεν ενεργοποιήθηκε η εφαρμογή", @@ -112,7 +112,6 @@ "Token expired. Please reload page." : "Το αναγνωριστικό έληξε. Παρακαλώ φορτώστε ξανά την σελίδα.", "Unknown user" : "Άγνωστος χρήστης", "No database drivers (sqlite, mysql, or postgresql) installed." : "Δεν βρέθηκαν εγκατεστημένοι οδηγοί βάσεων δεδομένων (sqlite, mysql, or postgresql).", - "Microsoft Windows Platform is not supported" : "Η Πλατφόρμα Microsoft Windows δεν υποστηρίζεται", "Cannot write into \"config\" directory" : "Αδυναμία εγγραφής στον κατάλογο \"config\"", "Cannot write into \"apps\" directory" : "Αδυναμία εγγραφής στον κατάλογο \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Αυτό μπορεί συνήθως να διορθωθεί %sδίνοντας διακαιώματα εγγραφής για τον κατάλογο εφαρμογών στο διακομιστή δικτύου%s ή απενεργοποιώντας το κέντρο εφαρμογών στο αρχείο config.", @@ -140,6 +139,7 @@ "Please check that the data directory contains a file \".ocdata\" in its root." : "Παρακαλώ ελέγξτε ότι ο κατάλογος δεδομένων περιέχει ένα αρχείο \".ocdata\" στη βάση του.", "Could not obtain lock type %d on \"%s\"." : "Αδυναμία ανάκτησης τύπου κλειδιού %d στο \"%s\".", "Storage not available" : "Μη διαθέσιμος αποθηκευτικός χώρος", + "Microsoft Windows Platform is not supported" : "Η Πλατφόρμα Microsoft Windows δεν υποστηρίζεται", "ownCloud %s or higher is required." : "Απαιτείται έκδοση nextcloud %s ή ψηλότερη." },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/lib/l10n/en_GB.js b/lib/l10n/en_GB.js index 24b4cd78558..087f2152569 100644 --- a/lib/l10n/en_GB.js +++ b/lib/l10n/en_GB.js @@ -121,8 +121,8 @@ OC.L10N.register( "Recommended" : "Recommended", "App \"%s\" cannot be installed because appinfo file cannot be read." : "App \"%s\" cannot be installed because appinfo file cannot be read.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "App \"%s\" cannot be installed. It is not compatible with this version of the server.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s", "No app name specified" : "No app name specified", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s", "a safe home for all your data" : "a safe home for all your data", "File is currently busy, please try again later" : "File is currently busy, please try again later", "Can't read file" : "Can't read file", @@ -131,8 +131,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Token expired. Please reload page.", "Unknown user" : "Unknown user", "No database drivers (sqlite, mysql, or postgresql) installed." : "No database drivers (sqlite, mysql, or postgresql) installed.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform is not supported", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Running Nextcloud Server on the Microsoft Windows platform is not supported. If you have no option for migrating the server itself, we suggest you use a Linux server in a virtual machine.", "Cannot write into \"config\" directory" : "Cannot write into \"config\" directory", "Cannot write into \"apps\" directory" : "Cannot write into \"apps\" directory", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file.", @@ -166,6 +164,8 @@ OC.L10N.register( "Storage incomplete configuration. %s" : "Storage incomplete configuration. %s", "Storage connection error. %s" : "Storage connection error. %s", "Storage not available" : "Storage not available", - "Storage connection timeout. %s" : "Storage connection timeout. %s" + "Storage connection timeout. %s" : "Storage connection timeout. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform is not supported", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Running Nextcloud Server on the Microsoft Windows platform is not supported. If you have no option for migrating the server itself, we suggest you use a Linux server in a virtual machine." }, "nplurals=2; plural=(n != 1);"); diff --git a/lib/l10n/en_GB.json b/lib/l10n/en_GB.json index 8ed16e7d074..152d401c05e 100644 --- a/lib/l10n/en_GB.json +++ b/lib/l10n/en_GB.json @@ -119,8 +119,8 @@ "Recommended" : "Recommended", "App \"%s\" cannot be installed because appinfo file cannot be read." : "App \"%s\" cannot be installed because appinfo file cannot be read.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "App \"%s\" cannot be installed. It is not compatible with this version of the server.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s", "No app name specified" : "No app name specified", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s", "a safe home for all your data" : "a safe home for all your data", "File is currently busy, please try again later" : "File is currently busy, please try again later", "Can't read file" : "Can't read file", @@ -129,8 +129,6 @@ "Token expired. Please reload page." : "Token expired. Please reload page.", "Unknown user" : "Unknown user", "No database drivers (sqlite, mysql, or postgresql) installed." : "No database drivers (sqlite, mysql, or postgresql) installed.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform is not supported", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Running Nextcloud Server on the Microsoft Windows platform is not supported. If you have no option for migrating the server itself, we suggest you use a Linux server in a virtual machine.", "Cannot write into \"config\" directory" : "Cannot write into \"config\" directory", "Cannot write into \"apps\" directory" : "Cannot write into \"apps\" directory", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file.", @@ -164,6 +162,8 @@ "Storage incomplete configuration. %s" : "Storage incomplete configuration. %s", "Storage connection error. %s" : "Storage connection error. %s", "Storage not available" : "Storage not available", - "Storage connection timeout. %s" : "Storage connection timeout. %s" + "Storage connection timeout. %s" : "Storage connection timeout. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform is not supported", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Running Nextcloud Server on the Microsoft Windows platform is not supported. If you have no option for migrating the server itself, we suggest you use a Linux server in a virtual machine." },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/lib/l10n/es.js b/lib/l10n/es.js index a031e5f2e94..a5594e487c5 100644 --- a/lib/l10n/es.js +++ b/lib/l10n/es.js @@ -130,9 +130,9 @@ OC.L10N.register( "Recommended" : "Recomendado", "App \"%s\" cannot be installed because appinfo file cannot be read." : "La app \"%s\" no puede ser instalada debido a que no se puede leer la información de la app.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "La aplicación \"%s\" no se puede instalar porque no es compatible con esta versión del servidor.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "La app \"%s\" no puede instalarse porque las siguientes dependencias no están cumplimentadas: %s", "No app name specified" : "No se ha especificado nombre de la aplicación", "App '%s' could not be installed!" : "¡No se pudo instalar la app '%s'!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "La app \"%s\" no puede instalarse porque las siguientes dependencias no están cumplimentadas: %s", "a safe home for all your data" : "un hogar seguro para todos tus datos", "File is currently busy, please try again later" : "Archivo se encuentra actualmente ocupado, por favor inténtelo de nuevo más tarde", "Can't read file" : "No se puede leer archivo", @@ -141,8 +141,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Token expirado. Por favor, recarge la página.", "Unknown user" : "Usuario desconocido", "No database drivers (sqlite, mysql, or postgresql) installed." : "No están instalados los drivers de BBDD (sqlite, mysql, o postgresql)", - "Microsoft Windows Platform is not supported" : "La plataforma Microsoft Windows no está soportada", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Ejecutar el servidor Nextcloud en la plataforma MIcrosoft Windows no está soportado. Sugerimos usar un servidor Linux en una máquina virtual si no existe la opción de migrar el propio servidor.", "Cannot write into \"config\" directory" : "No se puede escribir el el directorio de configuración", "Cannot write into \"apps\" directory" : "No se puede escribir en el directorio de \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Esto puede solucionarse fácilmente %sdándole permisos de escritura al servidor en el directorio%s de apps o deshabilitando la tienda de apps en el archivo de configuración.", @@ -175,8 +173,10 @@ OC.L10N.register( "Storage unauthorized. %s" : "Almacenamiento no autorizado. %s", "Storage incomplete configuration. %s" : "Configuración de almacenamiento incompleta. %s", "Storage connection error. %s" : "Error de conexión de almacenamiento. %s", - "Storage not available" : "Almacenamiento no disponible", "Storage connection timeout. %s" : "Tiempo de conexión de almacenamiento agotado. %s", + "Microsoft Windows Platform is not supported" : "La plataforma Microsoft Windows no está soportada", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Ejecutar el servidor Nextcloud en la plataforma MIcrosoft Windows no está soportado. Sugerimos usar un servidor Linux en una máquina virtual si no existe la opción de migrar el propio servidor.", + "Storage not available" : "Almacenamiento no disponible", "ownCloud %s or higher is required." : "Se necesita la versión %s o superior.", "ownCloud %s or lower is required." : "Se necesita la versión %s o inferior.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "La aplicación \"%s\" no se puede instalar porque no es compatible con esta versión de Nextcloud.", diff --git a/lib/l10n/es.json b/lib/l10n/es.json index 8088ee05358..a6842f83c5a 100644 --- a/lib/l10n/es.json +++ b/lib/l10n/es.json @@ -128,9 +128,9 @@ "Recommended" : "Recomendado", "App \"%s\" cannot be installed because appinfo file cannot be read." : "La app \"%s\" no puede ser instalada debido a que no se puede leer la información de la app.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "La aplicación \"%s\" no se puede instalar porque no es compatible con esta versión del servidor.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "La app \"%s\" no puede instalarse porque las siguientes dependencias no están cumplimentadas: %s", "No app name specified" : "No se ha especificado nombre de la aplicación", "App '%s' could not be installed!" : "¡No se pudo instalar la app '%s'!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "La app \"%s\" no puede instalarse porque las siguientes dependencias no están cumplimentadas: %s", "a safe home for all your data" : "un hogar seguro para todos tus datos", "File is currently busy, please try again later" : "Archivo se encuentra actualmente ocupado, por favor inténtelo de nuevo más tarde", "Can't read file" : "No se puede leer archivo", @@ -139,8 +139,6 @@ "Token expired. Please reload page." : "Token expirado. Por favor, recarge la página.", "Unknown user" : "Usuario desconocido", "No database drivers (sqlite, mysql, or postgresql) installed." : "No están instalados los drivers de BBDD (sqlite, mysql, o postgresql)", - "Microsoft Windows Platform is not supported" : "La plataforma Microsoft Windows no está soportada", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Ejecutar el servidor Nextcloud en la plataforma MIcrosoft Windows no está soportado. Sugerimos usar un servidor Linux en una máquina virtual si no existe la opción de migrar el propio servidor.", "Cannot write into \"config\" directory" : "No se puede escribir el el directorio de configuración", "Cannot write into \"apps\" directory" : "No se puede escribir en el directorio de \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Esto puede solucionarse fácilmente %sdándole permisos de escritura al servidor en el directorio%s de apps o deshabilitando la tienda de apps en el archivo de configuración.", @@ -173,8 +171,10 @@ "Storage unauthorized. %s" : "Almacenamiento no autorizado. %s", "Storage incomplete configuration. %s" : "Configuración de almacenamiento incompleta. %s", "Storage connection error. %s" : "Error de conexión de almacenamiento. %s", - "Storage not available" : "Almacenamiento no disponible", "Storage connection timeout. %s" : "Tiempo de conexión de almacenamiento agotado. %s", + "Microsoft Windows Platform is not supported" : "La plataforma Microsoft Windows no está soportada", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Ejecutar el servidor Nextcloud en la plataforma MIcrosoft Windows no está soportado. Sugerimos usar un servidor Linux en una máquina virtual si no existe la opción de migrar el propio servidor.", + "Storage not available" : "Almacenamiento no disponible", "ownCloud %s or higher is required." : "Se necesita la versión %s o superior.", "ownCloud %s or lower is required." : "Se necesita la versión %s o inferior.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "La aplicación \"%s\" no se puede instalar porque no es compatible con esta versión de Nextcloud.", diff --git a/lib/l10n/fi_FI.js b/lib/l10n/fi_FI.js index 9ef48947914..7e91bf61f87 100644 --- a/lib/l10n/fi_FI.js +++ b/lib/l10n/fi_FI.js @@ -118,8 +118,8 @@ OC.L10N.register( "Admin" : "Ylläpito", "Recommended" : "Suositeltu", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Sovellusta \"%s\" ei voi asentaa, koska appinfo-tiedostoa ei voi loi lukea.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Sovelluksen \"%s\" asennus ei onnistu, koska seuraavia riippuvuuksia ei ole täytetty: %s", "No app name specified" : "Sovelluksen nimeä ei määritelty", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Sovelluksen \"%s\" asennus ei onnistu, koska seuraavia riippuvuuksia ei ole täytetty: %s", "File is currently busy, please try again later" : "Tiedosto on parhaillaan käytössä, yritä myöhemmin uudelleen", "Can't read file" : "Tiedostoa ei voi lukea", "Application is not enabled" : "Sovellusta ei ole otettu käyttöön", @@ -127,7 +127,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Valtuutus vanheni. Lataa sivu uudelleen.", "Unknown user" : "Tuntematon käyttäjä", "No database drivers (sqlite, mysql, or postgresql) installed." : "Tietokanta-ajureita (sqlite, mysql tai postgresql) ei ole asennettu.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows -alusta ei ole tuettu", "Cannot write into \"config\" directory" : "Hakemistoon \"config\" kirjoittaminen ei onnistu", "Cannot write into \"apps\" directory" : "Hakemistoon \"apps\" kirjoittaminen ei onnistu", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Tämä on yleensä mahdollista korjata %santamalla HTTP-palvelimelle kirjoitusoikeus sovellushakemistoon%s tai poistamalla sovelluskauppa pois käytöstä asetustiedostoa käyttäen.", @@ -156,6 +155,7 @@ OC.L10N.register( "Storage incomplete configuration. %s" : "Tallennustilan puutteellinen määritys. %s", "Storage connection error. %s" : "Tallennustilan yhteysvirhe. %s", "Storage not available" : "Tallennustila ei ole käytettävissä", - "Storage connection timeout. %s" : "Tallennustilan yhteyden aikakatkaisu. %s" + "Storage connection timeout. %s" : "Tallennustilan yhteyden aikakatkaisu. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows -alusta ei ole tuettu" }, "nplurals=2; plural=(n != 1);"); diff --git a/lib/l10n/fi_FI.json b/lib/l10n/fi_FI.json index 3ec8cc30043..d59c61610eb 100644 --- a/lib/l10n/fi_FI.json +++ b/lib/l10n/fi_FI.json @@ -116,8 +116,8 @@ "Admin" : "Ylläpito", "Recommended" : "Suositeltu", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Sovellusta \"%s\" ei voi asentaa, koska appinfo-tiedostoa ei voi loi lukea.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Sovelluksen \"%s\" asennus ei onnistu, koska seuraavia riippuvuuksia ei ole täytetty: %s", "No app name specified" : "Sovelluksen nimeä ei määritelty", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Sovelluksen \"%s\" asennus ei onnistu, koska seuraavia riippuvuuksia ei ole täytetty: %s", "File is currently busy, please try again later" : "Tiedosto on parhaillaan käytössä, yritä myöhemmin uudelleen", "Can't read file" : "Tiedostoa ei voi lukea", "Application is not enabled" : "Sovellusta ei ole otettu käyttöön", @@ -125,7 +125,6 @@ "Token expired. Please reload page." : "Valtuutus vanheni. Lataa sivu uudelleen.", "Unknown user" : "Tuntematon käyttäjä", "No database drivers (sqlite, mysql, or postgresql) installed." : "Tietokanta-ajureita (sqlite, mysql tai postgresql) ei ole asennettu.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows -alusta ei ole tuettu", "Cannot write into \"config\" directory" : "Hakemistoon \"config\" kirjoittaminen ei onnistu", "Cannot write into \"apps\" directory" : "Hakemistoon \"apps\" kirjoittaminen ei onnistu", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Tämä on yleensä mahdollista korjata %santamalla HTTP-palvelimelle kirjoitusoikeus sovellushakemistoon%s tai poistamalla sovelluskauppa pois käytöstä asetustiedostoa käyttäen.", @@ -154,6 +153,7 @@ "Storage incomplete configuration. %s" : "Tallennustilan puutteellinen määritys. %s", "Storage connection error. %s" : "Tallennustilan yhteysvirhe. %s", "Storage not available" : "Tallennustila ei ole käytettävissä", - "Storage connection timeout. %s" : "Tallennustilan yhteyden aikakatkaisu. %s" + "Storage connection timeout. %s" : "Tallennustilan yhteyden aikakatkaisu. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows -alusta ei ole tuettu" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/lib/l10n/fr.js b/lib/l10n/fr.js index 6e9dd08a049..5cbd572fb4c 100644 --- a/lib/l10n/fr.js +++ b/lib/l10n/fr.js @@ -130,9 +130,9 @@ OC.L10N.register( "Recommended" : "Recommandée", "App \"%s\" cannot be installed because appinfo file cannot be read." : "L'application \"%s\" ne peut pas être installée car le fichier appinfo ne peut pas être lu.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "L'application \"%s\" ne peut être installée car elle n'est pas compatible avec cette version du serveur", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "L'application \"%s\" ne peut pas être installée à cause des dépendances suivantes non satisfaites : %s", "No app name specified" : "Aucun nom d'application spécifié", "App '%s' could not be installed!" : "L'application \"%s\" ne peut pas être installée !", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "L'application \"%s\" ne peut pas être installée à cause des dépendances suivantes non satisfaites : %s", "a safe home for all your data" : "un endroit sûr pour toutes vos données", "File is currently busy, please try again later" : "Le fichier est actuellement utilisé, veuillez réessayer plus tard", "Can't read file" : "Impossible de lire le fichier", @@ -141,8 +141,6 @@ OC.L10N.register( "Token expired. Please reload page." : "La session a expiré. Veuillez recharger la page.", "Unknown user" : "Utilisateur inconnu", "No database drivers (sqlite, mysql, or postgresql) installed." : "Aucun pilote de base de données n’est installé (sqlite, mysql ou postgresql).", - "Microsoft Windows Platform is not supported" : "La plate-forme Microsoft Windows n'est pas prise en charge.", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "L'exécution de Nextcloud Server sur une plateforme Microsoft Windows n'est pas supportée. Nous suggérons d'utilier un serveur Linux dans une machine virtuelle si vous n'avez pas la possibilité de migrer le serveur lui-même.", "Cannot write into \"config\" directory" : "Impossible d’écrire dans le répertoire \"config\"", "Cannot write into \"apps\" directory" : "Impossible d’écrire dans le répertoire \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Ce problème est généralement résolu %sen donnant au serveur web un accès en écriture au répertoire apps%s ou en désactivant l'appstore dans le fichier de configuration.", @@ -175,8 +173,10 @@ OC.L10N.register( "Storage unauthorized. %s" : "Espace de stockage non autorisé. %s", "Storage incomplete configuration. %s" : "Configuration de l'espace de stockage incomplète. %s", "Storage connection error. %s" : "Erreur de connexion à l'espace stockage. %s", - "Storage not available" : "Support de stockage non disponible", "Storage connection timeout. %s" : "Le délai d'attente pour la connexion à l'espace de stockage a été dépassé. %s", + "Microsoft Windows Platform is not supported" : "La plate-forme Microsoft Windows n'est pas prise en charge.", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "L'exécution de Nextcloud Server sur une plateforme Microsoft Windows n'est pas supportée. Nous suggérons d'utilier un serveur Linux dans une machine virtuelle si vous n'avez pas la possibilité de migrer le serveur lui-même.", + "Storage not available" : "Support de stockage non disponible", "ownCloud %s or higher is required." : "Nextcloud %s ou supérieur est requis.", "ownCloud %s or lower is required." : "Nextcloud %s ou inférieur est requis.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "L'application \"%s\" ne peut être installée car elle n'est pas compatible avec cette version de Nextcloud.", diff --git a/lib/l10n/fr.json b/lib/l10n/fr.json index 430317014a6..e34f7d5b32e 100644 --- a/lib/l10n/fr.json +++ b/lib/l10n/fr.json @@ -128,9 +128,9 @@ "Recommended" : "Recommandée", "App \"%s\" cannot be installed because appinfo file cannot be read." : "L'application \"%s\" ne peut pas être installée car le fichier appinfo ne peut pas être lu.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "L'application \"%s\" ne peut être installée car elle n'est pas compatible avec cette version du serveur", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "L'application \"%s\" ne peut pas être installée à cause des dépendances suivantes non satisfaites : %s", "No app name specified" : "Aucun nom d'application spécifié", "App '%s' could not be installed!" : "L'application \"%s\" ne peut pas être installée !", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "L'application \"%s\" ne peut pas être installée à cause des dépendances suivantes non satisfaites : %s", "a safe home for all your data" : "un endroit sûr pour toutes vos données", "File is currently busy, please try again later" : "Le fichier est actuellement utilisé, veuillez réessayer plus tard", "Can't read file" : "Impossible de lire le fichier", @@ -139,8 +139,6 @@ "Token expired. Please reload page." : "La session a expiré. Veuillez recharger la page.", "Unknown user" : "Utilisateur inconnu", "No database drivers (sqlite, mysql, or postgresql) installed." : "Aucun pilote de base de données n’est installé (sqlite, mysql ou postgresql).", - "Microsoft Windows Platform is not supported" : "La plate-forme Microsoft Windows n'est pas prise en charge.", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "L'exécution de Nextcloud Server sur une plateforme Microsoft Windows n'est pas supportée. Nous suggérons d'utilier un serveur Linux dans une machine virtuelle si vous n'avez pas la possibilité de migrer le serveur lui-même.", "Cannot write into \"config\" directory" : "Impossible d’écrire dans le répertoire \"config\"", "Cannot write into \"apps\" directory" : "Impossible d’écrire dans le répertoire \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Ce problème est généralement résolu %sen donnant au serveur web un accès en écriture au répertoire apps%s ou en désactivant l'appstore dans le fichier de configuration.", @@ -173,8 +171,10 @@ "Storage unauthorized. %s" : "Espace de stockage non autorisé. %s", "Storage incomplete configuration. %s" : "Configuration de l'espace de stockage incomplète. %s", "Storage connection error. %s" : "Erreur de connexion à l'espace stockage. %s", - "Storage not available" : "Support de stockage non disponible", "Storage connection timeout. %s" : "Le délai d'attente pour la connexion à l'espace de stockage a été dépassé. %s", + "Microsoft Windows Platform is not supported" : "La plate-forme Microsoft Windows n'est pas prise en charge.", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "L'exécution de Nextcloud Server sur une plateforme Microsoft Windows n'est pas supportée. Nous suggérons d'utilier un serveur Linux dans une machine virtuelle si vous n'avez pas la possibilité de migrer le serveur lui-même.", + "Storage not available" : "Support de stockage non disponible", "ownCloud %s or higher is required." : "Nextcloud %s ou supérieur est requis.", "ownCloud %s or lower is required." : "Nextcloud %s ou inférieur est requis.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "L'application \"%s\" ne peut être installée car elle n'est pas compatible avec cette version de Nextcloud.", diff --git a/lib/l10n/he.js b/lib/l10n/he.js index e9b1334777a..45646657227 100644 --- a/lib/l10n/he.js +++ b/lib/l10n/he.js @@ -114,8 +114,8 @@ OC.L10N.register( "Admin" : "מנהל", "Recommended" : "מומלץ", "App \"%s\" cannot be installed because appinfo file cannot be read." : "יישום \"%s\" לא ניתן להתקנה כיוון שקובץ appinfo לא ניתן לקריאה.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "היישום \"%s\" לא ניתן להתקנה כיוון שיחסי התלות הבאים אינם מתקיימים: %s", "No app name specified" : "לא הוגדר שם יישום", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "היישום \"%s\" לא ניתן להתקנה כיוון שיחסי התלות הבאים אינם מתקיימים: %s", "File is currently busy, please try again later" : "הקובץ בשימוש כרגע, יש לנסות שוב מאוחר יותר", "Can't read file" : "לא ניתן לקרוא קובץ", "Application is not enabled" : "יישומים אינם מופעלים", @@ -123,7 +123,6 @@ OC.L10N.register( "Token expired. Please reload page." : "פג תוקף. נא לטעון שוב את הדף.", "Unknown user" : "משתמש לא ידוע", "No database drivers (sqlite, mysql, or postgresql) installed." : "לא מותקנים דרייברים למסד הנתונים (sqlite, mysql, או postgresql).", - "Microsoft Windows Platform is not supported" : "מערכת הפעלה חלונות אינה נתמכת", "Cannot write into \"config\" directory" : "לא ניתן לכתוב לתיקיית \"config\"!", "Cannot write into \"apps\" directory" : "לא ניתן לכתוב לתיקיית \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "בדרך כלל ניתן להסתדר על ידי %s מתן הרשאות כתיבה בשרת האינטרנט לתיקיית היישומים %s או נטרול חנות היישומים בקובץ ה- config.", @@ -156,6 +155,7 @@ OC.L10N.register( "Storage incomplete configuration. %s" : "תצורה לא מושלמת של האחסון. %s", "Storage connection error. %s" : "שגיאת חיבור אחסון. %s", "Storage not available" : "אחסון לא זמין", - "Storage connection timeout. %s" : "פסק זמן חיבור אחסון. %s" + "Storage connection timeout. %s" : "פסק זמן חיבור אחסון. %s", + "Microsoft Windows Platform is not supported" : "מערכת הפעלה חלונות אינה נתמכת" }, "nplurals=2; plural=(n != 1);"); diff --git a/lib/l10n/he.json b/lib/l10n/he.json index cf607ec787d..016496d1146 100644 --- a/lib/l10n/he.json +++ b/lib/l10n/he.json @@ -112,8 +112,8 @@ "Admin" : "מנהל", "Recommended" : "מומלץ", "App \"%s\" cannot be installed because appinfo file cannot be read." : "יישום \"%s\" לא ניתן להתקנה כיוון שקובץ appinfo לא ניתן לקריאה.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "היישום \"%s\" לא ניתן להתקנה כיוון שיחסי התלות הבאים אינם מתקיימים: %s", "No app name specified" : "לא הוגדר שם יישום", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "היישום \"%s\" לא ניתן להתקנה כיוון שיחסי התלות הבאים אינם מתקיימים: %s", "File is currently busy, please try again later" : "הקובץ בשימוש כרגע, יש לנסות שוב מאוחר יותר", "Can't read file" : "לא ניתן לקרוא קובץ", "Application is not enabled" : "יישומים אינם מופעלים", @@ -121,7 +121,6 @@ "Token expired. Please reload page." : "פג תוקף. נא לטעון שוב את הדף.", "Unknown user" : "משתמש לא ידוע", "No database drivers (sqlite, mysql, or postgresql) installed." : "לא מותקנים דרייברים למסד הנתונים (sqlite, mysql, או postgresql).", - "Microsoft Windows Platform is not supported" : "מערכת הפעלה חלונות אינה נתמכת", "Cannot write into \"config\" directory" : "לא ניתן לכתוב לתיקיית \"config\"!", "Cannot write into \"apps\" directory" : "לא ניתן לכתוב לתיקיית \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "בדרך כלל ניתן להסתדר על ידי %s מתן הרשאות כתיבה בשרת האינטרנט לתיקיית היישומים %s או נטרול חנות היישומים בקובץ ה- config.", @@ -154,6 +153,7 @@ "Storage incomplete configuration. %s" : "תצורה לא מושלמת של האחסון. %s", "Storage connection error. %s" : "שגיאת חיבור אחסון. %s", "Storage not available" : "אחסון לא זמין", - "Storage connection timeout. %s" : "פסק זמן חיבור אחסון. %s" + "Storage connection timeout. %s" : "פסק זמן חיבור אחסון. %s", + "Microsoft Windows Platform is not supported" : "מערכת הפעלה חלונות אינה נתמכת" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/lib/l10n/hu_HU.js b/lib/l10n/hu_HU.js index e3ef1fc562a..f43bf62ce4f 100644 --- a/lib/l10n/hu_HU.js +++ b/lib/l10n/hu_HU.js @@ -20,6 +20,7 @@ OC.L10N.register( "Server version %s or lower is required." : "%s vagy régebbi szerver verzió szükséges.", "Unknown filetype" : "Ismeretlen fájl típus", "Invalid image" : "Hibás kép", + "Avatar image is not square" : "Az avatár kép nem négyzetes.", "today" : "ma", "yesterday" : "tegnap", "_%n day ago_::_%n days ago_" : ["%n napja","%n napja"], @@ -130,9 +131,9 @@ OC.L10N.register( "Recommended" : "Ajánlott", "App \"%s\" cannot be installed because appinfo file cannot be read." : "\"%s\" alkalmazás nem lehet telepíteni, mert az appinfo fájl nem olvasható.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "\"%s\" alkalmazás nem lehet telepíteni, mert nem kompatibilis a szerver jelen verziójával.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "\"%s\" alkalmazás nem lehet telepíteni, mert a következő függőségek nincsenek kielégítve: %s", "No app name specified" : "Nincs az alkalmazás név megadva.", "App '%s' could not be installed!" : "\"%s\" alkalmazás nem lehet telepíthető!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "\"%s\" alkalmazás nem lehet telepíteni, mert a következő függőségek nincsenek kielégítve: %s", "a safe home for all your data" : "egy biztonságos hely az adataidnak", "File is currently busy, please try again later" : "A fájl jelenleg elfoglalt, kérjük próbáld újra később!", "Can't read file" : "Nem olvasható a fájl", @@ -141,8 +142,6 @@ OC.L10N.register( "Token expired. Please reload page." : "A token lejárt. Frissítse az oldalt.", "Unknown user" : "Ismeretlen felhasználó", "No database drivers (sqlite, mysql, or postgresql) installed." : "Nincs telepítve adatbázis-meghajtóprogram (sqlite, mysql vagy postgresql).", - "Microsoft Windows Platform is not supported" : "Microsoft Windows platform nem támogatott", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "A Nextcloud Server Microsoft Windows platformon való futtatása nem támogatott. Ha nincs más lehetőséged a szerver migrációjára, akkor javasoljuk, hogy Linux szervert használj virtuális gépben.", "Cannot write into \"config\" directory" : "Nem írható a \"config\" könyvtár", "Cannot write into \"apps\" directory" : "Nem írható az \"apps\" könyvtár", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Ez rendszerint úgy oldható meg, hogy %sírási jogot adunk a webszervernek az app könyvtárra%s, vagy letiltjuk a config fájlban az appstore használatát.", @@ -175,8 +174,10 @@ OC.L10N.register( "Storage unauthorized. %s" : "A tároló jogosulatlan. %s", "Storage incomplete configuration. %s" : "A tároló beállítása nem teljes. %s", "Storage connection error. %s" : "Tároló kapcsolódási hiba. %s", - "Storage not available" : "A tároló elérhetetlen.", "Storage connection timeout. %s" : "Tároló kapcsolat időtúllépés. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows platform nem támogatott", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "A Nextcloud Server Microsoft Windows platformon való futtatása nem támogatott. Ha nincs más lehetőséged a szerver migrációjára, akkor javasoljuk, hogy Linux szervert használj virtuális gépben.", + "Storage not available" : "A tároló elérhetetlen.", "ownCloud %s or higher is required." : "ownCloud %s vagy újabb szükséges.", "ownCloud %s or lower is required." : "ownCloud %s vagy régebbi szükséges.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "\"%s\" alkalmazás nem telepíthető, mert nem kompatibilis az Nextcloud ezen verziójával", diff --git a/lib/l10n/hu_HU.json b/lib/l10n/hu_HU.json index 510508c9909..e3c4f2638a3 100644 --- a/lib/l10n/hu_HU.json +++ b/lib/l10n/hu_HU.json @@ -18,6 +18,7 @@ "Server version %s or lower is required." : "%s vagy régebbi szerver verzió szükséges.", "Unknown filetype" : "Ismeretlen fájl típus", "Invalid image" : "Hibás kép", + "Avatar image is not square" : "Az avatár kép nem négyzetes.", "today" : "ma", "yesterday" : "tegnap", "_%n day ago_::_%n days ago_" : ["%n napja","%n napja"], @@ -128,9 +129,9 @@ "Recommended" : "Ajánlott", "App \"%s\" cannot be installed because appinfo file cannot be read." : "\"%s\" alkalmazás nem lehet telepíteni, mert az appinfo fájl nem olvasható.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "\"%s\" alkalmazás nem lehet telepíteni, mert nem kompatibilis a szerver jelen verziójával.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "\"%s\" alkalmazás nem lehet telepíteni, mert a következő függőségek nincsenek kielégítve: %s", "No app name specified" : "Nincs az alkalmazás név megadva.", "App '%s' could not be installed!" : "\"%s\" alkalmazás nem lehet telepíthető!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "\"%s\" alkalmazás nem lehet telepíteni, mert a következő függőségek nincsenek kielégítve: %s", "a safe home for all your data" : "egy biztonságos hely az adataidnak", "File is currently busy, please try again later" : "A fájl jelenleg elfoglalt, kérjük próbáld újra később!", "Can't read file" : "Nem olvasható a fájl", @@ -139,8 +140,6 @@ "Token expired. Please reload page." : "A token lejárt. Frissítse az oldalt.", "Unknown user" : "Ismeretlen felhasználó", "No database drivers (sqlite, mysql, or postgresql) installed." : "Nincs telepítve adatbázis-meghajtóprogram (sqlite, mysql vagy postgresql).", - "Microsoft Windows Platform is not supported" : "Microsoft Windows platform nem támogatott", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "A Nextcloud Server Microsoft Windows platformon való futtatása nem támogatott. Ha nincs más lehetőséged a szerver migrációjára, akkor javasoljuk, hogy Linux szervert használj virtuális gépben.", "Cannot write into \"config\" directory" : "Nem írható a \"config\" könyvtár", "Cannot write into \"apps\" directory" : "Nem írható az \"apps\" könyvtár", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Ez rendszerint úgy oldható meg, hogy %sírási jogot adunk a webszervernek az app könyvtárra%s, vagy letiltjuk a config fájlban az appstore használatát.", @@ -173,8 +172,10 @@ "Storage unauthorized. %s" : "A tároló jogosulatlan. %s", "Storage incomplete configuration. %s" : "A tároló beállítása nem teljes. %s", "Storage connection error. %s" : "Tároló kapcsolódási hiba. %s", - "Storage not available" : "A tároló elérhetetlen.", "Storage connection timeout. %s" : "Tároló kapcsolat időtúllépés. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows platform nem támogatott", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "A Nextcloud Server Microsoft Windows platformon való futtatása nem támogatott. Ha nincs más lehetőséged a szerver migrációjára, akkor javasoljuk, hogy Linux szervert használj virtuális gépben.", + "Storage not available" : "A tároló elérhetetlen.", "ownCloud %s or higher is required." : "ownCloud %s vagy újabb szükséges.", "ownCloud %s or lower is required." : "ownCloud %s vagy régebbi szükséges.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "\"%s\" alkalmazás nem telepíthető, mert nem kompatibilis az Nextcloud ezen verziójával", diff --git a/lib/l10n/id.js b/lib/l10n/id.js index dcb829c77c2..f07dd357b24 100644 --- a/lib/l10n/id.js +++ b/lib/l10n/id.js @@ -122,9 +122,9 @@ OC.L10N.register( "Recommended" : "Direkomendasikan", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Aplikasi \"%s\" tidak dapat dipasang karena berkas appinfo tidak dapat dibaca.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Aplikasi \"%s\" tidak dapat dipasang karena tidak kompatibel dengan versi server ini", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "aplikasi \"%s\" tidak dapat dipasang karena dependensi berikut belum terpenuhi: %s", "No app name specified" : "Tidak ada nama Aplikasi yang ditentukan", "App '%s' could not be installed!" : "Aplikasi '%s' tidak dapat dipasang!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "aplikasi \"%s\" tidak dapat dipasang karena dependensi berikut belum terpenuhi: %s", "a safe home for all your data" : "rumah yang aman untuk semua datamu", "File is currently busy, please try again later" : "Berkas sedang sibuk, mohon coba lagi nanti", "Can't read file" : "Tidak dapat membaca berkas", @@ -133,8 +133,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Token sudah kedaluwarsa. Silakan muat ulang halaman.", "Unknown user" : "Pengguna tidak dikenal", "No database drivers (sqlite, mysql, or postgresql) installed." : "Tidak ada driver (sqlite, mysql, or postgresql) yang terinstal.", - "Microsoft Windows Platform is not supported" : "Platform Microsoft Windows tidak didukung", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Menjalankan Nextcloud Server pada platform Microsoft Windows tidak didukung. Kami menyarankan Anda menggunakan server Linux di mesin virtual jika Anda tidak memiliki pilihan untuk migrasi server itu sendiri.", "Cannot write into \"config\" directory" : "Tidak dapat menulis kedalam direktori \"config\"", "Cannot write into \"apps\" directory" : "Tidak dapat menulis kedalam direktori \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Hal ini biasanya dapat diperbaiki dengan %s memberikan akses tulis bagi situs web ke %s direktori apps atau menonaktifkan toko aplikasi didalam berkas config.", @@ -167,8 +165,10 @@ OC.L10N.register( "Storage unauthorized. %s" : "Penyimpanan tidak terotorisasi. %s", "Storage incomplete configuration. %s" : "Konfigurasi penyimpanan tidak terselesaikan. %s", "Storage connection error. %s" : "Koneksi penyimpanan bermasalah. %s", - "Storage not available" : "Penyimpanan tidak tersedia", "Storage connection timeout. %s" : "Koneksi penyimpanan waktu-habis. %s", + "Microsoft Windows Platform is not supported" : "Platform Microsoft Windows tidak didukung", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Menjalankan Nextcloud Server pada platform Microsoft Windows tidak didukung. Kami menyarankan Anda menggunakan server Linux di mesin virtual jika Anda tidak memiliki pilihan untuk migrasi server itu sendiri.", + "Storage not available" : "Penyimpanan tidak tersedia", "ownCloud %s or higher is required." : "Diperlukan ownCloud %s atau yang lebih tinggi.", "ownCloud %s or lower is required." : "Diperlukan ownCloud %s atau yang lebih rendah.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "Aplikasi \"%s\" tidak dapat dipasang karena tidak kompatibel dengan versi Nextcloud ini.", diff --git a/lib/l10n/id.json b/lib/l10n/id.json index 783426a6e03..8dc3cf5b506 100644 --- a/lib/l10n/id.json +++ b/lib/l10n/id.json @@ -120,9 +120,9 @@ "Recommended" : "Direkomendasikan", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Aplikasi \"%s\" tidak dapat dipasang karena berkas appinfo tidak dapat dibaca.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Aplikasi \"%s\" tidak dapat dipasang karena tidak kompatibel dengan versi server ini", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "aplikasi \"%s\" tidak dapat dipasang karena dependensi berikut belum terpenuhi: %s", "No app name specified" : "Tidak ada nama Aplikasi yang ditentukan", "App '%s' could not be installed!" : "Aplikasi '%s' tidak dapat dipasang!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "aplikasi \"%s\" tidak dapat dipasang karena dependensi berikut belum terpenuhi: %s", "a safe home for all your data" : "rumah yang aman untuk semua datamu", "File is currently busy, please try again later" : "Berkas sedang sibuk, mohon coba lagi nanti", "Can't read file" : "Tidak dapat membaca berkas", @@ -131,8 +131,6 @@ "Token expired. Please reload page." : "Token sudah kedaluwarsa. Silakan muat ulang halaman.", "Unknown user" : "Pengguna tidak dikenal", "No database drivers (sqlite, mysql, or postgresql) installed." : "Tidak ada driver (sqlite, mysql, or postgresql) yang terinstal.", - "Microsoft Windows Platform is not supported" : "Platform Microsoft Windows tidak didukung", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Menjalankan Nextcloud Server pada platform Microsoft Windows tidak didukung. Kami menyarankan Anda menggunakan server Linux di mesin virtual jika Anda tidak memiliki pilihan untuk migrasi server itu sendiri.", "Cannot write into \"config\" directory" : "Tidak dapat menulis kedalam direktori \"config\"", "Cannot write into \"apps\" directory" : "Tidak dapat menulis kedalam direktori \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Hal ini biasanya dapat diperbaiki dengan %s memberikan akses tulis bagi situs web ke %s direktori apps atau menonaktifkan toko aplikasi didalam berkas config.", @@ -165,8 +163,10 @@ "Storage unauthorized. %s" : "Penyimpanan tidak terotorisasi. %s", "Storage incomplete configuration. %s" : "Konfigurasi penyimpanan tidak terselesaikan. %s", "Storage connection error. %s" : "Koneksi penyimpanan bermasalah. %s", - "Storage not available" : "Penyimpanan tidak tersedia", "Storage connection timeout. %s" : "Koneksi penyimpanan waktu-habis. %s", + "Microsoft Windows Platform is not supported" : "Platform Microsoft Windows tidak didukung", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Menjalankan Nextcloud Server pada platform Microsoft Windows tidak didukung. Kami menyarankan Anda menggunakan server Linux di mesin virtual jika Anda tidak memiliki pilihan untuk migrasi server itu sendiri.", + "Storage not available" : "Penyimpanan tidak tersedia", "ownCloud %s or higher is required." : "Diperlukan ownCloud %s atau yang lebih tinggi.", "ownCloud %s or lower is required." : "Diperlukan ownCloud %s atau yang lebih rendah.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "Aplikasi \"%s\" tidak dapat dipasang karena tidak kompatibel dengan versi Nextcloud ini.", diff --git a/lib/l10n/it.js b/lib/l10n/it.js index 5cdbec91dc4..9d58b7a52ea 100644 --- a/lib/l10n/it.js +++ b/lib/l10n/it.js @@ -130,9 +130,9 @@ OC.L10N.register( "Recommended" : "Consigliata", "App \"%s\" cannot be installed because appinfo file cannot be read." : "L'applicazione \"%s\" non può essere installata poiché il file appinfo non può essere letto.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "L'applicazione \"%s\" non può essere installata perché non è compatibile con questa versione del server.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "L'applicazione \"%s\" non può essere installata poiché le seguenti dipendenze non sono soddisfatte: %s", "No app name specified" : "Il nome dell'applicazione non è specificato", "App '%s' could not be installed!" : "L'applicazione '%s' non può essere installata!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "L'applicazione \"%s\" non può essere installata poiché le seguenti dipendenze non sono soddisfatte: %s", "a safe home for all your data" : "un posto sicuro per tutti i tuoi dati", "File is currently busy, please try again later" : "Il file è attualmente occupato, riprova più tardi", "Can't read file" : "Impossibile leggere il file", @@ -141,8 +141,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Token scaduto. Ricarica la pagina.", "Unknown user" : "Utente sconosciuto", "No database drivers (sqlite, mysql, or postgresql) installed." : "Nessun driver di database (sqlite, mysql o postgresql) installato", - "Microsoft Windows Platform is not supported" : "La piattaforma Microsoft Windows non è supportata", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "L'esecuzione del server Nextcloud sulla piattaforma Microsoft Windows. Ti consigliamo di utilizzare un server Linux in una macchina virtuale.", "Cannot write into \"config\" directory" : "Impossibile scrivere nella cartella \"config\"", "Cannot write into \"apps\" directory" : "Impossibile scrivere nella cartella \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Ciò può essere normalmente corretto %sfornendo al server web accesso in scrittura alla cartella \"apps\"%s o disabilitando il negozio di applicazioni nel file di configurazione.", @@ -175,8 +173,10 @@ OC.L10N.register( "Storage unauthorized. %s" : "Archiviazione non autorizzata. %s", "Storage incomplete configuration. %s" : "Configurazione dell'archiviazione incompleta.%s", "Storage connection error. %s" : "Errore di connessione all'archiviazione. %s", - "Storage not available" : "Archiviazione non disponibile", "Storage connection timeout. %s" : "Timeout di connessione all'archiviazione. %s", + "Microsoft Windows Platform is not supported" : "La piattaforma Microsoft Windows non è supportata", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "L'esecuzione del server Nextcloud sulla piattaforma Microsoft Windows. Ti consigliamo di utilizzare un server Linux in una macchina virtuale.", + "Storage not available" : "Archiviazione non disponibile", "ownCloud %s or higher is required." : "È richiesta la versione %s o successiva di ownCloud.", "ownCloud %s or lower is required." : "È richiesta la versione %s o precedente di ownCloud.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "L'applicazione \"%s\" non può essere installata perché non è compatibile con questa versione di Nextcloud.", diff --git a/lib/l10n/it.json b/lib/l10n/it.json index 20af601b152..9a72a8848f9 100644 --- a/lib/l10n/it.json +++ b/lib/l10n/it.json @@ -128,9 +128,9 @@ "Recommended" : "Consigliata", "App \"%s\" cannot be installed because appinfo file cannot be read." : "L'applicazione \"%s\" non può essere installata poiché il file appinfo non può essere letto.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "L'applicazione \"%s\" non può essere installata perché non è compatibile con questa versione del server.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "L'applicazione \"%s\" non può essere installata poiché le seguenti dipendenze non sono soddisfatte: %s", "No app name specified" : "Il nome dell'applicazione non è specificato", "App '%s' could not be installed!" : "L'applicazione '%s' non può essere installata!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "L'applicazione \"%s\" non può essere installata poiché le seguenti dipendenze non sono soddisfatte: %s", "a safe home for all your data" : "un posto sicuro per tutti i tuoi dati", "File is currently busy, please try again later" : "Il file è attualmente occupato, riprova più tardi", "Can't read file" : "Impossibile leggere il file", @@ -139,8 +139,6 @@ "Token expired. Please reload page." : "Token scaduto. Ricarica la pagina.", "Unknown user" : "Utente sconosciuto", "No database drivers (sqlite, mysql, or postgresql) installed." : "Nessun driver di database (sqlite, mysql o postgresql) installato", - "Microsoft Windows Platform is not supported" : "La piattaforma Microsoft Windows non è supportata", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "L'esecuzione del server Nextcloud sulla piattaforma Microsoft Windows. Ti consigliamo di utilizzare un server Linux in una macchina virtuale.", "Cannot write into \"config\" directory" : "Impossibile scrivere nella cartella \"config\"", "Cannot write into \"apps\" directory" : "Impossibile scrivere nella cartella \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Ciò può essere normalmente corretto %sfornendo al server web accesso in scrittura alla cartella \"apps\"%s o disabilitando il negozio di applicazioni nel file di configurazione.", @@ -173,8 +171,10 @@ "Storage unauthorized. %s" : "Archiviazione non autorizzata. %s", "Storage incomplete configuration. %s" : "Configurazione dell'archiviazione incompleta.%s", "Storage connection error. %s" : "Errore di connessione all'archiviazione. %s", - "Storage not available" : "Archiviazione non disponibile", "Storage connection timeout. %s" : "Timeout di connessione all'archiviazione. %s", + "Microsoft Windows Platform is not supported" : "La piattaforma Microsoft Windows non è supportata", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "L'esecuzione del server Nextcloud sulla piattaforma Microsoft Windows. Ti consigliamo di utilizzare un server Linux in una macchina virtuale.", + "Storage not available" : "Archiviazione non disponibile", "ownCloud %s or higher is required." : "È richiesta la versione %s o successiva di ownCloud.", "ownCloud %s or lower is required." : "È richiesta la versione %s o precedente di ownCloud.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "L'applicazione \"%s\" non può essere installata perché non è compatibile con questa versione di Nextcloud.", diff --git a/lib/l10n/ja.js b/lib/l10n/ja.js index 357637e40a2..fcfb47dc8a7 100644 --- a/lib/l10n/ja.js +++ b/lib/l10n/ja.js @@ -127,8 +127,8 @@ OC.L10N.register( "Recommended" : "おすすめ", "App \"%s\" cannot be installed because appinfo file cannot be read." : "appinfoファイルが読み込めないため、アプリ名 \"%s\" がインストールできません。", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "\"%s\" アプリは、このバージョンのサーバーと互換性がないためインストールされませんでした。", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "次の依存関係が満たされないため、\"%s\" アプリをインストールできません:%s", "No app name specified" : "アプリ名が未指定", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "次の依存関係が満たされないため、\"%s\" アプリをインストールできません:%s", "a safe home for all your data" : "あなたの全データの安全な家", "File is currently busy, please try again later" : "現在ファイルはビジーです。後でもう一度試してください。", "Can't read file" : "ファイルを読み込めません", @@ -137,8 +137,6 @@ OC.L10N.register( "Token expired. Please reload page." : "トークンが無効になりました。ページを再読込してください。", "Unknown user" : "不明なユーザー", "No database drivers (sqlite, mysql, or postgresql) installed." : "データベースドライバー (sqlite, mysql, postgresql) がインストールされていません。", - "Microsoft Windows Platform is not supported" : "Microsoft Windows プラットフォームはサポートしていません。", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "マイクロソフト Windowsプラットフォーム上での Nextcloudの動作をサポートしていません。サーバー丸ごと移行する方式をとれない場合は仮想マシンで Linux を動かすことをお勧めします。", "Cannot write into \"config\" directory" : "\"config\" ディレクトリに書き込みができません", "Cannot write into \"apps\" directory" : "\"apps\" ディレクトリに書き込みができません", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "多くの場合、これは %s Webサーバーにappsディレクトリ %s への書き込み権限を与えるか、設定ファイルでアプリストアを無効化することで解決できます。", @@ -171,8 +169,10 @@ OC.L10N.register( "Storage unauthorized. %s" : "権限のないストレージです。 %s", "Storage incomplete configuration. %s" : "設定が未完了のストレージです。 %s", "Storage connection error. %s" : "ストレージへの接続エラー。 %s", - "Storage not available" : "ストレージが利用できません", "Storage connection timeout. %s" : "ストレージへの接続がタイムアウト。 %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows プラットフォームはサポートしていません。", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "マイクロソフト Windowsプラットフォーム上での Nextcloudの動作をサポートしていません。サーバー丸ごと移行する方式をとれない場合は仮想マシンで Linux を動かすことをお勧めします。", + "Storage not available" : "ストレージが利用できません", "ownCloud %s or higher is required." : "ownCloud %s 以上が必要です", "ownCloud %s or lower is required." : "ownCloud %s 以下が必要です" }, diff --git a/lib/l10n/ja.json b/lib/l10n/ja.json index 5fa2bcffe91..b9f80698859 100644 --- a/lib/l10n/ja.json +++ b/lib/l10n/ja.json @@ -125,8 +125,8 @@ "Recommended" : "おすすめ", "App \"%s\" cannot be installed because appinfo file cannot be read." : "appinfoファイルが読み込めないため、アプリ名 \"%s\" がインストールできません。", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "\"%s\" アプリは、このバージョンのサーバーと互換性がないためインストールされませんでした。", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "次の依存関係が満たされないため、\"%s\" アプリをインストールできません:%s", "No app name specified" : "アプリ名が未指定", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "次の依存関係が満たされないため、\"%s\" アプリをインストールできません:%s", "a safe home for all your data" : "あなたの全データの安全な家", "File is currently busy, please try again later" : "現在ファイルはビジーです。後でもう一度試してください。", "Can't read file" : "ファイルを読み込めません", @@ -135,8 +135,6 @@ "Token expired. Please reload page." : "トークンが無効になりました。ページを再読込してください。", "Unknown user" : "不明なユーザー", "No database drivers (sqlite, mysql, or postgresql) installed." : "データベースドライバー (sqlite, mysql, postgresql) がインストールされていません。", - "Microsoft Windows Platform is not supported" : "Microsoft Windows プラットフォームはサポートしていません。", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "マイクロソフト Windowsプラットフォーム上での Nextcloudの動作をサポートしていません。サーバー丸ごと移行する方式をとれない場合は仮想マシンで Linux を動かすことをお勧めします。", "Cannot write into \"config\" directory" : "\"config\" ディレクトリに書き込みができません", "Cannot write into \"apps\" directory" : "\"apps\" ディレクトリに書き込みができません", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "多くの場合、これは %s Webサーバーにappsディレクトリ %s への書き込み権限を与えるか、設定ファイルでアプリストアを無効化することで解決できます。", @@ -169,8 +167,10 @@ "Storage unauthorized. %s" : "権限のないストレージです。 %s", "Storage incomplete configuration. %s" : "設定が未完了のストレージです。 %s", "Storage connection error. %s" : "ストレージへの接続エラー。 %s", - "Storage not available" : "ストレージが利用できません", "Storage connection timeout. %s" : "ストレージへの接続がタイムアウト。 %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows プラットフォームはサポートしていません。", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "マイクロソフト Windowsプラットフォーム上での Nextcloudの動作をサポートしていません。サーバー丸ごと移行する方式をとれない場合は仮想マシンで Linux を動かすことをお勧めします。", + "Storage not available" : "ストレージが利用できません", "ownCloud %s or higher is required." : "ownCloud %s 以上が必要です", "ownCloud %s or lower is required." : "ownCloud %s 以下が必要です" },"pluralForm" :"nplurals=1; plural=0;" diff --git a/lib/l10n/ko.js b/lib/l10n/ko.js index f5ba8f8efc1..8e350bd86b3 100644 --- a/lib/l10n/ko.js +++ b/lib/l10n/ko.js @@ -121,8 +121,8 @@ OC.L10N.register( "Users" : "사용자", "Admin" : "관리자", "Recommended" : "추천", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "앱 \"%s\"의 다음 의존성을 만족하지 못하므로 설치할 수 없습니다: %s", "No app name specified" : "앱 이름이 지정되지 않았습니다.", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "앱 \"%s\"의 다음 의존성을 만족하지 못하므로 설치할 수 없습니다: %s", "File is currently busy, please try again later" : "파일이 현재 사용 중, 나중에 다시 시도하십시오", "Can't read file" : "파일을 읽을 수 없음", "Application is not enabled" : "앱이 활성화되지 않았습니다", @@ -130,7 +130,6 @@ OC.L10N.register( "Token expired. Please reload page." : "토큰이 만료되었습니다. 페이지를 새로 고치십시오.", "Unknown user" : "알려지지 않은 사용자", "No database drivers (sqlite, mysql, or postgresql) installed." : "데이터베이스 드라이버(sqlite, mysql, postgresql)가 설치되지 않았습니다.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows 플랫폼은 지원하지 않음", "Cannot write into \"config\" directory" : "\"config\" 디렉터리에 기록할 수 없습니다", "Cannot write into \"apps\" directory" : "\"apps\" 디렉터리에 기록할 수 없습니다", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "%sapps 디렉터리에 웹 서버 쓰기 권한%s을 주거나 설정 파일에서 앱 스토어를 비활성화하면 해결됩니다.", @@ -161,6 +160,7 @@ OC.L10N.register( "Storage connection error. %s" : "저장소 연결 오류. %s", "Storage not available" : "저장소를 사용할 수 없음", "Storage connection timeout. %s" : "저장소 연결 시간 초과. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows 플랫폼은 지원하지 않음", "ownCloud %s or higher is required." : "ownCloud %s 이상이 필요합니다.", "ownCloud %s or lower is required." : "ownCloud %s 미만이 필요합니다." }, diff --git a/lib/l10n/ko.json b/lib/l10n/ko.json index 093557e3404..e2ef0a81762 100644 --- a/lib/l10n/ko.json +++ b/lib/l10n/ko.json @@ -119,8 +119,8 @@ "Users" : "사용자", "Admin" : "관리자", "Recommended" : "추천", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "앱 \"%s\"의 다음 의존성을 만족하지 못하므로 설치할 수 없습니다: %s", "No app name specified" : "앱 이름이 지정되지 않았습니다.", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "앱 \"%s\"의 다음 의존성을 만족하지 못하므로 설치할 수 없습니다: %s", "File is currently busy, please try again later" : "파일이 현재 사용 중, 나중에 다시 시도하십시오", "Can't read file" : "파일을 읽을 수 없음", "Application is not enabled" : "앱이 활성화되지 않았습니다", @@ -128,7 +128,6 @@ "Token expired. Please reload page." : "토큰이 만료되었습니다. 페이지를 새로 고치십시오.", "Unknown user" : "알려지지 않은 사용자", "No database drivers (sqlite, mysql, or postgresql) installed." : "데이터베이스 드라이버(sqlite, mysql, postgresql)가 설치되지 않았습니다.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows 플랫폼은 지원하지 않음", "Cannot write into \"config\" directory" : "\"config\" 디렉터리에 기록할 수 없습니다", "Cannot write into \"apps\" directory" : "\"apps\" 디렉터리에 기록할 수 없습니다", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "%sapps 디렉터리에 웹 서버 쓰기 권한%s을 주거나 설정 파일에서 앱 스토어를 비활성화하면 해결됩니다.", @@ -159,6 +158,7 @@ "Storage connection error. %s" : "저장소 연결 오류. %s", "Storage not available" : "저장소를 사용할 수 없음", "Storage connection timeout. %s" : "저장소 연결 시간 초과. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows 플랫폼은 지원하지 않음", "ownCloud %s or higher is required." : "ownCloud %s 이상이 필요합니다.", "ownCloud %s or lower is required." : "ownCloud %s 미만이 필요합니다." },"pluralForm" :"nplurals=1; plural=0;" diff --git a/lib/l10n/nb_NO.js b/lib/l10n/nb_NO.js index 54a7d62561e..9e4b13ef669 100644 --- a/lib/l10n/nb_NO.js +++ b/lib/l10n/nb_NO.js @@ -130,9 +130,9 @@ OC.L10N.register( "Recommended" : "Anbefalt", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Appen \"%s\" kan ikke installeres på grunn av at appinfo filen ikke kan leses.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Appen \"%s\" kan ikke installere fordi den ikke er kompatibel med denne tjenerversjonen.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" kan ikke installeres fordi følgende avhengigheter ikke er tilfredsstilt: %s", "No app name specified" : "Intet app-navn spesifisert", "App '%s' could not be installed!" : "Appen '%s' kunne ikke installeres!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" kan ikke installeres fordi følgende avhengigheter ikke er tilfredsstilt: %s", "a safe home for all your data" : "et sikkert hjem for alle dine data", "File is currently busy, please try again later" : "Filen er opptatt for øyeblikket, prøv igjen senere", "Can't read file" : "Kan ikke lese fil", @@ -141,8 +141,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Symbol utløpt. Vennligst last inn siden på nytt.", "Unknown user" : "Ukjent bruker", "No database drivers (sqlite, mysql, or postgresql) installed." : "Ingen databasedrivere (sqlite, mysql, or postgresql) installert.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows-plattform støttes ikke", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Kjøring av Nextcloud tjeneren på en Microsoft Windows plattform er ikke støttet. Vi foreslår at du bruker en Linux tjener i en virtuell maskin hvis du ikke har mulighet til å migrere tjeneren selv.", "Cannot write into \"config\" directory" : "Kan ikke skrive i \"config\"-mappen", "Cannot write into \"apps\" directory" : "Kan ikke skrive i \"apps\"-mappen", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Dette kan vanligvis ordnes ved %så gi web-tjeneren skrivetilgang til apps-mappen%s eller ved å deaktivere app-butikken i config-filen.", @@ -175,8 +173,10 @@ OC.L10N.register( "Storage unauthorized. %s" : "Lager uautorisert: %s", "Storage incomplete configuration. %s" : "Ikke komplett oppsett for lager. %s", "Storage connection error. %s" : "Tilkoblingsfeil for lager. %s", - "Storage not available" : "Lagringsplass ikke tilgjengelig", "Storage connection timeout. %s" : "Tidsavbrudd ved tilkobling av lager: %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows-plattform støttes ikke", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Kjøring av Nextcloud tjeneren på en Microsoft Windows plattform er ikke støttet. Vi foreslår at du bruker en Linux tjener i en virtuell maskin hvis du ikke har mulighet til å migrere tjeneren selv.", + "Storage not available" : "Lagringsplass ikke tilgjengelig", "ownCloud %s or higher is required." : "Nextcloud %s eller høyere er påkrevd.", "ownCloud %s or lower is required." : "Nextcloud %s eller lavere er påkrevd.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "Appen \"%s\" kan ikke installeres da den ikke er kompatibel med denne versjonen av Nextcloud", diff --git a/lib/l10n/nb_NO.json b/lib/l10n/nb_NO.json index ba689e6d2a2..f61d84cd4c3 100644 --- a/lib/l10n/nb_NO.json +++ b/lib/l10n/nb_NO.json @@ -128,9 +128,9 @@ "Recommended" : "Anbefalt", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Appen \"%s\" kan ikke installeres på grunn av at appinfo filen ikke kan leses.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Appen \"%s\" kan ikke installere fordi den ikke er kompatibel med denne tjenerversjonen.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" kan ikke installeres fordi følgende avhengigheter ikke er tilfredsstilt: %s", "No app name specified" : "Intet app-navn spesifisert", "App '%s' could not be installed!" : "Appen '%s' kunne ikke installeres!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" kan ikke installeres fordi følgende avhengigheter ikke er tilfredsstilt: %s", "a safe home for all your data" : "et sikkert hjem for alle dine data", "File is currently busy, please try again later" : "Filen er opptatt for øyeblikket, prøv igjen senere", "Can't read file" : "Kan ikke lese fil", @@ -139,8 +139,6 @@ "Token expired. Please reload page." : "Symbol utløpt. Vennligst last inn siden på nytt.", "Unknown user" : "Ukjent bruker", "No database drivers (sqlite, mysql, or postgresql) installed." : "Ingen databasedrivere (sqlite, mysql, or postgresql) installert.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows-plattform støttes ikke", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Kjøring av Nextcloud tjeneren på en Microsoft Windows plattform er ikke støttet. Vi foreslår at du bruker en Linux tjener i en virtuell maskin hvis du ikke har mulighet til å migrere tjeneren selv.", "Cannot write into \"config\" directory" : "Kan ikke skrive i \"config\"-mappen", "Cannot write into \"apps\" directory" : "Kan ikke skrive i \"apps\"-mappen", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Dette kan vanligvis ordnes ved %så gi web-tjeneren skrivetilgang til apps-mappen%s eller ved å deaktivere app-butikken i config-filen.", @@ -173,8 +171,10 @@ "Storage unauthorized. %s" : "Lager uautorisert: %s", "Storage incomplete configuration. %s" : "Ikke komplett oppsett for lager. %s", "Storage connection error. %s" : "Tilkoblingsfeil for lager. %s", - "Storage not available" : "Lagringsplass ikke tilgjengelig", "Storage connection timeout. %s" : "Tidsavbrudd ved tilkobling av lager: %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows-plattform støttes ikke", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Kjøring av Nextcloud tjeneren på en Microsoft Windows plattform er ikke støttet. Vi foreslår at du bruker en Linux tjener i en virtuell maskin hvis du ikke har mulighet til å migrere tjeneren selv.", + "Storage not available" : "Lagringsplass ikke tilgjengelig", "ownCloud %s or higher is required." : "Nextcloud %s eller høyere er påkrevd.", "ownCloud %s or lower is required." : "Nextcloud %s eller lavere er påkrevd.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "Appen \"%s\" kan ikke installeres da den ikke er kompatibel med denne versjonen av Nextcloud", diff --git a/lib/l10n/nl.js b/lib/l10n/nl.js index d412c3673a5..c19054d8a47 100644 --- a/lib/l10n/nl.js +++ b/lib/l10n/nl.js @@ -20,6 +20,7 @@ OC.L10N.register( "Server version %s or lower is required." : "Serverversie %s of lager vereist.", "Unknown filetype" : "Onbekend bestandsformaat", "Invalid image" : "Ongeldige afbeelding", + "Avatar image is not square" : "Avatar is niet vierkant", "today" : "vandaag", "yesterday" : "gisteren", "_%n day ago_::_%n days ago_" : ["%n dag geleden","%n dagen geleden"], @@ -115,6 +116,14 @@ OC.L10N.register( "Expiration date is in the past" : "De vervaldatum ligt in het verleden", "Cannot set expiration date more than %s days in the future" : "Kan vervaldatum niet verder dan %s dagen in de toekomst instellen", "Could not find category \"%s\"" : "Kon categorie \"%s\" niet vinden", + "Monday" : "maandag", + "Mon." : "Maa.", + "Sat." : "Zat.", + "Su" : "Zo", + "Fr" : "Vr", + "Sa" : "Za", + "May" : "mei", + "Sep." : "Sep.", "Apps" : "Apps", "Only the following characters are allowed in a username: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"" : "Alleen de volgende tekens zijn toegestaan in een gebruikersnaam: \"a-z\", \"A-Z\", \"0-9\", en \"_.@-\"", "A valid username must be provided" : "Er moet een geldige gebruikersnaam worden opgegeven", @@ -130,9 +139,9 @@ OC.L10N.register( "Recommended" : "Aanbevolen", "App \"%s\" cannot be installed because appinfo file cannot be read." : "App \"%s\" kan niet worden geïnstalleerd, omdat het appinfo bestand niet gelezen kan worden.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "App \"%s\" kan niet worden geïnstalleerd, omdat deze niet compatible is met deze versie van de server.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" kan niet worden geïnstalleerd, omdat de volgende afhankelijkheden niet zijn ingevuld: %s", "No app name specified" : "Geen app naam opgegeven.", "App '%s' could not be installed!" : "App '%s' kon niet worden geïnstalleerd!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" kan niet worden geïnstalleerd, omdat de volgende afhankelijkheden niet zijn ingevuld: %s", "a safe home for all your data" : "een veilige plek voor al je gegevens", "File is currently busy, please try again later" : "Bestandsverwerking bezig, probeer het later opnieuw", "Can't read file" : "Kan bestand niet lezen", @@ -141,8 +150,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Token verlopen. Herlaad de pagina.", "Unknown user" : "Onbekende gebruiker", "No database drivers (sqlite, mysql, or postgresql) installed." : "Geen database drivers (sqlite, mysql of postgres) geïnstalleerd.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform wordt niet ondersteund", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Het draaien van Nextcloud server op het Microsoft Windows platform wordt niet ondersteund. We adviseren je om een Linux server op een virtuele server te gebruiken als je geen mogelijkheid hebt om een server zelf te migreren.", "Cannot write into \"config\" directory" : "Kan niet schrijven naar de \"config\" directory", "Cannot write into \"apps\" directory" : "Kan niet schrijven naar de \"apps\" directory", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Dit kan hersteld worden door de webserver schrijfrechten te %s geven op de appsdirectory %s of door de appstore te deactiveren in het configbestand.", @@ -175,8 +182,11 @@ OC.L10N.register( "Storage unauthorized. %s" : "Opslag niet toegestaan. %s", "Storage incomplete configuration. %s" : "Incomplete opslagconfiguratie. %s", "Storage connection error. %s" : "Opslagverbindingsfout. %s", - "Storage not available" : "Opslag niet beschikbaar", + "Storage is temporarily not available" : "Opslag is tijdelijk niet beschikbaar", "Storage connection timeout. %s" : "Opslagverbinding time-out. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform wordt niet ondersteund", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Het draaien van Nextcloud server op het Microsoft Windows platform wordt niet ondersteund. We adviseren je om een Linux server op een virtuele server te gebruiken als je geen mogelijkheid hebt om een server zelf te migreren.", + "Storage not available" : "Opslag niet beschikbaar", "ownCloud %s or higher is required." : "ownCloud %s of hoger vereist.", "ownCloud %s or lower is required." : "ownCloud %s of lager vereist.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "App \"%s\" kan niet worden geïnstalleerd, omdat deze niet compatible is met deze versie van Nextcloud.", diff --git a/lib/l10n/nl.json b/lib/l10n/nl.json index 4a06aba5829..41ab28b0c9b 100644 --- a/lib/l10n/nl.json +++ b/lib/l10n/nl.json @@ -18,6 +18,7 @@ "Server version %s or lower is required." : "Serverversie %s of lager vereist.", "Unknown filetype" : "Onbekend bestandsformaat", "Invalid image" : "Ongeldige afbeelding", + "Avatar image is not square" : "Avatar is niet vierkant", "today" : "vandaag", "yesterday" : "gisteren", "_%n day ago_::_%n days ago_" : ["%n dag geleden","%n dagen geleden"], @@ -113,6 +114,14 @@ "Expiration date is in the past" : "De vervaldatum ligt in het verleden", "Cannot set expiration date more than %s days in the future" : "Kan vervaldatum niet verder dan %s dagen in de toekomst instellen", "Could not find category \"%s\"" : "Kon categorie \"%s\" niet vinden", + "Monday" : "maandag", + "Mon." : "Maa.", + "Sat." : "Zat.", + "Su" : "Zo", + "Fr" : "Vr", + "Sa" : "Za", + "May" : "mei", + "Sep." : "Sep.", "Apps" : "Apps", "Only the following characters are allowed in a username: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"" : "Alleen de volgende tekens zijn toegestaan in een gebruikersnaam: \"a-z\", \"A-Z\", \"0-9\", en \"_.@-\"", "A valid username must be provided" : "Er moet een geldige gebruikersnaam worden opgegeven", @@ -128,9 +137,9 @@ "Recommended" : "Aanbevolen", "App \"%s\" cannot be installed because appinfo file cannot be read." : "App \"%s\" kan niet worden geïnstalleerd, omdat het appinfo bestand niet gelezen kan worden.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "App \"%s\" kan niet worden geïnstalleerd, omdat deze niet compatible is met deze versie van de server.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" kan niet worden geïnstalleerd, omdat de volgende afhankelijkheden niet zijn ingevuld: %s", "No app name specified" : "Geen app naam opgegeven.", "App '%s' could not be installed!" : "App '%s' kon niet worden geïnstalleerd!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" kan niet worden geïnstalleerd, omdat de volgende afhankelijkheden niet zijn ingevuld: %s", "a safe home for all your data" : "een veilige plek voor al je gegevens", "File is currently busy, please try again later" : "Bestandsverwerking bezig, probeer het later opnieuw", "Can't read file" : "Kan bestand niet lezen", @@ -139,8 +148,6 @@ "Token expired. Please reload page." : "Token verlopen. Herlaad de pagina.", "Unknown user" : "Onbekende gebruiker", "No database drivers (sqlite, mysql, or postgresql) installed." : "Geen database drivers (sqlite, mysql of postgres) geïnstalleerd.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform wordt niet ondersteund", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Het draaien van Nextcloud server op het Microsoft Windows platform wordt niet ondersteund. We adviseren je om een Linux server op een virtuele server te gebruiken als je geen mogelijkheid hebt om een server zelf te migreren.", "Cannot write into \"config\" directory" : "Kan niet schrijven naar de \"config\" directory", "Cannot write into \"apps\" directory" : "Kan niet schrijven naar de \"apps\" directory", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Dit kan hersteld worden door de webserver schrijfrechten te %s geven op de appsdirectory %s of door de appstore te deactiveren in het configbestand.", @@ -173,8 +180,11 @@ "Storage unauthorized. %s" : "Opslag niet toegestaan. %s", "Storage incomplete configuration. %s" : "Incomplete opslagconfiguratie. %s", "Storage connection error. %s" : "Opslagverbindingsfout. %s", - "Storage not available" : "Opslag niet beschikbaar", + "Storage is temporarily not available" : "Opslag is tijdelijk niet beschikbaar", "Storage connection timeout. %s" : "Opslagverbinding time-out. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform wordt niet ondersteund", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Het draaien van Nextcloud server op het Microsoft Windows platform wordt niet ondersteund. We adviseren je om een Linux server op een virtuele server te gebruiken als je geen mogelijkheid hebt om een server zelf te migreren.", + "Storage not available" : "Opslag niet beschikbaar", "ownCloud %s or higher is required." : "ownCloud %s of hoger vereist.", "ownCloud %s or lower is required." : "ownCloud %s of lager vereist.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "App \"%s\" kan niet worden geïnstalleerd, omdat deze niet compatible is met deze versie van Nextcloud.", diff --git a/lib/l10n/pt_BR.js b/lib/l10n/pt_BR.js index 2321fb82da2..50b4ffb97f7 100644 --- a/lib/l10n/pt_BR.js +++ b/lib/l10n/pt_BR.js @@ -122,9 +122,9 @@ OC.L10N.register( "Recommended" : "Recomendado", "App \"%s\" cannot be installed because appinfo file cannot be read." : "O App \"%s\" não pode ser instalado porque o arquivo appinfo não pode ser lido.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "O aplicativo \"%s\" não pode ser instalado pois não é compatível com a versão do servidor.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" não pode ser instalado porque as seguintes dependências não foram cumpridas: %s", "No app name specified" : "O nome do aplicativo não foi especificado.", "App '%s' could not be installed!" : "O aplicativo '%s' pode não estar instalado!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" não pode ser instalado porque as seguintes dependências não foram cumpridas: %s", "a safe home for all your data" : "um local seguro para todos os seus dados", "File is currently busy, please try again later" : "O arquivo está ocupado, tente novamente mais tarde", "Can't read file" : "Não é possível ler arquivo", @@ -133,8 +133,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Token expirou. Por favor recarregue a página.", "Unknown user" : "Usuário desconhecido", "No database drivers (sqlite, mysql, or postgresql) installed." : "Nenhum driver de banco de dados (sqlite, mysql, or postgresql) instalado.", - "Microsoft Windows Platform is not supported" : "Plataforma Microsoft Windows não é suportada", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "O Servidor Nextcloud não possui suporte para execução na plataforma Microsoft Windows. Sugerimos que use um servidor Linux em uma máquina virtual, caso não seja possível migrar o servidor.", "Cannot write into \"config\" directory" : "Não é possível gravar no diretório \"config\"", "Cannot write into \"apps\" directory" : "Não é possível gravar no diretório \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Isto pode ser corrigido dando ao webserver permissão de escrita %sgiving para o diretório apps directory%s ou desabilitando o appstore no arquivo de configuração.", @@ -168,6 +166,8 @@ OC.L10N.register( "Storage incomplete configuration. %s" : "Incompleta configuração de armazenamento. %s", "Storage connection error. %s" : "Erro na conexão de armazenamento. %s", "Storage not available" : "Armazanamento não disponível", - "Storage connection timeout. %s" : "Tempo limite de conexão de armazenamento. %s" + "Storage connection timeout. %s" : "Tempo limite de conexão de armazenamento. %s", + "Microsoft Windows Platform is not supported" : "Plataforma Microsoft Windows não é suportada", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "O Servidor Nextcloud não possui suporte para execução na plataforma Microsoft Windows. Sugerimos que use um servidor Linux em uma máquina virtual, caso não seja possível migrar o servidor." }, "nplurals=2; plural=(n > 1);"); diff --git a/lib/l10n/pt_BR.json b/lib/l10n/pt_BR.json index 980756257ff..babcfbea289 100644 --- a/lib/l10n/pt_BR.json +++ b/lib/l10n/pt_BR.json @@ -120,9 +120,9 @@ "Recommended" : "Recomendado", "App \"%s\" cannot be installed because appinfo file cannot be read." : "O App \"%s\" não pode ser instalado porque o arquivo appinfo não pode ser lido.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "O aplicativo \"%s\" não pode ser instalado pois não é compatível com a versão do servidor.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" não pode ser instalado porque as seguintes dependências não foram cumpridas: %s", "No app name specified" : "O nome do aplicativo não foi especificado.", "App '%s' could not be installed!" : "O aplicativo '%s' pode não estar instalado!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "App \"%s\" não pode ser instalado porque as seguintes dependências não foram cumpridas: %s", "a safe home for all your data" : "um local seguro para todos os seus dados", "File is currently busy, please try again later" : "O arquivo está ocupado, tente novamente mais tarde", "Can't read file" : "Não é possível ler arquivo", @@ -131,8 +131,6 @@ "Token expired. Please reload page." : "Token expirou. Por favor recarregue a página.", "Unknown user" : "Usuário desconhecido", "No database drivers (sqlite, mysql, or postgresql) installed." : "Nenhum driver de banco de dados (sqlite, mysql, or postgresql) instalado.", - "Microsoft Windows Platform is not supported" : "Plataforma Microsoft Windows não é suportada", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "O Servidor Nextcloud não possui suporte para execução na plataforma Microsoft Windows. Sugerimos que use um servidor Linux em uma máquina virtual, caso não seja possível migrar o servidor.", "Cannot write into \"config\" directory" : "Não é possível gravar no diretório \"config\"", "Cannot write into \"apps\" directory" : "Não é possível gravar no diretório \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Isto pode ser corrigido dando ao webserver permissão de escrita %sgiving para o diretório apps directory%s ou desabilitando o appstore no arquivo de configuração.", @@ -166,6 +164,8 @@ "Storage incomplete configuration. %s" : "Incompleta configuração de armazenamento. %s", "Storage connection error. %s" : "Erro na conexão de armazenamento. %s", "Storage not available" : "Armazanamento não disponível", - "Storage connection timeout. %s" : "Tempo limite de conexão de armazenamento. %s" + "Storage connection timeout. %s" : "Tempo limite de conexão de armazenamento. %s", + "Microsoft Windows Platform is not supported" : "Plataforma Microsoft Windows não é suportada", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "O Servidor Nextcloud não possui suporte para execução na plataforma Microsoft Windows. Sugerimos que use um servidor Linux em uma máquina virtual, caso não seja possível migrar o servidor." },"pluralForm" :"nplurals=2; plural=(n > 1);" }
\ No newline at end of file diff --git a/lib/l10n/pt_PT.js b/lib/l10n/pt_PT.js index f6d14921b82..5a39805f8dd 100644 --- a/lib/l10n/pt_PT.js +++ b/lib/l10n/pt_PT.js @@ -114,8 +114,8 @@ OC.L10N.register( "Admin" : "Admin", "Recommended" : "Recomendado", "App \"%s\" cannot be installed because appinfo file cannot be read." : "A app \"%s\" não pode ser instalada porque o ficheiro appinfo não pode ser lido.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "A aplicação \"%s\" não pode ser instalada porque as seguintes dependências não podem ser realizadas: %s", "No app name specified" : "O nome da aplicação não foi especificado", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "A aplicação \"%s\" não pode ser instalada porque as seguintes dependências não podem ser realizadas: %s", "File is currently busy, please try again later" : "O ficheiro está ocupado, por favor, tente mais tarde", "Can't read file" : "Não é possível ler o ficheiro", "Application is not enabled" : "A aplicação não está activada", @@ -123,7 +123,6 @@ OC.L10N.register( "Token expired. Please reload page." : "O token expirou. Por favor recarregue a página.", "Unknown user" : "Utilizador desconhecido", "No database drivers (sqlite, mysql, or postgresql) installed." : "Nenhuma base de dados de drivers (sqlite, mysql, or postgresql) instaladas.", - "Microsoft Windows Platform is not supported" : "A plataforma Microsoft Windows não é suportada", "Cannot write into \"config\" directory" : "Não é possível escrever na directoria \"configurar\"", "Cannot write into \"apps\" directory" : "Não é possivel escrever na directoria \"aplicações\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Isto pode ser normalmente resolvido %sdando ao servidor web direito de escrita para o directório de aplicação%s ou desactivando a loja de aplicações no ficheiro de configuração.", @@ -156,6 +155,7 @@ OC.L10N.register( "Storage incomplete configuration. %s" : "Configuração incompleta do armazenamento. %s", "Storage connection error. %s" : "Erro de ligação ao armazenamento. %s", "Storage not available" : "Armazenamento indisposinvel", - "Storage connection timeout. %s" : "Tempo de ligação ao armazenamento expirou. %s" + "Storage connection timeout. %s" : "Tempo de ligação ao armazenamento expirou. %s", + "Microsoft Windows Platform is not supported" : "A plataforma Microsoft Windows não é suportada" }, "nplurals=2; plural=(n != 1);"); diff --git a/lib/l10n/pt_PT.json b/lib/l10n/pt_PT.json index f3959c35352..ed58cf44aae 100644 --- a/lib/l10n/pt_PT.json +++ b/lib/l10n/pt_PT.json @@ -112,8 +112,8 @@ "Admin" : "Admin", "Recommended" : "Recomendado", "App \"%s\" cannot be installed because appinfo file cannot be read." : "A app \"%s\" não pode ser instalada porque o ficheiro appinfo não pode ser lido.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "A aplicação \"%s\" não pode ser instalada porque as seguintes dependências não podem ser realizadas: %s", "No app name specified" : "O nome da aplicação não foi especificado", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "A aplicação \"%s\" não pode ser instalada porque as seguintes dependências não podem ser realizadas: %s", "File is currently busy, please try again later" : "O ficheiro está ocupado, por favor, tente mais tarde", "Can't read file" : "Não é possível ler o ficheiro", "Application is not enabled" : "A aplicação não está activada", @@ -121,7 +121,6 @@ "Token expired. Please reload page." : "O token expirou. Por favor recarregue a página.", "Unknown user" : "Utilizador desconhecido", "No database drivers (sqlite, mysql, or postgresql) installed." : "Nenhuma base de dados de drivers (sqlite, mysql, or postgresql) instaladas.", - "Microsoft Windows Platform is not supported" : "A plataforma Microsoft Windows não é suportada", "Cannot write into \"config\" directory" : "Não é possível escrever na directoria \"configurar\"", "Cannot write into \"apps\" directory" : "Não é possivel escrever na directoria \"aplicações\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Isto pode ser normalmente resolvido %sdando ao servidor web direito de escrita para o directório de aplicação%s ou desactivando a loja de aplicações no ficheiro de configuração.", @@ -154,6 +153,7 @@ "Storage incomplete configuration. %s" : "Configuração incompleta do armazenamento. %s", "Storage connection error. %s" : "Erro de ligação ao armazenamento. %s", "Storage not available" : "Armazenamento indisposinvel", - "Storage connection timeout. %s" : "Tempo de ligação ao armazenamento expirou. %s" + "Storage connection timeout. %s" : "Tempo de ligação ao armazenamento expirou. %s", + "Microsoft Windows Platform is not supported" : "A plataforma Microsoft Windows não é suportada" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/lib/l10n/ru.js b/lib/l10n/ru.js index 3d7c7e587c1..256032f17f8 100644 --- a/lib/l10n/ru.js +++ b/lib/l10n/ru.js @@ -130,9 +130,9 @@ OC.L10N.register( "Recommended" : "Рекомендовано", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Приложение \"%s\" не может быть установлено, так как файл с информацией о приложении не может быть прочтен.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Приложение \"%s\" не может быть установлено, потому что оно несовместимо с этой версией сервера", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Приложение \"%s\" не может быть установлено, так как следующие зависимости не выполнены: %s", "No app name specified" : "Не указано имя приложения", "App '%s' could not be installed!" : "Приложение '%s' не может быть установлено!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Приложение \"%s\" не может быть установлено, так как следующие зависимости не выполнены: %s", "a safe home for all your data" : "надежный дом для ваших файлов", "File is currently busy, please try again later" : "Файл в данный момент используется, повторите попытку позже.", "Can't read file" : "Не удается прочитать файл", @@ -141,8 +141,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Токен просрочен. Перезагрузите страницу.", "Unknown user" : "Неизвестный пользователь", "No database drivers (sqlite, mysql, or postgresql) installed." : "Не установлены драйвера баз данных (sqlite, mysql или postgresql)", - "Microsoft Windows Platform is not supported" : "Платформа Microsoft Windows не поддерживается", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Работа Nextcloud Server на платформе Microsoft Windows не поддерживается. Мы рекомендуем использовать Linux в качестве виртуальный машины, если у вас нет возможности перевести сам сервер.", "Cannot write into \"config\" directory" : "Запись в каталог \"config\" невозможна", "Cannot write into \"apps\" directory" : "Запись в каталог \"app\" невозможна", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Обычно это можно исправить, %sпредоставив веб-серверу права на запись в каталог приложений%s или отключив магазин приложений в файле конфигурации.", @@ -175,8 +173,10 @@ OC.L10N.register( "Storage unauthorized. %s" : "Хранилище неавторизовано. %s", "Storage incomplete configuration. %s" : "Неполная конфигурация хранилища. %s", "Storage connection error. %s" : "Ошибка подключения к хранилищу. %s", - "Storage not available" : "Хранилище недоступно", "Storage connection timeout. %s" : "Истекло время ожидания подключения к хранилищу. %s", + "Microsoft Windows Platform is not supported" : "Платформа Microsoft Windows не поддерживается", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Работа Nextcloud Server на платформе Microsoft Windows не поддерживается. Мы рекомендуем использовать Linux в качестве виртуальный машины, если у вас нет возможности перевести сам сервер.", + "Storage not available" : "Хранилище недоступно", "ownCloud %s or higher is required." : "Требуется NextCloud версии %s или выше.", "ownCloud %s or lower is required." : "Требуется NextCloud версии %s или ниже.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "Приложение \"%s\" не может быть установлено, так как оно несовместимо с этой версией Nextcloud.", diff --git a/lib/l10n/ru.json b/lib/l10n/ru.json index 1acc4c4ad57..ca3f76640c8 100644 --- a/lib/l10n/ru.json +++ b/lib/l10n/ru.json @@ -128,9 +128,9 @@ "Recommended" : "Рекомендовано", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Приложение \"%s\" не может быть установлено, так как файл с информацией о приложении не может быть прочтен.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Приложение \"%s\" не может быть установлено, потому что оно несовместимо с этой версией сервера", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Приложение \"%s\" не может быть установлено, так как следующие зависимости не выполнены: %s", "No app name specified" : "Не указано имя приложения", "App '%s' could not be installed!" : "Приложение '%s' не может быть установлено!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Приложение \"%s\" не может быть установлено, так как следующие зависимости не выполнены: %s", "a safe home for all your data" : "надежный дом для ваших файлов", "File is currently busy, please try again later" : "Файл в данный момент используется, повторите попытку позже.", "Can't read file" : "Не удается прочитать файл", @@ -139,8 +139,6 @@ "Token expired. Please reload page." : "Токен просрочен. Перезагрузите страницу.", "Unknown user" : "Неизвестный пользователь", "No database drivers (sqlite, mysql, or postgresql) installed." : "Не установлены драйвера баз данных (sqlite, mysql или postgresql)", - "Microsoft Windows Platform is not supported" : "Платформа Microsoft Windows не поддерживается", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Работа Nextcloud Server на платформе Microsoft Windows не поддерживается. Мы рекомендуем использовать Linux в качестве виртуальный машины, если у вас нет возможности перевести сам сервер.", "Cannot write into \"config\" directory" : "Запись в каталог \"config\" невозможна", "Cannot write into \"apps\" directory" : "Запись в каталог \"app\" невозможна", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Обычно это можно исправить, %sпредоставив веб-серверу права на запись в каталог приложений%s или отключив магазин приложений в файле конфигурации.", @@ -173,8 +171,10 @@ "Storage unauthorized. %s" : "Хранилище неавторизовано. %s", "Storage incomplete configuration. %s" : "Неполная конфигурация хранилища. %s", "Storage connection error. %s" : "Ошибка подключения к хранилищу. %s", - "Storage not available" : "Хранилище недоступно", "Storage connection timeout. %s" : "Истекло время ожидания подключения к хранилищу. %s", + "Microsoft Windows Platform is not supported" : "Платформа Microsoft Windows не поддерживается", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Работа Nextcloud Server на платформе Microsoft Windows не поддерживается. Мы рекомендуем использовать Linux в качестве виртуальный машины, если у вас нет возможности перевести сам сервер.", + "Storage not available" : "Хранилище недоступно", "ownCloud %s or higher is required." : "Требуется NextCloud версии %s или выше.", "ownCloud %s or lower is required." : "Требуется NextCloud версии %s или ниже.", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "Приложение \"%s\" не может быть установлено, так как оно несовместимо с этой версией Nextcloud.", diff --git a/lib/l10n/sl.js b/lib/l10n/sl.js index f8cea9260b1..2a88525d941 100644 --- a/lib/l10n/sl.js +++ b/lib/l10n/sl.js @@ -121,8 +121,8 @@ OC.L10N.register( "Recommended" : "Priporočljivo", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Programa \\\"%s\\\" ni mogoče namestiti, ker ni mogoče brati datoteke appinfo.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Aplikacije \"%s\" ni mogoče namestiti, ker ni združljiva s trenutno verzijo strežnika", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Programa \"%s\" ni mogoče namestiti zaradi nerešenih odvisnosti: %s", "No app name specified" : "Ni podanega imena programa", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Programa \"%s\" ni mogoče namestiti zaradi nerešenih odvisnosti: %s", "a safe home for all your data" : "varen dom za vse vaše podatke", "File is currently busy, please try again later" : "Datoteka je trenutno v uporabi. Poskusite znova kasneje.", "Can't read file" : "Datoteke ni mogoče prebrati.", @@ -131,8 +131,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Žeton je potekel. Stran je treba ponovno naložiti.", "Unknown user" : "Neznan uporabnik", "No database drivers (sqlite, mysql, or postgresql) installed." : "Ni nameščenih programnikov podatkovnih zbirk (sqlite, mysql, ali postgresql).", - "Microsoft Windows Platform is not supported" : "Okolje Microsoft Windows ni podprto.", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Nameščanje Nextcloud strežnika na Microsoft Windows platformi ni podprto. priporočamo uporabo Linux strežnika v virtualnem okolju, če nimate druge možnosti za selitev samega strežnika.", "Cannot write into \"config\" directory" : "Mapa 'config' nima nastavljenih ustreznih dovoljenj za pisanje!", "Cannot write into \"apps\" directory" : "Mapa \"apps\" nima nastavljenih ustreznih dovoljenj za pisanje!", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Napako je mogoče odpraviti z dodelitvijo dovoljenja spletnemu strežniku %s za pisanje v mapo programov %s, ali pa z onemogočanjem nameščanja programov v nastavitveni datoteki.", @@ -166,6 +164,8 @@ OC.L10N.register( "Storage incomplete configuration. %s" : "Nepopolna nastavitev shrambe. %s", "Storage connection error. %s" : "Napaka povezave do shrambe. %s", "Storage not available" : "Shramba ni na voljo", - "Storage connection timeout. %s" : "Povezava do shrambe je časovno potekla. %s" + "Storage connection timeout. %s" : "Povezava do shrambe je časovno potekla. %s", + "Microsoft Windows Platform is not supported" : "Okolje Microsoft Windows ni podprto.", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Nameščanje Nextcloud strežnika na Microsoft Windows platformi ni podprto. priporočamo uporabo Linux strežnika v virtualnem okolju, če nimate druge možnosti za selitev samega strežnika." }, "nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"); diff --git a/lib/l10n/sl.json b/lib/l10n/sl.json index 92fd03e596c..a2ef19d3701 100644 --- a/lib/l10n/sl.json +++ b/lib/l10n/sl.json @@ -119,8 +119,8 @@ "Recommended" : "Priporočljivo", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Programa \\\"%s\\\" ni mogoče namestiti, ker ni mogoče brati datoteke appinfo.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Aplikacije \"%s\" ni mogoče namestiti, ker ni združljiva s trenutno verzijo strežnika", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Programa \"%s\" ni mogoče namestiti zaradi nerešenih odvisnosti: %s", "No app name specified" : "Ni podanega imena programa", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Programa \"%s\" ni mogoče namestiti zaradi nerešenih odvisnosti: %s", "a safe home for all your data" : "varen dom za vse vaše podatke", "File is currently busy, please try again later" : "Datoteka je trenutno v uporabi. Poskusite znova kasneje.", "Can't read file" : "Datoteke ni mogoče prebrati.", @@ -129,8 +129,6 @@ "Token expired. Please reload page." : "Žeton je potekel. Stran je treba ponovno naložiti.", "Unknown user" : "Neznan uporabnik", "No database drivers (sqlite, mysql, or postgresql) installed." : "Ni nameščenih programnikov podatkovnih zbirk (sqlite, mysql, ali postgresql).", - "Microsoft Windows Platform is not supported" : "Okolje Microsoft Windows ni podprto.", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Nameščanje Nextcloud strežnika na Microsoft Windows platformi ni podprto. priporočamo uporabo Linux strežnika v virtualnem okolju, če nimate druge možnosti za selitev samega strežnika.", "Cannot write into \"config\" directory" : "Mapa 'config' nima nastavljenih ustreznih dovoljenj za pisanje!", "Cannot write into \"apps\" directory" : "Mapa \"apps\" nima nastavljenih ustreznih dovoljenj za pisanje!", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Napako je mogoče odpraviti z dodelitvijo dovoljenja spletnemu strežniku %s za pisanje v mapo programov %s, ali pa z onemogočanjem nameščanja programov v nastavitveni datoteki.", @@ -164,6 +162,8 @@ "Storage incomplete configuration. %s" : "Nepopolna nastavitev shrambe. %s", "Storage connection error. %s" : "Napaka povezave do shrambe. %s", "Storage not available" : "Shramba ni na voljo", - "Storage connection timeout. %s" : "Povezava do shrambe je časovno potekla. %s" + "Storage connection timeout. %s" : "Povezava do shrambe je časovno potekla. %s", + "Microsoft Windows Platform is not supported" : "Okolje Microsoft Windows ni podprto.", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Nameščanje Nextcloud strežnika na Microsoft Windows platformi ni podprto. priporočamo uporabo Linux strežnika v virtualnem okolju, če nimate druge možnosti za selitev samega strežnika." },"pluralForm" :"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);" }
\ No newline at end of file diff --git a/lib/l10n/sq.js b/lib/l10n/sq.js index c578d2adcd8..804a430c663 100644 --- a/lib/l10n/sq.js +++ b/lib/l10n/sq.js @@ -117,8 +117,8 @@ OC.L10N.register( "Admin" : "Admin", "Recommended" : "E rekomanduar", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Aplikacioni \"%s\" s’mund të instalohet, ngaqë s’lexohet dot kartela appinfo.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Përditësimi \"%s\" s’instalohet dot, ngaqë s’plotësohen varësitë vijuese: %s.", "No app name specified" : "S’u dha emër aplikacioni", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Përditësimi \"%s\" s’instalohet dot, ngaqë s’plotësohen varësitë vijuese: %s.", "File is currently busy, please try again later" : "Kartela tani është e zënë, ju lutemi, riprovoni më vonë.", "Can't read file" : "S'lexohet dot kartela", "Application is not enabled" : "Aplikacioni s’është aktivizuar", @@ -126,7 +126,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Token-i ka skaduar. Ju lutemi, ringarkoni faqen.", "Unknown user" : "Përdorues i panjohur", "No database drivers (sqlite, mysql, or postgresql) installed." : "S’ka baza të dhënash (sqlite, mysql, ose postgresql) të instaluara.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform nuk mbulohet", "Cannot write into \"config\" directory" : "S’shkruhet dot te drejtoria \"config\"", "Cannot write into \"apps\" directory" : "S’shkruhet dot te drejtoria \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Zakonisht kjo mund të ndreqet duke %si akorduar shërbyesit web të drejta shkrimi mbi drejtorinë e aplikacionit%s ose duke e çaktivizuar appstore-in te kartela e formësimit.", @@ -159,6 +158,7 @@ OC.L10N.register( "Storage incomplete configuration. %s" : "Formësim jo i plotë i depozitës. %s", "Storage connection error. %s" : "Gabim lidhje te depozita. %s", "Storage not available" : "Pa depozitë gati", - "Storage connection timeout. %s" : "Mbarim kohe lidhjeje për depozitën. %s" + "Storage connection timeout. %s" : "Mbarim kohe lidhjeje për depozitën. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform nuk mbulohet" }, "nplurals=2; plural=(n != 1);"); diff --git a/lib/l10n/sq.json b/lib/l10n/sq.json index 3aed1a067fa..dca2f780ad7 100644 --- a/lib/l10n/sq.json +++ b/lib/l10n/sq.json @@ -115,8 +115,8 @@ "Admin" : "Admin", "Recommended" : "E rekomanduar", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Aplikacioni \"%s\" s’mund të instalohet, ngaqë s’lexohet dot kartela appinfo.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Përditësimi \"%s\" s’instalohet dot, ngaqë s’plotësohen varësitë vijuese: %s.", "No app name specified" : "S’u dha emër aplikacioni", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Përditësimi \"%s\" s’instalohet dot, ngaqë s’plotësohen varësitë vijuese: %s.", "File is currently busy, please try again later" : "Kartela tani është e zënë, ju lutemi, riprovoni më vonë.", "Can't read file" : "S'lexohet dot kartela", "Application is not enabled" : "Aplikacioni s’është aktivizuar", @@ -124,7 +124,6 @@ "Token expired. Please reload page." : "Token-i ka skaduar. Ju lutemi, ringarkoni faqen.", "Unknown user" : "Përdorues i panjohur", "No database drivers (sqlite, mysql, or postgresql) installed." : "S’ka baza të dhënash (sqlite, mysql, ose postgresql) të instaluara.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform nuk mbulohet", "Cannot write into \"config\" directory" : "S’shkruhet dot te drejtoria \"config\"", "Cannot write into \"apps\" directory" : "S’shkruhet dot te drejtoria \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Zakonisht kjo mund të ndreqet duke %si akorduar shërbyesit web të drejta shkrimi mbi drejtorinë e aplikacionit%s ose duke e çaktivizuar appstore-in te kartela e formësimit.", @@ -157,6 +156,7 @@ "Storage incomplete configuration. %s" : "Formësim jo i plotë i depozitës. %s", "Storage connection error. %s" : "Gabim lidhje te depozita. %s", "Storage not available" : "Pa depozitë gati", - "Storage connection timeout. %s" : "Mbarim kohe lidhjeje për depozitën. %s" + "Storage connection timeout. %s" : "Mbarim kohe lidhjeje për depozitën. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows Platform nuk mbulohet" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/lib/l10n/th_TH.js b/lib/l10n/th_TH.js index 3c2b6f5eecc..eb31734a3df 100644 --- a/lib/l10n/th_TH.js +++ b/lib/l10n/th_TH.js @@ -114,8 +114,8 @@ OC.L10N.register( "Admin" : "ผู้ดูแล", "Recommended" : "แนะนำ", "App \"%s\" cannot be installed because appinfo file cannot be read." : "แอพฯ \"%s\" ไม่สามารถติดตั้งได้เพราะไฟล์ appInfo ไม่สามารถอ่านได้", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "แอพฯ \"%s\" ไม่สามารถติดตั้งเพราะไม่ได้ปฏิบัติตามการอ้างอิงต่อไปนี้: %s", "No app name specified" : "ไม่ได้ระบุชื่อแอพพลิเคชัน", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "แอพฯ \"%s\" ไม่สามารถติดตั้งเพราะไม่ได้ปฏิบัติตามการอ้างอิงต่อไปนี้: %s", "File is currently busy, please try again later" : "ขณะนี้ไฟล์กำลังใช้งานอยู่ โปรดลองอีกครั้งในภายหลัง", "Can't read file" : "ไม่สามารถอ่านไฟล์", "Application is not enabled" : "แอพพลิเคชั่นดังกล่าวยังไม่ได้เปิดใช้งาน", @@ -123,7 +123,6 @@ OC.L10N.register( "Token expired. Please reload page." : "รหัสยืนยันความถูกต้องหมดอายุแล้ว กรุณาโหลดหน้าเว็บใหม่อีกครั้ง", "Unknown user" : "ไม่รู้จักผู้ใช้", "No database drivers (sqlite, mysql, or postgresql) installed." : "ไม่มีไดรเวอร์ฐานข้อมูล (sqlite, mysql, or postgresql) ที่ถูกติดตั้ง", - "Microsoft Windows Platform is not supported" : "ไม่สนับสนุนแพลตฟอร์ม Microsoft Windows", "Cannot write into \"config\" directory" : "ไม่สามารถเขียนลงในไดเรกทอรี \"การตั้งค่า\"", "Cannot write into \"apps\" directory" : "ไม่สามารถเขียนลงในไดเรกทอรี \"แอพฯ\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "นี้มักจะสามารถแก้ไขโดย %s ให้เข้าถึงการเขียนเว็บเซิร์ฟเวอร์ไปยังไดเรกทอรีแอพพลิเคชัน %s หรือปิดการใช้ AppStore ในไฟล์ config", @@ -154,6 +153,7 @@ OC.L10N.register( "Storage incomplete configuration. %s" : "การตั้งค่าการจัดเก็บข้อมูลไม่สำเร็จ %s", "Storage connection error. %s" : "ข้อผิดพลาดการเชื่อมต่อพื้นที่จัดเก็บข้อมูล %s", "Storage not available" : "ไม่สามารถใช้พื้นที่จัดเก็บข้อมูลได้", - "Storage connection timeout. %s" : "หมดเวลาการเชื่อมต่อพื้นที่จัดเก็บข้อมูล %s" + "Storage connection timeout. %s" : "หมดเวลาการเชื่อมต่อพื้นที่จัดเก็บข้อมูล %s", + "Microsoft Windows Platform is not supported" : "ไม่สนับสนุนแพลตฟอร์ม Microsoft Windows" }, "nplurals=1; plural=0;"); diff --git a/lib/l10n/th_TH.json b/lib/l10n/th_TH.json index 699a85955ca..a1558cb3a4a 100644 --- a/lib/l10n/th_TH.json +++ b/lib/l10n/th_TH.json @@ -112,8 +112,8 @@ "Admin" : "ผู้ดูแล", "Recommended" : "แนะนำ", "App \"%s\" cannot be installed because appinfo file cannot be read." : "แอพฯ \"%s\" ไม่สามารถติดตั้งได้เพราะไฟล์ appInfo ไม่สามารถอ่านได้", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "แอพฯ \"%s\" ไม่สามารถติดตั้งเพราะไม่ได้ปฏิบัติตามการอ้างอิงต่อไปนี้: %s", "No app name specified" : "ไม่ได้ระบุชื่อแอพพลิเคชัน", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "แอพฯ \"%s\" ไม่สามารถติดตั้งเพราะไม่ได้ปฏิบัติตามการอ้างอิงต่อไปนี้: %s", "File is currently busy, please try again later" : "ขณะนี้ไฟล์กำลังใช้งานอยู่ โปรดลองอีกครั้งในภายหลัง", "Can't read file" : "ไม่สามารถอ่านไฟล์", "Application is not enabled" : "แอพพลิเคชั่นดังกล่าวยังไม่ได้เปิดใช้งาน", @@ -121,7 +121,6 @@ "Token expired. Please reload page." : "รหัสยืนยันความถูกต้องหมดอายุแล้ว กรุณาโหลดหน้าเว็บใหม่อีกครั้ง", "Unknown user" : "ไม่รู้จักผู้ใช้", "No database drivers (sqlite, mysql, or postgresql) installed." : "ไม่มีไดรเวอร์ฐานข้อมูล (sqlite, mysql, or postgresql) ที่ถูกติดตั้ง", - "Microsoft Windows Platform is not supported" : "ไม่สนับสนุนแพลตฟอร์ม Microsoft Windows", "Cannot write into \"config\" directory" : "ไม่สามารถเขียนลงในไดเรกทอรี \"การตั้งค่า\"", "Cannot write into \"apps\" directory" : "ไม่สามารถเขียนลงในไดเรกทอรี \"แอพฯ\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "นี้มักจะสามารถแก้ไขโดย %s ให้เข้าถึงการเขียนเว็บเซิร์ฟเวอร์ไปยังไดเรกทอรีแอพพลิเคชัน %s หรือปิดการใช้ AppStore ในไฟล์ config", @@ -152,6 +151,7 @@ "Storage incomplete configuration. %s" : "การตั้งค่าการจัดเก็บข้อมูลไม่สำเร็จ %s", "Storage connection error. %s" : "ข้อผิดพลาดการเชื่อมต่อพื้นที่จัดเก็บข้อมูล %s", "Storage not available" : "ไม่สามารถใช้พื้นที่จัดเก็บข้อมูลได้", - "Storage connection timeout. %s" : "หมดเวลาการเชื่อมต่อพื้นที่จัดเก็บข้อมูล %s" + "Storage connection timeout. %s" : "หมดเวลาการเชื่อมต่อพื้นที่จัดเก็บข้อมูล %s", + "Microsoft Windows Platform is not supported" : "ไม่สนับสนุนแพลตฟอร์ม Microsoft Windows" },"pluralForm" :"nplurals=1; plural=0;" }
\ No newline at end of file diff --git a/lib/l10n/tr.js b/lib/l10n/tr.js index 8697ebc8bdb..d73aa6d642b 100644 --- a/lib/l10n/tr.js +++ b/lib/l10n/tr.js @@ -122,9 +122,9 @@ OC.L10N.register( "Recommended" : "Önerilen", "App \"%s\" cannot be installed because appinfo file cannot be read." : "\"%s\" uygulaması yüklenemiyor çünkü appinfo dosyası okunamıyor.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Sunucu sürümüyle uyumlu olmadığından \"%s\" uygulaması yüklenemez.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "\"%s\" uygulaması, şu bağımlılıklar sağlanmadığı için yüklenemiyor: %s", "No app name specified" : "Uygulama adı belirtilmedi", "App '%s' could not be installed!" : "'%s' uygulaması kurulamadı!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "\"%s\" uygulaması, şu bağımlılıklar sağlanmadığı için yüklenemiyor: %s", "a safe home for all your data" : "tüm verileriniz için güvenli bir yer", "File is currently busy, please try again later" : "Dosya şu anda meşgul, lütfen daha sonra deneyin", "Can't read file" : "Dosya okunamıyor", @@ -133,8 +133,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Belirteç süresi geçti. Lütfen sayfayı yenileyin.", "Unknown user" : "Bilinmeyen kullanıcı", "No database drivers (sqlite, mysql, or postgresql) installed." : "Yüklü veritabanı sürücüsü (sqlite, mysql veya postgresql) yok.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows Platformu desteklenmiyor", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Nextcloud Sunucusunu Microsoft Windows platformunda çalıştırmak desteklenmiyor. Sunucunun kendisini değiştiremiyorsanız üzerinde bir Linux sanal makine kullanmanızı öneririz.", "Cannot write into \"config\" directory" : "\"config\" dizinine yazılamıyor", "Cannot write into \"apps\" directory" : "\"apps\" dizinine yazılamıyor", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Bu genellikle, %sweb sunucusuna apps dizinine yazma erişimi verilerek%s veya yapılandırma dosyasında appstore (uygulama mağazası) devre dışı bırakılarak çözülebilir.", @@ -168,6 +166,8 @@ OC.L10N.register( "Storage incomplete configuration. %s" : "Depolamada tamamlanmamış yapılandırma. %s", "Storage connection error. %s" : "Depolama bağlantı hatası. %s", "Storage not available" : "Depolama mevcut değil", - "Storage connection timeout. %s" : "Depolama bağlantı zaman aşımı. %s" + "Storage connection timeout. %s" : "Depolama bağlantı zaman aşımı. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows Platformu desteklenmiyor", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Nextcloud Sunucusunu Microsoft Windows platformunda çalıştırmak desteklenmiyor. Sunucunun kendisini değiştiremiyorsanız üzerinde bir Linux sanal makine kullanmanızı öneririz." }, "nplurals=2; plural=(n > 1);"); diff --git a/lib/l10n/tr.json b/lib/l10n/tr.json index 1ab48d38080..fda97aee039 100644 --- a/lib/l10n/tr.json +++ b/lib/l10n/tr.json @@ -120,9 +120,9 @@ "Recommended" : "Önerilen", "App \"%s\" cannot be installed because appinfo file cannot be read." : "\"%s\" uygulaması yüklenemiyor çünkü appinfo dosyası okunamıyor.", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Sunucu sürümüyle uyumlu olmadığından \"%s\" uygulaması yüklenemez.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "\"%s\" uygulaması, şu bağımlılıklar sağlanmadığı için yüklenemiyor: %s", "No app name specified" : "Uygulama adı belirtilmedi", "App '%s' could not be installed!" : "'%s' uygulaması kurulamadı!", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "\"%s\" uygulaması, şu bağımlılıklar sağlanmadığı için yüklenemiyor: %s", "a safe home for all your data" : "tüm verileriniz için güvenli bir yer", "File is currently busy, please try again later" : "Dosya şu anda meşgul, lütfen daha sonra deneyin", "Can't read file" : "Dosya okunamıyor", @@ -131,8 +131,6 @@ "Token expired. Please reload page." : "Belirteç süresi geçti. Lütfen sayfayı yenileyin.", "Unknown user" : "Bilinmeyen kullanıcı", "No database drivers (sqlite, mysql, or postgresql) installed." : "Yüklü veritabanı sürücüsü (sqlite, mysql veya postgresql) yok.", - "Microsoft Windows Platform is not supported" : "Microsoft Windows Platformu desteklenmiyor", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Nextcloud Sunucusunu Microsoft Windows platformunda çalıştırmak desteklenmiyor. Sunucunun kendisini değiştiremiyorsanız üzerinde bir Linux sanal makine kullanmanızı öneririz.", "Cannot write into \"config\" directory" : "\"config\" dizinine yazılamıyor", "Cannot write into \"apps\" directory" : "\"apps\" dizinine yazılamıyor", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Bu genellikle, %sweb sunucusuna apps dizinine yazma erişimi verilerek%s veya yapılandırma dosyasında appstore (uygulama mağazası) devre dışı bırakılarak çözülebilir.", @@ -166,6 +164,8 @@ "Storage incomplete configuration. %s" : "Depolamada tamamlanmamış yapılandırma. %s", "Storage connection error. %s" : "Depolama bağlantı hatası. %s", "Storage not available" : "Depolama mevcut değil", - "Storage connection timeout. %s" : "Depolama bağlantı zaman aşımı. %s" + "Storage connection timeout. %s" : "Depolama bağlantı zaman aşımı. %s", + "Microsoft Windows Platform is not supported" : "Microsoft Windows Platformu desteklenmiyor", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "Nextcloud Sunucusunu Microsoft Windows platformunda çalıştırmak desteklenmiyor. Sunucunun kendisini değiştiremiyorsanız üzerinde bir Linux sanal makine kullanmanızı öneririz." },"pluralForm" :"nplurals=2; plural=(n > 1);" }
\ No newline at end of file diff --git a/lib/l10n/uk.js b/lib/l10n/uk.js index 35da015ae78..e88c6d32072 100644 --- a/lib/l10n/uk.js +++ b/lib/l10n/uk.js @@ -112,8 +112,8 @@ OC.L10N.register( "Admin" : "Адмін", "Recommended" : "Рекомендуємо", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Додаток \"%s\" не може бути встановлений через те, що файл appinfo не може бути прочитано.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Додаток \"%s\" не може бути встановлений, так як наступні залежності не виконано: %s", "No app name specified" : "Не вказано ім'я додатку", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Додаток \"%s\" не може бути встановлений, так як наступні залежності не виконано: %s", "File is currently busy, please try again later" : "Файл на разі зайнятий, будь ласка, спробуйте пізніше", "Can't read file" : "Не можливо прочитати файл", "Application is not enabled" : "Додаток не увімкнений", @@ -121,7 +121,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Строк дії токена скінчився. Будь ласка, перезавантажте сторінку.", "Unknown user" : "Невідомий користувач", "No database drivers (sqlite, mysql, or postgresql) installed." : "Не встановлено драйвер бази даних (sqlite, mysql, or postgresql).", - "Microsoft Windows Platform is not supported" : "Платформа Microsoft Windows не підтримується", "Cannot write into \"config\" directory" : "Не можу писати у теку \"config\"", "Cannot write into \"apps\" directory" : "Не можу писати у теку \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Зазвичай це можна виправити, %s надавши веб-серверу права на запис в каталог додатків %s або відключивши сховище програм у файлі конфігурації.", @@ -154,6 +153,7 @@ OC.L10N.register( "Storage incomplete configuration. %s" : "Неповна конфігурація сховища. %s", "Storage connection error. %s" : "Помилка з'єднання зі сховищем. %s", "Storage not available" : "Сховище не доступне", - "Storage connection timeout. %s" : "Час під'єднання до сховища вичерпався. %s" + "Storage connection timeout. %s" : "Час під'єднання до сховища вичерпався. %s", + "Microsoft Windows Platform is not supported" : "Платформа Microsoft Windows не підтримується" }, "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"); diff --git a/lib/l10n/uk.json b/lib/l10n/uk.json index 3c55c1b636e..968dbe23e0b 100644 --- a/lib/l10n/uk.json +++ b/lib/l10n/uk.json @@ -110,8 +110,8 @@ "Admin" : "Адмін", "Recommended" : "Рекомендуємо", "App \"%s\" cannot be installed because appinfo file cannot be read." : "Додаток \"%s\" не може бути встановлений через те, що файл appinfo не може бути прочитано.", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Додаток \"%s\" не може бути встановлений, так як наступні залежності не виконано: %s", "No app name specified" : "Не вказано ім'я додатку", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Додаток \"%s\" не може бути встановлений, так як наступні залежності не виконано: %s", "File is currently busy, please try again later" : "Файл на разі зайнятий, будь ласка, спробуйте пізніше", "Can't read file" : "Не можливо прочитати файл", "Application is not enabled" : "Додаток не увімкнений", @@ -119,7 +119,6 @@ "Token expired. Please reload page." : "Строк дії токена скінчився. Будь ласка, перезавантажте сторінку.", "Unknown user" : "Невідомий користувач", "No database drivers (sqlite, mysql, or postgresql) installed." : "Не встановлено драйвер бази даних (sqlite, mysql, or postgresql).", - "Microsoft Windows Platform is not supported" : "Платформа Microsoft Windows не підтримується", "Cannot write into \"config\" directory" : "Не можу писати у теку \"config\"", "Cannot write into \"apps\" directory" : "Не можу писати у теку \"apps\"", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "Зазвичай це можна виправити, %s надавши веб-серверу права на запис в каталог додатків %s або відключивши сховище програм у файлі конфігурації.", @@ -152,6 +151,7 @@ "Storage incomplete configuration. %s" : "Неповна конфігурація сховища. %s", "Storage connection error. %s" : "Помилка з'єднання зі сховищем. %s", "Storage not available" : "Сховище не доступне", - "Storage connection timeout. %s" : "Час під'єднання до сховища вичерпався. %s" + "Storage connection timeout. %s" : "Час під'єднання до сховища вичерпався. %s", + "Microsoft Windows Platform is not supported" : "Платформа Microsoft Windows не підтримується" },"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" }
\ No newline at end of file diff --git a/lib/l10n/zh_TW.js b/lib/l10n/zh_TW.js index 7b1d79dbcf5..09e78b67be5 100644 --- a/lib/l10n/zh_TW.js +++ b/lib/l10n/zh_TW.js @@ -130,9 +130,9 @@ OC.L10N.register( "Recommended" : "建議", "App \"%s\" cannot be installed because appinfo file cannot be read." : "程式\"%s\"無法安裝,因為無法讀取appinfo檔案。", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "程式\"%s\"無法安裝,因為伺服器版本不符。", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "應用程式 \"%s\" 無法被安裝,下列的相依性並不是完整的: %s", "No app name specified" : "沒有指定應用程式名稱", "App '%s' could not be installed!" : "程式\"%s\"無法安裝。", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "應用程式 \"%s\" 無法被安裝,下列的相依性並不是完整的: %s", "a safe home for all your data" : "您資料的安全屋", "File is currently busy, please try again later" : "檔案目前忙碌中,請稍候再試", "Can't read file" : "無法讀取檔案", @@ -141,8 +141,6 @@ OC.L10N.register( "Token expired. Please reload page." : "Token 過期,請重新整理頁面。", "Unknown user" : "未知的使用者", "No database drivers (sqlite, mysql, or postgresql) installed." : "沒有安裝資料庫驅動程式 (sqlite, mysql, 或 postgresql)", - "Microsoft Windows Platform is not supported" : "不支援微軟Windows系統", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "微軟Windows不支援Nextcloud伺服器,如果您一定要使用,我們建議您在虛擬機中安裝Linux版本伺服器。", "Cannot write into \"config\" directory" : "無法寫入 config 目錄", "Cannot write into \"apps\" directory" : "無法寫入 apps 目錄", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "通常藉由%s開放網頁伺服器對 apps 目錄的權限%s或是在設定檔中關閉 appstore 就可以修正這個問題", @@ -175,8 +173,10 @@ OC.L10N.register( "Storage unauthorized. %s" : "儲存空間未經授權。%s", "Storage incomplete configuration. %s" : "儲存空間配置尚未完成。%s", "Storage connection error. %s" : "儲存空間連線錯誤。%s", - "Storage not available" : "無法存取儲存空間", "Storage connection timeout. %s" : "儲存空間連線逾時。%s", + "Microsoft Windows Platform is not supported" : "不支援微軟Windows系統", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "微軟Windows不支援Nextcloud伺服器,如果您一定要使用,我們建議您在虛擬機中安裝Linux版本伺服器。", + "Storage not available" : "無法存取儲存空間", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "應用程式 \"%s\" 無法安裝,因為與此版本 Nextcloud 不相容", "App can't be installed because it is not compatible with this version of Nextcloud" : "應用程式無法安裝,因為與此版本 Nextcloud 不相容" }, diff --git a/lib/l10n/zh_TW.json b/lib/l10n/zh_TW.json index 586d1ad488a..c7d3b907378 100644 --- a/lib/l10n/zh_TW.json +++ b/lib/l10n/zh_TW.json @@ -128,9 +128,9 @@ "Recommended" : "建議", "App \"%s\" cannot be installed because appinfo file cannot be read." : "程式\"%s\"無法安裝,因為無法讀取appinfo檔案。", "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "程式\"%s\"無法安裝,因為伺服器版本不符。", - "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "應用程式 \"%s\" 無法被安裝,下列的相依性並不是完整的: %s", "No app name specified" : "沒有指定應用程式名稱", "App '%s' could not be installed!" : "程式\"%s\"無法安裝。", + "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "應用程式 \"%s\" 無法被安裝,下列的相依性並不是完整的: %s", "a safe home for all your data" : "您資料的安全屋", "File is currently busy, please try again later" : "檔案目前忙碌中,請稍候再試", "Can't read file" : "無法讀取檔案", @@ -139,8 +139,6 @@ "Token expired. Please reload page." : "Token 過期,請重新整理頁面。", "Unknown user" : "未知的使用者", "No database drivers (sqlite, mysql, or postgresql) installed." : "沒有安裝資料庫驅動程式 (sqlite, mysql, 或 postgresql)", - "Microsoft Windows Platform is not supported" : "不支援微軟Windows系統", - "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "微軟Windows不支援Nextcloud伺服器,如果您一定要使用,我們建議您在虛擬機中安裝Linux版本伺服器。", "Cannot write into \"config\" directory" : "無法寫入 config 目錄", "Cannot write into \"apps\" directory" : "無法寫入 apps 目錄", "This can usually be fixed by %sgiving the webserver write access to the apps directory%s or disabling the appstore in the config file." : "通常藉由%s開放網頁伺服器對 apps 目錄的權限%s或是在設定檔中關閉 appstore 就可以修正這個問題", @@ -173,8 +171,10 @@ "Storage unauthorized. %s" : "儲存空間未經授權。%s", "Storage incomplete configuration. %s" : "儲存空間配置尚未完成。%s", "Storage connection error. %s" : "儲存空間連線錯誤。%s", - "Storage not available" : "無法存取儲存空間", "Storage connection timeout. %s" : "儲存空間連線逾時。%s", + "Microsoft Windows Platform is not supported" : "不支援微軟Windows系統", + "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "微軟Windows不支援Nextcloud伺服器,如果您一定要使用,我們建議您在虛擬機中安裝Linux版本伺服器。", + "Storage not available" : "無法存取儲存空間", "App \"%s\" cannot be installed because it is not compatible with this version of Nextcloud." : "應用程式 \"%s\" 無法安裝,因為與此版本 Nextcloud 不相容", "App can't be installed because it is not compatible with this version of Nextcloud" : "應用程式無法安裝,因為與此版本 Nextcloud 不相容" },"pluralForm" :"nplurals=1; plural=0;" diff --git a/lib/private/App/DependencyAnalyzer.php b/lib/private/App/DependencyAnalyzer.php index 7adb5d1c574..67268981e99 100644 --- a/lib/private/App/DependencyAnalyzer.php +++ b/lib/private/App/DependencyAnalyzer.php @@ -197,6 +197,9 @@ class DependencyAnalyzer { if (!is_array($commands)) { $commands = array($commands); } + if (isset($commands['@value'])) { + $commands = [$commands]; + } $os = $this->platform->getOS(); foreach ($commands as $command) { if (isset($command['@attributes']['os']) && $command['@attributes']['os'] !== $os) { @@ -224,6 +227,9 @@ class DependencyAnalyzer { if (!is_array($libs)) { $libs = array($libs); } + if (isset($libs['@value'])) { + $libs = [$libs]; + } foreach ($libs as $lib) { $libName = $this->getValue($lib); $libVersion = $this->platform->getLibraryVersion($libName); diff --git a/lib/private/AppFramework/Db/Db.php b/lib/private/AppFramework/Db/Db.php index 5fea09747af..450549ffdbb 100644 --- a/lib/private/AppFramework/Db/Db.php +++ b/lib/private/AppFramework/Db/Db.php @@ -31,6 +31,7 @@ use OCP\DB\QueryBuilder\IQueryBuilder; use OCP\IDb; use OCP\IDBConnection; use OCP\PreConditionNotMetException; +use Doctrine\DBAL\Platforms\MySqlPlatform; /** * @deprecated use IDBConnection directly, will be removed in ownCloud 10 @@ -300,4 +301,14 @@ class Db implements IDb { public function escapeLikeParameter($param) { return $this->connection->escapeLikeParameter($param); } + + /** + * Check whether or not the current database support 4byte wide unicode + * + * @return bool + * @since 9.2.0 + */ + public function supports4ByteText() { + return $this->connection->supports4ByteText(); + } } diff --git a/lib/private/AppFramework/DependencyInjection/DIContainer.php b/lib/private/AppFramework/DependencyInjection/DIContainer.php index b2fdf86d9c2..671093ff08b 100644 --- a/lib/private/AppFramework/DependencyInjection/DIContainer.php +++ b/lib/private/AppFramework/DependencyInjection/DIContainer.php @@ -385,7 +385,9 @@ class DIContainer extends SimpleContainer implements IAppContainer { $c['AppName'], $app->isLoggedIn(), $app->isAdminUser(), - $app->getServer()->getContentSecurityPolicyManager() + $app->getServer()->getContentSecurityPolicyManager(), + $app->getServer()->getCsrfTokenManager(), + $app->getServer()->getContentSecurityPolicyNonceManager() ); }); diff --git a/lib/private/AppFramework/Http/Request.php b/lib/private/AppFramework/Http/Request.php index ba8a48381bd..c7a3be163fe 100644 --- a/lib/private/AppFramework/Http/Request.php +++ b/lib/private/AppFramework/Http/Request.php @@ -61,7 +61,7 @@ class Request implements \ArrayAccess, \Countable, IRequest { // Firefox User Agent from https://developer.mozilla.org/en-US/docs/Web/HTTP/Gecko_user_agent_string_reference const USER_AGENT_FIREFOX = '/^Mozilla\/5\.0 \([^)]+\) Gecko\/[0-9.]+ Firefox\/[0-9.]+$/'; // Chrome User Agent from https://developer.chrome.com/multidevice/user-agent - const USER_AGENT_CHROME = '/^Mozilla\/5\.0 \([^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\) Chrome\/[0-9.]+ (Mobile Safari|Safari)\/[0-9.]+$/'; + const USER_AGENT_CHROME = '/^Mozilla\/5\.0 \([^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\)( Ubuntu Chromium\/[0-9.]+|) Chrome\/[0-9.]+ (Mobile Safari|Safari)\/[0-9.]+$/'; // Safari User Agent from http://www.useragentstring.com/pages/Safari/ const USER_AGENT_SAFARI = '/^Mozilla\/5\.0 \([^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\) Version\/[0-9.]+ Safari\/[0-9.A-Z]+$/'; // Android Chrome user agent: https://developers.google.com/chrome/mobile/docs/user-agent diff --git a/lib/private/AppFramework/Middleware/Security/SecurityMiddleware.php b/lib/private/AppFramework/Middleware/Security/SecurityMiddleware.php index 5e253d0954a..183e55740ea 100644 --- a/lib/private/AppFramework/Middleware/Security/SecurityMiddleware.php +++ b/lib/private/AppFramework/Middleware/Security/SecurityMiddleware.php @@ -36,6 +36,8 @@ use OC\AppFramework\Middleware\Security\Exceptions\NotLoggedInException; use OC\AppFramework\Middleware\Security\Exceptions\StrictCookieMissingException; use OC\AppFramework\Utility\ControllerMethodReflector; use OC\Security\CSP\ContentSecurityPolicyManager; +use OC\Security\CSP\ContentSecurityPolicyNonceManager; +use OC\Security\CSRF\CsrfTokenManager; use OCP\AppFramework\Http\ContentSecurityPolicy; use OCP\AppFramework\Http\EmptyContentSecurityPolicy; use OCP\AppFramework\Http\RedirectResponse; @@ -77,6 +79,10 @@ class SecurityMiddleware extends Middleware { private $isAdminUser; /** @var ContentSecurityPolicyManager */ private $contentSecurityPolicyManager; + /** @var CsrfTokenManager */ + private $csrfTokenManager; + /** @var ContentSecurityPolicyNonceManager */ + private $cspNonceManager; /** * @param IRequest $request @@ -88,6 +94,8 @@ class SecurityMiddleware extends Middleware { * @param bool $isLoggedIn * @param bool $isAdminUser * @param ContentSecurityPolicyManager $contentSecurityPolicyManager + * @param CSRFTokenManager $csrfTokenManager + * @param ContentSecurityPolicyNonceManager $cspNonceManager */ public function __construct(IRequest $request, ControllerMethodReflector $reflector, @@ -97,7 +105,9 @@ class SecurityMiddleware extends Middleware { $appName, $isLoggedIn, $isAdminUser, - ContentSecurityPolicyManager $contentSecurityPolicyManager) { + ContentSecurityPolicyManager $contentSecurityPolicyManager, + CsrfTokenManager $csrfTokenManager, + ContentSecurityPolicyNonceManager $cspNonceManager) { $this->navigationManager = $navigationManager; $this->request = $request; $this->reflector = $reflector; @@ -107,6 +117,8 @@ class SecurityMiddleware extends Middleware { $this->isLoggedIn = $isLoggedIn; $this->isAdminUser = $isAdminUser; $this->contentSecurityPolicyManager = $contentSecurityPolicyManager; + $this->csrfTokenManager = $csrfTokenManager; + $this->cspNonceManager = $cspNonceManager; } @@ -190,6 +202,10 @@ class SecurityMiddleware extends Middleware { $defaultPolicy = $this->contentSecurityPolicyManager->getDefaultPolicy(); $defaultPolicy = $this->contentSecurityPolicyManager->mergePolicies($defaultPolicy, $policy); + if($this->cspNonceManager->browserSupportsCspV3()) { + $defaultPolicy->useJsNonce($this->csrfTokenManager->getToken()->getEncryptedValue()); + } + $response->setContentSecurityPolicy($defaultPolicy); return $response; diff --git a/lib/private/Avatar.php b/lib/private/Avatar.php index c3a068701df..fc1909c3bda 100644 --- a/lib/private/Avatar.php +++ b/lib/private/Avatar.php @@ -131,7 +131,7 @@ class Avatar implements IAvatar { } if (!($img->height() === $img->width())) { - throw new NotSquareException(); + throw new NotSquareException($this->l->t("Avatar image is not square")); } $this->remove(); diff --git a/lib/private/Comments/Comment.php b/lib/private/Comments/Comment.php index f6f0801c683..b5f063be323 100644 --- a/lib/private/Comments/Comment.php +++ b/lib/private/Comments/Comment.php @@ -204,6 +204,43 @@ class Comment implements IComment { } /** + * returns an array containing mentions that are included in the comment + * + * @return array each mention provides a 'type' and an 'id', see example below + * @since 9.2.0 + * + * The return array looks like: + * [ + * [ + * 'type' => 'user', + * 'id' => 'citizen4' + * ], + * [ + * 'type' => 'group', + * 'id' => 'media' + * ], + * … + * ] + * + */ + public function getMentions() { + $ok = preg_match_all('/\B@[a-z0-9_\-@\.\']+/i', $this->getMessage(), $mentions); + if(!$ok || !isset($mentions[0]) || !is_array($mentions[0])) { + return []; + } + $uids = array_unique($mentions[0]); + $result = []; + foreach ($uids as $uid) { + // exclude author, no self-mentioning + if($uid === '@' . $this->getActorId()) { + continue; + } + $result[] = ['type' => 'user', 'id' => substr($uid, 1)]; + } + return $result; + } + + /** * returns the verb of the comment * * @return string diff --git a/lib/private/Comments/Manager.php b/lib/private/Comments/Manager.php index b3ecab731e1..001f4f9441c 100644 --- a/lib/private/Comments/Manager.php +++ b/lib/private/Comments/Manager.php @@ -55,6 +55,9 @@ class Manager implements ICommentsManager { /** @var ICommentsEventHandler[] */ protected $eventHandlers = []; + /** @var \Closure[] */ + protected $displayNameResolvers = []; + /** * Manager constructor. * @@ -760,6 +763,50 @@ class Manager implements ICommentsManager { } /** + * registers a method that resolves an ID to a display name for a given type + * + * @param string $type + * @param \Closure $closure + * @throws \OutOfBoundsException + * @since 9.2.0 + * + * Only one resolver shall be registered per type. Otherwise a + * \OutOfBoundsException has to thrown. + */ + public function registerDisplayNameResolver($type, \Closure $closure) { + if(!is_string($type)) { + throw new \InvalidArgumentException('String expected.'); + } + if(isset($this->displayNameResolvers[$type])) { + throw new \OutOfBoundsException('Displayname resolver for this type already registered'); + } + $this->displayNameResolvers[$type] = $closure; + } + + /** + * resolves a given ID of a given Type to a display name. + * + * @param string $type + * @param string $id + * @return string + * @throws \OutOfBoundsException + * @since 9.2.0 + * + * If a provided type was not registered, an \OutOfBoundsException shall + * be thrown. It is upon the resolver discretion what to return of the + * provided ID is unknown. It must be ensured that a string is returned. + */ + public function resolveDisplayName($type, $id) { + if(!is_string($type)) { + throw new \InvalidArgumentException('String expected.'); + } + if(!isset($this->displayNameResolvers[$type])) { + throw new \OutOfBoundsException('No Displayname resolver for this type registered'); + } + return (string)$this->displayNameResolvers[$type]($id); + } + + /** * returns valid, registered entities * * @return \OCP\Comments\ICommentsEventHandler[] diff --git a/lib/private/Console/Application.php b/lib/private/Console/Application.php index 299b23714b6..cd76b43f095 100644 --- a/lib/private/Console/Application.php +++ b/lib/private/Console/Application.php @@ -26,6 +26,7 @@ */ namespace OC\Console; +use OC\NeedsUpdateException; use OC_App; use OCP\AppFramework\QueryException; use OCP\Console\ConsoleEvent; @@ -84,39 +85,43 @@ class Application { if ($input->getOption('no-warnings')) { $output->setVerbosity(OutputInterface::VERBOSITY_QUIET); } - require_once __DIR__ . '/../../../core/register_command.php'; - if ($this->config->getSystemValue('installed', false)) { - if (\OCP\Util::needUpgrade()) { - if ($input->getArgument('command') !== '_completion') { - $output->writeln("Nextcloud or one of the apps require upgrade - only a limited number of commands are available"); - $output->writeln("You may use your browser or the occ upgrade command to do the upgrade"); - } - } elseif ($this->config->getSystemValue('maintenance', false)) { - if ($input->getArgument('command') !== '_completion') { - $output->writeln("Nextcloud is in maintenance mode - no apps have been loaded"); - } - } else { - OC_App::loadApps(); - foreach (\OC::$server->getAppManager()->getInstalledApps() as $app) { - $appPath = \OC_App::getAppPath($app); - if($appPath === false) { - continue; - } - // load commands using info.xml - $info = \OC_App::getAppInfo($app); - if (isset($info['commands'])) { - $this->loadCommandsFromInfoXml($info['commands']); + try { + require_once __DIR__ . '/../../../core/register_command.php'; + if ($this->config->getSystemValue('installed', false)) { + if (\OCP\Util::needUpgrade()) { + throw new NeedsUpdateException(); + } elseif ($this->config->getSystemValue('maintenance', false)) { + if ($input->getArgument('command') !== '_completion') { + $output->writeln("Nextcloud is in maintenance mode - no apps have been loaded"); } - // load from register_command.php - \OC_App::registerAutoloading($app, $appPath); - $file = $appPath . '/appinfo/register_command.php'; - if (file_exists($file)) { - require $file; + } else { + OC_App::loadApps(); + foreach (\OC::$server->getAppManager()->getInstalledApps() as $app) { + $appPath = \OC_App::getAppPath($app); + if ($appPath === false) { + continue; + } + // load commands using info.xml + $info = \OC_App::getAppInfo($app); + if (isset($info['commands'])) { + $this->loadCommandsFromInfoXml($info['commands']); + } + // load from register_command.php + \OC_App::registerAutoloading($app, $appPath); + $file = $appPath . '/appinfo/register_command.php'; + if (file_exists($file)) { + require $file; + } } } + } else if ($input->getArgument('command') !== '_completion') { + $output->writeln("Nextcloud is not installed - only a limited number of commands are available"); + } + } catch(NeedsUpdateException $e) { + if ($input->getArgument('command') !== '_completion') { + $output->writeln("Nextcloud or one of the apps require upgrade - only a limited number of commands are available"); + $output->writeln("You may use your browser or the occ upgrade command to do the upgrade"); } - } else if ($input->getArgument('command') !== '_completion') { - $output->writeln("Nextcloud is not installed - only a limited number of commands are available"); } if ($input->getFirstArgument() !== 'check') { diff --git a/lib/private/DB/Connection.php b/lib/private/DB/Connection.php index 4fa25aae08d..dfe2e86b617 100644 --- a/lib/private/DB/Connection.php +++ b/lib/private/DB/Connection.php @@ -33,6 +33,7 @@ use Doctrine\DBAL\Driver; use Doctrine\DBAL\Configuration; use Doctrine\DBAL\Cache\QueryCacheProfile; use Doctrine\Common\EventManager; +use Doctrine\DBAL\Platforms\MySqlPlatform; use OC\DB\QueryBuilder\QueryBuilder; use OCP\DB\QueryBuilder\IQueryBuilder; use OCP\IDBConnection; @@ -402,4 +403,14 @@ class Connection extends \Doctrine\DBAL\Connection implements IDBConnection { public function escapeLikeParameter($param) { return addcslashes($param, '\\_%'); } + + /** + * Check whether or not the current database support 4byte wide unicode + * + * @return bool + * @since 9.2.0 + */ + public function supports4ByteText() { + return ! ($this->getDatabasePlatform() instanceof MySqlPlatform && $this->getParams()['charset'] !== 'utf8mb4'); + } } diff --git a/lib/private/Encryption/DecryptAll.php b/lib/private/Encryption/DecryptAll.php index b84395b9e17..caf4237ab9c 100644 --- a/lib/private/Encryption/DecryptAll.php +++ b/lib/private/Encryption/DecryptAll.php @@ -211,7 +211,7 @@ class DecryptAll { $content = $this->rootView->getDirectoryContent($root); foreach ($content as $file) { // only decrypt files owned by the user - if($file->getStorage()->instanceOfStorage('OC\Files\Storage\Shared')) { + if($file->getStorage()->instanceOfStorage('OCA\Files_Sharing\SharedStorage')) { continue; } $path = $root . '/' . $file['name']; diff --git a/lib/private/Encryption/EncryptionWrapper.php b/lib/private/Encryption/EncryptionWrapper.php index 233390f8739..573fe0159ea 100644 --- a/lib/private/Encryption/EncryptionWrapper.php +++ b/lib/private/Encryption/EncryptionWrapper.php @@ -81,7 +81,7 @@ class EncryptionWrapper { 'mount' => $mount ]; - if (!$storage->instanceOfStorage('OC\Files\Storage\Shared') + if (!$storage->instanceOfStorage('OCA\Files_Sharing\SharedStorage') && !$storage->instanceOfStorage('OCA\Files_Sharing\External\Storage') && !$storage->instanceOfStorage('OC\Files\Storage\OwnCloud')) { diff --git a/lib/private/Files/Node/Folder.php b/lib/private/Files/Node/Folder.php index 353b89068cb..288a02ef207 100644 --- a/lib/private/Files/Node/Folder.php +++ b/lib/private/Files/Node/Folder.php @@ -42,7 +42,7 @@ class Folder extends Node implements \OCP\Files\Folder { */ public function getFullPath($path) { if (!$this->isValidPath($path)) { - throw new NotPermittedException(); + throw new NotPermittedException('Invalid path'); } return $this->path . $this->normalizePath($path); } @@ -152,7 +152,7 @@ class Folder extends Node implements \OCP\Files\Folder { $this->root->emit('\OC\Files', 'postCreate', array($node)); return $node; } else { - throw new NotPermittedException(); + throw new NotPermittedException('No create permission for folder'); } } @@ -173,7 +173,7 @@ class Folder extends Node implements \OCP\Files\Folder { $this->root->emit('\OC\Files', 'postCreate', array($node)); return $node; } else { - throw new NotPermittedException(); + throw new NotPermittedException('No create permission for path'); } } @@ -321,7 +321,7 @@ class Folder extends Node implements \OCP\Files\Folder { $this->root->emit('\OC\Files', 'postDelete', array($nonExisting)); $this->exists = false; } else { - throw new NotPermittedException(); + throw new NotPermittedException('No delete permission for path'); } } @@ -343,7 +343,7 @@ class Folder extends Node implements \OCP\Files\Folder { $this->root->emit('\OC\Files', 'postWrite', array($targetNode)); return $targetNode; } else { - throw new NotPermittedException(); + throw new NotPermittedException('No permission to copy to path'); } } @@ -366,7 +366,7 @@ class Folder extends Node implements \OCP\Files\Folder { $this->path = $targetPath; return $targetNode; } else { - throw new NotPermittedException(); + throw new NotPermittedException('No permission to move to path'); } } diff --git a/lib/private/Files/Storage/Common.php b/lib/private/Files/Storage/Common.php index 63d3c004fd2..c975791295d 100644 --- a/lib/private/Files/Storage/Common.php +++ b/lib/private/Files/Storage/Common.php @@ -466,6 +466,10 @@ abstract class Common implements Storage, ILockingStorage { * @return bool */ public function instanceOfStorage($class) { + if (ltrim($class, '\\') === 'OC\Files\Storage\Shared') { + // FIXME Temporary fix to keep existing checks working + $class = '\OCA\Files_Sharing\SharedStorage'; + } return is_a($this, $class); } diff --git a/lib/private/Files/Storage/Local.php b/lib/private/Files/Storage/Local.php index 0d63fd46ecc..4fe7dcafbbf 100644 --- a/lib/private/Files/Storage/Local.php +++ b/lib/private/Files/Storage/Local.php @@ -155,7 +155,7 @@ class Local extends \OC\Files\Storage\Common { $fullPath = $this->getSourcePath($path); if (PHP_INT_SIZE === 4) { $helper = new \OC\LargeFileHelper; - return $helper->getFilesize($fullPath); + return $helper->getFileSize($fullPath); } return filesize($fullPath); } @@ -173,8 +173,16 @@ class Local extends \OC\Files\Storage\Common { } public function filemtime($path) { - clearstatcache($this->getSourcePath($path)); - return $this->file_exists($path) ? filemtime($this->getSourcePath($path)) : false; + $fullPath = $this->getSourcePath($path); + clearstatcache($fullPath); + if (!$this->file_exists($path)) { + return false; + } + if (PHP_INT_SIZE === 4) { + $helper = new \OC\LargeFileHelper(); + return $helper->getFileMtime($fullPath); + } + return filemtime($fullPath); } public function touch($path, $mtime = null) { diff --git a/lib/private/Files/Storage/Wrapper/PermissionsMask.php b/lib/private/Files/Storage/Wrapper/PermissionsMask.php index 39375602c34..7bcb1087fef 100644 --- a/lib/private/Files/Storage/Wrapper/PermissionsMask.php +++ b/lib/private/Files/Storage/Wrapper/PermissionsMask.php @@ -78,6 +78,14 @@ class PermissionsMask extends Wrapper { } public function rename($path1, $path2) { + $p = strpos($path1, $path2); + if ($p === 0) { + $part = substr($path1, strlen($path2)); + //This is a rename of the transfer file to the original file + if (strpos($part, '.ocTransferId') === 0) { + return $this->checkMask(Constants::PERMISSION_CREATE) and parent::rename($path1, $path2); + } + } return $this->checkMask(Constants::PERMISSION_UPDATE) and parent::rename($path1, $path2); } diff --git a/lib/private/Files/Storage/Wrapper/Wrapper.php b/lib/private/Files/Storage/Wrapper/Wrapper.php index c52b3394832..71b64d8c82c 100644 --- a/lib/private/Files/Storage/Wrapper/Wrapper.php +++ b/lib/private/Files/Storage/Wrapper/Wrapper.php @@ -483,6 +483,10 @@ class Wrapper implements \OC\Files\Storage\Storage, ILockingStorage { * @return bool */ public function instanceOfStorage($class) { + if (ltrim($class, '\\') === 'OC\Files\Storage\Shared') { + // FIXME Temporary fix to keep existing checks working + $class = '\OCA\Files_Sharing\SharedStorage'; + } return is_a($this, $class) or $this->getWrapperStorage()->instanceOfStorage($class); } diff --git a/lib/private/Files/Stream/OC.php b/lib/private/Files/Stream/OC.php deleted file mode 100644 index f415bc13b15..00000000000 --- a/lib/private/Files/Stream/OC.php +++ /dev/null @@ -1,154 +0,0 @@ -<?php -/** - * @copyright Copyright (c) 2016, ownCloud, Inc. - * - * @author Jörn Friedrich Dreyer <jfd@butonic.de> - * @author Morris Jobke <hey@morrisjobke.de> - * @author Robin Appelman <robin@icewind.nl> - * @author Robin McCorkell <robin@mccorkell.me.uk> - * - * @license AGPL-3.0 - * - * This code is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License, version 3, - * as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License, version 3, - * along with this program. If not, see <http://www.gnu.org/licenses/> - * - */ - -namespace OC\Files\Stream; - -/** - * a stream wrappers for ownCloud's virtual filesystem - */ -class OC { - /** - * @var \OC\Files\View - */ - static private $rootView; - - private $path; - - /** - * @var resource - */ - private $dirSource; - - /** - * @var resource - */ - private $fileSource; - private $meta; - - private function setup(){ - if (!self::$rootView) { - self::$rootView = new \OC\Files\View(''); - } - } - - public function stream_open($path, $mode, $options, &$opened_path) { - $this->setup(); - $path = substr($path, strlen('oc://')); - $this->path = $path; - $this->fileSource = self::$rootView->fopen($path, $mode); - if (is_resource($this->fileSource)) { - $this->meta = stream_get_meta_data($this->fileSource); - } - return is_resource($this->fileSource); - } - - public function stream_seek($offset, $whence = SEEK_SET) { - return fseek($this->fileSource, $offset, $whence) === 0; - } - - public function stream_tell() { - return ftell($this->fileSource); - } - - public function stream_read($count) { - return fread($this->fileSource, $count); - } - - public function stream_write($data) { - return fwrite($this->fileSource, $data); - } - - public function stream_set_option($option, $arg1, $arg2) { - switch ($option) { - case STREAM_OPTION_BLOCKING: - stream_set_blocking($this->fileSource, $arg1); - break; - case STREAM_OPTION_READ_TIMEOUT: - stream_set_timeout($this->fileSource, $arg1, $arg2); - break; - case STREAM_OPTION_WRITE_BUFFER: - stream_set_write_buffer($this->fileSource, $arg1, $arg2); - } - } - - public function stream_stat() { - return fstat($this->fileSource); - } - - public function stream_lock($mode) { - flock($this->fileSource, $mode); - } - - public function stream_flush() { - return fflush($this->fileSource); - } - - public function stream_eof() { - return feof($this->fileSource); - } - - public function url_stat($path) { - $this->setup(); - $path = substr($path, strlen('oc://')); - if (self::$rootView->file_exists($path)) { - return self::$rootView->stat($path); - } else { - return false; - } - } - - public function stream_close() { - fclose($this->fileSource); - } - - public function unlink($path) { - $this->setup(); - $path = substr($path, strlen('oc://')); - return self::$rootView->unlink($path); - } - - public function dir_opendir($path, $options) { - $this->setup(); - $path = substr($path, strlen('oc://')); - $this->path = $path; - $this->dirSource = self::$rootView->opendir($path); - if (is_resource($this->dirSource)) { - $this->meta = stream_get_meta_data($this->dirSource); - } - return is_resource($this->dirSource); - } - - public function dir_readdir() { - return readdir($this->dirSource); - } - - public function dir_closedir() { - closedir($this->dirSource); - } - - public function dir_rewinddir() { - rewinddir($this->dirSource); - } -} diff --git a/lib/private/Files/View.php b/lib/private/Files/View.php index fa6ba20c342..f36e2c2c64f 100644 --- a/lib/private/Files/View.php +++ b/lib/private/Files/View.php @@ -1357,7 +1357,7 @@ class View { $subStorage = $mount->getStorage(); if ($subStorage) { // exclude shared storage ? - if ($extOnly && $subStorage instanceof \OC\Files\Storage\Shared) { + if ($extOnly && $subStorage instanceof \OCA\Files_Sharing\SharedStorage) { continue; } $subCache = $subStorage->getCache(''); @@ -1806,13 +1806,15 @@ class View { throw new InvalidPathException($l10n->t('Dot files are not allowed')); } - // verify database - e.g. mysql only 3-byte chars - if (preg_match('%(?: + if (!\OC::$server->getDatabaseConnection()->supports4ByteText()) { + // verify database - e.g. mysql only 3-byte chars + if (preg_match('%(?: \xF0[\x90-\xBF][\x80-\xBF]{2} # planes 1-3 | [\xF1-\xF3][\x80-\xBF]{3} # planes 4-15 | \xF4[\x80-\x8F][\x80-\xBF]{2} # plane 16 )%xs', $fileName)) { - throw new InvalidPathException($l10n->t('4-byte characters are not supported in file names')); + throw new InvalidPathException($l10n->t('4-byte characters are not supported in file names')); + } } try { diff --git a/lib/private/LargeFileHelper.php b/lib/private/LargeFileHelper.php index 9d0fe864033..9f18a6acd6b 100644 --- a/lib/private/LargeFileHelper.php +++ b/lib/private/LargeFileHelper.php @@ -1,6 +1,7 @@ <?php /** * @copyright Copyright (c) 2016, ownCloud, Inc. + * @copyright Copyright (c) 2016, Lukas Reschke <lukas@statuscode.ch> * * @author Andreas Fischer <bantu@owncloud.com> * @author Lukas Reschke <lukas@statuscode.ch> @@ -51,7 +52,7 @@ class LargeFileHelper { public function __construct() { $pow_2_53 = floatval(self::POW_2_53_MINUS_1) + 1.0; if ($this->formatUnsignedInteger($pow_2_53) !== self::POW_2_53) { - throw new \RunTimeException( + throw new \RuntimeException( 'This class assumes floats to be double precision or "better".' ); } @@ -98,10 +99,6 @@ class LargeFileHelper { if (!is_null($fileSize)) { return $fileSize; } - $fileSize = $this->getFileSizeViaCOM($filename); - if (!is_null($fileSize)) { - return $fileSize; - } $fileSize = $this->getFileSizeViaExec($filename); if (!is_null($fileSize)) { return $fileSize; @@ -154,12 +151,6 @@ class LargeFileHelper { $result = $this->exec("stat -c %s $arg"); } else if (strpos($os, 'bsd') !== false || strpos($os, 'darwin') !== false) { $result = $this->exec("stat -f %z $arg"); - } else if (strpos($os, 'win') !== false) { - $result = $this->exec("for %F in ($arg) do @echo %~zF"); - if (is_null($result)) { - // PowerShell - $result = $this->exec("(Get-Item $arg).length"); - } } return $result; } @@ -187,6 +178,23 @@ class LargeFileHelper { return $result; } + /** + * Returns the current mtime for $fullPath + * + * @param string $fullPath + * @return int + */ + public function getFileMtime($fullPath) { + if (\OC_Helper::is_function_enabled('exec')) { + $os = strtolower(php_uname('s')); + if (strpos($os, 'linux') !== false) { + return $this->exec('stat -c %Y ' . escapeshellarg($fullPath)); + } + } + + return filemtime($fullPath); + } + protected function exec($cmd) { $result = trim(exec($cmd)); return ctype_digit($result) ? 0 + $result : null; diff --git a/lib/private/Security/CSP/ContentSecurityPolicyNonceManager.php b/lib/private/Security/CSP/ContentSecurityPolicyNonceManager.php new file mode 100644 index 00000000000..284700566d6 --- /dev/null +++ b/lib/private/Security/CSP/ContentSecurityPolicyNonceManager.php @@ -0,0 +1,82 @@ +<?php +/** + * @copyright Copyright (c) 2016 Lukas Reschke <lukas@statuscode.ch> + * + * @license GNU AGPL version 3 or any later version + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ + +namespace OC\Security\CSP; + +use OC\AppFramework\Http\Request; +use OC\Security\CSRF\CsrfTokenManager; +use OCP\IRequest; + +/** + * @package OC\Security\CSP + */ +class ContentSecurityPolicyNonceManager { + /** @var CsrfTokenManager */ + private $csrfTokenManager; + /** @var IRequest */ + private $request; + /** @var string */ + private $nonce = ''; + + /** + * @param CsrfTokenManager $csrfTokenManager + * @param IRequest $request + */ + public function __construct(CsrfTokenManager $csrfTokenManager, + IRequest $request) { + $this->csrfTokenManager = $csrfTokenManager; + $this->request = $request; + } + + /** + * Returns the current CSP nounce + * + * @return string + */ + public function getNonce() { + if($this->nonce === '') { + $this->nonce = base64_encode($this->csrfTokenManager->getToken()->getEncryptedValue()); + } + + return $this->nonce; + } + + /** + * Check if the browser supports CSP v3 + * + * @return bool + */ + public function browserSupportsCspV3() { + $browserWhitelist = [ + Request::USER_AGENT_CHROME, + // Firefox 45+ + '/^Mozilla\/5\.0 \([^)]+\) Gecko\/[0-9.]+ Firefox\/(4[5-9]|[5-9][0-9])\.[0-9.]+$/', + // Safari 10+ + '/^Mozilla\/5\.0 \([^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\) Version\/1[0-9.]+ Safari\/[0-9.A-Z]+$/', + ]; + + if($this->request->isUserAgent($browserWhitelist)) { + return true; + } + + return false; + } +} diff --git a/lib/private/Security/CSRF/CsrfToken.php b/lib/private/Security/CSRF/CsrfToken.php index bf61e339f77..dce9a83b727 100644 --- a/lib/private/Security/CSRF/CsrfToken.php +++ b/lib/private/Security/CSRF/CsrfToken.php @@ -33,6 +33,8 @@ namespace OC\Security\CSRF; class CsrfToken { /** @var string */ private $value; + /** @var string */ + private $encryptedValue = ''; /** * @param string $value Value of the token. Can be encrypted or not encrypted. @@ -48,8 +50,12 @@ class CsrfToken { * @return string */ public function getEncryptedValue() { - $sharedSecret = base64_encode(random_bytes(strlen($this->value))); - return base64_encode($this->value ^ $sharedSecret) .':'.$sharedSecret; + if($this->encryptedValue === '') { + $sharedSecret = base64_encode(random_bytes(strlen($this->value))); + $this->encryptedValue = base64_encode($this->value ^ $sharedSecret) . ':' . $sharedSecret; + } + + return $this->encryptedValue; } /** diff --git a/lib/private/Security/CSRF/CsrfTokenManager.php b/lib/private/Security/CSRF/CsrfTokenManager.php index d621cc2c29f..b43ca3d3679 100644 --- a/lib/private/Security/CSRF/CsrfTokenManager.php +++ b/lib/private/Security/CSRF/CsrfTokenManager.php @@ -34,6 +34,8 @@ class CsrfTokenManager { private $tokenGenerator; /** @var SessionStorage */ private $sessionStorage; + /** @var CsrfToken|null */ + private $csrfToken = null; /** * @param CsrfTokenGenerator $tokenGenerator @@ -51,6 +53,10 @@ class CsrfTokenManager { * @return CsrfToken */ public function getToken() { + if(!is_null($this->csrfToken)) { + return $this->csrfToken; + } + if($this->sessionStorage->hasToken()) { $value = $this->sessionStorage->getToken(); } else { @@ -58,7 +64,8 @@ class CsrfTokenManager { $this->sessionStorage->setToken($value); } - return new CsrfToken($value); + $this->csrfToken = new CsrfToken($value); + return $this->csrfToken; } /** @@ -69,13 +76,15 @@ class CsrfTokenManager { public function refreshToken() { $value = $this->tokenGenerator->generateToken(); $this->sessionStorage->setToken($value); - return new CsrfToken($value); + $this->csrfToken = new CsrfToken($value); + return $this->csrfToken; } /** * Remove the current token from the storage. */ public function removeToken() { + $this->csrfToken = null; $this->sessionStorage->removeToken(); } diff --git a/lib/private/Server.php b/lib/private/Server.php index 11558118d52..21ec311401d 100644 --- a/lib/private/Server.php +++ b/lib/private/Server.php @@ -73,6 +73,7 @@ use OC\Security\Bruteforce\Throttler; use OC\Security\CertificateManager; use OC\Security\CSP\ContentSecurityPolicyManager; use OC\Security\Crypto; +use OC\Security\CSP\ContentSecurityPolicyNonceManager; use OC\Security\CSRF\CsrfTokenGenerator; use OC\Security\CSRF\CsrfTokenManager; use OC\Security\CSRF\TokenStorage\SessionStorage; @@ -708,6 +709,12 @@ class Server extends ServerContainer implements IServerContainer { $this->registerService('ContentSecurityPolicyManager', function (Server $c) { return new ContentSecurityPolicyManager(); }); + $this->registerService('ContentSecurityPolicyNonceManager', function(Server $c) { + return new ContentSecurityPolicyNonceManager( + $c->getCsrfTokenManager(), + $c->getRequest() + ); + }); $this->registerService('ShareManager', function(Server $c) { $config = $c->getConfig(); $factoryClass = $config->getSystemValue('sharing.managerFactory', '\OC\Share20\ProviderFactory'); @@ -1406,6 +1413,13 @@ class Server extends ServerContainer implements IServerContainer { } /** + * @return ContentSecurityPolicyNonceManager + */ + public function getContentSecurityPolicyNonceManager() { + return $this->query('ContentSecurityPolicyNonceManager'); + } + + /** * Not a public API as of 8.2, wait for 9.0 * * @return \OCA\Files_External\Service\BackendService diff --git a/lib/private/Share/MailNotifications.php b/lib/private/Share/MailNotifications.php index aaecd5353e5..1bbd365699c 100644 --- a/lib/private/Share/MailNotifications.php +++ b/lib/private/Share/MailNotifications.php @@ -89,75 +89,6 @@ class MailNotifications { } /** - * inform users if a file was shared with them - * - * @param IUser[] $recipientList list of recipients - * @param string $itemSource shared item source - * @param string $itemType shared item type - * @return array list of user to whom the mail send operation failed - */ - public function sendInternalShareMail($recipientList, $itemSource, $itemType) { - $noMail = []; - - foreach ($recipientList as $recipient) { - $recipientDisplayName = $recipient->getDisplayName(); - $to = $recipient->getEMailAddress(); - - if ($to === '') { - $noMail[] = $recipientDisplayName; - continue; - } - - $items = $this->getItemSharedWithUser($itemSource, $itemType, $recipient); - $filename = trim($items[0]['file_target'], '/'); - $subject = (string) $this->l->t('%s shared »%s« with you', array($this->senderDisplayName, $filename)); - $expiration = null; - if (isset($items[0]['expiration'])) { - try { - $date = new DateTime($items[0]['expiration']); - $expiration = $date->getTimestamp(); - } catch (\Exception $e) { - $this->logger->error("Couldn't read date: ".$e->getMessage(), ['app' => 'sharing']); - } - } - - $link = $this->urlGenerator->linkToRouteAbsolute( - 'files.viewcontroller.showFile', - ['fileId' => $items[0]['item_source']] - ); - - list($htmlBody, $textBody) = $this->createMailBody($filename, $link, $expiration, 'internal'); - - // send it out now - try { - $message = $this->mailer->createMessage(); - $message->setSubject($subject); - $message->setTo([$to => $recipientDisplayName]); - $message->setHtmlBody($htmlBody); - $message->setPlainBody($textBody); - $message->setFrom([ - Util::getDefaultEmailAddress('sharing-noreply') => - (string)$this->l->t('%s via %s', [ - $this->senderDisplayName, - $this->defaults->getName() - ]), - ]); - if(!is_null($this->replyTo)) { - $message->setReplyTo([$this->replyTo]); - } - - $this->mailer->send($message); - } catch (\Exception $e) { - $this->logger->error("Can't send mail to inform the user about an internal share: ".$e->getMessage(), ['app' => 'sharing']); - $noMail[] = $recipientDisplayName; - } - } - - return $noMail; - - } - - /** * inform recipient about public link share * * @param string $recipient recipient email address @@ -224,15 +155,4 @@ class MailNotifications { return [$htmlMail, $plainTextMail]; } - - /** - * @param string $itemSource - * @param string $itemType - * @param IUser $recipient - * @return array - */ - protected function getItemSharedWithUser($itemSource, $itemType, $recipient) { - return Share::getItemSharedWithUser($itemType, $itemSource, $recipient->getUID()); - } - } diff --git a/lib/private/Share/Share.php b/lib/private/Share/Share.php index 9210dfd1fd1..33801cd6347 100644 --- a/lib/private/Share/Share.php +++ b/lib/private/Share/Share.php @@ -1059,7 +1059,7 @@ class Share extends Constants { if (isset($groupShare['file_target'])) { $shareTmp['fileTarget'] = $groupShare['file_target']; } - $listOfUnsharedItems = array_merge($listOfUnsharedItems, array($groupShare)); + $listOfUnsharedItems = array_merge($listOfUnsharedItems, [$shareTmp]); $itemUnshared = true; } elseif (!$itemUnshared && isset($uniqueGroupShare)) { $query = \OC_DB::prepare('UPDATE `*PREFIX*share` SET `permissions` = ? WHERE `id` = ?'); @@ -1074,7 +1074,7 @@ class Share extends Constants { if (isset($uniqueGroupShare['file_target'])) { $shareTmp['fileTarget'] = $uniqueGroupShare['file_target']; } - $listOfUnsharedItems = array_merge($listOfUnsharedItems, array($uniqueGroupShare)); + $listOfUnsharedItems = array_merge($listOfUnsharedItems, [$shareTmp]); $itemUnshared = true; } diff --git a/lib/private/Template/JSConfigHelper.php b/lib/private/Template/JSConfigHelper.php new file mode 100644 index 00000000000..a7f8c251cee --- /dev/null +++ b/lib/private/Template/JSConfigHelper.php @@ -0,0 +1,243 @@ +<?php +/** + * @copyright Copyright (c) 2016, Roeland Jago Douma <roeland@famdouma.nl> + * + * @author Roeland Jago Douma <roeland@famdouma.nl> + * + * @license GNU AGPL version 3 or any later version + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ +namespace OC\Template; + +use bantu\IniGetWrapper\IniGetWrapper; +use OCP\App\IAppManager; +use OCP\IConfig; +use OCP\IGroupManager; +use OCP\IL10N; +use OCP\IURLGenerator; +use OCP\IUser; + +class JSConfigHelper { + + /** @var IL10N */ + private $l; + + /** @var \OC_Defaults */ + private $defaults; + + /** @var IAppManager */ + private $appManager; + + /** @var IUser */ + private $currentUser; + + /** @var IConfig */ + private $config; + + /** @var IGroupManager */ + private $groupManager; + + /** @var IniGetWrapper */ + private $iniWrapper; + + /** @var IURLGenerator */ + private $urlGenerator; + + /** + * @param IL10N $l + * @param \OC_Defaults $defaults + * @param IAppManager $appManager + * @param IUser|null $currentUser + * @param IConfig $config + * @param IGroupManager $groupManager + * @param IniGetWrapper $iniWrapper + * @param IURLGenerator $urlGenerator + */ + public function __construct(IL10N $l, + \OC_Defaults $defaults, + IAppManager $appManager, + $currentUser, + IConfig $config, + IGroupManager $groupManager, + IniGetWrapper $iniWrapper, + IURLGenerator $urlGenerator) { + $this->l = $l; + $this->defaults = $defaults; + $this->appManager = $appManager; + $this->currentUser = $currentUser; + $this->config = $config; + $this->groupManager = $groupManager; + $this->iniWrapper = $iniWrapper; + $this->urlGenerator = $urlGenerator; + } + + public function getConfig() { + + if ($this->currentUser !== null) { + $uid = $this->currentUser->getUID(); + } else { + $uid = null; + } + + // Get the config + $apps_paths = []; + + if ($this->currentUser === null) { + $apps = $this->appManager->getInstalledApps(); + } else { + $apps = $this->appManager->getEnabledAppsForUser($this->currentUser); + } + + foreach($apps as $app) { + $apps_paths[$app] = \OC_App::getAppWebPath($app); + } + + $defaultExpireDateEnabled = $this->config->getAppValue('core', 'shareapi_default_expire_date', 'no') === 'yes'; + $defaultExpireDate = $enforceDefaultExpireDate = null; + if ($defaultExpireDateEnabled) { + $defaultExpireDate = (int) $this->config->getAppValue('core', 'shareapi_expire_after_n_days', '7'); + $enforceDefaultExpireDate = $this->config->getAppValue('core', 'shareapi_enforce_expire_date', 'no') === 'yes'; + } + $outgoingServer2serverShareEnabled = $this->config->getAppValue('files_sharing', 'outgoing_server2server_share_enabled', 'yes') === 'yes'; + + $countOfDataLocation = 0; + $dataLocation = str_replace(\OC::$SERVERROOT .'/', '', $this->config->getSystemValue('datadirectory', ''), $countOfDataLocation); + if($countOfDataLocation !== 1 || !$this->groupManager->isAdmin($uid)) { + $dataLocation = false; + } + + $array = [ + "oc_debug" => $this->config->getSystemValue('debug', false) ? 'true' : 'false', + "oc_isadmin" => $this->groupManager->isAdmin($uid) ? 'true' : 'false', + "oc_dataURL" => is_string($dataLocation) ? "\"".$dataLocation."\"" : 'false', + "oc_webroot" => "\"".\OC::$WEBROOT."\"", + "oc_appswebroots" => str_replace('\\/', '/', json_encode($apps_paths)), // Ugly unescape slashes waiting for better solution + "datepickerFormatDate" => json_encode($this->l->l('jsdate', null)), + "dayNames" => json_encode([ + (string)$this->l->t('Sunday'), + (string)$this->l->t('Monday'), + (string)$this->l->t('Tuesday'), + (string)$this->l->t('Wednesday'), + (string)$this->l->t('Thursday'), + (string)$this->l->t('Friday'), + (string)$this->l->t('Saturday') + ]), + "dayNamesShort" => json_encode([ + (string)$this->l->t('Sun.'), + (string)$this->l->t('Mon.'), + (string)$this->l->t('Tue.'), + (string)$this->l->t('Wed.'), + (string)$this->l->t('Thu.'), + (string)$this->l->t('Fri.'), + (string)$this->l->t('Sat.') + ]), + "dayNamesMin" => json_encode([ + (string)$this->l->t('Su'), + (string)$this->l->t('Mo'), + (string)$this->l->t('Tu'), + (string)$this->l->t('We'), + (string)$this->l->t('Th'), + (string)$this->l->t('Fr'), + (string)$this->l->t('Sa') + ]), + "monthNames" => json_encode([ + (string)$this->l->t('January'), + (string)$this->l->t('February'), + (string)$this->l->t('March'), + (string)$this->l->t('April'), + (string)$this->l->t('May'), + (string)$this->l->t('June'), + (string)$this->l->t('July'), + (string)$this->l->t('August'), + (string)$this->l->t('September'), + (string)$this->l->t('October'), + (string)$this->l->t('November'), + (string)$this->l->t('December') + ]), + "monthNamesShort" => json_encode([ + (string)$this->l->t('Jan.'), + (string)$this->l->t('Feb.'), + (string)$this->l->t('Mar.'), + (string)$this->l->t('Apr.'), + (string)$this->l->t('May.'), + (string)$this->l->t('Jun.'), + (string)$this->l->t('Jul.'), + (string)$this->l->t('Aug.'), + (string)$this->l->t('Sep.'), + (string)$this->l->t('Oct.'), + (string)$this->l->t('Nov.'), + (string)$this->l->t('Dec.') + ]), + "firstDay" => json_encode($this->l->l('firstday', null)) , + "oc_config" => json_encode([ + 'session_lifetime' => min($this->config->getSystemValue('session_lifetime', $this->iniWrapper->getNumeric('session.gc_maxlifetime')), $this->iniWrapper->getNumeric('session.gc_maxlifetime')), + 'session_keepalive' => $this->config->getSystemValue('session_keepalive', true), + 'version' => implode('.', \OCP\Util::getVersion()), + 'versionstring' => \OC_Util::getVersionString(), + 'enable_avatars' => $this->config->getSystemValue('enable_avatars', true) === true, + 'lost_password_link'=> $this->config->getSystemValue('lost_password_link', null), + 'modRewriteWorking' => (getenv('front_controller_active') === 'true'), + ]), + "oc_appconfig" => json_encode([ + 'core' => [ + 'defaultExpireDateEnabled' => $defaultExpireDateEnabled, + 'defaultExpireDate' => $defaultExpireDate, + 'defaultExpireDateEnforced' => $enforceDefaultExpireDate, + 'enforcePasswordForPublicLink' => \OCP\Util::isPublicLinkPasswordRequired(), + 'sharingDisabledForUser' => \OCP\Util::isSharingDisabledForUser(), + 'resharingAllowed' => \OCP\Share::isResharingAllowed(), + 'remoteShareAllowed' => $outgoingServer2serverShareEnabled, + 'federatedCloudShareDoc' => $this->urlGenerator->linkToDocs('user-sharing-federated'), + 'allowGroupSharing' => \OC::$server->getShareManager()->allowGroupSharing() + ] + ]), + "oc_defaults" => json_encode([ + 'entity' => $this->defaults->getEntity(), + 'name' => $this->defaults->getName(), + 'title' => $this->defaults->getTitle(), + 'baseUrl' => $this->defaults->getBaseUrl(), + 'syncClientUrl' => $this->defaults->getSyncClientUrl(), + 'docBaseUrl' => $this->defaults->getDocBaseUrl(), + 'docPlaceholderUrl' => $this->defaults->buildDocLinkToKey('PLACEHOLDER'), + 'slogan' => $this->defaults->getSlogan(), + 'logoClaim' => $this->defaults->getLogoClaim(), + 'shortFooter' => $this->defaults->getShortFooter(), + 'longFooter' => $this->defaults->getLongFooter(), + 'folder' => \OC_Util::getTheme(), + ]), + ]; + + if ($this->currentUser !== null) { + $array['oc_userconfig'] = json_encode([ + 'avatar' => [ + 'version' => (int)$this->config->getUserValue($uid, 'avatar', 'version', 0), + ] + ]); + } + + // Allow hooks to modify the output values + \OC_Hook::emit('\OCP\Config', 'js', array('array' => &$array)); + + $result = ''; + + // Echo it + foreach ($array as $setting => $value) { + $result .= 'var '. $setting . '='. $value . ';' . PHP_EOL; + } + + return $result; + } +} diff --git a/lib/private/TemplateLayout.php b/lib/private/TemplateLayout.php index da845d80d04..9f89174e7f9 100644 --- a/lib/private/TemplateLayout.php +++ b/lib/private/TemplateLayout.php @@ -43,6 +43,7 @@ use Assetic\Filter\CssMinFilter; use Assetic\Filter\CssRewriteFilter; use Assetic\Filter\JSqueezeFilter; use Assetic\Filter\SeparatorFilter; +use OC\Template\JSConfigHelper; class TemplateLayout extends \OC_Template { @@ -142,7 +143,22 @@ class TemplateLayout extends \OC_Template { $jsFiles = self::findJavascriptFiles(\OC_Util::$scripts); $this->assign('jsfiles', array()); if ($this->config->getSystemValue('installed', false) && $renderAs != 'error') { - $this->append( 'jsfiles', \OC::$server->getURLGenerator()->linkToRoute('js_config', ['v' => self::$versionHash])); + if (\OC::$server->getContentSecurityPolicyNonceManager()->browserSupportsCspV3()) { + $jsConfigHelper = new JSConfigHelper( + \OC::$server->getL10N('core'), + \OC::$server->getThemingDefaults(), + \OC::$server->getAppManager(), + \OC::$server->getUserSession()->getUser(), + \OC::$server->getConfig(), + \OC::$server->getGroupManager(), + \OC::$server->getIniWrapper(), + \OC::$server->getURLGenerator() + ); + $this->assign('inline_ocjs', $jsConfigHelper->getConfig()); + $this->assign('foo', 'bar'); + } else { + $this->append('jsfiles', \OC::$server->getURLGenerator()->linkToRoute('core.OCJS.getConfig', ['v' => self::$versionHash])); + } } foreach($jsFiles as $info) { $web = $info[1]; diff --git a/lib/private/User/Session.php b/lib/private/User/Session.php index 4b56609ccfc..a213ee48c2a 100644 --- a/lib/private/User/Session.php +++ b/lib/private/User/Session.php @@ -362,6 +362,9 @@ class Session implements IUserSession, Emitter { $user = $this->manager->get($username); if (is_null($user)) { $users = $this->manager->getByEmail($username); + if (empty($users)) { + return false; + } if (count($users) !== 1) { return true; } diff --git a/lib/private/legacy/app.php b/lib/private/legacy/app.php index 5e05884f5c0..d25534aa822 100644 --- a/lib/private/legacy/app.php +++ b/lib/private/legacy/app.php @@ -334,9 +334,16 @@ class OC_App { * This function set an app as enabled in appconfig. */ public static function enable($app, $groups = null) { - self::$enabledAppsCache = array(); // flush + self::$enabledAppsCache = []; // flush if (!Installer::isInstalled($app)) { $app = self::installApp($app); + } else { + // check for required dependencies + $config = \OC::$server->getConfig(); + $l = \OC::$server->getL10N('core'); + $info = self::getAppInfo($app); + + self::checkAppDependencies($config, $l, $info); } $appManager = \OC::$server->getAppManager(); @@ -1186,16 +1193,7 @@ class OC_App { } // check for required dependencies - $dependencyAnalyzer = new DependencyAnalyzer(new Platform($config), $l); - $missing = $dependencyAnalyzer->analyze($info); - if (!empty($missing)) { - $missingMsg = join(PHP_EOL, $missing); - throw new \Exception( - $l->t('App "%s" cannot be installed because the following dependencies are not fulfilled: %s', - array($info['name'], $missingMsg) - ) - ); - } + self::checkAppDependencies($config, $l, $info); $config->setAppValue($app, 'enabled', 'yes'); if (isset($appData['id'])) { @@ -1438,4 +1436,23 @@ class OC_App { return $data; } + + /** + * @param $config + * @param $l + * @param $info + * @throws Exception + */ + protected static function checkAppDependencies($config, $l, $info) { + $dependencyAnalyzer = new DependencyAnalyzer(new Platform($config), $l); + $missing = $dependencyAnalyzer->analyze($info); + if (!empty($missing)) { + $missingMsg = join(PHP_EOL, $missing); + throw new \Exception( + $l->t('App "%s" cannot be installed because the following dependencies are not fulfilled: %s', + [$info['name'], $missingMsg] + ) + ); + } + } } diff --git a/lib/private/legacy/helper.php b/lib/private/legacy/helper.php index 0b9477dacd4..9c4bc895fb9 100644 --- a/lib/private/legacy/helper.php +++ b/lib/private/legacy/helper.php @@ -254,16 +254,9 @@ class OC_Helper { if ($path === false) { $path = getenv("PATH"); } - // check method depends on operating system - if (!strncmp(PHP_OS, "WIN", 3)) { - // on Windows an appropriate COM or EXE file needs to exist - $exts = array(".exe", ".com"); - $check_fn = "file_exists"; - } else { - // anywhere else we look for an executable file of that name - $exts = array(""); - $check_fn = "is_executable"; - } + // we look for an executable file of that name + $exts = [""]; + $check_fn = "is_executable"; // Default check will be done with $path directories : $dirs = explode(PATH_SEPARATOR, $path); // WARNING : We have to check if open_basedir is enabled : @@ -498,7 +491,6 @@ class OC_Helper { /** * Try to find a program - * Note: currently windows is not supported * * @param string $program * @return null|string @@ -557,7 +549,7 @@ class OC_Helper { $quota = \OCP\Files\FileInfo::SPACE_UNLIMITED; $storage = $rootInfo->getStorage(); $sourceStorage = $storage; - if ($storage->instanceOfStorage('\OC\Files\Storage\Shared')) { + if ($storage->instanceOfStorage('\OCA\Files_Sharing\SharedStorage')) { $includeExtStorage = false; $sourceStorage = $storage->getSourceStorage(); } diff --git a/lib/private/legacy/image.php b/lib/private/legacy/image.php index fee1a805c40..5403cccd026 100644 --- a/lib/private/legacy/image.php +++ b/lib/private/legacy/image.php @@ -54,6 +54,8 @@ class OC_Image implements \OCP\IImage { private $fileInfo; /** @var \OCP\ILogger */ private $logger; + /** @var array */ + private $exif; /** * Get mime type for an image file. @@ -347,6 +349,10 @@ class OC_Image implements \OCP\IImage { * @return int The orientation or -1 if no EXIF data is available. */ public function getOrientation() { + if ($this->exif !== null) { + return $this->exif['Orientation']; + } + if ($this->imageType !== IMAGETYPE_JPEG) { $this->logger->debug('OC_Image->fixOrientation() Image is not a JPEG.', array('app' => 'core')); return -1; @@ -370,9 +376,30 @@ class OC_Image implements \OCP\IImage { if (!isset($exif['Orientation'])) { return -1; } + $this->exif = $exif; return $exif['Orientation']; } + public function readExif($data) { + if (!is_callable('exif_read_data')) { + $this->logger->debug('OC_Image->fixOrientation() Exif module not enabled.', array('app' => 'core')); + return; + } + if (!$this->valid()) { + $this->logger->debug('OC_Image->fixOrientation() No image loaded.', array('app' => 'core')); + return; + } + + $exif = @exif_read_data('data://image/jpeg;base64,' . base64_encode($data)); + if (!$exif) { + return; + } + if (!isset($exif['Orientation'])) { + return; + } + $this->exif = $exif; + } + /** * (I'm open for suggestions on better method name ;) * Fixes orientation based on EXIF data. diff --git a/lib/private/legacy/response.php b/lib/private/legacy/response.php index 0ec27251ba5..69c84e2df68 100644 --- a/lib/private/legacy/response.php +++ b/lib/private/legacy/response.php @@ -33,6 +33,7 @@ class OC_Response { const STATUS_NOT_MODIFIED = 304; const STATUS_TEMPORARY_REDIRECT = 307; const STATUS_BAD_REQUEST = 400; + const STATUS_FORBIDDEN = 403; const STATUS_NOT_FOUND = 404; const STATUS_INTERNAL_SERVER_ERROR = 500; const STATUS_SERVICE_UNAVAILABLE = 503; @@ -246,7 +247,7 @@ class OC_Response { * @see \OCP\AppFramework\Http\Response::getHeaders */ $policy = 'default-src \'self\'; ' - . 'script-src \'self\' \'unsafe-eval\'; ' + . 'script-src \'self\' \'unsafe-eval\' \'nonce-'.\OC::$server->getContentSecurityPolicyNonceManager()->getNonce().'\'; ' . 'style-src \'self\' \'unsafe-inline\'; ' . 'frame-src *; ' . 'img-src * data: blob:; ' diff --git a/lib/private/legacy/template.php b/lib/private/legacy/template.php index 67a8b3ec6e1..7c0b58db0c0 100644 --- a/lib/private/legacy/template.php +++ b/lib/private/legacy/template.php @@ -117,7 +117,7 @@ class OC_Template extends \OC\Template\Base { OC_Util::addStyle("fonts",null,true); OC_Util::addStyle("icons",null,true); OC_Util::addStyle("header",null,true); - OC_Util::addStyle("inputs",null,true); + OC_Util::addStyle("inputs"); OC_Util::addStyle("styles",null,true); // avatars @@ -126,6 +126,10 @@ class OC_Template extends \OC\Template\Base { \OC_Util::addScript('placeholder', null, true); } + OC_Util::addVendorScript('select2/select2'); + OC_Util::addVendorStyle('select2/select2', null, true); + OC_Util::addScript('select2-toggleselect'); + OC_Util::addScript('oc-backbone', null, true); OC_Util::addVendorScript('core', 'backbone/backbone', true); OC_Util::addVendorScript('snapjs/dist/latest/snap', null, true); @@ -135,6 +139,7 @@ class OC_Template extends \OC\Template\Base { OC_Util::addScript("oc-requesttoken", null, true); OC_Util::addScript('search', 'search', true); OC_Util::addScript("config", null, true); + OC_Util::addScript("public/appconfig", null, true); OC_Util::addScript("eventsource", null, true); OC_Util::addScript("octemplate", null, true); OC_Util::addTranslations("core", null, true); @@ -143,7 +148,6 @@ class OC_Template extends \OC\Template\Base { OC_Util::addScript("oc-dialogs", null, true); OC_Util::addScript("jquery.ocdialog", null, true); OC_Util::addStyle("jquery.ocdialog"); - OC_Util::addScript("compatibility", null, true); OC_Util::addScript('files/fileinfo'); OC_Util::addScript('files/client'); diff --git a/lib/private/legacy/util.php b/lib/private/legacy/util.php index b8f3a93ba50..42fd0ba7db3 100644 --- a/lib/private/legacy/util.php +++ b/lib/private/legacy/util.php @@ -165,15 +165,14 @@ class OC_Util { // install storage availability wrapper, before most other wrappers \OC\Files\Filesystem::addStorageWrapper('oc_availability', function ($mountPoint, $storage) { - /** @var \OCP\Files\Storage $storage */ - if (!$storage->instanceOfStorage('\OC\Files\Storage\Shared') && !$storage->isLocal()) { + if (!$storage->instanceOfStorage('\OCA\Files_Sharing\SharedStorage') && !$storage->isLocal()) { return new \OC\Files\Storage\Wrapper\Availability(['storage' => $storage]); } return $storage; }); \OC\Files\Filesystem::addStorageWrapper('oc_encoding', function ($mountPoint, \OCP\Files\Storage $storage, \OCP\Files\Mount\IMountPoint $mount) { - if ($mount->getOption('encoding_compatibility', false) && !$storage->instanceOfStorage('\OC\Files\Storage\Shared') && !$storage->isLocal()) { + if ($mount->getOption('encoding_compatibility', false) && !$storage->instanceOfStorage('\OCA\Files_Sharing\SharedStorage') && !$storage->isLocal()) { return new \OC\Files\Storage\Wrapper\Encoding(['storage' => $storage]); } return $storage; @@ -668,15 +667,6 @@ class OC_Util { $webServerRestart = true; } - // Check if server running on Windows platform - if(OC_Util::runningOnWindows()) { - $errors[] = [ - 'error' => $l->t('Microsoft Windows Platform is not supported'), - 'hint' => $l->t('Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you ' . - 'use a Linux server in a virtual machine if you have no option for migrating the server itself.') - ]; - } - // Check if config folder is writable. if(!OC_Helper::isReadOnlyConfigEnabled()) { if (!is_writable(OC::$configDir) or !is_readable(OC::$configDir)) { @@ -1269,15 +1259,6 @@ class OC_Util { } /** - * Checks whether the server is running on Windows - * - * @return bool true if running on Windows, false otherwise - */ - public static function runningOnWindows() { - return (substr(PHP_OS, 0, 3) === "WIN"); - } - - /** * Checks whether the server is running on Mac OS X * * @return bool true if running on Mac OS X, false otherwise diff --git a/lib/public/AppFramework/Http/ContentSecurityPolicy.php b/lib/public/AppFramework/Http/ContentSecurityPolicy.php index 082aa0206c7..17844497f94 100644 --- a/lib/public/AppFramework/Http/ContentSecurityPolicy.php +++ b/lib/public/AppFramework/Http/ContentSecurityPolicy.php @@ -24,8 +24,6 @@ namespace OCP\AppFramework\Http; -use OCP\AppFramework\Http; - /** * Class ContentSecurityPolicy is a simple helper which allows applications to * modify the Content-Security-Policy sent by ownCloud. Per default only JavaScript, diff --git a/lib/public/AppFramework/Http/EmptyContentSecurityPolicy.php b/lib/public/AppFramework/Http/EmptyContentSecurityPolicy.php index 4fca1588e7f..ae4ceef1923 100644 --- a/lib/public/AppFramework/Http/EmptyContentSecurityPolicy.php +++ b/lib/public/AppFramework/Http/EmptyContentSecurityPolicy.php @@ -38,6 +38,8 @@ use OCP\AppFramework\Http; class EmptyContentSecurityPolicy { /** @var bool Whether inline JS snippets are allowed */ protected $inlineScriptAllowed = null; + /** @var string Whether JS nonces should be used */ + protected $useJsNonce = null; /** * @var bool Whether eval in JS scripts is allowed * TODO: Disallow per default @@ -74,6 +76,7 @@ class EmptyContentSecurityPolicy { * @param bool $state * @return $this * @since 8.1.0 + * @deprecated 10.0 CSP tokens are now used */ public function allowInlineScript($state = false) { $this->inlineScriptAllowed = $state; @@ -81,6 +84,18 @@ class EmptyContentSecurityPolicy { } /** + * Use the according JS nonce + * + * @param string $nonce + * @return $this + * @since 9.2.0 + */ + public function useJsNonce($nonce) { + $this->useJsNonce = $nonce; + return $this; + } + + /** * Whether eval in JavaScript is allowed or forbidden * @param bool $state * @return $this @@ -323,6 +338,15 @@ class EmptyContentSecurityPolicy { if(!empty($this->allowedScriptDomains) || $this->inlineScriptAllowed || $this->evalScriptAllowed) { $policy .= 'script-src '; + if(is_string($this->useJsNonce)) { + $policy .= '\'nonce-'.base64_encode($this->useJsNonce).'\''; + $allowedScriptDomains = array_flip($this->allowedScriptDomains); + unset($allowedScriptDomains['\'self\'']); + $this->allowedScriptDomains = array_flip($allowedScriptDomains); + if(count($allowedScriptDomains) !== 0) { + $policy .= ' '; + } + } if(is_array($this->allowedScriptDomains)) { $policy .= implode(' ', $this->allowedScriptDomains); } diff --git a/lib/public/Comments/IComment.php b/lib/public/Comments/IComment.php index bb997a07223..8210d4c8c7e 100644 --- a/lib/public/Comments/IComment.php +++ b/lib/public/Comments/IComment.php @@ -133,6 +133,28 @@ interface IComment { public function setMessage($message); /** + * returns an array containing mentions that are included in the comment + * + * @return array each mention provides a 'type' and an 'id', see example below + * @since 9.2.0 + * + * The return array looks like: + * [ + * [ + * 'type' => 'user', + * 'id' => 'citizen4' + * ], + * [ + * 'type' => 'group', + * 'id' => 'media' + * ], + * … + * ] + * + */ + public function getMentions(); + + /** * returns the verb of the comment * * @return string diff --git a/lib/public/Comments/ICommentsManager.php b/lib/public/Comments/ICommentsManager.php index 98169fb335f..6a32cfd803d 100644 --- a/lib/public/Comments/ICommentsManager.php +++ b/lib/public/Comments/ICommentsManager.php @@ -246,4 +246,32 @@ interface ICommentsManager { */ public function registerEventHandler(\Closure $closure); + /** + * registers a method that resolves an ID to a display name for a given type + * + * @param string $type + * @param \Closure $closure + * @throws \OutOfBoundsException + * @since 9.2.0 + * + * Only one resolver shall be registered per type. Otherwise a + * \OutOfBoundsException has to thrown. + */ + public function registerDisplayNameResolver($type, \Closure $closure); + + /** + * resolves a given ID of a given Type to a display name. + * + * @param string $type + * @param string $id + * @return string + * @throws \OutOfBoundsException + * @since 9.2.0 + * + * If a provided type was not registered, an \OutOfBoundsException shall + * be thrown. It is upon the resolver discretion what to return of the + * provided ID is unknown. It must be ensured that a string is returned. + */ + public function resolveDisplayName($type, $id); + } diff --git a/lib/public/Files/StorageNotAvailableException.php b/lib/public/Files/StorageNotAvailableException.php index a28a66f2510..b6a5a70718a 100644 --- a/lib/public/Files/StorageNotAvailableException.php +++ b/lib/public/Files/StorageNotAvailableException.php @@ -58,7 +58,7 @@ class StorageNotAvailableException extends HintException { */ public function __construct($message = '', $code = self::STATUS_ERROR, \Exception $previous = null) { $l = \OC::$server->getL10N('core'); - parent::__construct($message, $l->t('Storage not available'), $code, $previous); + parent::__construct($message, $l->t('Storage is temporarily not available'), $code, $previous); } /** diff --git a/lib/public/IDBConnection.php b/lib/public/IDBConnection.php index 188e715aba0..31706342228 100644 --- a/lib/public/IDBConnection.php +++ b/lib/public/IDBConnection.php @@ -251,4 +251,12 @@ interface IDBConnection { * @since 9.0.0 */ public function escapeLikeParameter($param); + + /** + * Check whether or not the current database support 4byte wide unicode + * + * @return bool + * @since 9.2.0 + */ + public function supports4ByteText(); } |