alchemy_cms 2.1.beta6 → 2.1.rc2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (137) hide show
  1. data/.gitignore +3 -1
  2. data/Gemfile +10 -2
  3. data/Guardfile +16 -0
  4. data/README.md +3 -3
  5. data/Rakefile +0 -5
  6. data/alchemy_cms.gemspec +1 -9
  7. data/app/assets/javascripts/alchemy/alchemy.base.js +5 -4
  8. data/app/assets/javascripts/alchemy/{alchemy.dragndrop.js.erb → alchemy.dragndrop.js} +0 -0
  9. data/app/assets/javascripts/alchemy/alchemy.elements_window.js +96 -0
  10. data/app/assets/javascripts/alchemy/alchemy.image_cropper.js +48 -50
  11. data/app/assets/javascripts/alchemy/alchemy.jquery_loader.js +41 -0
  12. data/app/assets/javascripts/alchemy/alchemy.js +2 -0
  13. data/app/assets/javascripts/alchemy/alchemy.menubar.js +55 -0
  14. data/app/assets/javascripts/alchemy/alchemy.preview.js +94 -139
  15. data/app/assets/javascripts/alchemy/alchemy.preview_window.js +98 -0
  16. data/app/assets/javascripts/alchemy/alchemy.windows.js +1 -174
  17. data/app/assets/javascripts/alchemy/menubar.js +2 -0
  18. data/app/assets/javascripts/alchemy/preview.js +2 -1
  19. data/app/assets/stylesheets/alchemy/_defaults.scss +7 -8
  20. data/app/assets/stylesheets/alchemy/base.css.scss +29 -33
  21. data/app/assets/stylesheets/alchemy/elements.css.scss +4 -4
  22. data/app/assets/stylesheets/alchemy/jquery-ui.alchemy.css.scss +1 -1
  23. data/app/assets/stylesheets/alchemy/jquery.Jcrop.css.scss +1 -1
  24. data/app/assets/stylesheets/alchemy/jquery.sb.css.scss +19 -4
  25. data/app/assets/stylesheets/alchemy/menubar.css.scss +85 -0
  26. data/app/assets/stylesheets/alchemy/standard_set.css +3 -5
  27. data/app/assets/stylesheets/alchemy/tinymce_content.css.scss +1 -1
  28. data/app/assets/stylesheets/alchemy/tinymce_dialog.css.scss +1 -1
  29. data/app/controllers/alchemy/admin/attachments_controller.rb +2 -18
  30. data/app/controllers/alchemy/admin/base_controller.rb +1 -1
  31. data/app/controllers/alchemy/admin/elements_controller.rb +2 -2
  32. data/app/controllers/alchemy/admin/essence_files_controller.rb +4 -2
  33. data/app/controllers/alchemy/admin/pictures_controller.rb +6 -20
  34. data/app/controllers/alchemy/admin/resources_controller.rb +7 -5
  35. data/app/controllers/alchemy/base_controller.rb +14 -4
  36. data/app/controllers/alchemy/messages_controller.rb +4 -4
  37. data/app/controllers/alchemy/pages_controller.rb +51 -32
  38. data/app/controllers/alchemy/pictures_controller.rb +0 -3
  39. data/app/controllers/alchemy/user_sessions_controller.rb +1 -1
  40. data/app/helpers/alchemy/admin/base_helper.rb +6 -4
  41. data/app/helpers/alchemy/base_helper.rb +26 -0
  42. data/app/helpers/alchemy/pages_helper.rb +42 -22
  43. data/app/models/alchemy/attachment.rb +10 -2
  44. data/app/models/alchemy/cell.rb +1 -0
  45. data/app/models/alchemy/content.rb +8 -6
  46. data/app/models/alchemy/element.rb +1 -1
  47. data/app/models/alchemy/essence_audio.rb +1 -8
  48. data/app/models/alchemy/essence_date.rb +2 -9
  49. data/app/models/alchemy/essence_file.rb +1 -8
  50. data/app/models/alchemy/essence_flash.rb +0 -7
  51. data/app/models/alchemy/essence_html.rb +1 -8
  52. data/app/models/alchemy/essence_picture.rb +0 -11
  53. data/app/models/alchemy/essence_richtext.rb +4 -12
  54. data/app/models/alchemy/essence_text.rb +1 -13
  55. data/app/models/alchemy/essence_video.rb +1 -8
  56. data/app/models/alchemy/page.rb +28 -22
  57. data/app/models/alchemy/picture.rb +19 -0
  58. data/app/sweepers/alchemy/pages_sweeper.rb +17 -6
  59. data/app/sweepers/alchemy/pictures_sweeper.rb +1 -3
  60. data/app/views/alchemy/admin/attachments/_archive_overlay.html.erb +2 -2
  61. data/app/views/alchemy/admin/attachments/_attachment.html.erb +1 -1
  62. data/app/views/alchemy/admin/attachments/_file_to_assign.html.erb +2 -2
  63. data/app/views/alchemy/admin/attachments/_files_list.html.erb +13 -11
  64. data/app/views/alchemy/admin/attachments/create.js.erb +1 -1
  65. data/app/views/alchemy/admin/attachments/edit.html.erb +2 -2
  66. data/app/views/alchemy/admin/elements/_new_element_form.html.erb +1 -2
  67. data/app/views/alchemy/admin/elements/new.html.erb +1 -1
  68. data/app/views/alchemy/admin/essence_files/edit.html.erb +32 -32
  69. data/app/views/alchemy/admin/essence_pictures/crop.html.erb +29 -29
  70. data/app/views/alchemy/admin/essence_pictures/update.js.erb +13 -12
  71. data/app/views/alchemy/admin/pages/_create_language_form.html.erb +4 -1
  72. data/app/views/alchemy/admin/pages/_new_page_form.html.erb +1 -1
  73. data/app/views/alchemy/admin/pages/edit.html.erb +8 -8
  74. data/app/views/alchemy/admin/pages/index.html.erb +1 -1
  75. data/app/views/alchemy/admin/pages/new.html.erb +1 -1
  76. data/app/views/alchemy/admin/pages/update.js.erb +19 -12
  77. data/app/views/alchemy/admin/pictures/_picture.html.erb +1 -1
  78. data/app/views/alchemy/admin/pictures/_pictures_list.html.erb +8 -6
  79. data/app/views/alchemy/admin/pictures/show_in_window.html.erb +6 -1
  80. data/app/views/alchemy/admin/resources/_table.html.erb +1 -1
  81. data/app/views/alchemy/admin/users/_table.html.erb +13 -13
  82. data/app/views/alchemy/admin/users/_user.html.erb +1 -1
  83. data/app/views/alchemy/admin/users/index.html.erb +2 -2
  84. data/app/views/alchemy/elements/_contactform_view.html.erb +78 -78
  85. data/app/views/alchemy/elements/_download_editor.html.erb +1 -0
  86. data/app/views/alchemy/elements/_download_view.html.erb +3 -0
  87. data/app/views/alchemy/essences/_essence_date_editor.html.erb +1 -1
  88. data/app/views/alchemy/essences/_essence_file_editor.html.erb +1 -0
  89. data/app/views/alchemy/essences/_essence_file_view.html.erb +6 -2
  90. data/app/views/alchemy/essences/_essence_picture_editor.html.erb +3 -2
  91. data/app/views/alchemy/essences/_essence_picture_view.html.erb +1 -1
  92. data/app/views/alchemy/navigation/_link.html.erb +1 -2
  93. data/app/views/alchemy/notifications/admin_user_created.text.erb +7 -7
  94. data/app/views/alchemy/notifications/registered_user_created.text.erb +5 -5
  95. data/app/views/alchemy/user_sessions/login.html.erb +34 -35
  96. data/app/views/layouts/alchemy/login.html.erb +3 -8
  97. data/app/views/layouts/alchemy/pages.html.erb +1 -0
  98. data/bin/alchemy +43 -75
  99. data/config/alchemy/config.yml +10 -0
  100. data/config/alchemy/elements.yml +5 -0
  101. data/config/alchemy/page_layouts.yml +1 -1
  102. data/config/locales/alchemy.de.yml +21 -8
  103. data/config/locales/alchemy.en.yml +20 -4
  104. data/config/routes.rb +25 -20
  105. data/db/migrate/{20111116125112_namespace_models.rb → 20111116125112_namespace_alchemy_models.rb} +1 -1
  106. data/lib/alchemy/capistrano.rb +4 -17
  107. data/lib/alchemy/engine.rb +2 -0
  108. data/lib/alchemy/essence.rb +29 -41
  109. data/lib/alchemy/i18n.rb +1 -1
  110. data/lib/alchemy/mount_point.rb +10 -0
  111. data/lib/alchemy/page_layout.rb +7 -7
  112. data/lib/alchemy/seeder.rb +85 -47
  113. data/lib/alchemy/upgrader.rb +115 -0
  114. data/lib/alchemy/version.rb +1 -1
  115. data/lib/alchemy_cms.rb +4 -3
  116. data/lib/rails/generators/alchemy/scaffold/scaffold_generator.rb +6 -2
  117. data/lib/tasks/ferret.rake +12 -0
  118. data/lib/tasks/install.rake +16 -105
  119. data/lib/tasks/routes.rake +29 -0
  120. data/lib/tasks/upgrade.rake +5 -67
  121. data/spec/controllers/admin/pages_controller_spec.rb +1 -1
  122. data/spec/controllers/pages_controller_spec.rb +31 -0
  123. data/spec/factories.rb +24 -15
  124. data/spec/helpers/admin/base_helper_spec.rb +0 -7
  125. data/spec/helpers/pages_helper_spec.rb +54 -29
  126. data/spec/helpers/url_helpers_spec.rb +40 -0
  127. data/spec/integration/admin/pages_controller_spec.rb +3 -3
  128. data/spec/integration/pages_controller_spec.rb +80 -6
  129. data/spec/integration/security_spec.rb +2 -2
  130. data/spec/models/content_spec.rb +24 -0
  131. data/spec/models/page_spec.rb +174 -47
  132. data/spec/models/picture_spec.rb +54 -0
  133. data/spec/page_layout_spec.rb +2 -2
  134. data/spec/routing_spec.rb +205 -1
  135. data/spec/spec_helper.rb +53 -32
  136. metadata +51 -46
  137. data/lib/alchemy/file_utilz.rb +0 -73
@@ -0,0 +1,98 @@
1
+ if (typeof(Alchemy) === 'undefined') {
2
+ var Alchemy = {};
3
+ }
4
+
5
+ (function($) {
6
+
7
+ var PreviewWindow = {};
8
+ $.extend(Alchemy, PreviewWindow);
9
+
10
+ Alchemy.PreviewWindow = {
11
+
12
+ init : function (url, title) {
13
+ var $iframe = $('#alchemyPreviewWindow');
14
+ if ($iframe.length === 0) {
15
+ $iframe = $('<iframe src="'+url+'" id="alchemyPreviewWindow" frameborder="0"></iframe>');
16
+ $iframe.load(function() {
17
+ $('#preview_load_info').hide();
18
+ });
19
+ $iframe.css({'background-color': '#ffffff'});
20
+ Alchemy.PreviewWindow.currentWindow = $iframe.dialog({
21
+ modal: false,
22
+ title: title,
23
+ width: $(window).width() - 504,
24
+ height: $(window).height() - 78,
25
+ minWidth: 600,
26
+ minHeight: 300,
27
+ show: "fade",
28
+ hide: "fade",
29
+ position: [70, 84],
30
+ autoResize: true,
31
+ closeOnEscape: false,
32
+ create: function() {
33
+ var $spinner = $('<img src="/assets/alchemy/ajax_loader.gif" alt="" id="preview_load_info" />');
34
+ $('#ui-dialog-title-alchemyPreviewWindow').after($spinner);
35
+ var $reload = $('<a href="#" class="ui-dialog-titlebar-refresh ui-corner-all" role="button"></a>');
36
+ $reload.append('<span class="ui-icon ui-icon-refresh">reload</span>');
37
+ $('#ui-dialog-title-alchemyPreviewWindow').after($reload);
38
+ $reload.click(Alchemy.reloadPreview);
39
+ },
40
+ close: function(event, ui) {
41
+ Alchemy.PreviewWindow.button.enable();
42
+ },
43
+ open: function (event, ui) {
44
+ $(this).css({width: '100%'});
45
+ Alchemy.PreviewWindow.button.disable();
46
+ Alchemy.previewWindowFrameWidth = $('#alchemyPreviewWindow').width();
47
+ }
48
+ }).dialogExtend({
49
+ "maximize" : true,
50
+ "dblclick" : "maximize",
51
+ "events" : {
52
+ beforeMaximize: function(evt, dlg) {
53
+ Alchemy.previewWindowPosition = $('#alchemyPreviewWindow').dialog('widget').offset();
54
+ Alchemy.previewWindowFrameWidth = $('#alchemyPreviewWindow').width();
55
+ },
56
+ maximize : function(evt, dlg) {
57
+ $('#alchemyPreviewWindow').css({width: "100%"});
58
+ },
59
+ restore : function(evt, dlg) {
60
+ $('#alchemyPreviewWindow').dialog('widget').css(Alchemy.previewWindowPosition);
61
+ $('#alchemyPreviewWindow').css({width: Alchemy.previewWindowFrameWidth});
62
+ }
63
+ }
64
+ });
65
+ } else {
66
+ $('#alchemyPreviewWindow').dialog('open');
67
+ }
68
+ },
69
+
70
+ refresh : function() {
71
+ var $iframe = $('#alchemyPreviewWindow');
72
+ $('#preview_load_info').show();
73
+ $iframe.load(function() {
74
+ $('#preview_load_info').hide();
75
+ });
76
+ $iframe.attr('src', $iframe.attr('src'));
77
+ return true;
78
+ },
79
+
80
+ button : {
81
+ enable: function() {
82
+ $('div#show_preview_window').removeClass('disabled');
83
+ },
84
+ disable: function() {
85
+ $('div#show_preview_window').addClass('disabled');
86
+ },
87
+ toggle: function() {
88
+ $('div#show_preview_window').toggleClass('disabled');
89
+ }
90
+ }
91
+
92
+ };
93
+
94
+ Alchemy.reloadPreview = function() {
95
+ Alchemy.PreviewWindow.refresh();
96
+ };
97
+
98
+ })(jQuery);
@@ -41,180 +41,7 @@ if (typeof(Alchemy) === 'undefined') {
41
41
  }
42
42
  },
43
43
 
44
- openPreviewWindow : function (url, title) {
45
- var $iframe = $('#alchemyPreviewWindow');
46
- if ($iframe.length === 0) {
47
- $iframe = $('<iframe src="'+url+'" id="alchemyPreviewWindow"></iframe>');
48
- $iframe.load(function() {
49
- $('#preview_load_info').hide();
50
- });
51
- $iframe.css({'background-color': '#ffffff'});
52
- Alchemy.PreviewWindow = $iframe.dialog({
53
- modal: false,
54
- title: title,
55
- width: $(window).width() - 504,
56
- height: $(window).height() - 78,
57
- minWidth: 600,
58
- minHeight: 300,
59
- show: "fade",
60
- hide: "fade",
61
- position: [70, 84],
62
- autoResize: true,
63
- closeOnEscape: false,
64
- create: function() {
65
- var $spinner = $('<img src="/assets/alchemy/ajax_loader.gif" alt="" id="preview_load_info" />');
66
- $('#ui-dialog-title-alchemyPreviewWindow').after($spinner);
67
- var $reload = $('<a href="#" class="ui-dialog-titlebar-refresh ui-corner-all" role="button"></a>');
68
- $reload.append('<span class="ui-icon ui-icon-refresh">reload</span>');
69
- $('#ui-dialog-title-alchemyPreviewWindow').after($reload);
70
- $reload.click(Alchemy.reloadPreview);
71
- },
72
- close: function(event, ui) {
73
- Alchemy.PreviewWindowButton.enable();
74
- },
75
- open: function (event, ui) {
76
- $(this).css({width: '100%'});
77
- Alchemy.PreviewWindowButton.disable();
78
- Alchemy.previewWindowFrameWidth = $('#alchemyPreviewWindow').width();
79
- }
80
- }).dialogExtend({
81
- "maximize" : true,
82
- "dblclick" : "maximize",
83
- "events" : {
84
- beforeMaximize: function(evt, dlg) {
85
- Alchemy.previewWindowPosition = $('#alchemyPreviewWindow').dialog('widget').offset();
86
- Alchemy.previewWindowFrameWidth = $('#alchemyPreviewWindow').width();
87
- },
88
- maximize : function(evt, dlg) {
89
- $('#alchemyPreviewWindow').css({width: "100%"});
90
- },
91
- restore : function(evt, dlg) {
92
- $('#alchemyPreviewWindow').dialog('widget').css(Alchemy.previewWindowPosition);
93
- $('#alchemyPreviewWindow').css({width: Alchemy.previewWindowFrameWidth});
94
- }
95
- }
96
- });
97
- } else {
98
- $('#alchemyPreviewWindow').dialog('open');
99
- }
100
- Alchemy.PreviewWindow.refresh = function () {
101
- var $iframe = $('#alchemyPreviewWindow');
102
- $('#preview_load_info').show();
103
- $iframe.load(function() {
104
- $('#preview_load_info').hide();
105
- });
106
- $iframe.attr('src', $iframe.attr('src'));
107
- return true;
108
- };
109
- },
110
-
111
- PreviewWindowExists : function() {
112
- if (Alchemy.PreviewWindow) {
113
- return true;
114
- } else {
115
- return false;
116
- }
117
- },
118
-
119
- reloadPreview : function() {
120
- Alchemy.PreviewWindow.refresh();
121
- },
122
-
123
- ElementsWindowButton : {
124
- enable: function() {
125
- $('div#show_element_window').removeClass('disabled');
126
- },
127
- disable: function() {
128
- $('div#show_element_window').addClass('disabled');
129
- },
130
- toggle: function() {
131
- $('div#show_element_window').toggleClass('disabled');
132
- }
133
- },
134
-
135
- PreviewWindowButton : {
136
- enable: function() {
137
- $('div#show_preview_window').removeClass('disabled');
138
- },
139
- disable: function() {
140
- $('div#show_preview_window').addClass('disabled');
141
- },
142
- toggle: function() {
143
- $('div#show_preview_window').toggleClass('disabled');
144
- }
145
- },
146
-
147
- openElementsWindow : function (path, options, callback) {
148
- var $dialog = $('<div style="display: none" id="alchemyElementWindow"></div>');
149
- var closeCallback = function() {
150
- $dialog.dialog("destroy");
151
- $('#alchemyElementWindow').remove();
152
- Alchemy.ElementsWindowButton.enable();
153
- };
154
- $dialog.html(Alchemy.getOverlaySpinner({x: 420, y: 300}));
155
- Alchemy.ElementsWindow = $dialog.dialog({
156
- modal: false,
157
- minWidth: 422,
158
- minHeight: 300,
159
- height: $(window).height() - 90,
160
- title: options.texts.title,
161
- show: "fade",
162
- hide: "fade",
163
- position: [$(window).width() - 428, 84],
164
- closeOnEscape: false,
165
- create: function() {
166
- $dialog.before(Alchemy.createElementWindowToolbar(options.toolbarButtons));
167
- },
168
- open: function(event, ui) {
169
- Alchemy.ElementsWindowButton.disable();
170
- $.ajax({
171
- url: path,
172
- success: function(data, textStatus, XMLHttpRequest) {
173
- $dialog.html(data);
174
- Alchemy.ButtonObserver('#alchemyElementWindow .button');
175
- callback.call();
176
- },
177
- error: function(XMLHttpRequest, textStatus, errorThrown) {
178
- Alchemy.AjaxErrorHandler($dialog, XMLHttpRequest.status, textStatus, errorThrown);
179
- }
180
- });
181
- },
182
- beforeClose : function() {
183
- if (Alchemy.isPageDirty()) {
184
- Alchemy.openConfirmWindow({
185
- title: options.texts.dirtyTitle,
186
- message: options.texts.dirtyMessage,
187
- okLabel: options.texts.okLabel,
188
- cancelLabel: options.texts.cancelLabel,
189
- okCallback: closeCallback
190
- });
191
- return false;
192
- } else {
193
- return true;
194
- }
195
- },
196
- close: closeCallback
197
- });
198
- },
199
-
200
- createElementWindowToolbar : function(buttons) {
201
- var $toolbar = $('<div id="overlay_toolbar"></div>'), btn;
202
- for (i = 0; i < buttons.length; i++) {
203
- btn = buttons[i];
204
- $toolbar.append(
205
- Alchemy.createToolbarButton({
206
- buttonTitle: btn.title,
207
- buttonLabel: btn.label,
208
- iconClass: btn.iconClass,
209
- onClick: btn.onClick,
210
- buttonId: btn.buttonId
211
- })
212
- );
213
- }
214
- return $toolbar;
215
- },
216
-
217
- createToolbarButton : function(options) {
44
+ ToolbarButton : function(options) {
218
45
  var $btn = $('<div class="button_with_label"></div>'), $lnk;
219
46
  if (options.buttonId) $btn.attr({'id': options.buttonId});
220
47
  $lnk = $('<a title="'+options.buttonTitle+'" class="icon_button"></a>');
@@ -0,0 +1,2 @@
1
+ //= require alchemy/alchemy.jquery_loader
2
+ //= require alchemy/alchemy.menubar
@@ -1 +1,2 @@
1
- //= require alchemy/alchemy.preview
1
+ //= require alchemy/alchemy.jquery_loader
2
+ //= require alchemy/alchemy.preview
@@ -133,16 +133,15 @@ $default-border: 1px solid #AFAFAF;
133
133
  }
134
134
 
135
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;
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;
142
142
  }
143
143
 
144
144
  @mixin opacity($opacity) {
145
145
  opacity: $opacity/100;
146
- filter: alpha(opacity = $opacity);
147
- -ms-filter: 'alpha(opacity=$opacity)';
146
+ filter: unquote("progid:DXImageTransform.Microsoft.Alpha(Opacity=#{$opacity})");
148
147
  }
@@ -218,6 +218,16 @@ div.pagination span.gap {
218
218
 
219
219
  /* @end */
220
220
 
221
+ #login_box {
222
+ height: 310px;
223
+ width: 394px;
224
+ margin-top: -210px;
225
+ margin-left: -197px;
226
+ position: absolute;
227
+ top: 50%;
228
+ left: 50%;
229
+ }
230
+
221
231
  #login table tbody tr td.label {
222
232
  width: 155px;
223
233
  text-align: right;
@@ -233,22 +243,6 @@ form#login.new_user_session {
233
243
  text-align: right;
234
244
  }
235
245
 
236
- #login .thin_border {
237
- width: 195px;
238
- float: right;
239
- }
240
-
241
- #login_notice {
242
- overflow: auto;
243
- padding: 2*$default-padding;
244
- background-color: #fff;
245
- text-align: left;
246
- }
247
-
248
- #login label {
249
- margin-right: 8px;
250
- }
251
-
252
246
  .float_right {
253
247
  float: right;
254
248
  }
@@ -359,10 +353,10 @@ div#top_menu {
359
353
  #main_content {
360
354
  background-color: $light-gray;
361
355
  position: absolute;
362
- top: 90px;
363
356
  left: 65px;
364
357
  z-index: 0;
365
358
  width: 93%;
359
+ height: 100%;
366
360
  }
367
361
 
368
362
  div#user_info {
@@ -471,7 +465,7 @@ div.widget p {
471
465
  /* @end */
472
466
 
473
467
  div#alchemy_greeting {
474
- width: 100%;
468
+ width: 370px;
475
469
  margin-right: auto;
476
470
  margin-left: auto;
477
471
  padding: 2*$default-padding;
@@ -522,6 +516,7 @@ a.drop_down_select img {
522
516
  text-align: left;
523
517
  @include rounded-search-field;
524
518
  padding: 3px 24px 2px;
519
+ height: 19px;
525
520
  }
526
521
 
527
522
  #flags a img {
@@ -541,7 +536,7 @@ a.drop_down_select img {
541
536
  .js_filter_field_box .js_filter_field_clear {
542
537
  width: 15px;
543
538
  height: 15px;
544
- background: image-url('alchemy/icons.png') no-repeat 0 -104px;
539
+ background: image-url('alchemy/icons.png') no-repeat 0 -70px;
545
540
  position: absolute;
546
541
  right: 8px;
547
542
  top: 4px;
@@ -1547,7 +1542,6 @@ table.window_form {
1547
1542
 
1548
1543
  table td, table th {
1549
1544
  padding: $default-padding;
1550
- white-space: nowrap;
1551
1545
  }
1552
1546
 
1553
1547
  table th {
@@ -1823,7 +1817,7 @@ td.input, td.submit, td.select {
1823
1817
  }
1824
1818
 
1825
1819
  td.value {
1826
- text-indent: 4px;
1820
+ padding-left: 2*$default-padding;
1827
1821
  }
1828
1822
 
1829
1823
  td.label {
@@ -1833,6 +1827,10 @@ td.label {
1833
1827
  line-height: 6*$default-padding;
1834
1828
  }
1835
1829
 
1830
+ td.label.mandatory:after {
1831
+ content: '*';
1832
+ }
1833
+
1836
1834
  td.heading {
1837
1835
  padding: $default-padding 0;
1838
1836
  font-weight: bold;
@@ -2709,7 +2707,7 @@ div#image_assign_filter_and_image_sizing {
2709
2707
  @include rounded-corner;
2710
2708
  }
2711
2709
 
2712
- #picture_archive {
2710
+ #pictures {
2713
2711
  padding: 2*$default-padding;
2714
2712
  border: $default-border;
2715
2713
  @include rounded-corner;
@@ -2976,14 +2974,14 @@ div#image_assign_filter_and_image_sizing form input.button {
2976
2974
  float: right;
2977
2975
  }
2978
2976
 
2979
- div.assign_file_file {
2977
+ li.assign_file_file {
2978
+ display: block;
2980
2979
  text-align: center;
2981
- background-color: white;
2982
2980
  width: 100%;
2983
2981
  margin-bottom: 4px;
2984
2982
  }
2985
2983
 
2986
- #assign_file_list div.assign_file_file a {
2984
+ #assign_file_list li.assign_file_file a {
2987
2985
  overflow: hidden;
2988
2986
  display: block;
2989
2987
  padding-right: 4px;
@@ -2994,6 +2992,7 @@ div.assign_file_file {
2994
2992
  div.assign_file_file_icon {
2995
2993
  float: left;
2996
2994
  margin: $default-margin;
2995
+ line-height: normal;
2997
2996
  }
2998
2997
 
2999
2998
  #alchemy .ui-dialog-content a img {
@@ -3111,7 +3110,7 @@ div.elements_for_page {
3111
3110
  top: 0;
3112
3111
  z-index: 15;
3113
3112
  background-color: white;
3114
- width: 206px;
3113
+ width: 240px;
3115
3114
  padding: $default-padding;
3116
3115
  border: 1px solid #9c9d9c;
3117
3116
  -webkit-box-shadow: #9ea09f 0px 0px 4px;
@@ -3165,10 +3164,13 @@ a.close_elements_from_page_selector {
3165
3164
  float: none;
3166
3165
  }
3167
3166
 
3168
- div#assign_file_list {
3167
+ ul#assign_file_list {
3169
3168
  margin-bottom: 8px;
3170
3169
  margin-top: 8px;
3171
3170
  clear: both;
3171
+ height: 280px;
3172
+ overflow-x: hidden;
3173
+ overflow-y: auto;
3172
3174
  }
3173
3175
 
3174
3176
  ul#sitemap li .sitemap_sitename.selected_page a{
@@ -3251,12 +3253,6 @@ select#url_protocol.medium {
3251
3253
  margin: 0;
3252
3254
  }
3253
3255
 
3254
- #alchemy .ui-dialog-content select.very_long,
3255
- #alchemy .ui-dialog-content .selectbox.very_long,
3256
- #alchemy .ui-dialog-content .selectbox.very_long .display {
3257
- width: 170px;
3258
- }
3259
-
3260
3256
  #alchemy .ui-dialog-content .short {
3261
3257
  width: 40px;
3262
3258
  }