doorkeeper-i18n 2.0.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +54 -0
- data/doorkeeper-i18n.gemspec +3 -1
- data/lib/doorkeeper-i18n.rb +1 -4
- data/lib/doorkeeper-i18n/railtie.rb +26 -0
- data/log/development.log +0 -0
- data/{config → rails}/locales/en.yml +4 -32
- data/rails/locales/es.yml +123 -0
- data/rails/locales/fr.yml +123 -0
- data/rails/locales/it.yml +123 -0
- data/rails/locales/ja.yml +123 -0
- data/rails/locales/pt-BR.yml +123 -0
- data/rails/locales/zh-CN.yml +123 -0
- data/{config → rails}/locales/zh-TW.yml +3 -31
- data/spec/doorkeeper-i18n_spec.rb +2 -2
- data/spec/locale_loading_spec.rb +68 -0
- data/spec/spec_helper.rb +2 -0
- data/spec/support/fake_app.rb +45 -0
- metadata +43 -5
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: df9be82be747aa8e30c336b02ffa5ce6ce1761ef
|
|
4
|
+
data.tar.gz: 7bfc5ffa7c90d193a63246e2ba7ab0bb0b8ef975
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 1b17e5c15a983c16f02d4056d0e61cd1a9031bcf657a68e59e63ae0aa5265c65bd7fcffc43e123995c3626d70f97812f16900b0092562b128169abbb1f90db6b
|
|
7
|
+
data.tar.gz: 920d5f151d077984f84e9153dfe65396d09f3d81a19da4b3ade24e06c7df8a4f9afa890ba4717be59208b228d22e2b4aafd8199b3c52e10abfb902e7978d559c
|
data/Gemfile.lock
CHANGED
|
@@ -6,12 +6,57 @@ PATH
|
|
|
6
6
|
GEM
|
|
7
7
|
remote: http://rubygems.org/
|
|
8
8
|
specs:
|
|
9
|
+
actionpack (4.2.5)
|
|
10
|
+
actionview (= 4.2.5)
|
|
11
|
+
activesupport (= 4.2.5)
|
|
12
|
+
rack (~> 1.6)
|
|
13
|
+
rack-test (~> 0.6.2)
|
|
14
|
+
rails-dom-testing (~> 1.0, >= 1.0.5)
|
|
15
|
+
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
|
16
|
+
actionview (4.2.5)
|
|
17
|
+
activesupport (= 4.2.5)
|
|
18
|
+
builder (~> 3.1)
|
|
19
|
+
erubis (~> 2.7.0)
|
|
20
|
+
rails-dom-testing (~> 1.0, >= 1.0.5)
|
|
21
|
+
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
|
22
|
+
activesupport (4.2.5)
|
|
23
|
+
i18n (~> 0.7)
|
|
24
|
+
json (~> 1.7, >= 1.7.7)
|
|
25
|
+
minitest (~> 5.1)
|
|
26
|
+
thread_safe (~> 0.3, >= 0.3.4)
|
|
27
|
+
tzinfo (~> 1.1)
|
|
28
|
+
builder (3.2.2)
|
|
9
29
|
diff-lcs (1.2.5)
|
|
30
|
+
erubis (2.7.0)
|
|
10
31
|
i18n (0.7.0)
|
|
11
32
|
i18n-spec (0.6.0)
|
|
12
33
|
iso
|
|
13
34
|
iso (0.2.1)
|
|
14
35
|
i18n
|
|
36
|
+
json (1.8.3)
|
|
37
|
+
loofah (2.0.3)
|
|
38
|
+
nokogiri (>= 1.5.9)
|
|
39
|
+
mini_portile (0.6.2)
|
|
40
|
+
minitest (5.8.3)
|
|
41
|
+
nokogiri (1.6.6.4)
|
|
42
|
+
mini_portile (~> 0.6.0)
|
|
43
|
+
rack (1.6.4)
|
|
44
|
+
rack-test (0.6.3)
|
|
45
|
+
rack (>= 1.0)
|
|
46
|
+
rails-deprecated_sanitizer (1.0.3)
|
|
47
|
+
activesupport (>= 4.2.0.alpha)
|
|
48
|
+
rails-dom-testing (1.0.7)
|
|
49
|
+
activesupport (>= 4.2.0.beta, < 5.0)
|
|
50
|
+
nokogiri (~> 1.6.0)
|
|
51
|
+
rails-deprecated_sanitizer (>= 1.0.1)
|
|
52
|
+
rails-html-sanitizer (1.0.2)
|
|
53
|
+
loofah (~> 2.0)
|
|
54
|
+
railties (4.2.5)
|
|
55
|
+
actionpack (= 4.2.5)
|
|
56
|
+
activesupport (= 4.2.5)
|
|
57
|
+
rake (>= 0.8.7)
|
|
58
|
+
thor (>= 0.18.1, < 2.0)
|
|
59
|
+
rake (10.4.2)
|
|
15
60
|
rspec (3.2.0)
|
|
16
61
|
rspec-core (~> 3.2.0)
|
|
17
62
|
rspec-expectations (~> 3.2.0)
|
|
@@ -25,6 +70,10 @@ GEM
|
|
|
25
70
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
26
71
|
rspec-support (~> 3.2.0)
|
|
27
72
|
rspec-support (3.2.2)
|
|
73
|
+
thor (0.19.1)
|
|
74
|
+
thread_safe (0.3.5)
|
|
75
|
+
tzinfo (1.2.2)
|
|
76
|
+
thread_safe (~> 0.1)
|
|
28
77
|
|
|
29
78
|
PLATFORMS
|
|
30
79
|
ruby
|
|
@@ -32,4 +81,9 @@ PLATFORMS
|
|
|
32
81
|
DEPENDENCIES
|
|
33
82
|
doorkeeper-i18n!
|
|
34
83
|
i18n-spec (~> 0.6.0)
|
|
84
|
+
railties
|
|
85
|
+
rake
|
|
35
86
|
rspec
|
|
87
|
+
|
|
88
|
+
BUNDLED WITH
|
|
89
|
+
1.10.6
|
data/doorkeeper-i18n.gemspec
CHANGED
|
@@ -2,7 +2,7 @@ $:.push File.expand_path("../lib", __FILE__)
|
|
|
2
2
|
|
|
3
3
|
Gem::Specification.new do |s|
|
|
4
4
|
s.name = "doorkeeper-i18n"
|
|
5
|
-
s.version = "
|
|
5
|
+
s.version = "3.0.0"
|
|
6
6
|
s.authors = ["Tute Costa"]
|
|
7
7
|
s.email = %w(tutecosta@gmail.com)
|
|
8
8
|
s.homepage = "https://github.com/doorkeeper-gem/doorkeeper-i18n"
|
|
@@ -14,6 +14,8 @@ Gem::Specification.new do |s|
|
|
|
14
14
|
s.test_files = `git ls-files -- test/*`.split("\n")
|
|
15
15
|
s.require_paths = ["lib"]
|
|
16
16
|
|
|
17
|
+
s.add_development_dependency "rake"
|
|
17
18
|
s.add_development_dependency "rspec"
|
|
18
19
|
s.add_development_dependency "i18n-spec", "~> 0.6.0"
|
|
20
|
+
s.add_development_dependency "railties", ">= 0"
|
|
19
21
|
end
|
data/lib/doorkeeper-i18n.rb
CHANGED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
require 'rails'
|
|
2
|
+
|
|
3
|
+
module DoorkeeperI18n
|
|
4
|
+
class Railtie < ::Rails::Railtie #:nodoc:
|
|
5
|
+
initializer 'doorkeeper-i18n' do |app|
|
|
6
|
+
DoorkeeperI18n::Railtie.instance_eval do
|
|
7
|
+
pattern = pattern_from app.config.i18n.available_locales
|
|
8
|
+
|
|
9
|
+
add("rails/locales/#{pattern}.yml")
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
protected
|
|
14
|
+
|
|
15
|
+
def self.add(pattern)
|
|
16
|
+
files = Dir[File.join(File.dirname(__FILE__), '../..', pattern)]
|
|
17
|
+
|
|
18
|
+
I18n.load_path.concat(files)
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def self.pattern_from(args)
|
|
22
|
+
array = Array(args || [])
|
|
23
|
+
array.blank? ? '*' : "{#{array.join ','}}"
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
data/log/development.log
ADDED
|
File without changes
|
|
@@ -14,36 +14,6 @@ en:
|
|
|
14
14
|
relative_uri: 'must be an absolute URI.'
|
|
15
15
|
secured_uri: 'must be an HTTPS/SSL URI.'
|
|
16
16
|
|
|
17
|
-
mongoid:
|
|
18
|
-
attributes:
|
|
19
|
-
doorkeeper/application:
|
|
20
|
-
name: 'Name'
|
|
21
|
-
redirect_uri: 'Redirect URI'
|
|
22
|
-
errors:
|
|
23
|
-
models:
|
|
24
|
-
doorkeeper/application:
|
|
25
|
-
attributes:
|
|
26
|
-
redirect_uri:
|
|
27
|
-
fragment_present: 'cannot contain a fragment.'
|
|
28
|
-
invalid_uri: 'must be a valid URI.'
|
|
29
|
-
relative_uri: 'must be an absolute URI.'
|
|
30
|
-
secured_uri: 'must be an HTTPS/SSL URI.'
|
|
31
|
-
|
|
32
|
-
mongo_mapper:
|
|
33
|
-
attributes:
|
|
34
|
-
doorkeeper/application:
|
|
35
|
-
name: 'Name'
|
|
36
|
-
redirect_uri: 'Redirect URI'
|
|
37
|
-
errors:
|
|
38
|
-
models:
|
|
39
|
-
doorkeeper/application:
|
|
40
|
-
attributes:
|
|
41
|
-
redirect_uri:
|
|
42
|
-
fragment_present: 'cannot contain a fragment.'
|
|
43
|
-
invalid_uri: 'must be a valid URI.'
|
|
44
|
-
relative_uri: 'must be an absolute URI.'
|
|
45
|
-
secured_uri: 'must be an HTTPS/SSL URI.'
|
|
46
|
-
|
|
47
17
|
doorkeeper:
|
|
48
18
|
applications:
|
|
49
19
|
confirmations:
|
|
@@ -59,6 +29,7 @@ en:
|
|
|
59
29
|
help:
|
|
60
30
|
redirect_uri: 'Use one line per URI'
|
|
61
31
|
native_redirect_uri: 'Use %{native_redirect_uri} for local tests'
|
|
32
|
+
scopes: 'Separate scopes with spaces. Leave blank to use the default scopes.'
|
|
62
33
|
edit:
|
|
63
34
|
title: 'Edit application'
|
|
64
35
|
index:
|
|
@@ -72,6 +43,7 @@ en:
|
|
|
72
43
|
title: 'Application: %{name}'
|
|
73
44
|
application_id: 'Application Id'
|
|
74
45
|
secret: 'Secret'
|
|
46
|
+
scopes: 'Scopes'
|
|
75
47
|
callback_urls: 'Callback urls'
|
|
76
48
|
actions: 'Actions'
|
|
77
49
|
|
|
@@ -82,7 +54,7 @@ en:
|
|
|
82
54
|
error:
|
|
83
55
|
title: 'An error has occurred'
|
|
84
56
|
new:
|
|
85
|
-
title: '
|
|
57
|
+
title: 'Authorization required'
|
|
86
58
|
prompt: 'Authorize %{client_name} to use your account?'
|
|
87
59
|
able_to: 'This application will be able to'
|
|
88
60
|
show:
|
|
@@ -148,4 +120,4 @@ en:
|
|
|
148
120
|
oauth2_provider: 'OAuth2 Provider'
|
|
149
121
|
applications: 'Applications'
|
|
150
122
|
application:
|
|
151
|
-
title: 'OAuth
|
|
123
|
+
title: 'OAuth authorization required'
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
es:
|
|
2
|
+
activerecord:
|
|
3
|
+
attributes:
|
|
4
|
+
doorkeeper/application:
|
|
5
|
+
name: 'Nombre'
|
|
6
|
+
redirect_uri: 'URI de redirección'
|
|
7
|
+
errors:
|
|
8
|
+
models:
|
|
9
|
+
doorkeeper/application:
|
|
10
|
+
attributes:
|
|
11
|
+
redirect_uri:
|
|
12
|
+
fragment_present: 'no puede contener un fragmento.'
|
|
13
|
+
invalid_uri: 'debe ser una URI válida.'
|
|
14
|
+
relative_uri: 'debe ser una URI absoluta.'
|
|
15
|
+
secured_uri: 'debe ser una URI HTTPS/SSL.'
|
|
16
|
+
|
|
17
|
+
doorkeeper:
|
|
18
|
+
applications:
|
|
19
|
+
confirmations:
|
|
20
|
+
destroy: '¿Estás seguro?'
|
|
21
|
+
buttons:
|
|
22
|
+
edit: 'Editar'
|
|
23
|
+
destroy: 'Eliminar'
|
|
24
|
+
submit: 'Enviar'
|
|
25
|
+
cancel: 'Cancelar'
|
|
26
|
+
authorize: 'Autorizar'
|
|
27
|
+
form:
|
|
28
|
+
error: 'Ups! Verifica tu formulario por posibles errores'
|
|
29
|
+
help:
|
|
30
|
+
redirect_uri: 'Usa una linea por URI'
|
|
31
|
+
native_redirect_uri: 'Usa %{native_redirect_uri} para test locales'
|
|
32
|
+
scopes: ~
|
|
33
|
+
edit:
|
|
34
|
+
title: 'Editar aplicación'
|
|
35
|
+
index:
|
|
36
|
+
title: 'Tus aplicaciones'
|
|
37
|
+
new: 'Nueva aplicación'
|
|
38
|
+
name: 'Nombre'
|
|
39
|
+
callback_url: 'Callback URL'
|
|
40
|
+
new:
|
|
41
|
+
title: 'Nueva aplicación'
|
|
42
|
+
show:
|
|
43
|
+
title: 'Aplicación: %{name}'
|
|
44
|
+
application_id: 'Identificador de aplicación'
|
|
45
|
+
secret: 'Secret'
|
|
46
|
+
scopes: ~
|
|
47
|
+
callback_urls: 'Callback urls'
|
|
48
|
+
actions: 'Acciones'
|
|
49
|
+
|
|
50
|
+
authorizations:
|
|
51
|
+
buttons:
|
|
52
|
+
authorize: 'Autorizar'
|
|
53
|
+
deny: 'Denegar'
|
|
54
|
+
error:
|
|
55
|
+
title: 'Ha ocurrido un error'
|
|
56
|
+
new:
|
|
57
|
+
title: 'Autorización requerida'
|
|
58
|
+
prompt: '¿Autorizas a %{client_name} para usar tu cuenta?'
|
|
59
|
+
able_to: 'Está aplicación tendrá permisos para'
|
|
60
|
+
show:
|
|
61
|
+
title: 'Código de autorización'
|
|
62
|
+
|
|
63
|
+
authorized_applications:
|
|
64
|
+
confirmations:
|
|
65
|
+
revoke: '¿Estás seguro?'
|
|
66
|
+
buttons:
|
|
67
|
+
revoke: 'Revocar'
|
|
68
|
+
index:
|
|
69
|
+
title: 'Tus aplicaciones autorizadas'
|
|
70
|
+
application: 'Aplicación'
|
|
71
|
+
created_at: 'Creada el'
|
|
72
|
+
date_format: '%d/%m/%Y %H:%M:%S'
|
|
73
|
+
|
|
74
|
+
errors:
|
|
75
|
+
messages:
|
|
76
|
+
# Common error messages
|
|
77
|
+
invalid_request: 'La petición no tiene un parámetro obligatorio, incluye un valor de parámetro incompatible, o tiene un formato incorrecto.'
|
|
78
|
+
invalid_redirect_uri: 'La uri de redirección no es valida.'
|
|
79
|
+
unauthorized_client: 'El cliente no tiene autorización para realizar esta petición utilizando este método.'
|
|
80
|
+
access_denied: 'El propietario del recurso o el servidor de autorización han denegado la petición.'
|
|
81
|
+
invalid_scope: 'El scope solicitado no es válido, es desconocido, o tiene un formato incorrecto.'
|
|
82
|
+
server_error: 'El servidor de autorización ha encontrado una condición inesperada que le ha impedido completar la petición.'
|
|
83
|
+
temporarily_unavailable: 'El servidor de autorización no ha podido manejar la petición por una sobrecarga temporal o por mantenimiento del servidor.'
|
|
84
|
+
|
|
85
|
+
#configuration error messages
|
|
86
|
+
credential_flow_not_configured: 'El flujo de credenciales del propietario del recurso ha fallado porque Doorkeeper.configure.resource_owner_from_credentials no está configurado.'
|
|
87
|
+
resource_owner_authenticator_not_configured: 'La búsqueda del propietario del recurso ha fallado porque Doorkeeper.configure.resource_owner_authenticator no está configurado.'
|
|
88
|
+
|
|
89
|
+
# Access grant errors
|
|
90
|
+
unsupported_response_type: 'El servidor de autorización no soporta este tipo de respuesta.'
|
|
91
|
+
|
|
92
|
+
# Access token errors
|
|
93
|
+
invalid_client: 'La autenticación del cliente ha fallado por cliente desconocido, cliente no autenticado, o método de autenticación incompatible.'
|
|
94
|
+
invalid_grant: 'La autorización proporcionada no es válida, ha expirado, se ha revocado, no coincide con la URI de redirección utilizada en la petición de autorización, o ha sido solicitada por otro cliente.'
|
|
95
|
+
unsupported_grant_type: 'El tipo de autorización no está soportada por el servidor de autorización.'
|
|
96
|
+
|
|
97
|
+
# Password Access token errors
|
|
98
|
+
invalid_resource_owner: 'Las credenciales del propietario del recurso proporcionado no son válidas, o el propietario del recurso no ha sido encontrado'
|
|
99
|
+
|
|
100
|
+
invalid_token:
|
|
101
|
+
revoked: "El token de acceso ha sido revocado"
|
|
102
|
+
expired: "El token de acceso ha expirado"
|
|
103
|
+
unknown: "El token de acceso es inválido"
|
|
104
|
+
|
|
105
|
+
flash:
|
|
106
|
+
applications:
|
|
107
|
+
create:
|
|
108
|
+
notice: 'Aplicación creada.'
|
|
109
|
+
destroy:
|
|
110
|
+
notice: 'Aplicación eliminada.'
|
|
111
|
+
update:
|
|
112
|
+
notice: 'Aplicación actualizada.'
|
|
113
|
+
authorized_applications:
|
|
114
|
+
destroy:
|
|
115
|
+
notice: 'Aplicación revocada.'
|
|
116
|
+
|
|
117
|
+
layouts:
|
|
118
|
+
admin:
|
|
119
|
+
nav:
|
|
120
|
+
oauth2_provider: 'Proveedor OAuth2'
|
|
121
|
+
applications: 'Aplicaciones'
|
|
122
|
+
application:
|
|
123
|
+
title: 'Autorización OAuth requerida'
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
fr:
|
|
2
|
+
activerecord:
|
|
3
|
+
attributes:
|
|
4
|
+
doorkeeper/application:
|
|
5
|
+
name: "Nom"
|
|
6
|
+
redirect_uri: "L'URL de redirection"
|
|
7
|
+
errors:
|
|
8
|
+
models:
|
|
9
|
+
doorkeeper/application:
|
|
10
|
+
attributes:
|
|
11
|
+
redirect_uri:
|
|
12
|
+
fragment_present: "ne peut contenir un fragment."
|
|
13
|
+
invalid_uri: "doit être une URL valide."
|
|
14
|
+
relative_uri: "doit être une URL absolue."
|
|
15
|
+
secured_uri: "doit être une URL HTTP/SSL."
|
|
16
|
+
|
|
17
|
+
doorkeeper:
|
|
18
|
+
applications:
|
|
19
|
+
confirmations:
|
|
20
|
+
destroy: "Êtes-vous certain?"
|
|
21
|
+
buttons:
|
|
22
|
+
edit: "Modifier"
|
|
23
|
+
destroy: "Détruire"
|
|
24
|
+
submit: "Envoyer"
|
|
25
|
+
cancel: "Annuler"
|
|
26
|
+
authorize: "Autoriser"
|
|
27
|
+
form:
|
|
28
|
+
error: "Oups! Vérifier votre formulaire pour des erreurs possibles"
|
|
29
|
+
help:
|
|
30
|
+
redirect_uri: "Utiliser une ligne par URL"
|
|
31
|
+
native_redirect_uri: "Utiliser %{native_redirect_uri} pour les tests locaux"
|
|
32
|
+
scopes: ~
|
|
33
|
+
edit:
|
|
34
|
+
title: "Modifier l'application"
|
|
35
|
+
index:
|
|
36
|
+
title: "Vos applications"
|
|
37
|
+
new: "Nouvelle application"
|
|
38
|
+
name: "Nom"
|
|
39
|
+
callback_url: "URL de retour d'appel"
|
|
40
|
+
new:
|
|
41
|
+
title: "Nouvelle application"
|
|
42
|
+
show:
|
|
43
|
+
title: "Application : %{name}"
|
|
44
|
+
application_id: "ID de l'application"
|
|
45
|
+
secret: "Secret"
|
|
46
|
+
scopes: ~
|
|
47
|
+
callback_urls: "URL du retour d'appel"
|
|
48
|
+
actions: "Actions"
|
|
49
|
+
|
|
50
|
+
authorizations:
|
|
51
|
+
buttons:
|
|
52
|
+
authorize: "Autoriser"
|
|
53
|
+
deny: "Refuser"
|
|
54
|
+
error:
|
|
55
|
+
title: "Une erreur est survenue"
|
|
56
|
+
new:
|
|
57
|
+
title: "Autorisation requise"
|
|
58
|
+
prompt: "Autorisez %{client_name} à utiliser votre compte?"
|
|
59
|
+
able_to: "Cette application pourra"
|
|
60
|
+
show:
|
|
61
|
+
title: "Code d'autorisation"
|
|
62
|
+
|
|
63
|
+
authorized_applications:
|
|
64
|
+
confirmations:
|
|
65
|
+
revoke: "Êtes-vous certain?"
|
|
66
|
+
buttons:
|
|
67
|
+
revoke: "Annuler"
|
|
68
|
+
index:
|
|
69
|
+
title: "Vos applications autorisées"
|
|
70
|
+
application: "Application"
|
|
71
|
+
created_at: "Créé le"
|
|
72
|
+
date_format: "%Y-%m-%d %H:%M:%S"
|
|
73
|
+
|
|
74
|
+
errors:
|
|
75
|
+
messages:
|
|
76
|
+
# Common error messages
|
|
77
|
+
invalid_request: "La demande manque un paramètre requis, inclut une valeur de paramètre non prise en charge, ou est autrement mal formée."
|
|
78
|
+
invalid_redirect_uri: "L'URL de redirection n'est pas valide."
|
|
79
|
+
unauthorized_client: "Le client n'est pas autorisé à effectuer cette demande à l'aide de cette méthode."
|
|
80
|
+
access_denied: "Le propriétaire de la ressource ou le serveur d'autorisation a refusé la demande."
|
|
81
|
+
invalid_scope: "La portée demandée n'est pas valide, est inconnue, ou est mal formée."
|
|
82
|
+
server_error: "Le serveur d'autorisation a rencontré une condition inattendue qui l'a empêché de remplir la demande."
|
|
83
|
+
temporarily_unavailable: "Le serveur d'autorisation est actuellement incapable de traiter la demande à cause d'une surcharge ou d'un entretien temporaire du serveur."
|
|
84
|
+
|
|
85
|
+
#configuration error messages
|
|
86
|
+
credential_flow_not_configured: "Le flux des identifiants du mot de passe du propriétaire de la ressource a échoué en raison de Doorkeeper.configure.resource_owner_from_credentials n'est pas configuré."
|
|
87
|
+
resource_owner_authenticator_not_configured: "La recherche du propriétaire de la ressource a échoué en raison de Doorkeeper.configure.resource_owner_authenticator n'est pas configuré."
|
|
88
|
+
|
|
89
|
+
# Access grant errors
|
|
90
|
+
unsupported_response_type: "Le serveur d'autorisation ne prend pas en charge ce type de réponse."
|
|
91
|
+
|
|
92
|
+
# Access token errors
|
|
93
|
+
invalid_client: "L'authentification du client a échoué à cause d'un client inconnu, d'aucune authentification de client incluse, ou d'une méthode d'authentification non prise en charge."
|
|
94
|
+
invalid_grant: "Le consentement d'autorisation accordé n'est pas valide, a expiré, est annulé, ne concorde pas avec l'URL de redirection utilisée dans la demande d'autorisation, ou a été émis à un autre client."
|
|
95
|
+
unsupported_grant_type: "Le type de consentement d'autorisation n'est pas pris en charge par le serveur d'autorisation."
|
|
96
|
+
|
|
97
|
+
# Password Access token errors
|
|
98
|
+
invalid_resource_owner: "Les identifiants fournis du propriétaire de la ressource ne sont pas valides, ou le propriétaire de la ressource ne peut être trouvé"
|
|
99
|
+
|
|
100
|
+
invalid_token:
|
|
101
|
+
revoked: "Le jeton d'accès a été annulé"
|
|
102
|
+
expired: "Le jeton d'accès a expiré"
|
|
103
|
+
unknown: "Le jeton d'accès n'est pas valide"
|
|
104
|
+
|
|
105
|
+
flash:
|
|
106
|
+
applications:
|
|
107
|
+
create:
|
|
108
|
+
notice: "Application créée."
|
|
109
|
+
destroy:
|
|
110
|
+
notice: "Application supprimée."
|
|
111
|
+
update:
|
|
112
|
+
notice: "Application mise à jour."
|
|
113
|
+
authorized_applications:
|
|
114
|
+
destroy:
|
|
115
|
+
notice: "Application annulée."
|
|
116
|
+
|
|
117
|
+
layouts:
|
|
118
|
+
admin:
|
|
119
|
+
nav:
|
|
120
|
+
oauth2_provider: "Fournisseur OAuth2"
|
|
121
|
+
applications: "Applications"
|
|
122
|
+
application:
|
|
123
|
+
title: "Autorisation OAuth requise"
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
it:
|
|
2
|
+
activerecord:
|
|
3
|
+
attributes:
|
|
4
|
+
doorkeeper/application:
|
|
5
|
+
name: 'Nome'
|
|
6
|
+
redirect_uri: 'Redirect URI'
|
|
7
|
+
errors:
|
|
8
|
+
models:
|
|
9
|
+
doorkeeper/application:
|
|
10
|
+
attributes:
|
|
11
|
+
redirect_uri:
|
|
12
|
+
fragment_present: 'non può contenere un fragment.'
|
|
13
|
+
invalid_uri: 'deve essere un URI valido.'
|
|
14
|
+
relative_uri: 'deve essere un URI assoluto.'
|
|
15
|
+
secured_uri: 'deve essere un URI HTTPS/SSL.'
|
|
16
|
+
|
|
17
|
+
doorkeeper:
|
|
18
|
+
applications:
|
|
19
|
+
confirmations:
|
|
20
|
+
destroy: 'Sei sicuro?'
|
|
21
|
+
buttons:
|
|
22
|
+
edit: 'Modifica'
|
|
23
|
+
destroy: 'Elimina'
|
|
24
|
+
submit: 'Invia'
|
|
25
|
+
cancel: 'Annulla'
|
|
26
|
+
authorize: 'Autorizza'
|
|
27
|
+
form:
|
|
28
|
+
error: 'Ops! Controlla la form per possibili errori'
|
|
29
|
+
help:
|
|
30
|
+
redirect_uri: 'Usa una riga per URI'
|
|
31
|
+
native_redirect_uri: 'Usa %{native_redirect_uri} per test locali'
|
|
32
|
+
scopes: ~
|
|
33
|
+
edit:
|
|
34
|
+
title: "Modifica l'applicazione"
|
|
35
|
+
index:
|
|
36
|
+
title: 'Le tue applicazioni'
|
|
37
|
+
new: 'Nuova Applicazione'
|
|
38
|
+
name: 'Nome'
|
|
39
|
+
callback_url: 'Callback URL'
|
|
40
|
+
new:
|
|
41
|
+
title: 'Nuova Applicazione'
|
|
42
|
+
show:
|
|
43
|
+
title: 'Applicazione: %{name}'
|
|
44
|
+
application_id: 'Id Applicazione'
|
|
45
|
+
secret: 'Secret'
|
|
46
|
+
scopes: ~
|
|
47
|
+
callback_urls: 'Callback urls'
|
|
48
|
+
actions: 'Azioni'
|
|
49
|
+
|
|
50
|
+
authorizations:
|
|
51
|
+
buttons:
|
|
52
|
+
authorize: 'Autorizza'
|
|
53
|
+
deny: 'Nega'
|
|
54
|
+
error:
|
|
55
|
+
title: 'Si è verificato un errore'
|
|
56
|
+
new:
|
|
57
|
+
title: 'Richiesta di autorizzazione'
|
|
58
|
+
prompt: 'Autorizzi %{client_name} ad usare il tuo account?'
|
|
59
|
+
able_to: 'Questa applicazione portà'
|
|
60
|
+
show:
|
|
61
|
+
title: 'Codide di autorizzazione'
|
|
62
|
+
|
|
63
|
+
authorized_applications:
|
|
64
|
+
confirmations:
|
|
65
|
+
revoke: 'Sei sicuro?'
|
|
66
|
+
buttons:
|
|
67
|
+
revoke: 'Revoca'
|
|
68
|
+
index:
|
|
69
|
+
title: 'Applicazioni autorizzate'
|
|
70
|
+
application: 'Applicazione'
|
|
71
|
+
created_at: 'Creata il'
|
|
72
|
+
date_format: '%Y-%m-%d %H:%M:%S'
|
|
73
|
+
|
|
74
|
+
errors:
|
|
75
|
+
messages:
|
|
76
|
+
# Common error messages
|
|
77
|
+
invalid_request: 'Manca un parametro obbligatorio nella richiesta, include un valore non supportato, oppure è malformata.'
|
|
78
|
+
invalid_redirect_uri: "L'uri di redirect incluso non è valido."
|
|
79
|
+
unauthorized_client: 'Il client non è autorizzato per effettuare questa richiesta utilizzando questo metodo.'
|
|
80
|
+
access_denied: 'Il proprietario della risorsa o il server di autorizzazione rifiuta la richiesta.'
|
|
81
|
+
invalid_scope: 'Lo scope della richiesta non è valido, sconosciuto, o malformato.'
|
|
82
|
+
server_error: 'Il server di autorizzazione ha rilevato una condizione inaspettata che ha impedito di soddisfare la richiesta.'
|
|
83
|
+
temporarily_unavailable: 'Il server di autorizzazione non è momentaneamente disponibile a causa di un sovraccarico temporaneo o di manutenzione.'
|
|
84
|
+
|
|
85
|
+
#configuration error messages
|
|
86
|
+
credential_flow_not_configured: "Il flusso di credenziali utente è fallito perchè Doorkeeper.configure.resource_owner_from_credentials deve essere configurato."
|
|
87
|
+
resource_owner_authenticator_not_configured: "La ricerca dell'utente è fallita perchè Doorkeeper.configure.resource_owner_authenticator deve essere configurato."
|
|
88
|
+
|
|
89
|
+
# Access grant errors
|
|
90
|
+
unsupported_response_type: 'Il server di autorizzazione non supporta questo response type.'
|
|
91
|
+
|
|
92
|
+
# Access token errors
|
|
93
|
+
invalid_client: "L'autenticazione client è fallita a causa di client sconosciuto, nessuna autenticazione client inclusa, o metodo di autenticazione non supportato."
|
|
94
|
+
invalid_grant: "L'autorizzazione richiesta non è valida, scaduta, revocata, non corrisponde all'uri di redirezione usato nella richiesta di autorizzazione, o è stata richiesta da un altro client."
|
|
95
|
+
unsupported_grant_type: "Il tipo di autorizzazione richista non è supportato dal server di autorizzazione."
|
|
96
|
+
|
|
97
|
+
# Password Access token errors
|
|
98
|
+
invalid_resource_owner: "Le credenziali non sono valide, o l'utente non è stato trovato"
|
|
99
|
+
|
|
100
|
+
invalid_token:
|
|
101
|
+
revoked: "Il token di accesso è stato revocato"
|
|
102
|
+
expired: "Il token di accesso è scaduto"
|
|
103
|
+
unknown: "Il token di accesso non è valido"
|
|
104
|
+
|
|
105
|
+
flash:
|
|
106
|
+
applications:
|
|
107
|
+
create:
|
|
108
|
+
notice: 'Applicazione creata.'
|
|
109
|
+
destroy:
|
|
110
|
+
notice: 'Applicazione eliminata.'
|
|
111
|
+
update:
|
|
112
|
+
notice: 'Applicazione aggiornata.'
|
|
113
|
+
authorized_applications:
|
|
114
|
+
destroy:
|
|
115
|
+
notice: 'Applicazione revocata.'
|
|
116
|
+
|
|
117
|
+
layouts:
|
|
118
|
+
admin:
|
|
119
|
+
nav:
|
|
120
|
+
oauth2_provider: 'OAuth2 Provider'
|
|
121
|
+
applications: 'Applicazioni'
|
|
122
|
+
application:
|
|
123
|
+
title: 'Richiesta autorizzazione OAuth'
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
ja:
|
|
2
|
+
activerecord:
|
|
3
|
+
attributes:
|
|
4
|
+
doorkeeper/application:
|
|
5
|
+
name: '名前'
|
|
6
|
+
redirect_uri: 'リダイレクトURI'
|
|
7
|
+
errors:
|
|
8
|
+
models:
|
|
9
|
+
doorkeeper/application:
|
|
10
|
+
attributes:
|
|
11
|
+
redirect_uri:
|
|
12
|
+
fragment_present: 'cannot contain a fragment.'
|
|
13
|
+
invalid_uri: 'must be a valid URI.'
|
|
14
|
+
relative_uri: 'must be an absolute URI.'
|
|
15
|
+
secured_uri: 'must be an HTTPS/SSL URI.'
|
|
16
|
+
|
|
17
|
+
doorkeeper:
|
|
18
|
+
applications:
|
|
19
|
+
confirmations:
|
|
20
|
+
destroy: '本当に削除しますか?'
|
|
21
|
+
buttons:
|
|
22
|
+
edit: '編集'
|
|
23
|
+
destroy: '削除'
|
|
24
|
+
submit: '登録'
|
|
25
|
+
cancel: 'キャンセル'
|
|
26
|
+
authorize: '認証'
|
|
27
|
+
form:
|
|
28
|
+
error: 'Whoops! Check your form for possible errors'
|
|
29
|
+
help:
|
|
30
|
+
redirect_uri: 'Use one line per URI'
|
|
31
|
+
native_redirect_uri: 'Use %{native_redirect_uri} for local tests'
|
|
32
|
+
scopes: 'Separate scopes with spaces. Leave blank to use the default scopes.'
|
|
33
|
+
edit:
|
|
34
|
+
title: 'アプリケーションの編集'
|
|
35
|
+
index:
|
|
36
|
+
title: 'あなたのアプリケーション'
|
|
37
|
+
new: '新しいアプリケーション'
|
|
38
|
+
name: '名前'
|
|
39
|
+
callback_url: 'コールバックURL'
|
|
40
|
+
new:
|
|
41
|
+
title: '新しいアプリケーション'
|
|
42
|
+
show:
|
|
43
|
+
title: 'アプリケーション: %{name}'
|
|
44
|
+
application_id: 'アプリケーション Id'
|
|
45
|
+
secret: 'シークレット'
|
|
46
|
+
scopes: 'スコープ'
|
|
47
|
+
callback_urls: 'コールバック urls'
|
|
48
|
+
actions: 'アクション'
|
|
49
|
+
|
|
50
|
+
authorizations:
|
|
51
|
+
buttons:
|
|
52
|
+
authorize: '認証'
|
|
53
|
+
deny: '否認'
|
|
54
|
+
error:
|
|
55
|
+
title: 'エラーが発生しました'
|
|
56
|
+
new:
|
|
57
|
+
title: '認証が必要です'
|
|
58
|
+
prompt: 'あなたのアカウントで %{client_name} 認証しますか?'
|
|
59
|
+
able_to: 'このアプリケーションは次のことが可能です'
|
|
60
|
+
show:
|
|
61
|
+
title: '認証コード'
|
|
62
|
+
|
|
63
|
+
authorized_applications:
|
|
64
|
+
confirmations:
|
|
65
|
+
revoke: '本当に取消ますか?'
|
|
66
|
+
buttons:
|
|
67
|
+
revoke: '取消'
|
|
68
|
+
index:
|
|
69
|
+
title: 'あなたの認証されたアプリケーション'
|
|
70
|
+
application: 'アプリケーション'
|
|
71
|
+
created_at: '作成日時'
|
|
72
|
+
date_format: '%Y-%m-%d %H:%M:%S'
|
|
73
|
+
|
|
74
|
+
errors:
|
|
75
|
+
messages:
|
|
76
|
+
# Common error messages
|
|
77
|
+
invalid_request: 'The request is missing a required parameter, includes an unsupported parameter value, or is otherwise malformed.'
|
|
78
|
+
invalid_redirect_uri: 'The redirect uri included is not valid.'
|
|
79
|
+
unauthorized_client: 'The client is not authorized to perform this request using this method.'
|
|
80
|
+
access_denied: 'The resource owner or authorization server denied the request.'
|
|
81
|
+
invalid_scope: 'The requested scope is invalid, unknown, or malformed.'
|
|
82
|
+
server_error: 'The authorization server encountered an unexpected condition which prevented it from fulfilling the request.'
|
|
83
|
+
temporarily_unavailable: 'The authorization server is currently unable to handle the request due to a temporary overloading or maintenance of the server.'
|
|
84
|
+
|
|
85
|
+
#configuration error messages
|
|
86
|
+
credential_flow_not_configured: 'Resource Owner Password Credentials flow failed due to Doorkeeper.configure.resource_owner_from_credentials being unconfigured.'
|
|
87
|
+
resource_owner_authenticator_not_configured: 'Resource Owner find failed due to Doorkeeper.configure.resource_owner_authenticator being unconfiged.'
|
|
88
|
+
|
|
89
|
+
# Access grant errors
|
|
90
|
+
unsupported_response_type: 'The authorization server does not support this response type.'
|
|
91
|
+
|
|
92
|
+
# Access token errors
|
|
93
|
+
invalid_client: 'Client authentication failed due to unknown client, no client authentication included, or unsupported authentication method.'
|
|
94
|
+
invalid_grant: 'The provided authorization grant is invalid, expired, revoked, does not match the redirection URI used in the authorization request, or was issued to another client.'
|
|
95
|
+
unsupported_grant_type: 'The authorization grant type is not supported by the authorization server.'
|
|
96
|
+
|
|
97
|
+
# Password Access token errors
|
|
98
|
+
invalid_resource_owner: 'The provided resource owner credentials are not valid, or resource owner cannot be found'
|
|
99
|
+
|
|
100
|
+
invalid_token:
|
|
101
|
+
revoked: "The access token was revoked"
|
|
102
|
+
expired: "The access token expired"
|
|
103
|
+
unknown: "The access token is invalid"
|
|
104
|
+
|
|
105
|
+
flash:
|
|
106
|
+
applications:
|
|
107
|
+
create:
|
|
108
|
+
notice: 'アプリケーションが作成されました。'
|
|
109
|
+
destroy:
|
|
110
|
+
notice: 'アプリケーションが作成されました。'
|
|
111
|
+
update:
|
|
112
|
+
notice: 'アプリケーションが更新されました。'
|
|
113
|
+
authorized_applications:
|
|
114
|
+
destroy:
|
|
115
|
+
notice: 'アプリケーションが取消されました。'
|
|
116
|
+
|
|
117
|
+
layouts:
|
|
118
|
+
admin:
|
|
119
|
+
nav:
|
|
120
|
+
oauth2_provider: 'OAuth2 プロバイダー'
|
|
121
|
+
applications: 'アプリケーション'
|
|
122
|
+
application:
|
|
123
|
+
title: 'OAuth認証が必要です'
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
pt-BR:
|
|
2
|
+
activerecord:
|
|
3
|
+
attributes:
|
|
4
|
+
doorkeeper/application:
|
|
5
|
+
name: 'Nome'
|
|
6
|
+
redirect_uri: 'URI de redirecionamento'
|
|
7
|
+
errors:
|
|
8
|
+
models:
|
|
9
|
+
doorkeeper/application:
|
|
10
|
+
attributes:
|
|
11
|
+
redirect_uri:
|
|
12
|
+
fragment_present: 'Não pode conter um fragmento.'
|
|
13
|
+
invalid_uri: 'deve ser uma URI válida.'
|
|
14
|
+
relative_uri: 'dever ser uma URI absoluta.'
|
|
15
|
+
secured_uri: 'deve ser uma URI HTTPS/SSL.'
|
|
16
|
+
|
|
17
|
+
doorkeeper:
|
|
18
|
+
applications:
|
|
19
|
+
confirmations:
|
|
20
|
+
destroy: 'Você tem certeza?'
|
|
21
|
+
buttons:
|
|
22
|
+
edit: 'Editar'
|
|
23
|
+
destroy: 'Deletar'
|
|
24
|
+
submit: 'Submeter'
|
|
25
|
+
cancel: 'Cancelar'
|
|
26
|
+
authorize: 'Autorizar'
|
|
27
|
+
form:
|
|
28
|
+
error: 'Whoops! Veja o form para possíveis erros'
|
|
29
|
+
help:
|
|
30
|
+
redirect_uri: 'Use uma linha por URI'
|
|
31
|
+
native_redirect_uri: 'Use %{native_redirect_uri} para testes locais'
|
|
32
|
+
scopes: ~
|
|
33
|
+
edit:
|
|
34
|
+
title: 'Editar aplicação'
|
|
35
|
+
index:
|
|
36
|
+
title: 'Suas aplicações'
|
|
37
|
+
new: 'Nova Aplicação'
|
|
38
|
+
name: 'Nome'
|
|
39
|
+
callback_url: 'URL de Callback'
|
|
40
|
+
new:
|
|
41
|
+
title: 'Nova Aplicação'
|
|
42
|
+
show:
|
|
43
|
+
title: 'Aplicação: %{name}'
|
|
44
|
+
application_id: 'Id da Aplicação (Application Id)'
|
|
45
|
+
secret: 'Segredo (Secret)'
|
|
46
|
+
scopes: ~
|
|
47
|
+
callback_urls: 'urls de Callback'
|
|
48
|
+
actions: 'Ações'
|
|
49
|
+
|
|
50
|
+
authorizations:
|
|
51
|
+
buttons:
|
|
52
|
+
authorize: 'Autorizar'
|
|
53
|
+
deny: 'Negar'
|
|
54
|
+
error:
|
|
55
|
+
title: 'Ocorreu um erro'
|
|
56
|
+
new:
|
|
57
|
+
title: 'Autorização necessária'
|
|
58
|
+
prompt: 'Autorizar %{client_name} a usar sua conta?'
|
|
59
|
+
able_to: 'Essa aplicação será capaz de'
|
|
60
|
+
show:
|
|
61
|
+
title: 'Código de autorização'
|
|
62
|
+
|
|
63
|
+
authorized_applications:
|
|
64
|
+
confirmations:
|
|
65
|
+
revoke: 'Você tem certeza?'
|
|
66
|
+
buttons:
|
|
67
|
+
revoke: 'Revogar'
|
|
68
|
+
index:
|
|
69
|
+
title: 'Suas aplicações autorizadas'
|
|
70
|
+
application: 'Aplicação'
|
|
71
|
+
created_at: 'Criado em'
|
|
72
|
+
date_format: '%Y-%m-%d %H:%M:%S'
|
|
73
|
+
|
|
74
|
+
errors:
|
|
75
|
+
messages:
|
|
76
|
+
# Common error messages
|
|
77
|
+
invalid_request: 'A requisição não possui um parâmetro obrigatório, inclui um parâmetro inválido ou está malformada.'
|
|
78
|
+
invalid_redirect_uri: 'A uri de redirecionamento incluída não é válida.'
|
|
79
|
+
unauthorized_client: 'O cliente não está autorizado a realizar essa requisição usando este método.'
|
|
80
|
+
access_denied: 'O dono do recurso (resource owner) ou servidor de autorização (authorization server) negou a requisição.'
|
|
81
|
+
invalid_scope: 'O escopo requisitado é inválido, desconhecido ou malformado.'
|
|
82
|
+
server_error: 'O servidor de autorização (authorization server) encontrou uma condição inesperada que o impediu de completar a requisição.'
|
|
83
|
+
temporarily_unavailable: 'O servidor de autorização (authorization server) não foi rapaz de processar a requisição devido a um problema tempoário de sobrecarga ou manuntenção.'
|
|
84
|
+
|
|
85
|
+
#configuration error messages
|
|
86
|
+
credential_flow_not_configured: 'Resource Owner Password Credentials flow falhou porque o Doorkeeper.configure.resource_owner_from_credentials não foi configurado.'
|
|
87
|
+
resource_owner_authenticator_not_configured: 'Resource Owner find falhou porque o Doorkeeper.configure.resource_owner_authenticator não foi configurado.'
|
|
88
|
+
|
|
89
|
+
# Access grant errors
|
|
90
|
+
unsupported_response_type: 'O servidor de autorização não suporta este tipo de resposta.'
|
|
91
|
+
|
|
92
|
+
# Access token errors
|
|
93
|
+
invalid_client: 'Autenticação do cliente falhou devido a um cliente desconhecido, a falta de inclusão da autenticação do cliente, ou a um método não suportado de autenticação.'
|
|
94
|
+
invalid_grant: 'A permissão de autorização (authorization grant) provida é inválida, expirada, revogada, não bate com a URI de redirecionamento usada na requisição de autorização, ou foi dada a outro cliente.'
|
|
95
|
+
unsupported_grant_type: 'O tipo de permissão de autorização (authorization grant) não é suportado pelo servidor de autorização(authorization server) The authorization grant type is not supported by the authorization server.'
|
|
96
|
+
|
|
97
|
+
# Password Access token errors
|
|
98
|
+
invalid_resource_owner: 'As credenciais do dono de recurso (resource owner) dadas não são válidas, ou o dono de recurso (resource owner) não foi achado.'
|
|
99
|
+
|
|
100
|
+
invalid_token:
|
|
101
|
+
revoked: "O token de acesso (access token) foi revogado"
|
|
102
|
+
expired: "O token de acesso (access token) expirou"
|
|
103
|
+
unknown: "O token de acesso (access token) é inválido"
|
|
104
|
+
|
|
105
|
+
flash:
|
|
106
|
+
applications:
|
|
107
|
+
create:
|
|
108
|
+
notice: 'Aplicação criada.'
|
|
109
|
+
destroy:
|
|
110
|
+
notice: 'Aplicação deletada.'
|
|
111
|
+
update:
|
|
112
|
+
notice: 'Aplicação atualizada.'
|
|
113
|
+
authorized_applications:
|
|
114
|
+
destroy:
|
|
115
|
+
notice: 'Aplicação revogada.'
|
|
116
|
+
|
|
117
|
+
layouts:
|
|
118
|
+
admin:
|
|
119
|
+
nav:
|
|
120
|
+
oauth2_provider: 'Provedor OAuth2 (OAuth2 Provider)'
|
|
121
|
+
applications: 'Aplicações'
|
|
122
|
+
application:
|
|
123
|
+
title: 'Autorização OAuth necessária'
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
zh-CN:
|
|
2
|
+
activerecord:
|
|
3
|
+
attributes:
|
|
4
|
+
doorkeeper/application:
|
|
5
|
+
name: '名称'
|
|
6
|
+
redirect_uri: '登录回调地址'
|
|
7
|
+
errors:
|
|
8
|
+
models:
|
|
9
|
+
doorkeeper/application:
|
|
10
|
+
attributes:
|
|
11
|
+
redirect_uri:
|
|
12
|
+
fragment_present: '不能包含片段(#)'
|
|
13
|
+
invalid_uri: '必须是有效的 URL 格式'
|
|
14
|
+
relative_uri: '必须是绝对的 URL 地址'
|
|
15
|
+
secured_uri: '必须是 HTTPS/SSL 的 URL 地址'
|
|
16
|
+
|
|
17
|
+
doorkeeper:
|
|
18
|
+
applications:
|
|
19
|
+
confirmations:
|
|
20
|
+
destroy: '确定要删除应用吗?'
|
|
21
|
+
buttons:
|
|
22
|
+
edit: '编辑'
|
|
23
|
+
destroy: '删除'
|
|
24
|
+
submit: '提交'
|
|
25
|
+
cancel: '取消'
|
|
26
|
+
authorize: '授权'
|
|
27
|
+
form:
|
|
28
|
+
error: '抱歉! 提交信息的时候遇到了下面的错误'
|
|
29
|
+
help:
|
|
30
|
+
redirect_uri: '每行只能有一个 URL'
|
|
31
|
+
native_redirect_uri: '使用 %{native_redirect_uri} 作为本地测试'
|
|
32
|
+
scopes: ~
|
|
33
|
+
edit:
|
|
34
|
+
title: '修改应用'
|
|
35
|
+
index:
|
|
36
|
+
title: '你的应用'
|
|
37
|
+
new: '创建新应用'
|
|
38
|
+
name: '名称'
|
|
39
|
+
callback_url: '登录回调地址'
|
|
40
|
+
new:
|
|
41
|
+
title: '创建新应用'
|
|
42
|
+
show:
|
|
43
|
+
title: '应用: %{name}'
|
|
44
|
+
application_id: '应用 ID'
|
|
45
|
+
secret: '私钥'
|
|
46
|
+
scopes: ~
|
|
47
|
+
callback_urls: '登录回调地址'
|
|
48
|
+
actions: '操作'
|
|
49
|
+
|
|
50
|
+
authorizations:
|
|
51
|
+
buttons:
|
|
52
|
+
authorize: '授权'
|
|
53
|
+
deny: '拒绝'
|
|
54
|
+
error:
|
|
55
|
+
title: '存在错误'
|
|
56
|
+
new:
|
|
57
|
+
title: '需要你授权'
|
|
58
|
+
prompt: '授权 %{client_name} 使用你的帐号?'
|
|
59
|
+
able_to: '此应用将会'
|
|
60
|
+
show:
|
|
61
|
+
title: '授权码'
|
|
62
|
+
|
|
63
|
+
authorized_applications:
|
|
64
|
+
confirmations:
|
|
65
|
+
revoke: '确定要注销此应用的认证信息吗?'
|
|
66
|
+
buttons:
|
|
67
|
+
revoke: '注销'
|
|
68
|
+
index:
|
|
69
|
+
title: '你授权的应用列表'
|
|
70
|
+
application: '应用'
|
|
71
|
+
created_at: '授权时间'
|
|
72
|
+
date_format: '%Y-%m-%d %H:%M:%S'
|
|
73
|
+
|
|
74
|
+
errors:
|
|
75
|
+
messages:
|
|
76
|
+
# Common error messages
|
|
77
|
+
invalid_request: '这个请求缺少必要的参数,或者参数值、格式不正确'
|
|
78
|
+
invalid_redirect_uri: '无效的登录回调地址'
|
|
79
|
+
unauthorized_client: '未授权的应用,请求无法执行'
|
|
80
|
+
access_denied: '用户或服务器拒绝了请求'
|
|
81
|
+
invalid_scope: '请求范围无效、未知或格式不正确'
|
|
82
|
+
server_error: '服务器异常,无法处理请求'
|
|
83
|
+
temporarily_unavailable: '服务器维护中,无法处理请求'
|
|
84
|
+
|
|
85
|
+
#configuration error messages
|
|
86
|
+
credential_flow_not_configured: 'Resource Owner Password Credentials flow failed due to Doorkeeper.configure.resource_owner_from_credentials being unconfigured.'
|
|
87
|
+
resource_owner_authenticator_not_configured: 'Resource Owner find failed due to Doorkeeper.configure.resource_owner_authenticator being unconfiged.'
|
|
88
|
+
|
|
89
|
+
# Access grant errors
|
|
90
|
+
unsupported_response_type: '服务器不支持这种 response type'
|
|
91
|
+
|
|
92
|
+
# Access token errors
|
|
93
|
+
invalid_client: '由于未知、不支持或没有客户端,认证失败'
|
|
94
|
+
invalid_grant: '授权方式无效,或者登录回调地址无效、过期或已被撤销'
|
|
95
|
+
unsupported_grant_type: '服务器不支持此类型的授权方式'
|
|
96
|
+
|
|
97
|
+
# Password Access token errors
|
|
98
|
+
invalid_resource_owner: '资源所有者认证无效或没有所有者'
|
|
99
|
+
|
|
100
|
+
invalid_token:
|
|
101
|
+
revoked: "Access Token 已被注销"
|
|
102
|
+
expired: "Access Token 已过期"
|
|
103
|
+
unknown: "Access Token 无效"
|
|
104
|
+
|
|
105
|
+
flash:
|
|
106
|
+
applications:
|
|
107
|
+
create:
|
|
108
|
+
notice: '应用创建成功'
|
|
109
|
+
destroy:
|
|
110
|
+
notice: '应用删除成功'
|
|
111
|
+
update:
|
|
112
|
+
notice: '应用修改成功'
|
|
113
|
+
authorized_applications:
|
|
114
|
+
destroy:
|
|
115
|
+
notice: '已成功注销了应用的认证信息'
|
|
116
|
+
|
|
117
|
+
layouts:
|
|
118
|
+
admin:
|
|
119
|
+
nav:
|
|
120
|
+
oauth2_provider: 'OAuth2 Provider'
|
|
121
|
+
applications: '应用'
|
|
122
|
+
application:
|
|
123
|
+
title: 'OAuth 认证'
|
|
@@ -14,36 +14,6 @@ zh-TW:
|
|
|
14
14
|
relative_uri: '必須是絕對的網址'
|
|
15
15
|
secured_uri: '必須是有 HTTPS/SSL 的網址'
|
|
16
16
|
|
|
17
|
-
mongoid:
|
|
18
|
-
attributes:
|
|
19
|
-
doorkeeper/application:
|
|
20
|
-
name: '名稱'
|
|
21
|
-
redirect_uri: '轉向網址'
|
|
22
|
-
errors:
|
|
23
|
-
models:
|
|
24
|
-
doorkeeper/application:
|
|
25
|
-
attributes:
|
|
26
|
-
redirect_uri:
|
|
27
|
-
fragment_present: '不能包含片段(#)'
|
|
28
|
-
invalid_uri: '必須是有效的網址'
|
|
29
|
-
relative_uri: '必須是絕對的網址'
|
|
30
|
-
secured_uri: '必須是有 HTTPS/SSL 的網址'
|
|
31
|
-
|
|
32
|
-
mongo_mapper:
|
|
33
|
-
attributes:
|
|
34
|
-
doorkeeper/application:
|
|
35
|
-
name: '名稱'
|
|
36
|
-
redirect_uri: '轉向網址'
|
|
37
|
-
errors:
|
|
38
|
-
models:
|
|
39
|
-
doorkeeper/application:
|
|
40
|
-
attributes:
|
|
41
|
-
redirect_uri:
|
|
42
|
-
fragment_present: '不能包含片段(#)'
|
|
43
|
-
invalid_uri: '必須是有效的網址'
|
|
44
|
-
relative_uri: '必須是絕對的網址'
|
|
45
|
-
secured_uri: '必須是有 HTTPS/SSL 的網址'
|
|
46
|
-
|
|
47
17
|
doorkeeper:
|
|
48
18
|
applications:
|
|
49
19
|
confirmations:
|
|
@@ -59,6 +29,7 @@ zh-TW:
|
|
|
59
29
|
help:
|
|
60
30
|
redirect_uri: '每個網址必須只有一行'
|
|
61
31
|
native_redirect_uri: '使用 %{native_redirect_uri} 作本地端測試'
|
|
32
|
+
scopes: ~
|
|
62
33
|
edit:
|
|
63
34
|
title: '編輯應用'
|
|
64
35
|
index:
|
|
@@ -72,6 +43,7 @@ zh-TW:
|
|
|
72
43
|
title: '應用: %{name}'
|
|
73
44
|
application_id: '應用 ID'
|
|
74
45
|
secret: '私鑰'
|
|
46
|
+
scopes: ~
|
|
75
47
|
callback_urls: '回應網址'
|
|
76
48
|
actions: '動作'
|
|
77
49
|
|
|
@@ -119,7 +91,7 @@ zh-TW:
|
|
|
119
91
|
|
|
120
92
|
# Access token errors
|
|
121
93
|
invalid_client: '由於未知、不支援或是沒有客戶端認證而失敗'
|
|
122
|
-
invalid_grant: '
|
|
94
|
+
invalid_grant: '授權許可型態無效,或者轉向網址的授權許可無效、過期或已被撤銷'
|
|
123
95
|
unsupported_grant_type: '授權伺服器不支援此授權許可型態'
|
|
124
96
|
|
|
125
97
|
# Password Access token errors
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
|
2
2
|
|
|
3
|
-
Dir.glob('
|
|
3
|
+
Dir.glob('rails/locales/*.yml').each do |locale_file|
|
|
4
4
|
describe "a doorkeeper-i18n #{locale_file} locale file" do
|
|
5
5
|
it_behaves_like 'a valid locale file', locale_file
|
|
6
|
-
it { expect(locale_file).to be_a_subset_of '
|
|
6
|
+
it { expect(locale_file).to be_a_subset_of 'rails/locales/en.yml' }
|
|
7
7
|
end
|
|
8
8
|
end
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
|
3
|
+
|
|
4
|
+
describe 'Locale loading' do
|
|
5
|
+
let(:app) do
|
|
6
|
+
DoorkeeperI18n::Spec::FakeApp
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
let(:translate_stuff) do
|
|
10
|
+
lambda do
|
|
11
|
+
<<-EOS.gsub(/^ */, '')
|
|
12
|
+
In French: #{I18n.t('doorkeeper.layouts.admin.nav.oauth2_provider', locale: :fr)}
|
|
13
|
+
In Italian: #{I18n.t('doorkeeper.layouts.admin.nav.oauth2_provider', locale: :it)}
|
|
14
|
+
In Japanese: #{I18n.t('doorkeeper.layouts.admin.nav.oauth2_provider', locale: :ja)}
|
|
15
|
+
EOS
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
context 'when i18n.available_locales are specified in config' do
|
|
20
|
+
let(:translations) do
|
|
21
|
+
app.run(translate_stuff) do |config|
|
|
22
|
+
config.i18n.available_locales = [:fr, :it]
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
it 'loads only specified locales' do
|
|
27
|
+
expected_translations = <<-EOS.gsub(/^ */, '')
|
|
28
|
+
In French: Fournisseur OAuth2
|
|
29
|
+
In Italian: OAuth2 Provider
|
|
30
|
+
In Japanese: translation missing: ja.doorkeeper.layouts.admin.nav.oauth2_provider
|
|
31
|
+
EOS
|
|
32
|
+
|
|
33
|
+
expect(translations).to eq(expected_translations)
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
context 'when single locale is assigned to i18n.available_locales' do
|
|
38
|
+
let(:translations) do
|
|
39
|
+
app.run(translate_stuff) do |config|
|
|
40
|
+
config.i18n.available_locales = 'fr'
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
it 'loads only this locale' do
|
|
45
|
+
expected_translations = <<-EOS.gsub(/^ */, '')
|
|
46
|
+
In French: Fournisseur OAuth2
|
|
47
|
+
In Italian: translation missing: it.doorkeeper.layouts.admin.nav.oauth2_provider
|
|
48
|
+
In Japanese: translation missing: ja.doorkeeper.layouts.admin.nav.oauth2_provider
|
|
49
|
+
EOS
|
|
50
|
+
|
|
51
|
+
expect(translations).to eq(expected_translations)
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
context 'when i18n.available_locales is not set' do
|
|
56
|
+
let(:translations) { app.run(translate_stuff) }
|
|
57
|
+
|
|
58
|
+
it 'loads all locales' do
|
|
59
|
+
expected_translations = <<-EOS.gsub(/^ */, '')
|
|
60
|
+
In French: Fournisseur OAuth2
|
|
61
|
+
In Italian: OAuth2 Provider
|
|
62
|
+
In Japanese: OAuth2 プロバイダー
|
|
63
|
+
EOS
|
|
64
|
+
|
|
65
|
+
expect(translations).to eq(expected_translations)
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
data/spec/spec_helper.rb
CHANGED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
module DoorkeeperI18n
|
|
2
|
+
module Spec
|
|
3
|
+
module FakeApp
|
|
4
|
+
#
|
|
5
|
+
# Starts a new Rails app and runs the given config block before
|
|
6
|
+
# initializing it
|
|
7
|
+
#
|
|
8
|
+
def self.start
|
|
9
|
+
require 'action_controller/railtie'
|
|
10
|
+
require 'doorkeeper-i18n'
|
|
11
|
+
|
|
12
|
+
app = Class.new(Rails::Application)
|
|
13
|
+
app.config.eager_load = false
|
|
14
|
+
app.config.i18n.enforce_available_locales = false
|
|
15
|
+
|
|
16
|
+
yield(app.config) if block_given?
|
|
17
|
+
|
|
18
|
+
app.initialize!
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
#
|
|
22
|
+
# Initialize Rails app in a clean environment.
|
|
23
|
+
#
|
|
24
|
+
# @param test [Proc] which have to be run after app is initialized
|
|
25
|
+
# @return [String] Result of calling +test+ after app was initialized
|
|
26
|
+
#
|
|
27
|
+
def self.run(test, &block)
|
|
28
|
+
r, w = IO.pipe
|
|
29
|
+
|
|
30
|
+
pid = fork do
|
|
31
|
+
r.close
|
|
32
|
+
|
|
33
|
+
start(&block)
|
|
34
|
+
|
|
35
|
+
w.write(test.call)
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
w.close
|
|
39
|
+
result = r.read
|
|
40
|
+
Process.wait(pid)
|
|
41
|
+
result
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
metadata
CHANGED
|
@@ -1,15 +1,29 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: doorkeeper-i18n
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 3.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Tute Costa
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2015-
|
|
11
|
+
date: 2015-11-26 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: rake
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - ">="
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '0'
|
|
20
|
+
type: :development
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - ">="
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: '0'
|
|
13
27
|
- !ruby/object:Gem::Dependency
|
|
14
28
|
name: rspec
|
|
15
29
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -38,6 +52,20 @@ dependencies:
|
|
|
38
52
|
- - "~>"
|
|
39
53
|
- !ruby/object:Gem::Version
|
|
40
54
|
version: 0.6.0
|
|
55
|
+
- !ruby/object:Gem::Dependency
|
|
56
|
+
name: railties
|
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
|
58
|
+
requirements:
|
|
59
|
+
- - ">="
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: '0'
|
|
62
|
+
type: :development
|
|
63
|
+
prerelease: false
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - ">="
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: '0'
|
|
41
69
|
description: Translations for doorkeeper rubygem.
|
|
42
70
|
email:
|
|
43
71
|
- tutecosta@gmail.com
|
|
@@ -51,12 +79,22 @@ files:
|
|
|
51
79
|
- MIT-LICENSE
|
|
52
80
|
- README.md
|
|
53
81
|
- Rakefile
|
|
54
|
-
- config/locales/en.yml
|
|
55
|
-
- config/locales/zh-TW.yml
|
|
56
82
|
- doorkeeper-i18n.gemspec
|
|
57
83
|
- lib/doorkeeper-i18n.rb
|
|
84
|
+
- lib/doorkeeper-i18n/railtie.rb
|
|
85
|
+
- log/development.log
|
|
86
|
+
- rails/locales/en.yml
|
|
87
|
+
- rails/locales/es.yml
|
|
88
|
+
- rails/locales/fr.yml
|
|
89
|
+
- rails/locales/it.yml
|
|
90
|
+
- rails/locales/ja.yml
|
|
91
|
+
- rails/locales/pt-BR.yml
|
|
92
|
+
- rails/locales/zh-CN.yml
|
|
93
|
+
- rails/locales/zh-TW.yml
|
|
58
94
|
- spec/doorkeeper-i18n_spec.rb
|
|
95
|
+
- spec/locale_loading_spec.rb
|
|
59
96
|
- spec/spec_helper.rb
|
|
97
|
+
- spec/support/fake_app.rb
|
|
60
98
|
homepage: https://github.com/doorkeeper-gem/doorkeeper-i18n
|
|
61
99
|
licenses:
|
|
62
100
|
- MIT
|
|
@@ -77,7 +115,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
77
115
|
version: '0'
|
|
78
116
|
requirements: []
|
|
79
117
|
rubyforge_project:
|
|
80
|
-
rubygems_version: 2.4.5
|
|
118
|
+
rubygems_version: 2.4.5.1
|
|
81
119
|
signing_key:
|
|
82
120
|
specification_version: 4
|
|
83
121
|
summary: Translations for doorkeeper rubygem.
|