diff options
Diffstat (limited to 'apps/oauth2')
144 files changed, 530 insertions, 478 deletions
diff --git a/apps/oauth2/appinfo/info.xml b/apps/oauth2/appinfo/info.xml index 5e4994fafa8..6ab30292ab0 100644 --- a/apps/oauth2/appinfo/info.xml +++ b/apps/oauth2/appinfo/info.xml @@ -33,6 +33,10 @@ </post-migration> </repair-steps> + <commands> + <command>OCA\OAuth2\Command\ImportLegacyOcClient</command> + </commands> + <settings> <admin>OCA\OAuth2\Settings\Admin</admin> </settings> diff --git a/apps/oauth2/appinfo/routes.php b/apps/oauth2/appinfo/routes.php index f40eaf96406..b34aff05552 100644 --- a/apps/oauth2/appinfo/routes.php +++ b/apps/oauth2/appinfo/routes.php @@ -1,4 +1,5 @@ <?php + /** * SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later diff --git a/apps/oauth2/composer/composer/autoload_classmap.php b/apps/oauth2/composer/composer/autoload_classmap.php index cba0ef43dfc..f5fc5bfe251 100644 --- a/apps/oauth2/composer/composer/autoload_classmap.php +++ b/apps/oauth2/composer/composer/autoload_classmap.php @@ -8,6 +8,7 @@ $baseDir = $vendorDir; return array( 'Composer\\InstalledVersions' => $vendorDir . '/composer/InstalledVersions.php', 'OCA\\OAuth2\\BackgroundJob\\CleanupExpiredAuthorizationCode' => $baseDir . '/../lib/BackgroundJob/CleanupExpiredAuthorizationCode.php', + 'OCA\\OAuth2\\Command\\ImportLegacyOcClient' => $baseDir . '/../lib/Command/ImportLegacyOcClient.php', 'OCA\\OAuth2\\Controller\\LoginRedirectorController' => $baseDir . '/../lib/Controller/LoginRedirectorController.php', 'OCA\\OAuth2\\Controller\\OauthApiController' => $baseDir . '/../lib/Controller/OauthApiController.php', 'OCA\\OAuth2\\Controller\\SettingsController' => $baseDir . '/../lib/Controller/SettingsController.php', diff --git a/apps/oauth2/composer/composer/autoload_static.php b/apps/oauth2/composer/composer/autoload_static.php index c4905bc96c4..c4843fa1990 100644 --- a/apps/oauth2/composer/composer/autoload_static.php +++ b/apps/oauth2/composer/composer/autoload_static.php @@ -23,6 +23,7 @@ class ComposerStaticInitOAuth2 public static $classMap = array ( 'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php', 'OCA\\OAuth2\\BackgroundJob\\CleanupExpiredAuthorizationCode' => __DIR__ . '/..' . '/../lib/BackgroundJob/CleanupExpiredAuthorizationCode.php', + 'OCA\\OAuth2\\Command\\ImportLegacyOcClient' => __DIR__ . '/..' . '/../lib/Command/ImportLegacyOcClient.php', 'OCA\\OAuth2\\Controller\\LoginRedirectorController' => __DIR__ . '/..' . '/../lib/Controller/LoginRedirectorController.php', 'OCA\\OAuth2\\Controller\\OauthApiController' => __DIR__ . '/..' . '/../lib/Controller/OauthApiController.php', 'OCA\\OAuth2\\Controller\\SettingsController' => __DIR__ . '/..' . '/../lib/Controller/SettingsController.php', diff --git a/apps/oauth2/l10n/af.js b/apps/oauth2/l10n/af.js deleted file mode 100644 index dbc8eeb71d3..00000000000 --- a/apps/oauth2/l10n/af.js +++ /dev/null @@ -1,13 +0,0 @@ -OC.L10N.register( - "oauth2", - { - "OAuth 2.0" : "OAuth 2.0", - "OAuth 2.0 clients" : "OAuth 2.0-kliënte", - "Name" : "Naam", - "Redirection URI" : "Herverwysings-URI", - "Client Identifier" : "Kliëntidentifiseerder", - "Add client" : "Voeg kliënt toe", - "Add" : "Voeg toe", - "Delete" : "Skrap" -}, -"nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/af.json b/apps/oauth2/l10n/af.json deleted file mode 100644 index 9f8e49b2d5a..00000000000 --- a/apps/oauth2/l10n/af.json +++ /dev/null @@ -1,11 +0,0 @@ -{ "translations": { - "OAuth 2.0" : "OAuth 2.0", - "OAuth 2.0 clients" : "OAuth 2.0-kliënte", - "Name" : "Naam", - "Redirection URI" : "Herverwysings-URI", - "Client Identifier" : "Kliëntidentifiseerder", - "Add client" : "Voeg kliënt toe", - "Add" : "Voeg toe", - "Delete" : "Skrap" -},"pluralForm" :"nplurals=2; plural=(n != 1);" -}
\ No newline at end of file diff --git a/apps/oauth2/l10n/ar.js b/apps/oauth2/l10n/ar.js index 7a08f7884cd..0ccccefa3b1 100644 --- a/apps/oauth2/l10n/ar.js +++ b/apps/oauth2/l10n/ar.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "تأكد من تخزين المفتاح السري، إذ أنه لا يمكن استعادته.", "Add client" : "إضافة عميل", "Add" : "إضافة", - "Delete" : "حذف", "Show client secret" : "عرض كلمة سر العميل", - "Hide client secret" : "إخْفِ سِرَّ العميل" + "Hide client secret" : "إخْفِ سِرَّ العميل", + "Delete" : "حذف" }, "nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"); diff --git a/apps/oauth2/l10n/ar.json b/apps/oauth2/l10n/ar.json index 3f651abfcbe..a7ea13b979f 100644 --- a/apps/oauth2/l10n/ar.json +++ b/apps/oauth2/l10n/ar.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "تأكد من تخزين المفتاح السري، إذ أنه لا يمكن استعادته.", "Add client" : "إضافة عميل", "Add" : "إضافة", - "Delete" : "حذف", "Show client secret" : "عرض كلمة سر العميل", - "Hide client secret" : "إخْفِ سِرَّ العميل" + "Hide client secret" : "إخْفِ سِرَّ العميل", + "Delete" : "حذف" },"pluralForm" :"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/ast.js b/apps/oauth2/l10n/ast.js index 7d241af66db..5a71f29b226 100644 --- a/apps/oauth2/l10n/ast.js +++ b/apps/oauth2/l10n/ast.js @@ -15,8 +15,8 @@ OC.L10N.register( "Delete client" : "Desaniciar el veceru", "Add client" : "Amestar el veceru", "Add" : "Amestar", - "Delete" : "Desaniciar", "Show client secret" : "Amosar el secretu del veceru", - "Hide client secret" : "Anubrir el secretu del veceru" + "Hide client secret" : "Anubrir el secretu del veceru", + "Delete" : "Desaniciar" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/ast.json b/apps/oauth2/l10n/ast.json index 728feb5e9a1..07995fc9268 100644 --- a/apps/oauth2/l10n/ast.json +++ b/apps/oauth2/l10n/ast.json @@ -13,8 +13,8 @@ "Delete client" : "Desaniciar el veceru", "Add client" : "Amestar el veceru", "Add" : "Amestar", - "Delete" : "Desaniciar", "Show client secret" : "Amosar el secretu del veceru", - "Hide client secret" : "Anubrir el secretu del veceru" + "Hide client secret" : "Anubrir el secretu del veceru", + "Delete" : "Desaniciar" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/bg.js b/apps/oauth2/l10n/bg.js index 4d648eb30f5..c5bdfa109f5 100644 --- a/apps/oauth2/l10n/bg.js +++ b/apps/oauth2/l10n/bg.js @@ -14,7 +14,7 @@ OC.L10N.register( "Secret key" : "Секретен ключ", "Add client" : "Добавяне на клиент", "Add" : "Добавяне", - "Delete" : "Изтриване", - "Show client secret" : "Покажете тайната на клиента" + "Show client secret" : "Покажете тайната на клиента", + "Delete" : "Изтриване" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/bg.json b/apps/oauth2/l10n/bg.json index 5964af71ff6..5a11b54b85b 100644 --- a/apps/oauth2/l10n/bg.json +++ b/apps/oauth2/l10n/bg.json @@ -12,7 +12,7 @@ "Secret key" : "Секретен ключ", "Add client" : "Добавяне на клиент", "Add" : "Добавяне", - "Delete" : "Изтриване", - "Show client secret" : "Покажете тайната на клиента" + "Show client secret" : "Покажете тайната на клиента", + "Delete" : "Изтриване" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/br.js b/apps/oauth2/l10n/br.js index 2670c791eab..d04244a3353 100644 --- a/apps/oauth2/l10n/br.js +++ b/apps/oauth2/l10n/br.js @@ -14,7 +14,7 @@ OC.L10N.register( "Secret key" : "Alc'hwez sekred", "Add client" : "Ouzhoennañ kliant", "Add" : "Ouzhpennañ", - "Delete" : "Dilemel", - "Show client secret" : "Diskouez sekret ar kliant" + "Show client secret" : "Diskouez sekret ar kliant", + "Delete" : "Dilemel" }, "nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"); diff --git a/apps/oauth2/l10n/br.json b/apps/oauth2/l10n/br.json index a1a5b2a3a4a..f55e5b3f1ac 100644 --- a/apps/oauth2/l10n/br.json +++ b/apps/oauth2/l10n/br.json @@ -12,7 +12,7 @@ "Secret key" : "Alc'hwez sekred", "Add client" : "Ouzhoennañ kliant", "Add" : "Ouzhpennañ", - "Delete" : "Dilemel", - "Show client secret" : "Diskouez sekret ar kliant" + "Show client secret" : "Diskouez sekret ar kliant", + "Delete" : "Dilemel" },"pluralForm" :"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/ca.js b/apps/oauth2/l10n/ca.js index 3f378b9483b..cb74993c9fd 100644 --- a/apps/oauth2/l10n/ca.js +++ b/apps/oauth2/l10n/ca.js @@ -13,10 +13,11 @@ OC.L10N.register( "Client Identifier" : "Identificador del client", "Secret key" : "Clau secreta", "Delete client" : "Suprimeix el client", + "Make sure you store the secret key, it cannot be recovered." : "Assegureu-vos d'emmagatzemar la clau secreta, no es pot recuperar.", "Add client" : "Afegeix un client", "Add" : "Afegeix", - "Delete" : "Suprimeix", "Show client secret" : "Mostra el secret del client", - "Hide client secret" : "Amaga el secret del client" + "Hide client secret" : "Amaga el secret del client", + "Delete" : "Suprimeix" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/ca.json b/apps/oauth2/l10n/ca.json index d2382cec430..3a064e3639e 100644 --- a/apps/oauth2/l10n/ca.json +++ b/apps/oauth2/l10n/ca.json @@ -11,10 +11,11 @@ "Client Identifier" : "Identificador del client", "Secret key" : "Clau secreta", "Delete client" : "Suprimeix el client", + "Make sure you store the secret key, it cannot be recovered." : "Assegureu-vos d'emmagatzemar la clau secreta, no es pot recuperar.", "Add client" : "Afegeix un client", "Add" : "Afegeix", - "Delete" : "Suprimeix", "Show client secret" : "Mostra el secret del client", - "Hide client secret" : "Amaga el secret del client" + "Hide client secret" : "Amaga el secret del client", + "Delete" : "Suprimeix" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/cs.js b/apps/oauth2/l10n/cs.js index b41ad4ee235..008e1627780 100644 --- a/apps/oauth2/l10n/cs.js +++ b/apps/oauth2/l10n/cs.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Nezapomeňte si uložit tajný klíč – není možné ho obnovit.", "Add client" : "Přidat klienta", "Add" : "Přidat", - "Delete" : "Smazat", "Show client secret" : "Zobrazit klientské tajemství", - "Hide client secret" : "Skrýt tajemství klienta" + "Hide client secret" : "Skrýt tajemství klienta", + "Delete" : "Smazat" }, "nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"); diff --git a/apps/oauth2/l10n/cs.json b/apps/oauth2/l10n/cs.json index 008787a98f8..75f5586ca80 100644 --- a/apps/oauth2/l10n/cs.json +++ b/apps/oauth2/l10n/cs.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Nezapomeňte si uložit tajný klíč – není možné ho obnovit.", "Add client" : "Přidat klienta", "Add" : "Přidat", - "Delete" : "Smazat", "Show client secret" : "Zobrazit klientské tajemství", - "Hide client secret" : "Skrýt tajemství klienta" + "Hide client secret" : "Skrýt tajemství klienta", + "Delete" : "Smazat" },"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/da.js b/apps/oauth2/l10n/da.js index 3e8a9aff18c..981fd99ab1c 100644 --- a/apps/oauth2/l10n/da.js +++ b/apps/oauth2/l10n/da.js @@ -13,10 +13,11 @@ OC.L10N.register( "Client Identifier" : "Klient ID", "Secret key" : "Hemmelig nøgle", "Delete client" : "Slet klient", + "Make sure you store the secret key, it cannot be recovered." : "Sørg for at gemme den hemmelige nøgle, den kan ikke gendannes.", "Add client" : "Tilføj klient", "Add" : "Tilføj", - "Delete" : "Slet", "Show client secret" : "Vis klient hemmelighed", - "Hide client secret" : "Skjul klient hemmelighed" + "Hide client secret" : "Skjul klient hemmelighed", + "Delete" : "Slet" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/da.json b/apps/oauth2/l10n/da.json index 98d04156dad..289737290fe 100644 --- a/apps/oauth2/l10n/da.json +++ b/apps/oauth2/l10n/da.json @@ -11,10 +11,11 @@ "Client Identifier" : "Klient ID", "Secret key" : "Hemmelig nøgle", "Delete client" : "Slet klient", + "Make sure you store the secret key, it cannot be recovered." : "Sørg for at gemme den hemmelige nøgle, den kan ikke gendannes.", "Add client" : "Tilføj klient", "Add" : "Tilføj", - "Delete" : "Slet", "Show client secret" : "Vis klient hemmelighed", - "Hide client secret" : "Skjul klient hemmelighed" + "Hide client secret" : "Skjul klient hemmelighed", + "Delete" : "Slet" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/de.js b/apps/oauth2/l10n/de.js index 27b2b6e3c94..20d0e79912a 100644 --- a/apps/oauth2/l10n/de.js +++ b/apps/oauth2/l10n/de.js @@ -1,7 +1,7 @@ OC.L10N.register( "oauth2", { - "Your client is not authorized to connect. Please inform the administrator of your client." : "Dein Client ist nicht berechtigt, eine Verbindung herzustellen. Bitte informiere den Administrator deines Clients.", + "Your client is not authorized to connect. Please inform the administrator of your client." : "Dein Client ist nicht berechtigt, eine Verbindung herzustellen. Bitte informiere die Administration deines Clients.", "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "Die Weiterleitungs-URL muss eine vollständige URL sein. Beispiel: https://deinedomain.com/pfad", "OAuth 2.0" : "OAuth 2.0", "Allows OAuth2 compatible authentication from other web applications." : "Ermöglicht OAuth2 komplatible Authentifizierung durch andere Web-Anwendungen.", @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Bewahre den geheimen Schlüssel unbedingt auf, er kann nicht wiederhergestellt werden.", "Add client" : "Client hinzufügen", "Add" : "Hinzufügen", - "Delete" : " Löschen", "Show client secret" : "Geheime Zeichenkette des Clients anzeigen", - "Hide client secret" : "Geheime Zeichenkette des Clients ausblenden" + "Hide client secret" : "Geheime Zeichenkette des Clients ausblenden", + "Delete" : " Löschen" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/de.json b/apps/oauth2/l10n/de.json index 684de5de26d..60c835a800f 100644 --- a/apps/oauth2/l10n/de.json +++ b/apps/oauth2/l10n/de.json @@ -1,5 +1,5 @@ { "translations": { - "Your client is not authorized to connect. Please inform the administrator of your client." : "Dein Client ist nicht berechtigt, eine Verbindung herzustellen. Bitte informiere den Administrator deines Clients.", + "Your client is not authorized to connect. Please inform the administrator of your client." : "Dein Client ist nicht berechtigt, eine Verbindung herzustellen. Bitte informiere die Administration deines Clients.", "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "Die Weiterleitungs-URL muss eine vollständige URL sein. Beispiel: https://deinedomain.com/pfad", "OAuth 2.0" : "OAuth 2.0", "Allows OAuth2 compatible authentication from other web applications." : "Ermöglicht OAuth2 komplatible Authentifizierung durch andere Web-Anwendungen.", @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Bewahre den geheimen Schlüssel unbedingt auf, er kann nicht wiederhergestellt werden.", "Add client" : "Client hinzufügen", "Add" : "Hinzufügen", - "Delete" : " Löschen", "Show client secret" : "Geheime Zeichenkette des Clients anzeigen", - "Hide client secret" : "Geheime Zeichenkette des Clients ausblenden" + "Hide client secret" : "Geheime Zeichenkette des Clients ausblenden", + "Delete" : " Löschen" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/de_DE.js b/apps/oauth2/l10n/de_DE.js index f29188b61ee..941b430bcb4 100644 --- a/apps/oauth2/l10n/de_DE.js +++ b/apps/oauth2/l10n/de_DE.js @@ -1,7 +1,7 @@ OC.L10N.register( "oauth2", { - "Your client is not authorized to connect. Please inform the administrator of your client." : "Ihr Client ist nicht berechtigt, eine Verbindung herzustellen. Bitte informieren Sie den Administrator Ihres Clients.", + "Your client is not authorized to connect. Please inform the administrator of your client." : "Ihr Client ist nicht berechtigt, eine Verbindung herzustellen. Bitte informieren Sie die Administration Ihres Clients.", "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "Die Weiterleitungs-URL muss eine vollständige URL sein. Beispiel: https://ihredomain.com/pfad", "OAuth 2.0" : "OAuth 2.0", "Allows OAuth2 compatible authentication from other web applications." : "Ermöglicht OAuth2-kompatible Authentifizierung durch andere Web-Anwendungen.", @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Bewahren Sie den geheimen Schlüssel unbedingt auf, er kann nicht wiederhergestellt werden.", "Add client" : "Client hinzufügen", "Add" : "Hinzufügen", - "Delete" : "Löschen", "Show client secret" : "Geheime Zeichenkette des Clients anzeigen", - "Hide client secret" : "Geheime Zeichenkette des Clients ausblenden" + "Hide client secret" : "Geheime Zeichenkette des Clients ausblenden", + "Delete" : "Löschen" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/de_DE.json b/apps/oauth2/l10n/de_DE.json index 741a491a2dc..b2be0a4dfb4 100644 --- a/apps/oauth2/l10n/de_DE.json +++ b/apps/oauth2/l10n/de_DE.json @@ -1,5 +1,5 @@ { "translations": { - "Your client is not authorized to connect. Please inform the administrator of your client." : "Ihr Client ist nicht berechtigt, eine Verbindung herzustellen. Bitte informieren Sie den Administrator Ihres Clients.", + "Your client is not authorized to connect. Please inform the administrator of your client." : "Ihr Client ist nicht berechtigt, eine Verbindung herzustellen. Bitte informieren Sie die Administration Ihres Clients.", "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "Die Weiterleitungs-URL muss eine vollständige URL sein. Beispiel: https://ihredomain.com/pfad", "OAuth 2.0" : "OAuth 2.0", "Allows OAuth2 compatible authentication from other web applications." : "Ermöglicht OAuth2-kompatible Authentifizierung durch andere Web-Anwendungen.", @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Bewahren Sie den geheimen Schlüssel unbedingt auf, er kann nicht wiederhergestellt werden.", "Add client" : "Client hinzufügen", "Add" : "Hinzufügen", - "Delete" : "Löschen", "Show client secret" : "Geheime Zeichenkette des Clients anzeigen", - "Hide client secret" : "Geheime Zeichenkette des Clients ausblenden" + "Hide client secret" : "Geheime Zeichenkette des Clients ausblenden", + "Delete" : "Löschen" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/el.js b/apps/oauth2/l10n/el.js index 57e39e58e64..d576b821c94 100644 --- a/apps/oauth2/l10n/el.js +++ b/apps/oauth2/l10n/el.js @@ -14,7 +14,7 @@ OC.L10N.register( "Secret key" : "Μυστικό κλειδί", "Add client" : "Προσθήκη πελάτη", "Add" : "Προσθήκη", - "Delete" : "Διαγραφή", - "Show client secret" : "Εμφάνιση μυστικού εφαρμογής υπολογιστή" + "Show client secret" : "Εμφάνιση μυστικού εφαρμογής υπολογιστή", + "Delete" : "Διαγραφή" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/el.json b/apps/oauth2/l10n/el.json index f7e13cc39e8..dd771839bc0 100644 --- a/apps/oauth2/l10n/el.json +++ b/apps/oauth2/l10n/el.json @@ -12,7 +12,7 @@ "Secret key" : "Μυστικό κλειδί", "Add client" : "Προσθήκη πελάτη", "Add" : "Προσθήκη", - "Delete" : "Διαγραφή", - "Show client secret" : "Εμφάνιση μυστικού εφαρμογής υπολογιστή" + "Show client secret" : "Εμφάνιση μυστικού εφαρμογής υπολογιστή", + "Delete" : "Διαγραφή" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/en_GB.js b/apps/oauth2/l10n/en_GB.js index 872990e64c0..fb42df933ca 100644 --- a/apps/oauth2/l10n/en_GB.js +++ b/apps/oauth2/l10n/en_GB.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Make sure you store the secret key, it cannot be recovered.", "Add client" : "Add client", "Add" : "Add", - "Delete" : "Delete", "Show client secret" : "Show client secret", - "Hide client secret" : "Hide client secret" + "Hide client secret" : "Hide client secret", + "Delete" : "Delete" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/en_GB.json b/apps/oauth2/l10n/en_GB.json index 2599ea814a1..85029055a07 100644 --- a/apps/oauth2/l10n/en_GB.json +++ b/apps/oauth2/l10n/en_GB.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Make sure you store the secret key, it cannot be recovered.", "Add client" : "Add client", "Add" : "Add", - "Delete" : "Delete", "Show client secret" : "Show client secret", - "Hide client secret" : "Hide client secret" + "Hide client secret" : "Hide client secret", + "Delete" : "Delete" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/es.js b/apps/oauth2/l10n/es.js index 7846af56fac..2c7e76a2cbb 100644 --- a/apps/oauth2/l10n/es.js +++ b/apps/oauth2/l10n/es.js @@ -11,13 +11,13 @@ OC.L10N.register( "Name" : "Nombre", "Redirection URI" : "URI de redirección", "Client Identifier" : "Identificador de cliente", - "Secret key" : "Llave secreta", + "Secret key" : "Clave secreta", "Delete client" : "Eliminar cliente", - "Make sure you store the secret key, it cannot be recovered." : "Guarda la clave secreta, porque no se podrá ver más tarde.", + "Make sure you store the secret key, it cannot be recovered." : "Asegúrese de guardar la clave secreta, ya que no podrá ser recuperada.", "Add client" : "Añadir cliente", "Add" : "Añadir", - "Delete" : "Eliminar", "Show client secret" : "Mostrar secreto del cliente", - "Hide client secret" : "Ocultar secreto del cliente" + "Hide client secret" : "Ocultar secreto del cliente", + "Delete" : "Eliminar" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/es.json b/apps/oauth2/l10n/es.json index b6d78af0939..9854ba3aa83 100644 --- a/apps/oauth2/l10n/es.json +++ b/apps/oauth2/l10n/es.json @@ -9,13 +9,13 @@ "Name" : "Nombre", "Redirection URI" : "URI de redirección", "Client Identifier" : "Identificador de cliente", - "Secret key" : "Llave secreta", + "Secret key" : "Clave secreta", "Delete client" : "Eliminar cliente", - "Make sure you store the secret key, it cannot be recovered." : "Guarda la clave secreta, porque no se podrá ver más tarde.", + "Make sure you store the secret key, it cannot be recovered." : "Asegúrese de guardar la clave secreta, ya que no podrá ser recuperada.", "Add client" : "Añadir cliente", "Add" : "Añadir", - "Delete" : "Eliminar", "Show client secret" : "Mostrar secreto del cliente", - "Hide client secret" : "Ocultar secreto del cliente" + "Hide client secret" : "Ocultar secreto del cliente", + "Delete" : "Eliminar" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/es_419.js b/apps/oauth2/l10n/es_419.js deleted file mode 100644 index e40806c627d..00000000000 --- a/apps/oauth2/l10n/es_419.js +++ /dev/null @@ -1,13 +0,0 @@ -OC.L10N.register( - "oauth2", - { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -}, -"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/es_419.json b/apps/oauth2/l10n/es_419.json deleted file mode 100644 index 0e63ef8d72e..00000000000 --- a/apps/oauth2/l10n/es_419.json +++ /dev/null @@ -1,11 +0,0 @@ -{ "translations": { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" -}
\ No newline at end of file diff --git a/apps/oauth2/l10n/es_EC.js b/apps/oauth2/l10n/es_EC.js index 260e523225a..38fab4a83a6 100644 --- a/apps/oauth2/l10n/es_EC.js +++ b/apps/oauth2/l10n/es_EC.js @@ -14,7 +14,7 @@ OC.L10N.register( "Secret key" : "Llave secreta", "Add client" : "Agregar cliente", "Add" : "Agregar", - "Delete" : "Borrar", - "Show client secret" : "Mostrar el secreto del cliente" + "Show client secret" : "Mostrar el secreto del cliente", + "Delete" : "Borrar" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/es_EC.json b/apps/oauth2/l10n/es_EC.json index 363c183f85d..3dd48dcdcd2 100644 --- a/apps/oauth2/l10n/es_EC.json +++ b/apps/oauth2/l10n/es_EC.json @@ -12,7 +12,7 @@ "Secret key" : "Llave secreta", "Add client" : "Agregar cliente", "Add" : "Agregar", - "Delete" : "Borrar", - "Show client secret" : "Mostrar el secreto del cliente" + "Show client secret" : "Mostrar el secreto del cliente", + "Delete" : "Borrar" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/es_GT.js b/apps/oauth2/l10n/es_GT.js index d7f58e59545..38f9a9c8eff 100644 --- a/apps/oauth2/l10n/es_GT.js +++ b/apps/oauth2/l10n/es_GT.js @@ -14,7 +14,7 @@ OC.L10N.register( "Secret key" : "Llave secreta", "Add client" : "Agregar cliente", "Add" : "Agregar", - "Delete" : "Borrar", - "Show client secret" : "Mostrar secreto del cliente" + "Show client secret" : "Mostrar secreto del cliente", + "Delete" : "Borrar" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/es_GT.json b/apps/oauth2/l10n/es_GT.json index ae743846d46..fea09081d1d 100644 --- a/apps/oauth2/l10n/es_GT.json +++ b/apps/oauth2/l10n/es_GT.json @@ -12,7 +12,7 @@ "Secret key" : "Llave secreta", "Add client" : "Agregar cliente", "Add" : "Agregar", - "Delete" : "Borrar", - "Show client secret" : "Mostrar secreto del cliente" + "Show client secret" : "Mostrar secreto del cliente", + "Delete" : "Borrar" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/es_HN.js b/apps/oauth2/l10n/es_HN.js deleted file mode 100644 index e40806c627d..00000000000 --- a/apps/oauth2/l10n/es_HN.js +++ /dev/null @@ -1,13 +0,0 @@ -OC.L10N.register( - "oauth2", - { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -}, -"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/es_HN.json b/apps/oauth2/l10n/es_HN.json deleted file mode 100644 index 0e63ef8d72e..00000000000 --- a/apps/oauth2/l10n/es_HN.json +++ /dev/null @@ -1,11 +0,0 @@ -{ "translations": { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" -}
\ No newline at end of file diff --git a/apps/oauth2/l10n/es_MX.js b/apps/oauth2/l10n/es_MX.js index 93044a876ab..ac9270bc6af 100644 --- a/apps/oauth2/l10n/es_MX.js +++ b/apps/oauth2/l10n/es_MX.js @@ -15,8 +15,8 @@ OC.L10N.register( "Delete client" : "Eliminar cliente", "Add client" : "Agregar cliente", "Add" : "Agregar", - "Delete" : "Borrar", "Show client secret" : "Mostrar el secreto del cliente", - "Hide client secret" : "Ocultar el secreto del cliente" + "Hide client secret" : "Ocultar el secreto del cliente", + "Delete" : "Borrar" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/es_MX.json b/apps/oauth2/l10n/es_MX.json index e1ee7c81805..6f0d19e414a 100644 --- a/apps/oauth2/l10n/es_MX.json +++ b/apps/oauth2/l10n/es_MX.json @@ -13,8 +13,8 @@ "Delete client" : "Eliminar cliente", "Add client" : "Agregar cliente", "Add" : "Agregar", - "Delete" : "Borrar", "Show client secret" : "Mostrar el secreto del cliente", - "Hide client secret" : "Ocultar el secreto del cliente" + "Hide client secret" : "Ocultar el secreto del cliente", + "Delete" : "Borrar" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/es_NI.js b/apps/oauth2/l10n/es_NI.js deleted file mode 100644 index e40806c627d..00000000000 --- a/apps/oauth2/l10n/es_NI.js +++ /dev/null @@ -1,13 +0,0 @@ -OC.L10N.register( - "oauth2", - { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -}, -"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/es_NI.json b/apps/oauth2/l10n/es_NI.json deleted file mode 100644 index 0e63ef8d72e..00000000000 --- a/apps/oauth2/l10n/es_NI.json +++ /dev/null @@ -1,11 +0,0 @@ -{ "translations": { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" -}
\ No newline at end of file diff --git a/apps/oauth2/l10n/es_PA.js b/apps/oauth2/l10n/es_PA.js deleted file mode 100644 index e40806c627d..00000000000 --- a/apps/oauth2/l10n/es_PA.js +++ /dev/null @@ -1,13 +0,0 @@ -OC.L10N.register( - "oauth2", - { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -}, -"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/es_PA.json b/apps/oauth2/l10n/es_PA.json deleted file mode 100644 index 0e63ef8d72e..00000000000 --- a/apps/oauth2/l10n/es_PA.json +++ /dev/null @@ -1,11 +0,0 @@ -{ "translations": { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" -}
\ No newline at end of file diff --git a/apps/oauth2/l10n/es_PE.js b/apps/oauth2/l10n/es_PE.js deleted file mode 100644 index e40806c627d..00000000000 --- a/apps/oauth2/l10n/es_PE.js +++ /dev/null @@ -1,13 +0,0 @@ -OC.L10N.register( - "oauth2", - { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -}, -"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/es_PE.json b/apps/oauth2/l10n/es_PE.json deleted file mode 100644 index 0e63ef8d72e..00000000000 --- a/apps/oauth2/l10n/es_PE.json +++ /dev/null @@ -1,11 +0,0 @@ -{ "translations": { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" -}
\ No newline at end of file diff --git a/apps/oauth2/l10n/es_PR.js b/apps/oauth2/l10n/es_PR.js deleted file mode 100644 index e40806c627d..00000000000 --- a/apps/oauth2/l10n/es_PR.js +++ /dev/null @@ -1,13 +0,0 @@ -OC.L10N.register( - "oauth2", - { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -}, -"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/es_PR.json b/apps/oauth2/l10n/es_PR.json deleted file mode 100644 index 0e63ef8d72e..00000000000 --- a/apps/oauth2/l10n/es_PR.json +++ /dev/null @@ -1,11 +0,0 @@ -{ "translations": { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" -}
\ No newline at end of file diff --git a/apps/oauth2/l10n/es_PY.js b/apps/oauth2/l10n/es_PY.js deleted file mode 100644 index e40806c627d..00000000000 --- a/apps/oauth2/l10n/es_PY.js +++ /dev/null @@ -1,13 +0,0 @@ -OC.L10N.register( - "oauth2", - { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -}, -"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/es_PY.json b/apps/oauth2/l10n/es_PY.json deleted file mode 100644 index 0e63ef8d72e..00000000000 --- a/apps/oauth2/l10n/es_PY.json +++ /dev/null @@ -1,11 +0,0 @@ -{ "translations": { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" -}
\ No newline at end of file diff --git a/apps/oauth2/l10n/es_UY.js b/apps/oauth2/l10n/es_UY.js deleted file mode 100644 index e40806c627d..00000000000 --- a/apps/oauth2/l10n/es_UY.js +++ /dev/null @@ -1,13 +0,0 @@ -OC.L10N.register( - "oauth2", - { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -}, -"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/es_UY.json b/apps/oauth2/l10n/es_UY.json deleted file mode 100644 index 0e63ef8d72e..00000000000 --- a/apps/oauth2/l10n/es_UY.json +++ /dev/null @@ -1,11 +0,0 @@ -{ "translations": { - "OAuth 2.0 clients" : "Clientes OAuth 2.0", - "Name" : "Nombre", - "Redirection URI" : "URI para redirección", - "Client Identifier" : "Identificador del cliente", - "Secret key" : "Llave secreta", - "Add client" : "Agregar cliente", - "Add" : "Agregar", - "Delete" : "Borrar" -},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" -}
\ No newline at end of file diff --git a/apps/oauth2/l10n/et_EE.js b/apps/oauth2/l10n/et_EE.js index b1029dada16..93a7c7e97bf 100644 --- a/apps/oauth2/l10n/et_EE.js +++ b/apps/oauth2/l10n/et_EE.js @@ -1,13 +1,23 @@ OC.L10N.register( "oauth2", { + "Your client is not authorized to connect. Please inform the administrator of your client." : "Su klient ei ole ühenduseks autoriseeritud. Palun teavita oma kliendi peakasutajat.", + "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "Ümbersuunamise URL peab olema täis URL, näiteks: https://sinudomeen.com/asukoht", + "OAuth 2.0" : "OAuth 2.0", + "Allows OAuth2 compatible authentication from other web applications." : "Võimaldab OAuth2-ga ühilduvat autentimist teistest veebirakendustest.", + "The OAuth2 app allows administrators to configure the built-in authentication workflow to also allow OAuth2 compatible authentication from other web applications." : "Rakendus OAuth2 võimaldab administraatoritel konfigureerida sisseehitatud autentimise töövoogu, et võimaldada ka OAuth2-ga ühilduvat autentimist teistest veebirakendustest.", "OAuth 2.0 clients" : "OAuth 2.0 kliendid", + "OAuth 2.0 allows external services to request access to {instanceName}." : "OAuth 2.0 võimaldab välisteenustel taotleda juurdepääsu {instanceName}ile", "Name" : "Nimi", "Redirection URI" : "Suunamise URI", "Client Identifier" : "Kliendi identifikaator", "Secret key" : "Salavõti", + "Delete client" : "Kustuta klient", + "Make sure you store the secret key, it cannot be recovered." : "Salvesta salajane võti, seda ei saa taastada.", "Add client" : "Lisa klient", "Add" : "Lisa", + "Show client secret" : "Näita kliendi salakoodi", + "Hide client secret" : "Peida kliendi salakood", "Delete" : "Kustuta" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/et_EE.json b/apps/oauth2/l10n/et_EE.json index 7a0a1c9630f..0ddc97bea45 100644 --- a/apps/oauth2/l10n/et_EE.json +++ b/apps/oauth2/l10n/et_EE.json @@ -1,11 +1,21 @@ { "translations": { + "Your client is not authorized to connect. Please inform the administrator of your client." : "Su klient ei ole ühenduseks autoriseeritud. Palun teavita oma kliendi peakasutajat.", + "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "Ümbersuunamise URL peab olema täis URL, näiteks: https://sinudomeen.com/asukoht", + "OAuth 2.0" : "OAuth 2.0", + "Allows OAuth2 compatible authentication from other web applications." : "Võimaldab OAuth2-ga ühilduvat autentimist teistest veebirakendustest.", + "The OAuth2 app allows administrators to configure the built-in authentication workflow to also allow OAuth2 compatible authentication from other web applications." : "Rakendus OAuth2 võimaldab administraatoritel konfigureerida sisseehitatud autentimise töövoogu, et võimaldada ka OAuth2-ga ühilduvat autentimist teistest veebirakendustest.", "OAuth 2.0 clients" : "OAuth 2.0 kliendid", + "OAuth 2.0 allows external services to request access to {instanceName}." : "OAuth 2.0 võimaldab välisteenustel taotleda juurdepääsu {instanceName}ile", "Name" : "Nimi", "Redirection URI" : "Suunamise URI", "Client Identifier" : "Kliendi identifikaator", "Secret key" : "Salavõti", + "Delete client" : "Kustuta klient", + "Make sure you store the secret key, it cannot be recovered." : "Salvesta salajane võti, seda ei saa taastada.", "Add client" : "Lisa klient", "Add" : "Lisa", + "Show client secret" : "Näita kliendi salakoodi", + "Hide client secret" : "Peida kliendi salakood", "Delete" : "Kustuta" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/eu.js b/apps/oauth2/l10n/eu.js index 19464e87d56..e195a1ef3ac 100644 --- a/apps/oauth2/l10n/eu.js +++ b/apps/oauth2/l10n/eu.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Ziurtatu gako sekretua gordetzen duzula, ezin da berreskuratu.", "Add client" : "Gehitu bezeroa", "Add" : "Gehitu", - "Delete" : "Ezabatu", "Show client secret" : "Erakutsi bezeroaren sekretua", - "Hide client secret" : "Ezkutatu bezeroaren sekretua" + "Hide client secret" : "Ezkutatu bezeroaren sekretua", + "Delete" : "Ezabatu" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/eu.json b/apps/oauth2/l10n/eu.json index 7171938d78b..ddfcd437650 100644 --- a/apps/oauth2/l10n/eu.json +++ b/apps/oauth2/l10n/eu.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Ziurtatu gako sekretua gordetzen duzula, ezin da berreskuratu.", "Add client" : "Gehitu bezeroa", "Add" : "Gehitu", - "Delete" : "Ezabatu", "Show client secret" : "Erakutsi bezeroaren sekretua", - "Hide client secret" : "Ezkutatu bezeroaren sekretua" + "Hide client secret" : "Ezkutatu bezeroaren sekretua", + "Delete" : "Ezabatu" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/fa.js b/apps/oauth2/l10n/fa.js index f99a49cd597..4f21d887051 100644 --- a/apps/oauth2/l10n/fa.js +++ b/apps/oauth2/l10n/fa.js @@ -14,7 +14,7 @@ OC.L10N.register( "Secret key" : "کلید مخفی", "Add client" : "افزودن مشتری", "Add" : "افزودن", - "Delete" : "حذف", - "Show client secret" : "راز مشتری را نشان دهید" + "Show client secret" : "راز مشتری را نشان دهید", + "Delete" : "حذف" }, "nplurals=2; plural=(n > 1);"); diff --git a/apps/oauth2/l10n/fa.json b/apps/oauth2/l10n/fa.json index 3ed15a66bd8..f7091f5c83e 100644 --- a/apps/oauth2/l10n/fa.json +++ b/apps/oauth2/l10n/fa.json @@ -12,7 +12,7 @@ "Secret key" : "کلید مخفی", "Add client" : "افزودن مشتری", "Add" : "افزودن", - "Delete" : "حذف", - "Show client secret" : "راز مشتری را نشان دهید" + "Show client secret" : "راز مشتری را نشان دهید", + "Delete" : "حذف" },"pluralForm" :"nplurals=2; plural=(n > 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/fi.js b/apps/oauth2/l10n/fi.js index ed1c4b8ba99..c7ad237bc72 100644 --- a/apps/oauth2/l10n/fi.js +++ b/apps/oauth2/l10n/fi.js @@ -13,8 +13,8 @@ OC.L10N.register( "Delete client" : "Poista asiakas", "Add client" : "Lisää asiakas", "Add" : "Lisää", - "Delete" : "Poista", "Show client secret" : "Näytä asiakkaan salaisuus", - "Hide client secret" : "Piilota asiakkaan salaisuus" + "Hide client secret" : "Piilota asiakkaan salaisuus", + "Delete" : "Poista" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/fi.json b/apps/oauth2/l10n/fi.json index 92dca5c22b3..c74e11bef5e 100644 --- a/apps/oauth2/l10n/fi.json +++ b/apps/oauth2/l10n/fi.json @@ -11,8 +11,8 @@ "Delete client" : "Poista asiakas", "Add client" : "Lisää asiakas", "Add" : "Lisää", - "Delete" : "Poista", "Show client secret" : "Näytä asiakkaan salaisuus", - "Hide client secret" : "Piilota asiakkaan salaisuus" + "Hide client secret" : "Piilota asiakkaan salaisuus", + "Delete" : "Poista" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/fr.js b/apps/oauth2/l10n/fr.js index 7a088fb54b2..a60dc05f74c 100644 --- a/apps/oauth2/l10n/fr.js +++ b/apps/oauth2/l10n/fr.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Assurez-vous de stocker la clé secrète, elle ne peut pas être re récupérée.", "Add client" : "Ajouter un client", "Add" : "Ajouter", - "Delete" : "Supprimer", "Show client secret" : "Afficher le code secret du client", - "Hide client secret" : "Masquer le secret du client" + "Hide client secret" : "Masquer le secret du client", + "Delete" : "Supprimer" }, "nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/fr.json b/apps/oauth2/l10n/fr.json index 08e660fe913..9be9ea0d408 100644 --- a/apps/oauth2/l10n/fr.json +++ b/apps/oauth2/l10n/fr.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Assurez-vous de stocker la clé secrète, elle ne peut pas être re récupérée.", "Add client" : "Ajouter un client", "Add" : "Ajouter", - "Delete" : "Supprimer", "Show client secret" : "Afficher le code secret du client", - "Hide client secret" : "Masquer le secret du client" + "Hide client secret" : "Masquer le secret du client", + "Delete" : "Supprimer" },"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/ga.js b/apps/oauth2/l10n/ga.js index a89b2249fab..45199e91f97 100644 --- a/apps/oauth2/l10n/ga.js +++ b/apps/oauth2/l10n/ga.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Déan cinnte go stórálann tú an eochair rúnda, ní féidir í a aisghabháil.", "Add client" : "Cuir cliant leis", "Add" : "Cuir", - "Delete" : "Scrios", "Show client secret" : "Taispeáin rún an chliaint", - "Hide client secret" : "Folaigh rún an chliaint" + "Hide client secret" : "Folaigh rún an chliaint", + "Delete" : "Scrios" }, "nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"); diff --git a/apps/oauth2/l10n/ga.json b/apps/oauth2/l10n/ga.json index 2b0dd54f26e..a85a372dc24 100644 --- a/apps/oauth2/l10n/ga.json +++ b/apps/oauth2/l10n/ga.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Déan cinnte go stórálann tú an eochair rúnda, ní féidir í a aisghabháil.", "Add client" : "Cuir cliant leis", "Add" : "Cuir", - "Delete" : "Scrios", "Show client secret" : "Taispeáin rún an chliaint", - "Hide client secret" : "Folaigh rún an chliaint" + "Hide client secret" : "Folaigh rún an chliaint", + "Delete" : "Scrios" },"pluralForm" :"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/gl.js b/apps/oauth2/l10n/gl.js index 3263aa0f59d..3aaa35e0b00 100644 --- a/apps/oauth2/l10n/gl.js +++ b/apps/oauth2/l10n/gl.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Asegúrese de gardar a chave secreta, non é posíbel recuperala.", "Add client" : "Engadir cliente", "Add" : "Engadir", - "Delete" : "Eliminar", "Show client secret" : "Amosar o segredo do cliente", - "Hide client secret" : "Agochar o segredo do cliente" + "Hide client secret" : "Agochar o segredo do cliente", + "Delete" : "Eliminar" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/gl.json b/apps/oauth2/l10n/gl.json index daca1b12994..3401883d361 100644 --- a/apps/oauth2/l10n/gl.json +++ b/apps/oauth2/l10n/gl.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Asegúrese de gardar a chave secreta, non é posíbel recuperala.", "Add client" : "Engadir cliente", "Add" : "Engadir", - "Delete" : "Eliminar", "Show client secret" : "Amosar o segredo do cliente", - "Hide client secret" : "Agochar o segredo do cliente" + "Hide client secret" : "Agochar o segredo do cliente", + "Delete" : "Eliminar" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/he.js b/apps/oauth2/l10n/he.js index 3b07f46de03..2d32792f86e 100644 --- a/apps/oauth2/l10n/he.js +++ b/apps/oauth2/l10n/he.js @@ -14,7 +14,7 @@ OC.L10N.register( "Secret key" : "מפתח סודי", "Add client" : "הוספת לקוחי", "Add" : "הוספה", - "Delete" : "מחיקה", - "Show client secret" : "הצגת סוד לקוח" + "Show client secret" : "הצגת סוד לקוח", + "Delete" : "מחיקה" }, "nplurals=3; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: 2;"); diff --git a/apps/oauth2/l10n/he.json b/apps/oauth2/l10n/he.json index 3c5633c4cfa..d46ae0195f4 100644 --- a/apps/oauth2/l10n/he.json +++ b/apps/oauth2/l10n/he.json @@ -12,7 +12,7 @@ "Secret key" : "מפתח סודי", "Add client" : "הוספת לקוחי", "Add" : "הוספה", - "Delete" : "מחיקה", - "Show client secret" : "הצגת סוד לקוח" + "Show client secret" : "הצגת סוד לקוח", + "Delete" : "מחיקה" },"pluralForm" :"nplurals=3; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: 2;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/hr.js b/apps/oauth2/l10n/hr.js index 3fb0fc48ee9..396209ee36b 100644 --- a/apps/oauth2/l10n/hr.js +++ b/apps/oauth2/l10n/hr.js @@ -14,7 +14,7 @@ OC.L10N.register( "Secret key" : "Tajni ključ", "Add client" : "Dodaj klijenta", "Add" : "Dodaj", - "Delete" : "Izbriši", - "Show client secret" : "Prikaži tajni ključ klijenta" + "Show client secret" : "Prikaži tajni ključ klijenta", + "Delete" : "Izbriši" }, "nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"); diff --git a/apps/oauth2/l10n/hr.json b/apps/oauth2/l10n/hr.json index 2772781ac66..79303555b6b 100644 --- a/apps/oauth2/l10n/hr.json +++ b/apps/oauth2/l10n/hr.json @@ -12,7 +12,7 @@ "Secret key" : "Tajni ključ", "Add client" : "Dodaj klijenta", "Add" : "Dodaj", - "Delete" : "Izbriši", - "Show client secret" : "Prikaži tajni ključ klijenta" + "Show client secret" : "Prikaži tajni ključ klijenta", + "Delete" : "Izbriši" },"pluralForm" :"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/hu.js b/apps/oauth2/l10n/hu.js index dbc4c43678f..eddb2928651 100644 --- a/apps/oauth2/l10n/hu.js +++ b/apps/oauth2/l10n/hu.js @@ -9,12 +9,15 @@ OC.L10N.register( "OAuth 2.0 clients" : "OAuth 2.0 kliensek", "OAuth 2.0 allows external services to request access to {instanceName}." : "Az OAuth 2.0 engedélyezi, hogy külső szolgáltatások hozzáférést kérjenek a következőhöz: {instanceName}.", "Name" : "Név", - "Redirection URI" : "Átirányítési URI", + "Redirection URI" : "Átirányítási URI", "Client Identifier" : "Ügyfélazonosító", "Secret key" : "Titkos kulcs", + "Delete client" : "Kliens törlése", + "Make sure you store the secret key, it cannot be recovered." : "Győződjön meg róla tárolja a titkos kulcsot, mert nem nyerhető vissza.", "Add client" : "Kliens hozzáadása", "Add" : "Hozzáadás", - "Delete" : "Törlés", - "Show client secret" : "Kliens titkának megjelenítése" + "Show client secret" : "Klienstitok megjelenítése", + "Hide client secret" : "Klienstitok elrejtése", + "Delete" : "Törlés" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/hu.json b/apps/oauth2/l10n/hu.json index 02ec3ad290b..2e0a9c4de02 100644 --- a/apps/oauth2/l10n/hu.json +++ b/apps/oauth2/l10n/hu.json @@ -7,12 +7,15 @@ "OAuth 2.0 clients" : "OAuth 2.0 kliensek", "OAuth 2.0 allows external services to request access to {instanceName}." : "Az OAuth 2.0 engedélyezi, hogy külső szolgáltatások hozzáférést kérjenek a következőhöz: {instanceName}.", "Name" : "Név", - "Redirection URI" : "Átirányítési URI", + "Redirection URI" : "Átirányítási URI", "Client Identifier" : "Ügyfélazonosító", "Secret key" : "Titkos kulcs", + "Delete client" : "Kliens törlése", + "Make sure you store the secret key, it cannot be recovered." : "Győződjön meg róla tárolja a titkos kulcsot, mert nem nyerhető vissza.", "Add client" : "Kliens hozzáadása", "Add" : "Hozzáadás", - "Delete" : "Törlés", - "Show client secret" : "Kliens titkának megjelenítése" + "Show client secret" : "Klienstitok megjelenítése", + "Hide client secret" : "Klienstitok elrejtése", + "Delete" : "Törlés" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/id.js b/apps/oauth2/l10n/id.js deleted file mode 100644 index 7be61f59d20..00000000000 --- a/apps/oauth2/l10n/id.js +++ /dev/null @@ -1,13 +0,0 @@ -OC.L10N.register( - "oauth2", - { - "OAuth 2.0 clients" : "Klien OAuth 2.0", - "Name" : "Nama", - "Redirection URI" : "URI Pengalihan", - "Client Identifier" : "Identifier klien", - "Secret key" : "Kunci rahasia", - "Add client" : "Tambah klien", - "Add" : "Tambah", - "Delete" : "Hapus" -}, -"nplurals=1; plural=0;"); diff --git a/apps/oauth2/l10n/id.json b/apps/oauth2/l10n/id.json deleted file mode 100644 index 430b92957b8..00000000000 --- a/apps/oauth2/l10n/id.json +++ /dev/null @@ -1,11 +0,0 @@ -{ "translations": { - "OAuth 2.0 clients" : "Klien OAuth 2.0", - "Name" : "Nama", - "Redirection URI" : "URI Pengalihan", - "Client Identifier" : "Identifier klien", - "Secret key" : "Kunci rahasia", - "Add client" : "Tambah klien", - "Add" : "Tambah", - "Delete" : "Hapus" -},"pluralForm" :"nplurals=1; plural=0;" -}
\ No newline at end of file diff --git a/apps/oauth2/l10n/is.js b/apps/oauth2/l10n/is.js index ce3592b78b9..e786a1e409d 100644 --- a/apps/oauth2/l10n/is.js +++ b/apps/oauth2/l10n/is.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Vertu viss um að geyma leynilykilinn á góðum stað, henn er ekki hægt að endurheimta.", "Add client" : "Bæta við biðlara", "Add" : "Bæta við", - "Delete" : "Eyða", "Show client secret" : "Sýna leynilykil biðlara", - "Hide client secret" : "Fela leynilykil biðlara" + "Hide client secret" : "Fela leynilykil biðlara", + "Delete" : "Eyða" }, "nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"); diff --git a/apps/oauth2/l10n/is.json b/apps/oauth2/l10n/is.json index 40df70c90a6..573b3a496a4 100644 --- a/apps/oauth2/l10n/is.json +++ b/apps/oauth2/l10n/is.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Vertu viss um að geyma leynilykilinn á góðum stað, henn er ekki hægt að endurheimta.", "Add client" : "Bæta við biðlara", "Add" : "Bæta við", - "Delete" : "Eyða", "Show client secret" : "Sýna leynilykil biðlara", - "Hide client secret" : "Fela leynilykil biðlara" + "Hide client secret" : "Fela leynilykil biðlara", + "Delete" : "Eyða" },"pluralForm" :"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/it.js b/apps/oauth2/l10n/it.js index 9b8ad923877..f6365b013d0 100644 --- a/apps/oauth2/l10n/it.js +++ b/apps/oauth2/l10n/it.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Assicurati di salvare la chiave segreta, non può essere recuperata.", "Add client" : "Aggiungi client", "Add" : "Aggiungi", - "Delete" : "Elimina", "Show client secret" : "Mostra segreto del client", - "Hide client secret" : "Nascondi segreto del client" + "Hide client secret" : "Nascondi segreto del client", + "Delete" : "Elimina" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/it.json b/apps/oauth2/l10n/it.json index 331cb73fc02..d7db0bbe00d 100644 --- a/apps/oauth2/l10n/it.json +++ b/apps/oauth2/l10n/it.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Assicurati di salvare la chiave segreta, non può essere recuperata.", "Add client" : "Aggiungi client", "Add" : "Aggiungi", - "Delete" : "Elimina", "Show client secret" : "Mostra segreto del client", - "Hide client secret" : "Nascondi segreto del client" + "Hide client secret" : "Nascondi segreto del client", + "Delete" : "Elimina" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/ja.js b/apps/oauth2/l10n/ja.js index 69bc28e759b..c1418fb2021 100644 --- a/apps/oauth2/l10n/ja.js +++ b/apps/oauth2/l10n/ja.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "秘密鍵は復元できないので、必ず保管してください。", "Add client" : "クライアントの追加", "Add" : "追加", - "Delete" : "削除", "Show client secret" : "クライアントシークレットキーを表示", - "Hide client secret" : "クライアントのシークレットキーを隠す" + "Hide client secret" : "クライアントのシークレットキーを隠す", + "Delete" : "削除" }, "nplurals=1; plural=0;"); diff --git a/apps/oauth2/l10n/ja.json b/apps/oauth2/l10n/ja.json index ca8babc00a9..09357aca90f 100644 --- a/apps/oauth2/l10n/ja.json +++ b/apps/oauth2/l10n/ja.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "秘密鍵は復元できないので、必ず保管してください。", "Add client" : "クライアントの追加", "Add" : "追加", - "Delete" : "削除", "Show client secret" : "クライアントシークレットキーを表示", - "Hide client secret" : "クライアントのシークレットキーを隠す" + "Hide client secret" : "クライアントのシークレットキーを隠す", + "Delete" : "削除" },"pluralForm" :"nplurals=1; plural=0;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/ka.js b/apps/oauth2/l10n/ka.js index 27200094f4a..c3a7a9385ba 100644 --- a/apps/oauth2/l10n/ka.js +++ b/apps/oauth2/l10n/ka.js @@ -15,8 +15,8 @@ OC.L10N.register( "Delete client" : "Delete client", "Add client" : "Add client", "Add" : "Add", - "Delete" : "Delete", "Show client secret" : "Show client secret", - "Hide client secret" : "Hide client secret" + "Hide client secret" : "Hide client secret", + "Delete" : "Delete" }, "nplurals=2; plural=(n!=1);"); diff --git a/apps/oauth2/l10n/ka.json b/apps/oauth2/l10n/ka.json index 92501e89e5f..9d634320a17 100644 --- a/apps/oauth2/l10n/ka.json +++ b/apps/oauth2/l10n/ka.json @@ -13,8 +13,8 @@ "Delete client" : "Delete client", "Add client" : "Add client", "Add" : "Add", - "Delete" : "Delete", "Show client secret" : "Show client secret", - "Hide client secret" : "Hide client secret" + "Hide client secret" : "Hide client secret", + "Delete" : "Delete" },"pluralForm" :"nplurals=2; plural=(n!=1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/ka_GE.js b/apps/oauth2/l10n/ka_GE.js index eceb14c8d09..a94015e4803 100644 --- a/apps/oauth2/l10n/ka_GE.js +++ b/apps/oauth2/l10n/ka_GE.js @@ -9,7 +9,7 @@ OC.L10N.register( "Secret key" : "საიდუმლო გასაღები", "Add client" : "კლიენტის დამატება", "Add" : "დამატება", - "Delete" : "წაშლა", - "Show client secret" : "გამოაჩინე კლიენტის საიდუმლო" + "Show client secret" : "გამოაჩინე კლიენტის საიდუმლო", + "Delete" : "წაშლა" }, "nplurals=2; plural=(n!=1);"); diff --git a/apps/oauth2/l10n/ka_GE.json b/apps/oauth2/l10n/ka_GE.json index e4d58476b27..186b5570c7f 100644 --- a/apps/oauth2/l10n/ka_GE.json +++ b/apps/oauth2/l10n/ka_GE.json @@ -7,7 +7,7 @@ "Secret key" : "საიდუმლო გასაღები", "Add client" : "კლიენტის დამატება", "Add" : "დამატება", - "Delete" : "წაშლა", - "Show client secret" : "გამოაჩინე კლიენტის საიდუმლო" + "Show client secret" : "გამოაჩინე კლიენტის საიდუმლო", + "Delete" : "წაშლა" },"pluralForm" :"nplurals=2; plural=(n!=1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/ko.js b/apps/oauth2/l10n/ko.js index 83d14b5bf23..8a9da68e958 100644 --- a/apps/oauth2/l10n/ko.js +++ b/apps/oauth2/l10n/ko.js @@ -14,7 +14,7 @@ OC.L10N.register( "Secret key" : "비밀 키", "Add client" : "클라이언트 추가", "Add" : "추가", - "Delete" : "삭제", - "Show client secret" : "클라이언트 비밀 값 표시" + "Show client secret" : "클라이언트 비밀 값 표시", + "Delete" : "삭제" }, "nplurals=1; plural=0;"); diff --git a/apps/oauth2/l10n/ko.json b/apps/oauth2/l10n/ko.json index 7bb616aca04..fd689b591f7 100644 --- a/apps/oauth2/l10n/ko.json +++ b/apps/oauth2/l10n/ko.json @@ -12,7 +12,7 @@ "Secret key" : "비밀 키", "Add client" : "클라이언트 추가", "Add" : "추가", - "Delete" : "삭제", - "Show client secret" : "클라이언트 비밀 값 표시" + "Show client secret" : "클라이언트 비밀 값 표시", + "Delete" : "삭제" },"pluralForm" :"nplurals=1; plural=0;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/lv.js b/apps/oauth2/l10n/lv.js index 46c53c1e338..a6df308f198 100644 --- a/apps/oauth2/l10n/lv.js +++ b/apps/oauth2/l10n/lv.js @@ -12,6 +12,6 @@ OC.L10N.register( "Secret key" : "Slepenā atslēga", "Add client" : "Pievienot klientu", "Add" : "Pievienot", - "Delete" : "Dzēst" + "Delete" : "Izdzēst" }, "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"); diff --git a/apps/oauth2/l10n/lv.json b/apps/oauth2/l10n/lv.json index 3682df4ff82..3fddb2506ac 100644 --- a/apps/oauth2/l10n/lv.json +++ b/apps/oauth2/l10n/lv.json @@ -10,6 +10,6 @@ "Secret key" : "Slepenā atslēga", "Add client" : "Pievienot klientu", "Add" : "Pievienot", - "Delete" : "Dzēst" + "Delete" : "Izdzēst" },"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/mk.js b/apps/oauth2/l10n/mk.js index 92df16f6b6f..3ef703ea529 100644 --- a/apps/oauth2/l10n/mk.js +++ b/apps/oauth2/l10n/mk.js @@ -14,7 +14,7 @@ OC.L10N.register( "Secret key" : "Таен клуч", "Add client" : "Додади клиент", "Add" : "Додади", - "Delete" : "Избриши", - "Show client secret" : "Прикажи тајна на клиент" + "Show client secret" : "Прикажи тајна на клиент", + "Delete" : "Избриши" }, "nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"); diff --git a/apps/oauth2/l10n/mk.json b/apps/oauth2/l10n/mk.json index d66c51adbf7..993f4112fb1 100644 --- a/apps/oauth2/l10n/mk.json +++ b/apps/oauth2/l10n/mk.json @@ -12,7 +12,7 @@ "Secret key" : "Таен клуч", "Add client" : "Додади клиент", "Add" : "Додади", - "Delete" : "Избриши", - "Show client secret" : "Прикажи тајна на клиент" + "Show client secret" : "Прикажи тајна на клиент", + "Delete" : "Избриши" },"pluralForm" :"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/nb.js b/apps/oauth2/l10n/nb.js index 70bf023c10f..9cf61c0eed0 100644 --- a/apps/oauth2/l10n/nb.js +++ b/apps/oauth2/l10n/nb.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Pass på at du oppbevarer den hemmelige nøkkelen, den kan ikke gjenopprettes.", "Add client" : "Legg til klient", "Add" : "Legg til", - "Delete" : "Slett", "Show client secret" : "Vis klients hemmelighet", - "Hide client secret" : "Skjul klienthemmelighet" + "Hide client secret" : "Skjul klienthemmelighet", + "Delete" : "Slett" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/nb.json b/apps/oauth2/l10n/nb.json index 9a3e88d3fb5..70154349c8b 100644 --- a/apps/oauth2/l10n/nb.json +++ b/apps/oauth2/l10n/nb.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Pass på at du oppbevarer den hemmelige nøkkelen, den kan ikke gjenopprettes.", "Add client" : "Legg til klient", "Add" : "Legg til", - "Delete" : "Slett", "Show client secret" : "Vis klients hemmelighet", - "Hide client secret" : "Skjul klienthemmelighet" + "Hide client secret" : "Skjul klienthemmelighet", + "Delete" : "Slett" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/nl.js b/apps/oauth2/l10n/nl.js index eab4338bc29..f27d2a062d8 100644 --- a/apps/oauth2/l10n/nl.js +++ b/apps/oauth2/l10n/nl.js @@ -12,9 +12,12 @@ OC.L10N.register( "Redirection URI" : "Omeiding URI", "Client Identifier" : "Client identificatie", "Secret key" : "Geheime sleutel", + "Delete client" : "Client verwijderen", + "Make sure you store the secret key, it cannot be recovered." : "Zorg ervoor dat je de geheime sleutel opslaat, deze kan niet worden hersteld.", "Add client" : "Voeg client toe", "Add" : "Toevoegen", - "Delete" : "verwijderen", - "Show client secret" : "Tonen client secret" + "Show client secret" : "Geheime sleutel van cliënt weergeven", + "Hide client secret" : "Geheime sleutel van cliënt verbergen", + "Delete" : "verwijderen" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/nl.json b/apps/oauth2/l10n/nl.json index e75b7825248..c66631b5750 100644 --- a/apps/oauth2/l10n/nl.json +++ b/apps/oauth2/l10n/nl.json @@ -10,9 +10,12 @@ "Redirection URI" : "Omeiding URI", "Client Identifier" : "Client identificatie", "Secret key" : "Geheime sleutel", + "Delete client" : "Client verwijderen", + "Make sure you store the secret key, it cannot be recovered." : "Zorg ervoor dat je de geheime sleutel opslaat, deze kan niet worden hersteld.", "Add client" : "Voeg client toe", "Add" : "Toevoegen", - "Delete" : "verwijderen", - "Show client secret" : "Tonen client secret" + "Show client secret" : "Geheime sleutel van cliënt weergeven", + "Hide client secret" : "Geheime sleutel van cliënt verbergen", + "Delete" : "verwijderen" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/oc.js b/apps/oauth2/l10n/oc.js index 15347d54c39..8b114800cd1 100644 --- a/apps/oauth2/l10n/oc.js +++ b/apps/oauth2/l10n/oc.js @@ -11,7 +11,7 @@ OC.L10N.register( "Client Identifier" : "Identificador client", "Add client" : "Apondre un client", "Add" : "Apondre", - "Delete" : "Suprimir", - "Show client secret" : "Afichar lo secret del client" + "Show client secret" : "Afichar lo secret del client", + "Delete" : "Suprimir" }, "nplurals=2; plural=(n > 1);"); diff --git a/apps/oauth2/l10n/oc.json b/apps/oauth2/l10n/oc.json index ffcb987aa95..cee27e15d72 100644 --- a/apps/oauth2/l10n/oc.json +++ b/apps/oauth2/l10n/oc.json @@ -9,7 +9,7 @@ "Client Identifier" : "Identificador client", "Add client" : "Apondre un client", "Add" : "Apondre", - "Delete" : "Suprimir", - "Show client secret" : "Afichar lo secret del client" + "Show client secret" : "Afichar lo secret del client", + "Delete" : "Suprimir" },"pluralForm" :"nplurals=2; plural=(n > 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/pl.js b/apps/oauth2/l10n/pl.js index faa1f668b34..50a5f361808 100644 --- a/apps/oauth2/l10n/pl.js +++ b/apps/oauth2/l10n/pl.js @@ -13,9 +13,11 @@ OC.L10N.register( "Client Identifier" : "Identyfikator Klienta", "Secret key" : "Tajny klucz", "Delete client" : "Usuń klienta", + "Make sure you store the secret key, it cannot be recovered." : "Upewnij się, że przechowujesz klucz tajny, gdyż nie będzie można go odzyskać.", "Add client" : "Dodaj klienta", "Add" : "Dodaj", - "Delete" : "Usuń", - "Show client secret" : "Pokaż tajny klucz klienta" + "Show client secret" : "Pokaż tajny klucz klienta", + "Hide client secret" : "Ukryj tajny klucz klienta", + "Delete" : "Usuń" }, "nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"); diff --git a/apps/oauth2/l10n/pl.json b/apps/oauth2/l10n/pl.json index b5d28e16f33..09ac52e38c7 100644 --- a/apps/oauth2/l10n/pl.json +++ b/apps/oauth2/l10n/pl.json @@ -11,9 +11,11 @@ "Client Identifier" : "Identyfikator Klienta", "Secret key" : "Tajny klucz", "Delete client" : "Usuń klienta", + "Make sure you store the secret key, it cannot be recovered." : "Upewnij się, że przechowujesz klucz tajny, gdyż nie będzie można go odzyskać.", "Add client" : "Dodaj klienta", "Add" : "Dodaj", - "Delete" : "Usuń", - "Show client secret" : "Pokaż tajny klucz klienta" + "Show client secret" : "Pokaż tajny klucz klienta", + "Hide client secret" : "Ukryj tajny klucz klienta", + "Delete" : "Usuń" },"pluralForm" :"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/pt_BR.js b/apps/oauth2/l10n/pt_BR.js index 26641a78c96..4d390ef783e 100644 --- a/apps/oauth2/l10n/pt_BR.js +++ b/apps/oauth2/l10n/pt_BR.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Certifique-se de armazenar a chave secreta, ela não pode ser recuperada.", "Add client" : "Adicionar cliente", "Add" : "Adicionar", - "Delete" : "Excluir", "Show client secret" : "Mostra senha do cliente", - "Hide client secret" : "Ocultar segredo do cliente" + "Hide client secret" : "Ocultar segredo do cliente", + "Delete" : "Excluir" }, "nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/pt_BR.json b/apps/oauth2/l10n/pt_BR.json index dbfc53e8b66..4407ca4c591 100644 --- a/apps/oauth2/l10n/pt_BR.json +++ b/apps/oauth2/l10n/pt_BR.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Certifique-se de armazenar a chave secreta, ela não pode ser recuperada.", "Add client" : "Adicionar cliente", "Add" : "Adicionar", - "Delete" : "Excluir", "Show client secret" : "Mostra senha do cliente", - "Hide client secret" : "Ocultar segredo do cliente" + "Hide client secret" : "Ocultar segredo do cliente", + "Delete" : "Excluir" },"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/pt_PT.js b/apps/oauth2/l10n/pt_PT.js index 6dbb53e3979..09f9f952d30 100644 --- a/apps/oauth2/l10n/pt_PT.js +++ b/apps/oauth2/l10n/pt_PT.js @@ -14,7 +14,7 @@ OC.L10N.register( "Secret key" : "Código secreto", "Add client" : "Adicionar cliente", "Add" : "Adicionar", - "Delete" : "Apagar", - "Show client secret" : "Mostrar segredo do cliente" + "Show client secret" : "Mostrar segredo do cliente", + "Delete" : "Apagar" }, "nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/apps/oauth2/l10n/pt_PT.json b/apps/oauth2/l10n/pt_PT.json index 6f8840f0493..37b9ea94e98 100644 --- a/apps/oauth2/l10n/pt_PT.json +++ b/apps/oauth2/l10n/pt_PT.json @@ -12,7 +12,7 @@ "Secret key" : "Código secreto", "Add client" : "Adicionar cliente", "Add" : "Adicionar", - "Delete" : "Apagar", - "Show client secret" : "Mostrar segredo do cliente" + "Show client secret" : "Mostrar segredo do cliente", + "Delete" : "Apagar" },"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/ru.js b/apps/oauth2/l10n/ru.js index 0e10cc71e44..0566016ee23 100644 --- a/apps/oauth2/l10n/ru.js +++ b/apps/oauth2/l10n/ru.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Убедитесь, что вы сохранили секретный ключ, он не может быть восстановлен.", "Add client" : "Добавить клиент", "Add" : "Добавить", - "Delete" : "Удалить", "Show client secret" : "Показать секретный ключ клиента", - "Hide client secret" : "Скрыть секрет клиента" + "Hide client secret" : "Скрыть секрет клиента", + "Delete" : "Удалить" }, "nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"); diff --git a/apps/oauth2/l10n/ru.json b/apps/oauth2/l10n/ru.json index fcfefde1b25..0e34793a1a1 100644 --- a/apps/oauth2/l10n/ru.json +++ b/apps/oauth2/l10n/ru.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Убедитесь, что вы сохранили секретный ключ, он не может быть восстановлен.", "Add client" : "Добавить клиент", "Add" : "Добавить", - "Delete" : "Удалить", "Show client secret" : "Показать секретный ключ клиента", - "Hide client secret" : "Скрыть секрет клиента" + "Hide client secret" : "Скрыть секрет клиента", + "Delete" : "Удалить" },"pluralForm" :"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/sc.js b/apps/oauth2/l10n/sc.js index 48a0cd0addf..833214ed6d7 100644 --- a/apps/oauth2/l10n/sc.js +++ b/apps/oauth2/l10n/sc.js @@ -14,7 +14,7 @@ OC.L10N.register( "Secret key" : "Crae segreta", "Add client" : "Agiunghe cliente", "Add" : "Agiunghe", - "Delete" : "Cantzella", - "Show client secret" : "Mustra su segretu de su cliente" + "Show client secret" : "Mustra su segretu de su cliente", + "Delete" : "Cantzella" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/sc.json b/apps/oauth2/l10n/sc.json index 6626f5271a9..61e866c2a39 100644 --- a/apps/oauth2/l10n/sc.json +++ b/apps/oauth2/l10n/sc.json @@ -12,7 +12,7 @@ "Secret key" : "Crae segreta", "Add client" : "Agiunghe cliente", "Add" : "Agiunghe", - "Delete" : "Cantzella", - "Show client secret" : "Mustra su segretu de su cliente" + "Show client secret" : "Mustra su segretu de su cliente", + "Delete" : "Cantzella" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/sk.js b/apps/oauth2/l10n/sk.js index b56886514d0..5bd63fde0ff 100644 --- a/apps/oauth2/l10n/sk.js +++ b/apps/oauth2/l10n/sk.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Uistite sa, že ste uložili tajný kľúč. Nedá sa obnoviť.", "Add client" : "Pridať klienta", "Add" : "Pridať", - "Delete" : "Zmazať", "Show client secret" : "Zobraziť tajomstvo klienta", - "Hide client secret" : "Skryť klienta" + "Hide client secret" : "Skryť klienta", + "Delete" : "Zmazať" }, "nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"); diff --git a/apps/oauth2/l10n/sk.json b/apps/oauth2/l10n/sk.json index 00fe072df91..f7f9ac19229 100644 --- a/apps/oauth2/l10n/sk.json +++ b/apps/oauth2/l10n/sk.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Uistite sa, že ste uložili tajný kľúč. Nedá sa obnoviť.", "Add client" : "Pridať klienta", "Add" : "Pridať", - "Delete" : "Zmazať", "Show client secret" : "Zobraziť tajomstvo klienta", - "Hide client secret" : "Skryť klienta" + "Hide client secret" : "Skryť klienta", + "Delete" : "Zmazať" },"pluralForm" :"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/sl.js b/apps/oauth2/l10n/sl.js index 935934b5595..5786c7d8b36 100644 --- a/apps/oauth2/l10n/sl.js +++ b/apps/oauth2/l10n/sl.js @@ -14,7 +14,7 @@ OC.L10N.register( "Secret key" : "Skrivni ključ", "Add client" : "Dodaj odjemalca", "Add" : "Dodaj", - "Delete" : "Izbriši", - "Show client secret" : "Pokaži skrivno kodo odjemalca" + "Show client secret" : "Pokaži skrivno kodo odjemalca", + "Delete" : "Izbriši" }, "nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"); diff --git a/apps/oauth2/l10n/sl.json b/apps/oauth2/l10n/sl.json index 7c1341ba1ec..a419d4c3263 100644 --- a/apps/oauth2/l10n/sl.json +++ b/apps/oauth2/l10n/sl.json @@ -12,7 +12,7 @@ "Secret key" : "Skrivni ključ", "Add client" : "Dodaj odjemalca", "Add" : "Dodaj", - "Delete" : "Izbriši", - "Show client secret" : "Pokaži skrivno kodo odjemalca" + "Show client secret" : "Pokaži skrivno kodo odjemalca", + "Delete" : "Izbriši" },"pluralForm" :"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/sr.js b/apps/oauth2/l10n/sr.js index a626c9e7f15..9ec881c1a2a 100644 --- a/apps/oauth2/l10n/sr.js +++ b/apps/oauth2/l10n/sr.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Сачувајте тајни кључ, нећете моћи поново да му приступите.", "Add client" : "Додај клијента", "Add" : "Додај", - "Delete" : "Обриши", "Show client secret" : "Прикажи клијентску лозинку", - "Hide client secret" : "Сакриј клијентску тајну" + "Hide client secret" : "Сакриј клијентску тајну", + "Delete" : "Обриши" }, "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"); diff --git a/apps/oauth2/l10n/sr.json b/apps/oauth2/l10n/sr.json index 08211bfdf2b..815e73ada5a 100644 --- a/apps/oauth2/l10n/sr.json +++ b/apps/oauth2/l10n/sr.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Сачувајте тајни кључ, нећете моћи поново да му приступите.", "Add client" : "Додај клијента", "Add" : "Додај", - "Delete" : "Обриши", "Show client secret" : "Прикажи клијентску лозинку", - "Hide client secret" : "Сакриј клијентску тајну" + "Hide client secret" : "Сакриј клијентску тајну", + "Delete" : "Обриши" },"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/sv.js b/apps/oauth2/l10n/sv.js index dbef6b09b48..4d55cf91c3a 100644 --- a/apps/oauth2/l10n/sv.js +++ b/apps/oauth2/l10n/sv.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Se till att du lagrar den hemliga nyckeln, den kan inte återställas.", "Add client" : "Lägg till klient", "Add" : "Lägg till", - "Delete" : "Ta bort", "Show client secret" : "Visa klienthemlighet", - "Hide client secret" : "Dölj klienthemlighet" + "Hide client secret" : "Dölj klienthemlighet", + "Delete" : "Ta bort" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/sv.json b/apps/oauth2/l10n/sv.json index f1cba5a8bfe..064e6923f96 100644 --- a/apps/oauth2/l10n/sv.json +++ b/apps/oauth2/l10n/sv.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Se till att du lagrar den hemliga nyckeln, den kan inte återställas.", "Add client" : "Lägg till klient", "Add" : "Lägg till", - "Delete" : "Ta bort", "Show client secret" : "Visa klienthemlighet", - "Hide client secret" : "Dölj klienthemlighet" + "Hide client secret" : "Dölj klienthemlighet", + "Delete" : "Ta bort" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/sw.js b/apps/oauth2/l10n/sw.js new file mode 100644 index 00000000000..44e346ffa4f --- /dev/null +++ b/apps/oauth2/l10n/sw.js @@ -0,0 +1,23 @@ +OC.L10N.register( + "oauth2", + { + "Your client is not authorized to connect. Please inform the administrator of your client." : "Mteja wako hajaidhinishwa kuunganisha. Tafadhali mjulishe msimamizi wa mteja wako.", + "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "URL yako ya kuelekeza kwingine inahitaji kuwa URL kamili kwa mfano: https://yourdomain.com/path", + "OAuth 2.0" : "OAuth 2.0", + "Allows OAuth2 compatible authentication from other web applications." : "Huruhusu uthibitishaji tangamanifu wa OAuth2 kutoka kwa programu zingine za wavuti.", + "The OAuth2 app allows administrators to configure the built-in authentication workflow to also allow OAuth2 compatible authentication from other web applications." : "Programu ya OAuth2 huruhusu wasimamizi kusanidi utendakazi wa uthibitishaji uliojengewa ndani ili kuruhusu pia uthibitishaji unaooana na OAuth2 kutoka kwa programu zingine za wavuti.", + "OAuth 2.0 clients" : "OAuth 2.0 clients", + "OAuth 2.0 allows external services to request access to {instanceName}." : "OAuth 2.0 inaruhusu huduma za nje kuomba ufikiaji {instanceName}.", + "Name" : "Jina", + "Redirection URI" : "URI ya kuelekeza kwingine", + "Client Identifier" : "Kitambulisho cha Mteja", + "Secret key" : "Ufunguo wa siri", + "Delete client" : "Futa mteja", + "Make sure you store the secret key, it cannot be recovered." : "Hakikisha umehifadhi ufunguo wa siri, hauwezi kurejeshwa.", + "Add client" : "Ongeza mteja", + "Add" : "Ongeza", + "Show client secret" : "Onyesha siri ya mteja", + "Hide client secret" : "Ficha siri ya mteja", + "Delete" : "Futa" +}, +"nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/sw.json b/apps/oauth2/l10n/sw.json new file mode 100644 index 00000000000..0bdbdd3a440 --- /dev/null +++ b/apps/oauth2/l10n/sw.json @@ -0,0 +1,21 @@ +{ "translations": { + "Your client is not authorized to connect. Please inform the administrator of your client." : "Mteja wako hajaidhinishwa kuunganisha. Tafadhali mjulishe msimamizi wa mteja wako.", + "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "URL yako ya kuelekeza kwingine inahitaji kuwa URL kamili kwa mfano: https://yourdomain.com/path", + "OAuth 2.0" : "OAuth 2.0", + "Allows OAuth2 compatible authentication from other web applications." : "Huruhusu uthibitishaji tangamanifu wa OAuth2 kutoka kwa programu zingine za wavuti.", + "The OAuth2 app allows administrators to configure the built-in authentication workflow to also allow OAuth2 compatible authentication from other web applications." : "Programu ya OAuth2 huruhusu wasimamizi kusanidi utendakazi wa uthibitishaji uliojengewa ndani ili kuruhusu pia uthibitishaji unaooana na OAuth2 kutoka kwa programu zingine za wavuti.", + "OAuth 2.0 clients" : "OAuth 2.0 clients", + "OAuth 2.0 allows external services to request access to {instanceName}." : "OAuth 2.0 inaruhusu huduma za nje kuomba ufikiaji {instanceName}.", + "Name" : "Jina", + "Redirection URI" : "URI ya kuelekeza kwingine", + "Client Identifier" : "Kitambulisho cha Mteja", + "Secret key" : "Ufunguo wa siri", + "Delete client" : "Futa mteja", + "Make sure you store the secret key, it cannot be recovered." : "Hakikisha umehifadhi ufunguo wa siri, hauwezi kurejeshwa.", + "Add client" : "Ongeza mteja", + "Add" : "Ongeza", + "Show client secret" : "Onyesha siri ya mteja", + "Hide client secret" : "Ficha siri ya mteja", + "Delete" : "Futa" +},"pluralForm" :"nplurals=2; plural=(n != 1);" +}
\ No newline at end of file diff --git a/apps/oauth2/l10n/tr.js b/apps/oauth2/l10n/tr.js index 4c725997e20..eb672477de8 100644 --- a/apps/oauth2/l10n/tr.js +++ b/apps/oauth2/l10n/tr.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "Yeniden öğrenilemeyeceği için gizli anahtarı kaydettiğinizden emin olun.", "Add client" : "İstemci ekle", "Add" : "Ekle", - "Delete" : "Sil", "Show client secret" : "İstemci parolasını görüntüle", - "Hide client secret" : "İstemci parolasını gizle" + "Hide client secret" : "İstemci parolasını gizle", + "Delete" : "Sil" }, "nplurals=2; plural=(n > 1);"); diff --git a/apps/oauth2/l10n/tr.json b/apps/oauth2/l10n/tr.json index a8499a79d98..ec9e8fc1e83 100644 --- a/apps/oauth2/l10n/tr.json +++ b/apps/oauth2/l10n/tr.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "Yeniden öğrenilemeyeceği için gizli anahtarı kaydettiğinizden emin olun.", "Add client" : "İstemci ekle", "Add" : "Ekle", - "Delete" : "Sil", "Show client secret" : "İstemci parolasını görüntüle", - "Hide client secret" : "İstemci parolasını gizle" + "Hide client secret" : "İstemci parolasını gizle", + "Delete" : "Sil" },"pluralForm" :"nplurals=2; plural=(n > 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/ug.js b/apps/oauth2/l10n/ug.js index ad43aae3a1c..89db1a948ef 100644 --- a/apps/oauth2/l10n/ug.js +++ b/apps/oauth2/l10n/ug.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "مەخپىي ئاچقۇچنى ساقلىغانلىقىڭىزنى جەزملەشتۈرۈڭ ، ئەسلىگە كەلتۈرگىلى بولمايدۇ.", "Add client" : "خېرىدار قوشۇڭ", "Add" : "قوش", - "Delete" : "ئۆچۈر", "Show client secret" : "خېرىدارلارنىڭ مەخپىيىتىنى كۆرسىتىڭ", - "Hide client secret" : "خېرىدارلارنىڭ مەخپىيىتىنى يوشۇرۇش" + "Hide client secret" : "خېرىدارلارنىڭ مەخپىيىتىنى يوشۇرۇش", + "Delete" : "ئۆچۈر" }, "nplurals=2; plural=(n != 1);"); diff --git a/apps/oauth2/l10n/ug.json b/apps/oauth2/l10n/ug.json index 37d58a4bb17..4dac11f85c2 100644 --- a/apps/oauth2/l10n/ug.json +++ b/apps/oauth2/l10n/ug.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "مەخپىي ئاچقۇچنى ساقلىغانلىقىڭىزنى جەزملەشتۈرۈڭ ، ئەسلىگە كەلتۈرگىلى بولمايدۇ.", "Add client" : "خېرىدار قوشۇڭ", "Add" : "قوش", - "Delete" : "ئۆچۈر", "Show client secret" : "خېرىدارلارنىڭ مەخپىيىتىنى كۆرسىتىڭ", - "Hide client secret" : "خېرىدارلارنىڭ مەخپىيىتىنى يوشۇرۇش" + "Hide client secret" : "خېرىدارلارنىڭ مەخپىيىتىنى يوشۇرۇش", + "Delete" : "ئۆچۈر" },"pluralForm" :"nplurals=2; plural=(n != 1);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/uk.js b/apps/oauth2/l10n/uk.js index 4debfe12478..8c3b6433b20 100644 --- a/apps/oauth2/l10n/uk.js +++ b/apps/oauth2/l10n/uk.js @@ -13,10 +13,11 @@ OC.L10N.register( "Client Identifier" : "Ідентифікатор клієнта", "Secret key" : "Пароль", "Delete client" : "Вилучити клієнта", + "Make sure you store the secret key, it cannot be recovered." : "Обов'язково збережіть секретний ключ, його неможливо відновити.", "Add client" : "Додати клієнта", "Add" : "Додати", - "Delete" : "Вилучити", "Show client secret" : "Показати ключ клієнта", - "Hide client secret" : "Приховати ключ клієнта" + "Hide client secret" : "Приховати ключ клієнта", + "Delete" : "Вилучити" }, "nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"); diff --git a/apps/oauth2/l10n/uk.json b/apps/oauth2/l10n/uk.json index 3f73defb2d2..ad7906e1795 100644 --- a/apps/oauth2/l10n/uk.json +++ b/apps/oauth2/l10n/uk.json @@ -11,10 +11,11 @@ "Client Identifier" : "Ідентифікатор клієнта", "Secret key" : "Пароль", "Delete client" : "Вилучити клієнта", + "Make sure you store the secret key, it cannot be recovered." : "Обов'язково збережіть секретний ключ, його неможливо відновити.", "Add client" : "Додати клієнта", "Add" : "Додати", - "Delete" : "Вилучити", "Show client secret" : "Показати ключ клієнта", - "Hide client secret" : "Приховати ключ клієнта" + "Hide client secret" : "Приховати ключ клієнта", + "Delete" : "Вилучити" },"pluralForm" :"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/vi.js b/apps/oauth2/l10n/vi.js index e752fb782ce..3800d4efd5f 100644 --- a/apps/oauth2/l10n/vi.js +++ b/apps/oauth2/l10n/vi.js @@ -13,7 +13,7 @@ OC.L10N.register( "Client Identifier" : "Mã định danh ứng dụng khách", "Add client" : "Thêm kết nối", "Add" : "Thêm", - "Delete" : "Xóa", - "Show client secret" : "Hiện bí mật ứng dụng khách" + "Show client secret" : "Hiện bí mật ứng dụng khách", + "Delete" : "Xóa" }, "nplurals=1; plural=0;"); diff --git a/apps/oauth2/l10n/vi.json b/apps/oauth2/l10n/vi.json index 7b9b6b6c638..c845ec0e30d 100644 --- a/apps/oauth2/l10n/vi.json +++ b/apps/oauth2/l10n/vi.json @@ -11,7 +11,7 @@ "Client Identifier" : "Mã định danh ứng dụng khách", "Add client" : "Thêm kết nối", "Add" : "Thêm", - "Delete" : "Xóa", - "Show client secret" : "Hiện bí mật ứng dụng khách" + "Show client secret" : "Hiện bí mật ứng dụng khách", + "Delete" : "Xóa" },"pluralForm" :"nplurals=1; plural=0;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/zh_CN.js b/apps/oauth2/l10n/zh_CN.js index 95e9525a23b..5f2ee894089 100644 --- a/apps/oauth2/l10n/zh_CN.js +++ b/apps/oauth2/l10n/zh_CN.js @@ -11,11 +11,13 @@ OC.L10N.register( "Name" : "名称", "Redirection URI" : "跳转URI", "Client Identifier" : "客户端标识", - "Secret key" : "Secret key", + "Secret key" : "密钥", "Delete client" : "删除客户端", + "Make sure you store the secret key, it cannot be recovered." : "请确保您存储了密钥,它无法恢复。", "Add client" : "添加客户端", "Add" : "添加", - "Delete" : "删除", - "Show client secret" : "显示客户端 secret" + "Show client secret" : "显示客户端密钥", + "Hide client secret" : "隐藏客户端密钥", + "Delete" : "删除" }, "nplurals=1; plural=0;"); diff --git a/apps/oauth2/l10n/zh_CN.json b/apps/oauth2/l10n/zh_CN.json index 3140760a49c..4b1c4270e48 100644 --- a/apps/oauth2/l10n/zh_CN.json +++ b/apps/oauth2/l10n/zh_CN.json @@ -9,11 +9,13 @@ "Name" : "名称", "Redirection URI" : "跳转URI", "Client Identifier" : "客户端标识", - "Secret key" : "Secret key", + "Secret key" : "密钥", "Delete client" : "删除客户端", + "Make sure you store the secret key, it cannot be recovered." : "请确保您存储了密钥,它无法恢复。", "Add client" : "添加客户端", "Add" : "添加", - "Delete" : "删除", - "Show client secret" : "显示客户端 secret" + "Show client secret" : "显示客户端密钥", + "Hide client secret" : "隐藏客户端密钥", + "Delete" : "删除" },"pluralForm" :"nplurals=1; plural=0;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/zh_HK.js b/apps/oauth2/l10n/zh_HK.js index 66ca16427f1..727019e492c 100644 --- a/apps/oauth2/l10n/zh_HK.js +++ b/apps/oauth2/l10n/zh_HK.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "請確保妥善保存密鑰,因為它無法復得。", "Add client" : "新增第三方應用程式", "Add" : "新增", - "Delete" : "刪除", "Show client secret" : "顯示客戶端密碼", - "Hide client secret" : "隱藏客戶端密碼" + "Hide client secret" : "隱藏客戶端密碼", + "Delete" : "刪除" }, "nplurals=1; plural=0;"); diff --git a/apps/oauth2/l10n/zh_HK.json b/apps/oauth2/l10n/zh_HK.json index 02e05557370..1773d8ec559 100644 --- a/apps/oauth2/l10n/zh_HK.json +++ b/apps/oauth2/l10n/zh_HK.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "請確保妥善保存密鑰,因為它無法復得。", "Add client" : "新增第三方應用程式", "Add" : "新增", - "Delete" : "刪除", "Show client secret" : "顯示客戶端密碼", - "Hide client secret" : "隱藏客戶端密碼" + "Hide client secret" : "隱藏客戶端密碼", + "Delete" : "刪除" },"pluralForm" :"nplurals=1; plural=0;" }
\ No newline at end of file diff --git a/apps/oauth2/l10n/zh_TW.js b/apps/oauth2/l10n/zh_TW.js index 1f1df2a3e20..e61fe31d36b 100644 --- a/apps/oauth2/l10n/zh_TW.js +++ b/apps/oauth2/l10n/zh_TW.js @@ -16,8 +16,8 @@ OC.L10N.register( "Make sure you store the secret key, it cannot be recovered." : "請確定您儲存了私鑰,其無法還原。", "Add client" : "新增客戶端", "Add" : "新增", - "Delete" : "刪除", "Show client secret" : "顯示客戶端密碼", - "Hide client secret" : "隱藏客戶端密碼" + "Hide client secret" : "隱藏客戶端密碼", + "Delete" : "刪除" }, "nplurals=1; plural=0;"); diff --git a/apps/oauth2/l10n/zh_TW.json b/apps/oauth2/l10n/zh_TW.json index c84ef9b938f..ba0a879f152 100644 --- a/apps/oauth2/l10n/zh_TW.json +++ b/apps/oauth2/l10n/zh_TW.json @@ -14,8 +14,8 @@ "Make sure you store the secret key, it cannot be recovered." : "請確定您儲存了私鑰,其無法還原。", "Add client" : "新增客戶端", "Add" : "新增", - "Delete" : "刪除", "Show client secret" : "顯示客戶端密碼", - "Hide client secret" : "隱藏客戶端密碼" + "Hide client secret" : "隱藏客戶端密碼", + "Delete" : "刪除" },"pluralForm" :"nplurals=1; plural=0;" }
\ No newline at end of file diff --git a/apps/oauth2/lib/Command/ImportLegacyOcClient.php b/apps/oauth2/lib/Command/ImportLegacyOcClient.php new file mode 100644 index 00000000000..acdc57cf991 --- /dev/null +++ b/apps/oauth2/lib/Command/ImportLegacyOcClient.php @@ -0,0 +1,76 @@ +<?php + +declare(strict_types=1); + +/** + * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ + +namespace OCA\OAuth2\Command; + +use OCA\OAuth2\Db\Client; +use OCA\OAuth2\Db\ClientMapper; +use OCP\IConfig; +use OCP\Security\ICrypto; +use Symfony\Component\Console\Command\Command; +use Symfony\Component\Console\Input\InputArgument; +use Symfony\Component\Console\Input\InputInterface; +use Symfony\Component\Console\Output\OutputInterface; + +class ImportLegacyOcClient extends Command { + private const ARGUMENT_CLIENT_ID = 'client-id'; + private const ARGUMENT_CLIENT_SECRET = 'client-secret'; + + public function __construct( + private readonly IConfig $config, + private readonly ICrypto $crypto, + private readonly ClientMapper $clientMapper, + ) { + parent::__construct(); + } + + protected function configure(): void { + $this->setName('oauth2:import-legacy-oc-client'); + $this->setDescription('This command is only required to be run on instances which were migrated from ownCloud without the oauth2.enable_oc_clients system config! Import a legacy Oauth2 client from an ownCloud instance and migrate it. The data is expected to be straight out of the database table oc_oauth2_clients.'); + $this->addArgument( + self::ARGUMENT_CLIENT_ID, + InputArgument::REQUIRED, + 'Value of the "identifier" column', + ); + $this->addArgument( + self::ARGUMENT_CLIENT_SECRET, + InputArgument::REQUIRED, + 'Value of the "secret" column', + ); + } + + public function isEnabled(): bool { + return $this->config->getSystemValueBool('oauth2.enable_oc_clients', false); + } + + protected function execute(InputInterface $input, OutputInterface $output): int { + /** @var string $clientId */ + $clientId = $input->getArgument(self::ARGUMENT_CLIENT_ID); + + /** @var string $clientSecret */ + $clientSecret = $input->getArgument(self::ARGUMENT_CLIENT_SECRET); + + // Should not happen but just to be sure + if (empty($clientId) || empty($clientSecret)) { + return 1; + } + + $hashedClientSecret = bin2hex($this->crypto->calculateHMAC($clientSecret)); + + $client = new Client(); + $client->setName('ownCloud Desktop Client'); + $client->setRedirectUri('http://localhost:*'); + $client->setClientIdentifier($clientId); + $client->setSecret($hashedClientSecret); + $this->clientMapper->insert($client); + + $output->writeln('<info>Client imported successfully</info>'); + return 0; + } +} diff --git a/apps/oauth2/lib/Controller/LoginRedirectorController.php b/apps/oauth2/lib/Controller/LoginRedirectorController.php index db233e7956e..7241b35cdcf 100644 --- a/apps/oauth2/lib/Controller/LoginRedirectorController.php +++ b/apps/oauth2/lib/Controller/LoginRedirectorController.php @@ -20,6 +20,7 @@ use OCP\AppFramework\Http\Attribute\UseSession; use OCP\AppFramework\Http\RedirectResponse; use OCP\AppFramework\Http\TemplateResponse; use OCP\IAppConfig; +use OCP\IConfig; use OCP\IL10N; use OCP\IRequest; use OCP\ISession; @@ -45,6 +46,7 @@ class LoginRedirectorController extends Controller { private IL10N $l, private ISecureRandom $random, private IAppConfig $appConfig, + private IConfig $config, ) { parent::__construct($appName, $request); } @@ -55,6 +57,7 @@ class LoginRedirectorController extends Controller { * @param string $client_id Client ID * @param string $state State of the flow * @param string $response_type Response type for the flow + * @param string $redirect_uri URI to redirect to after the flow (is only used for legacy ownCloud clients) * @return TemplateResponse<Http::STATUS_OK, array{}>|RedirectResponse<Http::STATUS_SEE_OTHER, array{}> * * 200: Client not found @@ -65,7 +68,8 @@ class LoginRedirectorController extends Controller { #[UseSession] public function authorize($client_id, $state, - $response_type): TemplateResponse|RedirectResponse { + $response_type, + string $redirect_uri = ''): TemplateResponse|RedirectResponse { try { $client = $this->clientMapper->getByIdentifier($client_id); } catch (ClientNotFoundException $e) { @@ -81,6 +85,13 @@ class LoginRedirectorController extends Controller { return new RedirectResponse($url); } + $enableOcClients = $this->config->getSystemValueBool('oauth2.enable_oc_clients', false); + + $providedRedirectUri = ''; + if ($enableOcClients && $client->getRedirectUri() === 'http://localhost:*') { + $providedRedirectUri = $redirect_uri; + } + $this->session->set('oauth.state', $state); if (in_array($client->getName(), $this->appConfig->getValueArray('oauth2', 'skipAuthPickerApplications', []))) { @@ -95,6 +106,7 @@ class LoginRedirectorController extends Controller { [ 'stateToken' => $stateToken, 'clientIdentifier' => $client->getClientIdentifier(), + 'providedRedirectUri' => $providedRedirectUri, ] ); } else { @@ -102,6 +114,7 @@ class LoginRedirectorController extends Controller { 'core.ClientFlowLogin.showAuthPickerPage', [ 'clientIdentifier' => $client->getClientIdentifier(), + 'providedRedirectUri' => $providedRedirectUri, ] ); } diff --git a/apps/oauth2/lib/Db/AccessToken.php b/apps/oauth2/lib/Db/AccessToken.php index f9c0e6de51e..34adc4f4797 100644 --- a/apps/oauth2/lib/Db/AccessToken.php +++ b/apps/oauth2/lib/Db/AccessToken.php @@ -1,4 +1,5 @@ <?php + /** * SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later diff --git a/apps/oauth2/lib/Db/Client.php b/apps/oauth2/lib/Db/Client.php index 458d85b24ab..8fce0040c96 100644 --- a/apps/oauth2/lib/Db/Client.php +++ b/apps/oauth2/lib/Db/Client.php @@ -1,4 +1,5 @@ <?php + /** * SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later diff --git a/apps/oauth2/openapi.json b/apps/oauth2/openapi.json index cdf52de3f5e..76cd2da3150 100644 --- a/apps/oauth2/openapi.json +++ b/apps/oauth2/openapi.json @@ -65,6 +65,15 @@ "schema": { "type": "string" } + }, + { + "name": "redirect_uri", + "in": "query", + "description": "URI to redirect to after the flow (is only used for legacy ownCloud clients)", + "schema": { + "type": "string", + "default": "" + } } ], "responses": { diff --git a/apps/oauth2/src/App.vue b/apps/oauth2/src/App.vue index a6aca19bbfa..941317a3e64 100644 --- a/apps/oauth2/src/App.vue +++ b/apps/oauth2/src/App.vue @@ -68,11 +68,11 @@ import axios from '@nextcloud/axios' import OAuthItem from './components/OAuthItem.vue' import { generateUrl } from '@nextcloud/router' import { getCapabilities } from '@nextcloud/capabilities' -import NcSettingsSection from '@nextcloud/vue/dist/Components/NcSettingsSection.js' -import NcButton from '@nextcloud/vue/dist/Components/NcButton.js' -import NcNoteCard from '@nextcloud/vue/dist/Components/NcNoteCard.js' +import NcSettingsSection from '@nextcloud/vue/components/NcSettingsSection' +import NcButton from '@nextcloud/vue/components/NcButton' +import NcNoteCard from '@nextcloud/vue/components/NcNoteCard' import { loadState } from '@nextcloud/initial-state' -import NcTextField from '@nextcloud/vue/dist/Components/NcTextField.js' +import NcTextField from '@nextcloud/vue/components/NcTextField' export default { name: 'App', diff --git a/apps/oauth2/src/components/OAuthItem.vue b/apps/oauth2/src/components/OAuthItem.vue index e9265b48564..5a8f1556203 100644 --- a/apps/oauth2/src/components/OAuthItem.vue +++ b/apps/oauth2/src/components/OAuthItem.vue @@ -35,9 +35,9 @@ <script> -import Delete from 'vue-material-design-icons/Delete.vue' +import Delete from 'vue-material-design-icons/DeleteOutline.vue' import EyeOutline from 'vue-material-design-icons/EyeOutline.vue' -import NcButton from '@nextcloud/vue/dist/Components/NcButton.js' +import NcButton from '@nextcloud/vue/components/NcButton' export default { name: 'OAuthItem', diff --git a/apps/oauth2/templates/admin.php b/apps/oauth2/templates/admin.php index 3f6f879b7e1..844eeee2c08 100644 --- a/apps/oauth2/templates/admin.php +++ b/apps/oauth2/templates/admin.php @@ -4,7 +4,7 @@ * SPDX-License-Identifier: AGPL-3.0-or-later */ -script('oauth2', 'oauth2'); +\OCP\Util::addScript('oauth2', 'oauth2', 'core'); ?> diff --git a/apps/oauth2/tests/Controller/LoginRedirectorControllerTest.php b/apps/oauth2/tests/Controller/LoginRedirectorControllerTest.php index afa5aae4f07..04ac0bfbd28 100644 --- a/apps/oauth2/tests/Controller/LoginRedirectorControllerTest.php +++ b/apps/oauth2/tests/Controller/LoginRedirectorControllerTest.php @@ -1,4 +1,5 @@ <?php + /** * SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later @@ -13,6 +14,7 @@ use OCA\OAuth2\Exceptions\ClientNotFoundException; use OCP\AppFramework\Http\RedirectResponse; use OCP\AppFramework\Http\TemplateResponse; use OCP\IAppConfig; +use OCP\IConfig; use OCP\IL10N; use OCP\IRequest; use OCP\ISession; @@ -32,6 +34,7 @@ class LoginRedirectorControllerTest extends TestCase { private IL10N&MockObject $l; private ISecureRandom&MockObject $random; private IAppConfig&MockObject $appConfig; + private IConfig&MockObject $config; private LoginRedirectorController $loginRedirectorController; @@ -45,6 +48,7 @@ class LoginRedirectorControllerTest extends TestCase { $this->l = $this->createMock(IL10N::class); $this->random = $this->createMock(ISecureRandom::class); $this->appConfig = $this->createMock(IAppConfig::class); + $this->config = $this->createMock(IConfig::class); $this->loginRedirectorController = new LoginRedirectorController( 'oauth2', @@ -55,6 +59,7 @@ class LoginRedirectorControllerTest extends TestCase { $this->l, $this->random, $this->appConfig, + $this->config, ); } @@ -77,9 +82,15 @@ class LoginRedirectorControllerTest extends TestCase { 'core.ClientFlowLogin.showAuthPickerPage', [ 'clientIdentifier' => 'MyClientIdentifier', + 'providedRedirectUri' => '', ] ) ->willReturn('https://example.com/?clientIdentifier=foo'); + $this->config + ->expects($this->once()) + ->method('getSystemValueBool') + ->with('oauth2.enable_oc_clients', false) + ->willReturn(false); $expected = new RedirectResponse('https://example.com/?clientIdentifier=foo'); $this->assertEquals($expected, $this->loginRedirectorController->authorize('MyClientId', 'MyState', 'code')); @@ -124,9 +135,15 @@ class LoginRedirectorControllerTest extends TestCase { [ 'stateToken' => 'MyStateToken', 'clientIdentifier' => 'MyClientIdentifier', + 'providedRedirectUri' => '', ] ) ->willReturn('https://example.com/?clientIdentifier=foo'); + $this->config + ->expects($this->once()) + ->method('getSystemValueBool') + ->with('oauth2.enable_oc_clients', false) + ->willReturn(false); $expected = new RedirectResponse('https://example.com/?clientIdentifier=foo'); $this->assertEquals($expected, $this->loginRedirectorController->authorize('MyClientId', 'MyState', 'code')); @@ -150,6 +167,74 @@ class LoginRedirectorControllerTest extends TestCase { $this->assertEquals($expected, $this->loginRedirectorController->authorize('MyClientId', 'MyState', 'wrongcode')); } + public function testAuthorizeWithLegacyOcClient(): void { + $client = new Client(); + $client->setClientIdentifier('MyClientIdentifier'); + $client->setRedirectUri('http://localhost:*'); + $this->clientMapper + ->expects($this->once()) + ->method('getByIdentifier') + ->with('MyClientId') + ->willReturn($client); + $this->session + ->expects($this->once()) + ->method('set') + ->with('oauth.state', 'MyState'); + $this->urlGenerator + ->expects($this->once()) + ->method('linkToRouteAbsolute') + ->with( + 'core.ClientFlowLogin.showAuthPickerPage', + [ + 'clientIdentifier' => 'MyClientIdentifier', + 'providedRedirectUri' => 'http://localhost:30000', + ] + ) + ->willReturn('https://example.com/?clientIdentifier=foo&providedRedirectUri=http://localhost:30000'); + $this->config + ->expects($this->once()) + ->method('getSystemValueBool') + ->with('oauth2.enable_oc_clients', false) + ->willReturn(true); + + $expected = new RedirectResponse('https://example.com/?clientIdentifier=foo&providedRedirectUri=http://localhost:30000'); + $this->assertEquals($expected, $this->loginRedirectorController->authorize('MyClientId', 'MyState', 'code', 'http://localhost:30000')); + } + + public function testAuthorizeNotForwardingUntrustedURIs(): void { + $client = new Client(); + $client->setClientIdentifier('MyClientIdentifier'); + $this->clientMapper + ->expects($this->once()) + ->method('getByIdentifier') + ->with('MyClientId') + ->willReturn($client); + $this->session + ->expects($this->once()) + ->method('set') + ->with('oauth.state', 'MyState'); + $this->urlGenerator + ->expects($this->once()) + ->method('linkToRouteAbsolute') + ->with( + 'core.ClientFlowLogin.showAuthPickerPage', + [ + 'clientIdentifier' => 'MyClientIdentifier', + 'providedRedirectUri' => '', + ] + ) + ->willReturn('https://example.com/?clientIdentifier=foo'); + $this->config + ->expects($this->once()) + ->method('getSystemValueBool') + ->with('oauth2.enable_oc_clients', false) + ->willReturn(false); + + $expected = new RedirectResponse('https://example.com/?clientIdentifier=foo'); + $this->assertEquals($expected, $this->loginRedirectorController->authorize('MyClientId', 'MyState', 'code', 'http://untrusted-uri.com')); + } + + public function testClientNotFound(): void { $clientNotFound = new ClientNotFoundException('could not find client test123', 0); $this->clientMapper diff --git a/apps/oauth2/tests/Controller/OauthApiControllerTest.php b/apps/oauth2/tests/Controller/OauthApiControllerTest.php index 8d13265ec9e..53dd8549196 100644 --- a/apps/oauth2/tests/Controller/OauthApiControllerTest.php +++ b/apps/oauth2/tests/Controller/OauthApiControllerTest.php @@ -1,4 +1,5 @@ <?php + /** * SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later @@ -222,7 +223,7 @@ class OauthApiControllerTest extends TestCase { $this->assertEquals($expected, $this->oauthApiController->getToken('refresh_token', null, 'validrefresh', null, null)); } - public function invalidClientProvider() { + public static function invalidClientProvider() { return [ ['invalidClientId', 'invalidClientSecret'], ['clientId', 'invalidClientSecret'], @@ -231,11 +232,11 @@ class OauthApiControllerTest extends TestCase { } /** - * @dataProvider invalidClientProvider * * @param string $clientId * @param string $clientSecret */ + #[\PHPUnit\Framework\Attributes\DataProvider('invalidClientProvider')] public function testRefreshTokenInvalidClient($clientId, $clientSecret): void { $expected = new JSONResponse([ 'error' => 'invalid_client', @@ -382,8 +383,8 @@ class OauthApiControllerTest extends TestCase { ->method('update') ->with( $this->callback(function (AccessToken $token) { - return $token->getHashedCode() === hash('sha512', 'random128') && - $token->getEncryptedToken() === 'newEncryptedToken'; + return $token->getHashedCode() === hash('sha512', 'random128') + && $token->getEncryptedToken() === 'newEncryptedToken'; }) ); @@ -478,8 +479,8 @@ class OauthApiControllerTest extends TestCase { ->method('update') ->with( $this->callback(function (AccessToken $token) { - return $token->getHashedCode() === hash('sha512', 'random128') && - $token->getEncryptedToken() === 'newEncryptedToken'; + return $token->getHashedCode() === hash('sha512', 'random128') + && $token->getEncryptedToken() === 'newEncryptedToken'; }) ); @@ -577,8 +578,8 @@ class OauthApiControllerTest extends TestCase { ->method('update') ->with( $this->callback(function (AccessToken $token) { - return $token->getHashedCode() === hash('sha512', 'random128') && - $token->getEncryptedToken() === 'newEncryptedToken'; + return $token->getHashedCode() === hash('sha512', 'random128') + && $token->getEncryptedToken() === 'newEncryptedToken'; }) ); diff --git a/apps/oauth2/tests/Controller/SettingsControllerTest.php b/apps/oauth2/tests/Controller/SettingsControllerTest.php index 5b8a57a4062..030a220e3d7 100644 --- a/apps/oauth2/tests/Controller/SettingsControllerTest.php +++ b/apps/oauth2/tests/Controller/SettingsControllerTest.php @@ -1,4 +1,5 @@ <?php + /** * SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later @@ -18,6 +19,7 @@ use OCP\IUser; use OCP\IUserManager; use OCP\Security\ICrypto; use OCP\Security\ISecureRandom; +use OCP\Server; use Test\TestCase; /** @@ -94,10 +96,10 @@ class SettingsControllerTest extends TestCase { ->expects($this->once()) ->method('insert') ->with($this->callback(function (Client $c) { - return $c->getName() === 'My Client Name' && - $c->getRedirectUri() === 'https://example.com/' && - $c->getSecret() === bin2hex('MyHashedSecret') && - $c->getClientIdentifier() === 'MyClientIdentifier'; + return $c->getName() === 'My Client Name' + && $c->getRedirectUri() === 'https://example.com/' + && $c->getSecret() === bin2hex('MyHashedSecret') + && $c->getClientIdentifier() === 'MyClientIdentifier'; }))->willReturnCallback(function (Client $c) { $c->setId(42); return $c; @@ -119,7 +121,7 @@ class SettingsControllerTest extends TestCase { public function testDeleteClient(): void { - $userManager = \OC::$server->getUserManager(); + $userManager = Server::get(IUserManager::class); // count other users in the db before adding our own $count = 0; $function = function (IUser $user) use (&$count): void { diff --git a/apps/oauth2/tests/Db/AccessTokenMapperTest.php b/apps/oauth2/tests/Db/AccessTokenMapperTest.php index d1d595ef003..41a79fe725b 100644 --- a/apps/oauth2/tests/Db/AccessTokenMapperTest.php +++ b/apps/oauth2/tests/Db/AccessTokenMapperTest.php @@ -1,4 +1,5 @@ <?php + /** * SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later @@ -9,6 +10,8 @@ use OCA\OAuth2\Db\AccessToken; use OCA\OAuth2\Db\AccessTokenMapper; use OCA\OAuth2\Exceptions\AccessTokenNotFoundException; use OCP\AppFramework\Utility\ITimeFactory; +use OCP\IDBConnection; +use OCP\Server; use Test\TestCase; /** @@ -20,7 +23,7 @@ class AccessTokenMapperTest extends TestCase { protected function setUp(): void { parent::setUp(); - $this->accessTokenMapper = new AccessTokenMapper(\OC::$server->getDatabaseConnection(), \OC::$server->get(ITimeFactory::class)); + $this->accessTokenMapper = new AccessTokenMapper(Server::get(IDBConnection::class), Server::get(ITimeFactory::class)); } public function testGetByCode(): void { diff --git a/apps/oauth2/tests/Db/ClientMapperTest.php b/apps/oauth2/tests/Db/ClientMapperTest.php index 7c11470d096..2e8d20ad200 100644 --- a/apps/oauth2/tests/Db/ClientMapperTest.php +++ b/apps/oauth2/tests/Db/ClientMapperTest.php @@ -1,4 +1,5 @@ <?php + /** * SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later @@ -8,6 +9,8 @@ namespace OCA\OAuth2\Tests\Db; use OCA\OAuth2\Db\Client; use OCA\OAuth2\Db\ClientMapper; use OCA\OAuth2\Exceptions\ClientNotFoundException; +use OCP\IDBConnection; +use OCP\Server; use Test\TestCase; /** @@ -19,11 +22,11 @@ class ClientMapperTest extends TestCase { protected function setUp(): void { parent::setUp(); - $this->clientMapper = new ClientMapper(\OC::$server->getDatabaseConnection()); + $this->clientMapper = new ClientMapper(Server::get(IDBConnection::class)); } protected function tearDown(): void { - $query = \OC::$server->getDatabaseConnection()->getQueryBuilder(); + $query = Server::get(IDBConnection::class)->getQueryBuilder(); $query->delete('oauth2_clients')->execute(); parent::tearDown(); diff --git a/apps/oauth2/tests/Settings/AdminTest.php b/apps/oauth2/tests/Settings/AdminTest.php index ca9100669df..0f08bb30276 100644 --- a/apps/oauth2/tests/Settings/AdminTest.php +++ b/apps/oauth2/tests/Settings/AdminTest.php @@ -1,4 +1,5 @@ <?php + /** * SPDX-FileCopyrightText: 2017 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-or-later |