diff options
50 files changed, 219 insertions, 529 deletions
diff --git a/apps/comments/l10n/it.js b/apps/comments/l10n/it.js index b17ca3241d8..358384ed956 100644 --- a/apps/comments/l10n/it.js +++ b/apps/comments/l10n/it.js @@ -2,6 +2,7 @@ OC.L10N.register( "comments", { "Comments" : "Commenti", + "Unknown user" : "Utente sconosciuto", "New comment …" : "Nuovo commento...", "Delete comment" : "Elimina commento", "Post" : "Commento", diff --git a/apps/comments/l10n/it.json b/apps/comments/l10n/it.json index a0ecb533481..d84aa41cecc 100644 --- a/apps/comments/l10n/it.json +++ b/apps/comments/l10n/it.json @@ -1,5 +1,6 @@ { "translations": { "Comments" : "Commenti", + "Unknown user" : "Utente sconosciuto", "New comment …" : "Nuovo commento...", "Delete comment" : "Elimina commento", "Post" : "Commento", diff --git a/apps/encryption/templates/settings-admin.php b/apps/encryption/templates/settings-admin.php index 405dbaf703f..efe9c44ece7 100644 --- a/apps/encryption/templates/settings-admin.php +++ b/apps/encryption/templates/settings-admin.php @@ -1,6 +1,6 @@ <?php /** @var array $_ */ -/** @var OC_L10N $l */ +/** @var \OCP\IL10N $l */ script('encryption', 'settings-admin'); script('core', 'multiselect'); style('encryption', 'settings-admin'); diff --git a/apps/encryption/templates/settings-personal.php b/apps/encryption/templates/settings-personal.php index b92a9a19723..2ea55e15c80 100644 --- a/apps/encryption/templates/settings-personal.php +++ b/apps/encryption/templates/settings-personal.php @@ -1,6 +1,6 @@ <?php /** @var array $_ */ - /** @var OC_L10N $l */ + /** @var \OCP\IL10N $l */ script('encryption', 'settings-personal'); script('core', 'multiselect'); ?> diff --git a/apps/federatedfilesharing/l10n/hu_HU.js b/apps/federatedfilesharing/l10n/hu_HU.js index 8fb4abede09..142ca1f6c66 100644 --- a/apps/federatedfilesharing/l10n/hu_HU.js +++ b/apps/federatedfilesharing/l10n/hu_HU.js @@ -28,6 +28,10 @@ OC.L10N.register( "File is already shared with %s" : "Fájl már megosztva vele: %s", "Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "%s megosztása sikertelen, mert %s nem található; talán a szerver jelenleg nem elérhető.", "Could not find share" : "A megosztás nem található", + "You received \"%3$s\" as a remote share from %1$s (on behalf of %2$s)" : "Kaptál egy távoli megosztást: \"%3$s\", innen: %1$s (%2$s nevében)", + "You received {share} as a remote share from {user} (on behalf of {behalf})" : "Kaptál egy távoli megosztást: {share}, innen: {user} ({behalf} nevében)", + "You received \"%3$s\" as a remote share from %1$s" : "Kaptál egy távoli megosztást: \"%3$s\", innen: %1$s", + "You received {share} as a remote share from {user}" : "Kaptál egy távoli megosztást: {share}, innen: {user}", "Accept" : "Elfogadás", "Decline" : "Elutasítás", "Share with me through my #Nextcloud Federated Cloud ID, see %s" : "Ossza meg velem az #Nextcloud Egyesített Felhő Azonosító segítségével, lásd %s", diff --git a/apps/federatedfilesharing/l10n/hu_HU.json b/apps/federatedfilesharing/l10n/hu_HU.json index 91801b8b132..e0a7e429b1c 100644 --- a/apps/federatedfilesharing/l10n/hu_HU.json +++ b/apps/federatedfilesharing/l10n/hu_HU.json @@ -26,6 +26,10 @@ "File is already shared with %s" : "Fájl már megosztva vele: %s", "Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "%s megosztása sikertelen, mert %s nem található; talán a szerver jelenleg nem elérhető.", "Could not find share" : "A megosztás nem található", + "You received \"%3$s\" as a remote share from %1$s (on behalf of %2$s)" : "Kaptál egy távoli megosztást: \"%3$s\", innen: %1$s (%2$s nevében)", + "You received {share} as a remote share from {user} (on behalf of {behalf})" : "Kaptál egy távoli megosztást: {share}, innen: {user} ({behalf} nevében)", + "You received \"%3$s\" as a remote share from %1$s" : "Kaptál egy távoli megosztást: \"%3$s\", innen: %1$s", + "You received {share} as a remote share from {user}" : "Kaptál egy távoli megosztást: {share}, innen: {user}", "Accept" : "Elfogadás", "Decline" : "Elutasítás", "Share with me through my #Nextcloud Federated Cloud ID, see %s" : "Ossza meg velem az #Nextcloud Egyesített Felhő Azonosító segítségével, lásd %s", diff --git a/apps/federatedfilesharing/l10n/it.js b/apps/federatedfilesharing/l10n/it.js index 3f32c04dbf0..5c1ada00384 100644 --- a/apps/federatedfilesharing/l10n/it.js +++ b/apps/federatedfilesharing/l10n/it.js @@ -28,6 +28,10 @@ OC.L10N.register( "File is already shared with %s" : "Il file è già condiviso con %s", "Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "La condivisione di %s non è riuscita, impossibile trovare %s, è probabile che il server non sia al momento raggiungibile.", "Could not find share" : "Impossibile trovare la condivisione", + "You received \"%3$s\" as a remote share from %1$s (on behalf of %2$s)" : "Hai ricevuto \"%3$s\" come condivisione remota da %1$s (per conto di %2$s)", + "You received {share} as a remote share from {user} (on behalf of {behalf})" : "Hai ricevuto {share} come condivisione remota da {user} (per conto di {behalf})", + "You received \"%3$s\" as a remote share from %1$s" : "Hai ricevuto \"%3$s\" come condivisione remota da %1$s", + "You received {share} as a remote share from {user}" : "Hai ricevuto {share} come condivisione remota da {user}", "Accept" : "Accetta", "Decline" : "Rifiuta", "Share with me through my #Nextcloud Federated Cloud ID, see %s" : "Condividi con me attraverso il mio ID di cloud federata #Nextcloud, vedi %s", diff --git a/apps/federatedfilesharing/l10n/it.json b/apps/federatedfilesharing/l10n/it.json index 6e4f01d5e01..4359b96ef65 100644 --- a/apps/federatedfilesharing/l10n/it.json +++ b/apps/federatedfilesharing/l10n/it.json @@ -26,6 +26,10 @@ "File is already shared with %s" : "Il file è già condiviso con %s", "Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "La condivisione di %s non è riuscita, impossibile trovare %s, è probabile che il server non sia al momento raggiungibile.", "Could not find share" : "Impossibile trovare la condivisione", + "You received \"%3$s\" as a remote share from %1$s (on behalf of %2$s)" : "Hai ricevuto \"%3$s\" come condivisione remota da %1$s (per conto di %2$s)", + "You received {share} as a remote share from {user} (on behalf of {behalf})" : "Hai ricevuto {share} come condivisione remota da {user} (per conto di {behalf})", + "You received \"%3$s\" as a remote share from %1$s" : "Hai ricevuto \"%3$s\" come condivisione remota da %1$s", + "You received {share} as a remote share from {user}" : "Hai ricevuto {share} come condivisione remota da {user}", "Accept" : "Accetta", "Decline" : "Rifiuta", "Share with me through my #Nextcloud Federated Cloud ID, see %s" : "Condividi con me attraverso il mio ID di cloud federata #Nextcloud, vedi %s", diff --git a/apps/federatedfilesharing/templates/settings-admin.php b/apps/federatedfilesharing/templates/settings-admin.php index c454eeba17b..3ffd4bd5b27 100644 --- a/apps/federatedfilesharing/templates/settings-admin.php +++ b/apps/federatedfilesharing/templates/settings-admin.php @@ -1,5 +1,5 @@ <?php -/** @var OC_L10N $l */ +/** @var \OCP\IL10N $l */ /** @var array $_ */ script('federatedfilesharing', 'settings-admin'); ?> diff --git a/apps/federatedfilesharing/templates/settings-personal.php b/apps/federatedfilesharing/templates/settings-personal.php index 6b43f70495f..98a1cd7f751 100644 --- a/apps/federatedfilesharing/templates/settings-personal.php +++ b/apps/federatedfilesharing/templates/settings-personal.php @@ -1,5 +1,5 @@ <?php -/** @var OC_L10N $l */ +/** @var \OCP\IL10N $l */ /** @var array $_ */ script('federatedfilesharing', 'settings-personal'); style('federatedfilesharing', 'settings-personal'); diff --git a/apps/federation/templates/settings-admin.php b/apps/federation/templates/settings-admin.php index 70d051ad7d6..8773851c768 100644 --- a/apps/federation/templates/settings-admin.php +++ b/apps/federation/templates/settings-admin.php @@ -2,7 +2,7 @@ /** @var array $_ */ use OCA\Federation\TrustedServers; -/** @var OC_L10N $l */ +/** @var \OCP\IL10N $l */ script('federation', 'settings-admin'); style('federation', 'settings-admin') ?> diff --git a/apps/files/l10n/it.js b/apps/files/l10n/it.js index 042ba271b12..c10f86c4bd2 100644 --- a/apps/files/l10n/it.js +++ b/apps/files/l10n/it.js @@ -1,6 +1,7 @@ OC.L10N.register( "files", { + "Storage is temporarily not available" : "L'archiviazione è temporaneamente non disponibile", "Storage invalid" : "Archiviazione non valida", "Unknown error" : "Errore sconosciuto", "Files" : "File", @@ -15,6 +16,8 @@ OC.L10N.register( "Unable to upload {filename} as it is a directory or has 0 bytes" : "Impossibile caricare {filename} poiché è una cartella oppure ha una dimensione di 0 byte.", "Total file size {size1} exceeds upload limit {size2}" : "La dimensione totale del file {size1} supera il limite di caricamento {size2}", "Not enough free space, you are uploading {size1} but only {size2} is left" : "Spazio insufficiente, stai caricando {size1}, ma è rimasto solo {size2}", + "Target folder \"{dir}\" does not exist any more" : "La cartella di destinazione \"{dir}\" non esiste più", + "Not enough free space" : "Spazio libero insufficiente", "Uploading..." : "Caricamento in corso...", "..." : "...", "{hours}:{minutes}:{seconds} hour{plural_s} left" : "{hours}:{minutes}:{seconds} ore rimanenti", @@ -30,6 +33,8 @@ OC.L10N.register( "Actions" : "Azioni", "Download" : "Scarica", "Rename" : "Rinomina", + "Move" : "Sposta", + "Target folder" : "Cartella di destinazione", "Delete" : "Elimina", "Disconnect storage" : "Disconnetti archiviazione", "Unshare" : "Rimuovi condivisione", @@ -49,6 +54,7 @@ OC.L10N.register( "Could not create file \"{file}\" because it already exists" : "Impossibile creare il file \"{file}\" poiché esiste già", "Could not create folder \"{dir}\" because it already exists" : "Impossibile creare la cartella \"{dir}\" poiché esiste già", "Error deleting file \"{fileName}\"." : "Errore durante l'eliminazione del file \"{fileName}\".", + "No search results in other folders for '{tag}{filter}{endtag}'" : "Nessun risultato di ricerca in altre cartelle per '{tag}{filter}{endtag}'", "Name" : "Nome", "Size" : "Dimensione", "Modified" : "Modificato", @@ -99,6 +105,7 @@ OC.L10N.register( "Restored by %2$s" : "Ripristinata da %2$s", "Renamed by %2$s" : "Rinominata da %2$s", "Moved by %2$s" : "Spostata da %2$s", + "File changes" : "Modiche dei file", "Upload (max. %s)" : "Carica (massimo %s)", "File handling" : "Gestione file", "Maximum upload size" : "Dimensione massima caricamento", diff --git a/apps/files/l10n/it.json b/apps/files/l10n/it.json index 0926c99b605..4862ef8c98a 100644 --- a/apps/files/l10n/it.json +++ b/apps/files/l10n/it.json @@ -1,4 +1,5 @@ { "translations": { + "Storage is temporarily not available" : "L'archiviazione è temporaneamente non disponibile", "Storage invalid" : "Archiviazione non valida", "Unknown error" : "Errore sconosciuto", "Files" : "File", @@ -13,6 +14,8 @@ "Unable to upload {filename} as it is a directory or has 0 bytes" : "Impossibile caricare {filename} poiché è una cartella oppure ha una dimensione di 0 byte.", "Total file size {size1} exceeds upload limit {size2}" : "La dimensione totale del file {size1} supera il limite di caricamento {size2}", "Not enough free space, you are uploading {size1} but only {size2} is left" : "Spazio insufficiente, stai caricando {size1}, ma è rimasto solo {size2}", + "Target folder \"{dir}\" does not exist any more" : "La cartella di destinazione \"{dir}\" non esiste più", + "Not enough free space" : "Spazio libero insufficiente", "Uploading..." : "Caricamento in corso...", "..." : "...", "{hours}:{minutes}:{seconds} hour{plural_s} left" : "{hours}:{minutes}:{seconds} ore rimanenti", @@ -28,6 +31,8 @@ "Actions" : "Azioni", "Download" : "Scarica", "Rename" : "Rinomina", + "Move" : "Sposta", + "Target folder" : "Cartella di destinazione", "Delete" : "Elimina", "Disconnect storage" : "Disconnetti archiviazione", "Unshare" : "Rimuovi condivisione", @@ -47,6 +52,7 @@ "Could not create file \"{file}\" because it already exists" : "Impossibile creare il file \"{file}\" poiché esiste già", "Could not create folder \"{dir}\" because it already exists" : "Impossibile creare la cartella \"{dir}\" poiché esiste già", "Error deleting file \"{fileName}\"." : "Errore durante l'eliminazione del file \"{fileName}\".", + "No search results in other folders for '{tag}{filter}{endtag}'" : "Nessun risultato di ricerca in altre cartelle per '{tag}{filter}{endtag}'", "Name" : "Nome", "Size" : "Dimensione", "Modified" : "Modificato", @@ -97,6 +103,7 @@ "Restored by %2$s" : "Ripristinata da %2$s", "Renamed by %2$s" : "Rinominata da %2$s", "Moved by %2$s" : "Spostata da %2$s", + "File changes" : "Modiche dei file", "Upload (max. %s)" : "Carica (massimo %s)", "File handling" : "Gestione file", "Maximum upload size" : "Dimensione massima caricamento", diff --git a/apps/files/lib/Helper.php b/apps/files/lib/Helper.php index 26bc020c871..b6b209dea70 100644 --- a/apps/files/lib/Helper.php +++ b/apps/files/lib/Helper.php @@ -45,7 +45,7 @@ class Helper { public static function buildFileStorageStatistics($dir) { // information about storage capacities $storageInfo = \OC_Helper::getStorageInfo($dir); - $l = new \OC_L10N('files'); + $l = \OC::$server->getL10N('files'); $maxUploadFileSize = \OCP\Util::maxUploadFilesize($dir, $storageInfo['free']); $maxHumanFileSize = \OCP\Util::humanFileSize($maxUploadFileSize); $maxHumanFileSize = $l->t('Upload (max. %s)', array($maxHumanFileSize)); diff --git a/apps/files/templates/index.php b/apps/files/templates/index.php index 92345d3063e..17958d330b7 100644 --- a/apps/files/templates/index.php +++ b/apps/files/templates/index.php @@ -1,4 +1,4 @@ -<?php /** @var $l OC_L10N */ ?> +<?php /** @var $l \OCP\IL10N */ ?> <?php $_['appNavigation']->printPage(); ?> <div id="app-content"> <?php foreach ($_['appContents'] as $content) { ?> diff --git a/apps/files/templates/recentlist.php b/apps/files/templates/recentlist.php index 1667eb4cc8d..6c271a07f5f 100644 --- a/apps/files/templates/recentlist.php +++ b/apps/files/templates/recentlist.php @@ -1,4 +1,4 @@ -<?php /** @var $l OC_L10N */ ?> +<?php /** @var $l \OCP\IL10N */ ?> <div id='notification'></div> <div id="emptycontent" class="hidden"></div> diff --git a/apps/files/tests/ActivityTest.php b/apps/files/tests/ActivityTest.php index e6199013e81..65e914c1a54 100644 --- a/apps/files/tests/ActivityTest.php +++ b/apps/files/tests/ActivityTest.php @@ -24,6 +24,8 @@ namespace OCA\Files\Tests; use OCA\Files\Activity; +use OCP\IL10N; +use OCP\L10N\IFactory; use Test\TestCase; /** @@ -77,12 +79,8 @@ class ActivityTest extends TestCase { $this->config ); - $this->l10nFactory = $this->getMockBuilder('OCP\L10N\IFactory') - ->disableOriginalConstructor() - ->getMock(); - $deL10n = $this->getMockBuilder('OC_L10N') - ->disableOriginalConstructor() - ->getMock(); + $this->l10nFactory = $this->createMock(IFactory::class); + $deL10n = $this->createMock(IL10N::class); $deL10n->expects($this->any()) ->method('t') ->willReturnCallback(function ($argument) { @@ -92,8 +90,8 @@ class ActivityTest extends TestCase { $this->l10nFactory->expects($this->any()) ->method('get') ->willReturnMap([ - ['files', null, new \OC_L10N('files', 'en')], - ['files', 'en', new \OC_L10N('files', 'en')], + ['files', null, \OC::$server->getL10N('files', 'en')], + ['files', 'en', \OC::$server->getL10N('files', 'en')], ['files', 'de', $deL10n], ]); diff --git a/apps/files/tests/Controller/ViewControllerTest.php b/apps/files/tests/Controller/ViewControllerTest.php index b4b4bfa92fc..179aaa373b3 100644 --- a/apps/files/tests/Controller/ViewControllerTest.php +++ b/apps/files/tests/Controller/ViewControllerTest.php @@ -137,7 +137,7 @@ class ViewControllerTest extends TestCase { 'appname' => 'files', 'script' => 'list.php', 'order' => 0, - 'name' => (string)new \OC_L10N_String(new \OC_L10N('files'), 'All files', []), + 'name' => \OC::$server->getL10N('files')->t('All files'), 'active' => false, 'icon' => '', ], @@ -146,7 +146,7 @@ class ViewControllerTest extends TestCase { 'appname' => 'files', 'script' => 'recentlist.php', 'order' => 2, - 'name' => (string)new \OC_L10N_String(new \OC_L10N('files'), 'Recent', []), + 'name' => \OC::$server->getL10N('files')->t('Recent'), 'active' => false, 'icon' => '', ], @@ -164,7 +164,7 @@ class ViewControllerTest extends TestCase { 'appname' => 'files_sharing', 'script' => 'list.php', 'order' => 10, - 'name' => (string)new \OC_L10N_String(new \OC_L10N('files_sharing'), 'Shared with you', []), + 'name' => \OC::$server->getL10N('files_sharing')->t('Shared with you'), 'active' => false, 'icon' => '', ], @@ -173,7 +173,7 @@ class ViewControllerTest extends TestCase { 'appname' => 'files_sharing', 'script' => 'list.php', 'order' => 15, - 'name' => (string)new \OC_L10N_String(new \OC_L10N('files_sharing'), 'Shared with others', []), + 'name' => \OC::$server->getL10N('files_sharing')->t('Shared with others'), 'active' => false, 'icon' => '', ], @@ -182,7 +182,7 @@ class ViewControllerTest extends TestCase { 'appname' => 'files_sharing', 'script' => 'list.php', 'order' => 20, - 'name' => (string)new \OC_L10N_String(new \OC_L10N('files_sharing'), 'Shared by link', []), + 'name' => \OC::$server->getL10N('files_sharing')->t('Shared by link', []), 'active' => false, 'icon' => '', ], @@ -191,7 +191,7 @@ class ViewControllerTest extends TestCase { 'appname' => 'systemtags', 'script' => 'list.php', 'order' => 25, - 'name' => (string)new \OC_L10N_String(new \OC_L10N('systemtags'), 'Tags', []), + 'name' => \OC::$server->getL10N('systemtags')->t('Tags'), 'active' => false, 'icon' => '', ], @@ -200,7 +200,7 @@ class ViewControllerTest extends TestCase { 'appname' => 'files_trashbin', 'script' => 'list.php', 'order' => 50, - 'name' => (string)new \OC_L10N_String(new \OC_L10N('files_trashbin'), 'Deleted files', []), + 'name' => \OC::$server->getL10N('files_trashbin')->t('Deleted files'), 'active' => false, 'icon' => '', ], diff --git a/apps/files_external/tests/Command/ListCommandTest.php b/apps/files_external/tests/Command/ListCommandTest.php index 7caf61cf57c..f2f9fa94c02 100644 --- a/apps/files_external/tests/Command/ListCommandTest.php +++ b/apps/files_external/tests/Command/ListCommandTest.php @@ -53,7 +53,7 @@ class ListCommandTest extends CommandTest { } public function testListAuthIdentifier() { - $l10n = $this->getMock('\OC_L10N', null, [], '', false); + $l10n = $this->getMock('\OPC\IL10N', null, [], '', false); $session = $this->createMock(ISession::class); $crypto = $this->createMock(ICrypto::class); $instance = $this->getInstance(); diff --git a/apps/files_sharing/l10n/it.js b/apps/files_sharing/l10n/it.js index 9348df2fa52..4411f4af004 100644 --- a/apps/files_sharing/l10n/it.js +++ b/apps/files_sharing/l10n/it.js @@ -60,6 +60,7 @@ OC.L10N.register( "Public link expired" : "Collegamento pubblico scaduto", "Public link of %2$s expired" : "il collegamento pubblico di %2$s è scaduto", "Shared by %2$s" : "Condivisa da %2$s", + "File shares" : "Condivisioni dei file", "Wrong share ID, share doesn't exist" : "ID di condivisione errato, la condivisione non esiste", "could not delete share" : "impossibile eliminare la condivisione", "Could not delete share" : "impossibile eliminare la condivisione", @@ -81,6 +82,7 @@ OC.L10N.register( "Wrong or no update parameter given" : "Parametro fornito non valido o non di aggiornamento", "Can't change permissions for public share links" : "Impossibile cambiare i permessi per i collegamenti di condivisione pubblici", "Cannot increase permissions" : "Impossibile aumentare i permessi", + "%s is publicly shared" : "%s è condiviso pubblicamente", "Share API is disabled" : "API di condivisione disabilitate", "This share is password-protected" : "Questa condivisione è protetta da password", "The password is wrong. Try again." : "La password è errata. Prova ancora.", diff --git a/apps/files_sharing/l10n/it.json b/apps/files_sharing/l10n/it.json index fbab26ddfa9..a9092a3b62b 100644 --- a/apps/files_sharing/l10n/it.json +++ b/apps/files_sharing/l10n/it.json @@ -58,6 +58,7 @@ "Public link expired" : "Collegamento pubblico scaduto", "Public link of %2$s expired" : "il collegamento pubblico di %2$s è scaduto", "Shared by %2$s" : "Condivisa da %2$s", + "File shares" : "Condivisioni dei file", "Wrong share ID, share doesn't exist" : "ID di condivisione errato, la condivisione non esiste", "could not delete share" : "impossibile eliminare la condivisione", "Could not delete share" : "impossibile eliminare la condivisione", @@ -79,6 +80,7 @@ "Wrong or no update parameter given" : "Parametro fornito non valido o non di aggiornamento", "Can't change permissions for public share links" : "Impossibile cambiare i permessi per i collegamenti di condivisione pubblici", "Cannot increase permissions" : "Impossibile aumentare i permessi", + "%s is publicly shared" : "%s è condiviso pubblicamente", "Share API is disabled" : "API di condivisione disabilitate", "This share is password-protected" : "Questa condivisione è protetta da password", "The password is wrong. Try again." : "La password è errata. Prova ancora.", diff --git a/apps/files_sharing/templates/authenticate.php b/apps/files_sharing/templates/authenticate.php index 909e839177c..fbc1d72a333 100644 --- a/apps/files_sharing/templates/authenticate.php +++ b/apps/files_sharing/templates/authenticate.php @@ -1,6 +1,6 @@ <?php /** @var $_ array */ - /** @var $l OC_L10N */ + /** @var $l \OCP\IL10N */ style('files_sharing', 'authenticate'); script('files_sharing', 'authenticate'); ?> diff --git a/apps/files_sharing/templates/list.php b/apps/files_sharing/templates/list.php index 785b2bc72a4..ec13b5c1f77 100644 --- a/apps/files_sharing/templates/list.php +++ b/apps/files_sharing/templates/list.php @@ -1,4 +1,4 @@ -<?php /** @var $l OC_L10N */ ?> +<?php /** @var $l \OCP\IL10N */ ?> <div id='notification'></div> <div id="emptycontent" class="hidden"></div> diff --git a/apps/files_sharing/templates/public.php b/apps/files_sharing/templates/public.php index 80c7d4d7460..e1a816e7fee 100644 --- a/apps/files_sharing/templates/public.php +++ b/apps/files_sharing/templates/public.php @@ -1,5 +1,5 @@ <?php -/** @var $l OC_L10N */ +/** @var $l \OCP\IL10N */ /** @var $_ array */ ?> diff --git a/apps/files_trashbin/templates/index.php b/apps/files_trashbin/templates/index.php index 9ea8a9d14c4..c3f0304d408 100644 --- a/apps/files_trashbin/templates/index.php +++ b/apps/files_trashbin/templates/index.php @@ -1,4 +1,4 @@ -<?php /** @var $l OC_L10N */ ?> +<?php /** @var $l \OCP\IL10N */ ?> <div id="controls"> <div id="file_action_panel"></div> </div> diff --git a/apps/systemtags/l10n/it.js b/apps/systemtags/l10n/it.js index 88aaacf212d..fc0f1760311 100644 --- a/apps/systemtags/l10n/it.js +++ b/apps/systemtags/l10n/it.js @@ -10,12 +10,20 @@ OC.L10N.register( "Please select tags to filter by" : "Seleziona le etichette per filtrare", "No files found for the selected tags" : "Nessun file trovato per le etichette selezionate", "<strong>System tags</strong> for a file have been modified" : "Le <strong>etichette di sistema</strong> per un file sono state modificate", + "You added system tag %3$s" : "Hai aggiunto l'etichetta di sistema %3$s", + "%1$s added system tag %3$s" : "%1$s ha aggiunto l'etichetta di sistema %3$s", + "You removed system tag %3$s" : "Hai rimosso l'etichetta di sistema %3$s", + "%1$s removed system tag %3$s" : "%1$s ha rimosso l'etichetta di sistema %3$s", "You created system tag %2$s" : "Hai creato l'etichetta di sistema %2$s", "%1$s created system tag %2$s" : "%1$s ha creato l'etichetta di sistema %2$s", "You deleted system tag %2$s" : "Hai eliminato l'etichetta di sistema %2$s", "%1$s deleted system tag %2$s" : "%1$s ha eliminato l'etichetta di sistema %2$s", "You updated system tag %3$s to %2$s" : "Hai aggiornato l'etichetta di sistema %3$s in %2$s", "%1$s updated system tag %3$s to %2$s" : "%1$s ha aggiornato l'etichetta di sistema %3$s in %2$s", + "You added system tag %3$s to %2$s" : "Hai aggiunto l'etichetta di sistema %3$s a %2$s", + "%1$s added system tag %3$s to %2$s" : "%1$s ha aggiunto l'etichetta di sistema %3$s a %2$s", + "You removed system tag %3$s from %2$s" : "Hai rimosso l'etichetta di sistema %3$s da %2$s", + "%1$s removed system tag %3$s from %2$s" : "%1$s ha rimosso l'etichetta di sistema %3$s da %2$s", "%s (restricted)" : "%s (limitato)", "%s (invisible)" : "%s (invisibile)", "Collaborative tags" : "Etichette collaborative", diff --git a/apps/systemtags/l10n/it.json b/apps/systemtags/l10n/it.json index cd29eac29cc..0ec6bba1f65 100644 --- a/apps/systemtags/l10n/it.json +++ b/apps/systemtags/l10n/it.json @@ -8,12 +8,20 @@ "Please select tags to filter by" : "Seleziona le etichette per filtrare", "No files found for the selected tags" : "Nessun file trovato per le etichette selezionate", "<strong>System tags</strong> for a file have been modified" : "Le <strong>etichette di sistema</strong> per un file sono state modificate", + "You added system tag %3$s" : "Hai aggiunto l'etichetta di sistema %3$s", + "%1$s added system tag %3$s" : "%1$s ha aggiunto l'etichetta di sistema %3$s", + "You removed system tag %3$s" : "Hai rimosso l'etichetta di sistema %3$s", + "%1$s removed system tag %3$s" : "%1$s ha rimosso l'etichetta di sistema %3$s", "You created system tag %2$s" : "Hai creato l'etichetta di sistema %2$s", "%1$s created system tag %2$s" : "%1$s ha creato l'etichetta di sistema %2$s", "You deleted system tag %2$s" : "Hai eliminato l'etichetta di sistema %2$s", "%1$s deleted system tag %2$s" : "%1$s ha eliminato l'etichetta di sistema %2$s", "You updated system tag %3$s to %2$s" : "Hai aggiornato l'etichetta di sistema %3$s in %2$s", "%1$s updated system tag %3$s to %2$s" : "%1$s ha aggiornato l'etichetta di sistema %3$s in %2$s", + "You added system tag %3$s to %2$s" : "Hai aggiunto l'etichetta di sistema %3$s a %2$s", + "%1$s added system tag %3$s to %2$s" : "%1$s ha aggiunto l'etichetta di sistema %3$s a %2$s", + "You removed system tag %3$s from %2$s" : "Hai rimosso l'etichetta di sistema %3$s da %2$s", + "%1$s removed system tag %3$s from %2$s" : "%1$s ha rimosso l'etichetta di sistema %3$s da %2$s", "%s (restricted)" : "%s (limitato)", "%s (invisible)" : "%s (invisibile)", "Collaborative tags" : "Etichette collaborative", diff --git a/core/l10n/it.js b/core/l10n/it.js index 1543cbcd070..8f2cb619045 100644 --- a/core/l10n/it.js +++ b/core/l10n/it.js @@ -3,6 +3,8 @@ OC.L10N.register( { "Please select a file." : "Seleziona un file.", "File is too big" : "Il file è troppo grande", + "The selected file is not an image." : "Il file selezionato non è un'immagine.", + "The selected file cannot be read." : "Il file selezionato non può essere letto.", "Invalid file provided" : "File non valido fornito", "No image or file provided" : "Non è stata fornita alcun immagine o file", "Unknown filetype" : "Tipo di file sconosciuto", @@ -95,13 +97,14 @@ OC.L10N.register( "Saving..." : "Salvataggio in corso...", "Dismiss" : "Annulla", "seconds ago" : "secondi fa", - "Logging in …" : "Login in corso ...", + "Logging in …" : "Accesso in corso...", "The link to reset your password has been sent to your email. If you do not receive it within a reasonable amount of time, check your spam/junk folders.<br>If it is not there ask your local administrator." : "Il collegamento per reimpostare la password è stato inviato al tuo indirizzo di posta. Se non lo ricevi in tempi ragionevoli, controlla le cartelle della posta indesiderata.<br>Se non dovesse essere nemmeno lì, contatta il tuo amministratore locale.", "Your files are encrypted. If you haven't enabled the recovery key, there will be no way to get your data back after your password is reset.<br />If you are not sure what to do, please contact your administrator before you continue. <br />Do you really want to continue?" : "I tuoi file sono cifrati. Se non hai precedentemente abilitato la chiave di ripristino, non sarà più possibile ritrovare i tuoi dati una volta che la password sarà reimpostata.<br />Se non sei sicuro, contatta l'amministratore prima di proseguire.<br />Vuoi davvero continuare?", "I know what I'm doing" : "So cosa sto facendo", "Password can not be changed. Please contact your administrator." : "La password non può essere cambiata. Contatta il tuo amministratore.", "No" : "No", "Yes" : "Sì", + "No files in here" : "Qui non c'è alcun file", "Choose" : "Scegli", "Error loading file picker template: {error}" : "Errore durante il caricamento del modello del selettore file: {error}", "Ok" : "Ok", @@ -118,6 +121,7 @@ OC.L10N.register( "(all selected)" : "(tutti i selezionati)", "({count} selected)" : "({count} selezionati)", "Error loading file exists template" : "Errore durante il caricamento del modello del file esistente", + "Pending" : "In corso", "Very weak password" : "Password molto debole", "Weak password" : "Password debole", "So-so password" : "Password così-così", @@ -222,6 +226,7 @@ OC.L10N.register( "Continue to Nextcloud" : "Continua su Nextcloud", "The update was successful. Redirecting you to Nextcloud now." : "L'aggiornamento è stato effettuato correttamente. Reindirizzamento immediato a Nextcloud.", "Searching other places" : "Ricerca in altre posizioni", + "No search results in other folders for '{tag}{filter}{endtag}'" : "Nessun risultato di ricerca in altre cartelle '{tag}{filter}{endtag}'", "_{count} search result in another folder_::_{count} search results in other folders_" : ["{count} risultato di ricerca in altre cartelle","{count} risultati di ricerca in altre cartelle"], "Personal" : "Personale", "Users" : "Utenti", diff --git a/core/l10n/it.json b/core/l10n/it.json index d31d63dfaf1..207a8ee3ac9 100644 --- a/core/l10n/it.json +++ b/core/l10n/it.json @@ -1,6 +1,8 @@ { "translations": { "Please select a file." : "Seleziona un file.", "File is too big" : "Il file è troppo grande", + "The selected file is not an image." : "Il file selezionato non è un'immagine.", + "The selected file cannot be read." : "Il file selezionato non può essere letto.", "Invalid file provided" : "File non valido fornito", "No image or file provided" : "Non è stata fornita alcun immagine o file", "Unknown filetype" : "Tipo di file sconosciuto", @@ -93,13 +95,14 @@ "Saving..." : "Salvataggio in corso...", "Dismiss" : "Annulla", "seconds ago" : "secondi fa", - "Logging in …" : "Login in corso ...", + "Logging in …" : "Accesso in corso...", "The link to reset your password has been sent to your email. If you do not receive it within a reasonable amount of time, check your spam/junk folders.<br>If it is not there ask your local administrator." : "Il collegamento per reimpostare la password è stato inviato al tuo indirizzo di posta. Se non lo ricevi in tempi ragionevoli, controlla le cartelle della posta indesiderata.<br>Se non dovesse essere nemmeno lì, contatta il tuo amministratore locale.", "Your files are encrypted. If you haven't enabled the recovery key, there will be no way to get your data back after your password is reset.<br />If you are not sure what to do, please contact your administrator before you continue. <br />Do you really want to continue?" : "I tuoi file sono cifrati. Se non hai precedentemente abilitato la chiave di ripristino, non sarà più possibile ritrovare i tuoi dati una volta che la password sarà reimpostata.<br />Se non sei sicuro, contatta l'amministratore prima di proseguire.<br />Vuoi davvero continuare?", "I know what I'm doing" : "So cosa sto facendo", "Password can not be changed. Please contact your administrator." : "La password non può essere cambiata. Contatta il tuo amministratore.", "No" : "No", "Yes" : "Sì", + "No files in here" : "Qui non c'è alcun file", "Choose" : "Scegli", "Error loading file picker template: {error}" : "Errore durante il caricamento del modello del selettore file: {error}", "Ok" : "Ok", @@ -116,6 +119,7 @@ "(all selected)" : "(tutti i selezionati)", "({count} selected)" : "({count} selezionati)", "Error loading file exists template" : "Errore durante il caricamento del modello del file esistente", + "Pending" : "In corso", "Very weak password" : "Password molto debole", "Weak password" : "Password debole", "So-so password" : "Password così-così", @@ -220,6 +224,7 @@ "Continue to Nextcloud" : "Continua su Nextcloud", "The update was successful. Redirecting you to Nextcloud now." : "L'aggiornamento è stato effettuato correttamente. Reindirizzamento immediato a Nextcloud.", "Searching other places" : "Ricerca in altre posizioni", + "No search results in other folders for '{tag}{filter}{endtag}'" : "Nessun risultato di ricerca in altre cartelle '{tag}{filter}{endtag}'", "_{count} search result in another folder_::_{count} search results in other folders_" : ["{count} risultato di ricerca in altre cartelle","{count} risultati di ricerca in altre cartelle"], "Personal" : "Personale", "Users" : "Utenti", diff --git a/core/templates/404.php b/core/templates/404.php index a0d2f0160b7..79a67b3ce2c 100644 --- a/core/templates/404.php +++ b/core/templates/404.php @@ -1,6 +1,6 @@ <?php /** @var $_ array */ -/** @var $l OC_L10N */ +/** @var $l \OCP\IL10N */ /** @var $theme OC_Theme */ // @codeCoverageIgnoreStart if(!isset($_)) {//also provide standalone error page diff --git a/core/templates/exception.php b/core/templates/exception.php index 899ea29456c..e90a3268155 100644 --- a/core/templates/exception.php +++ b/core/templates/exception.php @@ -1,6 +1,6 @@ <?php /** @var array $_ */ - /** @var OC_L10N $l */ + /** @var \OCP\IL10N $l */ style('core', ['styles', 'header']); ?> diff --git a/core/templates/login.php b/core/templates/login.php index 36ed59e9309..46045f86b50 100644 --- a/core/templates/login.php +++ b/core/templates/login.php @@ -1,4 +1,4 @@ -<?php /** @var $l OC_L10N */ ?> +<?php /** @var $l \OCP\IL10N */ ?> <?php vendor_script('jsTimezoneDetect/jstz'); script('core', [ diff --git a/core/templates/twofactorshowchallenge.php b/core/templates/twofactorshowchallenge.php index 197de8a288e..20b92be9520 100644 --- a/core/templates/twofactorshowchallenge.php +++ b/core/templates/twofactorshowchallenge.php @@ -1,5 +1,5 @@ <?php -/** @var $l OC_L10N */ +/** @var $l \OCP\IL10N */ /** @var $_ array */ /* @var $error boolean */ $error = $_['error']; diff --git a/lib/l10n/it.js b/lib/l10n/it.js index 9d58b7a52ea..c1803d4ef2f 100644 --- a/lib/l10n/it.js +++ b/lib/l10n/it.js @@ -20,6 +20,7 @@ OC.L10N.register( "Server version %s or lower is required." : "È richiesta la versione %s o precedente.", "Unknown filetype" : "Tipo di file sconosciuto", "Invalid image" : "Immagine non valida", + "Avatar image is not square" : "L'immagine personale non è quadrata", "today" : "oggi", "yesterday" : "ieri", "_%n day ago_::_%n days ago_" : ["%d giorno fa","%n giorni fa"], @@ -115,6 +116,51 @@ OC.L10N.register( "Expiration date is in the past" : "La data di scadenza è nel passato", "Cannot set expiration date more than %s days in the future" : "Impossibile impostare la data di scadenza a più di %s giorni nel futuro", "Could not find category \"%s\"" : "Impossibile trovare la categoria \"%s\"", + "Sunday" : "Domenica", + "Monday" : "Lunedì", + "Tuesday" : "Martedì", + "Wednesday" : "Mercoledì", + "Thursday" : "Giovedì", + "Friday" : "Venerdì", + "Saturday" : "Sabato", + "Sun." : "Dom.", + "Mon." : "Lun.", + "Tue." : "Mar.", + "Wed." : "Mer.", + "Thu." : "Gio.", + "Fri." : "Ven.", + "Sat." : "Sab.", + "Su" : "Do", + "Mo" : "Lu", + "Tu" : "Ma", + "We" : "Me", + "Th" : "Gi", + "Fr" : "Ve", + "Sa" : "Sa", + "January" : "Gennaio", + "February" : "Febbraio", + "March" : "Marzo", + "April" : "Aprile", + "May" : "Maggio", + "June" : "Giugno", + "July" : "Luglio", + "August" : "Agosto", + "September" : "Settembre", + "October" : "Ottobre", + "November" : "Novembre", + "December" : "Dicembre", + "Jan." : "Gen.", + "Feb." : "Feb.", + "Mar." : "Mar.", + "Apr." : "Apr.", + "May." : "Mag.", + "Jun." : "Giu.", + "Jul." : "Lug.", + "Aug." : "Ago.", + "Sep." : "Set.", + "Oct." : "Ott.", + "Nov." : "Nov.", + "Dec." : "Dic.", "Apps" : "Applicazioni", "Only the following characters are allowed in a username: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"" : "Solo i seguenti caratteri sono consentiti in un nome utente: \"a-z\", \"A-Z\", \"0-9\", e \"_.@-'\"", "A valid username must be provided" : "Deve essere fornito un nome utente valido", @@ -173,6 +219,7 @@ OC.L10N.register( "Storage unauthorized. %s" : "Archiviazione non autorizzata. %s", "Storage incomplete configuration. %s" : "Configurazione dell'archiviazione incompleta.%s", "Storage connection error. %s" : "Errore di connessione all'archiviazione. %s", + "Storage is temporarily not available" : "L'archiviazione è temporaneamente non disponibile", "Storage connection timeout. %s" : "Timeout di connessione all'archiviazione. %s", "Microsoft Windows Platform is not supported" : "La piattaforma Microsoft Windows non è supportata", "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "L'esecuzione del server Nextcloud sulla piattaforma Microsoft Windows. Ti consigliamo di utilizzare un server Linux in una macchina virtuale.", diff --git a/lib/l10n/it.json b/lib/l10n/it.json index 9a72a8848f9..49745b22625 100644 --- a/lib/l10n/it.json +++ b/lib/l10n/it.json @@ -18,6 +18,7 @@ "Server version %s or lower is required." : "È richiesta la versione %s o precedente.", "Unknown filetype" : "Tipo di file sconosciuto", "Invalid image" : "Immagine non valida", + "Avatar image is not square" : "L'immagine personale non è quadrata", "today" : "oggi", "yesterday" : "ieri", "_%n day ago_::_%n days ago_" : ["%d giorno fa","%n giorni fa"], @@ -113,6 +114,51 @@ "Expiration date is in the past" : "La data di scadenza è nel passato", "Cannot set expiration date more than %s days in the future" : "Impossibile impostare la data di scadenza a più di %s giorni nel futuro", "Could not find category \"%s\"" : "Impossibile trovare la categoria \"%s\"", + "Sunday" : "Domenica", + "Monday" : "Lunedì", + "Tuesday" : "Martedì", + "Wednesday" : "Mercoledì", + "Thursday" : "Giovedì", + "Friday" : "Venerdì", + "Saturday" : "Sabato", + "Sun." : "Dom.", + "Mon." : "Lun.", + "Tue." : "Mar.", + "Wed." : "Mer.", + "Thu." : "Gio.", + "Fri." : "Ven.", + "Sat." : "Sab.", + "Su" : "Do", + "Mo" : "Lu", + "Tu" : "Ma", + "We" : "Me", + "Th" : "Gi", + "Fr" : "Ve", + "Sa" : "Sa", + "January" : "Gennaio", + "February" : "Febbraio", + "March" : "Marzo", + "April" : "Aprile", + "May" : "Maggio", + "June" : "Giugno", + "July" : "Luglio", + "August" : "Agosto", + "September" : "Settembre", + "October" : "Ottobre", + "November" : "Novembre", + "December" : "Dicembre", + "Jan." : "Gen.", + "Feb." : "Feb.", + "Mar." : "Mar.", + "Apr." : "Apr.", + "May." : "Mag.", + "Jun." : "Giu.", + "Jul." : "Lug.", + "Aug." : "Ago.", + "Sep." : "Set.", + "Oct." : "Ott.", + "Nov." : "Nov.", + "Dec." : "Dic.", "Apps" : "Applicazioni", "Only the following characters are allowed in a username: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"" : "Solo i seguenti caratteri sono consentiti in un nome utente: \"a-z\", \"A-Z\", \"0-9\", e \"_.@-'\"", "A valid username must be provided" : "Deve essere fornito un nome utente valido", @@ -171,6 +217,7 @@ "Storage unauthorized. %s" : "Archiviazione non autorizzata. %s", "Storage incomplete configuration. %s" : "Configurazione dell'archiviazione incompleta.%s", "Storage connection error. %s" : "Errore di connessione all'archiviazione. %s", + "Storage is temporarily not available" : "L'archiviazione è temporaneamente non disponibile", "Storage connection timeout. %s" : "Timeout di connessione all'archiviazione. %s", "Microsoft Windows Platform is not supported" : "La piattaforma Microsoft Windows non è supportata", "Running Nextcloud Server on the Microsoft Windows platform is not supported. We suggest you use a Linux server in a virtual machine if you have no option for migrating the server itself." : "L'esecuzione del server Nextcloud sulla piattaforma Microsoft Windows. Ti consigliamo di utilizzare un server Linux in una macchina virtuale.", diff --git a/lib/private/AppFramework/DependencyInjection/DIContainer.php b/lib/private/AppFramework/DependencyInjection/DIContainer.php index 671093ff08b..a1e845f132e 100644 --- a/lib/private/AppFramework/DependencyInjection/DIContainer.php +++ b/lib/private/AppFramework/DependencyInjection/DIContainer.php @@ -533,6 +533,9 @@ class DIContainer extends SimpleContainer implements IAppContainer { $this->query('OC\CapabilitiesManager')->registerCapability(function() use ($serviceName) { return $this->query($serviceName); }); + } + public function query($name) { + return parent::query($name); } } diff --git a/lib/private/Setup/AbstractDatabase.php b/lib/private/Setup/AbstractDatabase.php index 47c3e5ee1c6..2b9d7afb367 100644 --- a/lib/private/Setup/AbstractDatabase.php +++ b/lib/private/Setup/AbstractDatabase.php @@ -29,12 +29,13 @@ namespace OC\Setup; use OC\AllConfig; use OC\DB\ConnectionFactory; use OCP\IConfig; +use OCP\IL10N; use OCP\ILogger; use OCP\Security\ISecureRandom; abstract class AbstractDatabase { - /** @var \OC_L10N */ + /** @var IL10N */ protected $trans; /** @var string */ protected $dbDefinitionFile; @@ -57,7 +58,7 @@ abstract class AbstractDatabase { /** @var ISecureRandom */ protected $random; - public function __construct($trans, $dbDefinitionFile, IConfig $config, ILogger $logger, ISecureRandom $random) { + public function __construct(IL10N $trans, $dbDefinitionFile, IConfig $config, ILogger $logger, ISecureRandom $random) { $this->trans = $trans; $this->dbDefinitionFile = $dbDefinitionFile; $this->config = $config; diff --git a/lib/private/TemplateLayout.php b/lib/private/TemplateLayout.php index 9f89174e7f9..7878737bdef 100644 --- a/lib/private/TemplateLayout.php +++ b/lib/private/TemplateLayout.php @@ -127,7 +127,7 @@ class TemplateLayout extends \OC_Template { } // Send the language to our layouts - $this->assign('language', \OC_L10N::findLanguage()); + $this->assign('language', \OC::$server->getL10NFactory()->findLanguage()); if(\OC::$server->getSystemConfig()->getValue('installed', false)) { if (empty(self::$versionHash)) { diff --git a/lib/private/legacy/l10n.php b/lib/private/legacy/l10n.php deleted file mode 100644 index 94eff197ab6..00000000000 --- a/lib/private/legacy/l10n.php +++ /dev/null @@ -1,343 +0,0 @@ -<?php -/** - * @copyright Copyright (c) 2016, ownCloud, Inc. - * - * @author Bart Visscher <bartv@thisnet.nl> - * @author Bernhard Posselt <dev@bernhard-posselt.com> - * @author Jakob Sack <mail@jakobsack.de> - * @author Jan-Christoph Borchardt <hey@jancborchardt.net> - * @author Joas Schilling <coding@schilljs.com> - * @author Lukas Reschke <lukas@statuscode.ch> - * @author Morris Jobke <hey@morrisjobke.de> - * @author Robin Appelman <robin@icewind.nl> - * @author Robin McCorkell <robin@mccorkell.me.uk> - * @author Thomas Müller <thomas.mueller@tmit.eu> - * @author Thomas Tanghus <thomas@tanghus.net> - * - * @license AGPL-3.0 - * - * This code is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License, version 3, - * as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License, version 3, - * along with this program. If not, see <http://www.gnu.org/licenses/> - * - */ - -/** - * This class is for i18n and l10n - * @deprecated 9.0.0 Use \OC::$server->getL10NFactory()->get() instead - */ -class OC_L10N implements \OCP\IL10N { - /** - * cache - */ - protected static $cache = array(); - protected static $availableLanguages = array(); - - /** - * The best language - */ - protected static $language = ''; - - /** - * App of this object - */ - protected $app; - - /** - * Language of this object - */ - protected $lang; - - /** - * Translations - */ - private $translations = array(); - - /** - * Plural forms (string) - */ - private $pluralFormString = 'nplurals=2; plural=(n != 1);'; - - /** - * Plural forms (function) - */ - private $pluralFormFunction = null; - - /** - * The constructor - * @param string $app app requesting l10n - * @param string $lang default: null Language - * - * If language is not set, the constructor tries to find the right - * language. - * @deprecated 9.0.0 Use \OC::$server->getL10NFactory()->get() instead - */ - public function __construct($app, $lang = null) { - $app = \OC_App::cleanAppId($app); - $this->app = $app; - - if ($lang !== null) { - $lang = str_replace(array('\0', '/', '\\', '..'), '', $lang); - } - - // Find the right language - if ($app !== 'test' && !\OC::$server->getL10NFactory()->languageExists($app, $lang)) { - $lang = \OC::$server->getL10NFactory()->findLanguage($app); - } - - $this->lang = $lang; - } - - /** - * @param $transFile - * @return bool - */ - public function load($transFile) { - $this->app = true; - - $json = json_decode(file_get_contents($transFile), true); - if (!is_array($json)) { - $jsonError = json_last_error(); - \OC::$server->getLogger()->warning("Failed to load $transFile - json error code: $jsonError", ['app' => 'l10n']); - return false; - } - - $this->pluralFormString = $json['pluralForm']; - $translations = $json['translations']; - - $this->translations = array_merge($this->translations, $translations); - - return true; - } - - protected function init() { - if ($this->app === true) { - return; - } - $app = $this->app; - $lang = $this->lang; - $this->app = true; - - /** @var \OC\L10N\Factory $factory */ - $factory = \OC::$server->getL10NFactory(); - $languageFiles = $factory->getL10nFilesForApp($app, $lang); - - $this->translations = []; - foreach ($languageFiles as $languageFile) { - $this->load($languageFile); - } - } - - /** - * Translating - * @param string $text The text we need a translation for - * @param array $parameters default:array() Parameters for sprintf - * @return \OC_L10N_String Translation or the same text - * - * Returns the translation. If no translation is found, $text will be - * returned. - */ - public function t($text, $parameters = array()) { - return new OC_L10N_String($this, $text, $parameters); - } - - /** - * Translating - * @param string $text_singular the string to translate for exactly one object - * @param string $text_plural the string to translate for n objects - * @param integer $count Number of objects - * @param array $parameters default:array() Parameters for sprintf - * @return \OC_L10N_String Translation or the same text - * - * Returns the translation. If no translation is found, $text will be - * returned. %n will be replaced with the number of objects. - * - * The correct plural is determined by the plural_forms-function - * provided by the po file. - * - */ - public function n($text_singular, $text_plural, $count, $parameters = array()) { - $this->init(); - $identifier = "_${text_singular}_::_${text_plural}_"; - if( array_key_exists($identifier, $this->translations)) { - return new OC_L10N_String( $this, $identifier, $parameters, $count ); - }else{ - if($count === 1) { - return new OC_L10N_String($this, $text_singular, $parameters, $count); - }else{ - return new OC_L10N_String($this, $text_plural, $parameters, $count); - } - } - } - - /** - * getTranslations - * @return array Fetch all translations - * - * Returns an associative array with all translations - */ - public function getTranslations() { - $this->init(); - return $this->translations; - } - - /** - * getPluralFormFunction - * @return string the plural form function - * - * returned function accepts the argument $n - */ - public function getPluralFormFunction() { - $this->init(); - if (is_null($this->pluralFormFunction)) { - $this->pluralFormFunction = \OC::$server->getL10NFactory()->createPluralFunction($this->pluralFormString); - } - return $this->pluralFormFunction; - } - - /** - * Localization - * @param string $type Type of localization - * @param array|int|string $data parameters for this localization - * @param array $options - * @return string|false - * - * Returns the localized data. - * - * Implemented types: - * - date - * - Creates a date - * - params: timestamp (int/string) - * - datetime - * - Creates date and time - * - params: timestamp (int/string) - * - time - * - Creates a time - * - params: timestamp (int/string) - * - firstday: Returns the first day of the week (0 sunday - 6 saturday) - * - jsdate: Returns the short JS date format - */ - public function l($type, $data, $options = array()) { - if ($type === 'firstday') { - return $this->getFirstWeekDay(); - } - if ($type === 'jsdate') { - return $this->getDateFormat(); - } - - $this->init(); - $value = new DateTime(); - if($data instanceof DateTime) { - $value = $data; - } elseif(is_string($data) && !is_numeric($data)) { - $data = strtotime($data); - $value->setTimestamp($data); - } else { - $value->setTimestamp($data); - } - - // Use the language of the instance - $locale = $this->transformToCLDRLocale($this->getLanguageCode()); - - $options = array_merge(array('width' => 'long'), $options); - $width = $options['width']; - switch($type) { - case 'date': - return Punic\Calendar::formatDate($value, $width, $locale); - case 'datetime': - return Punic\Calendar::formatDatetime($value, $width, $locale); - case 'time': - return Punic\Calendar::formatTime($value, $width, $locale); - default: - return false; - } - } - - /** - * The code (en, de, ...) of the language that is used for this OC_L10N object - * - * @return string language - */ - public function getLanguageCode() { - return $this->lang; - } - - /** - * @return string - * @throws \Punic\Exception\ValueNotInList - * @deprecated 9.0.0 Use $this->l('jsdate', null) instead - */ - public function getDateFormat() { - $locale = $this->transformToCLDRLocale($this->getLanguageCode()); - return Punic\Calendar::getDateFormat('short', $locale); - } - - /** - * @return int - * @deprecated 9.0.0 Use $this->l('firstday', null) instead - */ - public function getFirstWeekDay() { - $locale = $this->transformToCLDRLocale($this->getLanguageCode()); - return Punic\Calendar::getFirstWeekday($locale); - } - - /** - * @param string $locale - * @return string - */ - private function transformToCLDRLocale($locale) { - if ($locale === 'sr@latin') { - return 'sr_latn'; - } - - return $locale; - } - - /** - * find the best language - * @param string $app - * @return string language - * - * If nothing works it returns 'en' - * @deprecated 9.0.0 Use \OC::$server->getL10NFactory()->findLanguage() instead - */ - public static function findLanguage($app = null) { - return \OC::$server->getL10NFactory()->findLanguage($app); - } - - /** - * @return string - * @deprecated 9.0.0 Use \OC::$server->getL10NFactory()->setLanguageFromRequest() instead - */ - public static function setLanguageFromRequest() { - return \OC::$server->getL10NFactory()->setLanguageFromRequest(); - } - - /** - * find all available languages for an app - * @param string $app App that needs to be translated - * @return array an array of available languages - * @deprecated 9.0.0 Use \OC::$server->getL10NFactory()->findAvailableLanguages() instead - */ - public static function findAvailableLanguages($app=null) { - return \OC::$server->getL10NFactory()->findAvailableLanguages($app); - } - - /** - * @param string $app - * @param string $lang - * @return bool - * @deprecated 9.0.0 Use \OC::$server->getL10NFactory()->languageExists() instead - */ - public static function languageExists($app, $lang) { - return \OC::$server->getL10NFactory()->languageExists($app, $lang); - } -} diff --git a/lib/private/legacy/l10n/string.php b/lib/private/legacy/l10n/string.php index 3d9d72e0690..1410db6d730 100644 --- a/lib/private/legacy/l10n/string.php +++ b/lib/private/legacy/l10n/string.php @@ -27,7 +27,7 @@ */ class OC_L10N_String implements JsonSerializable { - /** @var \OC_L10N|\OC\L10N\L10N */ + /** @var \OC\L10N\L10N */ protected $l10n; /** @var string */ @@ -40,12 +40,12 @@ class OC_L10N_String implements JsonSerializable { protected $count; /** - * @param \OC_L10N|\OC\L10N\L10N $l10n + * @param \OC\L10N\L10N $l10n * @param string|string[] $text * @param array $parameters * @param int $count */ - public function __construct($l10n, $text, $parameters, $count = 1) { + public function __construct(\OC\L10N\L10N $l10n, $text, $parameters, $count = 1) { $this->l10n = $l10n; $this->text = $text; $this->parameters = $parameters; diff --git a/lib/private/legacy/util.php b/lib/private/legacy/util.php index 42fd0ba7db3..e4c2caeafd7 100644 --- a/lib/private/legacy/util.php +++ b/lib/private/legacy/util.php @@ -526,7 +526,7 @@ class OC_Util { */ public static function addTranslations($application, $languageCode = null, $prepend = false) { if (is_null($languageCode)) { - $languageCode = \OC_L10N::findLanguage($application); + $languageCode = \OC::$server->getL10NFactory()->findLanguage($application); } if (!empty($application)) { $path = "$application/l10n/$languageCode"; diff --git a/lib/public/Util.php b/lib/public/Util.php index d5b0752553d..08661fd88ca 100644 --- a/lib/public/Util.php +++ b/lib/public/Util.php @@ -195,7 +195,7 @@ class Util { * get l10n object * @param string $application * @param string|null $language - * @return \OC_L10N + * @return \OCP\IL10N * @since 6.0.0 - parameter $language was added in 8.0.0 */ public static function getL10N($application, $language = null) { diff --git a/settings/l10n/it.js b/settings/l10n/it.js index 06bce9491d5..8dd34089037 100644 --- a/settings/l10n/it.js +++ b/settings/l10n/it.js @@ -131,6 +131,8 @@ OC.L10N.register( "Login" : "Accesso", "Plain" : "Semplice", "NT LAN Manager" : "Gestore NT LAN", + "SSL/TLS" : "SSL/TLS", + "STARTTLS" : "STARTTLS", "Email server" : "Server di posta", "Open documentation" : "Apri la documentazione", "This is used for sending out notifications." : "Viene utilizzato per inviare le notifiche.", @@ -217,6 +219,8 @@ OC.L10N.register( "Show disclaimer text on the public link upload page. (Only shown when the file list is hidden.)" : "Mostra il testo di liberatoria sulla pagina di caricamento del collegamento pubblico. (Mostrato solo quando l'elenco dei file nascosto)", "This text will be shown on the public link upload page when the file list is hidden." : "Questo testo sarà mostrato sulla pagina di caricamento del collegamento pubblico quando l'elenco dei file è nascosto.", "Tips & tricks" : "Suggerimenti e trucchi", + "SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite è utilizzato attualmente come database. Per installazioni più grandi consigliamo di passare a un motore di database diverso.", + "This is particularly recommended when using the desktop client for file synchronisation." : "Consigliato particolarmente quando si utilizza il client desktop per la sincronizzazione dei file.", "To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Per migrare a un altro database, usa lo strumento da riga di comando: 'occ db:convert-type', o leggi la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentazione ↗</a>.", "How to do backups" : "Come creare delle copie di sicurezza", "Advanced monitoring" : "Monitoraggio avanzato", @@ -311,6 +315,7 @@ OC.L10N.register( "Create" : "Crea", "Admin Recovery Password" : "Password di ripristino amministrativa", "Enter the recovery password in order to recover the users files during password change" : "Digita la password di ripristino per recuperare i file degli utenti durante la modifica della password.", + "Group name" : "Nome del gruppo", "Everyone" : "Chiunque", "Admins" : "Amministratori", "Default quota" : "Quota predefinita", diff --git a/settings/l10n/it.json b/settings/l10n/it.json index 11c8b3f1793..f597d064770 100644 --- a/settings/l10n/it.json +++ b/settings/l10n/it.json @@ -129,6 +129,8 @@ "Login" : "Accesso", "Plain" : "Semplice", "NT LAN Manager" : "Gestore NT LAN", + "SSL/TLS" : "SSL/TLS", + "STARTTLS" : "STARTTLS", "Email server" : "Server di posta", "Open documentation" : "Apri la documentazione", "This is used for sending out notifications." : "Viene utilizzato per inviare le notifiche.", @@ -215,6 +217,8 @@ "Show disclaimer text on the public link upload page. (Only shown when the file list is hidden.)" : "Mostra il testo di liberatoria sulla pagina di caricamento del collegamento pubblico. (Mostrato solo quando l'elenco dei file nascosto)", "This text will be shown on the public link upload page when the file list is hidden." : "Questo testo sarà mostrato sulla pagina di caricamento del collegamento pubblico quando l'elenco dei file è nascosto.", "Tips & tricks" : "Suggerimenti e trucchi", + "SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite è utilizzato attualmente come database. Per installazioni più grandi consigliamo di passare a un motore di database diverso.", + "This is particularly recommended when using the desktop client for file synchronisation." : "Consigliato particolarmente quando si utilizza il client desktop per la sincronizzazione dei file.", "To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Per migrare a un altro database, usa lo strumento da riga di comando: 'occ db:convert-type', o leggi la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentazione ↗</a>.", "How to do backups" : "Come creare delle copie di sicurezza", "Advanced monitoring" : "Monitoraggio avanzato", @@ -309,6 +313,7 @@ "Create" : "Crea", "Admin Recovery Password" : "Password di ripristino amministrativa", "Enter the recovery password in order to recover the users files during password change" : "Digita la password di ripristino per recuperare i file degli utenti durante la modifica della password.", + "Group name" : "Nome del gruppo", "Everyone" : "Chiunque", "Admins" : "Amministratori", "Default quota" : "Quota predefinita", diff --git a/settings/l10n/pl.js b/settings/l10n/pl.js index f4ccceada2e..b5c7b3cb342 100644 --- a/settings/l10n/pl.js +++ b/settings/l10n/pl.js @@ -161,6 +161,8 @@ OC.L10N.register( "This means that there might be problems with certain characters in file names." : "Oznacza to, że mogą być problemy z niektórymi znakami w nazwach plików.", "We strongly suggest installing the required packages on your system to support one of the following locales: %s." : "Zalecamy instalację na Twoim systemie komponentów wymaganych do obsługi języków: %s", "Cron" : "Cron", + "Last cron job execution: %s." : "Ostatnie wykonanie zadania przez cron: %s.", + "Last cron job execution: %s. Something seems wrong." : "Ostatnie wykonanie zadania przez cron: %s. Wydaje się być błędny.", "Cron was not executed yet!" : "Cron nie został jeszcze uruchomiony!", "Execute one task with each page loaded" : "Wykonuj jedno zadanie wraz z każdą wczytaną stroną", "cron.php is registered at a webcron service to call cron.php every 15 minutes over http." : "cron.php jest zarejestrowany w serwisie webcron do uruchamiania cron.php raz na 15 minut przez http.", diff --git a/settings/l10n/pl.json b/settings/l10n/pl.json index 74ddf97735b..b399629d8db 100644 --- a/settings/l10n/pl.json +++ b/settings/l10n/pl.json @@ -159,6 +159,8 @@ "This means that there might be problems with certain characters in file names." : "Oznacza to, że mogą być problemy z niektórymi znakami w nazwach plików.", "We strongly suggest installing the required packages on your system to support one of the following locales: %s." : "Zalecamy instalację na Twoim systemie komponentów wymaganych do obsługi języków: %s", "Cron" : "Cron", + "Last cron job execution: %s." : "Ostatnie wykonanie zadania przez cron: %s.", + "Last cron job execution: %s. Something seems wrong." : "Ostatnie wykonanie zadania przez cron: %s. Wydaje się być błędny.", "Cron was not executed yet!" : "Cron nie został jeszcze uruchomiony!", "Execute one task with each page loaded" : "Wykonuj jedno zadanie wraz z każdą wczytaną stroną", "cron.php is registered at a webcron service to call cron.php every 15 minutes over http." : "cron.php jest zarejestrowany w serwisie webcron do uruchamiania cron.php raz na 15 minut przez http.", diff --git a/settings/personal.php b/settings/personal.php index a0d08aa0bd5..01c358de3ae 100644 --- a/settings/personal.php +++ b/settings/personal.php @@ -68,7 +68,7 @@ $storageInfo=OC_Helper::getStorageInfo('/'); $user = OC::$server->getUserManager()->get(OC_User::getUser()); $email = $user->getEMailAddress(); -$userLang=$config->getUserValue( OC_User::getUser(), 'core', 'lang', OC_L10N::findLanguage() ); +$userLang=$config->getUserValue( OC_User::getUser(), 'core', 'lang', \OC::$server->getL10NFactory()->findLanguage() ); $languageCodes = \OC::$server->getL10NFactory()->findAvailableLanguages(); // array of common languages diff --git a/tests/lib/DateTimeFormatterTest.php b/tests/lib/DateTimeFormatterTest.php index 0d185128e27..85884c9bfb4 100644 --- a/tests/lib/DateTimeFormatterTest.php +++ b/tests/lib/DateTimeFormatterTest.php @@ -34,7 +34,7 @@ class DateTimeFormatterTest extends TestCase { protected function setUp() { parent::setUp(); - $this->formatter = new \OC\DateTimeFormatter(new \DateTimeZone('UTC'), new \OC_L10N('lib', 'en')); + $this->formatter = new \OC\DateTimeFormatter(new \DateTimeZone('UTC'), \OC::$server->getL10N('lib', 'en')); } protected function getTimestampAgo($time, $seconds = 0, $minutes = 0, $hours = 0, $days = 0, $years = 0) { @@ -43,7 +43,7 @@ class DateTimeFormatterTest extends TestCase { public function formatTimeSpanData() { $time = 1416916800; // Use a fixed timestamp so we don't switch days/years with the getTimestampAgo - $deL10N = new \OC_L10N('lib', 'de'); + $deL10N = \OC::$server->getL10N('lib', 'de'); return array( array('seconds ago', $time, $time), array('1 minute ago', $this->getTimestampAgo($time, 30, 1), $time), @@ -81,7 +81,7 @@ class DateTimeFormatterTest extends TestCase { public function formatDateSpanData() { $time = 1416916800; // Use a fixed timestamp so we don't switch days/years with the getTimestampAgo - $deL10N = new \OC_L10N('lib', 'de'); + $deL10N = \OC::$server->getL10N('lib', 'de'); return array( // Normal testing array('today', $this->getTimestampAgo($time, 30, 15), $time), diff --git a/tests/lib/L10N/L10nLegacyTest.php b/tests/lib/L10N/L10nLegacyTest.php deleted file mode 100644 index 71b4e21f1a1..00000000000 --- a/tests/lib/L10N/L10nLegacyTest.php +++ /dev/null @@ -1,139 +0,0 @@ -<?php -/** - * Copyright (c) 2013 Thomas Müller <thomas.mueller@tmit.eu> - * This file is licensed under the Affero General Public License version 3 or - * later. - * See the COPYING-README file. - */ - -namespace Test\L10N; - - -use OC_L10N; -use DateTime; - -/** - * Class Test_L10n - */ -class L10nLegacyTest extends \Test\TestCase { - - public function testGermanPluralTranslations() { - $l = new OC_L10N('test'); - $transFile = \OC::$SERVERROOT.'/tests/data/l10n/de.json'; - - $l->load($transFile); - $this->assertEquals('1 Datei', (string)$l->n('%n file', '%n files', 1)); - $this->assertEquals('2 Dateien', (string)$l->n('%n file', '%n files', 2)); - } - - public function testRussianPluralTranslations() { - $l = new OC_L10N('test'); - $transFile = \OC::$SERVERROOT.'/tests/data/l10n/ru.json'; - - $l->load($transFile); - $this->assertEquals('1 файл', (string)$l->n('%n file', '%n files', 1)); - $this->assertEquals('2 файла', (string)$l->n('%n file', '%n files', 2)); - $this->assertEquals('6 файлов', (string)$l->n('%n file', '%n files', 6)); - $this->assertEquals('21 файл', (string)$l->n('%n file', '%n files', 21)); - $this->assertEquals('22 файла', (string)$l->n('%n file', '%n files', 22)); - $this->assertEquals('26 файлов', (string)$l->n('%n file', '%n files', 26)); - - /* - 1 file 1 файл 1 папка - 2-4 files 2-4 файла 2-4 папки - 5-20 files 5-20 файлов 5-20 папок - 21 files 21 файл 21 папка - 22-24 files 22-24 файла 22-24 папки - 25-30 files 25-30 файлов 25-30 папок - etc - 100 files 100 файлов, 100 папок - 1000 files 1000 файлов 1000 папок - */ - } - - public function testCzechPluralTranslations() { - $l = new OC_L10N('test'); - $transFile = \OC::$SERVERROOT.'/tests/data/l10n/cs.json'; - - $l->load($transFile); - $this->assertEquals('1 okno', (string)$l->n('%n window', '%n windows', 1)); - $this->assertEquals('2 okna', (string)$l->n('%n window', '%n windows', 2)); - $this->assertEquals('5 oken', (string)$l->n('%n window', '%n windows', 5)); - } - - public function localizationDataProvider() { - return array( - // timestamp as string - array('February 13, 2009 at 11:31:30 PM GMT+0', 'en', 'datetime', '1234567890'), - array('13. Februar 2009 um 23:31:30 GMT+0', 'de', 'datetime', '1234567890'), - array('February 13, 2009', 'en', 'date', '1234567890'), - array('13. Februar 2009', 'de', 'date', '1234567890'), - array('11:31:30 PM GMT+0', 'en', 'time', '1234567890'), - array('23:31:30 GMT+0', 'de', 'time', '1234567890'), - - // timestamp as int - array('February 13, 2009 at 11:31:30 PM GMT+0', 'en', 'datetime', 1234567890), - array('13. Februar 2009 um 23:31:30 GMT+0', 'de', 'datetime', 1234567890), - array('February 13, 2009', 'en', 'date', 1234567890), - array('13. Februar 2009', 'de', 'date', 1234567890), - array('11:31:30 PM GMT+0', 'en', 'time', 1234567890), - array('23:31:30 GMT+0', 'de', 'time', 1234567890), - - // DateTime object - array('February 13, 2009 at 11:31:30 PM GMT+0', 'en', 'datetime', new DateTime('@1234567890')), - array('13. Februar 2009 um 23:31:30 GMT+0', 'de', 'datetime', new DateTime('@1234567890')), - array('February 13, 2009', 'en', 'date', new DateTime('@1234567890')), - array('13. Februar 2009', 'de', 'date', new DateTime('@1234567890')), - array('11:31:30 PM GMT+0', 'en', 'time', new DateTime('@1234567890')), - array('23:31:30 GMT+0', 'de', 'time', new DateTime('@1234567890')), - - // en_GB - array('13 February 2009 at 23:31:30 GMT+0', 'en_GB', 'datetime', new DateTime('@1234567890')), - array('13 February 2009', 'en_GB', 'date', new DateTime('@1234567890')), - array('23:31:30 GMT+0', 'en_GB', 'time', new DateTime('@1234567890')), - array('13 February 2009 at 23:31:30 GMT+0', 'en-GB', 'datetime', new DateTime('@1234567890')), - array('13 February 2009', 'en-GB', 'date', new DateTime('@1234567890')), - array('23:31:30 GMT+0', 'en-GB', 'time', new DateTime('@1234567890')), - ); - } - - /** - * @dataProvider localizationDataProvider - */ - public function testNumericStringLocalization($expectedDate, $lang, $type, $value) { - $l = new OC_L10N('test', $lang); - $this->assertSame($expectedDate, $l->l($type, $value)); - } - - public function firstDayDataProvider() { - return array( - array(1, 'de'), - array(0, 'en'), - ); - } - - /** - * @dataProvider firstDayDataProvider - * @param $expected - * @param $lang - */ - public function testFirstWeekDay($expected, $lang) { - $l = new OC_L10N('test', $lang); - $this->assertSame($expected, $l->l('firstday', 'firstday')); - } - - public function testFactoryGetLanguageCode() { - $factory = new \OC\L10N\Factory( - $this->getMockBuilder('OCP\IConfig')->getMock(), - $this->getMockBuilder('OCP\IRequest')->getMock(), - $this->getMockBuilder('OCP\IUserSession')->getMock(), - \OC::$SERVERROOT); - $l = $factory->get('lib', 'de'); - $this->assertEquals('de', $l->getLanguageCode()); - } - - public function testServiceGetLanguageCode() { - $l = \OC::$server->getL10N('lib', 'de'); - $this->assertEquals('de', $l->getLanguageCode()); - } -} diff --git a/tests/lib/UtilTest.php b/tests/lib/UtilTest.php index a1671191ab8..60e50f750ea 100644 --- a/tests/lib/UtilTest.php +++ b/tests/lib/UtilTest.php @@ -91,7 +91,7 @@ class UtilTest extends \Test\TestCase { $selectedTimeZone = \OC::$server->getDateTimeZone()->getTimeZone(1350129205); $this->assertEquals($expectedTimeZone, $selectedTimeZone->getName()); - $newDateTimeFormatter = new \OC\DateTimeFormatter($selectedTimeZone, new \OC_L10N('lib', 'en')); + $newDateTimeFormatter = new \OC\DateTimeFormatter($selectedTimeZone, \OC::$server->getL10N('lib', 'en')); $this->overwriteService('DateTimeFormatter', $newDateTimeFormatter); $result = OC_Util::formatDate(1350129205, false); |