sofav 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/MIT-LICENSE +20 -0
- data/README.md +35 -0
- data/Rakefile +34 -0
- data/app/builders/admin/form_builder.rb +250 -0
- data/app/controllers/application_controller.rb +23 -0
- data/app/decorators/base_decorator.rb +172 -0
- data/app/helpers/admin/core_helper.rb +237 -0
- data/app/helpers/admin/show_view_helper.rb +69 -0
- data/app/helpers/admin/tags_helper.rb +104 -0
- data/app/services/active_record/search_service.rb +121 -0
- data/app/views/admin/application/_breadcrumb_nav.html.erb +10 -0
- data/app/views/admin/application/_collection.html.erb +79 -0
- data/app/views/admin/application/_save_js.js.erb +20 -0
- data/app/views/admin/application/_sidebar.html.erb +62 -0
- data/app/views/admin/application/_topbar.html.erb +32 -0
- data/app/views/admin/application/actions/charge.html.erb +3 -0
- data/app/views/admin/application/actions/destroy.html.erb +5 -0
- data/app/views/admin/application/actions/edit.html.erb +1 -0
- data/app/views/admin/application/actions/edit_sights.html.erb +1 -0
- data/app/views/admin/application/actions/feedback.html.erb +4 -0
- data/app/views/admin/application/actions/index_charge.html.erb +1 -0
- data/app/views/admin/application/actions/index_destroy.html.erb +1 -0
- data/app/views/admin/application/actions/index_edit.html.erb +1 -0
- data/app/views/admin/application/actions/index_edit_sights.html.erb +1 -0
- data/app/views/admin/application/actions/index_show.html.erb +1 -0
- data/app/views/admin/application/actions/new.html.erb +1 -0
- data/app/views/admin/application/create.js.erb +1 -0
- data/app/views/admin/application/destroy.js.erb +6 -0
- data/app/views/admin/application/edit.html.erb +18 -0
- data/app/views/admin/application/index.html.erb +23 -0
- data/app/views/admin/application/new.html.erb +18 -0
- data/app/views/admin/application/partials/_map_pos_picker.html.erb +101 -0
- data/app/views/admin/application/partials/_sort_script.html.erb +32 -0
- data/app/views/admin/application/show.html.erb +16 -0
- data/app/views/admin/application/update.js.erb +1 -0
- data/app/views/admin/dashboard/index.html.erb +8 -0
- data/app/views/layouts/admin.html.erb +30 -0
- data/config/locales/devise.en.yml +64 -0
- data/config/locales/devise.zh-CN.yml +120 -0
- data/config/locales/doorkeeper.en.yml +124 -0
- data/config/locales/doorkeeper.zh-CN.yml +132 -0
- data/config/locales/en.yml +23 -0
- data/config/locales/enumerize/defaults.zh-CN.yml +7 -0
- data/config/locales/kaminari.zh-CN.yml +17 -0
- data/config/locales/rails.zh-CN.yml +204 -0
- data/config/locales/views/actions.zh-CN.yml +21 -0
- data/config/locales/views/attributes.zh-CN.yml +15 -0
- data/config/locales/views/breadcrumb.zh-CN.yml +5 -0
- data/config/locales/views/common.zh-CN.yml +7 -0
- data/config/locales/views/enums.zh-CN.yml +13 -0
- data/config/locales/views/profiles.zh-CN.yml +3 -0
- data/lib/generators/sofav/USAGE +0 -0
- data/lib/generators/sofav/sofav_generator.rb +50 -0
- data/lib/generators/sofav/templates/activerecord.zh-CN.yml +4 -0
- data/lib/generators/sofav/templates/attribute_types.zh-CN.yml +2 -0
- data/lib/sofav.rb +6 -0
- data/lib/sofav/decorator.rb +47 -0
- data/lib/sofav/local.rb +52 -0
- data/lib/sofav/version.rb +3 -0
- data/lib/tasks/sofa_tasks.rake +4 -0
- data/vendor/assets/javascripts/admin/here.js +0 -0
- data/vendor/assets/javascripts/bootbox.js +1020 -0
- data/vendor/assets/javascripts/bootstrap.js +2377 -0
- data/vendor/assets/javascripts/jquery-ui.js +5169 -0
- data/vendor/assets/javascripts/select2.js +5725 -0
- data/vendor/assets/stylesheets/bootstrap.css +6800 -0
- data/vendor/assets/stylesheets/bootstrap.css.map +1 -0
- data/vendor/assets/stylesheets/jquery-ui.css +453 -0
- data/vendor/assets/stylesheets/select2.css +484 -0
- metadata +211 -0
@@ -0,0 +1,16 @@
|
|
1
|
+
<div class="card">
|
2
|
+
<div class="title">
|
3
|
+
<span>
|
4
|
+
<%= decorate.try(:show_page_title) || "查看" %>
|
5
|
+
</span>
|
6
|
+
<div class="pull-right btn-groups">
|
7
|
+
<%= yield(:permitted_methods).presence || render_class_actions(decorator) %>
|
8
|
+
</div>
|
9
|
+
</div>
|
10
|
+
<div class="body">
|
11
|
+
<%= yield(:breadcrumb_nav).presence || render('breadcrumb_nav') %>
|
12
|
+
<div class="show-box">
|
13
|
+
<%= build_view_for(:show_page_attributes) %>
|
14
|
+
</div>
|
15
|
+
</div>
|
16
|
+
</div>
|
@@ -0,0 +1 @@
|
|
1
|
+
<%= render 'save_js' %>
|
@@ -0,0 +1,30 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<title><%= yield(:title).presence %></title>
|
5
|
+
<meta charset="utf-8">
|
6
|
+
<%= csrf_meta_tags %>
|
7
|
+
|
8
|
+
<%= favicon_link_tag asset_url("favicon.png"), type: 'image/png'%>
|
9
|
+
<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
|
10
|
+
<meta name="viewport" content="width=800">
|
11
|
+
<meta name="renderer" content="webkit">
|
12
|
+
<%= stylesheet_link_tag 'admin/application', media: 'all', 'data-turbolinks-track': 'reload' %>
|
13
|
+
<%= javascript_include_tag 'admin/application', 'data-turbolinks-track': 'reload' %>
|
14
|
+
<meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
15
|
+
</head>
|
16
|
+
|
17
|
+
<body>
|
18
|
+
<div class="admin">
|
19
|
+
<%= render 'topbar' %>
|
20
|
+
|
21
|
+
<div class="main">
|
22
|
+
<%= render 'sidebar' %>
|
23
|
+
<div class="content">
|
24
|
+
<%= yield %>
|
25
|
+
</div>
|
26
|
+
</div>
|
27
|
+
</div>
|
28
|
+
|
29
|
+
</body>
|
30
|
+
</html>
|
@@ -0,0 +1,64 @@
|
|
1
|
+
# Additional translations at https://github.com/plataformatec/devise/wiki/I18n
|
2
|
+
|
3
|
+
en:
|
4
|
+
devise:
|
5
|
+
confirmations:
|
6
|
+
confirmed: "Your email address has been successfully confirmed."
|
7
|
+
send_instructions: "You will receive an email with instructions for how to confirm your email address in a few minutes."
|
8
|
+
send_paranoid_instructions: "If your email address exists in our database, you will receive an email with instructions for how to confirm your email address in a few minutes."
|
9
|
+
failure:
|
10
|
+
already_authenticated: "You are already signed in."
|
11
|
+
inactive: "Your account is not activated yet."
|
12
|
+
invalid: "Invalid %{authentication_keys} or password."
|
13
|
+
locked: "Your account is locked."
|
14
|
+
last_attempt: "You have one more attempt before your account is locked."
|
15
|
+
not_found_in_database: "Invalid %{authentication_keys} or password."
|
16
|
+
timeout: "Your session expired. Please sign in again to continue."
|
17
|
+
unauthenticated: "You need to sign in or sign up before continuing."
|
18
|
+
unconfirmed: "You have to confirm your email address before continuing."
|
19
|
+
mailer:
|
20
|
+
confirmation_instructions:
|
21
|
+
subject: "Confirmation instructions"
|
22
|
+
reset_password_instructions:
|
23
|
+
subject: "Reset password instructions"
|
24
|
+
unlock_instructions:
|
25
|
+
subject: "Unlock instructions"
|
26
|
+
email_changed:
|
27
|
+
subject: "Email Changed"
|
28
|
+
password_change:
|
29
|
+
subject: "Password Changed"
|
30
|
+
omniauth_callbacks:
|
31
|
+
failure: "Could not authenticate you from %{kind} because \"%{reason}\"."
|
32
|
+
success: "Successfully authenticated from %{kind} account."
|
33
|
+
passwords:
|
34
|
+
no_token: "You can't access this page without coming from a password reset email. If you do come from a password reset email, please make sure you used the full URL provided."
|
35
|
+
send_instructions: "You will receive an email with instructions on how to reset your password in a few minutes."
|
36
|
+
send_paranoid_instructions: "If your email address exists in our database, you will receive a password recovery link at your email address in a few minutes."
|
37
|
+
updated: "Your password has been changed successfully. You are now signed in."
|
38
|
+
updated_not_active: "Your password has been changed successfully."
|
39
|
+
registrations:
|
40
|
+
destroyed: "Bye! Your account has been successfully cancelled. We hope to see you again soon."
|
41
|
+
signed_up: "Welcome! You have signed up successfully."
|
42
|
+
signed_up_but_inactive: "You have signed up successfully. However, we could not sign you in because your account is not yet activated."
|
43
|
+
signed_up_but_locked: "You have signed up successfully. However, we could not sign you in because your account is locked."
|
44
|
+
signed_up_but_unconfirmed: "A message with a confirmation link has been sent to your email address. Please follow the link to activate your account."
|
45
|
+
update_needs_confirmation: "You updated your account successfully, but we need to verify your new email address. Please check your email and follow the confirm link to confirm your new email address."
|
46
|
+
updated: "Your account has been updated successfully."
|
47
|
+
sessions:
|
48
|
+
signed_in: "Signed in successfully."
|
49
|
+
signed_out: "Signed out successfully."
|
50
|
+
already_signed_out: "Signed out successfully."
|
51
|
+
unlocks:
|
52
|
+
send_instructions: "You will receive an email with instructions for how to unlock your account in a few minutes."
|
53
|
+
send_paranoid_instructions: "If your account exists, you will receive an email with instructions for how to unlock it in a few minutes."
|
54
|
+
unlocked: "Your account has been unlocked successfully. Please sign in to continue."
|
55
|
+
errors:
|
56
|
+
messages:
|
57
|
+
already_confirmed: "was already confirmed, please try signing in"
|
58
|
+
confirmation_period_expired: "needs to be confirmed within %{period}, please request a new one"
|
59
|
+
expired: "has expired, please request a new one"
|
60
|
+
not_found: "not found"
|
61
|
+
not_locked: "was not locked"
|
62
|
+
not_saved:
|
63
|
+
one: "1 error prohibited this %{resource} from being saved:"
|
64
|
+
other: "%{count} errors prohibited this %{resource} from being saved:"
|
@@ -0,0 +1,120 @@
|
|
1
|
+
zh-CN:
|
2
|
+
activerecord:
|
3
|
+
attributes:
|
4
|
+
user:
|
5
|
+
current_password: "密码"
|
6
|
+
email: "电子邮箱"
|
7
|
+
password: "密码"
|
8
|
+
password_confirmation: "密码确认"
|
9
|
+
remember_me: "记住登录信息"
|
10
|
+
reset_password_token:
|
11
|
+
unlock_token:
|
12
|
+
models:
|
13
|
+
user: "用户"
|
14
|
+
devise:
|
15
|
+
confirmations:
|
16
|
+
confirmed: "恭喜您,注册成功,现在可以登录了"
|
17
|
+
new:
|
18
|
+
resend_confirmation_instructions: "重新发送确认邮件"
|
19
|
+
send_instructions: "几分钟后,您将收到确认帐号的电子邮件."
|
20
|
+
send_paranoid_instructions: "您将收到一封确认账号的邮件.,请注意查收"
|
21
|
+
failure:
|
22
|
+
already_authenticated: "登录成功"
|
23
|
+
inactive: "您的账号还未激活"
|
24
|
+
invalid: "*手机号或密码错误"
|
25
|
+
last_attempt: "你还有一次尝试正确的密码,过后你的帐户会被锁住"
|
26
|
+
locked: "该手机号已被注册占用"
|
27
|
+
not_found_in_database: "*手机号或密码错误"
|
28
|
+
timeout: "登录超时,请重新登录."
|
29
|
+
unauthenticated: ""
|
30
|
+
unconfirmed: "继续操作前请先确认您的帐号."
|
31
|
+
mailer:
|
32
|
+
confirmation_instructions:
|
33
|
+
action: "确认我的帐户"
|
34
|
+
greeting: "欢迎 %{recipient}!"
|
35
|
+
instruction: "您可以通过下面的链接确认您的帐户的电子邮件:"
|
36
|
+
subject: "确认信息"
|
37
|
+
password_change:
|
38
|
+
greeting:
|
39
|
+
message:
|
40
|
+
subject:
|
41
|
+
reset_password_instructions:
|
42
|
+
action: "更改我的密码"
|
43
|
+
greeting: "你好 %{recipient}!"
|
44
|
+
instruction: "有人要求更改密码的链接,您可以通过下面的链接更改密码:"
|
45
|
+
instruction_2: "如果您没有要求请求更改密码,请忽略此电子邮件。"
|
46
|
+
instruction_3: "如果你没有访问上面的链接并更改密码,你的密码就不会被改变。"
|
47
|
+
subject: "重置密码信息"
|
48
|
+
unlock_instructions:
|
49
|
+
action: "帐户解锁"
|
50
|
+
greeting: "你好 %{recipient}!"
|
51
|
+
instruction: "点击下面的链接到您的帐户解锁:"
|
52
|
+
message: "由于多次的不成功的登入尝试,您的帐户已被锁定。"
|
53
|
+
subject: "解锁信息"
|
54
|
+
omniauth_callbacks:
|
55
|
+
failure: "因为%{reason},所以您无法从%{kind}获得授权."
|
56
|
+
success: "成功地从%{kind}获得授权."
|
57
|
+
passwords:
|
58
|
+
edit:
|
59
|
+
change_my_password: "更改我的密码"
|
60
|
+
change_your_password: "更改您的密码"
|
61
|
+
confirm_new_password: "确认新密码"
|
62
|
+
new_password: "新密码"
|
63
|
+
new:
|
64
|
+
forgot_your_password: "找回密码"
|
65
|
+
send_me_reset_password_instructions: "请给我发送重设密码的邮件"
|
66
|
+
no_token: "您暂时不能访问此页面。您需要通过密码重置邮件中的重置链接来访问此页面,如果您正是通过重置链接访问,请确定链接的正确性。"
|
67
|
+
send_instructions: "几分钟后,您将收到重置密码的手机短信."
|
68
|
+
send_paranoid_instructions: "如果您的邮箱存在于我们的数据库中,您将收到一封找回密码的邮件."
|
69
|
+
updated: "您的密码已修改成功,您现在已登录."
|
70
|
+
updated_not_active: "密码修改成功."
|
71
|
+
registrations:
|
72
|
+
destroyed: "再见!您的帐户已成功注销。我们希望很快可以再见到您."
|
73
|
+
edit:
|
74
|
+
are_you_sure: "你确定吗?"
|
75
|
+
cancel_my_account: "取消我的帐户"
|
76
|
+
currently_waiting_confirmation_for_email: "等待 %{email} 的确认"
|
77
|
+
leave_blank_if_you_don_t_want_to_change_it: "你不想去改变它,不需要填写"
|
78
|
+
title: "修改 %{resource}"
|
79
|
+
unhappy: "不喜欢"
|
80
|
+
update: "更新"
|
81
|
+
we_need_your_current_password_to_confirm_your_changes: "我们需要您的当前密码以确认您的更改"
|
82
|
+
new:
|
83
|
+
sign_up: "注册"
|
84
|
+
signed_up: "欢迎您!您已注册成功."
|
85
|
+
signed_up_but_inactive: "谢谢您!然而您的账号还未被激活,在这之前无法登陆。"
|
86
|
+
signed_up_but_locked: "谢谢您!然而您的账号已被锁定,无法登陆。"
|
87
|
+
signed_up_but_unconfirmed: "谢谢您!一封确认邮件已经发至您的邮箱,请点击其中的链接激活您的账号。"
|
88
|
+
update_needs_confirmation: "新的账号信息已成功提交,一封确认邮件已经发至您的邮箱,请点击其中的链接以使您的新E-mail地址生效。"
|
89
|
+
updated: "帐号资料更新成功."
|
90
|
+
sessions:
|
91
|
+
already_signed_out: "成功的登出"
|
92
|
+
new:
|
93
|
+
sign_in: "登录"
|
94
|
+
signed_in: "登录成功."
|
95
|
+
signed_out: "退出成功."
|
96
|
+
shared:
|
97
|
+
links:
|
98
|
+
back: "返回"
|
99
|
+
didn_t_receive_confirmation_instructions: "没有收到确认邮件?"
|
100
|
+
didn_t_receive_unlock_instructions: "没有收到解锁邮件?"
|
101
|
+
forgot_your_password: "忘记密码?"
|
102
|
+
sign_in: "登录"
|
103
|
+
sign_in_with_provider: "用 %{provider} 登录"
|
104
|
+
sign_up: "注册"
|
105
|
+
unlocks:
|
106
|
+
new:
|
107
|
+
resend_unlock_instructions: "重发解锁邮件"
|
108
|
+
send_instructions: "几分钟后,您将收到一封解锁帐号的邮件."
|
109
|
+
send_paranoid_instructions: "如果您的邮箱存在于我们的数据库中,您将收到一封解锁账号的邮件."
|
110
|
+
unlocked: "您的帐号已成功解锁,您现在已登录."
|
111
|
+
errors:
|
112
|
+
messages:
|
113
|
+
already_confirmed: "已经确认,请重新登录."
|
114
|
+
confirmation_period_expired: "必须在 %{period} 以内确认,请重新申请"
|
115
|
+
expired: "您已过期,请重新申请"
|
116
|
+
not_found: "手机未注册"
|
117
|
+
not_locked: "未锁定"
|
118
|
+
not_saved:
|
119
|
+
one: "因为1个错误导致此%{resource}保存失败:"
|
120
|
+
other: "因为%{count}个错误导致此%{resource}保存失败:"
|
@@ -0,0 +1,124 @@
|
|
1
|
+
en:
|
2
|
+
activerecord:
|
3
|
+
attributes:
|
4
|
+
doorkeeper/application:
|
5
|
+
name: 'Name'
|
6
|
+
redirect_uri: 'Redirect 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: 'Are you sure?'
|
21
|
+
buttons:
|
22
|
+
edit: 'Edit'
|
23
|
+
destroy: 'Destroy'
|
24
|
+
submit: 'Submit'
|
25
|
+
cancel: 'Cancel'
|
26
|
+
authorize: '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: 'Edit application'
|
35
|
+
index:
|
36
|
+
title: 'Your applications'
|
37
|
+
new: 'New Application'
|
38
|
+
name: 'Name'
|
39
|
+
callback_url: 'Callback URL'
|
40
|
+
new:
|
41
|
+
title: 'New Application'
|
42
|
+
show:
|
43
|
+
title: 'Application: %{name}'
|
44
|
+
application_id: 'Application Id'
|
45
|
+
secret: 'Secret'
|
46
|
+
scopes: 'Scopes'
|
47
|
+
callback_urls: 'Callback urls'
|
48
|
+
actions: 'Actions'
|
49
|
+
|
50
|
+
authorizations:
|
51
|
+
buttons:
|
52
|
+
authorize: 'Authorize'
|
53
|
+
deny: 'Deny'
|
54
|
+
error:
|
55
|
+
title: 'An error has occurred'
|
56
|
+
new:
|
57
|
+
title: 'Authorization required'
|
58
|
+
prompt: 'Authorize %{client_name} to use your account?'
|
59
|
+
able_to: 'This application will be able to'
|
60
|
+
show:
|
61
|
+
title: 'Authorization code'
|
62
|
+
|
63
|
+
authorized_applications:
|
64
|
+
confirmations:
|
65
|
+
revoke: 'Are you sure?'
|
66
|
+
buttons:
|
67
|
+
revoke: 'Revoke'
|
68
|
+
index:
|
69
|
+
title: 'Your authorized applications'
|
70
|
+
application: 'Application'
|
71
|
+
created_at: '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 unconfigured.'
|
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: 'Application created.'
|
109
|
+
destroy:
|
110
|
+
notice: 'Application deleted.'
|
111
|
+
update:
|
112
|
+
notice: 'Application updated.'
|
113
|
+
authorized_applications:
|
114
|
+
destroy:
|
115
|
+
notice: 'Application revoked.'
|
116
|
+
|
117
|
+
layouts:
|
118
|
+
admin:
|
119
|
+
nav:
|
120
|
+
oauth2_provider: 'OAuth2 Provider'
|
121
|
+
applications: 'Applications'
|
122
|
+
home: 'Home'
|
123
|
+
application:
|
124
|
+
title: 'OAuth authorization required'
|
@@ -0,0 +1,132 @@
|
|
1
|
+
zh-CN:
|
2
|
+
activerecord:
|
3
|
+
attributes:
|
4
|
+
doorkeeper/application:
|
5
|
+
name: '名称'
|
6
|
+
redirect_uri: '登录回调地址'
|
7
|
+
scopes: 'Scopes'
|
8
|
+
errors:
|
9
|
+
models:
|
10
|
+
doorkeeper/application:
|
11
|
+
attributes:
|
12
|
+
redirect_uri:
|
13
|
+
fragment_present: '不能包含片段(#)'
|
14
|
+
invalid_uri: '必须是有效的 URL 格式'
|
15
|
+
relative_uri: '必须是绝对的 URL 地址'
|
16
|
+
secured_uri: '必须是 HTTPS/SSL 的 URL 地址'
|
17
|
+
|
18
|
+
doorkeeper:
|
19
|
+
applications:
|
20
|
+
confirmations:
|
21
|
+
destroy: '确定要删除应用吗?'
|
22
|
+
buttons:
|
23
|
+
edit: '编辑'
|
24
|
+
destroy: '删除'
|
25
|
+
submit: '提交'
|
26
|
+
cancel: '取消'
|
27
|
+
authorize: '授权'
|
28
|
+
form:
|
29
|
+
error: '抱歉! 提交信息的时候遇到了下面的错误'
|
30
|
+
help:
|
31
|
+
redirect_uri: '每行只能有一个 URL'
|
32
|
+
native_redirect_uri: '使用 %{native_redirect_uri} 作为本地测试'
|
33
|
+
scopes: '用空格隔开scope,留空则使用默认设置'
|
34
|
+
edit:
|
35
|
+
title: '修改应用'
|
36
|
+
index:
|
37
|
+
title: '你的应用'
|
38
|
+
new: '创建新应用'
|
39
|
+
name: '名称'
|
40
|
+
callback_url: '登录回调地址'
|
41
|
+
new:
|
42
|
+
title: '创建新应用'
|
43
|
+
show:
|
44
|
+
title: '应用: %{name}'
|
45
|
+
application_id: '应用 ID'
|
46
|
+
secret: '私钥'
|
47
|
+
scopes: 'Scopes'
|
48
|
+
callback_urls: '登录回调地址'
|
49
|
+
actions: '操作'
|
50
|
+
|
51
|
+
authorizations:
|
52
|
+
buttons:
|
53
|
+
authorize: '授权'
|
54
|
+
deny: '拒绝'
|
55
|
+
error:
|
56
|
+
title: '存在错误'
|
57
|
+
new:
|
58
|
+
title: '需要你授权'
|
59
|
+
prompt: '授权 %{client_name} 使用你的帐号?'
|
60
|
+
able_to: '此应用将会'
|
61
|
+
show:
|
62
|
+
title: '授权码'
|
63
|
+
|
64
|
+
authorized_applications:
|
65
|
+
confirmations:
|
66
|
+
revoke: '确定要注销此应用的认证信息吗?'
|
67
|
+
buttons:
|
68
|
+
revoke: '注销'
|
69
|
+
index:
|
70
|
+
title: '你授权的应用列表'
|
71
|
+
application: '应用'
|
72
|
+
created_at: '授权时间'
|
73
|
+
date_format: '%Y-%m-%d %H:%M:%S'
|
74
|
+
|
75
|
+
errors:
|
76
|
+
messages:
|
77
|
+
# Common error messages
|
78
|
+
vacant_mobile: "手机号码不能为空"
|
79
|
+
vacant_password: "密码不能为空"
|
80
|
+
invalid_mobile: "请输入正确有效的手机号码"
|
81
|
+
invalid_password: '请输入至少六位以上的密码'
|
82
|
+
invalid_account: '该帐号不存在'
|
83
|
+
invalid_request: '这个请求缺少必要的参数,或者参数值、格式不正确'
|
84
|
+
invalid_redirect_uri: '无效的登录回调地址'
|
85
|
+
unauthorized_client: '未授权的应用,请求无法执行'
|
86
|
+
access_denied: '用户或服务器拒绝了请求'
|
87
|
+
invalid_scope: '请求范围无效、未知或格式不正确'
|
88
|
+
server_error: '服务器异常,无法处理请求'
|
89
|
+
temporarily_unavailable: '服务器维护中,无法处理请求'
|
90
|
+
locked_account: '该帐号已被冻结'
|
91
|
+
account_deleted: '该账号已被管理员删除'
|
92
|
+
|
93
|
+
#configuration error messages
|
94
|
+
credential_flow_not_configured: 'Resource Owner Password Credentials flow failed due to Doorkeeper.configure.resource_owner_from_credentials being unconfigured.'
|
95
|
+
resource_owner_authenticator_not_configured: 'Resource Owner find failed due to Doorkeeper.configure.resource_owner_authenticator being unconfiged.'
|
96
|
+
|
97
|
+
# Access grant errors
|
98
|
+
unsupported_response_type: '服务器不支持这种 response type'
|
99
|
+
|
100
|
+
# Access token errors
|
101
|
+
invalid_client: '由于未知、不支持或没有客户端,认证失败'
|
102
|
+
invalid_grant: '请输入正确的手机号码和密码'
|
103
|
+
unsupported_grant_type: '服务器不支持此类型的授权方式'
|
104
|
+
|
105
|
+
# Password Access token errors
|
106
|
+
invalid_resource_owner: '资源所有者认证无效或没有所有者'
|
107
|
+
|
108
|
+
invalid_token:
|
109
|
+
revoked: "您的帐号已在其他设备登录,请重新登录"
|
110
|
+
expired: "帐号授权已过期,请重新登录"
|
111
|
+
unknown: "Access Token 无效"
|
112
|
+
|
113
|
+
flash:
|
114
|
+
applications:
|
115
|
+
create:
|
116
|
+
notice: '应用创建成功'
|
117
|
+
destroy:
|
118
|
+
notice: '应用删除成功'
|
119
|
+
update:
|
120
|
+
notice: '应用修改成功'
|
121
|
+
authorized_applications:
|
122
|
+
destroy:
|
123
|
+
notice: '已成功注销了应用的认证信息'
|
124
|
+
|
125
|
+
layouts:
|
126
|
+
admin:
|
127
|
+
nav:
|
128
|
+
oauth2_provider: 'OAuth2 Provider'
|
129
|
+
applications: '应用'
|
130
|
+
home: '首页'
|
131
|
+
application:
|
132
|
+
title: 'OAuth 认证'
|