diff options
Diffstat (limited to 'lib')
38 files changed, 193 insertions, 111 deletions
diff --git a/lib/composer/composer/autoload_classmap.php b/lib/composer/composer/autoload_classmap.php index abeaf0d513a..2d0b62d749f 100644 --- a/lib/composer/composer/autoload_classmap.php +++ b/lib/composer/composer/autoload_classmap.php @@ -190,6 +190,7 @@ return array( 'OCP\\Broadcast\\Events\\IBroadcastEvent' => $baseDir . '/lib/public/Broadcast/Events/IBroadcastEvent.php', 'OCP\\Cache\\CappedMemoryCache' => $baseDir . '/lib/public/Cache/CappedMemoryCache.php', 'OCP\\Calendar\\BackendTemporarilyUnavailableException' => $baseDir . '/lib/public/Calendar/BackendTemporarilyUnavailableException.php', + 'OCP\\Calendar\\CalendarEventStatus' => $baseDir . '/lib/public/Calendar/CalendarEventStatus.php', 'OCP\\Calendar\\Events\\AbstractCalendarObjectEvent' => $baseDir . '/lib/public/Calendar/Events/AbstractCalendarObjectEvent.php', 'OCP\\Calendar\\Events\\CalendarObjectCreatedEvent' => $baseDir . '/lib/public/Calendar/Events/CalendarObjectCreatedEvent.php', 'OCP\\Calendar\\Events\\CalendarObjectDeletedEvent' => $baseDir . '/lib/public/Calendar/Events/CalendarObjectDeletedEvent.php', diff --git a/lib/composer/composer/autoload_static.php b/lib/composer/composer/autoload_static.php index 956fa820ac5..64210bd5843 100644 --- a/lib/composer/composer/autoload_static.php +++ b/lib/composer/composer/autoload_static.php @@ -239,6 +239,7 @@ class ComposerStaticInit749170dad3f5e7f9ca158f5a9f04f6a2 'OCP\\Broadcast\\Events\\IBroadcastEvent' => __DIR__ . '/../../..' . '/lib/public/Broadcast/Events/IBroadcastEvent.php', 'OCP\\Cache\\CappedMemoryCache' => __DIR__ . '/../../..' . '/lib/public/Cache/CappedMemoryCache.php', 'OCP\\Calendar\\BackendTemporarilyUnavailableException' => __DIR__ . '/../../..' . '/lib/public/Calendar/BackendTemporarilyUnavailableException.php', + 'OCP\\Calendar\\CalendarEventStatus' => __DIR__ . '/../../..' . '/lib/public/Calendar/CalendarEventStatus.php', 'OCP\\Calendar\\Events\\AbstractCalendarObjectEvent' => __DIR__ . '/../../..' . '/lib/public/Calendar/Events/AbstractCalendarObjectEvent.php', 'OCP\\Calendar\\Events\\CalendarObjectCreatedEvent' => __DIR__ . '/../../..' . '/lib/public/Calendar/Events/CalendarObjectCreatedEvent.php', 'OCP\\Calendar\\Events\\CalendarObjectDeletedEvent' => __DIR__ . '/../../..' . '/lib/public/Calendar/Events/CalendarObjectDeletedEvent.php', diff --git a/lib/l10n/et_EE.js b/lib/l10n/et_EE.js index adefc8ed808..b1807c1fcad 100644 --- a/lib/l10n/et_EE.js +++ b/lib/l10n/et_EE.js @@ -49,6 +49,7 @@ OC.L10N.register( "Administration settings" : "Administreerimise seaded", "Settings" : "Seaded", "Log out" : "Logi välja", + "Accounts" : "Kasutajakontod", "Email" : "Epost", "Phone" : "Telefon", "Twitter" : "Twitter", @@ -124,7 +125,7 @@ OC.L10N.register( "a safe home for all your data" : "turvaline koht sinu andmetele", "Application is not enabled" : "Rakendus pole sisse lülitatud", "Authentication error" : "Autentimise viga", - "Token expired. Please reload page." : "Kontrollkood aegus. Paelun lae leht uuesti.", + "Token expired. Please reload page." : "Kontrollkood aegus. Paelun laadi leht uuesti.", "No database drivers (sqlite, mysql, or postgresql) installed." : "Ühtegi andmebaasi (sqlite, mysql või postgresql) draiverit pole paigaldatud.", "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.", @@ -138,9 +139,10 @@ OC.L10N.register( "Text" : "Tekst", "Summary" : "Kokkuvõte", "Translate" : "Tõlgi", + "The translated text" : "Tõlgitud tekst", "File name is a reserved word" : "Failinimi sisaldab keelatud sõna", - "File name contains at least one invalid character" : "Faili nimesonvähemalt üks keelatud märk", - "File name is too long" : "Faili nimi on liiga pikk", + "File name contains at least one invalid character" : "Failinimes on vähemalt üks keelatud tähemärk", + "File name is too long" : "Failinimi on liiga pikk", "Users" : "Kasutajad", "Open »%s«" : "Ava »%s«", "Click the button below to open it." : "Vajuta allolevat nuppu, et see avada.", diff --git a/lib/l10n/et_EE.json b/lib/l10n/et_EE.json index 51d86cc0e29..53b0fb7a9b8 100644 --- a/lib/l10n/et_EE.json +++ b/lib/l10n/et_EE.json @@ -47,6 +47,7 @@ "Administration settings" : "Administreerimise seaded", "Settings" : "Seaded", "Log out" : "Logi välja", + "Accounts" : "Kasutajakontod", "Email" : "Epost", "Phone" : "Telefon", "Twitter" : "Twitter", @@ -122,7 +123,7 @@ "a safe home for all your data" : "turvaline koht sinu andmetele", "Application is not enabled" : "Rakendus pole sisse lülitatud", "Authentication error" : "Autentimise viga", - "Token expired. Please reload page." : "Kontrollkood aegus. Paelun lae leht uuesti.", + "Token expired. Please reload page." : "Kontrollkood aegus. Paelun laadi leht uuesti.", "No database drivers (sqlite, mysql, or postgresql) installed." : "Ühtegi andmebaasi (sqlite, mysql või postgresql) draiverit pole paigaldatud.", "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.", @@ -136,9 +137,10 @@ "Text" : "Tekst", "Summary" : "Kokkuvõte", "Translate" : "Tõlgi", + "The translated text" : "Tõlgitud tekst", "File name is a reserved word" : "Failinimi sisaldab keelatud sõna", - "File name contains at least one invalid character" : "Faili nimesonvähemalt üks keelatud märk", - "File name is too long" : "Faili nimi on liiga pikk", + "File name contains at least one invalid character" : "Failinimes on vähemalt üks keelatud tähemärk", + "File name is too long" : "Failinimi on liiga pikk", "Users" : "Kasutajad", "Open »%s«" : "Ava »%s«", "Click the button below to open it." : "Vajuta allolevat nuppu, et see avada.", diff --git a/lib/l10n/pt_BR.js b/lib/l10n/pt_BR.js index 0c2fefa052f..92b55232bea 100644 --- a/lib/l10n/pt_BR.js +++ b/lib/l10n/pt_BR.js @@ -86,7 +86,9 @@ OC.L10N.register( "seconds ago" : "segundos atrás", "Empty file" : "Arquivo vazio", "Module with ID: %s does not exist. Please enable it in your apps settings or contact your administrator." : "O módulo com a ID: %s não existe. Por favor, habilite-o nas configurações de seu aplicativo ou contacte o administrador.", + "No file conversion providers available" : "Não há provedores de conversão de arquivos disponíveis", "File is too large to convert" : "O arquivo é muito grande para converter", + "Destination does not match conversion extension" : "O destino não corresponde à extensão de conversão", "Could not convert file" : "Não foi possível converter o arquivo", "Destination does not exist" : "Destino não existe", "Destination is not creatable" : "Destino não pode ser criado", @@ -102,6 +104,8 @@ OC.L10N.register( "Failed to create file from template" : "Falha ao criar arquivo do modelo ", "Templates" : "Modelos ", "Storage %s cannot be moved" : "O armazenamento %s não pode ser movido", + "Moving a share (%s) into a shared folder is not allowed" : "Não é permitido mover um compartilhamento (%s) para uma pasta compartilhada", + "Moving a storage (%s) into a shared folder is not allowed" : "Não é permitido mover um armazenamento (%s) para uma pasta compartilhada", "Moving a share (%s) into another share (%s) is not allowed" : "Não é permitido mover um compartilhamento (%s) para outro compartilhamento (%s)", "Moving a share (%s) into another storage (%s) is not allowed" : "Não é permitido mover um compartilhamento (%s) para outro armazenamento (%s)", "Moving a storage (%s) into a share (%s) is not allowed" : "Não é permitido mover um armazenamento (%s) para compartilhamento (%s)", @@ -330,8 +334,15 @@ OC.L10N.register( "Chat message" : "Mensagem de bate-papo", "A chat message to send to the agent." : "Uma mensagem de bate-papo a ser enviada ao agente", "Confirmation" : "Confirmação", + "Whether to confirm previously requested actions: 0 for denial and 1 for confirmation." : "Se deve confirmar as ações solicitadas anteriormente: 0 para negação e 1 para confirmação.", "Conversation token" : "Token de conversação", + "A token representing the conversation." : "Um token que representa a conversa.", "Generated response" : "Gerar reposta", + "The response from the chat model." : "A resposta do modelo de bate-papo.", + "The new conversation token" : "O novo token de conversa", + "Send this along with the next interaction." : "Envie isso junto com a próxima interação.", + "Requested actions by the agent" : "Ações solicitadas pelo agente", + "Actions that the agent would like to carry out in JSON format." : "Ações que o agente gostaria de realizar no formato JSON.", "Context write" : "Gravação de contexto", "Writes text in a given style based on the provided source material." : "Escreve texto em um determinado estilo com base no material de origem fornecido.", "Writing style" : "Estilo de escrita", @@ -359,7 +370,11 @@ OC.L10N.register( "Generated reply" : "Resposta gerada", "The generated text from the assistant" : "O texto gerado do assistente", "Change Tone" : "Mudar o tom", + "Change the tone of a piece of text." : "Alterar o tom de um texto.", + "Write a text that you want the assistant to rewrite in another tone." : "Escreva um texto que você deseja que o assistente reescreva em outro tom.", "Desired tone" : "Tom desejado", + "In which tone should your text be rewritten?" : "Em qual tom seu texto deve ser reescrito?", + "The rewritten text in the desired tone, written by the assistant:" : "O texto reescrito no tom desejado, escrito pelo assistente:", "Chat" : "Conversa", "Chat with the assistant" : "Converse com o assistente", "System prompt" : "Prompt do sistema", @@ -369,11 +384,14 @@ OC.L10N.register( "Response message" : "Mensagem de resposta", "The generated response as part of the conversation" : "A resposta gerada como parte da conversa", "Chat with tools" : "Conversar com ferramentas", + "Chat with the language model with tool calling support." : "Converse com o modelo de linguagem com suporte a tool calling (\"chamadas a ferramentas\").", "Tool message" : "Mensagem da ferramenta", + "The result of tool calls in the last interaction" : "O resultado das chamadas de ferramentas na última interação", "Available tools" : "Ferramentas disponíveis", "The available tools in JSON format" : "As ferramentas disponíveis em formato JSON", "The response from the chat model" : "A resposta do modelo de bate-papo", "Tool calls" : "Chamadas de ferramentas", + "Tools call instructions from the model in JSON format" : "Instruções de chamada de ferramentas do modelo no formato JSON", "Formalize text" : "Formalizar texto", "Takes a text and makes it sound more formal" : "Pega um texto e faz com que ele soe mais formal", "Write a text that you want the assistant to formalize" : "Escreva um texto que você deseja que o assistente formalize", @@ -385,9 +403,11 @@ OC.L10N.register( "The original text to generate a headline for" : "O texto original para gerar um título para", "The generated headline" : "O título gerado", "Proofread" : "Revisar", + "Proofreads a text and lists corrections" : "Revisa um texto e lista as correções", "Text" : "Texto", "The text to proofread" : "O texto a ser revisado", "Corrections" : "Correções", + "The corrections that should be made in your text" : "As correções que devem ser feitas em seu texto", "Reformulate text" : "Reformular texto", "Takes a text and reformulates it" : "Pega um texto e o reformula", "Write a text that you want the assistant to reformulate" : "Escrever um texto que você deseja que o assistente reformule", diff --git a/lib/l10n/pt_BR.json b/lib/l10n/pt_BR.json index f78d6db47ec..1d0a4d2e40e 100644 --- a/lib/l10n/pt_BR.json +++ b/lib/l10n/pt_BR.json @@ -84,7 +84,9 @@ "seconds ago" : "segundos atrás", "Empty file" : "Arquivo vazio", "Module with ID: %s does not exist. Please enable it in your apps settings or contact your administrator." : "O módulo com a ID: %s não existe. Por favor, habilite-o nas configurações de seu aplicativo ou contacte o administrador.", + "No file conversion providers available" : "Não há provedores de conversão de arquivos disponíveis", "File is too large to convert" : "O arquivo é muito grande para converter", + "Destination does not match conversion extension" : "O destino não corresponde à extensão de conversão", "Could not convert file" : "Não foi possível converter o arquivo", "Destination does not exist" : "Destino não existe", "Destination is not creatable" : "Destino não pode ser criado", @@ -100,6 +102,8 @@ "Failed to create file from template" : "Falha ao criar arquivo do modelo ", "Templates" : "Modelos ", "Storage %s cannot be moved" : "O armazenamento %s não pode ser movido", + "Moving a share (%s) into a shared folder is not allowed" : "Não é permitido mover um compartilhamento (%s) para uma pasta compartilhada", + "Moving a storage (%s) into a shared folder is not allowed" : "Não é permitido mover um armazenamento (%s) para uma pasta compartilhada", "Moving a share (%s) into another share (%s) is not allowed" : "Não é permitido mover um compartilhamento (%s) para outro compartilhamento (%s)", "Moving a share (%s) into another storage (%s) is not allowed" : "Não é permitido mover um compartilhamento (%s) para outro armazenamento (%s)", "Moving a storage (%s) into a share (%s) is not allowed" : "Não é permitido mover um armazenamento (%s) para compartilhamento (%s)", @@ -328,8 +332,15 @@ "Chat message" : "Mensagem de bate-papo", "A chat message to send to the agent." : "Uma mensagem de bate-papo a ser enviada ao agente", "Confirmation" : "Confirmação", + "Whether to confirm previously requested actions: 0 for denial and 1 for confirmation." : "Se deve confirmar as ações solicitadas anteriormente: 0 para negação e 1 para confirmação.", "Conversation token" : "Token de conversação", + "A token representing the conversation." : "Um token que representa a conversa.", "Generated response" : "Gerar reposta", + "The response from the chat model." : "A resposta do modelo de bate-papo.", + "The new conversation token" : "O novo token de conversa", + "Send this along with the next interaction." : "Envie isso junto com a próxima interação.", + "Requested actions by the agent" : "Ações solicitadas pelo agente", + "Actions that the agent would like to carry out in JSON format." : "Ações que o agente gostaria de realizar no formato JSON.", "Context write" : "Gravação de contexto", "Writes text in a given style based on the provided source material." : "Escreve texto em um determinado estilo com base no material de origem fornecido.", "Writing style" : "Estilo de escrita", @@ -357,7 +368,11 @@ "Generated reply" : "Resposta gerada", "The generated text from the assistant" : "O texto gerado do assistente", "Change Tone" : "Mudar o tom", + "Change the tone of a piece of text." : "Alterar o tom de um texto.", + "Write a text that you want the assistant to rewrite in another tone." : "Escreva um texto que você deseja que o assistente reescreva em outro tom.", "Desired tone" : "Tom desejado", + "In which tone should your text be rewritten?" : "Em qual tom seu texto deve ser reescrito?", + "The rewritten text in the desired tone, written by the assistant:" : "O texto reescrito no tom desejado, escrito pelo assistente:", "Chat" : "Conversa", "Chat with the assistant" : "Converse com o assistente", "System prompt" : "Prompt do sistema", @@ -367,11 +382,14 @@ "Response message" : "Mensagem de resposta", "The generated response as part of the conversation" : "A resposta gerada como parte da conversa", "Chat with tools" : "Conversar com ferramentas", + "Chat with the language model with tool calling support." : "Converse com o modelo de linguagem com suporte a tool calling (\"chamadas a ferramentas\").", "Tool message" : "Mensagem da ferramenta", + "The result of tool calls in the last interaction" : "O resultado das chamadas de ferramentas na última interação", "Available tools" : "Ferramentas disponíveis", "The available tools in JSON format" : "As ferramentas disponíveis em formato JSON", "The response from the chat model" : "A resposta do modelo de bate-papo", "Tool calls" : "Chamadas de ferramentas", + "Tools call instructions from the model in JSON format" : "Instruções de chamada de ferramentas do modelo no formato JSON", "Formalize text" : "Formalizar texto", "Takes a text and makes it sound more formal" : "Pega um texto e faz com que ele soe mais formal", "Write a text that you want the assistant to formalize" : "Escreva um texto que você deseja que o assistente formalize", @@ -383,9 +401,11 @@ "The original text to generate a headline for" : "O texto original para gerar um título para", "The generated headline" : "O título gerado", "Proofread" : "Revisar", + "Proofreads a text and lists corrections" : "Revisa um texto e lista as correções", "Text" : "Texto", "The text to proofread" : "O texto a ser revisado", "Corrections" : "Correções", + "The corrections that should be made in your text" : "As correções que devem ser feitas em seu texto", "Reformulate text" : "Reformular texto", "Takes a text and reformulates it" : "Pega um texto e o reformula", "Write a text that you want the assistant to reformulate" : "Escrever um texto que você deseja que o assistente reformule", diff --git a/lib/l10n/sk.js b/lib/l10n/sk.js index ddd31dde93a..4415a806550 100644 --- a/lib/l10n/sk.js +++ b/lib/l10n/sk.js @@ -38,6 +38,7 @@ OC.L10N.register( "Server version %s or higher is required." : "Je vyžadovaná verzia servera %s alebo vyššia.", "Server version %s or lower is required." : "Je vyžadovaná verzia servera %s alebo nižšia.", "Logged in account must be an admin, a sub admin or gotten special right to access this setting" : "Prihlásený účet musí byť správcom, podadministrátorom alebo musí mať špeciálne právo na prístup k tomuto nastaveniu.", + "Your current IP address doesn't allow you to perform admin actions" : "Vaša aktuálna adresa IP vám neumožňuje vykonávať akcie správcu", "Logged in account must be an admin or sub admin" : "Prihlásený účet musí byť správcom alebo sub správcom.", "Logged in account must be an admin" : "Prihlásený účet musí byť správcom", "Wiping of device %s has started" : "Začalo sa mazanie zariadenia %s", @@ -155,6 +156,7 @@ OC.L10N.register( "Oracle connection could not be established" : "Nie je možné pripojiť sa k Oracle", "Oracle Login and/or password not valid" : "Prihlasovacie meno a/alebo heslo pre Oracle databázu je neplatné", "PostgreSQL Login and/or password not valid" : "Prihlasovacie meno a/alebo heslo pre PostgreSQL databázu je neplatné", + "Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "Mac OS X nie je podporovaný a %s nebude správne fungovať na tejto platforme. Použitie na vlastné riziko!", "For the best results, please consider using a GNU/Linux server instead." : "Pre dosiahnutie najlepších výsledkov, prosím zvážte použitie GNU/Linux servera.", "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." : "Zdá sa, že táto inštancia %s beží v 32-bitovom prostredí PHP a v php.ini bola nastavená voľba open_basedir. To bude zdrojom problémov so súbormi väčšími ako 4GB a dôrazne sa neodporúča.", "Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Prosím, odstráňte nastavenie open_basedir vo vašom php.ini alebo prejdite na 64-bit PHP.", diff --git a/lib/l10n/sk.json b/lib/l10n/sk.json index 626188a2538..057936c2a89 100644 --- a/lib/l10n/sk.json +++ b/lib/l10n/sk.json @@ -36,6 +36,7 @@ "Server version %s or higher is required." : "Je vyžadovaná verzia servera %s alebo vyššia.", "Server version %s or lower is required." : "Je vyžadovaná verzia servera %s alebo nižšia.", "Logged in account must be an admin, a sub admin or gotten special right to access this setting" : "Prihlásený účet musí byť správcom, podadministrátorom alebo musí mať špeciálne právo na prístup k tomuto nastaveniu.", + "Your current IP address doesn't allow you to perform admin actions" : "Vaša aktuálna adresa IP vám neumožňuje vykonávať akcie správcu", "Logged in account must be an admin or sub admin" : "Prihlásený účet musí byť správcom alebo sub správcom.", "Logged in account must be an admin" : "Prihlásený účet musí byť správcom", "Wiping of device %s has started" : "Začalo sa mazanie zariadenia %s", @@ -153,6 +154,7 @@ "Oracle connection could not be established" : "Nie je možné pripojiť sa k Oracle", "Oracle Login and/or password not valid" : "Prihlasovacie meno a/alebo heslo pre Oracle databázu je neplatné", "PostgreSQL Login and/or password not valid" : "Prihlasovacie meno a/alebo heslo pre PostgreSQL databázu je neplatné", + "Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk!" : "Mac OS X nie je podporovaný a %s nebude správne fungovať na tejto platforme. Použitie na vlastné riziko!", "For the best results, please consider using a GNU/Linux server instead." : "Pre dosiahnutie najlepších výsledkov, prosím zvážte použitie GNU/Linux servera.", "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." : "Zdá sa, že táto inštancia %s beží v 32-bitovom prostredí PHP a v php.ini bola nastavená voľba open_basedir. To bude zdrojom problémov so súbormi väčšími ako 4GB a dôrazne sa neodporúča.", "Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Prosím, odstráňte nastavenie open_basedir vo vašom php.ini alebo prejdite na 64-bit PHP.", diff --git a/lib/l10n/sr@latin.js b/lib/l10n/sr@latin.js index 3b65c71f694..0042ab270b7 100644 --- a/lib/l10n/sr@latin.js +++ b/lib/l10n/sr@latin.js @@ -8,6 +8,7 @@ OC.L10N.register( "seconds ago" : "pre par sekundi", "Filename contains at least one invalid character" : "Naziv fajla sadrži bar jedan nedozvoljen znak", "__language_name__" : "Srpski", + "Apps" : "Aplikacije", "Settings" : "Postavke", "Log out" : "Odjava", "Email" : "email", diff --git a/lib/l10n/sr@latin.json b/lib/l10n/sr@latin.json index c31a77690d0..857f80a066d 100644 --- a/lib/l10n/sr@latin.json +++ b/lib/l10n/sr@latin.json @@ -6,6 +6,7 @@ "seconds ago" : "pre par sekundi", "Filename contains at least one invalid character" : "Naziv fajla sadrži bar jedan nedozvoljen znak", "__language_name__" : "Srpski", + "Apps" : "Aplikacije", "Settings" : "Postavke", "Log out" : "Odjava", "Email" : "email", diff --git a/lib/private/Blurhash/Listener/GenerateBlurhashMetadata.php b/lib/private/Blurhash/Listener/GenerateBlurhashMetadata.php index b84dd61fc5f..16f63594f19 100644 --- a/lib/private/Blurhash/Listener/GenerateBlurhashMetadata.php +++ b/lib/private/Blurhash/Listener/GenerateBlurhashMetadata.php @@ -98,7 +98,7 @@ class GenerateBlurhashMetadata implements IEventListener { $newX = intval($currX * $newY / $currY); } - $newImage = imagescale($image, $newX, $newY); + $newImage = @imagescale($image, $newX, $newY); return ($newImage !== false) ? $newImage : $image; } diff --git a/lib/private/Calendar/CalendarEventBuilder.php b/lib/private/Calendar/CalendarEventBuilder.php index 9198d383ef9..1aa11c2436d 100644 --- a/lib/private/Calendar/CalendarEventBuilder.php +++ b/lib/private/Calendar/CalendarEventBuilder.php @@ -12,6 +12,7 @@ namespace OC\Calendar; use DateTimeInterface; use InvalidArgumentException; use OCP\AppFramework\Utility\ITimeFactory; +use OCP\Calendar\CalendarEventStatus; use OCP\Calendar\ICalendarEventBuilder; use OCP\Calendar\ICreateFromString; use Sabre\VObject\Component\VCalendar; @@ -23,6 +24,7 @@ class CalendarEventBuilder implements ICalendarEventBuilder { private ?string $summary = null; private ?string $description = null; private ?string $location = null; + private ?CalendarEventStatus $status = null; private ?array $organizer = null; private array $attendees = []; @@ -57,6 +59,11 @@ class CalendarEventBuilder implements ICalendarEventBuilder { return $this; } + public function setStatus(CalendarEventStatus $status): static { + $this->status = $status; + return $this; + } + public function setOrganizer(string $email, ?string $commonName = null): ICalendarEventBuilder { $this->organizer = [$email, $commonName]; return $this; @@ -91,6 +98,7 @@ class CalendarEventBuilder implements ICalendarEventBuilder { 'SUMMARY' => $this->summary, 'DTSTART' => $this->startDate, 'DTEND' => $this->endDate, + 'STATUS' => $this->status->value, ]; if ($this->description !== null) { $props['DESCRIPTION'] = $this->description; @@ -126,6 +134,13 @@ class CalendarEventBuilder implements ICalendarEventBuilder { $params = []; if ($cn !== null) { $params['CN'] = $cn; + if ($name === 'ORGANIZER') { + $params['ROLE'] = 'CHAIR'; + $params['PARTSTAT'] = 'ACCEPTED'; + } else { + $params['ROLE'] = 'REQ-PARTICIPANT'; + $params['PARTSTAT'] = 'NEEDS-ACTION'; + } } $vevent->add($name, $email, $params); } diff --git a/lib/private/Collaboration/Collaborators/MailPlugin.php b/lib/private/Collaboration/Collaborators/MailPlugin.php index 134970518bc..278ba19aa5a 100644 --- a/lib/private/Collaboration/Collaborators/MailPlugin.php +++ b/lib/private/Collaboration/Collaborators/MailPlugin.php @@ -100,6 +100,11 @@ class MailPlugin implements ISearchPlugin { $emailAddress = $emailAddressData['value']; $emailAddressType = $emailAddressData['type']; } + + if (!filter_var($emailAddress, FILTER_VALIDATE_EMAIL)) { + continue; + } + if (isset($contact['FN'])) { $displayName = $contact['FN'] . ' (' . $emailAddress . ')'; } diff --git a/lib/private/Files/FilenameValidator.php b/lib/private/Files/FilenameValidator.php index fde45068df7..b1979789ec8 100644 --- a/lib/private/Files/FilenameValidator.php +++ b/lib/private/Files/FilenameValidator.php @@ -127,9 +127,6 @@ class FilenameValidator implements IFilenameValidator { if (empty($this->forbiddenCharacters)) { // Get always forbidden characters $forbiddenCharacters = str_split(\OCP\Constants::FILENAME_INVALID_CHARS); - if ($forbiddenCharacters === false) { - $forbiddenCharacters = []; - } // Get admin defined invalid characters $additionalChars = $this->config->getSystemValue('forbidden_filename_characters', []); @@ -231,7 +228,8 @@ class FilenameValidator implements IFilenameValidator { return false; } - protected function checkForbiddenName($filename): void { + protected function checkForbiddenName(string $filename): void { + $filename = mb_strtolower($filename); if ($this->isForbidden($filename)) { throw new ReservedWordException($this->l10n->t('"%1$s" is a forbidden file or folder name.', [$filename])); } @@ -295,6 +293,6 @@ class FilenameValidator implements IFilenameValidator { $values = $fallback; } - return array_map('mb_strtolower', $values); + return array_map(mb_strtolower(...), $values); } }; diff --git a/lib/private/Repair/RepairMimeTypes.php b/lib/private/Repair/RepairMimeTypes.php index 715f7623440..28b22ec3f20 100644 --- a/lib/private/Repair/RepairMimeTypes.php +++ b/lib/private/Repair/RepairMimeTypes.php @@ -338,6 +338,21 @@ class RepairMimeTypes implements IRepairStep { } /** + * @throws Exception + * @since 32.0.0 + */ + private function introduceMusicxmlType(): IResult|int|null { + $updatedMimetypes = [ + 'mxl' => 'application/vnd.recordare.musicxml', + 'musicxml' => 'application/vnd.recordare.musicxml+xml', + ]; + + return $this->updateMimetypes($updatedMimetypes); + } + + + + /** * Check if there are any migrations available * * @throws Exception @@ -447,6 +462,10 @@ class RepairMimeTypes implements IRepairStep { $out->info('Fixed zst mime type'); } + if (version_compare($mimeTypeVersion, '32.0.0.0', '<') && $this->introduceMusicxmlType()) { + $out->info('Fixed musicxml mime type'); + } + if (!$this->dryRun) { $this->appConfig->setValueString('files', 'mimetype_version', $serverVersion); } diff --git a/lib/private/Share20/DefaultShareProvider.php b/lib/private/Share20/DefaultShareProvider.php index c9e5bf96cb7..a257bc4f7b5 100644 --- a/lib/private/Share20/DefaultShareProvider.php +++ b/lib/private/Share20/DefaultShareProvider.php @@ -322,10 +322,7 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv ->where($qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_USERGROUP))) ->andWhere($qb->expr()->eq('share_with', $qb->createNamedParameter($recipient))) ->andWhere($qb->expr()->eq('parent', $qb->createNamedParameter($share->getId()))) - ->andWhere($qb->expr()->orX( - $qb->expr()->eq('item_type', $qb->createNamedParameter('file')), - $qb->expr()->eq('item_type', $qb->createNamedParameter('folder')) - )) + ->andWhere($qb->expr()->in('item_type', $qb->createNamedParameter(['file', 'folder'], IQueryBuilder::PARAM_STR_ARRAY))) ->executeQuery(); $data = $stmt->fetch(); @@ -383,10 +380,7 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv ], IQueryBuilder::PARAM_INT_ARRAY) ) ) - ->andWhere($qb->expr()->orX( - $qb->expr()->eq('item_type', $qb->createNamedParameter('file')), - $qb->expr()->eq('item_type', $qb->createNamedParameter('folder')) - )) + ->andWhere($qb->expr()->in('item_type', $qb->createNamedParameter(['file', 'folder'], IQueryBuilder::PARAM_STR_ARRAY))) ->orderBy('id'); $cursor = $qb->executeQuery(); @@ -449,10 +443,7 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv ->where($qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_USERGROUP))) ->andWhere($qb->expr()->eq('share_with', $qb->createNamedParameter($recipient))) ->andWhere($qb->expr()->eq('parent', $qb->createNamedParameter($share->getId()))) - ->andWhere($qb->expr()->orX( - $qb->expr()->eq('item_type', $qb->createNamedParameter('file')), - $qb->expr()->eq('item_type', $qb->createNamedParameter('folder')) - )) + ->andWhere($qb->expr()->in('item_type', $qb->createNamedParameter(['file', 'folder'], IQueryBuilder::PARAM_STR_ARRAY))) ->executeQuery(); $data = $stmt->fetch(); @@ -565,10 +556,7 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv ->where($qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_USERGROUP))) ->andWhere($qb->expr()->eq('share_with', $qb->createNamedParameter($recipient))) ->andWhere($qb->expr()->eq('parent', $qb->createNamedParameter($share->getId()))) - ->andWhere($qb->expr()->orX( - $qb->expr()->eq('item_type', $qb->createNamedParameter('file')), - $qb->expr()->eq('item_type', $qb->createNamedParameter('folder')) - )) + ->andWhere($qb->expr()->in('item_type', $qb->createNamedParameter(['file', 'folder'], IQueryBuilder::PARAM_STR_ARRAY))) ->setMaxResults(1) ->executeQuery(); @@ -621,16 +609,9 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv 'f.parent AS f_parent', 'f.name', 'f.mimetype', 'f.mimepart', 'f.size', 'f.mtime', 'f.storage_mtime', 'f.encrypted', 'f.unencrypted_size', 'f.etag', 'f.checksum') ->from('share', 's') - ->andWhere($qb->expr()->orX( - $qb->expr()->eq('item_type', $qb->createNamedParameter('file')), - $qb->expr()->eq('item_type', $qb->createNamedParameter('folder')) - )); + ->andWhere($qb->expr()->in('item_type', $qb->createNamedParameter(['file', 'folder'], IQueryBuilder::PARAM_STR_ARRAY))); - $qb->andWhere($qb->expr()->orX( - $qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_USER)), - $qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_GROUP)), - $qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_LINK)) - )); + $qb->andWhere($qb->expr()->in('share_type', $qb->createNamedParameter([IShare::TYPE_USER, IShare::TYPE_GROUP, IShare::TYPE_LINK], IQueryBuilder::PARAM_INT_ARRAY))); /** * Reshares for this user are shares where they are the owner. @@ -693,10 +674,7 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv $qb = $this->dbConn->getQueryBuilder(); $qb->select('*') ->from('share') - ->andWhere($qb->expr()->orX( - $qb->expr()->eq('item_type', $qb->createNamedParameter('file')), - $qb->expr()->eq('item_type', $qb->createNamedParameter('folder')) - )); + ->andWhere($qb->expr()->in('item_type', $qb->createNamedParameter(['file', 'folder'], IQueryBuilder::PARAM_STR_ARRAY))); $qb->andWhere($qb->expr()->eq('share_type', $qb->createNamedParameter($shareType))); @@ -756,10 +734,7 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv ], IQueryBuilder::PARAM_INT_ARRAY) ) ) - ->andWhere($qb->expr()->orX( - $qb->expr()->eq('item_type', $qb->createNamedParameter('file')), - $qb->expr()->eq('item_type', $qb->createNamedParameter('folder')) - )); + ->andWhere($qb->expr()->in('item_type', $qb->createNamedParameter(['file', 'folder'], IQueryBuilder::PARAM_STR_ARRAY))); $cursor = $qb->executeQuery(); $data = $cursor->fetch(); @@ -795,17 +770,8 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv $cursor = $qb->select('*') ->from('share') ->andWhere($qb->expr()->eq('file_source', $qb->createNamedParameter($path->getId()))) - ->andWhere( - $qb->expr()->orX( - $qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_USER)), - $qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_GROUP)), - $qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_LINK)), - ) - ) - ->andWhere($qb->expr()->orX( - $qb->expr()->eq('item_type', $qb->createNamedParameter('file')), - $qb->expr()->eq('item_type', $qb->createNamedParameter('folder')) - )) + ->andWhere($qb->expr()->in('share_type', $qb->createNamedParameter([IShare::TYPE_USER, IShare::TYPE_GROUP, IShare::TYPE_LINK], IQueryBuilder::PARAM_INT_ARRAY))) + ->andWhere($qb->expr()->in('item_type', $qb->createNamedParameter(['file', 'folder'], IQueryBuilder::PARAM_STR_ARRAY))) ->orderBy('id', 'ASC') ->executeQuery(); @@ -874,10 +840,7 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv $qb->where($qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_USER))) ->andWhere($qb->expr()->eq('share_with', $qb->createNamedParameter($userId))) - ->andWhere($qb->expr()->orX( - $qb->expr()->eq('item_type', $qb->createNamedParameter('file')), - $qb->expr()->eq('item_type', $qb->createNamedParameter('folder')) - )); + ->andWhere($qb->expr()->in('item_type', $qb->createNamedParameter(['file', 'folder'], IQueryBuilder::PARAM_STR_ARRAY))); // Filter by node if provided if ($node !== null) { @@ -942,10 +905,7 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv $groups, IQueryBuilder::PARAM_STR_ARRAY ))) - ->andWhere($qb->expr()->orX( - $qb->expr()->eq('item_type', $qb->createNamedParameter('file')), - $qb->expr()->eq('item_type', $qb->createNamedParameter('folder')) - )); + ->andWhere($qb->expr()->in('item_type', $qb->createNamedParameter(['file', 'folder'], IQueryBuilder::PARAM_STR_ARRAY))); $cursor = $qb->executeQuery(); while ($data = $cursor->fetch()) { @@ -988,10 +948,7 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv ->from('share') ->where($qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_LINK))) ->andWhere($qb->expr()->eq('token', $qb->createNamedParameter($token))) - ->andWhere($qb->expr()->orX( - $qb->expr()->eq('item_type', $qb->createNamedParameter('file')), - $qb->expr()->eq('item_type', $qb->createNamedParameter('folder')) - )) + ->andWhere($qb->expr()->in('item_type', $qb->createNamedParameter(['file', 'folder'], IQueryBuilder::PARAM_STR_ARRAY))) ->executeQuery(); $data = $cursor->fetch(); @@ -1090,7 +1047,7 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv ->from('share') ->where($qb->expr()->eq('share_with', $qb->createNamedParameter($userId))) ->andWhere($qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_USERGROUP))) - ->andWhere($qb->expr()->in('item_type', [$qb->createNamedParameter('file'), $qb->createNamedParameter('folder')])); + ->andWhere($qb->expr()->in('item_type', $qb->createNamedParameter(['file', 'folder'], IQueryBuilder::PARAM_STR_ARRAY))); // this is called with either all group shares or one group share. // for all shares it's easier to just only search by share_with, @@ -1147,10 +1104,7 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv */ $qb->where( $qb->expr()->andX( - $qb->expr()->orX( - $qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_GROUP)), - $qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_USERGROUP)) - ), + $qb->expr()->in('share_type', $qb->createNamedParameter([IShare::TYPE_GROUP, IShare::TYPE_USERGROUP], IQueryBuilder::PARAM_INT_ARRAY)), $qb->expr()->eq('uid_owner', $qb->createNamedParameter($uid)) ) ); @@ -1323,26 +1277,19 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv $qb = $this->dbConn->getQueryBuilder(); - $or = $qb->expr()->orX( - $qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_USER)), - $qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_GROUP)), - $qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_LINK)) - ); + $shareTypes = [IShare::TYPE_USER, IShare::TYPE_GROUP, IShare::TYPE_LINK]; if ($currentAccess) { - $or->add($qb->expr()->eq('share_type', $qb->createNamedParameter(IShare::TYPE_USERGROUP))); + $shareTypes[] = IShare::TYPE_USERGROUP; } $qb->select('id', 'parent', 'share_type', 'share_with', 'file_source', 'file_target', 'permissions') ->from('share') ->where( - $or + $qb->expr()->in('share_type', $qb->createNamedParameter($shareTypes, IQueryBuilder::PARAM_INT_ARRAY)) ) ->andWhere($qb->expr()->in('file_source', $qb->createNamedParameter($ids, IQueryBuilder::PARAM_INT_ARRAY))) - ->andWhere($qb->expr()->orX( - $qb->expr()->eq('item_type', $qb->createNamedParameter('file')), - $qb->expr()->eq('item_type', $qb->createNamedParameter('folder')) - )); + ->andWhere($qb->expr()->in('item_type', $qb->createNamedParameter(['file', 'folder'], IQueryBuilder::PARAM_STR_ARRAY))); // Ensure accepted is true for user and usergroup type $qb->andWhere( @@ -1659,13 +1606,7 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv $qb->select('*') ->from('share') - ->where( - $qb->expr()->orX( - $qb->expr()->eq('share_type', $qb->createNamedParameter(\OCP\Share\IShare::TYPE_USER)), - $qb->expr()->eq('share_type', $qb->createNamedParameter(\OCP\Share\IShare::TYPE_GROUP)), - $qb->expr()->eq('share_type', $qb->createNamedParameter(\OCP\Share\IShare::TYPE_LINK)) - ) - ); + ->where($qb->expr()->in('share_type', $qb->createNamedParameter([IShare::TYPE_USER, IShare::TYPE_GROUP, IShare::TYPE_LINK], IQueryBuilder::PARAM_INT_ARRAY))); $cursor = $qb->executeQuery(); while ($data = $cursor->fetch()) { diff --git a/lib/private/SystemTag/SystemTagObjectMapper.php b/lib/private/SystemTag/SystemTagObjectMapper.php index 09a7ce1a6ed..3881336bf37 100644 --- a/lib/private/SystemTag/SystemTagObjectMapper.php +++ b/lib/private/SystemTag/SystemTagObjectMapper.php @@ -284,6 +284,9 @@ class SystemTagObjectMapper implements ISystemTagObjectMapper { * {@inheritdoc} */ public function setObjectIdsForTag(string $tagId, string $objectType, array $objectIds): void { + $currentObjectIds = $this->getObjectIdsForTags($tagId, $objectType); + $removedObjectIds = array_diff($currentObjectIds, $objectIds); + $addedObjectIds = array_diff($objectIds, $currentObjectIds); $this->connection->beginTransaction(); $query = $this->connection->getQueryBuilder(); $query->delete(self::RELATION_TABLE) @@ -292,6 +295,15 @@ class SystemTagObjectMapper implements ISystemTagObjectMapper { ->executeStatement(); $this->connection->commit(); + foreach ($removedObjectIds as $objectId) { + $this->dispatcher->dispatch(MapperEvent::EVENT_UNASSIGN, new MapperEvent( + MapperEvent::EVENT_UNASSIGN, + $objectType, + (string)$objectId, + [(int)$tagId] + )); + } + if (empty($objectIds)) { return; } @@ -312,6 +324,14 @@ class SystemTagObjectMapper implements ISystemTagObjectMapper { $this->updateEtagForTags([$tagId]); $this->connection->commit(); + foreach ($addedObjectIds as $objectId) { + $this->dispatcher->dispatch(MapperEvent::EVENT_ASSIGN, new MapperEvent( + MapperEvent::EVENT_ASSIGN, + $objectType, + (string)$objectId, + [(int)$tagId] + )); + } } /** diff --git a/lib/private/Template/functions.php b/lib/private/Template/functions.php index 4354d0d8fce..957aaee2237 100644 --- a/lib/private/Template/functions.php +++ b/lib/private/Template/functions.php @@ -13,7 +13,10 @@ use OCP\IURLGenerator; use OCP\Server; use OCP\Util; -function p(string $string): void { +/** + * @param string $string + */ +function p($string): void { print(Util::sanitizeHTML($string)); } diff --git a/lib/private/User/Database.php b/lib/private/User/Database.php index 4252f57ba36..31488247939 100644 --- a/lib/private/User/Database.php +++ b/lib/private/User/Database.php @@ -487,9 +487,12 @@ class Database extends ABackend implements $query = $dbConn->getQueryBuilder(); $query->select($query->func()->count('uid')) ->from($this->table); - $result = $query->executeQuery(); + $result = $query->executeQuery()->fetchOne(); + if ($result === false) { + return false; + } - return $result->fetchOne(); + return (int)$result; } /** diff --git a/lib/public/Calendar/CalendarEventStatus.php b/lib/public/Calendar/CalendarEventStatus.php new file mode 100644 index 00000000000..5e070545758 --- /dev/null +++ b/lib/public/Calendar/CalendarEventStatus.php @@ -0,0 +1,19 @@ +<?php + +declare(strict_types=1); +/** + * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ +namespace OCP\Calendar; + +/** + * The status of a calendar event. + * + * @since 32.0.0 + */ +enum CalendarEventStatus: string { + case TENTATIVE = 'TENTATIVE'; + case CONFIRMED = 'CONFIRMED'; + case CANCELLED = 'CANCELLED'; +}; diff --git a/lib/public/Calendar/ICalendarEventBuilder.php b/lib/public/Calendar/ICalendarEventBuilder.php index 8afc817a61e..c99dc60cc8c 100644 --- a/lib/public/Calendar/ICalendarEventBuilder.php +++ b/lib/public/Calendar/ICalendarEventBuilder.php @@ -66,6 +66,13 @@ interface ICalendarEventBuilder { public function setLocation(string $location): self; /** + * Set the event status. + * + * @since 32.0.0 + */ + public function setStatus(CalendarEventStatus $status): static; + + /** * Set the event organizer. * This property is required if attendees are added! * diff --git a/lib/public/TaskProcessing/TaskTypes/AudioToText.php b/lib/public/TaskProcessing/TaskTypes/AudioToText.php index 3f23d00d41b..1982d4c9d28 100644 --- a/lib/public/TaskProcessing/TaskTypes/AudioToText.php +++ b/lib/public/TaskProcessing/TaskTypes/AudioToText.php @@ -34,7 +34,7 @@ class AudioToText implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } diff --git a/lib/public/TaskProcessing/TaskTypes/ContextAgentInteraction.php b/lib/public/TaskProcessing/TaskTypes/ContextAgentInteraction.php index f5bef6b48e3..937c13bbba5 100644 --- a/lib/public/TaskProcessing/TaskTypes/ContextAgentInteraction.php +++ b/lib/public/TaskProcessing/TaskTypes/ContextAgentInteraction.php @@ -31,7 +31,7 @@ class ContextAgentInteraction implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } /** diff --git a/lib/public/TaskProcessing/TaskTypes/ContextWrite.php b/lib/public/TaskProcessing/TaskTypes/ContextWrite.php index 36ee8f24d3f..fd5c6a8f58b 100644 --- a/lib/public/TaskProcessing/TaskTypes/ContextWrite.php +++ b/lib/public/TaskProcessing/TaskTypes/ContextWrite.php @@ -34,7 +34,7 @@ class ContextWrite implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } diff --git a/lib/public/TaskProcessing/TaskTypes/GenerateEmoji.php b/lib/public/TaskProcessing/TaskTypes/GenerateEmoji.php index 89ddfa58072..2cb22b3b455 100644 --- a/lib/public/TaskProcessing/TaskTypes/GenerateEmoji.php +++ b/lib/public/TaskProcessing/TaskTypes/GenerateEmoji.php @@ -34,7 +34,7 @@ class GenerateEmoji implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } diff --git a/lib/public/TaskProcessing/TaskTypes/TextToImage.php b/lib/public/TaskProcessing/TaskTypes/TextToImage.php index a4b8070e8bb..ed956d244a1 100644 --- a/lib/public/TaskProcessing/TaskTypes/TextToImage.php +++ b/lib/public/TaskProcessing/TaskTypes/TextToImage.php @@ -34,7 +34,7 @@ class TextToImage implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } diff --git a/lib/public/TaskProcessing/TaskTypes/TextToText.php b/lib/public/TaskProcessing/TaskTypes/TextToText.php index 92eaf5629e8..c39d435688a 100644 --- a/lib/public/TaskProcessing/TaskTypes/TextToText.php +++ b/lib/public/TaskProcessing/TaskTypes/TextToText.php @@ -34,7 +34,7 @@ class TextToText implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } diff --git a/lib/public/TaskProcessing/TaskTypes/TextToTextChangeTone.php b/lib/public/TaskProcessing/TaskTypes/TextToTextChangeTone.php index bab60976454..0ea4575a187 100644 --- a/lib/public/TaskProcessing/TaskTypes/TextToTextChangeTone.php +++ b/lib/public/TaskProcessing/TaskTypes/TextToTextChangeTone.php @@ -31,7 +31,7 @@ class TextToTextChangeTone implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } /** diff --git a/lib/public/TaskProcessing/TaskTypes/TextToTextChat.php b/lib/public/TaskProcessing/TaskTypes/TextToTextChat.php index e9169f64837..9cf1e7ef3ce 100644 --- a/lib/public/TaskProcessing/TaskTypes/TextToTextChat.php +++ b/lib/public/TaskProcessing/TaskTypes/TextToTextChat.php @@ -34,7 +34,7 @@ class TextToTextChat implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } diff --git a/lib/public/TaskProcessing/TaskTypes/TextToTextChatWithTools.php b/lib/public/TaskProcessing/TaskTypes/TextToTextChatWithTools.php index e09211e940b..ebc660a3af9 100644 --- a/lib/public/TaskProcessing/TaskTypes/TextToTextChatWithTools.php +++ b/lib/public/TaskProcessing/TaskTypes/TextToTextChatWithTools.php @@ -31,7 +31,7 @@ class TextToTextChatWithTools implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } /** diff --git a/lib/public/TaskProcessing/TaskTypes/TextToTextFormalization.php b/lib/public/TaskProcessing/TaskTypes/TextToTextFormalization.php index 81eff28f3e9..70e38f78c0b 100644 --- a/lib/public/TaskProcessing/TaskTypes/TextToTextFormalization.php +++ b/lib/public/TaskProcessing/TaskTypes/TextToTextFormalization.php @@ -34,7 +34,7 @@ class TextToTextFormalization implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } diff --git a/lib/public/TaskProcessing/TaskTypes/TextToTextHeadline.php b/lib/public/TaskProcessing/TaskTypes/TextToTextHeadline.php index 9907a3605b2..dde4ea03042 100644 --- a/lib/public/TaskProcessing/TaskTypes/TextToTextHeadline.php +++ b/lib/public/TaskProcessing/TaskTypes/TextToTextHeadline.php @@ -34,7 +34,7 @@ class TextToTextHeadline implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } diff --git a/lib/public/TaskProcessing/TaskTypes/TextToTextProofread.php b/lib/public/TaskProcessing/TaskTypes/TextToTextProofread.php index 09f2111e22e..508794490be 100644 --- a/lib/public/TaskProcessing/TaskTypes/TextToTextProofread.php +++ b/lib/public/TaskProcessing/TaskTypes/TextToTextProofread.php @@ -33,7 +33,7 @@ class TextToTextProofread implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } diff --git a/lib/public/TaskProcessing/TaskTypes/TextToTextReformulation.php b/lib/public/TaskProcessing/TaskTypes/TextToTextReformulation.php index 44c1fddc73c..120f5316aee 100644 --- a/lib/public/TaskProcessing/TaskTypes/TextToTextReformulation.php +++ b/lib/public/TaskProcessing/TaskTypes/TextToTextReformulation.php @@ -34,7 +34,7 @@ class TextToTextReformulation implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } diff --git a/lib/public/TaskProcessing/TaskTypes/TextToTextSimplification.php b/lib/public/TaskProcessing/TaskTypes/TextToTextSimplification.php index 580b9d92755..d107e584e3a 100644 --- a/lib/public/TaskProcessing/TaskTypes/TextToTextSimplification.php +++ b/lib/public/TaskProcessing/TaskTypes/TextToTextSimplification.php @@ -34,7 +34,7 @@ class TextToTextSimplification implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } diff --git a/lib/public/TaskProcessing/TaskTypes/TextToTextSummary.php b/lib/public/TaskProcessing/TaskTypes/TextToTextSummary.php index 8b00c64f915..601b478c0bd 100644 --- a/lib/public/TaskProcessing/TaskTypes/TextToTextSummary.php +++ b/lib/public/TaskProcessing/TaskTypes/TextToTextSummary.php @@ -33,7 +33,7 @@ class TextToTextSummary implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } diff --git a/lib/public/TaskProcessing/TaskTypes/TextToTextTopics.php b/lib/public/TaskProcessing/TaskTypes/TextToTextTopics.php index a08ec6d2c0f..943cc2e2fd4 100644 --- a/lib/public/TaskProcessing/TaskTypes/TextToTextTopics.php +++ b/lib/public/TaskProcessing/TaskTypes/TextToTextTopics.php @@ -34,7 +34,7 @@ class TextToTextTopics implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } diff --git a/lib/public/TaskProcessing/TaskTypes/TextToTextTranslate.php b/lib/public/TaskProcessing/TaskTypes/TextToTextTranslate.php index 11b71ec3eb2..a02550226ee 100644 --- a/lib/public/TaskProcessing/TaskTypes/TextToTextTranslate.php +++ b/lib/public/TaskProcessing/TaskTypes/TextToTextTranslate.php @@ -34,7 +34,7 @@ class TextToTextTranslate implements ITaskType { public function __construct( IFactory $l10nFactory, ) { - $this->l = $l10nFactory->get('core'); + $this->l = $l10nFactory->get('lib'); } |