alchemy_cms 3.4.2 → 3.5.0.rc1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (247) hide show
  1. checksums.yaml +4 -4
  2. data/.codeclimate.yml +9 -3
  3. data/.teatro.yml +1 -0
  4. data/.travis.yml +14 -17
  5. data/CHANGELOG.md +44 -6
  6. data/Gemfile +7 -4
  7. data/README.md +60 -10
  8. data/Rakefile +1 -1
  9. data/alchemy_cms.gemspec +5 -8
  10. data/app/assets/javascripts/alchemy/admin.js +2 -0
  11. data/app/assets/javascripts/alchemy/alchemy.dialog.js.coffee +1 -0
  12. data/app/assets/javascripts/alchemy/alchemy.gui.js.coffee +1 -0
  13. data/app/assets/javascripts/alchemy/alchemy.hotkeys.js.coffee +1 -1
  14. data/app/assets/javascripts/alchemy/alchemy.initializer.js.coffee +9 -7
  15. data/app/assets/javascripts/alchemy/alchemy.link_dialog.js.coffee +1 -0
  16. data/app/assets/javascripts/alchemy/alchemy.preview_window.js.coffee +11 -7
  17. data/app/assets/javascripts/alchemy/alchemy.sitemap.js.coffee +1 -1
  18. data/app/assets/javascripts/alchemy/alchemy.tinymce.js.coffee +8 -3
  19. data/app/assets/javascripts/alchemy/alchemy.tooltips.coffee +10 -0
  20. data/app/assets/javascripts/alchemy/alchemy.uploader.js.coffee +104 -73
  21. data/app/assets/stylesheets/alchemy/_defaults.scss +1 -4
  22. data/app/assets/stylesheets/alchemy/_extends.scss +13 -35
  23. data/app/assets/stylesheets/alchemy/_mixins.scss +82 -18
  24. data/app/assets/stylesheets/alchemy/_variables.scss +21 -8
  25. data/app/assets/stylesheets/alchemy/admin.scss +4 -0
  26. data/app/assets/stylesheets/alchemy/archive.scss +8 -12
  27. data/app/assets/stylesheets/alchemy/attachments.scss +39 -0
  28. data/app/assets/stylesheets/alchemy/base.scss +26 -15
  29. data/app/assets/stylesheets/alchemy/buttons.scss +59 -31
  30. data/app/assets/stylesheets/alchemy/dashboard.scss +3 -3
  31. data/app/assets/stylesheets/alchemy/dialogs.scss +10 -8
  32. data/app/assets/stylesheets/alchemy/elements.scss +65 -41
  33. data/app/assets/stylesheets/alchemy/errors.scss +7 -0
  34. data/app/assets/stylesheets/alchemy/flash.scss +1 -1
  35. data/app/assets/stylesheets/alchemy/form_fields.scss +0 -37
  36. data/app/assets/stylesheets/alchemy/forms.scss +18 -27
  37. data/app/assets/stylesheets/alchemy/frame.scss +104 -204
  38. data/app/assets/stylesheets/alchemy/hints.scss +62 -0
  39. data/app/assets/stylesheets/alchemy/icon-font.scss +2 -1
  40. data/app/assets/stylesheets/alchemy/icons.scss +9 -4
  41. data/app/assets/stylesheets/alchemy/image_library.scss +6 -6
  42. data/app/assets/stylesheets/alchemy/jquery-ui.scss +6 -4
  43. data/app/assets/stylesheets/alchemy/lists.scss +0 -1
  44. data/app/assets/stylesheets/alchemy/menubar.scss +3 -4
  45. data/app/assets/stylesheets/alchemy/modules.scss +0 -6
  46. data/app/assets/stylesheets/alchemy/navigation.scss +242 -0
  47. data/app/assets/stylesheets/alchemy/pagination.scss +3 -3
  48. data/app/assets/stylesheets/alchemy/print.scss +1 -0
  49. data/app/assets/stylesheets/alchemy/resource_info.scss +45 -0
  50. data/app/assets/stylesheets/alchemy/search.scss +72 -1
  51. data/app/assets/stylesheets/alchemy/selects.scss +38 -44
  52. data/app/assets/stylesheets/alchemy/sitemap.scss +89 -79
  53. data/app/assets/stylesheets/alchemy/tables.scss +6 -10
  54. data/app/assets/stylesheets/alchemy/toolbar.scss +7 -36
  55. data/app/assets/stylesheets/alchemy/upload.scss +12 -3
  56. data/app/assets/stylesheets/tinymce/skins/alchemy/content.min.css.scss +6 -3
  57. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce-small.svg +58 -170
  58. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce-small.ttf +0 -0
  59. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce-small.woff +0 -0
  60. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce.svg +124 -148
  61. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce.ttf +0 -0
  62. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce.woff +0 -0
  63. data/app/assets/stylesheets/tinymce/skins/alchemy/skin.min.css.scss +426 -144
  64. data/app/controllers/alchemy/admin/attachments_controller.rb +24 -16
  65. data/app/controllers/alchemy/admin/clipboard_controller.rb +1 -1
  66. data/app/controllers/alchemy/admin/essence_files_controller.rb +1 -1
  67. data/app/controllers/alchemy/admin/essence_pictures_controller.rb +9 -8
  68. data/app/controllers/alchemy/admin/layoutpages_controller.rb +1 -0
  69. data/app/controllers/alchemy/admin/pages_controller.rb +2 -2
  70. data/app/controllers/alchemy/admin/resources_controller.rb +2 -2
  71. data/app/controllers/alchemy/admin/tags_controller.rb +1 -1
  72. data/app/controllers/alchemy/api/pages_controller.rb +16 -0
  73. data/app/controllers/alchemy/messages_controller.rb +1 -1
  74. data/app/controllers/concerns/alchemy/admin/uploader_responses.rb +2 -2
  75. data/app/helpers/alchemy/admin/attachments_helper.rb +11 -0
  76. data/app/helpers/alchemy/admin/base_helper.rb +37 -4
  77. data/app/helpers/alchemy/admin/contents_helper.rb +11 -4
  78. data/app/helpers/alchemy/admin/elements_helper.rb +0 -19
  79. data/app/helpers/alchemy/admin/essences_helper.rb +7 -30
  80. data/app/helpers/alchemy/admin/navigation_helper.rb +13 -51
  81. data/app/helpers/alchemy/admin/pages_helper.rb +21 -16
  82. data/app/helpers/alchemy/admin/pictures_helper.rb +9 -0
  83. data/app/helpers/alchemy/deprecated_pages_helper.rb +54 -0
  84. data/app/helpers/alchemy/essences_helper.rb +1 -1
  85. data/app/helpers/alchemy/pages_helper.rb +8 -109
  86. data/app/helpers/alchemy/url_helper.rb +8 -13
  87. data/app/models/alchemy/attachment.rb +7 -4
  88. data/app/models/alchemy/cell.rb +2 -2
  89. data/app/models/alchemy/content.rb +2 -2
  90. data/app/models/alchemy/content/factory.rb +12 -9
  91. data/app/models/alchemy/element.rb +6 -3
  92. data/app/models/alchemy/essence_file.rb +1 -1
  93. data/app/models/alchemy/essence_picture.rb +37 -47
  94. data/app/models/alchemy/essence_picture_view.rb +8 -1
  95. data/app/models/alchemy/folded_page.rb +3 -2
  96. data/app/models/alchemy/legacy_page_url.rb +3 -3
  97. data/app/models/alchemy/page.rb +50 -5
  98. data/app/models/alchemy/page/fixed_attributes.rb +63 -0
  99. data/app/models/alchemy/page/page_elements.rb +10 -7
  100. data/app/models/alchemy/page/page_natures.rb +19 -0
  101. data/app/models/alchemy/picture.rb +1 -0
  102. data/app/models/alchemy/picture/transformations.rb +1 -1
  103. data/app/models/alchemy/picture/url.rb +82 -0
  104. data/app/serializers/alchemy/page_tree_serializer.rb +29 -8
  105. data/app/views/alchemy/_edit_mode.html.erb +2 -0
  106. data/app/views/alchemy/_menubar.html.erb +1 -1
  107. data/app/views/alchemy/_preview_mode_code.html.erb +6 -0
  108. data/app/views/alchemy/admin/attachments/_archive_overlay.html.erb +1 -1
  109. data/app/views/alchemy/admin/attachments/_attachment.html.erb +25 -5
  110. data/app/views/alchemy/admin/attachments/_replace_button.html.erb +26 -0
  111. data/app/views/alchemy/admin/attachments/index.html.erb +1 -1
  112. data/app/views/alchemy/admin/attachments/show.html.erb +52 -0
  113. data/app/views/alchemy/admin/elements/_element_header.html.erb +6 -3
  114. data/app/views/alchemy/admin/elements/create.js.erb +0 -2
  115. data/app/views/alchemy/admin/elements/trash.js.erb +0 -1
  116. data/app/views/alchemy/admin/elements/update.js.erb +0 -2
  117. data/app/views/alchemy/admin/essence_pictures/crop.html.erb +1 -4
  118. data/app/views/alchemy/admin/essence_pictures/edit.html.erb +1 -1
  119. data/app/views/alchemy/admin/languages/index.html.erb +1 -0
  120. data/app/views/alchemy/admin/layoutpages/_layoutpage.html.erb +26 -27
  121. data/app/views/alchemy/admin/layoutpages/edit.html.erb +1 -1
  122. data/app/views/alchemy/admin/pages/_form.html.erb +13 -40
  123. data/app/views/alchemy/admin/pages/_locked_page.html.erb +1 -1
  124. data/app/views/alchemy/admin/pages/_page.html.erb +119 -61
  125. data/app/views/alchemy/admin/pages/_page_for_links.html.erb +4 -2
  126. data/app/views/alchemy/admin/pages/_page_infos.html.erb +12 -12
  127. data/app/views/alchemy/admin/pages/_page_status.html.erb +1 -1
  128. data/app/views/alchemy/admin/pages/_publication_fields.html.erb +35 -0
  129. data/app/views/alchemy/admin/pages/edit.html.erb +13 -2
  130. data/app/views/alchemy/admin/pages/index.html.erb +3 -8
  131. data/app/views/alchemy/admin/pages/info.html.erb +15 -2
  132. data/app/views/alchemy/admin/pages/sort.js.erb +1 -1
  133. data/app/views/alchemy/admin/pages/update.js.erb +1 -14
  134. data/app/views/alchemy/admin/partials/_main_navigation_entry.html.erb +12 -8
  135. data/app/views/alchemy/admin/partials/_remote_search_form.html.erb +4 -4
  136. data/app/views/alchemy/admin/partials/_search_form.html.erb +1 -1
  137. data/app/views/alchemy/admin/partials/_sub_navigation.html.erb +9 -6
  138. data/app/views/alchemy/admin/pictures/_filter_and_size_bar.html.erb +1 -1
  139. data/app/views/alchemy/admin/pictures/_picture.html.erb +1 -6
  140. data/app/views/alchemy/admin/pictures/_picture_to_assign.html.erb +1 -6
  141. data/app/views/alchemy/admin/pictures/index.html.erb +1 -1
  142. data/app/views/alchemy/admin/pictures/show.html.erb +1 -6
  143. data/app/views/alchemy/admin/uploader/_button.html.erb +4 -4
  144. data/app/views/alchemy/base/500.html.erb +15 -1
  145. data/app/views/alchemy/essences/_essence_boolean_editor.html.erb +13 -15
  146. data/app/views/alchemy/essences/_essence_boolean_view.html.erb +1 -3
  147. data/app/views/alchemy/essences/_essence_date_editor.html.erb +0 -2
  148. data/app/views/alchemy/essences/_essence_date_view.html.erb +0 -2
  149. data/app/views/alchemy/essences/_essence_file_editor.html.erb +2 -7
  150. data/app/views/alchemy/essences/_essence_file_view.html.erb +1 -3
  151. data/app/views/alchemy/essences/_essence_html_editor.html.erb +0 -2
  152. data/app/views/alchemy/essences/_essence_html_view.html.erb +1 -3
  153. data/app/views/alchemy/essences/_essence_link_editor.html.erb +0 -2
  154. data/app/views/alchemy/essences/_essence_link_view.html.erb +0 -2
  155. data/app/views/alchemy/essences/_essence_picture_editor.html.erb +47 -49
  156. data/app/views/alchemy/essences/_essence_picture_view.html.erb +1 -3
  157. data/app/views/alchemy/essences/_essence_richtext_editor.html.erb +0 -2
  158. data/app/views/alchemy/essences/_essence_richtext_view.html.erb +1 -3
  159. data/app/views/alchemy/essences/_essence_select_editor.html.erb +27 -29
  160. data/app/views/alchemy/essences/_essence_select_view.html.erb +1 -3
  161. data/app/views/alchemy/essences/_essence_text_editor.html.erb +17 -19
  162. data/app/views/alchemy/essences/_essence_text_view.html.erb +0 -2
  163. data/app/views/alchemy/pages/_meta_data.html.erb +9 -0
  164. data/app/views/layouts/alchemy/admin.html.erb +9 -11
  165. data/bin/alchemy +1 -2
  166. data/config/alchemy/config.yml +1 -1
  167. data/config/alchemy/modules.yml +0 -16
  168. data/config/initializers/dragonfly.rb +0 -18
  169. data/config/initializers/mini_profiler.rb +6 -0
  170. data/config/locales/alchemy.de.yml +9 -1
  171. data/config/locales/alchemy.en.yml +7 -1
  172. data/config/locales/alchemy.es.yml +6 -0
  173. data/config/locales/alchemy.fr.yml +2 -0
  174. data/config/locales/alchemy.it.yml +3 -1
  175. data/config/locales/alchemy.nl.yml +2 -0
  176. data/config/locales/alchemy.ru.yml +2 -0
  177. data/config/routes.rb +3 -8
  178. data/db/migrate/20160912223112_add_index_to_alchemy_pages_rgt.rb +9 -0
  179. data/db/migrate/20160927205604_add_foreign_key_indices_and_null_constraints.rb +20 -0
  180. data/db/migrate/20160928080104_add_foreign_keys.rb +27 -0
  181. data/lib/alchemy/admin/locale.rb +4 -3
  182. data/lib/alchemy/engine.rb +2 -4
  183. data/lib/alchemy/errors.rb +9 -2
  184. data/lib/alchemy/forms/builder.rb +8 -0
  185. data/lib/alchemy/modules.rb +20 -19
  186. data/lib/alchemy/permissions.rb +15 -4
  187. data/lib/alchemy/resources_helper.rb +4 -2
  188. data/lib/alchemy/sass_support.rb +9 -0
  189. data/lib/alchemy/seeder.rb +89 -1
  190. data/lib/alchemy/test_support/essence_shared_examples.rb +2 -0
  191. data/lib/alchemy/test_support/factories/attachment_factory.rb +1 -1
  192. data/lib/alchemy/test_support/factories/content_factory.rb +1 -0
  193. data/lib/alchemy/test_support/factories/element_factory.rb +1 -0
  194. data/lib/alchemy/test_support/factories/picture_factory.rb +1 -1
  195. data/lib/alchemy/test_support/fixtures/image.png +0 -0
  196. data/lib/alchemy/tinymce.rb +2 -6
  197. data/lib/alchemy/upgrader.rb +4 -55
  198. data/lib/alchemy/upgrader/tasks/install_dragonfly_config.rb +14 -0
  199. data/lib/alchemy/upgrader/three_point_five.rb +32 -0
  200. data/lib/alchemy/upgrader/three_point_four.rb +2 -8
  201. data/lib/alchemy/upgrader/three_point_one.rb +30 -30
  202. data/lib/alchemy/upgrader/three_point_three.rb +31 -31
  203. data/lib/alchemy/upgrader/three_point_two.rb +25 -25
  204. data/lib/alchemy/upgrader/three_point_zero.rb +59 -59
  205. data/lib/alchemy/version.rb +1 -1
  206. data/lib/rails/generators/alchemy/elements/templates/view.html.erb +1 -1
  207. data/lib/rails/generators/alchemy/elements/templates/view.html.haml +1 -1
  208. data/lib/rails/generators/alchemy/elements/templates/view.html.slim +1 -1
  209. data/lib/rails/generators/alchemy/essence/templates/editor.html.erb +1 -3
  210. data/lib/rails/generators/alchemy/install/files/_article_view.html.erb +1 -1
  211. data/lib/rails/generators/alchemy/install/files/application.html.erb +3 -4
  212. data/lib/rails/generators/alchemy/install/install_generator.rb +4 -0
  213. data/lib/rails/generators/alchemy/install/templates/dragonfly.rb.tt +35 -0
  214. data/lib/rails/generators/alchemy/module/module_generator.rb +1 -1
  215. data/lib/tasks/alchemy/db.rake +6 -0
  216. data/lib/tasks/alchemy/tidy.rake +85 -0
  217. data/lib/tasks/alchemy/upgrade.rake +165 -16
  218. data/vendor/assets/javascripts/clipboard.min.js +7 -0
  219. data/vendor/assets/javascripts/fileupload/jquery.fileupload-process.js +4 -4
  220. data/vendor/assets/javascripts/fileupload/jquery.fileupload-validate.js +2 -2
  221. data/vendor/assets/javascripts/fileupload/jquery.fileupload.js +29 -14
  222. data/vendor/assets/javascripts/fileupload/jquery.iframe-transport.js +2 -2
  223. data/vendor/assets/javascripts/tinymce/langs/es.js +2 -2
  224. data/vendor/assets/javascripts/tinymce/langs/fr.js +1 -1
  225. data/vendor/assets/javascripts/tinymce/langs/it.js +1 -1
  226. data/vendor/assets/javascripts/tinymce/langs/nl.js +3 -3
  227. data/vendor/assets/javascripts/tinymce/tinymce.min.js +15 -12
  228. metadata +44 -88
  229. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/readme.md +0 -1
  230. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce-small.eot +0 -0
  231. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce.eot +0 -0
  232. data/app/assets/stylesheets/tinymce/skins/alchemy/img/wline.gif +0 -0
  233. data/app/assets/stylesheets/tinymce/skins/alchemy/skin.ie7.min.css +0 -1
  234. data/app/controllers/alchemy/pictures_controller.rb +0 -97
  235. data/app/views/alchemy/admin/elements/_refresh_editor.js.erb +0 -8
  236. data/vendor/assets/javascripts/tinymce/plugins/anchor/plugin.min.js +0 -1
  237. data/vendor/assets/javascripts/tinymce/plugins/autoresize/plugin.min.js +0 -1
  238. data/vendor/assets/javascripts/tinymce/plugins/charmap/plugin.min.js +0 -1
  239. data/vendor/assets/javascripts/tinymce/plugins/code/plugin.min.js +0 -1
  240. data/vendor/assets/javascripts/tinymce/plugins/directionality/plugin.min.js +0 -1
  241. data/vendor/assets/javascripts/tinymce/plugins/fullscreen/plugin.min.js +0 -1
  242. data/vendor/assets/javascripts/tinymce/plugins/hr/plugin.min.js +0 -1
  243. data/vendor/assets/javascripts/tinymce/plugins/link/plugin.min.js +0 -1
  244. data/vendor/assets/javascripts/tinymce/plugins/paste/plugin.min.js +0 -1
  245. data/vendor/assets/javascripts/tinymce/plugins/tabfocus/plugin.min.js +0 -1
  246. data/vendor/assets/javascripts/tinymce/plugins/table/plugin.min.js +0 -1
  247. data/vendor/assets/javascripts/tinymce/themes/modern/theme.min.js +0 -1
@@ -1,10 +1,10 @@
1
1
  #dashboard {
2
2
  overflow: auto;
3
- padding: 4 * $default-padding;
3
+ padding: 4*$default-padding 2*$default-padding;
4
4
  width: 100%;
5
5
  position: relative;
6
- @include box-sizing(border-box);
7
- * { @include box-sizing(border-box) }
6
+ box-sizing: border-box;
7
+ * { box-sizing: border-box }
8
8
 
9
9
  h1 {
10
10
  font-size: 2em;
@@ -9,7 +9,7 @@
9
9
  height: 100%;
10
10
  text-align: center;
11
11
  white-space: nowrap;
12
- @include opacity(0);
12
+ opacity: 0;
13
13
  @include transition(opacity 200ms linear);
14
14
 
15
15
  // vertical aligment
@@ -23,7 +23,7 @@
23
23
  }
24
24
 
25
25
  &.open {
26
- @include opacity(1);
26
+ opacity: 1;
27
27
  }
28
28
  }
29
29
 
@@ -64,11 +64,11 @@
64
64
  background-color: $light-gray;
65
65
  margin: 2*$default-margin;
66
66
  @include border-top-radius($default-border-radius);
67
- @include box-shadow(0 0 2px rgba(#000,0.8));
67
+ box-shadow: 0 0 2px rgba(#000,0.8);
68
68
  @include transition(min-height 200ms ease-in-out);
69
69
 
70
70
  &.modal {
71
- @include box-shadow(0 0 4px #666);
71
+ box-shadow: 0 0 4px #666;
72
72
  }
73
73
 
74
74
  div#jscropper {
@@ -88,7 +88,9 @@
88
88
  padding: 0 8px 0 32px;
89
89
  }
90
90
 
91
- .jcrop-holder { @include inline-block }
91
+ .jcrop-holder {
92
+ display: inline-block;
93
+ }
92
94
 
93
95
  img {
94
96
  width: auto;
@@ -121,7 +123,7 @@
121
123
  }
122
124
 
123
125
  .alchemy-dialog-header {
124
- @include box-sizing(border-box);
126
+ box-sizing: border-box;
125
127
  position: relative;
126
128
  height: $dialog-header-height;
127
129
  padding: 0 2*$default-padding;
@@ -170,7 +172,7 @@
170
172
  }
171
173
 
172
174
  .alchemy-dialog-body {
173
- @include box-sizing(border-box);
175
+ box-sizing: border-box;
174
176
  position: relative;
175
177
  color: $text-color;
176
178
 
@@ -209,7 +211,7 @@
209
211
  }
210
212
 
211
213
  .alchemy-dialog-buttons {
212
- @include box-sizing(border-box);
214
+ box-sizing: border-box;
213
215
  float: left;
214
216
  clear: both;
215
217
  width: 100%;
@@ -1,5 +1,5 @@
1
1
  #alchemy_elements_window {
2
- @include box-sizing(border-box);
2
+ box-sizing: border-box;
3
3
  position: absolute;
4
4
  right: 0;
5
5
  top: 73px;
@@ -10,7 +10,7 @@
10
10
  }
11
11
 
12
12
  #element_area {
13
- @include box-sizing(border-box);
13
+ box-sizing: border-box;
14
14
  overflow-x: hidden;
15
15
  overflow-y: auto;
16
16
 
@@ -36,6 +36,10 @@
36
36
  margin-left: $default-margin;
37
37
  text-overflow: ellipsis;
38
38
 
39
+ .has-hint & {
40
+ max-width: 80%;
41
+ }
42
+
39
43
  .preview_text_quote {
40
44
  font-size: 10px;
41
45
  line-height: 15px;
@@ -141,7 +145,7 @@
141
145
  margin-bottom: 2*$default-margin;
142
146
 
143
147
  &.not-draggable {
144
- @include opacity(0.5);
148
+ opacity: 0.5;
145
149
  }
146
150
 
147
151
  &.dirty {
@@ -154,7 +158,7 @@
154
158
 
155
159
  &.selected {
156
160
  border-color: $blue;
157
- @include box-shadow(0 0 4px $blue);
161
+ box-shadow: 0 0 4px $blue;
158
162
  }
159
163
 
160
164
  &.folded {
@@ -239,7 +243,7 @@
239
243
  margin: 0 0 4*$default-margin 0;
240
244
  border: 0 none;
241
245
  border-top: 1px solid $medium-gray;
242
- @include opacity(1);
246
+ opacity: 1;
243
247
  }
244
248
  }
245
249
 
@@ -255,6 +259,24 @@
255
259
  top: 9px;
256
260
  right: 9px;
257
261
  }
262
+
263
+ > .hint-with-icon {
264
+ position: absolute;
265
+ right: 32px;
266
+ top: 8px;
267
+
268
+ .hint-bubble {
269
+ left: auto;
270
+ right: -24px;
271
+ transform: none;
272
+
273
+ &:before {
274
+ left: auto;
275
+ right: 24px;
276
+ transform: none;
277
+ }
278
+ }
279
+ }
258
280
  }
259
281
 
260
282
  .element-toolbar {
@@ -324,7 +346,12 @@
324
346
  position: absolute;
325
347
  bottom: 3px;
326
348
  right: 28px;
327
- @include border-radius(0);
349
+ border-radius: 0;
350
+
351
+ &.link-essence,
352
+ &.unlink-essence {
353
+ border: 1px solid #c0c0c0;
354
+ }
328
355
 
329
356
  &.linked.link-essence {
330
357
  @include linked-button($border-radius: 0 0 0 0);
@@ -365,7 +392,7 @@
365
392
  border: 1px dotted $button-border-color;
366
393
  background-color: $medium-gray;
367
394
  margin-bottom: 2*$default-margin;
368
- @include border-radius($default-border-radius);
395
+ border-radius: $default-border-radius;
369
396
  }
370
397
 
371
398
  .edit_images_bottom {
@@ -402,14 +429,15 @@
402
429
  }
403
430
 
404
431
  a.disabled, > span.icon {
405
- @include opacity(0.3);
432
+ opacity: 0.3;
406
433
  cursor: default;
407
434
  }
408
435
  }
409
436
 
410
437
  .content_editor.essence_date {
411
438
  float: none;
412
- @include inline-block;
439
+ display: inline-block;
440
+ vertical-align: middle;
413
441
  vertical-align: top;
414
442
 
415
443
  input.date {
@@ -497,6 +525,11 @@ div.file {
497
525
  background-color: #f3f3f3;
498
526
  @extend %rounded-border;
499
527
  height: 24px;
528
+
529
+ .validation_failed & {
530
+ color: $error_text_color;
531
+ border-color: $error_border_color;
532
+ }
500
533
  }
501
534
 
502
535
  div.file_icon {
@@ -609,7 +642,8 @@ select.long {
609
642
  }
610
643
 
611
644
  &.display_inline {
612
- @include inline-block;
645
+ display: inline-block;
646
+ vertical-align: middle;
613
647
  margin-right: 4px;
614
648
  vertical-align: top;
615
649
 
@@ -641,7 +675,8 @@ select.long {
641
675
  }
642
676
 
643
677
  &.inline {
644
- @include inline-block;
678
+ display: inline-block;
679
+ vertical-align: middle;
645
680
  min-width: 90px;
646
681
  margin-right: 4px;
647
682
  }
@@ -679,7 +714,8 @@ select.long {
679
714
  }
680
715
 
681
716
  &:hover label a.icon_button.small {
682
- @include inline-block;
717
+ display: inline-block;
718
+ vertical-align: middle;
683
719
  }
684
720
 
685
721
  select.essence_editor_select {
@@ -711,7 +747,8 @@ select.long {
711
747
 
712
748
  &.essence_date {
713
749
  float: none;
714
- @include inline-block;
750
+ display: inline-block;
751
+ vertical-align: middle;
715
752
  vertical-align: top;
716
753
 
717
754
  input.date {
@@ -722,7 +759,8 @@ select.long {
722
759
  &.essence_picture_editor {
723
760
  float: none;
724
761
  height: auto;
725
- @include inline-block;
762
+ display: inline-block;
763
+ vertical-align: middle;
726
764
  }
727
765
  }
728
766
 
@@ -769,41 +807,27 @@ textarea.has_tinymce {
769
807
  }
770
808
  }
771
809
 
772
- a.hint {
773
- position: absolute;
774
- right: 32px;
775
- top: 8px;
776
- width: 16px;
777
- height: 16px;
778
- cursor: help !important;
810
+ .content_editor .hint-with-icon,
811
+ .content_editor .with-hint,
812
+ .element-handle .warning {
813
+ margin-left: 0;
779
814
 
780
- &:hover span.bubble { display: block }
781
- span.bubble { @extend %tooltip }
782
- }
783
-
784
- .content_editor .hint {
785
- position: relative;
786
- top: auto;
787
- right: auto;
788
- display: inline-block;
789
- margin-right: 4px;
790
- margin-top: -2px;
791
- margin-left: -1px;
792
-
793
- .bubble {
794
- right: auto;
795
- left: -4px;
796
- top: 24px;
815
+ > .hint-bubble {
816
+ left: -7px;
817
+ transform: none;
797
818
 
798
819
  &:before {
799
- right: auto;
800
- left: 5px;
820
+ left: 16px;
801
821
  }
802
822
  }
803
823
  }
804
824
 
825
+ .content_editor .hint-with-icon {
826
+ top: -1px;
827
+ }
828
+
805
829
  .nestable-elements {
806
- @include box-shadow(inset 0 4px 8px -2px darken($medium-gray, 15%));
830
+ box-shadow: inset 0 4px 8px -2px darken($medium-gray, 15%);
807
831
  background-color: $medium-gray;
808
832
 
809
833
  .expanded.element-editor > & {
@@ -37,3 +37,10 @@ div#errors, div.errors {
37
37
  margin-bottom: 0.5em;
38
38
  }
39
39
  }
40
+
41
+ body.error {
42
+ .error.message {
43
+ max-height: 95%;
44
+ overflow-y: scroll;
45
+ }
46
+ }
@@ -22,7 +22,7 @@ div#flash_notices {
22
22
 
23
23
  div.flash {
24
24
  @extend %rounded-border;
25
- @include opacity(0.95);
25
+ opacity: 0.95;
26
26
  padding: 8px 8px 8px 30px;
27
27
  font-weight: bold;
28
28
  border-width: 1px;
@@ -30,43 +30,6 @@ textarea {
30
30
  line-height: 19px;
31
31
  }
32
32
 
33
- input#search_input_field {
34
- width: 204px;
35
- text-align: left;
36
- @include border-radius(21px);
37
- padding: 3px 16px 3px 28px;
38
- margin: 0;
39
- height: 29px;
40
- }
41
-
42
- div.search_field span.icon, div.js_filter_field_box span.icon {
43
- position: absolute;
44
- left: 8px;
45
- top: 8px;
46
- }
47
-
48
- .js_filter_field_box {
49
- position: absolute;
50
- right: 4px;
51
- top: 8px;
52
-
53
- .js_filter_field {
54
- width: 220px;
55
- text-align: left;
56
- @include border-radius($default-border-radius);
57
- padding: 3px 24px 3px 28px;
58
- height: 29px;
59
- margin: 0;
60
- }
61
-
62
- label {
63
- font-size: 10px;
64
- display: block;
65
- text-align: center;
66
- padding-top: 3px;
67
- }
68
- }
69
-
70
33
  .alchemy-char-counter {
71
34
  display: block;
72
35
  clear: both;
@@ -26,7 +26,7 @@ form {
26
26
 
27
27
  .input {
28
28
  padding: $default-padding 0;
29
- @include pie-clearfix;
29
+ @include clearfix;
30
30
 
31
31
  > input[type="url"],
32
32
  > input[type="text"],
@@ -35,7 +35,8 @@ form {
35
35
  > textarea,
36
36
  > .select2-container,
37
37
  > .autocomplete_tag_list,
38
- > .mce-tinymce {
38
+ > .mce-tinymce,
39
+ > .with-hint {
39
40
  width: $form-right-width;
40
41
  float: right;
41
42
  }
@@ -97,7 +98,7 @@ form {
97
98
  margin-bottom: 4px;
98
99
 
99
100
  input[type="text"] {
100
- @include box-shadow(none);
101
+ box-shadow: none;
101
102
  }
102
103
  }
103
104
 
@@ -116,21 +117,30 @@ form {
116
117
 
117
118
  &.language_locale small.error {
118
119
  @include form-hint(
119
- $background-color: $error_background_color,
120
- $border-color: $error_border_color
120
+ $background-color: $error_background_color,
121
+ $border-color: $error_border_color
121
122
  );
122
123
  text-align: left;
123
124
  }
124
125
  }
125
126
 
127
+ .input > .with-hint,
128
+ .checkbox > .with-hint {
129
+ cursor: default;
130
+
131
+ input, textarea {
132
+ cursor: not-allowed;
133
+ }
134
+ }
135
+
126
136
  .inline-input {
127
137
  @include clearfix;
128
138
  margin: 0 -1*$default-margin;
129
- @include box-sizing(border-box);
139
+ box-sizing: border-box;
130
140
 
131
141
  .left-column, .right-column {
132
142
  padding: 0 $default-padding;
133
- @include box-sizing(border-box);
143
+ box-sizing: border-box;
134
144
  }
135
145
 
136
146
  .left-column {
@@ -170,7 +180,7 @@ form {
170
180
  }
171
181
 
172
182
  .input-column {
173
- @include box-sizing(border-box);
183
+ box-sizing: border-box;
174
184
  float: left;
175
185
  padding: 0 $default-padding;
176
186
  width: 50%;
@@ -195,25 +205,6 @@ textarea#essence_picture_caption {
195
205
  height: 61px;
196
206
  }
197
207
 
198
- .resource_info {
199
-
200
- h2 {
201
- @include form-heading;
202
- }
203
-
204
- .value {
205
- overflow: hidden;
206
-
207
- label {
208
- @include form-label;
209
- }
210
-
211
- p {
212
- @include form-value-display;
213
- }
214
- }
215
- }
216
-
217
208
  // styles for link overlay selects
218
209
  .window_form {
219
210