doorkeeper-i18n 2.0.0 → 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- 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.
|