alchemy_cms 2.2.4 → 2.3.rc5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (215) hide show
  1. data/.gitignore +1 -1
  2. data/.travis.yml +3 -4
  3. data/Gemfile +1 -0
  4. data/README.md +10 -6
  5. data/alchemy_cms.gemspec +5 -2
  6. data/app/assets/images/alchemy/icons.png +0 -0
  7. data/app/assets/images/sassy-ie-overlay.png +0 -0
  8. data/app/assets/javascripts/alchemy/alchemy.base.js +50 -59
  9. data/app/assets/javascripts/alchemy/alchemy.buttons.js +14 -4
  10. data/app/assets/javascripts/alchemy/alchemy.datepicker.js +8 -2
  11. data/app/assets/javascripts/alchemy/alchemy.elements_window.js +11 -3
  12. data/app/assets/javascripts/alchemy/alchemy.gui.js.coffee +1 -1
  13. data/app/assets/javascripts/alchemy/alchemy.link_overlay.js.coffee +14 -1
  14. data/app/assets/javascripts/alchemy/alchemy.preview.js +1 -1
  15. data/app/assets/javascripts/alchemy/alchemy.preview_window.js +12 -4
  16. data/app/assets/javascripts/alchemy/alchemy.uploader.js +4 -1
  17. data/app/assets/javascripts/alchemy/alchemy.windows.js +18 -8
  18. data/app/assets/stylesheets/alchemy/_defaults.scss +84 -120
  19. data/app/assets/stylesheets/alchemy/alchemy.css +2 -2
  20. data/app/assets/stylesheets/alchemy/archive.css.scss +288 -0
  21. data/app/assets/stylesheets/alchemy/base.css.scss +95 -390
  22. data/app/assets/stylesheets/alchemy/dashboard.css.scss +4 -4
  23. data/app/assets/stylesheets/alchemy/elements.css.scss +83 -118
  24. data/app/assets/stylesheets/alchemy/flash.css.scss +1 -1
  25. data/app/assets/stylesheets/alchemy/form_elements.css.scss +528 -0
  26. data/app/assets/stylesheets/alchemy/frame.css.scss +13 -39
  27. data/app/assets/stylesheets/alchemy/icons.css.scss +217 -228
  28. data/app/assets/stylesheets/alchemy/jquery-ui.alchemy.css.scss +48 -50
  29. data/app/assets/stylesheets/alchemy/jquery.Jcrop.css.scss +1 -1
  30. data/app/assets/stylesheets/alchemy/login.css.scss +1 -5
  31. data/app/assets/stylesheets/alchemy/menubar.css.scss +19 -29
  32. data/app/assets/stylesheets/alchemy/pagination.css.scss +3 -4
  33. data/app/assets/stylesheets/alchemy/sitemap.css.scss +81 -81
  34. data/app/assets/stylesheets/alchemy/tables.css.scss +63 -57
  35. data/app/assets/stylesheets/alchemy/tinymce_dialog.css.scss +57 -57
  36. data/app/assets/stylesheets/alchemy/upload.css.scss +6 -6
  37. data/app/assets/stylesheets/tiny_mce/plugins/inlinepopups/skins/alchemy/window.css.scss +6 -10
  38. data/app/controllers/alchemy/admin/attachments_controller.rb +5 -4
  39. data/app/controllers/alchemy/admin/base_controller.rb +1 -9
  40. data/app/controllers/alchemy/admin/contents_controller.rb +4 -6
  41. data/app/controllers/alchemy/admin/elements_controller.rb +2 -2
  42. data/app/controllers/alchemy/admin/pages_controller.rb +2 -2
  43. data/app/controllers/alchemy/admin/pictures_controller.rb +74 -15
  44. data/app/controllers/alchemy/attachments_controller.rb +8 -2
  45. data/app/controllers/alchemy/base_controller.rb +47 -5
  46. data/app/controllers/alchemy/elements_controller.rb +1 -1
  47. data/app/controllers/alchemy/messages_controller.rb +12 -12
  48. data/app/controllers/alchemy/pages_controller.rb +5 -1
  49. data/app/controllers/alchemy/pictures_controller.rb +9 -4
  50. data/app/controllers/alchemy/user_sessions_controller.rb +2 -4
  51. data/app/helpers/alchemy/admin/base_helper.rb +98 -19
  52. data/app/helpers/alchemy/admin/contents_helper.rb +2 -2
  53. data/app/helpers/alchemy/admin/elements_helper.rb +2 -3
  54. data/app/helpers/alchemy/base_helper.rb +6 -5
  55. data/app/helpers/alchemy/elements_helper.rb +2 -2
  56. data/app/helpers/alchemy/essences_helper.rb +4 -5
  57. data/app/helpers/alchemy/pages_helper.rb +15 -79
  58. data/app/helpers/alchemy/url_helper.rb +67 -0
  59. data/app/mailers/alchemy/messages.rb +1 -1
  60. data/app/mailers/alchemy/notifications.rb +1 -1
  61. data/app/models/alchemy/attachment.rb +11 -2
  62. data/app/models/alchemy/cell.rb +20 -10
  63. data/app/models/alchemy/content.rb +4 -3
  64. data/app/models/alchemy/element.rb +170 -178
  65. data/app/models/alchemy/language/code.rb +4 -1
  66. data/app/models/alchemy/message.rb +19 -3
  67. data/app/models/alchemy/page.rb +45 -40
  68. data/app/models/alchemy/picture.rb +24 -2
  69. data/app/models/alchemy/user.rb +2 -3
  70. data/app/views/alchemy/admin/attachments/_archive_overlay.html.erb +12 -12
  71. data/app/views/alchemy/admin/attachments/_attachment.html.erb +1 -1
  72. data/app/views/alchemy/admin/attachments/create.js.erb +1 -0
  73. data/app/views/alchemy/admin/attachments/edit.html.erb +9 -3
  74. data/app/views/alchemy/admin/attachments/index.html.erb +3 -2
  75. data/app/views/alchemy/admin/contents/_missing.html.erb +1 -1
  76. data/app/views/alchemy/admin/contents/create.js.erb +54 -0
  77. data/app/views/alchemy/admin/contents/new.html.erb +9 -4
  78. data/app/views/alchemy/admin/elements/{_add_content.html.erb → _add_picture.html.erb} +4 -4
  79. data/app/views/alchemy/admin/elements/_elements_select.html.erb +2 -1
  80. data/app/views/alchemy/admin/elements/_new_element_form.html.erb +1 -1
  81. data/app/views/alchemy/admin/elements/{_picture_editor.html.erb → _picture_gallery_editor.html.erb} +7 -11
  82. data/app/views/alchemy/admin/elements/fold.js.erb +46 -0
  83. data/app/views/alchemy/admin/elements/index.html.erb +24 -24
  84. data/app/views/alchemy/admin/elements/list.js.erb +11 -9
  85. data/app/views/alchemy/admin/essence_files/assign.js.erb +3 -1
  86. data/app/views/alchemy/admin/essence_pictures/destroy.js.erb +28 -0
  87. data/app/views/alchemy/admin/pages/_contactform_links.html.erb +8 -6
  88. data/app/views/alchemy/admin/pages/_external_link.html.erb +11 -9
  89. data/app/views/alchemy/admin/pages/_file_link.html.erb +10 -8
  90. data/app/views/alchemy/admin/pages/_internal_link.html.erb +14 -10
  91. data/app/views/alchemy/admin/pages/_new_page_form.html.erb +1 -1
  92. data/app/views/alchemy/admin/pages/_page.html.erb +1 -1
  93. data/app/views/alchemy/admin/pages/_page_for_links.html.erb +32 -21
  94. data/app/views/alchemy/admin/pages/configure.html.erb +2 -2
  95. data/app/views/alchemy/admin/pages/configure_external.html.erb +13 -13
  96. data/app/views/alchemy/admin/pages/edit.html.erb +2 -2
  97. data/app/views/alchemy/admin/pages/index.html.erb +26 -24
  98. data/app/views/alchemy/admin/pages/link.html.erb +2 -5
  99. data/app/views/alchemy/admin/partials/_upload_form.html.erb +28 -12
  100. data/app/views/alchemy/admin/pictures/_archive.html.erb +54 -0
  101. data/app/views/alchemy/admin/pictures/_archive_overlay.html.erb +10 -7
  102. data/app/views/alchemy/admin/pictures/_filter_and_size_bar.html.erb +21 -22
  103. data/app/views/alchemy/admin/pictures/_filter_bar.html.erb +31 -0
  104. data/app/views/alchemy/admin/pictures/_overlay_picture_list.html.erb +9 -0
  105. data/app/views/alchemy/admin/pictures/_picture.html.erb +36 -6
  106. data/app/views/alchemy/admin/pictures/_tag_list.html.erb +27 -0
  107. data/app/views/alchemy/admin/pictures/archive_overlay.js.erb +3 -1
  108. data/app/views/alchemy/admin/pictures/create.js.erb +4 -5
  109. data/app/views/alchemy/admin/pictures/edit.html.erb +26 -0
  110. data/app/views/alchemy/admin/pictures/edit_multiple.html.erb +39 -0
  111. data/app/views/alchemy/admin/pictures/index.html.erb +81 -70
  112. data/app/views/alchemy/admin/pictures/index.js.erb +3 -0
  113. data/app/views/alchemy/admin/pictures/new.html.erb +1 -0
  114. data/app/views/alchemy/admin/resources/index.html.erb +3 -1
  115. data/app/views/alchemy/admin/users/_table.html.erb +1 -1
  116. data/app/views/alchemy/admin/users/index.html.erb +27 -23
  117. data/app/views/alchemy/elements/_article_editor.html.erb +7 -2
  118. data/app/views/alchemy/elements/_bild_editor.html.erb +1 -1
  119. data/app/views/alchemy/elements/_bild_text_editor.html.erb +6 -1
  120. data/app/views/alchemy/elements/_bild_text_view.html.erb +3 -3
  121. data/app/views/alchemy/elements/_image_mosaic_editor.html.erb +1 -1
  122. data/app/views/alchemy/elements/_image_mosaic_view.html.erb +2 -2
  123. data/app/views/alchemy/elements/_intro_image_text_view.html.erb +4 -4
  124. data/app/views/alchemy/elements/_searchresult_editor.html.erb +4 -1
  125. data/app/views/alchemy/essences/_essence_boolean_editor.html.erb +1 -1
  126. data/app/views/alchemy/essences/_essence_picture_editor.html.erb +2 -3
  127. data/app/views/alchemy/essences/_essence_picture_tools.html.erb +1 -1
  128. data/app/views/alchemy/search/_form.html.erb +8 -0
  129. data/app/views/alchemy/search/_result.html.erb +3 -2
  130. data/app/views/alchemy/search/_results.html.erb +28 -0
  131. data/app/views/alchemy/user_sessions/leave.html.erb +4 -4
  132. data/app/views/alchemy/user_sessions/login.html.erb +1 -2
  133. data/app/views/layouts/alchemy/admin.html.erb +30 -10
  134. data/app/views/layouts/alchemy/login.html.erb +2 -39
  135. data/config/alchemy/elements.yml +1 -2
  136. data/config/alchemy/page_layouts.yml +8 -5
  137. data/config/authorization_rules.rb +27 -18
  138. data/config/initializers/localeapp.rb +9 -0
  139. data/config/locales/alchemy.de.yml +93 -56
  140. data/config/locales/alchemy.en.yml +73 -50
  141. data/config/routes.rb +3 -1
  142. data/db/migrate/20120704181529_add_upload_hash_to_alchemy_picture.rb +5 -0
  143. data/db/migrate/20120705214247_acts_as_taggable_on_migration.rb +28 -0
  144. data/db/migrate/20120728185830_add_cached_tag_list_to_alchemy_pictures.rb +5 -0
  145. data/db/migrate/20120831135441_set_alchemy_languages_country_code_default_to_empty_string.rb +9 -0
  146. data/lib/alchemy/capistrano.rb +2 -2
  147. data/lib/alchemy/essence.rb +14 -0
  148. data/lib/alchemy/page_layout.rb +0 -6
  149. data/lib/alchemy/resource.rb +9 -15
  150. data/lib/alchemy/upgrader.rb +18 -3
  151. data/lib/alchemy/version.rb +5 -1
  152. data/lib/alchemy_cms.rb +4 -1
  153. data/lib/rails/generators/alchemy/deploy_script/deploy_script_generator.rb +16 -6
  154. data/lib/rails/generators/alchemy/deploy_script/templates/deploy.rb.tt +17 -3
  155. data/lib/rails/generators/alchemy/elements/elements_generator.rb +6 -1
  156. data/lib/rails/generators/alchemy/elements/templates/editor.html.erb +10 -1
  157. data/lib/rails/generators/alchemy/elements/templates/view.html.erb +17 -18
  158. data/lib/rails/generators/alchemy/scaffold/files/pages.html.erb +4 -2
  159. data/lib/tasks/fleximage.rake +2 -2
  160. data/spec/controllers/admin/contents_controller_spec.rb +2 -2
  161. data/spec/controllers/admin/elements_controller_spec.rb +30 -1
  162. data/spec/controllers/admin/pages_controller_spec.rb +35 -18
  163. data/spec/controllers/admin/trash_controller_spec.rb +40 -16
  164. data/spec/controllers/attachments_controller_spec.rb +62 -0
  165. data/spec/controllers/base_controller_spec.rb +43 -42
  166. data/spec/controllers/elements_controller_spec.rb +30 -0
  167. data/spec/controllers/pages_controller_spec.rb +22 -5
  168. data/spec/controllers/pictures_controller_spec.rb +82 -0
  169. data/spec/dummy/app/models/event.rb +2 -1
  170. data/spec/dummy/config/database.yml +3 -2
  171. data/spec/dummy/db/schema.rb +51 -27
  172. data/spec/factories.rb +29 -8
  173. data/spec/helpers/admin/base_helper_spec.rb +134 -21
  174. data/spec/helpers/admin/contents_helper_spec.rb +2 -2
  175. data/spec/helpers/admin/elements_helper_spec.rb +17 -9
  176. data/spec/helpers/admin/essences_helper_spec.rb +7 -6
  177. data/spec/helpers/essences_helper_spec.rb +8 -7
  178. data/spec/helpers/pages_helper_spec.rb +208 -325
  179. data/spec/helpers/url_helper_spec.rb +171 -0
  180. data/spec/integration/admin/link_overlay_spec.rb +53 -0
  181. data/spec/integration/admin/modules_integration_spec.rb +22 -26
  182. data/spec/integration/admin/pages_controller_spec.rb +10 -19
  183. data/spec/integration/admin/picture_library_integration_spec.rb +52 -0
  184. data/spec/integration/admin/resources_integration_spec.rb +68 -75
  185. data/spec/integration/pages_controller_spec.rb +70 -61
  186. data/spec/integration/security_spec.rb +3 -5
  187. data/spec/integration/translation_integration_spec.rb +56 -0
  188. data/spec/libraries/essence_spec.rb +18 -0
  189. data/spec/libraries/resource_spec.rb +101 -79
  190. data/spec/libraries/resources_helper_spec.rb +3 -0
  191. data/spec/models/content_spec.rb +63 -60
  192. data/spec/models/element_spec.rb +203 -93
  193. data/spec/models/language_spec.rb +90 -65
  194. data/spec/models/page_layout_spec.rb +37 -0
  195. data/spec/models/page_spec.rb +181 -113
  196. data/spec/models/picture_spec.rb +73 -26
  197. data/spec/models/resource_spec.rb +52 -23
  198. data/spec/support/alchemy/specs_helpers.rb +2 -0
  199. data/spec/support/image.png +0 -0
  200. data/spec/{helpers/url_helpers_spec.rb → url_helpers_spec.rb} +0 -0
  201. data/vendor/assets/javascripts/jquery_plugins/jquery.selectBoxIt.js +1909 -0
  202. data/vendor/assets/javascripts/jquery_plugins/preloadCssImages.jQuery_v5.js +152 -0
  203. metadata +106 -33
  204. data/app/assets/stylesheets/alchemy/buttons.css.scss +0 -361
  205. data/app/assets/stylesheets/alchemy/jquery.sb.css.scss +0 -260
  206. data/app/views/alchemy/admin/contents/create.js.coffee +0 -49
  207. data/app/views/alchemy/admin/elements/fold.js.coffee +0 -37
  208. data/app/views/alchemy/admin/essence_pictures/destroy.js.coffee +0 -19
  209. data/app/views/alchemy/admin/pictures/_pictures_list.html.erb +0 -16
  210. data/app/views/alchemy/admin/pictures/update.js.erb +0 -3
  211. data/spec/dummy/config/locales/en.yml +0 -5
  212. data/spec/dummy/config/locales/fo.yml +0 -5
  213. data/spec/page_layout_spec.rb +0 -35
  214. data/vendor/assets/javascripts/jquery_plugins/jquery.in-place-edit.js +0 -172
  215. data/vendor/assets/javascripts/jquery_plugins/jquery.sb.min.js +0 -14
@@ -1,155 +1,119 @@
1
+ @import "compass/css3";
2
+ @import "compass/css3/user-interface";
3
+ @import "sassy-buttons";
4
+
1
5
  $text-color: #333333;
2
6
  $light-blue: #C6DBE7;
7
+ $blue: darken($light-blue, 15%);
8
+ $very-light-blue: lighten($light-blue, 12%);
3
9
  $light-gray: #EDEDED;
4
10
  $medium-gray: #E3E3E3;
5
11
  $dark-gray: #666666;
6
- $button-bg-color: #F7F7F7;
7
- $button-hover-bg-color: #e6f0f5;
8
- $button-border-color: #9A9A9A;
9
- $button-hover-border-color: #888888;
10
- $button-text-shadow: #f2f2f2 1px 1px 0;
11
12
 
12
13
  $default-padding: 4px;
13
14
  $default-margin: $default-padding;
14
15
 
15
- $default-font-face: "Lucida Grande", Arial, sans-serif;
16
+ $default-font-face: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Verdana, Tahoma, sans-serif;
16
17
  $default-font-size: 12px;
17
18
  $default-font-style: $default-font-size $default-font-face;
18
19
 
19
- $default-border: 1px solid #AFAFAF;
20
-
21
- @mixin button-styles {
22
- margin: 0;
23
- font: 11px $default-font-face;
24
- border: 1px solid $button-border-color;
25
- background-color: $button-bg-color;
26
- background-image: image-url('alchemy/shading.png');
27
- background-repeat: repeat-x;
28
- background-position: 0 -73px;
29
- cursor: pointer;
30
- color: $text-color;
31
- text-shadow: $button-text-shadow;
32
- @include rounded-corner;
20
+ $default-border-color: #AFAFAF;
21
+ $default-border-width: 1px;
22
+ $default-border-style: solid;
23
+ $default-border: $default-border-width $default-border-style $default-border-color;
24
+ $default-border-radius: 3px;
25
+
26
+ $button-bg-color: #F7F7F7;
27
+ $button-hover-bg-color: #e6f0f5;
28
+ $button-border-color: #9A9A9A;
29
+ $button-hover-border-color: #888888;
30
+ $button-text-shadow: #f2f2f2 1px 1px 0;
31
+
32
+ $sb-base-color: $light-gray;
33
+ $sb-border-radius: $default-border-radius;
34
+ $sb-font-size: $default-font-size;
35
+ $sb-text-color: $text-color;
36
+ $sb-ie-support: true;
37
+ $default-form-field-margin: 0.3em 0;
38
+
39
+ @mixin rounded-corner($radius: $default-border-radius) {
40
+ @include border-radius($radius);
33
41
  }
34
42
 
35
- @mixin button-hover-styles {
36
- text-decoration: none;
37
- text-shadow: none;
38
- border: 1px solid $button-hover-border-color;
39
- background: $button-hover-bg-color image-url('alchemy/shading.png') repeat-x 50% -75px;
40
- font-weight: normal;
43
+ @mixin reset-border-radius {
44
+ @include border-radius(0);
41
45
  }
42
46
 
43
- @mixin rounded-corner {
44
- $radius: 3px;
45
- border-radius: $radius;
46
- -o-border-radius: $radius;
47
- -ms-border-radius: $radius;
48
- -moz-border-radius: $radius;
49
- -webkit-border-radius: $radius;
47
+ @mixin top-rounded-border($radius: $default-border-radius) {
48
+ @include border-top-radius($radius);
50
49
  }
51
50
 
52
- @mixin reset-border-radius {
53
- $radius: 0px;
54
- border-radius: $radius;
55
- -o-border-radius: $radius;
56
- -ms-border-radius: $radius;
57
- -moz-border-radius: $radius;
58
- -webkit-border-radius: $radius;
51
+ @mixin left-rounded-border($radius: $default-border-radius) {
52
+ @include border-left-radius($radius);
59
53
  }
60
54
 
61
- @mixin top-rounded-border {
62
- $sidea: top-left;
63
- $sideb: top-right;
64
- $radius: 3px;
65
- border-#{$sidea}-radius: $radius;
66
- border-#{$sideb}-radius: $radius;
67
- -o-border-#{$sidea}-radius: $radius;
68
- -o-border-#{$sideb}-radius: $radius;
69
- -ms-border-#{$sidea}-radius: $radius;
70
- -ms-border-#{$sideb}-radius: $radius;
71
- -moz-border-radius-#{$sidea}: $radius;
72
- -moz-border-radius-#{$sideb}: $radius;
73
- -webkit-border-#{$sidea}-radius: $radius;
74
- -webkit-border-#{$sideb}-radius: $radius;
55
+ @mixin right-rounded-border($radius: $default-border-radius) {
56
+ @include border-right-radius($radius);
75
57
  }
76
58
 
77
- @mixin left-rounded-border {
78
- $sidea: bottom-left;
79
- $sideb: top-left;
80
- $radius: 3px;
81
- border-#{$sidea}-radius: $radius;
82
- border-#{$sideb}-radius: $radius;
83
- -o-border-#{$sidea}-radius: $radius;
84
- -o-border-#{$sideb}-radius: $radius;
85
- -ms-border-#{$sidea}-radius: $radius;
86
- -ms-border-#{$sideb}-radius: $radius;
87
- -moz-border-radius-#{$sidea}: $radius;
88
- -moz-border-radius-#{$sideb}: $radius;
89
- -webkit-border-#{$sidea}-radius: $radius;
90
- -webkit-border-#{$sideb}-radius: $radius;
59
+ @mixin bottom-rounded-border($radius: $default-border-radius) {
60
+ @include border-bottom-radius($radius);
91
61
  }
92
62
 
93
- @mixin right-rounded-border {
94
- $sidea: bottom-right;
95
- $sideb: top-right;
96
- $radius: 3px;
97
- border-#{$sidea}-radius: $radius;
98
- border-#{$sideb}-radius: $radius;
99
- -o-border-#{$sidea}-radius: $radius;
100
- -o-border-#{$sideb}-radius: $radius;
101
- -ms-border-#{$sidea}-radius: $radius;
102
- -ms-border-#{$sideb}-radius: $radius;
103
- -moz-border-radius-#{$sidea}: $radius;
104
- -moz-border-radius-#{$sideb}: $radius;
105
- -webkit-border-#{$sidea}-radius: $radius;
106
- -webkit-border-#{$sideb}-radius: $radius;
63
+ @mixin bottom-left-rounded-border($radius: $default-border-radius) {
64
+ @include border-bottom-left-radius($radius);
107
65
  }
108
66
 
109
- @mixin bottom-rounded-border {
110
- $sidea: bottom-left;
111
- $sideb: bottom-right;
112
- $radius: 3px;
113
- border-#{$sidea}-radius: $radius;
114
- border-#{$sideb}-radius: $radius;
115
- -o-border-#{$sidea}-radius: $radius;
116
- -o-border-#{$sideb}-radius: $radius;
117
- -ms-border-#{$sidea}-radius: $radius;
118
- -ms-border-#{$sideb}-radius: $radius;
119
- -moz-border-radius-#{$sidea}: $radius;
120
- -moz-border-radius-#{$sideb}: $radius;
121
- -webkit-border-#{$sidea}-radius: $radius;
122
- -webkit-border-#{$sideb}-radius: $radius;
67
+ @mixin disable-user-select {
68
+ @include user-select(none);
123
69
  }
124
70
 
125
- @mixin bottom-left-rounded-border {
126
- $side: bottom-left;
127
- $radius: 3px;
128
- border-#{$side}-radius: $radius;
129
- -o-border-#{$side}-radius: $radius;
130
- -ms-border-#{$side}-radius: $radius;
131
- -moz-border-radius-#{$side}: $radius;
132
- -webkit-border-#{$side}-radius: $radius;
71
+ @mixin default-button-style {
72
+ @include sassy-button('shiny');
73
+ display: inline;
74
+ border-color: $button-border-color;
75
+ margin: $default-form-field-margin;
133
76
  }
134
77
 
135
- @mixin rounded-search-field {
136
- $radius: 12px;
137
- border-radius: $radius;
138
- -o-border-radius: $radius;
139
- -ms-border-radius: $radius;
140
- -moz-border-radius: $radius;
141
- -webkit-border-radius: $radius;
78
+ @mixin default-focus-style($bg-color: $very-light-blue, $border: 1px solid $blue) {
79
+ background-color: $bg-color;
80
+ border: $border;
81
+ @include box-shadow(0 0 6px $blue, inset 0 0 4px $light-blue);
82
+ outline: none;
83
+ @include transition(all 0.25s ease-in-out);
84
+
85
+ &::-moz-focus-inner {
86
+ border: none !important;
87
+ padding: 1px !important;
88
+ }
142
89
  }
143
90
 
144
- @mixin opacity($opacity){
145
- opacity: $opacity/100;
146
- filter: unquote("progid:DXImageTransform.Microsoft.Alpha(Opacity=#{$opacity})");
91
+ @mixin default-input-style {
92
+ $border-inset-color: lighten($default-border-color, 20%);
93
+ @include rounded-corner;
94
+ @include box-shadow(inset 1px 1px 2px $medium-gray);
95
+ font: $default-font-style;
96
+ padding: 1px $default-padding;
97
+ margin: $default-form-field-margin;
98
+ background: #fff;
99
+ border-top: 1px solid $default-border-color;
100
+ border-left: 1px solid $default-border-color;
101
+ border-bottom: 1px solid $border-inset-color;
102
+ border-right: 1px solid $border-inset-color;
103
+ width: 210px;
104
+ font-size: 12px;
105
+ line-height: 12px;
106
+ height: 25px;
107
+ @include transition(all 0.25s ease-in-out);
108
+
109
+ &:focus {
110
+ @include default-focus-style;
111
+ }
147
112
  }
148
113
 
149
- @mixin disable-user-select {
150
- -webkit-user-select: none;
151
- -moz-user-select: none;
152
- -ms-user-select: none;
153
- -o-user-select: none;
154
- user-select: none;
114
+ @mixin text-overflow($prop: ellipsis) {
115
+ text-overflow: $prop;
116
+ -o-text-overflow: $prop;
117
+ -ms-text-overflow: $prop;
118
+ -moz-text-overflow: $prop;
155
119
  }
@@ -1,10 +1,11 @@
1
1
  /* Alchemy CMS Sprockets Manifest
2
2
  * -------------------------------
3
3
  *= require alchemy/base
4
- *= require alchemy/buttons
4
+ *= require alchemy/archive
5
5
  *= require alchemy/dashboard
6
6
  *= require alchemy/elements
7
7
  *= require alchemy/flash
8
+ *= require alchemy/form_elements
8
9
  *= require alchemy/frame
9
10
  *= require alchemy/icons
10
11
  *= require alchemy/login
@@ -15,6 +16,5 @@
15
16
  *= require alchemy/upload
16
17
  *= require alchemy/jquery-ui.alchemy
17
18
  *= require alchemy/jquery.Jcrop
18
- *= require alchemy/jquery.sb
19
19
  *= require alchemy/custom
20
20
  */
@@ -0,0 +1,288 @@
1
+ @import "alchemy/defaults";
2
+
3
+ div#image_assign_filter_and_image_sizing {
4
+ width: 100%;
5
+ height: 40px;
6
+ }
7
+
8
+ #picture_archive {
9
+ padding: 4 * $default-padding;
10
+
11
+ .selected_item_tools {
12
+ margin: -4*$default-padding;
13
+ border-bottom: 1px solid $default-border-color;
14
+ margin-bottom: 4*$default-padding;
15
+ padding: 4*$default-padding;
16
+ display: none;
17
+ }
18
+ }
19
+
20
+ .picture_thumbnail {
21
+ padding: $default-padding;
22
+ margin: 2px 1px 2px 2px;
23
+ background-color: #fff;
24
+ float: none;
25
+ display: inline;
26
+ display: inline-block;
27
+ border: 1px solid #c0c0c0;
28
+ position: relative;
29
+ @include rounded-corner;
30
+
31
+ .thumbnail_background {
32
+ display: table-cell;
33
+ width: 160px;
34
+ height: 120px;
35
+ background-color: $dark-gray;
36
+ text-align: center;
37
+ vertical-align: middle;
38
+ padding: 0;
39
+ line-height: 0;
40
+ }
41
+
42
+ .picture_name {
43
+ height: 14px;
44
+ display: block;
45
+ text-align: center;
46
+ white-space: nowrap;
47
+ overflow: hidden;
48
+ position: absolute;
49
+ bottom: 1px;
50
+ left: 0;
51
+ font-family: "Courier New", Courier, mono;
52
+ line-height: 11px;
53
+ padding: 2px 0;
54
+ margin-right: 4px;
55
+ margin-left: 4px;
56
+ }
57
+
58
+ &.small {
59
+ width: 80px;
60
+ height: 80px;
61
+
62
+ .picture_name {
63
+ width: 80px;
64
+ }
65
+
66
+ .thumbnail_background {
67
+ width: 80px;
68
+ height: 60px;
69
+ }
70
+
71
+ .image_spinner {
72
+ height: 60px;
73
+ margin: $default-margin;
74
+
75
+ img {
76
+ top: 14px;
77
+ left: 25px;
78
+ }
79
+ }
80
+ }
81
+
82
+ &.medium {
83
+ width: 160px;
84
+ height: 140px;
85
+
86
+ .picture_name {
87
+ width: 160px;
88
+ }
89
+
90
+ .thumbnail_background {
91
+ width: 160px;
92
+ height: 120px;
93
+ }
94
+
95
+ .image_spinner {
96
+ height: 120px;
97
+ margin: $default-margin;
98
+
99
+ img {
100
+ top: 42px;
101
+ left: 64px;
102
+ }
103
+ }
104
+ }
105
+
106
+ &.large {
107
+ width: 240px;
108
+ height: 200px;
109
+
110
+ .picture_name {
111
+ width: 240px;
112
+ }
113
+
114
+ .thumbnail_background {
115
+ width: 240px;
116
+ height: 180px;
117
+ }
118
+
119
+ .image_spinner {
120
+ height: 180px;
121
+
122
+ img {
123
+ top: 74px;
124
+ left: 108px;
125
+ }
126
+ }
127
+ }
128
+
129
+ &:hover {
130
+
131
+ .picture_tool {
132
+ display: block;
133
+ }
134
+ }
135
+ }
136
+
137
+ #pictures {
138
+ padding-right: 232px;
139
+
140
+ .picture_thumbnail {
141
+ margin: 0 8px 8px 0;
142
+ display: inline-block;
143
+ float: none;
144
+
145
+ .thumbnail_background {
146
+ cursor: -webkit-zoom-in;
147
+ cursor: -moz-zoom-in;
148
+ cursor: -ms-zoom-in;
149
+ cursor: -o-zoom-in;
150
+ cursor: image-url('alchemy/lupe.cur'), zoom-in, pointer;
151
+ }
152
+ }
153
+ }
154
+
155
+ div.assign_image_list_image {
156
+ text-align: center;
157
+ overflow: hidden;
158
+ position: relative;
159
+ }
160
+
161
+ div.image_spinner {
162
+ background-color: $dark-gray;
163
+ width: 1px;
164
+ margin: $default-margin;
165
+
166
+ img {
167
+ position: absolute;
168
+ z-index: 0;
169
+ top: 32px;
170
+ left: 40px;
171
+ }
172
+ }
173
+
174
+ #assign_image_list {
175
+ position: relative;
176
+ padding-right: 244px;
177
+ height: 519px;
178
+
179
+ div.assign_image_list_image img {
180
+ border-style: none;
181
+ }
182
+ }
183
+
184
+ .picture_tool {
185
+ width: 16px;
186
+ height: 16px;
187
+ position: absolute;
188
+ background-color: white;
189
+ top: 3px;
190
+ padding: 1px;
191
+ z-index: 10;
192
+ display: none;
193
+
194
+ &.visible {
195
+ display: block;
196
+ }
197
+
198
+ &.hidden {
199
+ display: none;
200
+ }
201
+
202
+ &.select {
203
+ left: 4px;
204
+
205
+ input {
206
+ margin: 0;
207
+ padding: 0;
208
+ }
209
+ }
210
+
211
+ &.delete {
212
+ right: 4px;
213
+
214
+ a {
215
+ background: image-url('alchemy/icons.png') no-repeat -63px -72px;
216
+ }
217
+ }
218
+
219
+ &.edit {
220
+ top: auto;
221
+ right: 4px;
222
+ bottom: 24px;
223
+
224
+ a {
225
+ background: image-url('alchemy/icons.png') no-repeat -160px -167px;
226
+ }
227
+ }
228
+
229
+ a {
230
+ display: block;
231
+ width: 16px;
232
+ height: 16px;
233
+ cursor: pointer;
234
+ }
235
+ }
236
+
237
+ div#library_sidebar {
238
+ position: absolute;
239
+ border-left: 1px solid $default-border-color;
240
+ top: 0;
241
+ right: 0;
242
+ width: 200px;
243
+ padding: 0 4*$default-padding;
244
+ height: 100%;
245
+ z-index: 1;
246
+ background-color: $light-gray;
247
+
248
+ h2 {
249
+ margin-top: 4*$default-margin;
250
+ }
251
+ }
252
+
253
+ div#filter_bar {
254
+
255
+ .selectboxit {
256
+ width: 180px;
257
+ }
258
+ }
259
+
260
+ div#tag_list {
261
+
262
+ ul {
263
+ list-style-type: none;
264
+ padding: 0;
265
+ margin: $default-margin 0 3*$default-margin 0;
266
+
267
+ li {
268
+ @include inline-block;
269
+ padding: $default-padding 2*$default-padding;
270
+ margin: 0 $default-margin 2*$default-margin 0;
271
+ background-color: $medium-gray;
272
+ @include border-radius(16px);
273
+ white-space: nowrap;
274
+
275
+ a {
276
+ text-decoration: none;
277
+ }
278
+
279
+ &.active {
280
+ background-color: $dark-gray;
281
+
282
+ a {
283
+ color: $light-gray;
284
+ }
285
+ }
286
+ }
287
+ }
288
+ }