alchemy_cms 4.0.5 → 4.1.0.beta

Sign up to get free protection for your applications and to get access to all the features.
Files changed (340) hide show
  1. checksums.yaml +4 -4
  2. data/.codeclimate.yml +1 -0
  3. data/.gitignore +1 -0
  4. data/.localeapp/config.rb +8 -0
  5. data/.rubocop.yml +26 -13
  6. data/.travis.yml +8 -11
  7. data/CHANGELOG.md +5 -20
  8. data/Gemfile +10 -7
  9. data/README.md +16 -14
  10. data/Rakefile +1 -1
  11. data/alchemy_cms.gemspec +6 -7
  12. data/app/assets/images/alchemy/alchemy-logo.png +0 -0
  13. data/app/assets/images/alchemy/alchemy-logo.svg +1 -70
  14. data/app/assets/images/alchemy/favicon.ico +0 -0
  15. data/app/assets/images/alchemy/icon.svg +1 -14
  16. data/app/assets/javascripts/alchemy/admin.js +0 -7
  17. data/app/assets/javascripts/alchemy/alchemy.base.js.coffee +2 -2
  18. data/app/assets/javascripts/alchemy/alchemy.buttons.js.coffee +1 -1
  19. data/app/assets/javascripts/alchemy/alchemy.confirm_dialog.js.coffee +1 -1
  20. data/app/assets/javascripts/alchemy/alchemy.datepicker.js.coffee +1 -0
  21. data/app/assets/javascripts/alchemy/alchemy.dialog.js.coffee +19 -6
  22. data/app/assets/javascripts/alchemy/alchemy.dirty.js.coffee +2 -7
  23. data/app/assets/javascripts/alchemy/alchemy.element_editors.js.coffee +36 -26
  24. data/app/assets/javascripts/alchemy/alchemy.elements_window.js.coffee +6 -15
  25. data/app/assets/javascripts/alchemy/alchemy.file_progress.js.coffee +1 -1
  26. data/app/assets/javascripts/alchemy/alchemy.growler.js.coffee +8 -11
  27. data/app/assets/javascripts/alchemy/alchemy.gui.js.coffee +4 -1
  28. data/app/assets/javascripts/alchemy/alchemy.image_overlay.coffee +1 -1
  29. data/app/assets/javascripts/alchemy/alchemy.initializer.js.coffee +5 -14
  30. data/app/assets/javascripts/alchemy/alchemy.preview.js.coffee +54 -75
  31. data/app/assets/javascripts/alchemy/alchemy.preview_window.js.coffee +4 -13
  32. data/app/assets/javascripts/alchemy/alchemy.sitemap.js.coffee +1 -0
  33. data/app/assets/javascripts/alchemy/alchemy.tinymce.js.coffee +12 -6
  34. data/app/assets/javascripts/alchemy/alchemy.translations.js.coffee +0 -158
  35. data/app/assets/stylesheets/alchemy/_defaults.scss +0 -2
  36. data/app/assets/stylesheets/alchemy/_extends.scss +13 -18
  37. data/app/assets/stylesheets/alchemy/_mixins.scss +72 -46
  38. data/app/assets/stylesheets/alchemy/_variables.scss +128 -59
  39. data/app/assets/stylesheets/alchemy/admin.scss +7 -1
  40. data/app/assets/stylesheets/alchemy/archive.scss +23 -27
  41. data/app/assets/stylesheets/alchemy/base.scss +5 -355
  42. data/app/assets/stylesheets/alchemy/buttons.scss +23 -60
  43. data/app/assets/stylesheets/alchemy/clipboard.scss +26 -0
  44. data/app/assets/stylesheets/alchemy/dashboard.scss +7 -40
  45. data/app/assets/stylesheets/alchemy/dialogs.scss +23 -36
  46. data/app/assets/stylesheets/alchemy/elements.scss +80 -156
  47. data/app/assets/stylesheets/alchemy/errors.scss +2 -2
  48. data/app/assets/stylesheets/alchemy/flash.scss +19 -10
  49. data/app/assets/stylesheets/alchemy/fonts.scss +13 -0
  50. data/app/assets/stylesheets/alchemy/forms.scss +6 -1
  51. data/app/assets/stylesheets/alchemy/frame.scss +24 -65
  52. data/app/assets/stylesheets/alchemy/hints.scss +2 -2
  53. data/app/assets/stylesheets/alchemy/icons.scss +3 -337
  54. data/app/assets/stylesheets/alchemy/image_library.scss +9 -10
  55. data/app/assets/stylesheets/alchemy/jquery-ui.scss +21 -839
  56. data/app/assets/stylesheets/alchemy/jquery.datetimepicker.scss +32 -57
  57. data/app/assets/stylesheets/alchemy/lists.scss +4 -8
  58. data/app/assets/stylesheets/alchemy/menubar.scss +26 -29
  59. data/app/assets/stylesheets/alchemy/navigation.scss +23 -25
  60. data/app/assets/stylesheets/alchemy/notices.scss +25 -25
  61. data/app/assets/stylesheets/alchemy/pagination.scss +12 -7
  62. data/app/assets/stylesheets/alchemy/preview_window.scss +20 -0
  63. data/app/assets/stylesheets/alchemy/resource_info.scss +1 -1
  64. data/app/assets/stylesheets/alchemy/search.scss +19 -15
  65. data/app/assets/stylesheets/alchemy/selects.scss +63 -32
  66. data/app/assets/stylesheets/alchemy/sitemap.scss +70 -148
  67. data/app/assets/stylesheets/alchemy/tables.scss +16 -59
  68. data/app/assets/stylesheets/alchemy/toolbar.scss +9 -36
  69. data/app/assets/stylesheets/alchemy/trash.scss +8 -0
  70. data/app/assets/stylesheets/alchemy/upload.scss +5 -6
  71. data/app/assets/stylesheets/tinymce/skins/alchemy/content.min.css.scss +1 -0
  72. data/app/assets/stylesheets/tinymce/skins/alchemy/skin.min.css.scss +78 -43
  73. data/app/controllers/alchemy/admin/attachments_controller.rb +6 -6
  74. data/app/controllers/alchemy/admin/base_controller.rb +9 -9
  75. data/app/controllers/alchemy/admin/contents_controller.rb +0 -17
  76. data/app/controllers/alchemy/admin/elements_controller.rb +1 -4
  77. data/app/controllers/alchemy/admin/essence_files_controller.rb +1 -3
  78. data/app/controllers/alchemy/admin/essence_pictures_controller.rb +1 -3
  79. data/app/controllers/alchemy/admin/languages_controller.rb +1 -1
  80. data/app/controllers/alchemy/admin/pictures_controller.rb +5 -5
  81. data/app/controllers/alchemy/admin/resources_controller.rb +10 -10
  82. data/app/controllers/alchemy/admin/tags_controller.rb +7 -7
  83. data/app/controllers/alchemy/api/contents_controller.rb +6 -1
  84. data/app/controllers/alchemy/api/elements_controller.rb +5 -1
  85. data/app/controllers/alchemy/api/pages_controller.rb +6 -1
  86. data/app/controllers/alchemy/base_controller.rb +5 -3
  87. data/app/controllers/alchemy/pages_controller.rb +1 -1
  88. data/app/helpers/alchemy/admin/base_helper.rb +14 -15
  89. data/app/helpers/alchemy/admin/contents_helper.rb +1 -2
  90. data/app/helpers/alchemy/admin/elements_helper.rb +7 -6
  91. data/app/helpers/alchemy/admin/tags_helper.rb +3 -4
  92. data/app/helpers/alchemy/base_helper.rb +35 -5
  93. data/app/helpers/alchemy/elements_helper.rb +2 -2
  94. data/app/helpers/alchemy/pages_helper.rb +4 -2
  95. data/app/models/alchemy/attachment.rb +14 -23
  96. data/app/models/alchemy/base_record.rb +13 -0
  97. data/app/models/alchemy/cell.rb +1 -1
  98. data/app/models/alchemy/content.rb +1 -2
  99. data/app/models/alchemy/content/factory.rb +1 -1
  100. data/app/models/alchemy/element.rb +10 -12
  101. data/app/models/alchemy/essence_boolean.rb +1 -1
  102. data/app/models/alchemy/essence_date.rb +2 -2
  103. data/app/models/alchemy/essence_file.rb +1 -1
  104. data/app/models/alchemy/essence_html.rb +1 -1
  105. data/app/models/alchemy/essence_link.rb +1 -1
  106. data/app/models/alchemy/essence_picture.rb +1 -1
  107. data/app/models/alchemy/essence_richtext.rb +1 -1
  108. data/app/models/alchemy/essence_select.rb +1 -1
  109. data/app/models/alchemy/essence_text.rb +1 -1
  110. data/app/models/alchemy/folded_page.rb +1 -1
  111. data/app/models/alchemy/language.rb +21 -5
  112. data/app/models/alchemy/page.rb +17 -5
  113. data/app/models/alchemy/page/page_elements.rb +14 -2
  114. data/app/models/alchemy/page/page_naming.rb +17 -4
  115. data/app/models/alchemy/picture.rb +4 -7
  116. data/app/models/alchemy/site.rb +3 -3
  117. data/app/models/alchemy/tag.rb +3 -3
  118. data/app/models/concerns/alchemy/content_touching.rb +23 -0
  119. data/app/serializers/alchemy/element_serializer.rb +2 -0
  120. data/app/views/alchemy/admin/attachments/_archive_overlay.html.erb +1 -1
  121. data/app/views/alchemy/admin/attachments/_attachment.html.erb +11 -21
  122. data/app/views/alchemy/admin/attachments/_files_list.html.erb +26 -29
  123. data/app/views/alchemy/admin/attachments/_filter_bar.html.erb +2 -3
  124. data/app/views/alchemy/admin/attachments/_overlay_file_list.html.erb +3 -4
  125. data/app/views/alchemy/admin/attachments/_replace_button.html.erb +2 -3
  126. data/app/views/alchemy/admin/attachments/_tag_list.html.erb +3 -3
  127. data/app/views/alchemy/admin/attachments/destroy.js.erb +1 -1
  128. data/app/views/alchemy/admin/attachments/edit.html.erb +2 -2
  129. data/app/views/alchemy/admin/attachments/index.html.erb +3 -2
  130. data/app/views/alchemy/admin/attachments/show.html.erb +7 -8
  131. data/app/views/alchemy/admin/clipboard/clear.js.erb +1 -1
  132. data/app/views/alchemy/admin/clipboard/index.html.erb +23 -7
  133. data/app/views/alchemy/admin/clipboard/insert.js.erb +1 -1
  134. data/app/views/alchemy/admin/clipboard/remove.js.erb +2 -2
  135. data/app/views/alchemy/admin/contents/create.js.erb +1 -1
  136. data/app/views/alchemy/admin/dashboard/_locked_pages.html.erb +9 -6
  137. data/app/views/alchemy/admin/dashboard/_recent_pages.html.erb +6 -4
  138. data/app/views/alchemy/admin/dashboard/_sites.html.erb +4 -2
  139. data/app/views/alchemy/admin/dashboard/_users.html.erb +6 -4
  140. data/app/views/alchemy/admin/dashboard/index.html.erb +3 -3
  141. data/app/views/alchemy/admin/dashboard/info.html.erb +6 -7
  142. data/app/views/alchemy/admin/elements/_add_picture.html.erb +1 -1
  143. data/app/views/alchemy/admin/elements/_element.html.erb +1 -1
  144. data/app/views/alchemy/admin/elements/_element_header.html.erb +14 -14
  145. data/app/views/alchemy/admin/elements/_element_toolbar.html.erb +3 -3
  146. data/app/views/alchemy/admin/elements/_new_element_form.html.erb +2 -3
  147. data/app/views/alchemy/admin/elements/index.html.erb +2 -4
  148. data/app/views/alchemy/admin/elements/new.html.erb +1 -2
  149. data/app/views/alchemy/admin/elements/publish.js.erb +5 -5
  150. data/app/views/alchemy/admin/languages/_language.html.erb +4 -9
  151. data/app/views/alchemy/admin/languages/_table.html.erb +1 -1
  152. data/app/views/alchemy/admin/languages/index.html.erb +1 -1
  153. data/app/views/alchemy/admin/layoutpages/_layoutpage.html.erb +5 -5
  154. data/app/views/alchemy/admin/layoutpages/index.html.erb +5 -4
  155. data/app/views/alchemy/admin/leave.html.erb +1 -1
  156. data/app/views/alchemy/admin/legacy_page_urls/_legacy_page_url.html.erb +1 -1
  157. data/app/views/alchemy/admin/legacy_page_urls/_new.html.erb +1 -1
  158. data/app/views/alchemy/admin/pages/_form.html.erb +1 -1
  159. data/app/views/alchemy/admin/pages/_locked_page.html.erb +1 -1
  160. data/app/views/alchemy/admin/pages/_page.html.erb +31 -23
  161. data/app/views/alchemy/admin/pages/_page_for_links.html.erb +5 -5
  162. data/app/views/alchemy/admin/pages/_page_infos.html.erb +3 -3
  163. data/app/views/alchemy/admin/pages/_publication_fields.html.erb +1 -1
  164. data/app/views/alchemy/admin/pages/edit.html.erb +22 -21
  165. data/app/views/alchemy/admin/pages/index.html.erb +5 -21
  166. data/app/views/alchemy/admin/pages/info.html.erb +5 -5
  167. data/app/views/alchemy/admin/pages/sort.html.erb +1 -1
  168. data/app/views/alchemy/admin/pages/unlock.js.erb +2 -4
  169. data/app/views/alchemy/admin/partials/_flash.html.erb +1 -1
  170. data/app/views/alchemy/admin/partials/_main_navigation_entry.html.erb +6 -2
  171. data/app/views/alchemy/admin/partials/_remote_search_form.html.erb +2 -2
  172. data/app/views/alchemy/admin/partials/_search_form.html.erb +3 -3
  173. data/app/views/alchemy/admin/pictures/_archive.html.erb +19 -17
  174. data/app/views/alchemy/admin/pictures/_archive_overlay.html.erb +1 -1
  175. data/app/views/alchemy/admin/pictures/_filter_and_size_bar.html.erb +13 -13
  176. data/app/views/alchemy/admin/pictures/_filter_bar.html.erb +2 -3
  177. data/app/views/alchemy/admin/pictures/_form.html.erb +3 -3
  178. data/app/views/alchemy/admin/pictures/_overlay_picture_list.html.erb +2 -3
  179. data/app/views/alchemy/admin/pictures/_picture.html.erb +7 -7
  180. data/app/views/alchemy/admin/pictures/_tag_list.html.erb +3 -3
  181. data/app/views/alchemy/admin/pictures/edit_multiple.html.erb +6 -7
  182. data/app/views/alchemy/admin/pictures/index.html.erb +12 -12
  183. data/app/views/alchemy/admin/pictures/index.js.erb +0 -1
  184. data/app/views/alchemy/admin/pictures/show.html.erb +9 -9
  185. data/app/views/alchemy/admin/resources/_filter_bar.html.erb +2 -3
  186. data/app/views/alchemy/admin/resources/_form.html.erb +10 -2
  187. data/app/views/alchemy/admin/resources/_resource.html.erb +9 -14
  188. data/app/views/alchemy/admin/resources/_table.html.erb +1 -1
  189. data/app/views/alchemy/admin/resources/_tag_list.html.erb +4 -4
  190. data/app/views/alchemy/admin/resources/index.html.erb +2 -3
  191. data/app/views/alchemy/admin/sites/index.html.erb +1 -1
  192. data/app/views/alchemy/admin/tags/_tag.html.erb +7 -11
  193. data/app/views/alchemy/admin/tags/index.html.erb +4 -4
  194. data/app/views/alchemy/admin/trash/index.html.erb +2 -3
  195. data/app/views/alchemy/admin/uploader/_button.html.erb +1 -2
  196. data/app/views/alchemy/base/500.html.erb +1 -1
  197. data/app/views/alchemy/base/permission_denied.js.erb +1 -1
  198. data/app/views/alchemy/base/redirect.js.erb +1 -2
  199. data/app/views/alchemy/elements/_editor_not_found.html.erb +2 -3
  200. data/app/views/alchemy/essences/_essence_date_editor.html.erb +1 -1
  201. data/app/views/alchemy/essences/_essence_file_editor.html.erb +7 -11
  202. data/app/views/alchemy/essences/_essence_picture_editor.html.erb +9 -7
  203. data/app/views/alchemy/essences/shared/_essence_picture_tools.html.erb +1 -1
  204. data/app/views/alchemy/pages/_meta_data.html.erb +1 -1
  205. data/app/views/kaminari/alchemy/_first_page.html.erb +7 -3
  206. data/app/views/kaminari/alchemy/_gap.html.erb +1 -1
  207. data/app/views/kaminari/alchemy/_last_page.html.erb +7 -3
  208. data/app/views/kaminari/alchemy/_next_page.html.erb +4 -2
  209. data/app/views/kaminari/alchemy/_page.html.erb +1 -1
  210. data/app/views/kaminari/alchemy/_prev_page.html.erb +4 -2
  211. data/app/views/layouts/alchemy/admin.html.erb +8 -6
  212. data/bin/rails +2 -2
  213. data/bin/rspec +1 -1
  214. data/config/alchemy/config.yml +0 -2
  215. data/config/alchemy/modules.yml +5 -5
  216. data/config/initializers/simple_form.rb +45 -8
  217. data/config/locales/alchemy.en.yml +66 -179
  218. data/config/routes.rb +1 -1
  219. data/db/migrate/20180226123013_alchemy_four_point_zero.rb +392 -0
  220. data/db/migrate/20180227224537_migrate_tags_to_gutentag.rb +41 -0
  221. data/lib/alchemy/config.rb +0 -2
  222. data/lib/alchemy/engine.rb +5 -9
  223. data/lib/alchemy/essence.rb +6 -6
  224. data/lib/alchemy/filetypes.rb +13 -1
  225. data/lib/alchemy/forms/builder.rb +5 -3
  226. data/lib/alchemy/i18n.rb +8 -6
  227. data/lib/alchemy/modules.rb +1 -1
  228. data/lib/alchemy/name_conversions.rb +0 -2
  229. data/lib/alchemy/page_layout.rb +3 -2
  230. data/lib/alchemy/paths.rb +5 -5
  231. data/lib/alchemy/resource.rb +9 -9
  232. data/lib/alchemy/resources_helper.rb +11 -15
  233. data/lib/alchemy/routing_constraints.rb +2 -2
  234. data/lib/alchemy/shell.rb +0 -1
  235. data/lib/alchemy/taggable.rb +40 -0
  236. data/lib/alchemy/tasks/tidy.rb +1 -9
  237. data/lib/alchemy/test_support/factories/content_factory.rb +10 -0
  238. data/lib/alchemy/test_support/factories/element_factory.rb +5 -0
  239. data/lib/alchemy/test_support/shared_contexts.rb +1 -1
  240. data/lib/alchemy/tinymce.rb +2 -2
  241. data/lib/alchemy/upgrader/four_point_one.rb +42 -0
  242. data/lib/alchemy/upgrader/tasks/harden_acts_as_taggable_on_migrations.rb +27 -0
  243. data/lib/alchemy/version.rb +1 -1
  244. data/lib/alchemy_cms.rb +2 -3
  245. data/lib/rails/generators/alchemy/elements/elements_generator.rb +2 -2
  246. data/lib/rails/generators/alchemy/essence/essence_generator.rb +1 -1
  247. data/lib/rails/generators/alchemy/install/install_generator.rb +4 -8
  248. data/lib/rails/generators/alchemy/module/module_generator.rb +1 -1
  249. data/lib/rails/generators/alchemy/page_layouts/page_layouts_generator.rb +2 -2
  250. data/lib/rails/generators/alchemy/site_layouts/site_layouts_generator.rb +2 -2
  251. data/lib/rails/generators/alchemy/views/views_generator.rb +1 -1
  252. data/lib/tasks/alchemy/db.rake +2 -1
  253. data/lib/tasks/alchemy/tidy.rake +0 -6
  254. data/lib/tasks/alchemy/upgrade.rake +11 -144
  255. data/vendor/assets/fonts/fa-regular-400.eot +0 -0
  256. data/vendor/assets/fonts/fa-regular-400.svg +363 -0
  257. data/vendor/assets/fonts/fa-regular-400.ttf +0 -0
  258. data/vendor/assets/fonts/fa-regular-400.woff +0 -0
  259. data/vendor/assets/fonts/fa-regular-400.woff2 +0 -0
  260. data/vendor/assets/fonts/fa-solid-900.eot +0 -0
  261. data/vendor/assets/fonts/fa-solid-900.svg +1413 -0
  262. data/vendor/assets/fonts/fa-solid-900.ttf +0 -0
  263. data/vendor/assets/fonts/fa-solid-900.woff +0 -0
  264. data/vendor/assets/fonts/fa-solid-900.woff2 +0 -0
  265. data/vendor/assets/javascripts/tinymce/license.txt +6 -6
  266. data/vendor/assets/javascripts/tinymce/tinymce.min.js +2 -15
  267. data/vendor/assets/stylesheets/fontawesome/_animated.scss +20 -0
  268. data/vendor/assets/stylesheets/fontawesome/_bordered-pulled.scss +20 -0
  269. data/vendor/assets/stylesheets/fontawesome/_core.scss +16 -0
  270. data/vendor/assets/stylesheets/fontawesome/_fixed-width.scss +6 -0
  271. data/vendor/assets/stylesheets/fontawesome/_icons.scss +792 -0
  272. data/vendor/assets/stylesheets/fontawesome/_larger.scss +23 -0
  273. data/vendor/assets/stylesheets/fontawesome/_list.scss +18 -0
  274. data/vendor/assets/stylesheets/fontawesome/_mixins.scss +57 -0
  275. data/vendor/assets/stylesheets/fontawesome/_rotated-flipped.scss +23 -0
  276. data/vendor/assets/stylesheets/fontawesome/_screen-reader.scss +5 -0
  277. data/vendor/assets/stylesheets/fontawesome/_stacked.scss +31 -0
  278. data/vendor/assets/stylesheets/fontawesome/_variables.scss +805 -0
  279. data/vendor/assets/stylesheets/fontawesome/fa-regular.scss +22 -0
  280. data/vendor/assets/stylesheets/fontawesome/fa-solid.scss +23 -0
  281. data/vendor/assets/stylesheets/fontawesome/fontawesome.scss +16 -0
  282. metadata +77 -112
  283. data/app/assets/fonts/alchemy/icons.eot +0 -0
  284. data/app/assets/fonts/alchemy/icons.svg +0 -33
  285. data/app/assets/fonts/alchemy/icons.ttf +0 -0
  286. data/app/assets/fonts/alchemy/icons.woff +0 -0
  287. data/app/assets/images/alchemy/icons.png +0 -0
  288. data/app/assets/images/alchemy/ui-icons_666666_256x240.png +0 -0
  289. data/app/assets/images/sassy-ie-overlay.png +0 -0
  290. data/app/assets/javascripts/alchemy/alchemy.jquery_loader.js +0 -42
  291. data/app/assets/stylesheets/alchemy/icon-font.scss +0 -75
  292. data/app/assets/stylesheets/alchemy/modules.scss +0 -27
  293. data/app/models/alchemy.rb +0 -7
  294. data/app/views/alchemy/admin/contents/destroy.js.erb +0 -4
  295. data/app/views/alchemy/admin/pictures/flush.js.erb +0 -2
  296. data/config/locales/alchemy.de.yml +0 -932
  297. data/config/locales/alchemy.es.yml +0 -960
  298. data/config/locales/alchemy.fr.yml +0 -938
  299. data/config/locales/alchemy.it.yml +0 -938
  300. data/config/locales/alchemy.nl.yml +0 -918
  301. data/config/locales/alchemy.ru.yml +0 -830
  302. data/config/locales/simple_form.de.yml +0 -26
  303. data/config/locales/simple_form.en.yml +0 -25
  304. data/config/locales/simple_form.es.yml +0 -6
  305. data/config/locales/simple_form.fr.yml +0 -26
  306. data/config/locales/simple_form.it.yml +0 -25
  307. data/config/locales/simple_form.nl.yml +0 -25
  308. data/config/locales/simple_form.ru.yml +0 -25
  309. data/db/migrate/20130827094554_alchemy_two_point_six.rb +0 -378
  310. data/db/migrate/20130828121054_remove_do_not_index_from_alchemy_essence_texts.rb +0 -5
  311. data/db/migrate/20130828121120_remove_do_not_index_from_alchemy_essence_richtexts.rb +0 -5
  312. data/db/migrate/20130918201742_add_published_at_to_alchemy_pages.rb +0 -5
  313. data/db/migrate/20150608204610_add_parent_element_id_to_alchemy_elements.rb +0 -6
  314. data/db/migrate/20150729151825_add_link_text_to_alchemy_essence_files.rb +0 -5
  315. data/db/migrate/20150906195818_add_locale_to_alchemy_languages.rb +0 -7
  316. data/db/migrate/20160108174834_add_timebased_publishing_columns_to_pages.rb +0 -32
  317. data/db/migrate/20160422195310_add_image_file_format_to_alchemy_pictures.rb +0 -9
  318. data/db/migrate/20160617224938_change_alchemy_pages_locked_to_locked_at.rb +0 -22
  319. data/db/migrate/20160912223112_add_index_to_alchemy_pages_rgt.rb +0 -9
  320. data/db/migrate/20160927205604_add_foreign_key_indices_and_null_constraints.rb +0 -20
  321. data/db/migrate/20160928080104_add_foreign_keys.rb +0 -27
  322. data/lib/alchemy/touching.rb +0 -42
  323. data/lib/alchemy/upgrader/tasks/available_contents_upgrader.rb +0 -161
  324. data/lib/alchemy/upgrader/tasks/install_asset_manifests.rb +0 -15
  325. data/lib/alchemy/upgrader/tasks/install_dragonfly_config.rb +0 -14
  326. data/lib/alchemy/upgrader/tasks/nestable_elements_migration.rb +0 -71
  327. data/lib/alchemy/upgrader/tasks/three_point_two_task.rb +0 -31
  328. data/lib/alchemy/upgrader/three_point_five.rb +0 -32
  329. data/lib/alchemy/upgrader/three_point_four.rb +0 -52
  330. data/lib/alchemy/upgrader/three_point_one.rb +0 -54
  331. data/lib/alchemy/upgrader/three_point_three.rb +0 -50
  332. data/lib/alchemy/upgrader/three_point_two.rb +0 -40
  333. data/lib/alchemy/upgrader/three_point_zero.rb +0 -92
  334. data/vendor/assets/javascripts/jquery_plugins/jquery.floatThead.min.js +0 -3
  335. data/vendor/assets/javascripts/tinymce/langs/de.js +0 -219
  336. data/vendor/assets/javascripts/tinymce/langs/es.js +0 -219
  337. data/vendor/assets/javascripts/tinymce/langs/fr.js +0 -219
  338. data/vendor/assets/javascripts/tinymce/langs/it.js +0 -219
  339. data/vendor/assets/javascripts/tinymce/langs/nl.js +0 -219
  340. data/vendor/assets/javascripts/tinymce/langs/ru.js +0 -219
@@ -1,12 +1,12 @@
1
1
  .pagination {
2
2
  background: $light_gray;
3
- color: $text-color;
4
3
  position: fixed;
5
4
  bottom: 0;
6
5
  right: 0;
7
6
  width: 100%;
8
7
  left: 0px;
9
8
  height: 52px;
9
+ line-height: 35px;
10
10
  padding: 2*$default-padding;
11
11
  padding-left: $main-menu-width + 10px;
12
12
  text-align: left;
@@ -15,8 +15,9 @@
15
15
 
16
16
  a, span, em {
17
17
  font-size: $default-font-size;
18
- line-height: 25px;
19
- padding: $default-padding;
18
+ font-weight: bold;
19
+ color: $icon-color;
20
+ padding: $default-padding 2*$default-padding;
20
21
  }
21
22
 
22
23
  a:hover {
@@ -27,14 +28,14 @@
27
28
 
28
29
  span a { padding: 0 }
29
30
 
30
- .button { padding: 0px 8px }
31
+ .page { padding: 0px 8px }
31
32
 
32
33
  .current {
33
- color: $text-color;
34
- border: $default-border;
34
+ color: $blue;
35
+ border: 1px solid $blue;
35
36
  text-shadow: 0px 1px 1px #fff;
36
37
  cursor: default;
37
- @extend %rounded-border;
38
+ border-radius: $default-border-radius;
38
39
  padding: 5px 8px;
39
40
  }
40
41
 
@@ -55,6 +56,10 @@
55
56
  background: transparent;
56
57
  cursor: default;
57
58
  }
59
+
60
+ .icon {
61
+ color: inherit;
62
+ }
58
63
  }
59
64
 
60
65
  #assign_image_list .pagination, #assign_file_list .pagination {
@@ -0,0 +1,20 @@
1
+ #alchemy_preview_window {
2
+ position: absolute;
3
+ left: $main-menu-width;
4
+ top: 75px;
5
+ width: calc(100vw - #{$main-menu-width - $default-border-width});
6
+ height: calc(100vh - #{$top-menu-height});
7
+ border: 0 none;
8
+ background: #fff;
9
+ border-right: $default-border;
10
+ transition: 200ms ease-in-out;
11
+
12
+ .collapsed-menu & {
13
+ left: $collapsed-main-menu-width;
14
+ width: calc(100vw - #{$collapsed-main-menu-width - $default-border-width});
15
+ }
16
+
17
+ .collapsed-menu.elements-window-visible & {
18
+ width: calc(100vw - #{$collapsed-main-menu-width - $default-border-width} - #{$elements-window-width});
19
+ }
20
+ }
@@ -29,7 +29,7 @@
29
29
  position: absolute;
30
30
  right: 2*$default-padding;
31
31
  top: 2*$default-padding;
32
- height: $default-form-field-height;
32
+ height: $form-field-height;
33
33
  line-height: 25px;
34
34
  background-color: $medium-gray;
35
35
  margin: -$default-margin -2 * $default-margin;
@@ -4,11 +4,13 @@
4
4
  height: 29px;
5
5
  }
6
6
 
7
- .search_field .icon,
8
- .js_filter_field_box .icon {
9
- position: absolute;
10
- left: 8px;
11
- top: 8px;
7
+ .search_field,
8
+ .js_filter_field_box {
9
+ .fa-search {
10
+ position: absolute;
11
+ left: 8px;
12
+ top: 9px;
13
+ }
12
14
  }
13
15
 
14
16
  .js_filter_field_box {
@@ -26,7 +28,7 @@
26
28
  }
27
29
 
28
30
  label {
29
- font-size: 10px;
31
+ font-size: $small-font-size;
30
32
  display: block;
31
33
  text-align: center;
32
34
  padding-top: 3px;
@@ -36,14 +38,13 @@
36
38
  .search_field_clear,
37
39
  .js_filter_field_clear {
38
40
  display: none;
39
- width: 16px;
40
- height: 16px;
41
- line-height: 16px;
42
- @extend .icon-cross;
43
41
  position: absolute;
44
- right: 8px;
45
42
  top: 7px;
46
- text-decoration: none !important;
43
+ right: 8px;
44
+ width: 16px;
45
+ height: 16px;
46
+ line-height: 14px;
47
+ text-align: center;
47
48
  }
48
49
 
49
50
  #tags_tag_list {
@@ -64,7 +65,7 @@
64
65
  padding: 4px;
65
66
  margin: 0 0 4px 0;
66
67
  position: relative;
67
- @extend %rounded-border;
68
+ border-radius: $default-border-radius;
68
69
 
69
70
  &.odd { background-color: #eaf3f9 }
70
71
 
@@ -121,8 +122,10 @@
121
122
  width: 150px;
122
123
  height: inherit;
123
124
  border: none;
124
- background-color: rgba(255, 255, 255, 0.5);
125
- transition: width $transition-duration ease-in-out;
125
+ background-color: transparentize($form-field-background-color, 0.25);
126
+ transition:
127
+ width $transition-duration ease-in-out,
128
+ background-color $transition-duration linear;
126
129
  border-radius: 0;
127
130
  padding: 8px 16px 8px 32px;
128
131
  margin: 0;
@@ -132,6 +135,7 @@
132
135
 
133
136
  &:focus {
134
137
  width: 250px;
138
+ background-color: $form-field-background-color;
135
139
  }
136
140
  }
137
141
 
@@ -1,54 +1,68 @@
1
+ $medium-select-box-width: 90px;
2
+
1
3
  select {
2
- @include button-defaults;
3
- height: 29px;
4
+ @include button-defaults(
5
+ $background-color: $form-field-background-color,
6
+ $hover-color: $form-field-background-color,
7
+ $hover-border-color: darken($default-border-color, 10%),
8
+ $padding: 0 2*$default-padding,
9
+ $border: 1px solid $default-border-color,
10
+ $color: $text-color,
11
+ $margin: 0);
12
+ height: $form-field-height;
4
13
  padding: 0.4em 0.6em;
5
14
  max-width: 100%;
6
15
  width: auto;
16
+ font-weight: normal;
17
+ vertical-align: middle;
18
+
19
+ &.alchemy_selectbox.medium {
20
+ width: $medium-select-box-width;
21
+ }
7
22
  }
8
23
 
9
24
  .select2-container {
10
-
11
25
  &.alchemy_selectbox {
12
-
13
- text-shadow: #FFF 0px 1px 0px;
14
-
15
26
  .select2-choice {
16
- height: $default-form-field-height;
17
- line-height: $default-form-field-height - 2;
18
- @include button-defaults($padding: 0 2*$default-padding, $margin: 0);
27
+ height: $form-field-height;
28
+ @include button-defaults(
29
+ $background-color: $form-field-background-color,
30
+ $hover-color: $form-field-background-color,
31
+ $hover-border-color: darken($default-border-color, 10%),
32
+ $padding: $form-field-padding,
33
+ $border: 1px solid $default-border-color,
34
+ $color: $text-color,
35
+ $margin: 0);
36
+ background-image: none;
19
37
  display: block;
20
38
  font-weight: normal;
21
39
  text-align: left;
22
40
 
23
41
  .select2-arrow {
24
- top: 2px;
25
- width: 20px;
26
- height: 23px;
27
- line-height: 23px;
42
+ top: 0;
43
+ width: $form-field-height;
44
+ height: $form-field-height;
28
45
  background: transparent;
29
- border-left: 1px solid #CACACA;
46
+ border-left: 0 none;
30
47
 
31
48
  b {
32
- @extend .icon-menu;
49
+ @extend .fas;
33
50
  background-image: none;
51
+ opacity: $addon-icon-opacity;
34
52
 
35
53
  &:before {
36
- position: relative;
37
- top: 5px;
38
- left: 1px;
54
+ content: fa-content($fa-var-caret-down);
55
+ position: absolute;
56
+ top: 50%;
57
+ left: 50%;
58
+ transform: translate(-50%, -50%);
39
59
  }
40
60
  }
41
61
  }
42
62
  }
43
63
 
44
- &.select2-dropdown-open {
45
- .select2-choice .select2-arrow b {
46
- background-position: -17px 0px;
47
- }
48
- }
49
-
50
64
  &.medium {
51
- width: 90px;
65
+ width: $medium-select-box-width;
52
66
  }
53
67
 
54
68
  &.select2-container-active {
@@ -108,14 +122,24 @@ select {
108
122
  background-image: none;
109
123
  border: 0 none;
110
124
  box-shadow: none;
125
+ color: $text-color;
111
126
  }
112
127
 
113
128
  .select2-search-choice-close {
129
+ @extend .fas;
130
+ @extend .fa-fw;
114
131
  left: auto;
115
- right: 4px;
116
- top: 6px;
132
+ right: 5px;
133
+ top: 5px;
117
134
  background: none;
118
- @extend .icon-cross;
135
+ font-size: $small-font-size;
136
+ text-decoration: none;
137
+
138
+ &:before {
139
+ @extend .fa-xs;
140
+ content: fa-content($fa-var-times);
141
+ opacity: $addon-icon-opacity;
142
+ }
119
143
 
120
144
  &:hover {
121
145
  color: $text-color;
@@ -134,10 +158,17 @@ select {
134
158
  }
135
159
  }
136
160
 
137
- .tag_list {
161
+ .tag_list, .autocomplete_tag_list {
138
162
  .select2-container.select2-container-multi {
139
163
  .select2-search-choice {
140
- @include tag-base($margin: 4px, $padding: 4px 24px);
164
+ padding: 0;
165
+
166
+ div {
167
+ @include tag-base(
168
+ $padding: $default-padding 6*$default-padding $default-padding 3*$default-padding,
169
+ $margin: 0
170
+ );
171
+ }
141
172
  }
142
173
  }
143
174
  }
@@ -174,7 +205,7 @@ select {
174
205
 
175
206
  &.select2-highlighted {
176
207
  background: $button-hover-bg-color;
177
- color: $text-color;
208
+ color: $white;
178
209
  }
179
210
 
180
211
  &.select2-result-with-children {
@@ -198,7 +229,7 @@ select {
198
229
 
199
230
  &.select2-drop-active {
200
231
  border-radius: $default-border-radius;
201
- border: 1px solid $blue;
232
+ border: $default-border;
202
233
  }
203
234
  }
204
235
 
@@ -24,38 +24,22 @@
24
24
  }
25
25
 
26
26
  .sitemap_pagename_link {
27
- background-color: #fff;
28
- color: black;
29
- display: block;
30
- padding: 0 3*$default-padding;
27
+ display: inline-block;
28
+ padding: 0 10px;
29
+ margin: 2px;
31
30
  text-decoration: none;
32
- transition: background-color, 400ms;
33
31
 
34
32
  &.inactive {
35
33
  color: #656565;
36
34
  }
37
-
38
- :hover {
39
- text-decoration: underline;
40
-
41
- &:after {
42
- content: '';
43
- width: 16px;
44
- height: 16px;
45
- float: left;
46
- margin-right: $default-margin;
47
- background: image-url('alchemy/icons.png') -160px -168px;
48
- margin-top: $default-margin;
49
- }
50
- }
51
35
  }
52
36
 
53
37
  .redirect_url {
54
38
  float: right;
55
39
  text-align: right;
56
- background-color: #fff0c4;
40
+ background-color: $sitemap-info-background-color;
57
41
  line-height: $sitemap-line-height;
58
- font-size: 10px;
42
+ font-size: $small-font-size;
59
43
  padding: 0 2*$default-padding;
60
44
  max-width: 45%;
61
45
  white-space: nowrap;
@@ -63,12 +47,28 @@
63
47
  text-overflow: ellipsis;
64
48
  }
65
49
 
66
- #page_selector_container .sitemap_pagename_link:hover {
67
- text-decoration: none;
68
- }
50
+ #page_selector_container {
51
+ height: 230px;
52
+ background-color: $light-gray;
53
+ margin-bottom: 4px;
54
+ border-width: $form-field-border-width;
55
+ border-style: $form-field-border-style;
56
+ border-color: $form-field-border-color;
57
+ overflow: auto;
58
+ padding: 4px 0 0 4px;
59
+ border-radius: $default-border-radius;
69
60
 
70
- #page_selector_container .sitemap_pagename_link:hover:after {
71
- display: none;
61
+ .sitemap_pagename_link:hover {
62
+ text-decoration: none;
63
+
64
+ &:after {
65
+ display: none;
66
+ }
67
+ }
68
+
69
+ .sitemap_right_tools {
70
+ width: 24px;
71
+ }
72
72
  }
73
73
 
74
74
  .sitemap_line_spacer {
@@ -81,29 +81,40 @@
81
81
  height: $sitemap-line-height;
82
82
  margin: 3*$default-margin 0;
83
83
  position: relative;
84
+ transition: background-color 250ms;
84
85
 
85
- &.highlight .sitemap_pagename_link {
86
- background-color: #FFFBA5;
86
+ &.highlight {
87
+ background-color: $sitemap-highlight-color;
87
88
  }
88
89
 
89
90
  &.no-match .sitemap_pagename_link {
90
91
  color: $medium-gray;
91
92
  }
92
93
 
93
- &:hover .sitemap_pagename_link {
94
- background-color: $light_yellow;
94
+ &:hover {
95
+ background-color: $sitemap-page-hover-color;
96
+ border-radius: $default-border-radius;
97
+ }
98
+ }
99
+
100
+ .sitemap_sitename {
101
+ @include border-left-radius($default-border-radius);
102
+ line-height: $sitemap-line-height - 4;
103
+ overflow: hidden;
104
+ background-color: $sitemap-page-background-color;
105
+
106
+ &.without-status {
107
+ @include border-right-radius($default-border-radius);
95
108
  }
96
109
  }
97
110
 
98
111
  .sitemap_left_images {
99
- @extend .left-rounded-border;
100
112
  position: relative;
101
113
  width: 32px;
102
- height: $sitemap-line-height;
103
- line-height: $sitemap-line-height - 2px;
114
+ line-height: $sitemap-line-height;
104
115
  float: left;
105
116
  padding: 0 2*$default-padding;
106
- background-color: rgba(#fff, .75);
117
+ text-align: center;
107
118
  }
108
119
 
109
120
  .sitemap_right_tools {
@@ -137,19 +148,25 @@
137
148
  }
138
149
  }
139
150
 
140
- #page_selector_container .sitemap_right_tools {
141
- width: 24px;
142
- }
151
+ #sitemap {
152
+ padding: 0 0 104px 0;
153
+
154
+ &.sorting {
155
+ padding-top: 100px;
156
+
157
+ .page_icon { cursor: move }
158
+ }
143
159
 
144
- ul#sitemap {
145
160
  .page_folder {
146
- @extend .icon;
147
161
  position: absolute;
148
162
  left: -23px;
149
- top: 8px;
163
+ top: 0;
164
+ }
150
165
 
151
- &.collapsed { @extend .icon.expand.small }
152
- &.folded { @extend .icon.collapse.small }
166
+ .placeholder {
167
+ background-color: $medium-gray;
168
+ margin-bottom: 0px;
169
+ margin-left: 22px;
153
170
  }
154
171
 
155
172
  ul {
@@ -160,7 +177,7 @@ ul#sitemap {
160
177
  li {
161
178
  padding-left: 0;
162
179
 
163
- .selected_page a {
180
+ .selected_page {
164
181
  background-color: $linked-color;
165
182
  color: $dark-gray;
166
183
  }
@@ -172,23 +189,9 @@ ul#sitemap {
172
189
  }
173
190
  }
174
191
 
175
- ul#sitemap li .sitemap_toolrow,
176
- ul.list li .sitemap_toolrow {
177
- margin: 0;
178
- overflow: auto;
179
- padding: $default-padding 0;
180
- }
181
-
182
- ul#sitemap .sitemap_sitename,
183
- ul.list .sitemap_sitename {
184
- height: $sitemap-line-height;
185
- line-height: $sitemap-line-height;
186
- overflow: hidden;
187
- }
188
-
189
192
  .page_infos {
190
193
  @extend .right-rounded-border;
191
- background-color: rgba(#fff, .75);
194
+ background-color: $sitemap-page-background-color;
192
195
  border-left: 1px solid $light-gray;
193
196
  float: right;
194
197
  height: $sitemap-line-height;
@@ -200,79 +203,12 @@ ul.list .sitemap_sitename {
200
203
  }
201
204
  }
202
205
 
203
- #header .page_status_and_name .page_status {
206
+ .page_status_and_name .page_status {
204
207
  margin-left: 2px;
205
- line-height: 1;
206
- vertical-align: text-bottom;
207
208
  }
208
209
 
209
210
  .page_status {
210
211
  display: inline-block;
211
-
212
- .icon {
213
- vertical-align: text-bottom;
214
-
215
- &.restricted {
216
- background-position: -256px -39px;
217
- }
218
-
219
- &.not_restricted {
220
- background-position: -288px -39px;
221
- opacity: 0.3;
222
- }
223
-
224
- &.visible {
225
- background-position: -128px -39px;
226
- }
227
-
228
- &.not_visible {
229
- background-position: -160px -39px;
230
- opacity: 0.3;
231
- }
232
-
233
- &.public {
234
- background-position: -192px -39px;
235
- }
236
-
237
- &.not_public {
238
- background-position: -224px -39px;
239
- opacity: 0.3;
240
- }
241
- }
242
- }
243
-
244
- #sitemap.list {
245
-
246
- &.sorting {
247
- padding-top: 100px;
248
-
249
- .page.icon { cursor: move }
250
- }
251
-
252
- .locked .page.icon {
253
- background-position: -32px -40px;
254
- }
255
-
256
- .page.icon.not-allowed {
257
- &:after {
258
- content: '';
259
- position: absolute;
260
- bottom: -2px;
261
- right: -1px;
262
- width: 8px;
263
- height: 8px;
264
- background: image-url('alchemy/icons.png') -5px -77px;
265
- }
266
- }
267
-
268
- .page_status .icon {
269
- vertical-align: middle;
270
- }
271
- }
272
-
273
- a.folder_link {
274
- text-decoration: none;
275
- outline: none;
276
212
  }
277
213
 
278
214
  #create_language_tree_form {
@@ -282,7 +218,7 @@ a.folder_link {
282
218
  padding: 4*$default-padding;
283
219
  border: $default-border;
284
220
  background: $medium-gray;
285
- @extend %rounded-border;
221
+ border-radius: $default-border-radius;
286
222
  }
287
223
 
288
224
  #sitemap_heading {
@@ -307,30 +243,16 @@ a.folder_link {
307
243
  margin-left: 2*$default-margin;
308
244
  }
309
245
 
310
- .alchemy-dialog ul.list#sitemap {
311
- margin: 0;
312
- padding: 0 8px 8px 0;
313
-
314
- .page.icon { cursor: default }
315
-
316
- li li.selectboxit-option {
317
- padding-left: 8px;
318
- padding-right: 8px;
246
+ .alchemy-dialog {
247
+ #sitemap-wrapper {
248
+ min-height: 0;
319
249
  }
320
250
 
321
- .selectboxit-options {
322
- right: 0;
323
- }
251
+ #sitemap {
252
+ margin: 0;
253
+ padding: 0 24px 8px 8px;
324
254
 
325
- .close_elements_from_page_selector {
326
- position: absolute;
327
- right: $default-padding;
328
- top: 12px;
329
- font-size: 16px;
330
- width: 16px;
331
- height: 16px;
332
- cursor: pointer;
333
- @extend .icon-cross;
255
+ .page_icon { cursor: default }
334
256
  }
335
257
  }
336
258