aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/l10n/gl.js92
-rw-r--r--lib/l10n/gl.json92
-rw-r--r--lib/private/BackgroundJob/JobList.php2
-rw-r--r--lib/private/Files/ObjectStore/S3ConnectionTrait.php4
-rw-r--r--lib/private/Files/ObjectStore/S3Signature.php2
-rw-r--r--lib/private/PreviewManager.php21
-rw-r--r--lib/private/Share20/DefaultShareProvider.php11
-rw-r--r--lib/public/BackgroundJob/IJobList.php8
-rw-r--r--lib/public/BackgroundJob/QueuedJob.php6
9 files changed, 176 insertions, 62 deletions
diff --git a/lib/l10n/gl.js b/lib/l10n/gl.js
index 89c5244829e..85a357fa7ed 100644
--- a/lib/l10n/gl.js
+++ b/lib/l10n/gl.js
@@ -37,9 +37,9 @@ OC.L10N.register(
"The following platforms are supported: %s" : "Admítense as seguintes plataformas: %s",
"Server version %s or higher is required." : "Precísase da versión %s ou superior do servidor.",
"Server version %s or lower is required." : "Precísase da versión %s ou inferior do servidor.",
- "Logged in account must be an admin, a sub admin or gotten special right to access this setting" : "A conta iniciada debe ser un administrador, un subadministrador ou ter un dereito especial para acceder a esta opción",
- "Logged in account must be an admin or sub admin" : "A conta iniciada debe ser administrador ou subadministrador",
- "Logged in account must be an admin" : "A conta iniciada debe ser un administrador",
+ "Logged in account must be an admin, a sub admin or gotten special right to access this setting" : "A conta que accede debe ser de administración, de subadministración ou ter dereitos especiais para acceder a este axuste",
+ "Logged in account must be an admin or sub admin" : "A conta que accede debe ser de administración ou de subadministración",
+ "Logged in account must be an admin" : "A conta que accede debe ser de administración",
"Wiping of device %s has started" : "Iniciouse a limpeza do dispositivo %s",
"Wiping of device »%s« has started" : "Iniciouse a limpeza do dispositivo «%s»",
"»%s« started remote wipe" : "«%s» iniciou a limpeza remota",
@@ -120,20 +120,20 @@ OC.L10N.register(
"Role" : "Cargo",
"Unknown account" : "Conta descoñecida",
"Additional settings" : "Axustes adicionais",
- "Enter the database Login and name for %s" : "Introduza o inicio de sesión e o nome da base de datos para %s",
- "Enter the database Login for %s" : "Introduza a base de datos Iniciar sesión para %s",
+ "Enter the database Login and name for %s" : "Introduza o acceso a base de datos e o nome para %s",
+ "Enter the database Login for %s" : "Introduza o acceso a base de datos para %s",
"Enter the database name for %s" : "Introduza o nome da base de datos para %s",
"You cannot use dots in the database name %s" : "Non pode usar puntos no nome da base de datos %s",
- "MySQL Login and/or password not valid" : "O inicio de sesión de MySQL e/ou o contrasinal non son válidos",
+ "MySQL Login and/or password not valid" : "O acceso de MySQL e/ou o contrasinal non son válidos",
"You need to enter details of an existing account." : "Debe introducir os detalles dunha conta existente.",
"Oracle connection could not be established" : "Non foi posíbel estabelecer a conexión con Oracle",
- "Oracle Login and/or password not valid" : "O inicio de sesión ou contrasinal de Oracle non é válido",
- "PostgreSQL Login and/or password not valid" : "O inicio de sesión e/ou o contrasinal de PostgreSQL non son válidos",
+ "Oracle Login and/or password not valid" : "O acceso de Oracle e/ou o contrasinal non son válidos",
+ "PostgreSQL Login and/or password not valid" : "O acceso de PostgreSQL e/ou o contrasinal non son válidos",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk! " : "Mac OS X non é compatíbel e %s non funcionará correctamente nesta plataforma. Utilíceo baixo a súa responsabilidade!",
"For the best results, please consider using a GNU/Linux server instead." : "Para obter mellores resultados, considere o emprego dun servidor GNU/Linux no seu canto.",
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Semella que esta instancia de %s está a funcionar nun contorno PHP de 32 bisst e o open_basedir foi configurado no php.ini. Isto provocará problemas con ficheiros maiores de 4 GB e está absolutamente desaconsellado.",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Retire o axuste de open_basedir no php.ini ou cambie a PHP de 64 bits.",
- "Set an admin Login." : "Establece un inicio de sesión de administrador.",
+ "Set an admin Login." : "Definir un acceso de administración",
"Set an admin password." : "Estabeleza un contrasinal de administrador",
"Cannot create or write into the data directory %s" : "Non é posíbel crear ou escribir no directorio de datos %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "A infraestrutura de compartición %s ten que implementar a interface OCP\\Share_Backend",
@@ -151,7 +151,7 @@ OC.L10N.register(
"Expiration date is in the past" : "Xa pasou a data de caducidade",
"_Cannot set expiration date more than %n day in the future_::_Cannot set expiration date more than %n days in the future_" : ["Non é posíbel estabelecer a data de caducidade máis alo de %n día no futuro","Non é posíbel estabelecer a data de caducidade máis alo de %n días no futuro"],
"Sharing is only allowed with group members" : "Só se permite compartir cos membros do grupo",
- "Sharing %s failed, because this item is already shared with the account %s" : "Produciuse un erro ao compartir %s, porque este elemento xa se comparte coa conta %s",
+ "Sharing %s failed, because this item is already shared with the account %s" : "Produciuse un fallo ao compartir %s, porque este elemento xa se comparte coa conta %s",
"%1$s shared »%2$s« with you" : "%1$s compartiu «%2$s» con Vde.",
"%1$s shared »%2$s« with you." : "%1$s compartiu «%2$s» con Vde.",
"Click the button below to open it." : "Prema no botón de embaixo para abrilo.",
@@ -159,6 +159,8 @@ OC.L10N.register(
"The requested share comes from a disabled user" : "A compartición solicitada procede dun usuario desactivado",
"The user was not created because the user limit has been reached. Check your notifications to learn more." : "Non se creou o usuario porque acadouse o límite de usuarios. Consulte as súas notificacións para obter máis información.",
"Could not find category \"%s\"" : "Non foi posíbel atopar a categoría «%s»",
+ "Input text" : "Texto de entrada",
+ "The input text" : "O texto de entrada",
"Sunday" : "domingo",
"Monday" : "luns",
"Tuesday" : "martes",
@@ -205,14 +207,14 @@ OC.L10N.register(
"Nov." : "nov.",
"Dec." : "dec.",
"A valid password must be provided" : "Debe fornecer un contrasinal",
- "The Login is already being used" : "O inicio de sesión xa se está a usar",
- "Could not create account" : "Non se puido crear a conta",
- "Only the following characters are allowed in an Login: \"a-z\", \"A-Z\", \"0-9\", spaces and \"_.@-'\"" : "Só se permiten os seguintes caracteres nun inicio de sesión: \"a-z\", \"A-Z\", \"0-9\", espazos e \"_.@-'\"",
- "A valid Login must be provided" : "É necesario proporcionar un inicio de sesión válido",
- "Login contains whitespace at the beginning or at the end" : "O inicio de sesión contén espazos en branco ao comezo ou ao final",
- "Login must not consist of dots only" : "O inicio de sesión non debe estar composto só por puntos",
- "Login is invalid because files already exist for this user" : "O inicio de sesión non é válido porque xa existen ficheiros para este usuario",
- "Account disabled" : "Conta deshabilitada",
+ "The Login is already being used" : "O acceso xa se está a usar",
+ "Could not create account" : "Non foi posíbel crear a conta",
+ "Only the following characters are allowed in an Login: \"a-z\", \"A-Z\", \"0-9\", spaces and \"_.@-'\"" : "Só se permiten os seguintes caracteres nun acceso: «a-z», «A-Z», «0-9», espazos e «_.@-'»",
+ "A valid Login must be provided" : "Ten que fornecer un acceso válido",
+ "Login contains whitespace at the beginning or at the end" : "O acceso contén espazos en branco ao comezo ou ao final",
+ "Login must not consist of dots only" : "O acceso non debe estar composto só por puntos",
+ "Login is invalid because files already exist for this user" : "O acceso non é válido porque xa existen ficheiros para este usuario",
+ "Account disabled" : "Conta desactivada",
"Login canceled by app" : "Acceso cancelado pola aplicación",
"App \"%1$s\" cannot be installed because the following dependencies are not fulfilled: %2$s" : "Non é posíbel instalar a aplicación «%1$s» por mor de non cumprirse as dependencias: %2$s",
"a safe home for all your data" : "un acubillo seguro para todos os seus datos",
@@ -262,24 +264,66 @@ OC.L10N.register(
"Storage connection error. %s" : "Produciuse un erro na conexión ao almacenamento. %s",
"Storage is temporarily not available" : "O almacenamento non está dispoñíbel temporalmente",
"Storage connection timeout. %s" : "Esgotouse o tempo de conexión co almacenamento. %s",
+ "Transcribe audio" : "Transcribir son",
+ "Transcribe the things said in an audio" : "Transcribir as cousas ditas nun ficheiro de son",
+ "Audio input" : "Entrada de son",
+ "The audio to transcribe" : "O audio para transcribir",
+ "Transcription" : "Transcrición",
+ "The transcribed text" : "O texto transcrito",
+ "ContextWrite" : "EscrituraDeContexto",
+ "Writes text in a given style based on the provided source material." : "Escribe texto nun estilo determinado baseándose no material de orixe fornecido.",
+ "Writing style" : "Estilo de escritura",
+ "Demonstrate a writing style that you would like to immitate" : "Demostre un estilo de escritura que lle gustaría imitar",
+ "Source material" : "Material de orixe",
+ "The content that would like to be rewritten in the new writing style" : "O contido que quere que sexa reescrito no novo estilo de escritura",
+ "Generated text" : "Texto xerado",
+ "The generated text with content from the source material in the given style" : "O texto xerado con contido do material de orixe no estilo indicado",
+ "Emoji generator" : "Xerador de «emojis»",
+ "Takes text and generates a representative emoji for it." : "Toma texto e xera un «emoji» representativo para el.",
+ "The text to generate an emoji for" : "O texto para xerar un «emoji»",
+ "Generated emoji" : "«Emoji» xerado",
+ "The generated emoji based on the input text" : "O «emoji» xerado en función do texto introducido",
+ "Generate image" : "Xerar imaxe",
+ "Generate an image from a text prompt" : "Xerar unha imaxe a partir dunha indicación de texto",
"Prompt" : "Indicación",
- "Generates a possible headline for a text." : "Xera un posíbel título para un texto.",
+ "Describe the image you want to generate" : "Describa a imaxe que quere xerar",
+ "Number of images" : "Número de imaxes",
+ "How many images to generate" : "Cantas imaxes xerar",
+ "Output images" : "Imaxes de saída",
+ "The generated images" : "As imaxes xeradas",
+ "Free text to text prompt" : "Texto libre para indicación de texto",
+ "Runs an arbitrary prompt through a language model that retuns a reply" : "Procesa unha indicación arbitraria a través dun modelo de linguaxe que devolve unha resposta",
+ "Describe a task that you want the assistant to do or ask a question" : "Describa unha tarefa que quere que realice o asistente ou formule unha pregunta",
+ "Generated reply" : "Resposta xerada",
+ "The generated text from the assistant" : "O texto xerado polo asistente",
+ "Generate a headline" : "Xerar un titular",
+ "Generates a possible headline for a text." : "Xera un posíbel titular para un texto.",
+ "Original text" : "Texto orixinal",
+ "The original text to generate a headline for" : "O texto orixinal para xerar un titular",
+ "The generated headline" : "O titular xerado",
"Summarize" : "Resumir",
+ "Summarizes a text" : "Resume un texto",
+ "The original text to summarize" : "O texto orixinal para resumir",
"Summary" : "Resumo",
+ "The generated summary" : "O resumo xerado",
"Extract topics" : "Extraer temas",
+ "Extracts topics from a text and outputs them separated by commas" : "Extrae temas dun texto e amósaos separados por comas",
+ "The original text to extract topics from" : "O texto orixinal para extraer temas",
+ "Topics" : "Temas",
+ "The list of extracted topics" : "A lista de temas extraídos",
"Free prompt" : "Indicación libre",
"Runs an arbitrary prompt through the language model." : "Procesa unha indicación arbitraria a través do modelo de linguaxe.",
- "Generate headline" : "Xerar título",
+ "Generate headline" : "Xerar titular",
"Summarizes text by reducing its length without losing key information." : "Resume o texto reducindo a súa lonxitude sen perder a información clave.",
"Extracts topics from a text and outputs them separated by commas." : "Extrae temas dun texto e amósaos separados por comas.",
"404" : "404",
- "Logged in user must be an admin, a sub admin or gotten special right to access this setting" : "O usuario que accede debe ser un administrador, un subadministrador ou ter un dereito especial para acceder a esta configuración",
- "Logged in user must be an admin or sub admin" : "O usuario autenticado debe ser un administrador ou subadministrador",
- "Logged in user must be an admin" : "O usuario conectado debe ser un administrador",
+ "Logged in user must be an admin, a sub admin or gotten special right to access this setting" : "O usuario que accede debe ser de administración, de subadministración ou ter dereitos especiais para acceder a este axuste",
+ "Logged in user must be an admin or sub admin" : "O usuario que accede debe ser de administración ou de subadministración",
+ "Logged in user must be an admin" : "O usuario que accede debe ser de administración",
"Help" : "Axuda",
"Users" : "Usuarios",
"Unknown user" : "Usuario descoñecido",
- "Enter the database username and name for %s" : "Introduza o nome de usuario da ase de datos e o nome para %s",
+ "Enter the database username and name for %s" : "Introduza o nome de usuario da base de datos e o nome para %s",
"Enter the database username for %s" : "Introduza o nome de usuario da base de datos para %s",
"MySQL username and/or password not valid" : "Nome de usuario e/ou contrasinal de MySQL incorrecto",
"Oracle username and/or password not valid" : "O nome de usuario e/ou contrasinal de Oracle é incorrecto",
diff --git a/lib/l10n/gl.json b/lib/l10n/gl.json
index 2ceaaed074e..118a934db2c 100644
--- a/lib/l10n/gl.json
+++ b/lib/l10n/gl.json
@@ -35,9 +35,9 @@
"The following platforms are supported: %s" : "Admítense as seguintes plataformas: %s",
"Server version %s or higher is required." : "Precísase da versión %s ou superior do servidor.",
"Server version %s or lower is required." : "Precísase da versión %s ou inferior do servidor.",
- "Logged in account must be an admin, a sub admin or gotten special right to access this setting" : "A conta iniciada debe ser un administrador, un subadministrador ou ter un dereito especial para acceder a esta opción",
- "Logged in account must be an admin or sub admin" : "A conta iniciada debe ser administrador ou subadministrador",
- "Logged in account must be an admin" : "A conta iniciada debe ser un administrador",
+ "Logged in account must be an admin, a sub admin or gotten special right to access this setting" : "A conta que accede debe ser de administración, de subadministración ou ter dereitos especiais para acceder a este axuste",
+ "Logged in account must be an admin or sub admin" : "A conta que accede debe ser de administración ou de subadministración",
+ "Logged in account must be an admin" : "A conta que accede debe ser de administración",
"Wiping of device %s has started" : "Iniciouse a limpeza do dispositivo %s",
"Wiping of device »%s« has started" : "Iniciouse a limpeza do dispositivo «%s»",
"»%s« started remote wipe" : "«%s» iniciou a limpeza remota",
@@ -118,20 +118,20 @@
"Role" : "Cargo",
"Unknown account" : "Conta descoñecida",
"Additional settings" : "Axustes adicionais",
- "Enter the database Login and name for %s" : "Introduza o inicio de sesión e o nome da base de datos para %s",
- "Enter the database Login for %s" : "Introduza a base de datos Iniciar sesión para %s",
+ "Enter the database Login and name for %s" : "Introduza o acceso a base de datos e o nome para %s",
+ "Enter the database Login for %s" : "Introduza o acceso a base de datos para %s",
"Enter the database name for %s" : "Introduza o nome da base de datos para %s",
"You cannot use dots in the database name %s" : "Non pode usar puntos no nome da base de datos %s",
- "MySQL Login and/or password not valid" : "O inicio de sesión de MySQL e/ou o contrasinal non son válidos",
+ "MySQL Login and/or password not valid" : "O acceso de MySQL e/ou o contrasinal non son válidos",
"You need to enter details of an existing account." : "Debe introducir os detalles dunha conta existente.",
"Oracle connection could not be established" : "Non foi posíbel estabelecer a conexión con Oracle",
- "Oracle Login and/or password not valid" : "O inicio de sesión ou contrasinal de Oracle non é válido",
- "PostgreSQL Login and/or password not valid" : "O inicio de sesión e/ou o contrasinal de PostgreSQL non son válidos",
+ "Oracle Login and/or password not valid" : "O acceso de Oracle e/ou o contrasinal non son válidos",
+ "PostgreSQL Login and/or password not valid" : "O acceso de PostgreSQL e/ou o contrasinal non son válidos",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk! " : "Mac OS X non é compatíbel e %s non funcionará correctamente nesta plataforma. Utilíceo baixo a súa responsabilidade!",
"For the best results, please consider using a GNU/Linux server instead." : "Para obter mellores resultados, considere o emprego dun servidor GNU/Linux no seu canto.",
"It seems that this %s instance is running on a 32-bit PHP environment and the open_basedir has been configured in php.ini. This will lead to problems with files over 4 GB and is highly discouraged." : "Semella que esta instancia de %s está a funcionar nun contorno PHP de 32 bisst e o open_basedir foi configurado no php.ini. Isto provocará problemas con ficheiros maiores de 4 GB e está absolutamente desaconsellado.",
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Retire o axuste de open_basedir no php.ini ou cambie a PHP de 64 bits.",
- "Set an admin Login." : "Establece un inicio de sesión de administrador.",
+ "Set an admin Login." : "Definir un acceso de administración",
"Set an admin password." : "Estabeleza un contrasinal de administrador",
"Cannot create or write into the data directory %s" : "Non é posíbel crear ou escribir no directorio de datos %s",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "A infraestrutura de compartición %s ten que implementar a interface OCP\\Share_Backend",
@@ -149,7 +149,7 @@
"Expiration date is in the past" : "Xa pasou a data de caducidade",
"_Cannot set expiration date more than %n day in the future_::_Cannot set expiration date more than %n days in the future_" : ["Non é posíbel estabelecer a data de caducidade máis alo de %n día no futuro","Non é posíbel estabelecer a data de caducidade máis alo de %n días no futuro"],
"Sharing is only allowed with group members" : "Só se permite compartir cos membros do grupo",
- "Sharing %s failed, because this item is already shared with the account %s" : "Produciuse un erro ao compartir %s, porque este elemento xa se comparte coa conta %s",
+ "Sharing %s failed, because this item is already shared with the account %s" : "Produciuse un fallo ao compartir %s, porque este elemento xa se comparte coa conta %s",
"%1$s shared »%2$s« with you" : "%1$s compartiu «%2$s» con Vde.",
"%1$s shared »%2$s« with you." : "%1$s compartiu «%2$s» con Vde.",
"Click the button below to open it." : "Prema no botón de embaixo para abrilo.",
@@ -157,6 +157,8 @@
"The requested share comes from a disabled user" : "A compartición solicitada procede dun usuario desactivado",
"The user was not created because the user limit has been reached. Check your notifications to learn more." : "Non se creou o usuario porque acadouse o límite de usuarios. Consulte as súas notificacións para obter máis información.",
"Could not find category \"%s\"" : "Non foi posíbel atopar a categoría «%s»",
+ "Input text" : "Texto de entrada",
+ "The input text" : "O texto de entrada",
"Sunday" : "domingo",
"Monday" : "luns",
"Tuesday" : "martes",
@@ -203,14 +205,14 @@
"Nov." : "nov.",
"Dec." : "dec.",
"A valid password must be provided" : "Debe fornecer un contrasinal",
- "The Login is already being used" : "O inicio de sesión xa se está a usar",
- "Could not create account" : "Non se puido crear a conta",
- "Only the following characters are allowed in an Login: \"a-z\", \"A-Z\", \"0-9\", spaces and \"_.@-'\"" : "Só se permiten os seguintes caracteres nun inicio de sesión: \"a-z\", \"A-Z\", \"0-9\", espazos e \"_.@-'\"",
- "A valid Login must be provided" : "É necesario proporcionar un inicio de sesión válido",
- "Login contains whitespace at the beginning or at the end" : "O inicio de sesión contén espazos en branco ao comezo ou ao final",
- "Login must not consist of dots only" : "O inicio de sesión non debe estar composto só por puntos",
- "Login is invalid because files already exist for this user" : "O inicio de sesión non é válido porque xa existen ficheiros para este usuario",
- "Account disabled" : "Conta deshabilitada",
+ "The Login is already being used" : "O acceso xa se está a usar",
+ "Could not create account" : "Non foi posíbel crear a conta",
+ "Only the following characters are allowed in an Login: \"a-z\", \"A-Z\", \"0-9\", spaces and \"_.@-'\"" : "Só se permiten os seguintes caracteres nun acceso: «a-z», «A-Z», «0-9», espazos e «_.@-'»",
+ "A valid Login must be provided" : "Ten que fornecer un acceso válido",
+ "Login contains whitespace at the beginning or at the end" : "O acceso contén espazos en branco ao comezo ou ao final",
+ "Login must not consist of dots only" : "O acceso non debe estar composto só por puntos",
+ "Login is invalid because files already exist for this user" : "O acceso non é válido porque xa existen ficheiros para este usuario",
+ "Account disabled" : "Conta desactivada",
"Login canceled by app" : "Acceso cancelado pola aplicación",
"App \"%1$s\" cannot be installed because the following dependencies are not fulfilled: %2$s" : "Non é posíbel instalar a aplicación «%1$s» por mor de non cumprirse as dependencias: %2$s",
"a safe home for all your data" : "un acubillo seguro para todos os seus datos",
@@ -260,24 +262,66 @@
"Storage connection error. %s" : "Produciuse un erro na conexión ao almacenamento. %s",
"Storage is temporarily not available" : "O almacenamento non está dispoñíbel temporalmente",
"Storage connection timeout. %s" : "Esgotouse o tempo de conexión co almacenamento. %s",
+ "Transcribe audio" : "Transcribir son",
+ "Transcribe the things said in an audio" : "Transcribir as cousas ditas nun ficheiro de son",
+ "Audio input" : "Entrada de son",
+ "The audio to transcribe" : "O audio para transcribir",
+ "Transcription" : "Transcrición",
+ "The transcribed text" : "O texto transcrito",
+ "ContextWrite" : "EscrituraDeContexto",
+ "Writes text in a given style based on the provided source material." : "Escribe texto nun estilo determinado baseándose no material de orixe fornecido.",
+ "Writing style" : "Estilo de escritura",
+ "Demonstrate a writing style that you would like to immitate" : "Demostre un estilo de escritura que lle gustaría imitar",
+ "Source material" : "Material de orixe",
+ "The content that would like to be rewritten in the new writing style" : "O contido que quere que sexa reescrito no novo estilo de escritura",
+ "Generated text" : "Texto xerado",
+ "The generated text with content from the source material in the given style" : "O texto xerado con contido do material de orixe no estilo indicado",
+ "Emoji generator" : "Xerador de «emojis»",
+ "Takes text and generates a representative emoji for it." : "Toma texto e xera un «emoji» representativo para el.",
+ "The text to generate an emoji for" : "O texto para xerar un «emoji»",
+ "Generated emoji" : "«Emoji» xerado",
+ "The generated emoji based on the input text" : "O «emoji» xerado en función do texto introducido",
+ "Generate image" : "Xerar imaxe",
+ "Generate an image from a text prompt" : "Xerar unha imaxe a partir dunha indicación de texto",
"Prompt" : "Indicación",
- "Generates a possible headline for a text." : "Xera un posíbel título para un texto.",
+ "Describe the image you want to generate" : "Describa a imaxe que quere xerar",
+ "Number of images" : "Número de imaxes",
+ "How many images to generate" : "Cantas imaxes xerar",
+ "Output images" : "Imaxes de saída",
+ "The generated images" : "As imaxes xeradas",
+ "Free text to text prompt" : "Texto libre para indicación de texto",
+ "Runs an arbitrary prompt through a language model that retuns a reply" : "Procesa unha indicación arbitraria a través dun modelo de linguaxe que devolve unha resposta",
+ "Describe a task that you want the assistant to do or ask a question" : "Describa unha tarefa que quere que realice o asistente ou formule unha pregunta",
+ "Generated reply" : "Resposta xerada",
+ "The generated text from the assistant" : "O texto xerado polo asistente",
+ "Generate a headline" : "Xerar un titular",
+ "Generates a possible headline for a text." : "Xera un posíbel titular para un texto.",
+ "Original text" : "Texto orixinal",
+ "The original text to generate a headline for" : "O texto orixinal para xerar un titular",
+ "The generated headline" : "O titular xerado",
"Summarize" : "Resumir",
+ "Summarizes a text" : "Resume un texto",
+ "The original text to summarize" : "O texto orixinal para resumir",
"Summary" : "Resumo",
+ "The generated summary" : "O resumo xerado",
"Extract topics" : "Extraer temas",
+ "Extracts topics from a text and outputs them separated by commas" : "Extrae temas dun texto e amósaos separados por comas",
+ "The original text to extract topics from" : "O texto orixinal para extraer temas",
+ "Topics" : "Temas",
+ "The list of extracted topics" : "A lista de temas extraídos",
"Free prompt" : "Indicación libre",
"Runs an arbitrary prompt through the language model." : "Procesa unha indicación arbitraria a través do modelo de linguaxe.",
- "Generate headline" : "Xerar título",
+ "Generate headline" : "Xerar titular",
"Summarizes text by reducing its length without losing key information." : "Resume o texto reducindo a súa lonxitude sen perder a información clave.",
"Extracts topics from a text and outputs them separated by commas." : "Extrae temas dun texto e amósaos separados por comas.",
"404" : "404",
- "Logged in user must be an admin, a sub admin or gotten special right to access this setting" : "O usuario que accede debe ser un administrador, un subadministrador ou ter un dereito especial para acceder a esta configuración",
- "Logged in user must be an admin or sub admin" : "O usuario autenticado debe ser un administrador ou subadministrador",
- "Logged in user must be an admin" : "O usuario conectado debe ser un administrador",
+ "Logged in user must be an admin, a sub admin or gotten special right to access this setting" : "O usuario que accede debe ser de administración, de subadministración ou ter dereitos especiais para acceder a este axuste",
+ "Logged in user must be an admin or sub admin" : "O usuario que accede debe ser de administración ou de subadministración",
+ "Logged in user must be an admin" : "O usuario que accede debe ser de administración",
"Help" : "Axuda",
"Users" : "Usuarios",
"Unknown user" : "Usuario descoñecido",
- "Enter the database username and name for %s" : "Introduza o nome de usuario da ase de datos e o nome para %s",
+ "Enter the database username and name for %s" : "Introduza o nome de usuario da base de datos e o nome para %s",
"Enter the database username for %s" : "Introduza o nome de usuario da base de datos para %s",
"MySQL username and/or password not valid" : "Nome de usuario e/ou contrasinal de MySQL incorrecto",
"Oracle username and/or password not valid" : "O nome de usuario e/ou contrasinal de Oracle é incorrecto",
diff --git a/lib/private/BackgroundJob/JobList.php b/lib/private/BackgroundJob/JobList.php
index 3df9be7558c..61c48b0eab2 100644
--- a/lib/private/BackgroundJob/JobList.php
+++ b/lib/private/BackgroundJob/JobList.php
@@ -113,7 +113,7 @@ class JobList implements IJobList {
}
}
- protected function removeById(int $id): void {
+ public function removeById(int $id): void {
$query = $this->connection->getQueryBuilder();
$query->delete('jobs')
->where($query->expr()->eq('id', $query->createNamedParameter($id, IQueryBuilder::PARAM_INT)));
diff --git a/lib/private/Files/ObjectStore/S3ConnectionTrait.php b/lib/private/Files/ObjectStore/S3ConnectionTrait.php
index c7a5a8a1add..4609ad18905 100644
--- a/lib/private/Files/ObjectStore/S3ConnectionTrait.php
+++ b/lib/private/Files/ObjectStore/S3ConnectionTrait.php
@@ -11,7 +11,7 @@ use Aws\Credentials\Credentials;
use Aws\Exception\CredentialsException;
use Aws\S3\Exception\S3Exception;
use Aws\S3\S3Client;
-use GuzzleHttp\Promise;
+use GuzzleHttp\Promise\Create;
use GuzzleHttp\Promise\RejectedPromise;
use OCP\ICertificateManager;
use Psr\Log\LoggerInterface;
@@ -178,7 +178,7 @@ trait S3ConnectionTrait {
$secret = empty($this->params['secret']) ? null : $this->params['secret'];
if ($key && $secret) {
- return Promise\promise_for(
+ return Create::promiseFor(
new Credentials($key, $secret)
);
}
diff --git a/lib/private/Files/ObjectStore/S3Signature.php b/lib/private/Files/ObjectStore/S3Signature.php
index fd24a34b090..e3a522b6581 100644
--- a/lib/private/Files/ObjectStore/S3Signature.php
+++ b/lib/private/Files/ObjectStore/S3Signature.php
@@ -93,7 +93,7 @@ class S3Signature implements SignatureInterface {
}
}
- $queryString = http_build_query($query, null, '&', PHP_QUERY_RFC3986);
+ $queryString = http_build_query($query, '', '&', PHP_QUERY_RFC3986);
return $request->withUri($request->getUri()->withQuery($queryString));
}
diff --git a/lib/private/PreviewManager.php b/lib/private/PreviewManager.php
index 21dd8f8a8ab..4daf5b2dc1e 100644
--- a/lib/private/PreviewManager.php
+++ b/lib/private/PreviewManager.php
@@ -50,6 +50,7 @@ class PreviewManager implements IPreview {
private IServerContainer $container;
private IBinaryFinder $binaryFinder;
private IMagickSupport $imagickSupport;
+ private bool $enablePreviews;
public function __construct(
IConfig $config,
@@ -73,6 +74,7 @@ class PreviewManager implements IPreview {
$this->container = $container;
$this->binaryFinder = $binaryFinder;
$this->imagickSupport = $imagickSupport;
+ $this->enablePreviews = $config->getSystemValueBool('enable_previews', true);
}
/**
@@ -86,7 +88,7 @@ class PreviewManager implements IPreview {
* @return void
*/
public function registerProvider($mimeTypeRegex, \Closure $callable): void {
- if (!$this->config->getSystemValueBool('enable_previews', true)) {
+ if (!$this->enablePreviews) {
return;
}
@@ -101,7 +103,7 @@ class PreviewManager implements IPreview {
* Get all providers
*/
public function getProviders(): array {
- if (!$this->config->getSystemValueBool('enable_previews', true)) {
+ if (!$this->enablePreviews) {
return [];
}
@@ -158,6 +160,7 @@ class PreviewManager implements IPreview {
* @since 11.0.0 - \InvalidArgumentException was added in 12.0.0
*/
public function getPreview(File $file, $width = -1, $height = -1, $crop = false, $mode = IPreview::MODE_FILL, $mimeType = null) {
+ $this->throwIfPreviewsDisabled();
$previewConcurrency = $this->getGenerator()->getNumConcurrentPreviews('preview_concurrency_all');
$sem = Generator::guardWithSemaphore(Generator::SEMAPHORE_ID_ALL, $previewConcurrency);
try {
@@ -181,6 +184,7 @@ class PreviewManager implements IPreview {
* @since 19.0.0
*/
public function generatePreviews(File $file, array $specifications, $mimeType = null) {
+ $this->throwIfPreviewsDisabled();
return $this->getGenerator()->generatePreviews($file, $specifications, $mimeType);
}
@@ -191,7 +195,7 @@ class PreviewManager implements IPreview {
* @return boolean
*/
public function isMimeSupported($mimeType = '*') {
- if (!$this->config->getSystemValueBool('enable_previews', true)) {
+ if (!$this->enablePreviews) {
return false;
}
@@ -216,7 +220,7 @@ class PreviewManager implements IPreview {
* Check if a preview can be generated for a file
*/
public function isAvailable(\OCP\Files\FileInfo $file): bool {
- if (!$this->config->getSystemValueBool('enable_previews', true)) {
+ if (!$this->enablePreviews) {
return false;
}
@@ -452,4 +456,13 @@ class PreviewManager implements IPreview {
});
}
}
+
+ /**
+ * @throws NotFoundException if preview generation is disabled
+ */
+ private function throwIfPreviewsDisabled(): void {
+ if (!$this->enablePreviews) {
+ throw new NotFoundException('Previews disabled');
+ }
+ }
}
diff --git a/lib/private/Share20/DefaultShareProvider.php b/lib/private/Share20/DefaultShareProvider.php
index 03202f215b2..634d3af4402 100644
--- a/lib/private/Share20/DefaultShareProvider.php
+++ b/lib/private/Share20/DefaultShareProvider.php
@@ -11,6 +11,7 @@ use OC\Files\Cache\Cache;
use OC\Share20\Exception\BackendError;
use OC\Share20\Exception\InvalidShare;
use OC\Share20\Exception\ProviderException;
+use OC\User\LazyUser;
use OCP\AppFramework\Utility\ITimeFactory;
use OCP\DB\QueryBuilder\IQueryBuilder;
use OCP\Defaults;
@@ -909,8 +910,8 @@ class DefaultShareProvider implements IShareProvider {
}
$cursor->closeCursor();
} elseif ($shareType === IShare::TYPE_GROUP) {
- $user = $this->userManager->get($userId);
- $allGroups = ($user instanceof IUser) ? $this->groupManager->getUserGroupIds($user) : [];
+ $user = new LazyUser($userId, $this->userManager);
+ $allGroups = $this->groupManager->getUserGroupIds($user);
/** @var Share[] $shares2 */
$shares2 = [];
@@ -1045,9 +1046,9 @@ class DefaultShareProvider implements IShareProvider {
if ($share->getShareType() === IShare::TYPE_USER) {
$share->setSharedWith($data['share_with']);
- $user = $this->userManager->get($data['share_with']);
- if ($user !== null) {
- $share->setSharedWithDisplayName($user->getDisplayName());
+ $displayName = $this->userManager->getDisplayName($data['share_with']);
+ if ($displayName !== null) {
+ $share->setSharedWithDisplayName($displayName);
}
} elseif ($share->getShareType() === IShare::TYPE_GROUP) {
$share->setSharedWith($data['share_with']);
diff --git a/lib/public/BackgroundJob/IJobList.php b/lib/public/BackgroundJob/IJobList.php
index dbe154ff5f8..c082ef22f2f 100644
--- a/lib/public/BackgroundJob/IJobList.php
+++ b/lib/public/BackgroundJob/IJobList.php
@@ -61,6 +61,14 @@ interface IJobList {
public function remove($job, $argument = null): void;
/**
+ * Remove a job from the list by id
+ *
+ * @param int $id
+ * @since 30.0.0
+ */
+ public function removeById(int $id): void;
+
+ /**
* check if a job is in the list
*
* @param IJob|class-string<IJob> $job
diff --git a/lib/public/BackgroundJob/QueuedJob.php b/lib/public/BackgroundJob/QueuedJob.php
index c75948d1a11..caacff42b1a 100644
--- a/lib/public/BackgroundJob/QueuedJob.php
+++ b/lib/public/BackgroundJob/QueuedJob.php
@@ -35,7 +35,11 @@ abstract class QueuedJob extends Job {
* @since 25.0.0
*/
final public function start(IJobList $jobList): void {
- $jobList->remove($this, $this->argument);
+ if ($this->id) {
+ $jobList->removeById($this->id);
+ } else {
+ $jobList->remove($this, $this->argument);
+ }
parent::start($jobList);
}
}