adminsite 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (115) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +12 -0
  3. data/Gemfile.lock +209 -0
  4. data/MIT-LICENSE +20 -0
  5. data/README.markdown +122 -0
  6. data/Rakefile +14 -0
  7. data/USAGE +18 -0
  8. data/VERSION +1 -0
  9. data/app/admin_configs/adminsite/adminsite_admin_user_admin_config.rb +43 -0
  10. data/app/admin_configs/adminsite/adminsite_file_asset_admin_config.rb +32 -0
  11. data/app/admin_configs/adminsite/adminsite_page_admin_config.rb +46 -0
  12. data/app/admin_configs/adminsite/adminsite_page_layout_admin_config.rb +31 -0
  13. data/app/assets/images/adminsite/admin/accept.png +0 -0
  14. data/app/assets/images/adminsite/admin/add.png +0 -0
  15. data/app/assets/images/adminsite/admin/arrow_left.png +0 -0
  16. data/app/assets/images/adminsite/admin/arrow_refresh.png +0 -0
  17. data/app/assets/images/adminsite/admin/arrow_up.png +0 -0
  18. data/app/assets/images/adminsite/admin/cross.png +0 -0
  19. data/app/assets/images/adminsite/admin/logo.gif +0 -0
  20. data/app/assets/images/adminsite/admin/logo.png +0 -0
  21. data/app/assets/images/adminsite/admin/magnifier.png +0 -0
  22. data/app/assets/images/adminsite/admin/newspaper_add.png +0 -0
  23. data/app/assets/images/adminsite/admin/newspaper_delete.png +0 -0
  24. data/app/assets/images/adminsite/admin/openid-icon-small.gif +0 -0
  25. data/app/assets/images/adminsite/admin/page_white_magnify.png +0 -0
  26. data/app/assets/images/adminsite/admin/pencil.png +0 -0
  27. data/app/assets/images/adminsite/admin/rails.png +0 -0
  28. data/app/assets/images/adminsite/admin/reorder.gif +0 -0
  29. data/app/assets/images/adminsite/admin/spinner.gif +0 -0
  30. data/app/assets/javascripts/adminsite/admin.js +13 -0
  31. data/app/assets/javascripts/adminsite/admin/code_editor.js.coffee +40 -0
  32. data/app/assets/javascripts/adminsite/admin/hide_and_show.js +26 -0
  33. data/app/assets/stylesheets/adminsite/admin.scss +16 -0
  34. data/app/assets/stylesheets/adminsite/admin/base.scss +521 -0
  35. data/app/assets/stylesheets/adminsite/admin/code_editor.scss +29 -0
  36. data/app/assets/stylesheets/adminsite/admin/pagination.scss +28 -0
  37. data/app/controllers/adminsite/admin/adminsite_admin_users_controller.rb +21 -0
  38. data/app/controllers/adminsite/admin/adminsite_file_assets_controller.rb +57 -0
  39. data/app/controllers/adminsite/admin/adminsite_page_layouts_controller.rb +41 -0
  40. data/app/controllers/adminsite/admin/adminsite_pages_controller.rb +40 -0
  41. data/app/controllers/adminsite/admin/base_controller.rb +16 -0
  42. data/app/controllers/adminsite/admin/crud_controller.rb +27 -0
  43. data/app/controllers/adminsite/admin/iframe_controller.rb +28 -0
  44. data/app/controllers/adminsite/admin/resources_controller.rb +148 -0
  45. data/app/controllers/adminsite/admin_application_controller.rb +9 -0
  46. data/app/controllers/adminsite/admin_user_sessions_controller.rb +5 -0
  47. data/app/controllers/adminsite/contents_controller.rb +88 -0
  48. data/app/helpers/admin/adminsite_application_helper.rb +174 -0
  49. data/app/helpers/admin_application_helper.rb +3 -0
  50. data/app/models/adminsite/admin_config/base.rb +100 -0
  51. data/app/models/adminsite/admin_user.rb +10 -0
  52. data/app/models/adminsite/file_asset.rb +22 -0
  53. data/app/models/adminsite/page.rb +59 -0
  54. data/app/models/adminsite/page_layout.rb +9 -0
  55. data/app/views/adminsite/admin/adminsite_file_assets/index.html.haml +39 -0
  56. data/app/views/adminsite/admin/adminsite_page_layouts/edit.html.haml +5 -0
  57. data/app/views/adminsite/admin/adminsite_page_layouts/index.html.haml +9 -0
  58. data/app/views/adminsite/admin/adminsite_page_layouts/new.html.haml +5 -0
  59. data/app/views/adminsite/admin/adminsite_pages/edit.html.haml +5 -0
  60. data/app/views/adminsite/admin/adminsite_pages/index.html.haml +16 -0
  61. data/app/views/adminsite/admin/adminsite_pages/new.html.haml +5 -0
  62. data/app/views/adminsite/admin/crud/index.html.haml +4 -0
  63. data/app/views/adminsite/admin/crud/show.html.haml +15 -0
  64. data/app/views/adminsite/admin/iframe/index.haml +14 -0
  65. data/app/views/adminsite/admin/resources/_form.haml +6 -0
  66. data/app/views/adminsite/admin/resources/_list.haml +18 -0
  67. data/app/views/adminsite/admin/resources/_search_form.html.haml +41 -0
  68. data/app/views/adminsite/admin/resources/edit.haml +13 -0
  69. data/app/views/adminsite/admin/resources/index.haml +13 -0
  70. data/app/views/adminsite/admin/resources/new.haml +14 -0
  71. data/app/views/adminsite/admin/resources/show.haml +15 -0
  72. data/app/views/adminsite/admin/shared/_admin_menu.html.haml +6 -0
  73. data/app/views/adminsite/admin/shared/_content_menu.html.haml +4 -0
  74. data/app/views/adminsite/admin/shared/_page_assets_list.html.haml +6 -0
  75. data/app/views/adminsite/admin/shared/_syntax_help.html.haml +24 -0
  76. data/app/views/adminsite/admin_user_sessions/new.html.haml +14 -0
  77. data/app/views/layouts/adminsite/admin.html.haml +31 -0
  78. data/config/initializers/adminsite_constants.rb +2 -0
  79. data/config/initializers/assets.rb +7 -0
  80. data/config/initializers/devise.rb +265 -0
  81. data/config/initializers/filter_parameter_logging.rb +4 -0
  82. data/config/initializers/paperclip.rb +15 -0
  83. data/config/initializers/time_formats.rb +1 -0
  84. data/config/locales/da.devise.yaml +57 -0
  85. data/config/locales/da.yaml +199 -0
  86. data/config/locales/en.devise.yaml +60 -0
  87. data/config/locales/en.yaml +205 -0
  88. data/config/routes.rb +17 -0
  89. data/db/migrate/20101007000000_create_admin.rb +59 -0
  90. data/db/migrate/20101007000001_create_cms_tables.rb +39 -0
  91. data/lib/adminsite.rb +28 -0
  92. data/lib/adminsite/configuration.rb +15 -0
  93. data/lib/adminsite/engine.rb +30 -0
  94. data/lib/adminsite/liquid/tags/asset.rb +70 -0
  95. data/lib/adminsite/version.rb +3 -0
  96. data/lib/generators/adminsite/add_dashboard/add_dashboard_generator.rb +34 -0
  97. data/lib/generators/adminsite/add_dashboard/templates/controllers/admin_dashboard_controller.rb +13 -0
  98. data/lib/generators/adminsite/add_dashboard/templates/views/index.html.haml +6 -0
  99. data/lib/generators/adminsite/add_iframe/add_iframe_generator.rb +42 -0
  100. data/lib/generators/adminsite/add_iframe/templates/controllers/admin_iframe_controller.rb +16 -0
  101. data/lib/generators/adminsite/add_resource/USAGE +0 -0
  102. data/lib/generators/adminsite/add_resource/add_resource_generator.rb +40 -0
  103. data/lib/generators/adminsite/add_resource/templates/admin_configs/resource_admin_config.rb +47 -0
  104. data/lib/generators/adminsite/add_resource/templates/controllers/admin_resource_controller.rb +19 -0
  105. data/lib/generators/adminsite/install/USAGE +13 -0
  106. data/lib/generators/adminsite/install/install_generator.rb +51 -0
  107. data/lib/generators/adminsite/install/templates/assets/adminsite.js +17 -0
  108. data/lib/generators/adminsite/install/templates/assets/adminsite.scss +14 -0
  109. data/lib/generators/adminsite/install/templates/config/locales/adminsite.da.yml +4 -0
  110. data/lib/generators/adminsite/install/templates/config/locales/adminsite.en.yml +6 -0
  111. data/lib/generators/adminsite/install/templates/recipes/application.rb +18 -0
  112. data/lib/generators/adminsite/install/templates/views/_admin_menu.html.haml +8 -0
  113. data/lib/recipes/adminsite.rb +82 -0
  114. data/lib/tasks/adminsite.rake +147 -0
  115. metadata +384 -0
@@ -0,0 +1,4 @@
1
+ # Be sure to restart your server when you modify this file.
2
+
3
+ # Configure sensitive parameters which will be filtered from the log file.
4
+ Rails.application.config.filter_parameters |= [:password, :password_confirmation]
@@ -0,0 +1,15 @@
1
+ if Rails.env.production?
2
+ # Paperclip::Attachment.default_options.update({
3
+ # :path => "images/:id/:basename.:extension",
4
+ # :storage => :fog, # -> requires 'fog' gem
5
+ # :fog_credentials => {
6
+ # :provider => 'Rackspace',
7
+ # :rackspace_username => 'XXXXXX',
8
+ # :rackspace_api_key => 'XXXXXX',
9
+ # :persistent => false
10
+ # },
11
+ # :fog_directory => 'XXXXXX',
12
+ # :fog_public => true,
13
+ # :fog_host => 'https://XXXXXX.ssl.cf1.rackcdn.com'
14
+ # })
15
+ end
@@ -0,0 +1 @@
1
+ Time::DATE_FORMATS[:default] = "%B-%d-%y , %H:%M"
@@ -0,0 +1,57 @@
1
+ da:
2
+ devise:
3
+ confirmations:
4
+ confirmed: "Din konto er blevet bekræftet."
5
+ send_instructions: "Om få minutter vil du modtage en email med instruktioner om aktivering af din konto."
6
+ send_paranoid_instructions: "Hvis din e-mail adresse findes i vores database vil du modtage en e-mail med instruktioner om hvordan du kan aktivere din konto."
7
+ failure:
8
+ already_authenticated: "Du er allerede logget ind."
9
+ inactive: "Din konto er ikke bekræftet."
10
+ invalid: "Email eller password er ikke gyldig."
11
+ locked: "Din konto er låst."
12
+ last_attempt: "Du har et mere forsøg inden din konto vil blive låst."
13
+ not_found_in_database: "Email eller password er ikke gyldig."
14
+ timeout: "Din session er udløbet. Log ind igen for at kunne fortsætte."
15
+ unauthenticated: "Du skal logge ind for at kunne fortsætte."
16
+ unconfirmed: "Du skal bekræfte din konto for at kunne fortsætte."
17
+ mailer:
18
+ confirmation_instructions:
19
+ subject: "Bekræft din konto"
20
+ reset_password_instructions:
21
+ subject: "Nulstilling af password"
22
+ unlock_instructions:
23
+ subject: "Genåbning af konto"
24
+ omniauth_callbacks:
25
+ failure: "Du kunne ikke logges ind med din %{kind} konto: \"%{reason}\"."
26
+ success: "Du er nu logget ind med din %{kind} konto."
27
+ passwords:
28
+ no_token: "Du har kun adgang til denne side via link fra en email ang. nulstilling af password. Hvis du kommer fra denne email skal du sikre dig at du bruge hele URL'en."
29
+ send_instructions: "Du vil om et øjeblik modtage en email vedrørende nulstilling af password."
30
+ send_paranoid_instructions: "Hvis din e-mail adresse findes i vores database vil du modtage et link til hvor du kan nulstille dit password."
31
+ updated: "Dit password er ændret og du er nu logget ind."
32
+ updated_not_active: "Dit password er ændret."
33
+ registrations:
34
+ destroyed: "Farvel. Din konto er nu lukket."
35
+ signed_up: "Din registrering er godkendt."
36
+ signed_up_but_inactive: "Din registrering er godkendt, men vi kunne ikke logge dig ind, da din konto endnu ikke er blevet aktiveret."
37
+ signed_up_but_locked: "Din registrering er godkendt, men vi kunne ikke logge dig ind, da din konto er låst."
38
+ signed_up_but_unconfirmed: "En besked med bekræftelses link er blevet sendt til din email adresse. Åbn venligst linket for at aktivere din konto."
39
+ update_needs_confirmation: "Din konto er blevet opdateret, men vi er nødt til at bekræfte din nye email. Check venligst din mail og klik på bekræftelses linket for at bekræfte din nye email."
40
+ updated: "Din konto er opdateret."
41
+ sessions:
42
+ signed_in: "Du er nu logget ind."
43
+ signed_out: "Du er nu logget ud."
44
+ unlocks:
45
+ send_instructions: 'Om få minutter vil du modtage en email med instruktioner om genåbning af din konto.'
46
+ send_paranoid_instructions: 'Hvis din e-mail adresse findes i vores database vil du modtage in e-mail med instutioner om hvordan du kan låse din konto op.'
47
+ unlocked: 'Din konto er genåbnet og du er nu logget ind.'
48
+ errors:
49
+ messages:
50
+ already_confirmed: "er allerede bekræftet"
51
+ confirmation_period_expired: "skal bekræftes inden %{period}, anmod venligst om en ny"
52
+ expired: "er udløbet. Vær venlig at bede om en ny"
53
+ not_found: "ikke fundet"
54
+ not_locked: "var ikke låst"
55
+ not_saved:
56
+ one: "1 fejl medførte at denne %{resource} ikke kunne gemmes:"
57
+ other: "%{count} fejl medførte at denne %{resource} ikke kunne gemmes:"
@@ -0,0 +1,199 @@
1
+ ---
2
+ da:
3
+ date:
4
+ abbr_day_names:
5
+ - søn
6
+ - man
7
+ - tir
8
+ - ons
9
+ - tor
10
+ - fre
11
+ - lør
12
+ abbr_month_names:
13
+ -
14
+ - jan
15
+ - feb
16
+ - mar
17
+ - apr
18
+ - maj
19
+ - jun
20
+ - jul
21
+ - aug
22
+ - sep
23
+ - okt
24
+ - nov
25
+ - dec
26
+ day_names:
27
+ - søndag
28
+ - mandag
29
+ - tirsdag
30
+ - onsdag
31
+ - torsdag
32
+ - fredag
33
+ - lørdag
34
+ formats:
35
+ default: "%d.%m.%Y"
36
+ long: "%e. %B %Y"
37
+ short: "%e. %b %Y"
38
+ month_names:
39
+ -
40
+ - januar
41
+ - februar
42
+ - marts
43
+ - april
44
+ - maj
45
+ - juni
46
+ - juli
47
+ - august
48
+ - september
49
+ - oktober
50
+ - november
51
+ - december
52
+ order:
53
+ - :day
54
+ - :month
55
+ - :year
56
+ datetime:
57
+ distance_in_words:
58
+ about_x_hours:
59
+ one: cirka en time
60
+ other: cirka %{count} timer
61
+ about_x_months:
62
+ one: cirka en måned
63
+ other: cirka %{count} måneder
64
+ about_x_years:
65
+ one: cirka et år
66
+ other: cirka %{count} år
67
+ almost_x_years:
68
+ one: næsten et år
69
+ other: næsten %{count} år
70
+ half_a_minute: et halvt minut
71
+ less_than_x_minutes:
72
+ one: mindre end et minut
73
+ other: mindre end %{count} minutter
74
+ less_than_x_seconds:
75
+ one: mindre end et sekund
76
+ other: mindre end %{count} sekunder
77
+ over_x_years:
78
+ one: mere end et år
79
+ other: mere end %{count} år
80
+ x_days:
81
+ one: en dag
82
+ other: "%{count} dage"
83
+ x_minutes:
84
+ one: et minut
85
+ other: "%{count} minutter"
86
+ x_months:
87
+ one: en måned
88
+ other: "%{count} måneder"
89
+ x_seconds:
90
+ one: et sekund
91
+ other: "%{count} sekunder"
92
+ prompts:
93
+ day: Dag
94
+ hour: Time
95
+ minute: Minut
96
+ month: Måned
97
+ second: Sekund
98
+ year: År
99
+ errors:
100
+ format: "%{attribute} %{message}"
101
+ messages:
102
+ accepted: skal accepteres
103
+ blank: skal udfyldes
104
+ present: skal være tom
105
+ confirmation: stemmer ikke overens med bekræftelse
106
+ empty: må ikke udelades
107
+ equal_to: skal være %{count}
108
+ even: skal være et lige tal
109
+ exclusion: er reserveret
110
+ greater_than: skal være større end %{count}
111
+ greater_than_or_equal_to: skal være større end, eller lig med, %{count}
112
+ inclusion: er ikke på listen
113
+ invalid: er ikke gyldig
114
+ less_than: skal være mindre end %{count}
115
+ less_than_or_equal_to: skal være mindre end, eller lig med, %{count}
116
+ not_a_number: er ikke et tal
117
+ not_an_integer: er ikke et heltal
118
+ odd: skal være et ulige tal
119
+ record_invalid: 'Godkendelse gik galt: %{errors}'
120
+ restrict_dependent_destroy:
121
+ one: Kunne ikke slette posten fordi en afhængig %{record} findes
122
+ many: Kunne ikke slette posten fordi afhængige %{record} findes
123
+ taken: er allerede brugt
124
+ too_long: er for lang (højest %{count} tegn)
125
+ too_short: er for kort (mindst %{count} tegn)
126
+ wrong_length: har forkert længde (skulle være %{count} tegn)
127
+ other_than: skal være forskellig fra %{count}
128
+ template:
129
+ body: 'Der var problemer med følgende felter:'
130
+ header:
131
+ one: En fejl forhindrede %{model} i at blive gemt
132
+ other: "%{count} fejl forhindrede %{model} i at blive gemt"
133
+ helpers:
134
+ select:
135
+ prompt: Vælg...
136
+ submit:
137
+ create: Opret %{model}
138
+ submit: Gem %{model}
139
+ update: Opdater %{model}
140
+ number:
141
+ currency:
142
+ format:
143
+ delimiter: "."
144
+ format: "%u %n"
145
+ precision: 2
146
+ separator: ","
147
+ significant: false
148
+ strip_insignificant_zeros: false
149
+ unit: DKK
150
+ format:
151
+ delimiter: "."
152
+ precision: 3
153
+ separator: ","
154
+ significant: false
155
+ strip_insignificant_zeros: false
156
+ human:
157
+ decimal_units:
158
+ format: "%n %u"
159
+ units:
160
+ billion: Milliard
161
+ million: Million
162
+ quadrillion: Billiard
163
+ thousand: Tusind
164
+ trillion: Billion
165
+ unit: ''
166
+ format:
167
+ delimiter: ''
168
+ precision: 3
169
+ significant: true
170
+ strip_insignificant_zeros: true
171
+ storage_units:
172
+ format: "%n %u"
173
+ units:
174
+ byte:
175
+ one: Byte
176
+ other: Bytes
177
+ gb: GB
178
+ kb: KB
179
+ mb: MB
180
+ tb: TB
181
+ percentage:
182
+ format:
183
+ delimiter: ''
184
+ format: "%n%"
185
+ precision:
186
+ format:
187
+ delimiter: ''
188
+ support:
189
+ array:
190
+ last_word_connector: " og "
191
+ two_words_connector: " og "
192
+ words_connector: ", "
193
+ time:
194
+ am: ''
195
+ formats:
196
+ default: "%e. %B %Y, %H.%M"
197
+ long: "%A d. %e. %B %Y, %H.%M"
198
+ short: "%e. %b %Y, %H.%M"
199
+ pm: ''
@@ -0,0 +1,60 @@
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
+ omniauth_callbacks:
27
+ failure: "Could not authenticate you from %{kind} because \"%{reason}\"."
28
+ success: "Successfully authenticated from %{kind} account."
29
+ passwords:
30
+ 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."
31
+ send_instructions: "You will receive an email with instructions on how to reset your password in a few minutes."
32
+ 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."
33
+ updated: "Your password has been changed successfully. You are now signed in."
34
+ updated_not_active: "Your password has been changed successfully."
35
+ registrations:
36
+ destroyed: "Bye! Your account has been successfully cancelled. We hope to see you again soon."
37
+ signed_up: "Welcome! You have signed up successfully."
38
+ signed_up_but_inactive: "You have signed up successfully. However, we could not sign you in because your account is not yet activated."
39
+ signed_up_but_locked: "You have signed up successfully. However, we could not sign you in because your account is locked."
40
+ 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."
41
+ 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."
42
+ updated: "Your account has been updated successfully."
43
+ sessions:
44
+ signed_in: "Signed in successfully."
45
+ signed_out: "Signed out successfully."
46
+ already_signed_out: "Signed out successfully."
47
+ unlocks:
48
+ send_instructions: "You will receive an email with instructions for how to unlock your account in a few minutes."
49
+ send_paranoid_instructions: "If your account exists, you will receive an email with instructions for how to unlock it in a few minutes."
50
+ unlocked: "Your account has been unlocked successfully. Please sign in to continue."
51
+ errors:
52
+ messages:
53
+ already_confirmed: "was already confirmed, please try signing in"
54
+ confirmation_period_expired: "needs to be confirmed within %{period}, please request a new one"
55
+ expired: "has expired, please request a new one"
56
+ not_found: "not found"
57
+ not_locked: "was not locked"
58
+ not_saved:
59
+ one: "1 error prohibited this %{resource} from being saved:"
60
+ other: "%{count} errors prohibited this %{resource} from being saved:"
@@ -0,0 +1,205 @@
1
+ ---
2
+ en:
3
+ date:
4
+ abbr_day_names:
5
+ - Sun
6
+ - Mon
7
+ - Tue
8
+ - Wed
9
+ - Thu
10
+ - Fri
11
+ - Sat
12
+ abbr_month_names:
13
+ -
14
+ - Jan
15
+ - Feb
16
+ - Mar
17
+ - Apr
18
+ - May
19
+ - Jun
20
+ - Jul
21
+ - Aug
22
+ - Sep
23
+ - Oct
24
+ - Nov
25
+ - Dec
26
+ day_names:
27
+ - Sunday
28
+ - Monday
29
+ - Tuesday
30
+ - Wednesday
31
+ - Thursday
32
+ - Friday
33
+ - Saturday
34
+ formats:
35
+ default: "%Y-%m-%d"
36
+ long: "%B %d, %Y"
37
+ short: "%b %d"
38
+ month_names:
39
+ -
40
+ - January
41
+ - February
42
+ - March
43
+ - April
44
+ - May
45
+ - June
46
+ - July
47
+ - August
48
+ - September
49
+ - October
50
+ - November
51
+ - December
52
+ order:
53
+ - :year
54
+ - :month
55
+ - :day
56
+ datetime:
57
+ distance_in_words:
58
+ about_x_hours:
59
+ one: about 1 hour
60
+ other: about %{count} hours
61
+ about_x_months:
62
+ one: about 1 month
63
+ other: about %{count} months
64
+ about_x_years:
65
+ one: about 1 year
66
+ other: about %{count} years
67
+ almost_x_years:
68
+ one: almost 1 year
69
+ other: almost %{count} years
70
+ half_a_minute: half a minute
71
+ less_than_x_minutes:
72
+ one: less than a minute
73
+ other: less than %{count} minutes
74
+ less_than_x_seconds:
75
+ one: less than 1 second
76
+ other: less than %{count} seconds
77
+ over_x_years:
78
+ one: over 1 year
79
+ other: over %{count} years
80
+ x_days:
81
+ one: 1 day
82
+ other: "%{count} days"
83
+ x_minutes:
84
+ one: 1 minute
85
+ other: "%{count} minutes"
86
+ x_months:
87
+ one: 1 month
88
+ other: "%{count} months"
89
+ x_seconds:
90
+ one: 1 second
91
+ other: "%{count} seconds"
92
+ prompts:
93
+ day: Day
94
+ hour: Hour
95
+ minute: Minute
96
+ month: Month
97
+ second: Seconds
98
+ year: Year
99
+ errors:
100
+ format: "%{attribute} %{message}"
101
+ messages:
102
+ accepted: must be accepted
103
+ blank: can't be blank
104
+ present: must be blank
105
+ confirmation: doesn't match %{attribute}
106
+ empty: can't be empty
107
+ equal_to: must be equal to %{count}
108
+ even: must be even
109
+ exclusion: is reserved
110
+ greater_than: must be greater than %{count}
111
+ greater_than_or_equal_to: must be greater than or equal to %{count}
112
+ inclusion: is not included in the list
113
+ invalid: is invalid
114
+ less_than: must be less than %{count}
115
+ less_than_or_equal_to: must be less than or equal to %{count}
116
+ not_a_number: is not a number
117
+ not_an_integer: must be an integer
118
+ odd: must be odd
119
+ record_invalid: 'Validation failed: %{errors}'
120
+ restrict_dependent_destroy:
121
+ one: Cannot delete record because a dependent %{record} exists
122
+ many: Cannot delete record because dependent %{record} exist
123
+ taken: has already been taken
124
+ too_long:
125
+ one: is too long (maximum is 1 character)
126
+ other: is too long (maximum is %{count} characters)
127
+ too_short:
128
+ one: is too short (minimum is 1 character)
129
+ other: is too short (minimum is %{count} characters)
130
+ wrong_length:
131
+ one: is the wrong length (should be 1 character)
132
+ other: is the wrong length (should be %{count} characters)
133
+ other_than: must be other than %{count}
134
+ template:
135
+ body: 'There were problems with the following fields:'
136
+ header:
137
+ one: 1 error prohibited this %{model} from being saved
138
+ other: "%{count} errors prohibited this %{model} from being saved"
139
+ helpers:
140
+ select:
141
+ prompt: Please select
142
+ submit:
143
+ create: Create %{model}
144
+ submit: Save %{model}
145
+ update: Update %{model}
146
+ number:
147
+ currency:
148
+ format:
149
+ delimiter: ","
150
+ format: "%u%n"
151
+ precision: 2
152
+ separator: "."
153
+ significant: false
154
+ strip_insignificant_zeros: false
155
+ unit: "$"
156
+ format:
157
+ delimiter: ","
158
+ precision: 3
159
+ separator: "."
160
+ significant: false
161
+ strip_insignificant_zeros: false
162
+ human:
163
+ decimal_units:
164
+ format: "%n %u"
165
+ units:
166
+ billion: Billion
167
+ million: Million
168
+ quadrillion: Quadrillion
169
+ thousand: Thousand
170
+ trillion: Trillion
171
+ unit: ''
172
+ format:
173
+ delimiter: ''
174
+ precision: 3
175
+ significant: true
176
+ strip_insignificant_zeros: true
177
+ storage_units:
178
+ format: "%n %u"
179
+ units:
180
+ byte:
181
+ one: Byte
182
+ other: Bytes
183
+ gb: GB
184
+ kb: KB
185
+ mb: MB
186
+ tb: TB
187
+ percentage:
188
+ format:
189
+ delimiter: ''
190
+ format: "%n%"
191
+ precision:
192
+ format:
193
+ delimiter: ''
194
+ support:
195
+ array:
196
+ last_word_connector: ", and "
197
+ two_words_connector: " and "
198
+ words_connector: ", "
199
+ time:
200
+ am: am
201
+ formats:
202
+ default: "%a, %d %b %Y %H:%M:%S %z"
203
+ long: "%B %d, %Y %H:%M"
204
+ short: "%d %b %H:%M"
205
+ pm: pm