aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/composer/composer/autoload_classmap.php1
-rw-r--r--lib/composer/composer/autoload_static.php1
-rw-r--r--lib/l10n/de.js2
-rw-r--r--lib/l10n/de.json2
-rw-r--r--lib/l10n/de_DE.js4
-rw-r--r--lib/l10n/de_DE.json4
-rw-r--r--lib/l10n/et_EE.js20
-rw-r--r--lib/l10n/et_EE.json20
-rw-r--r--lib/l10n/tr.js2
-rw-r--r--lib/l10n/tr.json2
-rw-r--r--lib/l10n/uk.js1
-rw-r--r--lib/l10n/uk.json1
-rw-r--r--lib/l10n/uz.js1
-rw-r--r--lib/l10n/uz.json1
-rw-r--r--lib/private/NavigationManager.php19
-rw-r--r--lib/private/Security/Normalizer/IpAddress.php9
-rw-r--r--lib/private/TaskProcessing/Manager.php1
-rw-r--r--lib/private/Template/JSResourceLocator.php2
-rw-r--r--lib/private/URLGenerator.php5
-rw-r--r--lib/public/TaskProcessing/TaskTypes/TextToSpeech.php92
20 files changed, 167 insertions, 23 deletions
diff --git a/lib/composer/composer/autoload_classmap.php b/lib/composer/composer/autoload_classmap.php
index 3d36f50e950..6264126b028 100644
--- a/lib/composer/composer/autoload_classmap.php
+++ b/lib/composer/composer/autoload_classmap.php
@@ -837,6 +837,7 @@ return array(
'OCP\\TaskProcessing\\TaskTypes\\ContextWrite' => $baseDir . '/lib/public/TaskProcessing/TaskTypes/ContextWrite.php',
'OCP\\TaskProcessing\\TaskTypes\\GenerateEmoji' => $baseDir . '/lib/public/TaskProcessing/TaskTypes/GenerateEmoji.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToImage' => $baseDir . '/lib/public/TaskProcessing/TaskTypes/TextToImage.php',
+ 'OCP\\TaskProcessing\\TaskTypes\\TextToSpeech' => $baseDir . '/lib/public/TaskProcessing/TaskTypes/TextToSpeech.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToText' => $baseDir . '/lib/public/TaskProcessing/TaskTypes/TextToText.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToTextChangeTone' => $baseDir . '/lib/public/TaskProcessing/TaskTypes/TextToTextChangeTone.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToTextChat' => $baseDir . '/lib/public/TaskProcessing/TaskTypes/TextToTextChat.php',
diff --git a/lib/composer/composer/autoload_static.php b/lib/composer/composer/autoload_static.php
index 7085d0b4a44..5771a621afe 100644
--- a/lib/composer/composer/autoload_static.php
+++ b/lib/composer/composer/autoload_static.php
@@ -878,6 +878,7 @@ class ComposerStaticInit749170dad3f5e7f9ca158f5a9f04f6a2
'OCP\\TaskProcessing\\TaskTypes\\ContextWrite' => __DIR__ . '/../../..' . '/lib/public/TaskProcessing/TaskTypes/ContextWrite.php',
'OCP\\TaskProcessing\\TaskTypes\\GenerateEmoji' => __DIR__ . '/../../..' . '/lib/public/TaskProcessing/TaskTypes/GenerateEmoji.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToImage' => __DIR__ . '/../../..' . '/lib/public/TaskProcessing/TaskTypes/TextToImage.php',
+ 'OCP\\TaskProcessing\\TaskTypes\\TextToSpeech' => __DIR__ . '/../../..' . '/lib/public/TaskProcessing/TaskTypes/TextToSpeech.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToText' => __DIR__ . '/../../..' . '/lib/public/TaskProcessing/TaskTypes/TextToText.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToTextChangeTone' => __DIR__ . '/../../..' . '/lib/public/TaskProcessing/TaskTypes/TextToTextChangeTone.php',
'OCP\\TaskProcessing\\TaskTypes\\TextToTextChat' => __DIR__ . '/../../..' . '/lib/public/TaskProcessing/TaskTypes/TextToTextChat.php',
diff --git a/lib/l10n/de.js b/lib/l10n/de.js
index 565432632e8..cf3ea1d59ba 100644
--- a/lib/l10n/de.js
+++ b/lib/l10n/de.js
@@ -101,7 +101,7 @@ OC.L10N.register(
"Invalid parent path" : "Ungültiger übergeordneter Pfad",
"File already exists" : "Datei bereits vorhanden",
"Invalid path" : "Ungültiger Pfad",
- "Failed to create file from template" : "Fehler beim Erstellen der Datei aus Vorlage",
+ "Failed to create file from template" : "Datei konnte nicht aus Vorlage erstellt werden",
"Templates" : "Vorlagen",
"Storage %s cannot be moved" : "Speicherplatz %s kann nicht verschoben werden",
"Moving a share (%s) into a shared folder is not allowed" : "Verschieben einer Freigabe (%s) in einen freigegebenen Ordner ist unzulässig",
diff --git a/lib/l10n/de.json b/lib/l10n/de.json
index f9b01867ab0..b40c32376cd 100644
--- a/lib/l10n/de.json
+++ b/lib/l10n/de.json
@@ -99,7 +99,7 @@
"Invalid parent path" : "Ungültiger übergeordneter Pfad",
"File already exists" : "Datei bereits vorhanden",
"Invalid path" : "Ungültiger Pfad",
- "Failed to create file from template" : "Fehler beim Erstellen der Datei aus Vorlage",
+ "Failed to create file from template" : "Datei konnte nicht aus Vorlage erstellt werden",
"Templates" : "Vorlagen",
"Storage %s cannot be moved" : "Speicherplatz %s kann nicht verschoben werden",
"Moving a share (%s) into a shared folder is not allowed" : "Verschieben einer Freigabe (%s) in einen freigegebenen Ordner ist unzulässig",
diff --git a/lib/l10n/de_DE.js b/lib/l10n/de_DE.js
index d43d052a549..80b0ee32bd4 100644
--- a/lib/l10n/de_DE.js
+++ b/lib/l10n/de_DE.js
@@ -101,7 +101,7 @@ OC.L10N.register(
"Invalid parent path" : "Ungültiger übergeordneter Pfad",
"File already exists" : "Datei bereits vorhanden",
"Invalid path" : "Ungültiger Pfad",
- "Failed to create file from template" : "Fehler beim Erstellen der Datei aus Vorlage",
+ "Failed to create file from template" : "Datei konnte nicht aus Vorlage erstellt werden",
"Templates" : "Vorlagen",
"Storage %s cannot be moved" : "Speicherplatz %s kann nicht verschoben werden",
"Moving a share (%s) into a shared folder is not allowed" : "Verschieben einer Freigabe (%s) in einen freigegebenen Ordner ist unzulässig",
@@ -313,7 +313,7 @@ OC.L10N.register(
"Your data directory is invalid." : "Ihr Datenverzeichnis ist ungültig.",
"Ensure there is a file called \"%1$s\" in the root of the data directory. It should have the content: \"%2$s\"" : "Stellen Sie sicher, dass eine Datei \"%1$s\" im Wurzelverzeichnis des Datenverzeichnisses existiert. Sie sollte folgenden Inhalt haben: \"%2$s\"",
"Action \"%s\" not supported or implemented." : "Aktion \"%s\" wird nicht unterstützt oder ist nicht implementiert.",
- "Authentication failed, wrong token or provider ID given" : "Authentifizierung ist fehlgeschlagen. Falsches Token oder Provider-ID wurde übertragen.",
+ "Authentication failed, wrong token or provider ID given" : "Authentifizierung fehlgeschlagen, falsches Token oder falsche Provider-ID angegeben",
"Parameters missing in order to complete the request. Missing Parameters: \"%s\"" : "Es fehlen Parameter um die Anfrage zu bearbeiten. Fehlende Parameter: \"%s\"",
"ID \"%1$s\" already used by cloud federation provider \"%2$s\"" : "ID \"%1$s\" wird bereits von Cloud-Federation-Provider \"%2$s\" verwendet.",
"Cloud Federation Provider with ID: \"%s\" does not exist." : "Cloud-Federation-Provider mit ID: \"%s\" ist nicht vorhanden.",
diff --git a/lib/l10n/de_DE.json b/lib/l10n/de_DE.json
index 9e974ad5fac..9354b0bcdf6 100644
--- a/lib/l10n/de_DE.json
+++ b/lib/l10n/de_DE.json
@@ -99,7 +99,7 @@
"Invalid parent path" : "Ungültiger übergeordneter Pfad",
"File already exists" : "Datei bereits vorhanden",
"Invalid path" : "Ungültiger Pfad",
- "Failed to create file from template" : "Fehler beim Erstellen der Datei aus Vorlage",
+ "Failed to create file from template" : "Datei konnte nicht aus Vorlage erstellt werden",
"Templates" : "Vorlagen",
"Storage %s cannot be moved" : "Speicherplatz %s kann nicht verschoben werden",
"Moving a share (%s) into a shared folder is not allowed" : "Verschieben einer Freigabe (%s) in einen freigegebenen Ordner ist unzulässig",
@@ -311,7 +311,7 @@
"Your data directory is invalid." : "Ihr Datenverzeichnis ist ungültig.",
"Ensure there is a file called \"%1$s\" in the root of the data directory. It should have the content: \"%2$s\"" : "Stellen Sie sicher, dass eine Datei \"%1$s\" im Wurzelverzeichnis des Datenverzeichnisses existiert. Sie sollte folgenden Inhalt haben: \"%2$s\"",
"Action \"%s\" not supported or implemented." : "Aktion \"%s\" wird nicht unterstützt oder ist nicht implementiert.",
- "Authentication failed, wrong token or provider ID given" : "Authentifizierung ist fehlgeschlagen. Falsches Token oder Provider-ID wurde übertragen.",
+ "Authentication failed, wrong token or provider ID given" : "Authentifizierung fehlgeschlagen, falsches Token oder falsche Provider-ID angegeben",
"Parameters missing in order to complete the request. Missing Parameters: \"%s\"" : "Es fehlen Parameter um die Anfrage zu bearbeiten. Fehlende Parameter: \"%s\"",
"ID \"%1$s\" already used by cloud federation provider \"%2$s\"" : "ID \"%1$s\" wird bereits von Cloud-Federation-Provider \"%2$s\" verwendet.",
"Cloud Federation Provider with ID: \"%s\" does not exist." : "Cloud-Federation-Provider mit ID: \"%s\" ist nicht vorhanden.",
diff --git a/lib/l10n/et_EE.js b/lib/l10n/et_EE.js
index 7a32b1cec33..8649dbcd28d 100644
--- a/lib/l10n/et_EE.js
+++ b/lib/l10n/et_EE.js
@@ -2,9 +2,13 @@ OC.L10N.register(
"lib",
{
"Cannot write into \"config\" directory!" : "Ei saa kirjutada „config“ kausta!!",
+ "This can usually be fixed by giving the web server write access to the config directory." : "Tavaliselt saad selle lahendada andes veebiserverile õigused seadistuse kausta kirjutamiseks",
+ "But, if you prefer to keep config.php file read only, set the option \"config_is_read_only\" to true in it." : "Aga kui soovid, et seadistuste fail ei peaks olema veebiserveri poolt muudetav, siis palun määra seadistusvõtme „config_is_read_only“ väärtuseks true.",
"See %s" : "Vaata %s",
+ "Application %1$s is not present or has a non-compatible version with this server. Please check the apps directory." : "Rakendust „%1$s“ pole serverisse paigaldatud või pole tema versioon ühilduv selle serveriga. Palun kontrolli paigaldatud rakendusi.",
"Sample configuration detected" : "Tuvastati näidisseaded",
"It has been detected that the sample configuration has been copied. This can break your installation and is unsupported. Please read the documentation before performing changes on config.php" : "Tuvastati, et kopeeriti näidisseaded. See võib lõhkuda sinu saidi ja see pole toetatud. Palun loe enne faili config.php muutmist dokumentatsiooni",
+ "The page could not be found on the server." : "Seda lehte ei õnnestunud serverist leida.",
"%s email verification" : "E-postiaadressi kinnitamine: %s",
"Email verification" : "E-postiaadressi kinnitamine",
"Click the following button to confirm your email." : "Oma e-postiaadressi kinnitamiseks klõpsi järgmisel nupul.",
@@ -17,6 +21,7 @@ OC.L10N.register(
"%1$s, %2$s, %3$s, %4$s and %5$s" : "%1$s, %2$s, %3$s, %4$s ja %5$s",
"PHP %s or higher is required." : "PHP %s või uuem on nõutav.",
"PHP with a version lower than %s is required." : "Nõutud on PHP madalama versiooniga kui %s.",
+ "%sbit or higher PHP required." : "Vajalik on %s-bitine või parem PHP versioon.",
"The following architectures are supported: %s" : "Toetatud on järgnevad arhitektuurid: %s",
"The following databases are supported: %s" : "Toetatud on järgnevad andmebaasid: %s",
"The command line tool %s could not be found" : "Käsurea töövahendit %s ei leitud",
@@ -99,6 +104,7 @@ OC.L10N.register(
"Filename contains at least one invalid character" : "Failinimes on vähemalt üks keelatud märk",
"Filename is too long" : "Failinimi on liiga pikk",
"Empty filename is not allowed" : "Tühi failinimi pole lubatud",
+ "App \"%s\" cannot be installed because appinfo file cannot be read." : "Kuna „appinfo“ faili pole võimalik lugeda, siis „%s“ rakendust ei saa paigaldada.",
"App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Kuna ta pole ühilduv selle serveri versiooniga, siis „%s“ rakendust ei saa paigaldada.",
"__language_name__" : "Eesti",
"This is an automatically sent email, please do not reply." : "See on automaatselt saadetud e-kiri, palun ära vasta.",
@@ -130,6 +136,7 @@ OC.L10N.register(
"Pronouns" : "Asesõnad pöördumisel",
"Unknown account" : "Tundmatu kasutajakonto",
"Additional settings" : "Lisaseaded",
+ "Enter the database Login and name for %s" : "Andmebaasi kasutajanimi ning nimi %si jaoks",
"Enter the database Login for %s" : "Sisesta andmebaasi %s kasutajatunnus",
"Enter the database name for %s" : "Sisesta andmebaasi %s nimi",
"You cannot use dots in the database name %s" : "Sa ei tohi kasutada „%s“ andmebaasi nimes punkte",
@@ -153,6 +160,7 @@ OC.L10N.register(
"%1$s shared %2$s with you and wants to add:" : "%1$s jagas sinuga %2$s ning soovib lisada:",
"%1$s shared %2$s with you and wants to add" : "%1$s jagas sinuga %2$s ning soovib lisada",
"%s added a note to a file shared with you" : "%s jagas koos sulle jagatud failiga ka märget",
+ "Passwords are enforced for link and mail shares" : "Linkide ja e-posti teel levitatava jaosmeedia puhul on salasõnade kasutamine nõutav",
"Share recipient is not a valid user" : "Jaosmeedia vastuvõtja pole korrektne kasutaja",
"Share recipient is not a valid group" : "Jaosmeedia vastuvõtja pole korrektne grupp",
"Share recipient should be empty" : "Jaosmeedia vastuvõtja peaks jääma tühjaks",
@@ -176,6 +184,7 @@ OC.L10N.register(
"Sharing is only allowed with group members" : "Jagamine on lubatud vaid grupi liikmetega",
"Sharing %s failed, because this item is already shared with the account %s" : "%s jagamine ebaõnnestus, kuna seda üksust on juba jagatud kontoga %s",
"Group sharing is now allowed" : "Grupile jagamine on nüüd lubatud",
+ "Sharing is only allowed within your own groups" : "Jagamine on lubatud vaid sinu oma grupi liikmetega",
"Path is already shared with this group" : "Asukoht on selle grupiga juba jagatud",
"Link sharing is not allowed" : "Lingi jagamine pole lubatud",
"Public upload is not allowed" : "Avalik üleslaadimine pole lubatud",
@@ -187,7 +196,7 @@ OC.L10N.register(
"Invalid share recipient" : "Vigane jaosmeedia vastuvõtja",
"Group \"%s\" does not exist" : "„%s“ gruppi pole olemas",
"The requested share does not exist anymore" : "Soovitud jagamist enam ei eksisteeri",
- "Could not find category \"%s\"" : "Ei leia kategooriat \"%s\"",
+ "Could not find category \"%s\"" : "Ei leia kategooriat „%s“",
"Input text" : "Sisendtekst",
"The input text" : "Sisendtekst",
"Sunday" : "Pühapäev",
@@ -238,7 +247,13 @@ OC.L10N.register(
"A valid password must be provided" : "Sisesta nõuetele vastav parool",
"The Login is already being used" : "See kasutajanimi on juba kasutusel",
"Could not create account" : "Kasutajakonto loomine ei õnnestunud",
+ "Only the following characters are allowed in an Login: \"a-z\", \"A-Z\", \"0-9\", spaces and \"_.@-'\"" : "Kasutajanimes on lubatud ainult järgmised tähemärgid: „a-z“, „A-Z“, „0-9“, ja „_.@-'“",
+ "A valid Login must be provided" : "Palun sisesta korrektne kasutajanimi",
+ "Login contains whitespace at the beginning or at the end" : "Kasutajanime alguses või lõpus on tühik",
+ "Login must not consist of dots only" : "Kasutajanimi ei tohi koosneda ainult punktidest",
"Login is too long" : "Kasutajanimi on liiga pikk",
+ "Login is invalid because files already exist for this user" : "See kasutajanimi ei sobi, kuna sellise kasutaja faile on juba olemas",
+ "Account disabled" : "Konto pole kasutusel",
"Login canceled by app" : "Rakendus katkestas sisselogimise",
"App \"%1$s\" cannot be installed because the following dependencies are not fulfilled: %2$s" : "„%1$s“ rakendust ei saa paigaldada, sest järgnev sõltuvus on puudu: %2$s",
"a safe home for all your data" : "turvaline koht sinu andmetele",
@@ -252,13 +267,14 @@ OC.L10N.register(
"Please install one of these locales on your system and restart your web server." : "Palun paigalda mõni neist lokaatidest oma serverisse ning taaskäivita veebiserver.",
"PHP module %s not installed." : "PHP moodulit %s pole paigaldatud.",
"Please ask your server administrator to install the module." : "Palu oma serveri haldajal moodul paigadalda.",
- "PHP setting \"%s\" is not set to \"%s\"." : "PHP seade \"%s\" ei ole \"%s\".",
+ "PHP setting \"%s\" is not set to \"%s\"." : "PHP seadistuse „%s“ väärtuseks ei ole „%s“.",
"Adjusting this setting in php.ini will make Nextcloud run again" : "Selle seadistuse kohendamine php.ini failis võimaldab sul Nextcloudi uuesti tööle saada",
"This is probably caused by a cache/accelerator such as Zend OPcache or eAccelerator." : "See on tõenäoliselt põhjustatud puhver/kiirendist nagu Zend OPcache või eAccelerator.",
"PHP modules have been installed, but they are still listed as missing?" : "PHP moodulid on paigaldatud, kuid neid näitatakse endiselt kui puuduolevad?",
"Please ask your server administrator to restart the web server." : "Palu oma serveri haldajal veebiserver taaskäivitada.",
"Your data directory must be an absolute path." : "Andmekausta asukoht peab olema absoluutne aadress.",
"Your data directory is invalid." : "Sinu andmekataloog on vigane",
+ "Ensure there is a file called \"%1$s\" in the root of the data directory. It should have the content: \"%2$s\"" : "Palun taga, et andmete juurkaustas leidub fail „%1$s“, mille sisuks on „%2$s“",
"Action \"%s\" not supported or implemented." : "„%s“ tegevus pole toetatud või implementeeritud.",
"Parameters missing in order to complete the request. Missing Parameters: \"%s\"" : "Päringu lõpetamiseks on puudu järgmised parameetrid; „%s“",
"Cloud Federation Provider with ID: \"%s\" does not exist." : "Liitpilve teenusepakkujat tunnusega „%s“ pole olemas.",
diff --git a/lib/l10n/et_EE.json b/lib/l10n/et_EE.json
index e8db1891012..0b357717ae4 100644
--- a/lib/l10n/et_EE.json
+++ b/lib/l10n/et_EE.json
@@ -1,8 +1,12 @@
{ "translations": {
"Cannot write into \"config\" directory!" : "Ei saa kirjutada „config“ kausta!!",
+ "This can usually be fixed by giving the web server write access to the config directory." : "Tavaliselt saad selle lahendada andes veebiserverile õigused seadistuse kausta kirjutamiseks",
+ "But, if you prefer to keep config.php file read only, set the option \"config_is_read_only\" to true in it." : "Aga kui soovid, et seadistuste fail ei peaks olema veebiserveri poolt muudetav, siis palun määra seadistusvõtme „config_is_read_only“ väärtuseks true.",
"See %s" : "Vaata %s",
+ "Application %1$s is not present or has a non-compatible version with this server. Please check the apps directory." : "Rakendust „%1$s“ pole serverisse paigaldatud või pole tema versioon ühilduv selle serveriga. Palun kontrolli paigaldatud rakendusi.",
"Sample configuration detected" : "Tuvastati näidisseaded",
"It has been detected that the sample configuration has been copied. This can break your installation and is unsupported. Please read the documentation before performing changes on config.php" : "Tuvastati, et kopeeriti näidisseaded. See võib lõhkuda sinu saidi ja see pole toetatud. Palun loe enne faili config.php muutmist dokumentatsiooni",
+ "The page could not be found on the server." : "Seda lehte ei õnnestunud serverist leida.",
"%s email verification" : "E-postiaadressi kinnitamine: %s",
"Email verification" : "E-postiaadressi kinnitamine",
"Click the following button to confirm your email." : "Oma e-postiaadressi kinnitamiseks klõpsi järgmisel nupul.",
@@ -15,6 +19,7 @@
"%1$s, %2$s, %3$s, %4$s and %5$s" : "%1$s, %2$s, %3$s, %4$s ja %5$s",
"PHP %s or higher is required." : "PHP %s või uuem on nõutav.",
"PHP with a version lower than %s is required." : "Nõutud on PHP madalama versiooniga kui %s.",
+ "%sbit or higher PHP required." : "Vajalik on %s-bitine või parem PHP versioon.",
"The following architectures are supported: %s" : "Toetatud on järgnevad arhitektuurid: %s",
"The following databases are supported: %s" : "Toetatud on järgnevad andmebaasid: %s",
"The command line tool %s could not be found" : "Käsurea töövahendit %s ei leitud",
@@ -97,6 +102,7 @@
"Filename contains at least one invalid character" : "Failinimes on vähemalt üks keelatud märk",
"Filename is too long" : "Failinimi on liiga pikk",
"Empty filename is not allowed" : "Tühi failinimi pole lubatud",
+ "App \"%s\" cannot be installed because appinfo file cannot be read." : "Kuna „appinfo“ faili pole võimalik lugeda, siis „%s“ rakendust ei saa paigaldada.",
"App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Kuna ta pole ühilduv selle serveri versiooniga, siis „%s“ rakendust ei saa paigaldada.",
"__language_name__" : "Eesti",
"This is an automatically sent email, please do not reply." : "See on automaatselt saadetud e-kiri, palun ära vasta.",
@@ -128,6 +134,7 @@
"Pronouns" : "Asesõnad pöördumisel",
"Unknown account" : "Tundmatu kasutajakonto",
"Additional settings" : "Lisaseaded",
+ "Enter the database Login and name for %s" : "Andmebaasi kasutajanimi ning nimi %si jaoks",
"Enter the database Login for %s" : "Sisesta andmebaasi %s kasutajatunnus",
"Enter the database name for %s" : "Sisesta andmebaasi %s nimi",
"You cannot use dots in the database name %s" : "Sa ei tohi kasutada „%s“ andmebaasi nimes punkte",
@@ -151,6 +158,7 @@
"%1$s shared %2$s with you and wants to add:" : "%1$s jagas sinuga %2$s ning soovib lisada:",
"%1$s shared %2$s with you and wants to add" : "%1$s jagas sinuga %2$s ning soovib lisada",
"%s added a note to a file shared with you" : "%s jagas koos sulle jagatud failiga ka märget",
+ "Passwords are enforced for link and mail shares" : "Linkide ja e-posti teel levitatava jaosmeedia puhul on salasõnade kasutamine nõutav",
"Share recipient is not a valid user" : "Jaosmeedia vastuvõtja pole korrektne kasutaja",
"Share recipient is not a valid group" : "Jaosmeedia vastuvõtja pole korrektne grupp",
"Share recipient should be empty" : "Jaosmeedia vastuvõtja peaks jääma tühjaks",
@@ -174,6 +182,7 @@
"Sharing is only allowed with group members" : "Jagamine on lubatud vaid grupi liikmetega",
"Sharing %s failed, because this item is already shared with the account %s" : "%s jagamine ebaõnnestus, kuna seda üksust on juba jagatud kontoga %s",
"Group sharing is now allowed" : "Grupile jagamine on nüüd lubatud",
+ "Sharing is only allowed within your own groups" : "Jagamine on lubatud vaid sinu oma grupi liikmetega",
"Path is already shared with this group" : "Asukoht on selle grupiga juba jagatud",
"Link sharing is not allowed" : "Lingi jagamine pole lubatud",
"Public upload is not allowed" : "Avalik üleslaadimine pole lubatud",
@@ -185,7 +194,7 @@
"Invalid share recipient" : "Vigane jaosmeedia vastuvõtja",
"Group \"%s\" does not exist" : "„%s“ gruppi pole olemas",
"The requested share does not exist anymore" : "Soovitud jagamist enam ei eksisteeri",
- "Could not find category \"%s\"" : "Ei leia kategooriat \"%s\"",
+ "Could not find category \"%s\"" : "Ei leia kategooriat „%s“",
"Input text" : "Sisendtekst",
"The input text" : "Sisendtekst",
"Sunday" : "Pühapäev",
@@ -236,7 +245,13 @@
"A valid password must be provided" : "Sisesta nõuetele vastav parool",
"The Login is already being used" : "See kasutajanimi on juba kasutusel",
"Could not create account" : "Kasutajakonto loomine ei õnnestunud",
+ "Only the following characters are allowed in an Login: \"a-z\", \"A-Z\", \"0-9\", spaces and \"_.@-'\"" : "Kasutajanimes on lubatud ainult järgmised tähemärgid: „a-z“, „A-Z“, „0-9“, ja „_.@-'“",
+ "A valid Login must be provided" : "Palun sisesta korrektne kasutajanimi",
+ "Login contains whitespace at the beginning or at the end" : "Kasutajanime alguses või lõpus on tühik",
+ "Login must not consist of dots only" : "Kasutajanimi ei tohi koosneda ainult punktidest",
"Login is too long" : "Kasutajanimi on liiga pikk",
+ "Login is invalid because files already exist for this user" : "See kasutajanimi ei sobi, kuna sellise kasutaja faile on juba olemas",
+ "Account disabled" : "Konto pole kasutusel",
"Login canceled by app" : "Rakendus katkestas sisselogimise",
"App \"%1$s\" cannot be installed because the following dependencies are not fulfilled: %2$s" : "„%1$s“ rakendust ei saa paigaldada, sest järgnev sõltuvus on puudu: %2$s",
"a safe home for all your data" : "turvaline koht sinu andmetele",
@@ -250,13 +265,14 @@
"Please install one of these locales on your system and restart your web server." : "Palun paigalda mõni neist lokaatidest oma serverisse ning taaskäivita veebiserver.",
"PHP module %s not installed." : "PHP moodulit %s pole paigaldatud.",
"Please ask your server administrator to install the module." : "Palu oma serveri haldajal moodul paigadalda.",
- "PHP setting \"%s\" is not set to \"%s\"." : "PHP seade \"%s\" ei ole \"%s\".",
+ "PHP setting \"%s\" is not set to \"%s\"." : "PHP seadistuse „%s“ väärtuseks ei ole „%s“.",
"Adjusting this setting in php.ini will make Nextcloud run again" : "Selle seadistuse kohendamine php.ini failis võimaldab sul Nextcloudi uuesti tööle saada",
"This is probably caused by a cache/accelerator such as Zend OPcache or eAccelerator." : "See on tõenäoliselt põhjustatud puhver/kiirendist nagu Zend OPcache või eAccelerator.",
"PHP modules have been installed, but they are still listed as missing?" : "PHP moodulid on paigaldatud, kuid neid näitatakse endiselt kui puuduolevad?",
"Please ask your server administrator to restart the web server." : "Palu oma serveri haldajal veebiserver taaskäivitada.",
"Your data directory must be an absolute path." : "Andmekausta asukoht peab olema absoluutne aadress.",
"Your data directory is invalid." : "Sinu andmekataloog on vigane",
+ "Ensure there is a file called \"%1$s\" in the root of the data directory. It should have the content: \"%2$s\"" : "Palun taga, et andmete juurkaustas leidub fail „%1$s“, mille sisuks on „%2$s“",
"Action \"%s\" not supported or implemented." : "„%s“ tegevus pole toetatud või implementeeritud.",
"Parameters missing in order to complete the request. Missing Parameters: \"%s\"" : "Päringu lõpetamiseks on puudu järgmised parameetrid; „%s“",
"Cloud Federation Provider with ID: \"%s\" does not exist." : "Liitpilve teenusepakkujat tunnusega „%s“ pole olemas.",
diff --git a/lib/l10n/tr.js b/lib/l10n/tr.js
index a03970a1c3b..ad607e4b9cc 100644
--- a/lib/l10n/tr.js
+++ b/lib/l10n/tr.js
@@ -201,6 +201,7 @@ OC.L10N.register(
"Path is already shared with this group" : "Bu yol bu grup ile zaten paylaşılmış",
"Link sharing is not allowed" : "Bağlantı paylaşımına izin verilmiyor",
"Public upload is not allowed" : "Herkese açık yüklemeye izin verilmiyor",
+ "You cannot share a folder that contains other shares" : "Başka paylaşımların bulunduğu bir klasörü paylaşamazsınız",
"Sharing is disabled" : "Paylaşım kullanımdan kaldırılmış",
"Sharing is disabled for you" : "Paylaşım sizin için kullanımdan kaldırılmış",
"Cannot share with the share owner" : "Paylaşımı sahibi ile paylaşamazsınız",
@@ -272,6 +273,7 @@ OC.L10N.register(
"A valid Login must be provided" : "Geçerli bir kullanıcı adı yazmalısınız",
"Login contains whitespace at the beginning or at the end" : "Kullanıcı adının başında ya da sonunda boşluk var",
"Login must not consist of dots only" : "Kullanıcı adı yalnızca noktalardan oluşamaz",
+ "Login is too long" : "Kullanıcı adı çok uzun",
"Login is invalid because files already exist for this user" : "Kullanıcı adı geçersiz, bu kullanıcı için zaten bazı dosyalar var",
"Account disabled" : "Hesap kullanımdan kaldırılmış",
"Login canceled by app" : "Oturum açma uygulama tarafından iptal edildi",
diff --git a/lib/l10n/tr.json b/lib/l10n/tr.json
index a066cd1a337..9a89aab5b92 100644
--- a/lib/l10n/tr.json
+++ b/lib/l10n/tr.json
@@ -199,6 +199,7 @@
"Path is already shared with this group" : "Bu yol bu grup ile zaten paylaşılmış",
"Link sharing is not allowed" : "Bağlantı paylaşımına izin verilmiyor",
"Public upload is not allowed" : "Herkese açık yüklemeye izin verilmiyor",
+ "You cannot share a folder that contains other shares" : "Başka paylaşımların bulunduğu bir klasörü paylaşamazsınız",
"Sharing is disabled" : "Paylaşım kullanımdan kaldırılmış",
"Sharing is disabled for you" : "Paylaşım sizin için kullanımdan kaldırılmış",
"Cannot share with the share owner" : "Paylaşımı sahibi ile paylaşamazsınız",
@@ -270,6 +271,7 @@
"A valid Login must be provided" : "Geçerli bir kullanıcı adı yazmalısınız",
"Login contains whitespace at the beginning or at the end" : "Kullanıcı adının başında ya da sonunda boşluk var",
"Login must not consist of dots only" : "Kullanıcı adı yalnızca noktalardan oluşamaz",
+ "Login is too long" : "Kullanıcı adı çok uzun",
"Login is invalid because files already exist for this user" : "Kullanıcı adı geçersiz, bu kullanıcı için zaten bazı dosyalar var",
"Account disabled" : "Hesap kullanımdan kaldırılmış",
"Login canceled by app" : "Oturum açma uygulama tarafından iptal edildi",
diff --git a/lib/l10n/uk.js b/lib/l10n/uk.js
index 3d29de9a772..f63a5bda6bb 100644
--- a/lib/l10n/uk.js
+++ b/lib/l10n/uk.js
@@ -336,6 +336,7 @@ OC.L10N.register(
"Generate image" : "Зґенерувати зображення",
"Prompt" : "Запрошення",
"Chat" : "Чат",
+ "Available tools" : "Доступні інструменти",
"Generates a possible headline for a text." : "Створює ймовірний заголовок тексту.",
"Text" : "Текст",
"Summarize" : "Підсумок",
diff --git a/lib/l10n/uk.json b/lib/l10n/uk.json
index 4a4fba617b4..dec967a6c07 100644
--- a/lib/l10n/uk.json
+++ b/lib/l10n/uk.json
@@ -334,6 +334,7 @@
"Generate image" : "Зґенерувати зображення",
"Prompt" : "Запрошення",
"Chat" : "Чат",
+ "Available tools" : "Доступні інструменти",
"Generates a possible headline for a text." : "Створює ймовірний заголовок тексту.",
"Text" : "Текст",
"Summarize" : "Підсумок",
diff --git a/lib/l10n/uz.js b/lib/l10n/uz.js
index b3d7be96b38..10dc2ccabf5 100644
--- a/lib/l10n/uz.js
+++ b/lib/l10n/uz.js
@@ -31,6 +31,7 @@ OC.L10N.register(
"Authentication error" : "Authentication error",
"Storage is temporarily not available" : "Storage is temporarily not available",
"Confirmation" : "Tasdiqlash",
+ "Text" : "Matn",
"Translate" : "Tarjima",
"File name is too long" : "File name is too long",
"Users" : "Users",
diff --git a/lib/l10n/uz.json b/lib/l10n/uz.json
index d032d72f931..6a9b2008a78 100644
--- a/lib/l10n/uz.json
+++ b/lib/l10n/uz.json
@@ -29,6 +29,7 @@
"Authentication error" : "Authentication error",
"Storage is temporarily not available" : "Storage is temporarily not available",
"Confirmation" : "Tasdiqlash",
+ "Text" : "Matn",
"Translate" : "Tarjima",
"File name is too long" : "File name is too long",
"Users" : "Users",
diff --git a/lib/private/NavigationManager.php b/lib/private/NavigationManager.php
index c2125bc6f8a..fb0795376bb 100644
--- a/lib/private/NavigationManager.php
+++ b/lib/private/NavigationManager.php
@@ -77,7 +77,7 @@ class NavigationManager implements INavigationManager {
$this->closureEntries[] = $entry;
return;
}
- $this->init();
+ $this->init(false);
$id = $entry['id'];
@@ -123,10 +123,6 @@ class NavigationManager implements INavigationManager {
*/
public function getAll(string $type = 'link'): array {
$this->init();
- foreach ($this->closureEntries as $c) {
- $this->add($c());
- }
- $this->closureEntries = [];
$result = $this->entries;
if ($type !== 'all') {
@@ -212,7 +208,13 @@ class NavigationManager implements INavigationManager {
return $this->activeEntry;
}
- private function init() {
+ private function init(bool $resolveClosures = true): void {
+ if ($resolveClosures) {
+ while ($c = array_pop($this->closureEntries)) {
+ $this->add($c());
+ }
+ }
+
if ($this->init) {
return;
}
@@ -420,11 +422,6 @@ class NavigationManager implements INavigationManager {
public function get(string $id): ?array {
$this->init();
- foreach ($this->closureEntries as $c) {
- $this->add($c());
- }
- $this->closureEntries = [];
-
return $this->entries[$id];
}
diff --git a/lib/private/Security/Normalizer/IpAddress.php b/lib/private/Security/Normalizer/IpAddress.php
index b3793685a24..4d33a7bd632 100644
--- a/lib/private/Security/Normalizer/IpAddress.php
+++ b/lib/private/Security/Normalizer/IpAddress.php
@@ -42,8 +42,15 @@ class IpAddress {
$maskSize = min(64, $config->getSystemValueInt('security.ipv6_normalized_subnet_size', 56));
$maskSize = max(32, $maskSize);
if (PHP_INT_SIZE === 4) {
+ if ($maskSize === 64) {
+ $value = -1;
+ } elseif ($maskSize === 63) {
+ $value = PHP_INT_MAX;
+ } else {
+ $value = (1 << $maskSize - 32) - 1;
+ }
// as long as we support 32bit PHP we cannot use the `P` pack formatter (and not overflow 32bit integer)
- $mask = pack('VVVV', 0xFFFF, $maskSize === 64 ? 0xFFFF : ((1 << $maskSize - 32) - 1), 0, 0);
+ $mask = pack('VVVV', -1, $value, 0, 0);
} else {
$mask = pack('VVP', (1 << 32) - 1, (1 << $maskSize - 32) - 1, 0);
}
diff --git a/lib/private/TaskProcessing/Manager.php b/lib/private/TaskProcessing/Manager.php
index a701c23d56f..9992310dbbb 100644
--- a/lib/private/TaskProcessing/Manager.php
+++ b/lib/private/TaskProcessing/Manager.php
@@ -584,6 +584,7 @@ class Manager implements IManager {
\OCP\TaskProcessing\TaskTypes\TextToTextChatWithTools::ID => \OCP\Server::get(\OCP\TaskProcessing\TaskTypes\TextToTextChatWithTools::class),
\OCP\TaskProcessing\TaskTypes\ContextAgentInteraction::ID => \OCP\Server::get(\OCP\TaskProcessing\TaskTypes\ContextAgentInteraction::class),
\OCP\TaskProcessing\TaskTypes\TextToTextProofread::ID => \OCP\Server::get(\OCP\TaskProcessing\TaskTypes\TextToTextProofread::class),
+ \OCP\TaskProcessing\TaskTypes\TextToSpeech::ID => \OCP\Server::get(\OCP\TaskProcessing\TaskTypes\TextToSpeech::class),
];
foreach ($context->getTaskProcessingTaskTypes() as $providerServiceRegistration) {
diff --git a/lib/private/Template/JSResourceLocator.php b/lib/private/Template/JSResourceLocator.php
index aad999f939a..a6d2d13a2ad 100644
--- a/lib/private/Template/JSResourceLocator.php
+++ b/lib/private/Template/JSResourceLocator.php
@@ -69,7 +69,7 @@ class JSResourceLocator extends ResourceLocator {
|| $this->appendScriptIfExist($this->serverroot, "dist/$app-$scriptName")
|| $this->appendScriptIfExist($appRoot, $script, $appWebRoot)
|| $this->cacheAndAppendCombineJsonIfExist($this->serverroot, $script . '.json')
- || $this->cacheAndAppendCombineJsonIfExist($appRoot, $script . '.json', $appWebRoot)
+ || $this->cacheAndAppendCombineJsonIfExist($appRoot, $script . '.json', $app)
|| $this->appendScriptIfExist($this->serverroot, $theme_dir . 'core/' . $script)
|| $this->appendScriptIfExist($this->serverroot, 'core/' . $script)
|| (strpos($scriptName, '/') === -1 && ($this->appendScriptIfExist($this->serverroot, $theme_dir . "dist/core-$scriptName")
diff --git a/lib/private/URLGenerator.php b/lib/private/URLGenerator.php
index ad12fae5144..c78ecac0903 100644
--- a/lib/private/URLGenerator.php
+++ b/lib/private/URLGenerator.php
@@ -304,6 +304,11 @@ class URLGenerator implements IURLGenerator {
if ($href === '') {
throw new \InvalidArgumentException('Default navigation entry is missing href: ' . $entryId);
}
+
+ if (str_starts_with($href, $this->getBaseUrl())) {
+ return $href;
+ }
+
if (str_starts_with($href, '/index.php/') && ($this->config->getSystemValueBool('htaccess.IgnoreFrontController', false) || getenv('front_controller_active') === 'true')) {
$href = substr($href, 10);
}
diff --git a/lib/public/TaskProcessing/TaskTypes/TextToSpeech.php b/lib/public/TaskProcessing/TaskTypes/TextToSpeech.php
new file mode 100644
index 00000000000..ce35be32a6f
--- /dev/null
+++ b/lib/public/TaskProcessing/TaskTypes/TextToSpeech.php
@@ -0,0 +1,92 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+namespace OCP\TaskProcessing\TaskTypes;
+
+use OCP\IL10N;
+use OCP\L10N\IFactory;
+use OCP\TaskProcessing\EShapeType;
+use OCP\TaskProcessing\ITaskType;
+use OCP\TaskProcessing\ShapeDescriptor;
+
+/**
+ * This is the task processing task type for speech generation
+ * @since 32.0.0
+ */
+class TextToSpeech implements ITaskType {
+ /**
+ * @since 32.0.0
+ */
+ public const ID = 'core:text2speech';
+
+ private IL10N $l;
+
+ /**
+ * @param IFactory $l10nFactory
+ * @since 32.0.0
+ */
+ public function __construct(
+ IFactory $l10nFactory,
+ ) {
+ $this->l = $l10nFactory->get('lib');
+ }
+
+
+ /**
+ * @inheritDoc
+ * @since 32.0.0
+ */
+ public function getName(): string {
+ return $this->l->t('Generate speech');
+ }
+
+ /**
+ * @inheritDoc
+ * @since 32.0.0
+ */
+ public function getDescription(): string {
+ return $this->l->t('Generate speech from a transcript');
+ }
+
+ /**
+ * @return string
+ * @since 32.0.0
+ */
+ public function getId(): string {
+ return self::ID;
+ }
+
+ /**
+ * @return ShapeDescriptor[]
+ * @since 32.0.0
+ */
+ public function getInputShape(): array {
+ return [
+ 'input' => new ShapeDescriptor(
+ $this->l->t('Prompt'),
+ $this->l->t('Write transcript that you want the assistant to generate speech from'),
+ EShapeType::Text
+ ),
+ ];
+ }
+
+ /**
+ * @return ShapeDescriptor[]
+ * @since 32.0.0
+ */
+ public function getOutputShape(): array {
+ return [
+ 'speech' => new ShapeDescriptor(
+ $this->l->t('Output speech'),
+ $this->l->t('The generated speech'),
+ EShapeType::Audio
+ ),
+ ];
+ }
+}