locomotivecms 3.0.0.rc1 → 3.0.0.rc2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +4 -3
- data/README.md +7 -1
- data/app/api/locomotive/api/entities/content_type_entity.rb +4 -1
- data/app/api/locomotive/api/forms/base_form.rb +4 -2
- data/app/api/locomotive/api/forms/content_type_form.rb +1 -0
- data/app/api/locomotive/api/forms/theme_asset_form.rb +1 -1
- data/app/api/locomotive/api/resources/content_type_resource.rb +4 -2
- data/app/assets/javascripts/locomotive/views/inputs/array_view.js.coffee +1 -0
- data/app/controllers/locomotive/current_site_controller.rb +8 -0
- data/app/helpers/locomotive/editable_elements_helper.rb +2 -2
- data/app/helpers/locomotive/errors_helper.rb +7 -3
- data/app/helpers/locomotive/pages_helper.rb +2 -2
- data/app/helpers/locomotive/shared/accounts_helper.rb +1 -1
- data/app/inputs/locomotive/api_key_input.rb +2 -2
- data/app/mailers/locomotive/notifications.rb +14 -3
- data/app/models/locomotive/concerns/content_type/entry_template.rb +7 -1
- data/app/models/locomotive/concerns/content_type/public_submission_title_template.rb +24 -0
- data/app/models/locomotive/concerns/site/access_points.rb +1 -0
- data/app/models/locomotive/concerns/site/url_redirections.rb +30 -0
- data/app/models/locomotive/content_entry.rb +9 -1
- data/app/models/locomotive/content_type.rb +1 -0
- data/app/models/locomotive/page.rb +1 -1
- data/app/models/locomotive/site.rb +1 -0
- data/app/policies/locomotive/site_policy.rb +4 -3
- data/app/uploaders/locomotive/theme_asset_uploader.rb +6 -9
- data/app/views/locomotive/content_assets/_list.html.slim +1 -1
- data/app/views/locomotive/content_entries/_entry.html.slim +1 -1
- data/app/views/locomotive/content_entries/_list.html.slim +1 -1
- data/app/views/locomotive/content_entries/edit.html.slim +2 -0
- data/app/views/locomotive/content_entries/form/_tabs.html.slim +3 -3
- data/app/views/locomotive/content_entries/new.html.slim +3 -0
- data/app/views/locomotive/current_site/_membership.html.slim +1 -1
- data/app/views/locomotive/current_site/_url_redirection.html.slim +17 -0
- data/app/views/locomotive/current_site/form/_access_points.html.slim +2 -0
- data/app/views/locomotive/current_site/form/_panes.html.slim +1 -1
- data/app/views/locomotive/current_site/form/_tabs.html.slim +3 -0
- data/app/views/locomotive/current_site/form/_url_redirections.html.slim +5 -0
- data/app/views/locomotive/custom_fields/select_options/_option.html.slim +3 -1
- data/app/views/locomotive/editable_elements/index_without_preview.html.slim +3 -3
- data/app/views/locomotive/notifications/new_content_entry.html.slim +4 -0
- data/app/views/locomotive/pages/form/_actions.html.slim +1 -1
- data/app/views/locomotive/pages/form/_tabs.html.slim +3 -3
- data/app/views/locomotive/passwords/edit.html.slim +1 -1
- data/app/views/locomotive/passwords/new.html.slim +1 -1
- data/app/views/locomotive/public_submission_accounts/edit.html.slim +1 -1
- data/app/views/locomotive/registrations/new.html.slim +1 -1
- data/app/views/locomotive/sessions/new.html.slim +1 -1
- data/app/views/locomotive/translations/index.html.slim +2 -1
- data/config/i18n-tasks.yml +110 -0
- data/config/locales/carrierwave.fr.yml +1 -1
- data/config/locales/default.en.yml +0 -49
- data/config/locales/default.fr.yml +1 -232
- data/config/locales/devise.fr.yml +1 -68
- data/config/locales/{admin_ui.en.yml → en.yml} +31 -91
- data/config/locales/flash.en.yml +8 -37
- data/config/locales/flash.fr.yml +1 -106
- data/config/locales/fr.yml +5 -0
- data/config/locales/inputs.fr.yml +1 -0
- data/config/locales/mongoid.en.yml +49 -0
- data/config/locales/mongoid.fr.yml +12 -0
- data/config/locales/simple_form.en.yml +26 -65
- data/config/locales/simple_form.fr.yml +1 -0
- data/config/{locales → old-locales}/admin_ui.bg.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.cs.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.de.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.es.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.et.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.fr.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.it.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.ja.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.nb.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.nl.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.pl.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.pt-BR.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.pt.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.ru.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.sk.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.sr.yml +0 -0
- data/config/{locales → old-locales}/admin_ui.zh-CN.yml +0 -0
- data/config/{locales → old-locales}/carrierwave.bg.yml +0 -0
- data/config/{locales → old-locales}/carrierwave.cs.yml +0 -0
- data/config/{locales → old-locales}/carrierwave.de.yml +0 -0
- data/config/{locales → old-locales}/carrierwave.es.yml +0 -0
- data/config/{locales → old-locales}/carrierwave.et.yml +0 -0
- data/config/old-locales/carrierwave.fr.yml +4 -0
- data/config/{locales → old-locales}/carrierwave.it.yml +0 -0
- data/config/{locales → old-locales}/carrierwave.ja.yml +0 -0
- data/config/{locales → old-locales}/carrierwave.nb.yml +0 -0
- data/config/{locales → old-locales}/carrierwave.nl.yml +0 -0
- data/config/{locales → old-locales}/carrierwave.pl.yml +0 -0
- data/config/{locales → old-locales}/carrierwave.pt-BR.yml +0 -0
- data/config/{locales → old-locales}/carrierwave.pt.yml +0 -0
- data/config/{locales → old-locales}/carrierwave.ru.yml +0 -0
- data/config/{locales → old-locales}/carrierwave.sk.yml +0 -0
- data/config/{locales → old-locales}/carrierwave.sr.yml +0 -0
- data/config/{locales → old-locales}/carrierwave.zh-CN.yml +0 -0
- data/config/{locales → old-locales}/default.bg.yml +0 -0
- data/config/{locales → old-locales}/default.cs.yml +0 -0
- data/config/{locales → old-locales}/default.de.yml +0 -0
- data/config/{locales → old-locales}/default.es.yml +0 -0
- data/config/{locales → old-locales}/default.et.yml +0 -0
- data/config/old-locales/default.fr.yml +232 -0
- data/config/{locales → old-locales}/default.it.yml +0 -0
- data/config/{locales → old-locales}/default.ja.yml +0 -0
- data/config/{locales → old-locales}/default.nb.yml +0 -0
- data/config/{locales → old-locales}/default.nl.yml +0 -0
- data/config/{locales → old-locales}/default.pl.yml +0 -0
- data/config/{locales → old-locales}/default.pt-BR.yml +0 -0
- data/config/{locales → old-locales}/default.pt.yml +0 -0
- data/config/{locales → old-locales}/default.ru.yml +0 -0
- data/config/{locales → old-locales}/default.sk.yml +0 -0
- data/config/{locales → old-locales}/default.sr.yml +0 -0
- data/config/{locales → old-locales}/default.zh-CN.yml +0 -0
- data/config/{locales → old-locales}/devise.bg.yml +0 -0
- data/config/{locales → old-locales}/devise.cs.yml +0 -0
- data/config/{locales → old-locales}/devise.de.yml +0 -0
- data/config/{locales → old-locales}/devise.es.yml +0 -0
- data/config/{locales → old-locales}/devise.et.yml +0 -0
- data/config/old-locales/devise.fr.yml +68 -0
- data/config/{locales → old-locales}/devise.it.yml +0 -0
- data/config/{locales → old-locales}/devise.ja.yml +0 -0
- data/config/{locales → old-locales}/devise.nb.yml +0 -0
- data/config/{locales → old-locales}/devise.nl.yml +0 -0
- data/config/{locales → old-locales}/devise.pl.yml +0 -0
- data/config/{locales → old-locales}/devise.pt-BR.yml +0 -0
- data/config/{locales → old-locales}/devise.pt.yml +0 -0
- data/config/{locales → old-locales}/devise.ru.yml +0 -0
- data/config/{locales → old-locales}/devise.sk.yml +0 -0
- data/config/{locales → old-locales}/devise.sr.yml +0 -0
- data/config/{locales → old-locales}/devise.zh-CN.yml +0 -0
- data/config/{locales → old-locales}/flash.bg.yml +0 -0
- data/config/{locales → old-locales}/flash.cs.yml +0 -0
- data/config/{locales → old-locales}/flash.de.yml +0 -0
- data/config/{locales → old-locales}/flash.es.yml +0 -0
- data/config/{locales → old-locales}/flash.et.yml +0 -0
- data/config/old-locales/flash.fr.yml +106 -0
- data/config/{locales → old-locales}/flash.it.yml +0 -0
- data/config/{locales → old-locales}/flash.ja.yml +0 -0
- data/config/{locales → old-locales}/flash.nb.yml +0 -0
- data/config/{locales → old-locales}/flash.nl.yml +0 -0
- data/config/{locales → old-locales}/flash.pl.yml +0 -0
- data/config/{locales → old-locales}/flash.pt-BR.yml +0 -0
- data/config/{locales → old-locales}/flash.pt.yml +0 -0
- data/config/{locales → old-locales}/flash.ru.yml +0 -0
- data/config/{locales → old-locales}/flash.sk.yml +0 -0
- data/config/{locales → old-locales}/flash.sr.yml +0 -0
- data/config/{locales → old-locales}/flash.zh-CN.yml +0 -0
- data/config/routes.rb +1 -0
- data/lib/generators/locomotive/install/templates/carrierwave.rb +12 -7
- data/lib/generators/locomotive/install/templates/devise.rb +127 -55
- data/lib/generators/locomotive/install/templates/dragonfly.rb +1 -1
- data/lib/generators/locomotive/install/templates/locomotive.rb +2 -0
- data/lib/locomotive/carrierwave/asset.rb +23 -11
- data/lib/locomotive/carrierwave/patches.rb +18 -0
- data/lib/locomotive/configuration.rb +6 -5
- data/lib/locomotive/dependencies.rb +1 -0
- data/lib/locomotive/engine.rb +4 -0
- data/lib/locomotive/middlewares/site.rb +1 -0
- data/lib/locomotive/steam/middlewares/missing_translations.rb +1 -1
- data/lib/locomotive/steam/services/api_entry_submission_service.rb +8 -1
- data/lib/locomotive/steam_adaptor.rb +9 -7
- data/lib/locomotive/version.rb +1 -1
- data/spec/fixtures/assets/ruby_logo.svg +948 -0
- data/spec/lib/locomotive/steam/services/api_entry_submission_service_spec.rb +1 -1
- data/spec/mailers/locomotive/notifications_spec.rb +39 -1
- data/spec/models/locomotive/concerns/site/url_redirections_spec.rb +42 -0
- data/spec/models/locomotive/theme_asset_spec.rb +29 -0
- data/spec/support/factories.rb +15 -1
- data/spec/support/features/site_helpers.rb +8 -1
- data/spec/support/shared_contexts/api_site_setup.rb +1 -1
- metadata +120 -106
- data/app/views/locomotive/shared/_footer.html.slim +0 -2
- data/app/views/locomotive/shared/_form_actions.html.slim +0 -14
- data/app/views/locomotive/shared/actions/_contents.html.slim +0 -7
- data/config/cucumber.yml +0 -8
@@ -0,0 +1 @@
|
|
1
|
+
fr: {}
|
@@ -0,0 +1,49 @@
|
|
1
|
+
en:
|
2
|
+
mongoid:
|
3
|
+
errors:
|
4
|
+
messages:
|
5
|
+
blank_in_locale: "can't be blank"
|
6
|
+
models:
|
7
|
+
locomotive/page:
|
8
|
+
attributes:
|
9
|
+
layout_id:
|
10
|
+
index_can_not_extend_parent: "The index page can't have its parent page as a layout"
|
11
|
+
locomotive/membership:
|
12
|
+
attributes:
|
13
|
+
account:
|
14
|
+
unique_account: "is already used"
|
15
|
+
email:
|
16
|
+
unique_account: "is already used"
|
17
|
+
attributes:
|
18
|
+
locomotive/content_entry:
|
19
|
+
created_at: Created at
|
20
|
+
|
21
|
+
errors:
|
22
|
+
messages:
|
23
|
+
domain_taken: "%{value} is already taken"
|
24
|
+
invalid_domain: "%{value} is invalid"
|
25
|
+
needs_admin_account: "One admin account is required at least"
|
26
|
+
protected_page: "You can not remove index or 404 pages"
|
27
|
+
extname_changed: "New file does not have the original extension"
|
28
|
+
array_too_short: "is too small (minimum element number is %{count})"
|
29
|
+
site:
|
30
|
+
default_locale_removed: The previous default locale can not be removed right away.
|
31
|
+
wrong_timezone_name: "Wrong timezone name"
|
32
|
+
page:
|
33
|
+
liquid_syntax: "Liquid Syntax error ('%{error}' on '%{fullpath}')"
|
34
|
+
liquid_extend: "The page '%{fullpath}' extends a template which does not exist"
|
35
|
+
liquid_translation: "The page '%{fullpath}' extends a template which is not translated"
|
36
|
+
too_few_custom_fields: "At least, one custom field is required"
|
37
|
+
security: "presents a security problem"
|
38
|
+
|
39
|
+
attributes:
|
40
|
+
defaults:
|
41
|
+
pages:
|
42
|
+
index:
|
43
|
+
title: "Home page"
|
44
|
+
body: "Content of the home page"
|
45
|
+
"404":
|
46
|
+
title: "Page not found"
|
47
|
+
body: "Content of the 404 page"
|
48
|
+
other:
|
49
|
+
body: "{% extends 'parent' %}"
|
@@ -7,59 +7,34 @@ en:
|
|
7
7
|
account:
|
8
8
|
information: Main
|
9
9
|
api: API
|
10
|
+
credentials: Credentials
|
10
11
|
site:
|
11
12
|
information: Main
|
12
13
|
access_points: Access points
|
13
14
|
seo: SEO
|
14
15
|
advanced: Advanced
|
16
|
+
url_redirections: URL redirections
|
17
|
+
page:
|
18
|
+
content: Content
|
19
|
+
settings: Settings
|
20
|
+
seo: SEO
|
21
|
+
content_entry:
|
22
|
+
content: Content
|
23
|
+
advanced: Advanced
|
24
|
+
seo: SEO
|
15
25
|
|
16
|
-
defaults:
|
17
|
-
locomotive:
|
18
|
-
information: General information
|
19
|
-
advanced_options: Advanced options
|
20
|
-
meta: SEO Metadata
|
21
|
-
seo: SEO settings
|
22
|
-
robots_txt: Robots.txt file
|
23
|
-
code: Code
|
24
|
-
raw_template: Template
|
25
|
-
credentials: Credentials
|
26
|
-
language: Language
|
27
|
-
sites: Sites
|
28
|
-
access_points: Access points
|
29
|
-
memberships: Accounts
|
30
|
-
membership_email: Account email
|
31
|
-
file: File
|
32
|
-
preview: Preview
|
33
|
-
options: Advanced options
|
34
|
-
custom_fields: Custom fields
|
35
|
-
other_fields: Other information
|
36
|
-
presentation: Presentation
|
37
|
-
attributes: Attributes
|
38
|
-
upload: Upload
|
39
|
-
api: API3
|
40
26
|
labels:
|
41
27
|
locomotive:
|
42
|
-
theme_asset:
|
43
|
-
plain_text_name: File name
|
44
|
-
content_type: File type
|
45
|
-
new:
|
46
|
-
source: File
|
47
|
-
edit:
|
48
|
-
source: Replace file
|
49
|
-
custom_fields:
|
50
|
-
field:
|
51
|
-
name: Alias
|
52
|
-
content_type:
|
53
|
-
entry_template: Entry template
|
54
|
-
public_submission_enabled: Public submission
|
55
|
-
public_submission_accounts: Notified Accounts
|
56
|
-
"custom_fields/field":
|
57
|
-
select_options: "Options"
|
58
28
|
content_entry:
|
59
29
|
_slug: Permalink
|
60
30
|
_visible: Visible
|
31
|
+
content_type:
|
32
|
+
public_submission_accounts: "Notified Accounts"
|
33
|
+
# "custom_fields/field":
|
34
|
+
# select_options: "Options"
|
61
35
|
account:
|
62
36
|
api_key: API key
|
37
|
+
no_api_key: None
|
63
38
|
edit:
|
64
39
|
locale: UI Language
|
65
40
|
password: New password
|
@@ -92,10 +67,9 @@ en:
|
|
92
67
|
|
93
68
|
hints:
|
94
69
|
locomotive:
|
95
|
-
locomotive_account:
|
96
|
-
password: 6 characters minimum
|
97
70
|
account:
|
98
71
|
api_key: "Used by Wagon to deploy your site (check your config/deploy.yml file of your Wagon site)."
|
72
|
+
password: 6 characters minimum
|
99
73
|
page:
|
100
74
|
handle: "Unique identifier to retrieve this page within an external controller instance"
|
101
75
|
published: "Only authenticated accounts can view unpublished pages."
|
@@ -108,8 +82,6 @@ en:
|
|
108
82
|
meta_description: "Overrides the site's meta description used within the head tag of the page."
|
109
83
|
is_layout: "If true, this page can used as a layout for other pages."
|
110
84
|
allow_layout: "Let authors change or not the layout of that page."
|
111
|
-
snippet:
|
112
|
-
slug: "You need to know it in order to insert the snippet inside a page"
|
113
85
|
site:
|
114
86
|
locales: "Drag&drop a flag to the first position to make it the default one."
|
115
87
|
seo_title: "Define a global value here which should be used as the value for the title tag in the head section."
|
@@ -119,39 +91,20 @@ en:
|
|
119
91
|
domains: "Add your domains just below. Then, register a CNAME DNS record pointing to <b>%{domain}</b>."
|
120
92
|
memberships: "You can invite other accounts to edit/manage the site."
|
121
93
|
cache_enabled: "When enabled, your pages will be cached as long as the content doesn't change. Disabling cache per page is allowed."
|
94
|
+
redirect_to_first_domain: "When enabled, requests made to any domains listed above will be redirected to the first domain."
|
95
|
+
url_redirections: "Redirect (301) legacy urls to pages you created in the back-office. The origin and the destination URLs are separated by a <u>space</u>."
|
122
96
|
new:
|
123
97
|
locales: "You can add other languages once your site will be created."
|
124
|
-
theme_asset:
|
125
|
-
slug: "You do not need to add the extension file (.css or .js)"
|
126
|
-
edit:
|
127
|
-
source: "You can replace it by a file of the same extension"
|
128
98
|
translation:
|
129
99
|
key: "Do not use dash but underscore instead. Example: welcome_message."
|
130
|
-
asset:
|
131
|
-
source: "All file types are accepted."
|
132
|
-
edit:
|
133
|
-
source: "The current file is available here %{url}"
|
134
|
-
update:
|
135
|
-
source: "The current file is available here %{url}"
|
136
100
|
content_entry:
|
137
101
|
_slug: "Property used to generate the url of a page working as a template for this content type (ex: \"template_page/{{ your_object._permalink }})\"."
|
138
102
|
_visible: "By default, the entry will show up in the site. So it can be used as a published attribute."
|
139
103
|
seo_title: "The value you fill in will replace the SEO title of the templatized page related to your model."
|
140
104
|
meta_keywords: "Overrides the site's meta keywords used within the head tag of the page. They are separated by a comma."
|
141
105
|
meta_description: "Overrides the site's meta description used within the head tag of the page."
|
142
|
-
import:
|
143
|
-
source: "A zipfile containing a database.yml along with assets and templates"
|
144
|
-
samples: "If enabled, the import process will also copy contents and assets"
|
145
|
-
reset: "If enabled, all the data of your site will be destroyed before importing the new site"
|
146
106
|
content_type:
|
147
|
-
name: "We suggest you to type the plural form of the model. Ex: Projects, Recipes, Posts, Articles, ...etc"
|
148
|
-
slug: "It will be used as the name of the collection in the liquid templates. Ex: <span class='code'>{{ contents.my_projects }}</span>"
|
149
|
-
raw_item_template: "You can customize the text displayed for each item in the list. Simply use Liquid. Ex: <span class='code'>{{ entry.name }})</span>"
|
150
|
-
public_submission_enabled: "It is used to let people from outside to create new entries (example: messages in a contact form)"
|
151
107
|
public_submission_accounts: "When an entry is created, send a notification email to the accounts listed below."
|
152
|
-
content_type_entry_field:
|
153
|
-
select_options: "Add/edit/re-arrange the options."
|
154
|
-
|
155
108
|
image_resize_form:
|
156
109
|
width: "in px"
|
157
110
|
height: "in px"
|
@@ -160,6 +113,7 @@ en:
|
|
160
113
|
locomotive:
|
161
114
|
site:
|
162
115
|
domains: "Ex: mysite.com"
|
116
|
+
url_redirections: "Ex: my-legacy-url new-url-in-locomotive"
|
163
117
|
content_type_entry_field:
|
164
118
|
select_options: "Type the label of your new option here"
|
165
119
|
|
@@ -183,10 +137,17 @@ en:
|
|
183
137
|
update: Save
|
184
138
|
submit: Ok
|
185
139
|
cancel: Cancel
|
140
|
+
delete: Delete
|
141
|
+
close: Close
|
186
142
|
loading_text: "Saving..."
|
187
143
|
or: or
|
144
|
+
|
188
145
|
locomotive:
|
146
|
+
account:
|
147
|
+
new_api_key: Regenerate
|
189
148
|
image_resize_form:
|
190
149
|
loading_text: Resizing...
|
191
150
|
submit: Resize
|
151
|
+
site:
|
152
|
+
delete: Destroy this site
|
192
153
|
|
@@ -0,0 +1 @@
|
|
1
|
+
fr: {}
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -0,0 +1,232 @@
|
|
1
|
+
fr:
|
2
|
+
errors:
|
3
|
+
# The default format use in full error messages.
|
4
|
+
format: "%{attribute} %{message}"
|
5
|
+
|
6
|
+
# The values :model, :attribute and :value are always available for interpolation
|
7
|
+
# The value :count is available when applicable. Can be used for pluralization.
|
8
|
+
messages:
|
9
|
+
inclusion: "n'est pas inclus(e) dans la liste"
|
10
|
+
exclusion: "n'est pas disponible"
|
11
|
+
invalid: "n'est pas valide"
|
12
|
+
confirmation: "ne concorde pas avec la confirmation"
|
13
|
+
accepted: "doit être accepté(e)"
|
14
|
+
empty: "doit être rempli(e)"
|
15
|
+
blank: "doit être rempli(e)"
|
16
|
+
too_long: "est trop long (pas plus de %{count} caractères)"
|
17
|
+
too_short: "est trop court (au moins %{count} caractères)"
|
18
|
+
wrong_length: "ne fait pas la bonne longueur (doit comporter %{count} caractères)"
|
19
|
+
taken: "n'est pas disponible"
|
20
|
+
not_a_number: "n'est pas un nombre"
|
21
|
+
greater_than: "doit être supérieur à %{count}"
|
22
|
+
greater_than_or_equal_to: "doit être supérieur ou égal à %{count}"
|
23
|
+
equal_to: "doit être égal à %{count}"
|
24
|
+
less_than: "doit être inférieur à %{count}"
|
25
|
+
less_than_or_equal_to: "doit être inférieur ou égal à %{count}"
|
26
|
+
odd: "doit être impair"
|
27
|
+
even: "doit être pair"
|
28
|
+
|
29
|
+
domain_taken: "%{value} a été déjà pris"
|
30
|
+
invalid_domain: "%{value} n'est pas valide"
|
31
|
+
needs_admin_account: "Un minimum d'un compte admin est requis"
|
32
|
+
protected_page: "Vous ne pouvez pas supprimer les pages index et 404"
|
33
|
+
extname_changed: "La nouvelle version du fichier n'a pas l'extension originale"
|
34
|
+
array_too_short: "est trop petit (le nombre minimum d'éléments est %{count})"
|
35
|
+
security: "présente un problème de sécurité"
|
36
|
+
site:
|
37
|
+
default_locale_removed: La langue par défaut ne peut pas être supprimée de cette façon.
|
38
|
+
page:
|
39
|
+
liquid_syntax: "Erreur de syntaxe dans les sections de page, veuillez vérifier la syntaxe ('%{error}'/'%{fullpath}')"
|
40
|
+
liquid_extend: "La page '%{fullpath}' étend le contenu d'une page qui n'existe pas"
|
41
|
+
liquid_translation: "La page '%{fullpath}' étend le contenu d'une page qui n'a pas été traduite"
|
42
|
+
|
43
|
+
attributes:
|
44
|
+
defaults:
|
45
|
+
pages:
|
46
|
+
index:
|
47
|
+
title: "Page d'accueil"
|
48
|
+
body: "Contenu de la page d'accueil"
|
49
|
+
"404":
|
50
|
+
title: "Page non trouvée"
|
51
|
+
body: "Contenu de la page d'erreur 404"
|
52
|
+
other:
|
53
|
+
body: "{% extends 'parent' %}"
|
54
|
+
|
55
|
+
mongoid:
|
56
|
+
errors:
|
57
|
+
messages:
|
58
|
+
blank_in_locale: "doit être rempli(e)"
|
59
|
+
|
60
|
+
attributes:
|
61
|
+
locomotive/page:
|
62
|
+
title: Titre
|
63
|
+
parent: Dossier parent
|
64
|
+
parent_id: Dossier parent
|
65
|
+
slug: Raccourci
|
66
|
+
listed: Menu
|
67
|
+
templatized: Templatisée
|
68
|
+
published: Publiée
|
69
|
+
redirect: Redirection
|
70
|
+
redirect_url: Url de redirection
|
71
|
+
cache_strategy: Cache
|
72
|
+
response_type: Type de réponse
|
73
|
+
seo_title: Titre SEO
|
74
|
+
locomotive/content_type:
|
75
|
+
name: Nom
|
76
|
+
description: Description
|
77
|
+
slug: Raccourci
|
78
|
+
order_by: Ordonner
|
79
|
+
order_direction: Direction
|
80
|
+
label_field_name: Champ mis en avant
|
81
|
+
label_field_id: Champ mis en avant
|
82
|
+
group_by_field_name: Champ pour grouper
|
83
|
+
group_by_field_id: Champ pour grouper
|
84
|
+
public_submission_enabled: Activation API
|
85
|
+
public_submission_accounts: Comptes à notifier
|
86
|
+
locomotive/content_entry:
|
87
|
+
created_at: Date de création
|
88
|
+
locomotive/asset:
|
89
|
+
source: Fichier
|
90
|
+
locomotive/account:
|
91
|
+
email: E-mail
|
92
|
+
name: Nom
|
93
|
+
language: Langue
|
94
|
+
password: Mot de passe
|
95
|
+
password_confirmation: Confirmation mot de passe
|
96
|
+
locomotive/snippet:
|
97
|
+
body: Code
|
98
|
+
slug: Raccourci
|
99
|
+
name: Nom
|
100
|
+
locomotive/translation:
|
101
|
+
key: Clé de traduction
|
102
|
+
locomotive/theme_asset:
|
103
|
+
content_type: Type du fichier
|
104
|
+
locomotive/site:
|
105
|
+
name: Nom du site
|
106
|
+
locales: Langues
|
107
|
+
domain_name: Domaine
|
108
|
+
subdomain: Sous-domaine
|
109
|
+
restricted_access: Activer ?
|
110
|
+
access_login: Identifiant
|
111
|
+
access_password: "Mot de passe"
|
112
|
+
custom_fields/field:
|
113
|
+
name: Alias
|
114
|
+
hint: Aide
|
115
|
+
required: Requis ?
|
116
|
+
text_formatting: Formattage
|
117
|
+
localized: Localisé ?
|
118
|
+
select_options: Options
|
119
|
+
|
120
|
+
date_picker:
|
121
|
+
close_text: Fermer
|
122
|
+
prev_text: '<Préc'
|
123
|
+
next_text: 'Suiv>'
|
124
|
+
current_text: 'Courant'
|
125
|
+
|
126
|
+
date:
|
127
|
+
formats:
|
128
|
+
default: "%d/%m/%Y"
|
129
|
+
short: "%e %b"
|
130
|
+
long: "%e %B %Y"
|
131
|
+
long_ordinal: "%e %B %Y"
|
132
|
+
only_day: "%e"
|
133
|
+
|
134
|
+
day_names: [dimanche, lundi, mardi, mercredi, jeudi, vendredi, samedi]
|
135
|
+
abbr_day_names: [dim, lun, mar, mer, jeu, ven, sam]
|
136
|
+
month_names: [~, janvier, février, mars, avril, mai, juin, juillet, août, septembre, octobre, novembre, décembre]
|
137
|
+
abbr_month_names: [~, jan., fév., mar., avr., mai, juin, juil., août, sept., oct., nov., déc.]
|
138
|
+
order: [ day, month, year ]
|
139
|
+
|
140
|
+
today_at: "aujourd'hui à"
|
141
|
+
yesterday_at: "hier à"
|
142
|
+
|
143
|
+
pagination:
|
144
|
+
previous: "« Précédent"
|
145
|
+
next: "Suivant »"
|
146
|
+
|
147
|
+
time:
|
148
|
+
formats:
|
149
|
+
default: "%d/%m/%Y %H:%M"
|
150
|
+
time: "%H:%M"
|
151
|
+
short: "%d %b %H:%M"
|
152
|
+
long: "%A %d %B %Y %H:%M:%S %Z"
|
153
|
+
long_ordinal: "%A %d %B %Y %H:%M:%S %Z"
|
154
|
+
only_second: "%S"
|
155
|
+
am: 'am'
|
156
|
+
pm: 'pm'
|
157
|
+
|
158
|
+
datetime:
|
159
|
+
distance_in_words:
|
160
|
+
half_a_minute: "une demi-minute"
|
161
|
+
less_than_x_seconds:
|
162
|
+
zero: "moins d'une seconde"
|
163
|
+
one: "moins de 1 seconde"
|
164
|
+
other: "moins de %{count} secondes"
|
165
|
+
x_seconds:
|
166
|
+
one: "1 seconde"
|
167
|
+
other: "%{count} secondes"
|
168
|
+
less_than_x_minutes:
|
169
|
+
zero: "moins d'une minute"
|
170
|
+
one: "moins de 1 minute"
|
171
|
+
other: "moins de %{count} minutes"
|
172
|
+
x_minutes:
|
173
|
+
one: "1 minute"
|
174
|
+
other: "%{count} minutes"
|
175
|
+
about_x_hours:
|
176
|
+
one: "environ une heure"
|
177
|
+
other: "environ %{count} heures"
|
178
|
+
x_days:
|
179
|
+
one: "1 jour"
|
180
|
+
other: "%{count} jours"
|
181
|
+
about_x_months:
|
182
|
+
one: "environ un mois"
|
183
|
+
other: "environ %{count} mois"
|
184
|
+
x_months:
|
185
|
+
one: "1 mois"
|
186
|
+
other: "%{count} mois"
|
187
|
+
about_x_years:
|
188
|
+
one: "environ un an"
|
189
|
+
other: "environ %{count} ans"
|
190
|
+
over_x_years:
|
191
|
+
one: "plus d'un an"
|
192
|
+
other: "plus de %{count} ans"
|
193
|
+
almost_x_years:
|
194
|
+
one: "presque 1 an"
|
195
|
+
other: "presque %{count} ans"
|
196
|
+
prompts:
|
197
|
+
year: "Année"
|
198
|
+
month: "Mois"
|
199
|
+
day: "Jour"
|
200
|
+
hour: "Heure"
|
201
|
+
minute: "Minute"
|
202
|
+
second: "Seconde"
|
203
|
+
|
204
|
+
number:
|
205
|
+
format:
|
206
|
+
precision: 3
|
207
|
+
separator: ','
|
208
|
+
delimiter: ' '
|
209
|
+
currency:
|
210
|
+
format:
|
211
|
+
unit: '€'
|
212
|
+
precision: 2
|
213
|
+
format: '%n %u'
|
214
|
+
human:
|
215
|
+
format:
|
216
|
+
precision: 2
|
217
|
+
storage_units:
|
218
|
+
format: '%n %u'
|
219
|
+
units:
|
220
|
+
byte: 'Octet'
|
221
|
+
kb: 'ko'
|
222
|
+
mb: 'Mo'
|
223
|
+
gb: 'Go'
|
224
|
+
tb: 'To'
|
225
|
+
|
226
|
+
support:
|
227
|
+
array:
|
228
|
+
sentence_connector: 'et'
|
229
|
+
skip_last_comma: true
|
230
|
+
words_connector: ", "
|
231
|
+
two_words_connector: " et "
|
232
|
+
last_word_connector: " et "
|