diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/l10n/gl.js | 92 | ||||
-rw-r--r-- | lib/l10n/gl.json | 92 | ||||
-rw-r--r-- | lib/private/BackgroundJob/JobList.php | 2 | ||||
-rw-r--r-- | lib/private/Files/ObjectStore/S3ConnectionTrait.php | 4 | ||||
-rw-r--r-- | lib/private/Files/ObjectStore/S3Signature.php | 2 | ||||
-rw-r--r-- | lib/private/PreviewManager.php | 21 | ||||
-rw-r--r-- | lib/private/Share20/DefaultShareProvider.php | 11 | ||||
-rw-r--r-- | lib/public/BackgroundJob/IJobList.php | 8 | ||||
-rw-r--r-- | lib/public/BackgroundJob/QueuedJob.php | 6 |
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); } } |