lc_alchemy_cms 3.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (744) hide show
  1. checksums.yaml +7 -0
  2. data/.editorconfig +23 -0
  3. data/.gitignore +21 -0
  4. data/.hound.yml +2 -0
  5. data/.rspec +1 -0
  6. data/.rubocop.yml +861 -0
  7. data/.teatro.yml +7 -0
  8. data/.travis.yml +27 -0
  9. data/.yardopts +5 -0
  10. data/CODE_OF_CONDUCT.md +13 -0
  11. data/CONTRIBUTING.md +73 -0
  12. data/Gemfile +34 -0
  13. data/LICENSE +27 -0
  14. data/README.md +297 -0
  15. data/Rakefile +48 -0
  16. data/alchemy_cms.gemspec +81 -0
  17. data/app/assets/fonts/alchemy/icons.eot +0 -0
  18. data/app/assets/fonts/alchemy/icons.svg +71 -0
  19. data/app/assets/fonts/alchemy/icons.ttf +0 -0
  20. data/app/assets/fonts/alchemy/icons.woff +0 -0
  21. data/app/assets/images/alchemy/alchemy-logo.svg +70 -0
  22. data/app/assets/images/alchemy/favicon.ico +0 -0
  23. data/app/assets/images/alchemy/icon.svg +14 -0
  24. data/app/assets/images/alchemy/icons.png +0 -0
  25. data/app/assets/images/alchemy/lupe.cur +0 -0
  26. data/app/assets/images/alchemy/ui-icons_666666_256x240.png +0 -0
  27. data/app/assets/images/sassy-ie-overlay.png +0 -0
  28. data/app/assets/javascripts/alchemy/alchemy.autocomplete.js.coffee +30 -0
  29. data/app/assets/javascripts/alchemy/alchemy.base.js.coffee +142 -0
  30. data/app/assets/javascripts/alchemy/alchemy.browser.js.coffee +22 -0
  31. data/app/assets/javascripts/alchemy/alchemy.buttons.js.coffee +32 -0
  32. data/app/assets/javascripts/alchemy/alchemy.char_counter.js.coffee +19 -0
  33. data/app/assets/javascripts/alchemy/alchemy.confirm_dialog.js.coffee +85 -0
  34. data/app/assets/javascripts/alchemy/alchemy.custom.js +1 -0
  35. data/app/assets/javascripts/alchemy/alchemy.datepicker.js.coffee +31 -0
  36. data/app/assets/javascripts/alchemy/alchemy.dialog.js.coffee +266 -0
  37. data/app/assets/javascripts/alchemy/alchemy.dirty.js.coffee +70 -0
  38. data/app/assets/javascripts/alchemy/alchemy.dragndrop.js.coffee +84 -0
  39. data/app/assets/javascripts/alchemy/alchemy.element_editors.js.coffee +138 -0
  40. data/app/assets/javascripts/alchemy/alchemy.elements_window.js.coffee +89 -0
  41. data/app/assets/javascripts/alchemy/alchemy.file_progress.js.coffee +63 -0
  42. data/app/assets/javascripts/alchemy/alchemy.growler.js.coffee +27 -0
  43. data/app/assets/javascripts/alchemy/alchemy.gui.js.coffee +22 -0
  44. data/app/assets/javascripts/alchemy/alchemy.hotkeys.js.coffee +49 -0
  45. data/app/assets/javascripts/alchemy/alchemy.html5.js +22 -0
  46. data/app/assets/javascripts/alchemy/alchemy.i18n.js.coffee +26 -0
  47. data/app/assets/javascripts/alchemy/alchemy.image_cropper.js.coffee +44 -0
  48. data/app/assets/javascripts/alchemy/alchemy.initializer.js.coffee +63 -0
  49. data/app/assets/javascripts/alchemy/alchemy.jquery_loader.js +42 -0
  50. data/app/assets/javascripts/alchemy/alchemy.js +52 -0
  51. data/app/assets/javascripts/alchemy/alchemy.link_dialog.js.coffee +250 -0
  52. data/app/assets/javascripts/alchemy/alchemy.list_filter.js.coffee +49 -0
  53. data/app/assets/javascripts/alchemy/alchemy.page_sorter.js +48 -0
  54. data/app/assets/javascripts/alchemy/alchemy.preview.js.coffee +106 -0
  55. data/app/assets/javascripts/alchemy/alchemy.preview_window.js.coffee +58 -0
  56. data/app/assets/javascripts/alchemy/alchemy.sitemap.js.coffee +50 -0
  57. data/app/assets/javascripts/alchemy/alchemy.spinner.js.coffee +49 -0
  58. data/app/assets/javascripts/alchemy/alchemy.string_extension.js.coffee +11 -0
  59. data/app/assets/javascripts/alchemy/alchemy.tinymce.js.coffee +66 -0
  60. data/app/assets/javascripts/alchemy/alchemy.translations.js.coffee +132 -0
  61. data/app/assets/javascripts/alchemy/alchemy.uploader.js.coffee +102 -0
  62. data/app/assets/javascripts/alchemy/alchemy.windows.js.coffee +42 -0
  63. data/app/assets/javascripts/alchemy/menubar.js.coffee +8 -0
  64. data/app/assets/javascripts/alchemy/preview.js +1 -0
  65. data/app/assets/javascripts/tinymce/plugins/alchemy_link/plugin.min.js +19 -0
  66. data/app/assets/stylesheets/alchemy/_defaults.scss +8 -0
  67. data/app/assets/stylesheets/alchemy/_extends.scss +93 -0
  68. data/app/assets/stylesheets/alchemy/_mixins.scss +112 -0
  69. data/app/assets/stylesheets/alchemy/_variables.scss +61 -0
  70. data/app/assets/stylesheets/alchemy/admin.scss +31 -0
  71. data/app/assets/stylesheets/alchemy/archive.scss +436 -0
  72. data/app/assets/stylesheets/alchemy/base.scss +609 -0
  73. data/app/assets/stylesheets/alchemy/buttons.scss +259 -0
  74. data/app/assets/stylesheets/alchemy/custom.scss +1 -0
  75. data/app/assets/stylesheets/alchemy/dashboard.scss +104 -0
  76. data/app/assets/stylesheets/alchemy/dialogs.scss +214 -0
  77. data/app/assets/stylesheets/alchemy/elements.scss +772 -0
  78. data/app/assets/stylesheets/alchemy/errors.scss +39 -0
  79. data/app/assets/stylesheets/alchemy/flash.scss +65 -0
  80. data/app/assets/stylesheets/alchemy/form_fields.scss +89 -0
  81. data/app/assets/stylesheets/alchemy/forms.scss +193 -0
  82. data/app/assets/stylesheets/alchemy/frame.scss +301 -0
  83. data/app/assets/stylesheets/alchemy/icon-font.scss +67 -0
  84. data/app/assets/stylesheets/alchemy/icons.scss +324 -0
  85. data/app/assets/stylesheets/alchemy/jquery-ui.scss +1511 -0
  86. data/app/assets/stylesheets/alchemy/menubar.scss +81 -0
  87. data/app/assets/stylesheets/alchemy/modules.scss +33 -0
  88. data/app/assets/stylesheets/alchemy/notices.scss +64 -0
  89. data/app/assets/stylesheets/alchemy/pagination.scss +65 -0
  90. data/app/assets/stylesheets/alchemy/print.scss +34 -0
  91. data/app/assets/stylesheets/alchemy/search.scss +73 -0
  92. data/app/assets/stylesheets/alchemy/selects.scss +235 -0
  93. data/app/assets/stylesheets/alchemy/sitemap.scss +385 -0
  94. data/app/assets/stylesheets/alchemy/tables.scss +218 -0
  95. data/app/assets/stylesheets/alchemy/toolbar.scss +146 -0
  96. data/app/assets/stylesheets/alchemy/upload.scss +121 -0
  97. data/app/assets/stylesheets/tinymce/skins/alchemy/content.min.css.scss +90 -0
  98. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/readme.md +1 -0
  99. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce-small.eot +0 -0
  100. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce-small.svg +175 -0
  101. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce-small.ttf +0 -0
  102. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce-small.woff +0 -0
  103. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce.eot +0 -0
  104. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce.svg +153 -0
  105. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce.ttf +0 -0
  106. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce.woff +0 -0
  107. data/app/assets/stylesheets/tinymce/skins/alchemy/img/anchor.gif +0 -0
  108. data/app/assets/stylesheets/tinymce/skins/alchemy/img/loader.gif +0 -0
  109. data/app/assets/stylesheets/tinymce/skins/alchemy/img/object.gif +0 -0
  110. data/app/assets/stylesheets/tinymce/skins/alchemy/img/trans.gif +0 -0
  111. data/app/assets/stylesheets/tinymce/skins/alchemy/img/wline.gif +0 -0
  112. data/app/assets/stylesheets/tinymce/skins/alchemy/skin.ie7.min.css +1 -0
  113. data/app/assets/stylesheets/tinymce/skins/alchemy/skin.min.css.scss +1810 -0
  114. data/app/controllers/alchemy/admin/attachments_controller.rb +106 -0
  115. data/app/controllers/alchemy/admin/base_controller.rb +168 -0
  116. data/app/controllers/alchemy/admin/clipboard_controller.rb +51 -0
  117. data/app/controllers/alchemy/admin/contents_controller.rb +76 -0
  118. data/app/controllers/alchemy/admin/dashboard_controller.rb +89 -0
  119. data/app/controllers/alchemy/admin/elements_controller.rb +190 -0
  120. data/app/controllers/alchemy/admin/essence_files_controller.rb +47 -0
  121. data/app/controllers/alchemy/admin/essence_pictures_controller.rb +120 -0
  122. data/app/controllers/alchemy/admin/languages_controller.rb +17 -0
  123. data/app/controllers/alchemy/admin/layoutpages_controller.rb +19 -0
  124. data/app/controllers/alchemy/admin/legacy_page_urls_controller.rb +39 -0
  125. data/app/controllers/alchemy/admin/pages_controller.rb +359 -0
  126. data/app/controllers/alchemy/admin/pictures_controller.rb +168 -0
  127. data/app/controllers/alchemy/admin/resources_controller.rb +185 -0
  128. data/app/controllers/alchemy/admin/sites_controller.rb +6 -0
  129. data/app/controllers/alchemy/admin/tags_controller.rb +76 -0
  130. data/app/controllers/alchemy/admin/trash_controller.rb +27 -0
  131. data/app/controllers/alchemy/api/base_controller.rb +19 -0
  132. data/app/controllers/alchemy/api/contents_controller.rb +35 -0
  133. data/app/controllers/alchemy/api/elements_controller.rb +29 -0
  134. data/app/controllers/alchemy/api/pages_controller.rb +32 -0
  135. data/app/controllers/alchemy/attachments_controller.rb +35 -0
  136. data/app/controllers/alchemy/base_controller.rb +106 -0
  137. data/app/controllers/alchemy/elements_controller.rb +27 -0
  138. data/app/controllers/alchemy/messages_controller.rb +114 -0
  139. data/app/controllers/alchemy/pages_controller.rb +211 -0
  140. data/app/controllers/alchemy/pictures_controller.rb +82 -0
  141. data/app/helpers/alchemy/admin/attachments_helper.rb +12 -0
  142. data/app/helpers/alchemy/admin/base_helper.rb +471 -0
  143. data/app/helpers/alchemy/admin/contents_helper.rb +113 -0
  144. data/app/helpers/alchemy/admin/elements_helper.rb +134 -0
  145. data/app/helpers/alchemy/admin/essences_helper.rb +120 -0
  146. data/app/helpers/alchemy/admin/form_helper.rb +30 -0
  147. data/app/helpers/alchemy/admin/navigation_helper.rb +238 -0
  148. data/app/helpers/alchemy/admin/pages_helper.rb +70 -0
  149. data/app/helpers/alchemy/admin/pictures_helper.rb +30 -0
  150. data/app/helpers/alchemy/admin/tags_helper.rb +102 -0
  151. data/app/helpers/alchemy/base_helper.rb +81 -0
  152. data/app/helpers/alchemy/elements_block_helper.rb +162 -0
  153. data/app/helpers/alchemy/elements_helper.rb +291 -0
  154. data/app/helpers/alchemy/essences_helper.rb +138 -0
  155. data/app/helpers/alchemy/pages_helper.rb +417 -0
  156. data/app/helpers/alchemy/url_helper.rb +76 -0
  157. data/app/mailers/alchemy/messages.rb +15 -0
  158. data/app/models/alchemy.rb +7 -0
  159. data/app/models/alchemy/attachment.rb +129 -0
  160. data/app/models/alchemy/cell.rb +94 -0
  161. data/app/models/alchemy/content.rb +255 -0
  162. data/app/models/alchemy/content/factory.rb +190 -0
  163. data/app/models/alchemy/element.rb +513 -0
  164. data/app/models/alchemy/element/definitions.rb +52 -0
  165. data/app/models/alchemy/element/presenters.rb +87 -0
  166. data/app/models/alchemy/element_to_page.rb +7 -0
  167. data/app/models/alchemy/essence_boolean.rb +19 -0
  168. data/app/models/alchemy/essence_date.rb +24 -0
  169. data/app/models/alchemy/essence_file.rb +42 -0
  170. data/app/models/alchemy/essence_html.rb +23 -0
  171. data/app/models/alchemy/essence_link.rb +20 -0
  172. data/app/models/alchemy/essence_picture.rb +152 -0
  173. data/app/models/alchemy/essence_richtext.rb +47 -0
  174. data/app/models/alchemy/essence_select.rb +18 -0
  175. data/app/models/alchemy/essence_text.rb +22 -0
  176. data/app/models/alchemy/folded_page.rb +16 -0
  177. data/app/models/alchemy/language.rb +144 -0
  178. data/app/models/alchemy/language/code.rb +22 -0
  179. data/app/models/alchemy/legacy_page_url.rb +20 -0
  180. data/app/models/alchemy/message.rb +40 -0
  181. data/app/models/alchemy/page.rb +409 -0
  182. data/app/models/alchemy/page/page_cells.rb +71 -0
  183. data/app/models/alchemy/page/page_elements.rb +272 -0
  184. data/app/models/alchemy/page/page_naming.rb +122 -0
  185. data/app/models/alchemy/page/page_natures.rb +114 -0
  186. data/app/models/alchemy/page/page_scopes.rb +95 -0
  187. data/app/models/alchemy/page/page_users.rb +58 -0
  188. data/app/models/alchemy/picture.rb +220 -0
  189. data/app/models/alchemy/picture/sweeping.rb +17 -0
  190. data/app/models/alchemy/picture/transformations.rb +256 -0
  191. data/app/models/alchemy/site.rb +91 -0
  192. data/app/models/alchemy/site/layout.rb +38 -0
  193. data/app/models/alchemy/tag.rb +24 -0
  194. data/app/models/alchemy/translations.rb +7 -0
  195. data/app/models/alchemy/translations/essence_body_updater.rb +64 -0
  196. data/app/models/alchemy/translations/translation_pusher.rb +18 -0
  197. data/app/models/alchemy/tree_node.rb +4 -0
  198. data/app/serializers/alchemy/attachment_serializer.rb +15 -0
  199. data/app/serializers/alchemy/cell_serializer.rb +18 -0
  200. data/app/serializers/alchemy/content_serializer.rb +20 -0
  201. data/app/serializers/alchemy/element_serializer.rb +20 -0
  202. data/app/serializers/alchemy/essence_boolean_serializer.rb +11 -0
  203. data/app/serializers/alchemy/essence_date_serializer.rb +11 -0
  204. data/app/serializers/alchemy/essence_file_serializer.rb +12 -0
  205. data/app/serializers/alchemy/essence_html_serializer.rb +11 -0
  206. data/app/serializers/alchemy/essence_link_serializer.rb +14 -0
  207. data/app/serializers/alchemy/essence_picture_serializer.rb +28 -0
  208. data/app/serializers/alchemy/essence_richtext_serializer.rb +12 -0
  209. data/app/serializers/alchemy/essence_select_serializer.rb +11 -0
  210. data/app/serializers/alchemy/essence_text_serializer.rb +22 -0
  211. data/app/serializers/alchemy/legacy_element_serializer.rb +17 -0
  212. data/app/serializers/alchemy/page_serializer.rb +29 -0
  213. data/app/serializers/alchemy/picture_serializer.rb +16 -0
  214. data/app/views/alchemy/_menubar.html.erb +16 -0
  215. data/app/views/alchemy/admin/attachments/_archive_overlay.html.erb +32 -0
  216. data/app/views/alchemy/admin/attachments/_attachment.html.erb +63 -0
  217. data/app/views/alchemy/admin/attachments/_file_to_assign.html.erb +15 -0
  218. data/app/views/alchemy/admin/attachments/_files_list.html.erb +39 -0
  219. data/app/views/alchemy/admin/attachments/_overlay_file_list.html.erb +11 -0
  220. data/app/views/alchemy/admin/attachments/_tag_list.html.erb +14 -0
  221. data/app/views/alchemy/admin/attachments/archive_overlay.js.erb +7 -0
  222. data/app/views/alchemy/admin/attachments/create.js.erb +11 -0
  223. data/app/views/alchemy/admin/attachments/destroy.js.erb +1 -0
  224. data/app/views/alchemy/admin/attachments/edit.html.erb +10 -0
  225. data/app/views/alchemy/admin/attachments/index.html.erb +29 -0
  226. data/app/views/alchemy/admin/attachments/new.html.erb +14 -0
  227. data/app/views/alchemy/admin/attachments/show.html.erb +3 -0
  228. data/app/views/alchemy/admin/clipboard/clear.js.erb +3 -0
  229. data/app/views/alchemy/admin/clipboard/index.html.erb +22 -0
  230. data/app/views/alchemy/admin/clipboard/insert.js.erb +19 -0
  231. data/app/views/alchemy/admin/clipboard/remove.js.erb +10 -0
  232. data/app/views/alchemy/admin/contents/_missing.html.erb +19 -0
  233. data/app/views/alchemy/admin/contents/create.js.erb +56 -0
  234. data/app/views/alchemy/admin/contents/destroy.js.erb +4 -0
  235. data/app/views/alchemy/admin/contents/new.html.erb +11 -0
  236. data/app/views/alchemy/admin/contents/order.js.erb +3 -0
  237. data/app/views/alchemy/admin/dashboard/_locked_pages.html.erb +38 -0
  238. data/app/views/alchemy/admin/dashboard/_recent_pages.html.erb +22 -0
  239. data/app/views/alchemy/admin/dashboard/_sites.html.erb +23 -0
  240. data/app/views/alchemy/admin/dashboard/_users.html.erb +19 -0
  241. data/app/views/alchemy/admin/dashboard/help.html.erb +21 -0
  242. data/app/views/alchemy/admin/dashboard/index.html.erb +44 -0
  243. data/app/views/alchemy/admin/dashboard/info.html.erb +64 -0
  244. data/app/views/alchemy/admin/elements/_add_picture.html.erb +14 -0
  245. data/app/views/alchemy/admin/elements/_element.html.erb +23 -0
  246. data/app/views/alchemy/admin/elements/_element_foot.html.erb +36 -0
  247. data/app/views/alchemy/admin/elements/_element_head.html.erb +23 -0
  248. data/app/views/alchemy/admin/elements/_new_element_form.html.erb +26 -0
  249. data/app/views/alchemy/admin/elements/_picture_gallery_editor.html.erb +24 -0
  250. data/app/views/alchemy/admin/elements/_refresh_editor.js.erb +8 -0
  251. data/app/views/alchemy/admin/elements/create.js.erb +46 -0
  252. data/app/views/alchemy/admin/elements/fold.js.erb +28 -0
  253. data/app/views/alchemy/admin/elements/index.html.erb +26 -0
  254. data/app/views/alchemy/admin/elements/list.html.erb +16 -0
  255. data/app/views/alchemy/admin/elements/new.html.erb +25 -0
  256. data/app/views/alchemy/admin/elements/order.js.erb +14 -0
  257. data/app/views/alchemy/admin/elements/trash.js.erb +12 -0
  258. data/app/views/alchemy/admin/elements/update.js.erb +28 -0
  259. data/app/views/alchemy/admin/essence_files/assign.js.erb +9 -0
  260. data/app/views/alchemy/admin/essence_files/edit.html.erb +18 -0
  261. data/app/views/alchemy/admin/essence_pictures/assign.js.erb +18 -0
  262. data/app/views/alchemy/admin/essence_pictures/crop.html.erb +50 -0
  263. data/app/views/alchemy/admin/essence_pictures/destroy.js.erb +24 -0
  264. data/app/views/alchemy/admin/essence_pictures/edit.html.erb +28 -0
  265. data/app/views/alchemy/admin/essence_pictures/save_link.js.erb +3 -0
  266. data/app/views/alchemy/admin/essence_pictures/update.js.erb +9 -0
  267. data/app/views/alchemy/admin/languages/_form.html.erb +14 -0
  268. data/app/views/alchemy/admin/languages/_language.html.erb +42 -0
  269. data/app/views/alchemy/admin/languages/_table.html.erb +37 -0
  270. data/app/views/alchemy/admin/languages/index.html.erb +23 -0
  271. data/app/views/alchemy/admin/layoutpages/_layoutpage.html.erb +63 -0
  272. data/app/views/alchemy/admin/layoutpages/edit.html.erb +15 -0
  273. data/app/views/alchemy/admin/layoutpages/index.html.erb +41 -0
  274. data/app/views/alchemy/admin/leave.html.erb +11 -0
  275. data/app/views/alchemy/admin/legacy_page_urls/_form.html.erb +5 -0
  276. data/app/views/alchemy/admin/legacy_page_urls/_label.html.erb +1 -0
  277. data/app/views/alchemy/admin/legacy_page_urls/_legacy_page_url.html.erb +13 -0
  278. data/app/views/alchemy/admin/legacy_page_urls/_new.html.erb +20 -0
  279. data/app/views/alchemy/admin/legacy_page_urls/create.js.erb +10 -0
  280. data/app/views/alchemy/admin/legacy_page_urls/destroy.js.erb +6 -0
  281. data/app/views/alchemy/admin/legacy_page_urls/update.js.erb +2 -0
  282. data/app/views/alchemy/admin/pages/_create_language_form.html.erb +54 -0
  283. data/app/views/alchemy/admin/pages/_external_link.html.erb +31 -0
  284. data/app/views/alchemy/admin/pages/_file_link.html.erb +31 -0
  285. data/app/views/alchemy/admin/pages/_form.html.erb +62 -0
  286. data/app/views/alchemy/admin/pages/_internal_link.html.erb +41 -0
  287. data/app/views/alchemy/admin/pages/_legacy_urls.html.erb +23 -0
  288. data/app/views/alchemy/admin/pages/_locked_page.html.erb +24 -0
  289. data/app/views/alchemy/admin/pages/_new_page_form.html.erb +11 -0
  290. data/app/views/alchemy/admin/pages/_page.html.erb +112 -0
  291. data/app/views/alchemy/admin/pages/_page_for_links.html.erb +45 -0
  292. data/app/views/alchemy/admin/pages/_page_status.html.erb +14 -0
  293. data/app/views/alchemy/admin/pages/_sitemap.html.erb +8 -0
  294. data/app/views/alchemy/admin/pages/_tinymce_custom_config.html.erb +13 -0
  295. data/app/views/alchemy/admin/pages/configure.html.erb +16 -0
  296. data/app/views/alchemy/admin/pages/configure_external.html.erb +33 -0
  297. data/app/views/alchemy/admin/pages/destroy.js.erb +19 -0
  298. data/app/views/alchemy/admin/pages/edit.html.erb +206 -0
  299. data/app/views/alchemy/admin/pages/flush.js.erb +2 -0
  300. data/app/views/alchemy/admin/pages/fold.js.erb +3 -0
  301. data/app/views/alchemy/admin/pages/index.html.erb +101 -0
  302. data/app/views/alchemy/admin/pages/info.html.erb +43 -0
  303. data/app/views/alchemy/admin/pages/link.html.erb +16 -0
  304. data/app/views/alchemy/admin/pages/locked.html.erb +3 -0
  305. data/app/views/alchemy/admin/pages/new.html.erb +26 -0
  306. data/app/views/alchemy/admin/pages/show.html.erb +1 -0
  307. data/app/views/alchemy/admin/pages/sort.js.erb +5 -0
  308. data/app/views/alchemy/admin/pages/unlock.js.erb +8 -0
  309. data/app/views/alchemy/admin/pages/update.js.erb +37 -0
  310. data/app/views/alchemy/admin/partials/_autocomplete_tag_list.html.erb +1 -0
  311. data/app/views/alchemy/admin/partials/_flash.html.erb +4 -0
  312. data/app/views/alchemy/admin/partials/_flash_notices.html.erb +5 -0
  313. data/app/views/alchemy/admin/partials/_language_tree_select.html.erb +11 -0
  314. data/app/views/alchemy/admin/partials/_main_navigation_entry.html.erb +12 -0
  315. data/app/views/alchemy/admin/partials/_remote_search_form.html.erb +33 -0
  316. data/app/views/alchemy/admin/partials/_routes.html.erb +25 -0
  317. data/app/views/alchemy/admin/partials/_search_form.html.erb +20 -0
  318. data/app/views/alchemy/admin/partials/_sub_navigation.html.erb +8 -0
  319. data/app/views/alchemy/admin/partials/_toolbar_button.html.erb +25 -0
  320. data/app/views/alchemy/admin/partials/_upload_form.html.erb +67 -0
  321. data/app/views/alchemy/admin/pictures/_archive.html.erb +53 -0
  322. data/app/views/alchemy/admin/pictures/_archive_overlay.html.erb +14 -0
  323. data/app/views/alchemy/admin/pictures/_filter_and_size_bar.html.erb +78 -0
  324. data/app/views/alchemy/admin/pictures/_filter_bar.html.erb +33 -0
  325. data/app/views/alchemy/admin/pictures/_overlay_picture_list.html.erb +11 -0
  326. data/app/views/alchemy/admin/pictures/_picture.html.erb +87 -0
  327. data/app/views/alchemy/admin/pictures/_picture_to_assign.html.erb +28 -0
  328. data/app/views/alchemy/admin/pictures/_tag_list.html.erb +16 -0
  329. data/app/views/alchemy/admin/pictures/archive_overlay.js.erb +8 -0
  330. data/app/views/alchemy/admin/pictures/edit.html.erb +13 -0
  331. data/app/views/alchemy/admin/pictures/edit_multiple.html.erb +30 -0
  332. data/app/views/alchemy/admin/pictures/flush.js.erb +2 -0
  333. data/app/views/alchemy/admin/pictures/index.html.erb +109 -0
  334. data/app/views/alchemy/admin/pictures/index.js.erb +3 -0
  335. data/app/views/alchemy/admin/pictures/info.html.erb +38 -0
  336. data/app/views/alchemy/admin/pictures/new.html.erb +16 -0
  337. data/app/views/alchemy/admin/pictures/show.html.erb +11 -0
  338. data/app/views/alchemy/admin/resources/_form.html.erb +13 -0
  339. data/app/views/alchemy/admin/resources/_resource.html.erb +30 -0
  340. data/app/views/alchemy/admin/resources/_table.html.erb +25 -0
  341. data/app/views/alchemy/admin/resources/edit.html.erb +1 -0
  342. data/app/views/alchemy/admin/resources/index.csv.erb +13 -0
  343. data/app/views/alchemy/admin/resources/index.html.erb +32 -0
  344. data/app/views/alchemy/admin/resources/new.html.erb +1 -0
  345. data/app/views/alchemy/admin/sites/index.html.erb +23 -0
  346. data/app/views/alchemy/admin/tags/_radio_tag.html.erb +6 -0
  347. data/app/views/alchemy/admin/tags/_tag.html.erb +30 -0
  348. data/app/views/alchemy/admin/tags/edit.html.erb +24 -0
  349. data/app/views/alchemy/admin/tags/index.html.erb +52 -0
  350. data/app/views/alchemy/admin/tags/new.html.erb +7 -0
  351. data/app/views/alchemy/admin/trash/clear.js.erb +4 -0
  352. data/app/views/alchemy/admin/trash/index.html.erb +29 -0
  353. data/app/views/alchemy/attachments/show.html.erb +1 -0
  354. data/app/views/alchemy/base/500.html.erb +26 -0
  355. data/app/views/alchemy/base/error_notice.html.erb +1 -0
  356. data/app/views/alchemy/base/error_notice.js.erb +2 -0
  357. data/app/views/alchemy/base/permission_denied.js.erb +3 -0
  358. data/app/views/alchemy/base/redirect.js.erb +12 -0
  359. data/app/views/alchemy/base/update.js.erb +5 -0
  360. data/app/views/alchemy/breadcrumb/_page.html.erb +16 -0
  361. data/app/views/alchemy/breadcrumb/_separator.html.erb +1 -0
  362. data/app/views/alchemy/breadcrumb/_wrapper.html.erb +13 -0
  363. data/app/views/alchemy/elements/_editor_not_found.html.erb +5 -0
  364. data/app/views/alchemy/elements/_view_not_found.html.erb +1 -0
  365. data/app/views/alchemy/elements/show.html.erb +1 -0
  366. data/app/views/alchemy/elements/show.js.erb +1 -0
  367. data/app/views/alchemy/essences/_essence_boolean_editor.html.erb +16 -0
  368. data/app/views/alchemy/essences/_essence_boolean_view.html.erb +3 -0
  369. data/app/views/alchemy/essences/_essence_date_editor.html.erb +19 -0
  370. data/app/views/alchemy/essences/_essence_date_view.html.erb +11 -0
  371. data/app/views/alchemy/essences/_essence_file_editor.html.erb +57 -0
  372. data/app/views/alchemy/essences/_essence_file_view.html.erb +10 -0
  373. data/app/views/alchemy/essences/_essence_html_editor.html.erb +9 -0
  374. data/app/views/alchemy/essences/_essence_html_view.html.erb +3 -0
  375. data/app/views/alchemy/essences/_essence_link_editor.html.erb +25 -0
  376. data/app/views/alchemy/essences/_essence_link_view.html.erb +11 -0
  377. data/app/views/alchemy/essences/_essence_picture_editor.html.erb +59 -0
  378. data/app/views/alchemy/essences/_essence_picture_view.html.erb +5 -0
  379. data/app/views/alchemy/essences/_essence_richtext_editor.html.erb +13 -0
  380. data/app/views/alchemy/essences/_essence_richtext_view.html.erb +5 -0
  381. data/app/views/alchemy/essences/_essence_select_editor.html.erb +25 -0
  382. data/app/views/alchemy/essences/_essence_select_view.html.erb +3 -0
  383. data/app/views/alchemy/essences/_essence_text_editor.html.erb +18 -0
  384. data/app/views/alchemy/essences/_essence_text_view.html.erb +18 -0
  385. data/app/views/alchemy/essences/shared/_essence_picture_tools.html.erb +61 -0
  386. data/app/views/alchemy/essences/shared/_linkable_essence_tools.html.erb +19 -0
  387. data/app/views/alchemy/language_links/_language.html.erb +12 -0
  388. data/app/views/alchemy/language_links/_spacer.html.erb +1 -0
  389. data/app/views/alchemy/messages/contact_form_mail.de.text.erb +12 -0
  390. data/app/views/alchemy/messages/contact_form_mail.en.text.erb +12 -0
  391. data/app/views/alchemy/messages/contact_form_mail.es.text.erb +12 -0
  392. data/app/views/alchemy/messages/new.html.erb +1 -0
  393. data/app/views/alchemy/navigation/_image_link.html.erb +14 -0
  394. data/app/views/alchemy/navigation/_link.html.erb +20 -0
  395. data/app/views/alchemy/navigation/_renderer.html.erb +30 -0
  396. data/app/views/alchemy/pages/show.html.erb +1 -0
  397. data/app/views/alchemy/pages/show.rss.builder +20 -0
  398. data/app/views/alchemy/pages/sitemap.xml.erb +6 -0
  399. data/app/views/kaminari/alchemy/_first_page.html.erb +11 -0
  400. data/app/views/kaminari/alchemy/_gap.html.erb +8 -0
  401. data/app/views/kaminari/alchemy/_last_page.html.erb +11 -0
  402. data/app/views/kaminari/alchemy/_next_page.html.erb +13 -0
  403. data/app/views/kaminari/alchemy/_page.html.erb +14 -0
  404. data/app/views/kaminari/alchemy/_paginator.html.erb +23 -0
  405. data/app/views/kaminari/alchemy/_prev_page.html.erb +13 -0
  406. data/app/views/layouts/alchemy/admin.html.erb +109 -0
  407. data/app/views/layouts/alchemy/sitemap.xml.erb +4 -0
  408. data/bin/alchemy +267 -0
  409. data/bin/rails +8 -0
  410. data/config/alchemy/config.yml +189 -0
  411. data/config/alchemy/modules.yml +88 -0
  412. data/config/initializers/dragonfly.rb +25 -0
  413. data/config/initializers/simple_form.rb +144 -0
  414. data/config/locales/alchemy.de.yml +918 -0
  415. data/config/locales/alchemy.en.yml +920 -0
  416. data/config/locales/alchemy.es.yml +958 -0
  417. data/config/locales/alchemy.fr.yml +942 -0
  418. data/config/locales/alchemy.nl.yml +921 -0
  419. data/config/locales/alchemy.ru.yml +837 -0
  420. data/config/locales/simple_form.de.yml +26 -0
  421. data/config/locales/simple_form.en.yml +25 -0
  422. data/config/locales/simple_form.es.yml +6 -0
  423. data/config/locales/simple_form.fr.yml +26 -0
  424. data/config/locales/simple_form.nl.yml +25 -0
  425. data/config/locales/simple_form.ru.yml +25 -0
  426. data/config/routes.rb +164 -0
  427. data/db/migrate/20130827094554_alchemy_two_point_six.rb +380 -0
  428. data/db/migrate/20130828121054_remove_do_not_index_from_alchemy_essence_texts.rb +5 -0
  429. data/db/migrate/20130828121120_remove_do_not_index_from_alchemy_essence_richtexts.rb +5 -0
  430. data/db/migrate/20130918201742_add_published_at_to_alchemy_pages.rb +5 -0
  431. data/lib/alchemy/auth_accessors.rb +104 -0
  432. data/lib/alchemy/cache_digests/template_tracker.rb +65 -0
  433. data/lib/alchemy/config.rb +65 -0
  434. data/lib/alchemy/configuration_methods.rb +29 -0
  435. data/lib/alchemy/controller_actions.rb +138 -0
  436. data/lib/alchemy/engine.rb +104 -0
  437. data/lib/alchemy/errors.rb +82 -0
  438. data/lib/alchemy/essence.rb +232 -0
  439. data/lib/alchemy/filetypes.rb +33 -0
  440. data/lib/alchemy/forms/builder.rb +23 -0
  441. data/lib/alchemy/hints.rb +57 -0
  442. data/lib/alchemy/i18n.rb +70 -0
  443. data/lib/alchemy/kaminari/scoped_pagination_url_helper.rb +13 -0
  444. data/lib/alchemy/locale.rb +65 -0
  445. data/lib/alchemy/logger.rb +15 -0
  446. data/lib/alchemy/middleware/rescue_old_cookies.rb +27 -0
  447. data/lib/alchemy/modules.rb +75 -0
  448. data/lib/alchemy/mount_point.rb +47 -0
  449. data/lib/alchemy/name_conversions.rb +28 -0
  450. data/lib/alchemy/on_page_layout.rb +58 -0
  451. data/lib/alchemy/page_layout.rb +183 -0
  452. data/lib/alchemy/permissions.rb +221 -0
  453. data/lib/alchemy/picture_attributes.rb +29 -0
  454. data/lib/alchemy/resource.rb +238 -0
  455. data/lib/alchemy/resources_helper.rb +135 -0
  456. data/lib/alchemy/routing_constraints.rb +49 -0
  457. data/lib/alchemy/seeder.rb +53 -0
  458. data/lib/alchemy/shell.rb +102 -0
  459. data/lib/alchemy/ssl_protection.rb +30 -0
  460. data/lib/alchemy/tasks/helpers.rb +83 -0
  461. data/lib/alchemy/test_support/controller_requests.rb +73 -0
  462. data/lib/alchemy/test_support/essence_shared_examples.rb +286 -0
  463. data/lib/alchemy/test_support/factories.rb +147 -0
  464. data/lib/alchemy/test_support/integration_helpers.rb +33 -0
  465. data/lib/alchemy/tinymce.rb +68 -0
  466. data/lib/alchemy/touching.rb +41 -0
  467. data/lib/alchemy/upgrader.rb +80 -0
  468. data/lib/alchemy/upgrader/three_point_one.rb +54 -0
  469. data/lib/alchemy/upgrader/three_point_two.rb +69 -0
  470. data/lib/alchemy/upgrader/three_point_zero.rb +93 -0
  471. data/lib/alchemy/userstamp.rb +10 -0
  472. data/lib/alchemy/version.rb +7 -0
  473. data/lib/alchemy_cms.rb +5 -0
  474. data/lib/rails/generators/alchemy/base.rb +41 -0
  475. data/lib/rails/generators/alchemy/elements/elements_generator.rb +37 -0
  476. data/lib/rails/generators/alchemy/elements/templates/editor.html.erb +14 -0
  477. data/lib/rails/generators/alchemy/elements/templates/editor.html.haml +13 -0
  478. data/lib/rails/generators/alchemy/elements/templates/editor.html.slim +12 -0
  479. data/lib/rails/generators/alchemy/elements/templates/view.html.erb +27 -0
  480. data/lib/rails/generators/alchemy/elements/templates/view.html.haml +20 -0
  481. data/lib/rails/generators/alchemy/elements/templates/view.html.slim +20 -0
  482. data/lib/rails/generators/alchemy/essence/essence_generator.rb +52 -0
  483. data/lib/rails/generators/alchemy/essence/templates/editor.html.erb +17 -0
  484. data/lib/rails/generators/alchemy/essence/templates/view.html.erb +2 -0
  485. data/lib/rails/generators/alchemy/install/files/_article_editor.html.erb +5 -0
  486. data/lib/rails/generators/alchemy/install/files/_article_view.html.erb +7 -0
  487. data/lib/rails/generators/alchemy/install/files/_standard.html.erb +1 -0
  488. data/lib/rails/generators/alchemy/install/files/alchemy.de.yml +31 -0
  489. data/lib/rails/generators/alchemy/install/files/alchemy.elements.css.scss +30 -0
  490. data/lib/rails/generators/alchemy/install/files/alchemy.en.yml +31 -0
  491. data/lib/rails/generators/alchemy/install/files/alchemy.es.yml +31 -0
  492. data/lib/rails/generators/alchemy/install/files/application.html.erb +14 -0
  493. data/lib/rails/generators/alchemy/install/install_generator.rb +69 -0
  494. data/lib/rails/generators/alchemy/install/templates/elements.yml.tt +21 -0
  495. data/lib/rails/generators/alchemy/install/templates/page_layouts.yml.tt +10 -0
  496. data/lib/rails/generators/alchemy/module/module_generator.rb +30 -0
  497. data/lib/rails/generators/alchemy/module/templates/ability.rb.tt +11 -0
  498. data/lib/rails/generators/alchemy/module/templates/controller.rb.tt +2 -0
  499. data/lib/rails/generators/alchemy/module/templates/module_config.rb.tt +17 -0
  500. data/lib/rails/generators/alchemy/page_layouts/page_layouts_generator.rb +24 -0
  501. data/lib/rails/generators/alchemy/page_layouts/templates/layout.html.erb +1 -0
  502. data/lib/rails/generators/alchemy/page_layouts/templates/layout.html.haml +1 -0
  503. data/lib/rails/generators/alchemy/page_layouts/templates/layout.html.slim +1 -0
  504. data/lib/rails/generators/alchemy/site_layouts/site_layouts_generator.rb +23 -0
  505. data/lib/rails/generators/alchemy/site_layouts/templates/layout.html.erb +1 -0
  506. data/lib/rails/generators/alchemy/site_layouts/templates/layout.html.haml +1 -0
  507. data/lib/rails/generators/alchemy/site_layouts/templates/layout.html.slim +1 -0
  508. data/lib/rails/generators/alchemy/views/views_generator.rb +41 -0
  509. data/lib/rails/templates/alchemy.rb +7 -0
  510. data/lib/tasks/alchemy/convert.rake +39 -0
  511. data/lib/tasks/alchemy/db.rake +22 -0
  512. data/lib/tasks/alchemy/install.rake +61 -0
  513. data/lib/tasks/alchemy/tidy.rake +102 -0
  514. data/lib/tasks/alchemy/upgrade.rake +28 -0
  515. data/spec/controllers/admin/attachments_controller_spec.rb +211 -0
  516. data/spec/controllers/admin/base_controller_spec.rb +74 -0
  517. data/spec/controllers/admin/clipboard_controller_spec.rb +60 -0
  518. data/spec/controllers/admin/contents_controller_spec.rb +72 -0
  519. data/spec/controllers/admin/dashboard_controller_spec.rb +139 -0
  520. data/spec/controllers/admin/elements_controller_spec.rb +473 -0
  521. data/spec/controllers/admin/essence_files_controller_spec.rb +71 -0
  522. data/spec/controllers/admin/essence_pictures_controller_spec.rb +202 -0
  523. data/spec/controllers/admin/languages_controller_spec.rb +61 -0
  524. data/spec/controllers/admin/layoutpages_controller_spec.rb +27 -0
  525. data/spec/controllers/admin/pages_controller_spec.rb +553 -0
  526. data/spec/controllers/admin/pictures_controller_spec.rb +358 -0
  527. data/spec/controllers/admin/resources_controller_spec.rb +53 -0
  528. data/spec/controllers/admin/trash_controller_spec.rb +68 -0
  529. data/spec/controllers/alchemy/admin/tags_controller_spec.rb +63 -0
  530. data/spec/controllers/alchemy/api/contents_controller_spec.rb +126 -0
  531. data/spec/controllers/alchemy/api/elements_controller_spec.rb +125 -0
  532. data/spec/controllers/alchemy/api/pages_controller_spec.rb +134 -0
  533. data/spec/controllers/attachments_controller_spec.rb +64 -0
  534. data/spec/controllers/base_controller_spec.rb +51 -0
  535. data/spec/controllers/elements_controller_spec.rb +48 -0
  536. data/spec/controllers/messages_controller_spec.rb +199 -0
  537. data/spec/controllers/pages_controller_spec.rb +265 -0
  538. data/spec/controllers/pictures_controller_spec.rb +393 -0
  539. data/spec/dummy/Rakefile +6 -0
  540. data/spec/dummy/app/assets/javascripts/application.js +13 -0
  541. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  542. data/spec/dummy/app/controllers/admin/events_controller.rb +3 -0
  543. data/spec/dummy/app/controllers/application_controller.rb +15 -0
  544. data/spec/dummy/app/controllers/login_controller.rb +5 -0
  545. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  546. data/spec/dummy/app/mailers/.gitkeep +0 -0
  547. data/spec/dummy/app/models/ability.rb +9 -0
  548. data/spec/dummy/app/models/dummy_model.rb +3 -0
  549. data/spec/dummy/app/models/dummy_user.rb +11 -0
  550. data/spec/dummy/app/models/event.rb +10 -0
  551. data/spec/dummy/app/models/location.rb +3 -0
  552. data/spec/dummy/app/views/alchemy/elements/_all_you_can_eat_editor.html.erb +11 -0
  553. data/spec/dummy/app/views/alchemy/elements/_article_editor.html.erb +10 -0
  554. data/spec/dummy/app/views/alchemy/elements/_article_view.html.erb +25 -0
  555. data/spec/dummy/app/views/alchemy/elements/_headline_editor.html.erb +1 -0
  556. data/spec/dummy/app/views/alchemy/elements/_headline_view.html.erb +1 -0
  557. data/spec/dummy/app/views/alchemy/elements/_news_view.html.erb +11 -0
  558. data/spec/dummy/app/views/alchemy/page_layouts/_standard.html.erb +14 -0
  559. data/spec/dummy/app/views/layouts/application.html.erb +17 -0
  560. data/spec/dummy/bin/bundle +3 -0
  561. data/spec/dummy/bin/rails +4 -0
  562. data/spec/dummy/bin/rake +4 -0
  563. data/spec/dummy/config.ru +4 -0
  564. data/spec/dummy/config/alchemy/cells.yml +5 -0
  565. data/spec/dummy/config/alchemy/elements.yml +112 -0
  566. data/spec/dummy/config/alchemy/page_layouts.yml +32 -0
  567. data/spec/dummy/config/application.rb +32 -0
  568. data/spec/dummy/config/boot.rb +5 -0
  569. data/spec/dummy/config/database.yml +32 -0
  570. data/spec/dummy/config/environment.rb +5 -0
  571. data/spec/dummy/config/environments/development.rb +41 -0
  572. data/spec/dummy/config/environments/production.rb +77 -0
  573. data/spec/dummy/config/environments/test.rb +43 -0
  574. data/spec/dummy/config/initializers/alchemy.rb +2 -0
  575. data/spec/dummy/config/initializers/assets.rb +11 -0
  576. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  577. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
  578. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  579. data/spec/dummy/config/initializers/inflections.rb +16 -0
  580. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  581. data/spec/dummy/config/initializers/secret_token.rb +12 -0
  582. data/spec/dummy/config/initializers/session_store.rb +3 -0
  583. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  584. data/spec/dummy/config/routes.rb +12 -0
  585. data/spec/dummy/config/secrets.yml +22 -0
  586. data/spec/dummy/db/migrate/20121026104128_create_events.rb +20 -0
  587. data/spec/dummy/db/migrate/20130328101418_create_locations.rb +9 -0
  588. data/spec/dummy/db/migrate/20130827094554_alchemy_two_point_six.rb +380 -0
  589. data/spec/dummy/db/migrate/20130828121054_remove_do_not_index_from_alchemy_essence_texts.rb +5 -0
  590. data/spec/dummy/db/migrate/20130828121120_remove_do_not_index_from_alchemy_essence_richtexts.rb +5 -0
  591. data/spec/dummy/db/migrate/20130918201742_add_published_at_to_alchemy_pages.rb +5 -0
  592. data/spec/dummy/db/migrate/20131209225243_create_dummy_users.rb +9 -0
  593. data/spec/dummy/db/migrate/20150122213511_acts_as_taggable_on_migration.acts_as_taggable_on_engine.rb +31 -0
  594. data/spec/dummy/db/migrate/20150122213512_add_missing_unique_indices.acts_as_taggable_on_engine.rb +20 -0
  595. data/spec/dummy/db/migrate/20150122213513_add_taggings_counter_cache_to_tags.acts_as_taggable_on_engine.rb +15 -0
  596. data/spec/dummy/db/migrate/20150122213514_add_missing_taggable_index.acts_as_taggable_on_engine.rb +10 -0
  597. data/spec/dummy/db/migrate/20150412103152_create_dummy_model.rb +7 -0
  598. data/spec/dummy/db/schema.rb +322 -0
  599. data/spec/dummy/db/seeds.rb +1 -0
  600. data/spec/dummy/lib/assets/.gitkeep +0 -0
  601. data/spec/dummy/public/404.html +67 -0
  602. data/spec/dummy/public/422.html +67 -0
  603. data/spec/dummy/public/500.html +66 -0
  604. data/spec/dummy/public/favicon.ico +0 -0
  605. data/spec/features/admin/dashboard_spec.rb +82 -0
  606. data/spec/features/admin/language_tree_feature_spec.rb +33 -0
  607. data/spec/features/admin/legacy_page_url_management_spec.rb +62 -0
  608. data/spec/features/admin/link_overlay_spec.rb +54 -0
  609. data/spec/features/admin/locale_select_feature_spec.rb +25 -0
  610. data/spec/features/admin/modules_integration_spec.rb +24 -0
  611. data/spec/features/admin/navigation_feature_spec.rb +13 -0
  612. data/spec/features/admin/page_creation_feature_spec.rb +51 -0
  613. data/spec/features/admin/page_editing_feature_spec.rb +135 -0
  614. data/spec/features/admin/picture_library_integration_spec.rb +62 -0
  615. data/spec/features/admin/resources_integration_spec.rb +133 -0
  616. data/spec/features/admin/site_select_feature_spec.rb +32 -0
  617. data/spec/features/admin/tinymce_feature_spec.rb +34 -0
  618. data/spec/features/navigation_spec.rb +9 -0
  619. data/spec/features/page_feature_spec.rb +287 -0
  620. data/spec/features/picture_security_spec.rb +35 -0
  621. data/spec/features/security_spec.rb +24 -0
  622. data/spec/features/translation_integration_spec.rb +51 -0
  623. data/spec/fixtures/500x500.png +0 -0
  624. data/spec/fixtures/80x60.png +0 -0
  625. data/spec/fixtures/image with spaces.png +0 -0
  626. data/spec/fixtures/image.png +0 -0
  627. data/spec/fixtures/image2.PNG +0 -0
  628. data/spec/fixtures/image3.jpeg +0 -0
  629. data/spec/helpers/admin/attachments_helper_spec.rb +15 -0
  630. data/spec/helpers/admin/base_helper_spec.rb +270 -0
  631. data/spec/helpers/admin/contents_helper_spec.rb +65 -0
  632. data/spec/helpers/admin/elements_helper_spec.rb +178 -0
  633. data/spec/helpers/admin/essences_helper_spec.rb +140 -0
  634. data/spec/helpers/admin/navigation_helper_spec.rb +288 -0
  635. data/spec/helpers/admin/pages_helper_spec.rb +95 -0
  636. data/spec/helpers/admin/pictures_helper_spec.rb +29 -0
  637. data/spec/helpers/admin/tags_helper_spec.rb +113 -0
  638. data/spec/helpers/base_helper_spec.rb +45 -0
  639. data/spec/helpers/elements_block_helper_spec.rb +135 -0
  640. data/spec/helpers/elements_helper_spec.rb +311 -0
  641. data/spec/helpers/essences_helper_spec.rb +156 -0
  642. data/spec/helpers/pages_helper_spec.rb +413 -0
  643. data/spec/helpers/picture_url_helpers_spec.rb +35 -0
  644. data/spec/helpers/url_helper_spec.rb +174 -0
  645. data/spec/javascripts/alchemy/dialog_spec.coffee +82 -0
  646. data/spec/javascripts/alchemy/link_overlay_spec.coffee +25 -0
  647. data/spec/javascripts/alchemy_integration_spec.coffee +3 -0
  648. data/spec/javascripts/fixtures/select.html +3 -0
  649. data/spec/javascripts/helpers/mock-ajax.js +199 -0
  650. data/spec/javascripts/helpers/test_responses/test_responses.js +1 -0
  651. data/spec/javascripts/support/jasmine.yml +29 -0
  652. data/spec/libraries/auth_accessors_spec.rb +40 -0
  653. data/spec/libraries/config_spec.rb +112 -0
  654. data/spec/libraries/controller_actions_spec.rb +133 -0
  655. data/spec/libraries/i18n_spec.rb +30 -0
  656. data/spec/libraries/kaminari/scoped_pagination_url_helper_spec.rb +30 -0
  657. data/spec/libraries/modules_spec.rb +67 -0
  658. data/spec/libraries/mount_point_spec.rb +77 -0
  659. data/spec/libraries/on_page_layout_spec.rb +112 -0
  660. data/spec/libraries/page_layout_spec.rb +144 -0
  661. data/spec/libraries/permissions_spec.rb +261 -0
  662. data/spec/libraries/resource_spec.rb +371 -0
  663. data/spec/libraries/resources_helper_spec.rb +144 -0
  664. data/spec/libraries/shell_spec.rb +125 -0
  665. data/spec/libraries/template_tracker_spec.rb +94 -0
  666. data/spec/libraries/tinymce_spec.rb +67 -0
  667. data/spec/libraries/userstamp_spec.rb +10 -0
  668. data/spec/mailers/messages_spec.rb +23 -0
  669. data/spec/models/attachment_spec.rb +227 -0
  670. data/spec/models/cell_spec.rb +102 -0
  671. data/spec/models/content_spec.rb +404 -0
  672. data/spec/models/dummy_model_spec.rb +11 -0
  673. data/spec/models/element_spec.rb +617 -0
  674. data/spec/models/element_to_page_spec.rb +14 -0
  675. data/spec/models/essence_boolean_spec.rb +10 -0
  676. data/spec/models/essence_date_spec.rb +29 -0
  677. data/spec/models/essence_file_spec.rb +43 -0
  678. data/spec/models/essence_html_spec.rb +18 -0
  679. data/spec/models/essence_link_spec.rb +10 -0
  680. data/spec/models/essence_picture_spec.rb +183 -0
  681. data/spec/models/essence_richtext_spec.rb +18 -0
  682. data/spec/models/essence_select_spec.rb +10 -0
  683. data/spec/models/essence_text_spec.rb +114 -0
  684. data/spec/models/language_spec.rb +123 -0
  685. data/spec/models/legacy_page_url_spec.rb +21 -0
  686. data/spec/models/message_spec.rb +55 -0
  687. data/spec/models/page_spec.rb +1896 -0
  688. data/spec/models/picture_spec.rb +330 -0
  689. data/spec/models/site_spec.rb +233 -0
  690. data/spec/models/tag_spec.rb +31 -0
  691. data/spec/routing/api_routing_spec.rb +150 -0
  692. data/spec/routing/routing_spec.rb +234 -0
  693. data/spec/spec_helper.rb +89 -0
  694. data/spec/support/ci/install_phantomjs +7 -0
  695. data/spec/support/hint_examples.rb +30 -0
  696. data/spec/support/rspec-activemodel-mocks_patch.rb +8 -0
  697. data/spec/support/test_tweaks.rb +31 -0
  698. data/spec/support/transformation_examples.rb +180 -0
  699. data/spec/tasks/helpers_spec.rb +219 -0
  700. data/spec/views/essences/essence_boolean_editor_spec.rb +33 -0
  701. data/spec/views/essences/essence_boolean_view_spec.rb +25 -0
  702. data/spec/views/essences/essence_date_view_spec.rb +39 -0
  703. data/spec/views/essences/essence_file_editor_spec.rb +61 -0
  704. data/spec/views/essences/essence_file_view_spec.rb +24 -0
  705. data/spec/views/essences/essence_html_view_spec.rb +22 -0
  706. data/spec/views/essences/essence_link_view_spec.rb +41 -0
  707. data/spec/views/essences/essence_picture_view_spec.rb +129 -0
  708. data/spec/views/essences/essence_richtext_view_spec.rb +32 -0
  709. data/spec/views/essences/essence_select_view_spec.rb +12 -0
  710. data/spec/views/essences/essence_text_view_spec.rb +52 -0
  711. data/vendor/assets/images/Jcrop.gif +0 -0
  712. data/vendor/assets/javascripts/fileupload/jquery.fileupload-process.js +175 -0
  713. data/vendor/assets/javascripts/fileupload/jquery.fileupload-validate.js +122 -0
  714. data/vendor/assets/javascripts/fileupload/jquery.fileupload.js +1467 -0
  715. data/vendor/assets/javascripts/fileupload/jquery.iframe-transport.js +217 -0
  716. data/vendor/assets/javascripts/jquery_plugins/jquery.Jcrop.min.js +22 -0
  717. data/vendor/assets/javascripts/jquery_plugins/jquery.floatThead.min.js +3 -0
  718. data/vendor/assets/javascripts/jquery_plugins/jquery.scrollTo.min.js +7 -0
  719. data/vendor/assets/javascripts/jquery_plugins/jquery.ui.nestedSortable.js +435 -0
  720. data/vendor/assets/javascripts/jquery_plugins/jquery.ui.tabspaging.js +296 -0
  721. data/vendor/assets/javascripts/keymaster.js +296 -0
  722. data/vendor/assets/javascripts/requestAnimationFrame.js +31 -0
  723. data/vendor/assets/javascripts/spin.min.js +1 -0
  724. data/vendor/assets/javascripts/tinymce/langs/de.js +200 -0
  725. data/vendor/assets/javascripts/tinymce/langs/es.js +200 -0
  726. data/vendor/assets/javascripts/tinymce/langs/fr.js +200 -0
  727. data/vendor/assets/javascripts/tinymce/langs/nl.js +200 -0
  728. data/vendor/assets/javascripts/tinymce/langs/ru.js +200 -0
  729. data/vendor/assets/javascripts/tinymce/license.txt +504 -0
  730. data/vendor/assets/javascripts/tinymce/plugins/anchor/plugin.min.js +1 -0
  731. data/vendor/assets/javascripts/tinymce/plugins/autoresize/plugin.min.js +1 -0
  732. data/vendor/assets/javascripts/tinymce/plugins/charmap/plugin.min.js +1 -0
  733. data/vendor/assets/javascripts/tinymce/plugins/code/plugin.min.js +1 -0
  734. data/vendor/assets/javascripts/tinymce/plugins/directionality/plugin.min.js +1 -0
  735. data/vendor/assets/javascripts/tinymce/plugins/fullscreen/plugin.min.js +1 -0
  736. data/vendor/assets/javascripts/tinymce/plugins/hr/plugin.min.js +1 -0
  737. data/vendor/assets/javascripts/tinymce/plugins/link/plugin.min.js +1 -0
  738. data/vendor/assets/javascripts/tinymce/plugins/paste/plugin.min.js +1 -0
  739. data/vendor/assets/javascripts/tinymce/plugins/tabfocus/plugin.min.js +1 -0
  740. data/vendor/assets/javascripts/tinymce/plugins/table/plugin.min.js +1 -0
  741. data/vendor/assets/javascripts/tinymce/themes/modern/theme.min.js +1 -0
  742. data/vendor/assets/javascripts/tinymce/tinymce.min.js +13 -0
  743. data/vendor/assets/stylesheets/jquery.Jcrop.min.css +28 -0
  744. metadata +1453 -0
@@ -0,0 +1,942 @@
1
+ # encoding: UTF-8
2
+
3
+ fr:
4
+
5
+ # = Alchemy Translations
6
+ # All translations used in Alchemy CMS are inside this alchemy namespace.
7
+ alchemy:
8
+
9
+ # == Translations for page_layout names
10
+ # Just use the page_layouts name like defined inside the config/alchemy/page_layouts.yml file and translate it.
11
+ #
12
+ # Example:
13
+ # de:
14
+ # alchemy:
15
+ # page_layout_names:
16
+ # contact: Kontakt
17
+ # search: Suche
18
+ #
19
+
20
+ page_layout_names:
21
+ contact: 'Contact'
22
+ search: 'Recherche'
23
+ layout_header: 'Haut de page'
24
+ layout_footer: 'Bas de page'
25
+ external: 'Link extérieur'
26
+
27
+ # == Translations for element names
28
+ # Just use the elements name like defined inside the config/alchemy/elements.yml file and translate it.
29
+ #
30
+ # Example:
31
+ # fr:
32
+ # alchemy:
33
+ # element_names:
34
+ # article: Article
35
+ # intro_image_text: Intro article
36
+ #
37
+ element_names:
38
+ article: 'Article'
39
+ intro_image_text: 'Intro article'
40
+ text: 'Texte'
41
+ bild: 'Image(s)'
42
+ bild_text: 'Texte (image)'
43
+ headline: 'Surtitre'
44
+ image_mosaic: 'Galerie images'
45
+ footnote: 'Bas de page'
46
+ sitename: 'Nom de page'
47
+ claim: 'Claim'
48
+ header: 'image de front'
49
+ intro: 'Intro'
50
+ subheadline: 'Titre medial'
51
+ news: 'Nouveautées'
52
+ searchresult: 'detail de recherche'
53
+ contactform: 'Formulaire de contact'
54
+
55
+ # == Translated names for contents in elements.
56
+ # Used for the content editor label inside the element editor view (The elements window)
57
+ #
58
+ # Tip: You can translate content names globally for all contents of this name, or specificly for an element.
59
+ # To do so, just place the content_name under the element name
60
+ content_names:
61
+ text: 'Texte'
62
+ date: 'Date'
63
+ body: 'Contenu'
64
+ image: 'Image'
65
+ mail_from: 'Envoyeur (E-Mail)'
66
+ mail_to: 'Receveur (E-Mail)'
67
+ caption: "Sous-titre image"
68
+ subject: 'Concerne'
69
+ intro: 'Introduction'
70
+ headline: "Surtitre"
71
+ subheadline: "Sous-tritre"
72
+ news_headline: "Surtitre nouvetées"
73
+ image_mosaic:
74
+ caption: "Mosaique sous-tritre"
75
+ show_caption: "voir ècriture bas d´image"
76
+ file: Dossier
77
+ contactform:
78
+ success_page: 'Page suivante'
79
+
80
+ # Translations for content validations
81
+ #
82
+ content_validations:
83
+ contactform:
84
+ success_page:
85
+ blank: 'sélectionez la page suivante s´il vous plait'
86
+ errors:
87
+ blank: '%{field} Ne peut être vide'
88
+ invalid: '%{field} A le mauvais format'
89
+ taken: '%{field} Déja utilisé'
90
+
91
+ default_content_texts:
92
+ lorem: "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
93
+ corporate_lorem: "Appropriately enable sustainable growth strategies vis-a-vis holistic materials. Energistically orchestrate open-source e-tailers vis-a-vis plug-and-play best practices. Uniquely plagiarize client-centric opportunities whereas plug-and-play ideas. Distinctively reconceptualize backward-compatible partnerships vis-a-vis reliable total linkage. Interactively fabricate highly efficient networks for clicks-and-mortar content. Collaboratively reconceptualize holistic markets via 2.0 architectures."
94
+
95
+ essence_pictures:
96
+ css_classes:
97
+ left: 'Gauche du texte'
98
+ right: 'A droite du texte'
99
+ no_float: 'Sur le texte'
100
+
101
+ # == Contactform translations
102
+ contactform:
103
+ labels:
104
+ salutation: 'Titre'
105
+ choose: 'Veillez choisir'
106
+ mr: 'Monsieur'
107
+ mrs: 'Madamme'
108
+ firstname: 'Prénom'
109
+ lastname: 'Nom'
110
+ address: 'Rue / Nr.'
111
+ zip: 'Code postal / Lieu'
112
+ phone: 'Téléphone'
113
+ email: 'E-Mail'
114
+ message: 'Message'
115
+ send: 'envoyer'
116
+ mandatory_fields: "*Obligatoire. S'il vous plaît remplir ces champs."
117
+ # The flash message shown after succesfully sending the message.
118
+ messages:
119
+ success: 'Votre message a été envoyé avec succès.'
120
+
121
+ # == Translated language names for translation select
122
+ translations:
123
+ de: 'DE'
124
+ en: 'EN'
125
+ nl: 'NL'
126
+ fr: 'FR'
127
+
128
+ # == User roles translations
129
+ user_roles:
130
+ registered: "enregistré"
131
+ member: "Menbre"
132
+ author: "Auteur"
133
+ editor: "éditeur"
134
+ admin: "Administrateur"
135
+
136
+ # == Mime Types translations
137
+ # These are human readable mime types used for the document-type row in archive files.
138
+ mime_types:
139
+ audio/mp4: 'Audio MP4'
140
+ application/msword: 'Document Word'
141
+ application/rtf: 'Document RTF'
142
+ audio/mpeg: 'Audio MP3'
143
+ text/plain: 'Document de texte'
144
+ video/mp4: 'vidéo MP4'
145
+ video/mpeg: 'vidéo MPEG'
146
+ application/pdf: 'Document PDF'
147
+ application/x-flash-video: 'vidéo flash'
148
+ video/x-flv: 'vidéo flash'
149
+ application/x-shockwave-flash: 'vidéo flash'
150
+ application/zip: 'ZIP-Archive'
151
+ application/x-rar: 'RAR-Archive'
152
+ application/vnd:
153
+ ms-excel: 'Document Excel'
154
+ video/quicktime: 'vidéo Quicktime'
155
+ image/x-psd: 'fichier Photoshop'
156
+ image/gif: 'image GIF'
157
+ image/jpeg: 'image JPG'
158
+ image/png: 'image PNG'
159
+ video/x-msvideo: 'vidéo AVI'
160
+ video/x-ms-wmv: 'vidéo Windows Media'
161
+ image/tiff: 'image TIFF'
162
+ 'text/x-vcard': 'vCard'
163
+ application/vcard: 'vCard'
164
+
165
+ link_target_options:
166
+ default: 'Fenêtre identique'
167
+ blank: 'nouvelle fenêtre/Tab'
168
+ overlay: 'un revêtement'
169
+
170
+ resource_help_texts:
171
+ site:
172
+ aliases: "S'il vous plaît indiquer Autres domaines séparés par des espaces ou ligne blanche."
173
+
174
+ anchor: 'ancre'
175
+ back: 'arrière'
176
+ create_tree_as_new_language: "%{language} Création d'un nouvel arbre de la langue"
177
+ "<a href=\"http://get.adobe.com/flashplayer\" target=\"_blank\">%{value}</a>": ""
178
+ "Active Pages": "sites actifs"
179
+ "Add global page": "Nouvelle page globale"
180
+ "Add page link": "Add Reference"
181
+ "Adobe Website": "site Web d'Adobe"
182
+ "Alchemy is open software and itself uses open software and free resources:": "Alchemy est un logiciel open source et utilise le logiciel libre et les ressources libres même:"
183
+ "Alchemy is up to date": 'Alchemy est à jour'
184
+ 'An error happened': 'une erreur est apparue'
185
+ "Change password": "modifier mot de passe"
186
+ "Choose page": "choisir page"
187
+ "Cleared trash": "La Corbeille a été vidée"
188
+ "Clear selection": "Annuler la sélection"
189
+ "Forgot your password?": "Mot de passe oublié?"
190
+ "Clipboard": "panier de marchandise"
191
+ "Confirm new password": "Confirmer nouveau mot de passe"
192
+ "Copy": "Copie"
193
+ "Could not load Adobe Flash® Plugin!": "Adobe Flash® Plugin ne peut être chargé!"
194
+ "Currently locked pages": "Pages en cours d'édition"
195
+ "Default language has to be public": "La langue par défaut doit être publié."
196
+ "Delete image": "effacer Bild"
197
+ "Do you really want to clear the clipboard?": "Voulez-vous vraiment vider le presse-papiers?"
198
+ "Do you really want to clear the trash?": "Voulez-vous vraiment vider la corbeille"
199
+ "Do you really want to delete this content?": "Voulez-vous vraiment supprimer cet objet?"
200
+ "Drag an element over to the element window to restore it": "Faites glisser un élément avec la souris dans les éléments de la fenêtre, à restaurer."
201
+ "Edit Picturemask": "Modifier le masque de l'image"
202
+ "Edit image": "modifier image"
203
+ "Edit multiple pictures": "Modifier plusieurs images"
204
+ "Elements": "Elements"
205
+ "Element trashed": "L'élément a été placé dans la corbeille"
206
+ "Error with the Flash® Uploader!": "erreur avec le Flash® Uploader!"
207
+ "Excerpt": "Extrait"
208
+ "File uploaded succesfully": "Element %{name} téléchargé"
209
+ "File successfully updated": "Le fichier a été enregistré avec succès."
210
+ "File upload error": "Le fichier ne peut être téléchargé: %{error}"
211
+ "File: '%{name}' deleted successfully": "%{name} effacé"
212
+ "Filter by tag": "Filtrer par tag"
213
+ "Flush page cache": "Effacer la page cache"
214
+ "Flush picture cache": "Effacer Cache des images"
215
+ "Global shortcuts": "Raccourcis clavier globaux"
216
+ "Hide childpages": "Masquer les sous-pages"
217
+ "Hide Elements": "masquer les éléments"
218
+ "If you have any problems using the Flash uploader you can switch to": "Si vous avez des problèmes avec l'uploader Flash ®, il suffit d'aller à %{link}"
219
+ "Image missing": "límage manque"
220
+ "Image size": "Grandeur dímage"
221
+ "Image updated successfully": "L'image a été enregistrée"
222
+ "Index Error after saving Element. Please try again!": "Indexation Échec de l'enregistrement du produit. S'il vous plaît essayer de nouveau!"
223
+ "Language successfully created.": "La langue a été créé avec succès."
224
+ "Language successfully destroyed.": "La langue a été supprimé."
225
+ "Language successfully updated.": "La langue a été mis à jour."
226
+ "Language tree": "Arbre langue"
227
+ "Layout default": "Mise en page par défaut"
228
+ "Library shortcuts": "Raccourcis clavier dans la bibliothèque"
229
+ "Logged in as": "Connecté sous"
230
+ "Mandatory": "Champs obligatoires"
231
+ "Name": "Nom"
232
+ "New": "Nouveau"
233
+ "New Element": "Ajouter un élément"
234
+ "New page": "Nouvelle page"
235
+ "No page links for this page found": "Pas de références disponibles."
236
+ "New password": "Nouveau mot de passe"
237
+ "New Tag": "nouvelle étiquette"
238
+ "New Tag Created": "Nouvelle étiquette a été créée"
239
+ "No": "Non"
240
+ "No EssenceType given": ""
241
+ "No items in your clipboard": "Votre presse-papiers est vide"
242
+ "No Tags found": "Aucun tag trouvé"
243
+ "None": "sans"
244
+ "Open Link in": "Ouvrir ce lien dans"
245
+ "Page": "SPage"
246
+ "Page edit shortcuts": "Modifier clés pour la page"
247
+ "Page deleted": "%{name} A été supprimée"
248
+ "Page saved": "%{name} A été enregistré"
249
+ "Page cache flushed": "Page cache a été vidé"
250
+ "Pages order saved": "Triage de page à été enregistré"
251
+ "Password": "Mot de passe"
252
+ "Password reset": "Remettre mot de passe"
253
+ "Paste from clipboard": "du presse-papiers"
254
+ "Picture infos": "Informations sur l'image"
255
+ "Picture uploaded succesfully": "Image %{name} à été téléchargé"
256
+ "Picture validation error": "Image %{name} ne peut être téléchargé"
257
+ "Picture renamed successfully": "límage a été renommé avec succès de %{from} vers %{to} "
258
+ "Picture deleted successfully": "%{name} A été effacé"
259
+ "Pictures deleted successfully": "Les images %{names} ont été effacées"
260
+ "Pictures updated successfully": "Les images ont été enregistrées"
261
+ "Picture cache flushed": "Le cache de l'image a été vidé"
262
+ "Please Signup": "Pour être en mesure de modifier votre site Web, vous devez d'abord configurer un utilisateur Admin."
263
+ "Please choose": "S'il vous plaît Choisir"
264
+ "Please enter a new password": "S'il vous plaît, entrez votre nouveau mot de passe."
265
+ "Please enter your email address": "S'il vous plaît, entrez votre adresse e-mail."
266
+ "Please log in": "Connecter vous síl vous plaît."
267
+ "Please seperate the tags with commata": "* S'il vous plaît entrer les mots-clés séparés par des virgules."
268
+ use_alternative_uploader_instead: "Veiller utiliser l´uploader alternativ."
269
+ "Properties": "Propriétés"
270
+ "Publish page": "publier"
271
+ "Read the License": "Lisez la licence"
272
+ "Redirects to": "LConduit vers"
273
+ "Reload Preview": "Recharger Aperçu"
274
+ "Remove item from clipboard": "Supprimer le contenu du presse-papiers"
275
+ "Remove tag filter": "Enlever filtre"
276
+ "Remove this content": "Retirer ce contenu"
277
+ "Reset Imagemask": "Enlever le masque d'image"
278
+ "Reset password instructions": "Instructions pour réinitialiser votre mot de passe"
279
+ "Select all": "Sélectionner tous"
280
+ "Select an content": "Sélectionnez un contenu de"
281
+ "Select style": "Feuille de style"
282
+ "Send reset instructions": "Envoyer instructions"
283
+ "Show Elements": "Montrer les éléments"
284
+ "Show childpages": "Montrer les sous de pages"
285
+ "Show clipboard": "Voir le presse-papiers"
286
+ "Show picture infos": "Afficher les infos de l'image"
287
+ "Show trash": "Afficher Corbeille"
288
+ "Size": "Grndeur"
289
+ "Sort pages": "Réordonner les pages"
290
+ "Successfully added content": "%{content} A été ajouté"
291
+ "Successfully deleted content": "%{content} A été effacé"
292
+ "Successfully saved content position": "La position est enregistrée."
293
+ "Switch to Flash® Uploader": "Changer vers le Flash® Uploader"
294
+ sitemap_editor_info: "Le plan du site est généré automatiquement"
295
+ searchresults_editor_info: "Cet élément représente les résultats de la recherche. Il ne nécessite aucun réglage."
296
+ "Tags": "Tags"
297
+ "These pictures could not be deleted, because they were in use": "Ces images ne peuvent pas être supprimés car ils sont en cours d'utilisation: %{names}"
298
+ "This page is locked by %{name}": "Cette page est bloquée par %{name}"
299
+ "Title": "Titre"
300
+ "Trash": "Corbeille"
301
+ "User created": "%{name} à été créé"
302
+ "User deleted": "%{name} à été effacé"
303
+ "User updated": "%{name} à été actualisé"
304
+ "Validation failed": "Certains champs obligatoires n'ont pas été remplis correctement."
305
+ "Version": "Version"
306
+ "View File": "Montrer Dossier"
307
+ "Visit page": "Allerà la page"
308
+ "Warning!": "Attention!"
309
+ content_description_missing: "avertissement!: Pour ce contenu le modèle n'a pas été trouvé. S'il vous plaît vérifier le fichier elements.yml."
310
+ element_description_missing: "avertissement! Pour cet élément, le modèle ne peut pas être trouvé. S'il vous plaît vérifier le fichier elements.yml."
311
+ "Welcome to Alchemy": "Bienvenue sur Alchemy"
312
+ "Who else is online": "Qui d'autre est en ligne"
313
+ "Yes": "oui"
314
+ "You are not authorized": "Vous n'êtes pas autorisé."
315
+ "You are about to edit %{length} pictures at once": "Vous êtes en cours de modifier plusieurs images %{length}."
316
+ element_dirty_close_window_notice: "Vous avez des éléments non enregistrés. Souhaitez-vous vraiment envie de fermer les éléments de la fenêtre?"
317
+ "You may upload files with following extensions": "vous pouvez telechargés %{file_types_description} avec les extensions suivantes: %{file_types}"
318
+ "You may upload any file": "Vous pouvez télécharger tout type de fichier."
319
+ "Your last login was on %{time}": "Votre dernière session était le %{time}."
320
+ "Your last updated pages": "Vos pages les plus récemment modifiés"
321
+ "Your trash is empty": "La corbeille est vide"
322
+ above: "au-dessus"
323
+ add: "Ajouter"
324
+ "add new content": "Ajouter élément"
325
+ add_image_to_element: "Ajouter image"
326
+ align_in_text: "Disposer le texte"
327
+ all: "tous"
328
+ allow_fullscreen: "Affichage plein écran"
329
+ all_pictures: "Afficher tous les images"
330
+ apply: "prendre"
331
+ assign_file: "attribuer fichier"
332
+ assign_file_from_archive: "Attribuer fichier de l'archive"
333
+ assign_image: "Inserer image."
334
+ attachment_filename_notice: "* S'il vous plaît ne pas utiliser de caractères spéciaux ou d'accentuations dans le nom du fichier."
335
+ auto_play: "Jouer le film automatiquement"
336
+ big_thumbnails: "grandes vignettes"
337
+ browse: "rechercher"
338
+ cancel: "Annuler"
339
+ cannot_delete_picture_notice: "L´image %{name} ne peut pas être supprimé car il est encore utilisé sur les pages."
340
+ choose_element_as_target: "Sélectionnez un élément de cette page en tant que destination"
341
+ choose_element_to_link: "S'il vous plaît sélectionner un élément."
342
+ choose_file_to_link: "S'il vous plaît sélectionner un fichier à lier."
343
+ "clear clipboard": "Vider le presse papier"
344
+ "clear trash": "Vider la corbeille"
345
+ click_to_show_all: "Visualiser tout"
346
+ confirm_to_delete_file: "Voulez-vous vraiment supprimer ce fichier à partir du serveur?"
347
+ confirm_to_delete_image: "Voulez-vous vraiment supprimer límage?"
348
+ confirm_to_delete_image_from_server: "Voulez-vous vraiment supprimer l´image du serveur?"
349
+ confirm_to_delete_images_from_server: "Voulez-vous vraiment supprimer les images du serveur?"
350
+ confirm_to_delete_language: "Voulez-vous vraiment supprimer cette langue?<br/>ATTENTION! Tous les sites liés seront supprimés!"
351
+ confirm_to_delete_page: "Voulez-vous vraiment supprimer cette page? Tous les contenus sont irrévocablement perdus!"
352
+ contactform_body: "Modèle de message"
353
+ content_essence_not_found: "Essence n'a pas été trouvé"
354
+ content_not_found: "Le champ de ce contenu n'est pas disponible."
355
+ content_validations_headline: "S'il vous plaît vérifier les champs en surbrillance."
356
+ copy: "Copier"
357
+ copy_element: "Copier élément"
358
+ copy_page: "Copier page"
359
+ "Could not delete Pictures": "Images n'ont pas pu être supprimés"
360
+ copy_language_tree_heading: "Copier un langage d'arbres"
361
+ country_code_placeholder: 'par exemple at (optionnel)'
362
+ country_code_foot_note: "Le code du pays est seulement nécessaire si vous souhaitez appliquer plusieurs pays de langues différentes."
363
+ create: "Etablir"
364
+ "Create language": "Création d´un nouveau langage"
365
+ "Create site": "Créer un nouveau site"
366
+ create_language_tree_heading: "Créer un langage d'arbres vide"
367
+ create_page: "Créer une sous-page"
368
+ currently_edited_by: "Est traîté par "
369
+ cut_element: "Découper élément"
370
+ delete_file: "Supprimer le fichier du serveur"
371
+ delete_image: "supprimer l'image."
372
+ delete_language: "Supprimer la langue"
373
+ delete_page: "Supprimer la page"
374
+ delete_tag: 'Supprimer le tag'
375
+ document: "Document"
376
+ documents: "Fichiers"
377
+ download_csv: "CSV télécharger"
378
+ download_file: "%{filename} télécharger"
379
+ do_you_really_want_to_delete_this_tag?: "Voulez-vous vraiment supprimer ce tag?"
380
+ drag_to_sort: "Garder le contact avec la souris et déplacer"
381
+ edit_file_properties: "Modifier les propriétés de fichiers"
382
+ edit_image_properties: "Modifier les propriétés d'image"
383
+ edit_language: "Modifier la langue"
384
+ edit_page: "Modifier la page"
385
+ edit_page_properties: "Modifier les propriétés de la page"
386
+ edit_tag: 'Modifier Tag'
387
+ edit_selected_pictures: "Les photos sélectionnées:"
388
+ element_editor_not_found: "Dans cet élément est survenu une erreur"
389
+ element_of_type: "élément"
390
+ element_saved: "Element a été enregistrée."
391
+ enter_external_link: "Entrez l'adresse de la page à laquelle vous souhaitez mettre un lien."
392
+ explain_cropping: "<p>Vous pouvez déplacer le cadre et redimensionner ensemble pour composer l'image.</p><p>Wenn Sie zufrieden sind, dann klicken Sie bitte auf speichern.</p>"
393
+ explain_publishing: "Supprimer la version mise en cache du serveur et de publier les changements actuels"
394
+ explain_sitemap_dragndrop_sorting: "Conseil: Gardez à trier les pages, l'icône de la page avec la souris fermement et déplacez-le vers sa nouvelle position."
395
+ explain_unlocking: "Quitter la page pour permetre d´autres utilisateuer d´activer l´édition."
396
+ explain_upload:
397
+ footnote: "CONSEIL! Maintenez la touche Ctrl (cmd-Taste pour Mac) en cliquant sur le% {name} avec la souris pour sélectionner plusieur %{name} à télécharger simultanément."
398
+ intro: "Ainsi fonctionne %{name} le chargement"
399
+ step1: 'Cliquez sur "Parcourir" et ouvrez le dossier avec votre %{name}'
400
+ step2: "Sélectionner tous % {name} à partir duquel vous souhaitez télécharger en même temps"
401
+ step3: 'Cliquez sur "Ouvrir". Le téléchargement commence!'
402
+ dragndrop: "Alternativement, vous pouvez faire glisser et déposer des fichiers depuis votre ordinateur avec la souris sur la surface inférieure."
403
+ external_link_notice_1: "S'il vous plaît entrez l'URL complète par http:// (ou protocole similaire)."
404
+ external_link_notice_2: "Pour faire référence à un chemin dans les pages Web URL, vous commencez avec un /."
405
+ female: "Femme"
406
+ file: "Dossier"
407
+ file_rename_error: "Le fichier ne peut pas être renommé."
408
+ files: "Dossiers"
409
+ from_at: "De %{by} le %{at}"
410
+ height: "Hauteur"
411
+ help:
412
+ shortcuts:
413
+ "Open help window": "Ouvrir l`aide"
414
+ "Close current dialog": "Fermez la boîte de dialogue en cours"
415
+ "Open logout dialog": "Déconnexion dialogue"
416
+ "Focus search field": "Champ de recherche de mise au point"
417
+ "Create a new record": "Créer une nouvelle entrée"
418
+ "Show page infos": "Voir page d'information"
419
+ "Create new element": "Créer un nouvel élément"
420
+ "Edit page properties": "Modifier les propriétés de la page"
421
+ "Reload the preview": "Mise à jour Aperçu"
422
+ "Leave the page": "Quiter la page"
423
+ "Open upload form": "Télécharger un fichier"
424
+ "Select all pictures": "Choisir tous les images"
425
+ hide_element_content: "Pliez élément"
426
+ dashboard: "Dashboard"
427
+ image_alt_tag: "Tag Alt"
428
+ image_caption: "légende"
429
+ image_name: "Nom"
430
+ image_title: "Tag Titre"
431
+ images: "Images"
432
+ internal_link_headline: "Sélectionnez une page un lien vers."
433
+ internal_link_page_elements_explanation: "En outre, vous pouvez clicker à droite de chaque page sur « monter élément » pour créer une étiquette à un élément de cette page."
434
+ internal_link_page_anchors_explanation: "Sinon, vous pouvez également créer une étiquette dans la page courante."
435
+ "item copied to clipboard": "%{name}a été copié dans le presse-papiers."
436
+ "item moved to clipboard": "%{name} est déplacé vers le presse-papiers."
437
+ "item removed from clipboard": "%{name} a été retiré du presse-papiers."
438
+ javascript_disabled_headline: "Javascript est activé!"
439
+ javascript_disabled_text: "Alchimie ne fonctionne correctement qu'avec Javascript. S'il vous plaît activer dans votre navigateur."
440
+ language_code_placeholder: 'par exemple. de'
441
+ language_does_not_exist: "l'arbre de langue n´existe pas encore"
442
+ language_pages_copied: "L'arbre de la langue a été copié"
443
+ last_upload_only: "Dernière téléchargées"
444
+ left: "Gauche"
445
+ legacy_url_info_text: "Un renvoi est une redirection une ancienne URL de l'URL actuelle de ce site. Ce transfert s'effectue avec<a href='https://support.google.com/webmasters/answer/93633' target='_blank'> un code de statut 301</a>."
446
+ link_image: "Lien de l'image"
447
+ link_overlay_tab_label:
448
+ contactform: "Formulaire de contact"
449
+ external: "Extern"
450
+ file: "dossier"
451
+ internal: "Intern"
452
+ link_title: "Titre de lien"
453
+ login: "enregistrer"
454
+ logout: "déconnecter"
455
+ mail_to: "adresse du destinataire"
456
+ main_content: "contenu principal"
457
+ male: "Monsieur"
458
+ me: 'Moi'
459
+ medium_thumbnails: "Image de mignature moyenne"
460
+ meta_data: "meta dates"
461
+ meta_description: "meta Description"
462
+ meta_keywords: "Meta Tags"
463
+ modules:
464
+ attachments: "Fichiers"
465
+ dashboard: "Dashboard"
466
+ pictures: "Images"
467
+ languages: "Langues"
468
+ layoutpages: "Pages globales"
469
+ library: "Bibliothèque"
470
+ pages: "Pages"
471
+ tags: "Tags"
472
+ sites: "Websites"
473
+ name: "Nom"
474
+ names: "Prénom"
475
+ navigation_name: "Nom de navigation"
476
+ no_image_for_cropper_found: "Il y avait trouvé aucune image. S'il vous plaît enregistrer dabord l'élément."
477
+ no: "Non"
478
+ "no pages": "Pas de pages"
479
+ "no users": "aucun Utilisateurs"
480
+ no_default_language_found: " aucune langue standard n´a été trouvée."
481
+ no_element_given: "Aucun élément spécifié."
482
+ no_files_in_archive: "Vous n'avez pas de fichiers dans vos archives."
483
+ no_images_in_archive: "Vous n'avez pas d'images dans vos archives"
484
+ no_more_elements_to_add: "Aucun élément disponible."
485
+ no_search_results: "Aucun résultat de recherche."
486
+ "not a valid image": "Aucun fichier image valide."
487
+ "or": 'ou'
488
+ or_replace_it_with_an_existing_tag: 'Ou la remplacer par une balise existante'
489
+ "Page created": "page '%{name}' a été créé."
490
+ page_for_links:
491
+ choose_page: "%{name} chisir"
492
+ page_infos: 'Info de page'
493
+ page_layout_changed_notice: "Le type de page a été modifiée. Articles ne sont plus utilisables ont été déplacés vers la Corbeille."
494
+ page_properties: "Propriétés de la page"
495
+ page_public: "publique"
496
+ page_published: "Cette page a été publiée."
497
+ page_restricted: "protégé"
498
+ page_states:
499
+ visible:
500
+ "true": "Le site est visible dans la navigation."
501
+ "false": "Le site n'est pas visible dans la navigation."
502
+ public:
503
+ "true": "La page est publiée."
504
+ "false": "La page n'est pas publiée."
505
+ locked:
506
+ "true": "Le site est actuellement en cours de traitement."
507
+ "false": ""
508
+ restricted:
509
+ "true": "La page est protégée."
510
+ "false": "La page n'est pas protégée."
511
+ page_status: "Statut"
512
+ page_title: "Titre"
513
+ page_type: "Type"
514
+ page_visible_in_navigation: "Visible à la navigation"
515
+ page_was_created: "A été créé"
516
+ page_was_updated: "A été traitée"
517
+ pages:
518
+ update:
519
+ comma_seperated: "Séparés par des virgules"
520
+ password: "Mot de passe"
521
+ paste: "insérer"
522
+ picture_gallery_editor: 'Images'
523
+ picture_library:
524
+ filter:
525
+ last_upload: "plus récemment téléchargés ont étés"
526
+ recent: "des dernières 24 heures"
527
+ without_tag: "sans Tag"
528
+ place_link: "Lié le texte"
529
+ player_version: "Flashplayer Version"
530
+ "please enter subject and mail address": "S'il vous plaît entrez l'objet et l'adresse du destinataire."
531
+ please_confirm: "S'il vous plaît confirmer"
532
+ please_wait: "S'il vous plaît attendre"
533
+ position_in_text: "Agencement de texte"
534
+ preview_size: "Taille de l'aperçu"
535
+ preview_sizes:
536
+ '240': '240px (petit téléphone mobile)'
537
+ '320': '320px (iPhone)'
538
+ '480': '480px (Petit Tablet)'
539
+ '768': '768px (iPad - Portrait)'
540
+ '1024': '1024px (iPad - Widescreen)'
541
+ '1280': '1280px (Desktop)'
542
+ recently_uploaded_only: 'Récemment transféré'
543
+ "regular method": "procédé conventionnel"
544
+ remove: "supprimer"
545
+ rename_file: "Renommer un fichier"
546
+ rename: rebaptiser
547
+ replace: remplacer
548
+ 'Replaced Tag %{old_tag} with %{new_tag}': "Le Tag '%{old_tag}' á été rmplacé par le Tag '%{new_tag}'"
549
+ resources:
550
+ relation_select:
551
+ blank: '- sans -'
552
+ right: "droite"
553
+ robot_follow: "laissez le robot suivre les liens"
554
+ robot_index: "index par Robot"
555
+ save: "enregistré"
556
+ "save order": "enregistrer le tri"
557
+ saved_link: "Lien a été enregistrée."
558
+ search: "chercher"
559
+ search_engines: "moteur de recherche"
560
+ select_element: "Sélectionnez élément"
561
+ seperate_tags_with_comma: 'Séparez les tags avec des virgules.'
562
+ show_element_content: "Afficher élément"
563
+ show_elements_from_page: "Voir les articles sur cette page"
564
+ show_eq: "afficher EQ"
565
+ show_navigation: "Afficher la navigation"
566
+ show_page_in_sitemap: "Voir la page dans le plan du site"
567
+ signup_mail_delivery_error: "Mise en place e-mail n'a pas pu être envoyé. S'il vous plaît vérifier les paramètres de messagerie."
568
+ small_thumbnails: "Petites images de miniature"
569
+ subject: "Concerne"
570
+ successfully_added_element: "Élément a été ajouté."
571
+ successfully_deleted_tag: "Le Tag a été supprimé"
572
+ successfully_restored_element: "L'élément a été restauré."
573
+ successfully_saved_element_position: "La position de l'élément a été enregistrée."
574
+ successfully_updated_tag: "Le Tag a été enregistrée"
575
+ swap_image: "Changer l´image"
576
+ insert_image: "Inserer image"
577
+ tag_list: Tags
578
+ tags_get_created_if_used_the_first_time: "Une étiquette est automatiquement créé lorsque vous l'utilisez pour la première fois."
579
+ this_picture_is_not_used_on_any_page: "Cette image est utilisée sur aucunne page."
580
+ this_picture_is_used_on_these_pages: "Cette image est utilisé sur la page suivente"
581
+ title: "Titre"
582
+ to_alchemy: "Passez à l'Alchemy"
583
+ "trash element": "Placez l'article dans la corbeille"
584
+ unknown: "inconnu"
585
+ unlink: "Supprimer le lien"
586
+ unlock_page: "Quitter la page"
587
+ unlocked_page: "Page %{name} a été libéré."
588
+ upload: "Télécharger un fichier"
589
+ upload_file: "Télécharger plusieurs fichiers"
590
+ upload_image: "Télécharger Images"
591
+ url_name: "URL-Nom"
592
+ visible: "visible"
593
+ want_to_create_new_language: "Voulez-vous créer un nouvel arbre de langage vide?,"
594
+ want_to_make_copy_of_existing_language: "Voulez-vous faire une copie d'une arbre de la langue existante"
595
+ "We need at least one default.": "Il doit y avoir une langue par défaut."
596
+ welcome_note: "Bievenu %{name}"
597
+ welcome_back_note: "Bienvenue à nouveau %{name}"
598
+ welcome_please_identify_notice: "Bienvenue! S'il vous plaît identifier vous."
599
+ width: "Largeur"
600
+ without_tag: 'Sans Tag'
601
+ you_can_rename_this_tag: "Vous pouvez renommer ce tag"
602
+ zoom_image: "Afficher l'image en taille réelle."
603
+ "Leave Alchemy": "Quitter Alchemy"
604
+ leave: "vQuitter"
605
+ "You are about to leave Alchemy": "Vous êtes sur le point de quitter l'Alchimie"
606
+ "Do you want to": "Voulez-vous "
607
+ "stay logged in": "rester connecté"
608
+ "or to completely": "ou vous-même complètement"
609
+ "Please wait. Flash® is loading...": "S'il vous plaît attendre. Uploader Flash ® est en cours de chargement..."
610
+ "Are you sure?": "Etes-vous sûr?"
611
+ "Create": "ajouter"
612
+ "Edit": "Modifier"
613
+ "Delete": "supprimer"
614
+ "Succesfully created": "créé avec succès"
615
+ "Succesfully updated": "correctement mis à jour"
616
+ "Succesfully removed": "supprimé avec succès"
617
+ "Nothing found": "Aucun article trouvé."
618
+ "Or drag files over here": "Ou vous pouvez faire glisser les fichiers ici"
619
+ "Now drop the files": "Lacher les fichiers maintenant"
620
+ "Queued x files": "x Fichiers dans la file d'attente."
621
+ complete: 'terminé'
622
+ "Update available": 'Il ya une mise à jour disponible'
623
+ "Update status unavailable": "L'état de mise à jour n'a pas pu être déterminée"
624
+ "Uploading": "Télécharger"
625
+ "Uploaded x files": "x fichiers téléchargés."
626
+ # END of Alchemy translation
627
+
628
+ # == Rails translations
629
+ # Below are Rails specific translations for date, time, number, currency, error messages and so on.
630
+ date:
631
+ formats:
632
+ default: "%d.%m.%Y"
633
+ datepicker: "%d.%m.%Y"
634
+ short: "%e. %b"
635
+ long: "%e. %B %Y"
636
+ only_day: "%e"
637
+ day_names: [Dimanche, lundi, mardi, mercredi, jeudi, vendredi, samedi]
638
+ abbr_day_names: [Dim., lun., mar., mer., jeu., ven., sam.]
639
+ month_names: [~, Janvier, Février, Mars, Avril, Mai, Juin, Juillet, Août, Septembre, Octobre, Novembre, Décembre]
640
+ abbr_month_names: [~, Jan., Fev., Mar., Avr., Mai, Juin, Juil., Aout, Sep., Okt., Nov., Dec.]
641
+ order:
642
+ - :day
643
+ - :month
644
+ - :year
645
+ time:
646
+ formats:
647
+ default: "%d. %b. %Y, %H:%M Heure"
648
+ short: "%d. %B, %H:%Mh"
649
+ long: "%A, %d. %B %Y um %H:%M Heure"
650
+ page_status: "%d.%m.%Y um %H:%M Heure"
651
+ date: "%d.%m.%Y"
652
+ datepicker: "%d.%m.%Y"
653
+ time: "%H:%M"
654
+ am: "le matin"
655
+ pm: "l'après-midi"
656
+ datetime:
657
+ distance_in_words:
658
+ half_a_minute: 'eine halbe Minute'
659
+ less_than_x_seconds:
660
+ zero: 'moins de 1 seconde'
661
+ one: 'moins de 1 seconde'
662
+ other: 'moin de %{count} seconde'
663
+ x_seconds:
664
+ one: '1 Seconde'
665
+ other: '%{count} Seconde'
666
+ less_than_x_minutes:
667
+ zero: 'moin de 1 Minute'
668
+ one: "moins d'une minute"
669
+ other: 'moins de %{count} Minutes'
670
+ x_minutes:
671
+ one: '1 Minute'
672
+ other: '%{count} Minuten'
673
+ about_x_hours:
674
+ one: 'environ 1 heure'
675
+ other: 'environ %{count} heure'
676
+ x_days:
677
+ one: '1 Tag'
678
+ other: '%{count} jour'
679
+ about_x_months:
680
+ one: 'environ 1 mois'
681
+ other: 'environ%{count} mois'
682
+ x_months:
683
+ one: '1 environ 1 mois'
684
+ other: '%{count} mois'
685
+ about_x_years:
686
+ one: 'environ 1 an'
687
+ other: 'environ %{count} ans'
688
+ over_x_years:
689
+ one: 'plus qu´une annés'
690
+ other: 'plus que %{count} années'
691
+ prompts:
692
+ second: "seconde"
693
+ minute: "Minutes"
694
+ hour: "heures"
695
+ day: "journées"
696
+ month: années"
697
+ year: "Jahr"
698
+ number:
699
+ format:
700
+ precision: 2
701
+ separator: ','
702
+ delimiter: '.'
703
+ currency:
704
+ format:
705
+ unit: '€'
706
+ format: '%n %u'
707
+ separator: ','
708
+ delimiter: '.'
709
+ precision: 2
710
+ percentage:
711
+ format:
712
+ delimiter: "."
713
+ precision: 2
714
+ human:
715
+ format:
716
+ delimiter: "."
717
+ precision: 1
718
+ storage_units:
719
+ # Storage units output formatting.
720
+ # %u is the storage unit, %n is the number (default: 2 MB)
721
+ format: "%n %u"
722
+ units:
723
+ byte:
724
+ one: "Byte"
725
+ other: "Bytes"
726
+ kb: "KB"
727
+ mb: "MB"
728
+ gb: "GB"
729
+ tb: "TB"
730
+ support:
731
+ array:
732
+ words_connector: ", "
733
+ two_words_connector: " et "
734
+ last_word_connector: " et "
735
+
736
+ errors: &errors
737
+ template:
738
+
739
+ header: "Contrôle de formulaire échoué"
740
+ body: "S'il vous plaît vérifier vos détails en référence aux erreurs répertoriées"
741
+
742
+ messages:
743
+ inclusion: "n'est pas une valeur valide"
744
+ exclusion: "n'est pas disponible"
745
+ invalid: "n'est pas valable"
746
+ record_invalid: 'validation de %{errors} manqué'
747
+ confirmation: "ne correspond pas à l'accord de confirmation"
748
+ accepted: "doit être acceptée"
749
+ empty: "doit être complété"
750
+ blank: "doit être complété"
751
+ too_long: "est trop long(pas plus de %{count} signes)"
752
+ too_short: "est trop court (nicht weniger als %{count} signes)"
753
+ wrong_length: "n´a pas une bonne longueur (doit avoir exactement %{count} signes)"
754
+ taken: "est déjà pris"
755
+ not_a_number: "n'est pas un nombre"
756
+ greater_than: "doit être supérieur à% %{count}"
757
+ greater_than_or_equal_to: "doit être supérieur ou égal à %{count}"
758
+ equal_to: "doit être exactement %{count}"
759
+ less_than: "doit être inférieur à %{count}"
760
+ less_than_or_equal_to: "doit être inférieur ou égal à %{count}"
761
+ odd: "doit être impair"
762
+ even: "doit être pair"
763
+
764
+ models:
765
+ alchemy/content:
766
+ attributes:
767
+ name:
768
+ taken: 'existe déja dans cet élément.'
769
+ essence:
770
+ validation_failed: 'validation échoué.'
771
+ alchemy/element:
772
+ attributes:
773
+ name:
774
+ blank: "S'il vous plaît sélectionner un élément."
775
+ alchemy/language:
776
+ attributes:
777
+ language_code:
778
+ invalid: "n'est pas correct. S'il vous plaît utiliser deux minuscules exactement."
779
+ taken: 'existe déjà pour les codes de ce pays.'
780
+ alchemy/page:
781
+ attributes:
782
+ name:
783
+ blank: "S'il vous plaît entrer un nom."
784
+ page_layout:
785
+ blank: "S'il vous plaît sélectionner un type de page."
786
+ urlname:
787
+ too_short: "est trop court (minimum de 3 caractères)"
788
+ taken: "est déjà pris."
789
+ exclusion: "ne peut pas être utilisé."
790
+ alchemy/picture:
791
+ attributes:
792
+ image_file:
793
+ blank: "S'il vous plaît ajouter une photo."
794
+
795
+ activemodel:
796
+
797
+ models:
798
+ alchemy/message:
799
+ one: "message"
800
+ other: "messages"
801
+
802
+ attributes:
803
+ alchemy/message:
804
+ salutation: Titre
805
+ firstname: Prénom
806
+ lastname: Nom
807
+ address: Adresse
808
+ zip: Code postal
809
+ city: Lieu
810
+ phone: téléphone
811
+ email: E-Mail
812
+ message: message
813
+
814
+ errors:
815
+ <<: *errors
816
+
817
+ # Translations for active record database models and error messages.
818
+ activerecord:
819
+
820
+ models:
821
+ acts_as_taggable_on/tag:
822
+ one: Tag
823
+ other: Tags
824
+
825
+ alchemy/attachment:
826
+ one: "dossier"
827
+ other: "dossiers"
828
+
829
+ alchemy/element:
830
+ one: "Element"
831
+ other: "Elements"
832
+ alchemy/legacy_page_url:
833
+ one: "Verweis"
834
+ other: "Verweise"
835
+
836
+ alchemy/language:
837
+ one: "langage"
838
+ other: "langages"
839
+
840
+ alchemy/page:
841
+ one: "Page"
842
+ other: "Pages"
843
+
844
+ alchemy/picture:
845
+ one: Image
846
+ other: Images
847
+
848
+ alchemy/site:
849
+ one: Website
850
+ other: Websites
851
+
852
+ attributes:
853
+
854
+ acts_as_taggable_on/tag:
855
+ taggings_types: Posté le
856
+ taggings_count: Nombres d´utilisations
857
+
858
+ alchemy/attachment:
859
+ file_mime_type: "Dateityp"
860
+ created_at: "créée le"
861
+ file_name: "Nom du fichier"
862
+ name: "Nom"
863
+ file_size: "taille du fichier"
864
+ tag_list: Tags
865
+
866
+ alchemy/element:
867
+ display_name: "Nom"
868
+ name: "Nom"
869
+ public: "visible"
870
+ tag_list: Tags
871
+
872
+ alchemy/essence_file:
873
+ css_class: style
874
+
875
+ alchemy/essence_picture:
876
+ caption: "sous-titre"
877
+ title: "Titel"
878
+ alt_tag: "Alternativ-Text"
879
+ link: Lien
880
+ link_class_name: "Link CSS-Klasse"
881
+ link_title: Titre de lien
882
+ css_class: Stil
883
+ link_target: Lien cible
884
+ render_size: taille de l'écran
885
+ crop_from: "Origine de masque de l'image"
886
+ crop_size: Image masque mesure
887
+ picture_id: image
888
+
889
+ alchemy/language:
890
+ country_code: "Code du pays"
891
+ language_code: "Code de langue"
892
+ default: "Langage standard "
893
+ frontpage_name: "Nom de la Page d'accueil"
894
+ name: "Naom"
895
+ page_layout: "Page Type de Page d'accueil"
896
+ public: "publier langage"
897
+
898
+ alchemy/page:
899
+ created_at: "créée le"
900
+ language: "langage"
901
+ locked: "La page est verrouillé"
902
+ locked_by: "Verrouillé par"
903
+ meta_description: "description de la page"
904
+ meta_keywords: "recherches"
905
+ name: "Nom"
906
+ page_layout: "type de page"
907
+ public: "publié"
908
+ restricted: "Mot de passe protégé"
909
+ robot_follow: "laissez le robot suivre les liens"
910
+ robot_index: "index par Robot"
911
+ sitemap: "visible dans le site"
912
+ tag_list: Tags
913
+ title: "page de titre"
914
+ updated_at: "Mise à jour le"
915
+ urlname: "URL-Nom"
916
+ visible: "in der Navigation sichtbar"
917
+
918
+ alchemy/picture:
919
+ image_file_name: "Nom du fichier"
920
+ image_file_height: "hauteur"
921
+ image_file_width: "largeur"
922
+ image_file_dimensions: "dimensions"
923
+ image_file_size: "taille du fichier"
924
+ name: "nom"
925
+ tag_list: Tags
926
+
927
+ alchemy/site:
928
+ name: "désignation"
929
+ host: "Domaine primaire"
930
+ public: "publié"
931
+ aliases: "Domain-Aliases"
932
+ redirect_to_primary_host: "Redirection vers domaine principal"
933
+
934
+ errors:
935
+ <<: *errors
936
+
937
+ views:
938
+ pagination:
939
+ first: "première page"
940
+ previous_page: "page précédente"
941
+ next_page: "page suivante"
942
+ last: "dernère page"