alchemy_cms 3.0.4 → 3.1.0.beta1
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.
- checksums.yaml +4 -4
- data/.travis.yml +4 -6
- data/Gemfile +4 -7
- data/README.md +207 -115
- data/alchemy_cms.gemspec +10 -9
- data/app/assets/javascripts/alchemy/alchemy.dragndrop.js.coffee +2 -2
- data/app/assets/javascripts/alchemy/alchemy.image_cropper.js.coffee +2 -2
- data/app/assets/javascripts/alchemy/alchemy.js +6 -7
- data/app/assets/javascripts/alchemy/alchemy.translations.js.coffee +1 -43
- data/app/assets/javascripts/alchemy/alchemy.uploader.js.coffee +1 -1
- data/app/assets/stylesheets/alchemy/_mixins.scss +2 -1
- data/app/assets/stylesheets/alchemy/buttons.scss +0 -5
- data/app/assets/stylesheets/alchemy/dialogs.scss +1 -0
- data/app/assets/stylesheets/alchemy/frame.scss +9 -12
- data/app/assets/stylesheets/tinymce/skins/alchemy/content.min.css.scss +11 -2
- data/app/assets/stylesheets/tinymce/skins/alchemy/skin.min.css.scss +9 -1
- data/app/controllers/alchemy/admin/attachments_controller.rb +2 -4
- data/app/controllers/alchemy/admin/essence_pictures_controller.rb +34 -38
- data/app/controllers/alchemy/api/base_controller.rb +19 -0
- data/app/controllers/alchemy/api/contents_controller.rb +35 -0
- data/app/controllers/alchemy/api/elements_controller.rb +29 -0
- data/app/controllers/alchemy/api/pages_controller.rb +32 -0
- data/app/controllers/alchemy/contents_controller.rb +1 -0
- data/app/controllers/alchemy/elements_controller.rb +5 -2
- data/app/controllers/alchemy/pages_controller.rb +4 -1
- data/app/controllers/alchemy/pictures_controller.rb +4 -36
- data/app/helpers/alchemy/admin/essences_helper.rb +5 -2
- data/app/helpers/alchemy/essences_helper.rb +14 -1
- data/app/models/alchemy/content.rb +32 -4
- data/app/models/alchemy/element.rb +2 -16
- data/app/models/alchemy/element/presenters.rb +2 -2
- data/app/models/alchemy/essence_file.rb +5 -0
- data/app/models/alchemy/essence_picture.rb +12 -8
- data/app/models/alchemy/picture.rb +1 -74
- data/app/models/alchemy/picture/transformations.rb +249 -0
- data/app/serializers/alchemy/content_serializer.rb +3 -10
- data/app/serializers/alchemy/element_serializer.rb +6 -3
- data/app/serializers/alchemy/legacy_element_serializer.rb +17 -0
- data/app/views/alchemy/admin/dashboard/_sites.html.erb +14 -4
- data/app/views/alchemy/admin/essence_pictures/crop.html.erb +8 -5
- data/app/views/alchemy/admin/pages/edit.html.erb +9 -9
- data/app/views/alchemy/admin/pictures/info.html.erb +2 -3
- data/app/views/alchemy/admin/tags/edit.html.erb +1 -1
- data/app/views/alchemy/essences/_essence_boolean_editor.html.erb +8 -7
- data/app/views/alchemy/essences/_essence_boolean_view.html.erb +3 -3
- data/app/views/alchemy/essences/_essence_date_editor.html.erb +8 -2
- data/app/views/alchemy/essences/_essence_date_view.html.erb +10 -8
- data/app/views/alchemy/essences/_essence_file_editor.html.erb +48 -53
- data/app/views/alchemy/essences/_essence_file_view.html.erb +5 -5
- data/app/views/alchemy/essences/_essence_html_editor.html.erb +5 -4
- data/app/views/alchemy/essences/_essence_link_editor.html.erb +17 -15
- data/app/views/alchemy/essences/_essence_link_view.html.erb +11 -7
- data/app/views/alchemy/essences/_essence_picture_editor.html.erb +4 -2
- data/app/views/alchemy/essences/_essence_picture_view.html.erb +4 -2
- data/app/views/alchemy/essences/_essence_richtext_view.html.erb +5 -4
- data/app/views/alchemy/essences/_essence_select_editor.html.erb +22 -32
- data/app/views/alchemy/essences/_essence_text_view.html.erb +7 -6
- data/app/views/alchemy/essences/shared/_essence_picture_tools.html.erb +1 -1
- data/app/views/layouts/alchemy/admin.html.erb +5 -3
- data/config/initializers/inflections.rb +3 -0
- data/config/initializers/simple_form.rb +1 -1
- data/config/locales/alchemy.en.yml +0 -1
- data/config/routes.rb +14 -0
- data/lib/alchemy/capistrano.rb +71 -0
- data/lib/alchemy/engine.rb +0 -3
- data/lib/alchemy/essence.rb +1 -1
- data/lib/alchemy/permissions.rb +19 -5
- data/lib/alchemy/picture_attributes.rb +1 -1
- data/lib/alchemy/test_support/auth_helpers.rb +1 -1
- data/lib/alchemy/test_support/essence_shared_examples.rb +37 -22
- data/lib/alchemy/test_support/integration_helpers.rb +1 -1
- data/lib/alchemy/tinymce.rb +21 -4
- data/lib/alchemy/upgrader/three_point_one.rb +43 -0
- data/lib/alchemy/upgrader/three_point_zero.rb +13 -0
- data/lib/alchemy/version.rb +2 -1
- data/lib/rails/generators/alchemy/module/module_generator.rb +30 -0
- data/lib/rails/generators/alchemy/module/templates/ability.rb.tt +11 -0
- data/lib/rails/generators/alchemy/module/templates/controller.rb.tt +2 -0
- data/lib/rails/generators/alchemy/module/templates/module_config.rb.tt +15 -0
- data/lib/rails/generators/alchemy/scaffold/scaffold_generator.rb +0 -1
- data/lib/rails/templates/alchemy.rb +2 -2
- data/lib/tasks/alchemy/db.rake +7 -1
- data/spec/controllers/admin/attachments_controller_spec.rb +38 -38
- data/spec/controllers/admin/base_controller_spec.rb +18 -18
- data/spec/controllers/admin/clipboard_controller_spec.rb +23 -18
- data/spec/controllers/admin/contents_controller_spec.rb +33 -27
- data/spec/controllers/admin/dashboard_controller_spec.rb +14 -14
- data/spec/controllers/admin/elements_controller_spec.rb +125 -105
- data/spec/controllers/admin/essence_files_controller_spec.rb +6 -7
- data/spec/controllers/admin/essence_pictures_controller_spec.rb +52 -42
- data/spec/controllers/admin/languages_controller_spec.rb +3 -3
- data/spec/controllers/admin/pages_controller_spec.rb +81 -71
- data/spec/controllers/admin/pictures_controller_spec.rb +69 -72
- data/spec/controllers/admin/resources_controller_spec.rb +5 -5
- data/spec/controllers/admin/trash_controller_spec.rb +15 -12
- data/spec/controllers/alchemy/admin/tags_controller_spec.rb +8 -8
- data/spec/controllers/alchemy/api/contents_controller_spec.rb +73 -0
- data/spec/controllers/alchemy/api/elements_controller_spec.rb +69 -0
- data/spec/controllers/alchemy/api/pages_controller_spec.rb +86 -0
- data/spec/controllers/attachments_controller_spec.rb +8 -8
- data/spec/controllers/contents_controller_spec.rb +22 -0
- data/spec/controllers/elements_controller_spec.rb +10 -4
- data/spec/controllers/messages_controller_spec.rb +35 -34
- data/spec/controllers/pages_controller_spec.rb +37 -28
- data/spec/controllers/pictures_controller_spec.rb +90 -23
- data/spec/dummy/app/models/dummy_user.rb +0 -4
- data/spec/dummy/app/views/alchemy/elements/_all_you_can_eat_editor.html.erb +11 -0
- data/spec/dummy/config/alchemy/elements.yml +22 -1
- data/spec/dummy/config/alchemy/page_layouts.yml +4 -0
- data/spec/dummy/config/application.rb +2 -1
- data/spec/dummy/config/environments/test.rb +3 -1
- data/spec/features/admin/dashboard_spec.rb +41 -6
- data/spec/features/admin/language_tree_feature_spec.rb +3 -3
- data/spec/features/admin/legacy_page_url_management_spec.rb +1 -1
- data/spec/features/admin/link_overlay_spec.rb +7 -7
- data/spec/features/admin/locale_select_feature_spec.rb +5 -2
- data/spec/features/admin/modules_integration_spec.rb +1 -1
- data/spec/features/admin/page_creation_feature_spec.rb +3 -2
- data/spec/features/admin/page_editing_feature_spec.rb +66 -79
- data/spec/features/admin/picture_library_integration_spec.rb +8 -8
- data/spec/features/admin/resources_integration_spec.rb +21 -21
- data/spec/features/admin/tinymce_feature_spec.rb +36 -0
- data/spec/features/navigation_spec.rb +1 -1
- data/spec/features/page_feature_spec.rb +34 -34
- data/spec/features/picture_security_spec.rb +4 -4
- data/spec/features/security_spec.rb +1 -1
- data/spec/features/translation_integration_spec.rb +7 -7
- data/spec/helpers/admin/base_helper_spec.rb +51 -49
- data/spec/helpers/admin/contents_helper_spec.rb +11 -11
- data/spec/helpers/admin/elements_helper_spec.rb +20 -17
- data/spec/helpers/admin/essences_helper_spec.rb +42 -11
- data/spec/helpers/admin/navigation_helper_spec.rb +64 -54
- data/spec/helpers/admin/pages_helper_spec.rb +10 -10
- data/spec/helpers/admin/tags_helper_spec.rb +16 -16
- data/spec/helpers/base_helper_spec.rb +11 -11
- data/spec/helpers/elements_block_helper_spec.rb +24 -24
- data/spec/helpers/elements_helper_spec.rb +46 -46
- data/spec/helpers/essences_helper_spec.rb +90 -17
- data/spec/helpers/pages_helper_spec.rb +53 -53
- data/spec/helpers/picture_url_helpers_spec.rb +6 -6
- data/spec/helpers/url_helper_spec.rb +32 -32
- data/spec/libraries/config_spec.rb +9 -9
- data/spec/libraries/controller_actions_spec.rb +14 -14
- data/spec/libraries/i18n_spec.rb +6 -6
- data/spec/libraries/kaminari/scoped_pagination_url_helper_spec.rb +4 -4
- data/spec/libraries/modules_spec.rb +4 -4
- data/spec/libraries/mount_point_spec.rb +13 -13
- data/spec/libraries/page_layout_spec.rb +24 -24
- data/spec/libraries/permissions_spec.rb +97 -80
- data/spec/libraries/resource_spec.rb +37 -37
- data/spec/libraries/resources_helper_spec.rb +19 -19
- data/spec/libraries/shell_spec.rb +17 -17
- data/spec/libraries/template_tracker_spec.rb +14 -14
- data/spec/libraries/tinymce_spec.rb +8 -8
- data/spec/libraries/userstamp_spec.rb +2 -2
- data/spec/mailers/messages_spec.rb +4 -4
- data/spec/models/attachment_spec.rb +86 -30
- data/spec/models/cell_spec.rb +10 -10
- data/spec/models/content_spec.rb +106 -46
- data/spec/models/element_spec.rb +94 -115
- data/spec/models/essence_date_spec.rb +1 -1
- data/spec/models/essence_file_spec.rb +4 -4
- data/spec/models/essence_picture_spec.rb +56 -25
- data/spec/models/essence_richtext_spec.rb +1 -1
- data/spec/models/essence_text_spec.rb +7 -7
- data/spec/models/language_spec.rb +12 -12
- data/spec/models/legacy_page_url_spec.rb +2 -2
- data/spec/models/message_spec.rb +12 -5
- data/spec/models/page_spec.rb +259 -235
- data/spec/models/picture_spec.rb +72 -166
- data/spec/models/site_spec.rb +41 -41
- data/spec/models/tag_spec.rb +7 -7
- data/spec/routing/api_routing_spec.rb +150 -0
- data/spec/routing/routing_spec.rb +28 -28
- data/spec/spec_helper.rb +6 -5
- data/spec/support/hint_examples.rb +5 -5
- data/spec/support/transformation_examples.rb +173 -0
- data/spec/tasks/helpers_spec.rb +29 -29
- data/spec/views/essences/essence_boolean_editor_spec.rb +32 -0
- data/spec/views/essences/essence_boolean_view_spec.rb +2 -2
- data/spec/views/essences/essence_date_view_spec.rb +1 -1
- data/spec/views/essences/essence_link_view_spec.rb +11 -0
- data/spec/views/essences/essence_picture_view_spec.rb +56 -11
- data/spec/views/essences/essence_richtext_view_spec.rb +12 -0
- data/spec/views/essences/essence_text_view_spec.rb +12 -0
- data/vendor/assets/javascripts/tinymce/langs/de.js +20 -2
- data/vendor/assets/javascripts/tinymce/langs/fr.js +14 -1
- data/vendor/assets/javascripts/tinymce/langs/nl.js +22 -4
- data/vendor/assets/javascripts/tinymce/plugins/anchor/plugin.min.js +1 -1
- data/vendor/assets/javascripts/tinymce/plugins/autoresize/plugin.min.js +1 -1
- data/vendor/assets/javascripts/tinymce/plugins/charmap/plugin.min.js +1 -1
- data/vendor/assets/javascripts/tinymce/plugins/code/plugin.min.js +1 -1
- data/vendor/assets/javascripts/tinymce/plugins/directionality/plugin.min.js +1 -1
- data/vendor/assets/javascripts/tinymce/plugins/fullscreen/plugin.min.js +1 -1
- data/vendor/assets/javascripts/tinymce/plugins/hr/plugin.min.js +1 -1
- data/vendor/assets/javascripts/tinymce/plugins/link/plugin.min.js +1 -1
- data/vendor/assets/javascripts/tinymce/plugins/paste/plugin.min.js +1 -1
- data/vendor/assets/javascripts/tinymce/plugins/tabfocus/plugin.min.js +1 -1
- data/vendor/assets/javascripts/tinymce/plugins/table/plugin.min.js +1 -1
- data/vendor/assets/javascripts/tinymce/themes/modern/theme.min.js +1 -1
- data/vendor/assets/javascripts/tinymce/tinymce.min.js +11 -10
- metadata +72 -42
- data/app/views/alchemy/messages/contact_form_mail.es.text.erb +0 -12
- data/config/locales/alchemy.es.yml +0 -958
- data/config/locales/alchemy.ru.yml +0 -837
- data/config/locales/simple_form.es.yml +0 -6
- data/config/locales/simple_form.ru.yml +0 -25
- data/lib/rails/generators/alchemy/scaffold/files/alchemy.es.yml +0 -31
- data/vendor/assets/javascripts/tinymce/langs/es.js +0 -197
- data/vendor/assets/javascripts/tinymce/langs/ru.js +0 -197
data/alchemy_cms.gemspec
CHANGED
|
@@ -19,32 +19,33 @@ Gem::Specification.new do |gem|
|
|
|
19
19
|
gem.executables = 'alchemy'
|
|
20
20
|
gem.require_paths = ['lib']
|
|
21
21
|
|
|
22
|
-
gem.add_runtime_dependency 'rails', '>= 4.0', '<
|
|
22
|
+
gem.add_runtime_dependency 'rails', '>= 4.0', '< 5.0'
|
|
23
23
|
gem.add_runtime_dependency 'actionpack-page_caching', '~> 1.0.0'
|
|
24
24
|
gem.add_runtime_dependency 'awesome_nested_set', '~> 3.0.0.rc.2'
|
|
25
25
|
gem.add_runtime_dependency 'acts-as-taggable-on', '~> 3.1'
|
|
26
|
-
gem.add_runtime_dependency '
|
|
26
|
+
gem.add_runtime_dependency 'cancancan', '~> 1.9'
|
|
27
27
|
gem.add_runtime_dependency 'dragonfly', '~> 1.0.1'
|
|
28
28
|
gem.add_runtime_dependency 'kaminari', '~> 0.15'
|
|
29
29
|
gem.add_runtime_dependency 'acts_as_list', '~> 0.3.0'
|
|
30
30
|
gem.add_runtime_dependency 'magiclabs-userstamp', '~> 2.1.0'
|
|
31
|
-
gem.add_runtime_dependency 'simple_form', '~> 3.0
|
|
31
|
+
gem.add_runtime_dependency 'simple_form', '~> 3.0'
|
|
32
32
|
gem.add_runtime_dependency 'jquery-rails', '~> 3.1.0'
|
|
33
|
-
gem.add_runtime_dependency 'jquery-ui-rails', '~>
|
|
34
|
-
gem.add_runtime_dependency 'sass-rails', '
|
|
33
|
+
gem.add_runtime_dependency 'jquery-ui-rails', '~> 5.0.0'
|
|
34
|
+
gem.add_runtime_dependency 'sass-rails', '>= 4.0.4'
|
|
35
|
+
gem.add_runtime_dependency 'sass', '>= 3.2.19'
|
|
35
36
|
gem.add_runtime_dependency 'uglifier', '>= 1.3.0'
|
|
36
37
|
gem.add_runtime_dependency 'coffee-rails', '~> 4.0.0'
|
|
37
|
-
gem.add_runtime_dependency 'compass-rails', '
|
|
38
|
+
gem.add_runtime_dependency 'compass-rails', '>= 1.1.2'
|
|
38
39
|
gem.add_runtime_dependency 'sassy-buttons', '~> 0.2.6'
|
|
39
|
-
gem.add_runtime_dependency 'select2-rails', '
|
|
40
|
+
gem.add_runtime_dependency 'select2-rails', '~> 3.4'
|
|
40
41
|
gem.add_runtime_dependency 'tvdeyen-handles_sortable_columns', '~> 0.1.5'
|
|
41
42
|
gem.add_runtime_dependency 'spinner.rb'
|
|
42
43
|
gem.add_runtime_dependency 'turbolinks', '~> 2.0'
|
|
43
44
|
gem.add_runtime_dependency 'non-stupid-digest-assets', '~> 1.0.3'
|
|
44
|
-
gem.add_runtime_dependency 'active_model_serializers', '>= 0.8.1', '< 0.
|
|
45
|
+
gem.add_runtime_dependency 'active_model_serializers', '>= 0.8.1', '< 0.10.0'
|
|
45
46
|
gem.add_runtime_dependency 'request_store', '~> 1.1.0'
|
|
46
47
|
|
|
47
|
-
gem.add_development_dependency 'rspec-rails', '~>
|
|
48
|
+
gem.add_development_dependency 'rspec-rails', '~> 3.0'
|
|
48
49
|
gem.add_development_dependency 'capybara'
|
|
49
50
|
gem.add_development_dependency 'factory_girl_rails'
|
|
50
51
|
|
|
@@ -4,7 +4,7 @@ Alchemy.ImageCropper =
|
|
|
4
4
|
|
|
5
5
|
initialized: false
|
|
6
6
|
|
|
7
|
-
init: (box,
|
|
7
|
+
init: (box, min_size, default_box, ratio, true_size) ->
|
|
8
8
|
crop_from_field = $("#essence_picture_crop_from")
|
|
9
9
|
crop_size_field = $("#essence_picture_crop_size")
|
|
10
10
|
options =
|
|
@@ -13,7 +13,7 @@ Alchemy.ImageCropper =
|
|
|
13
13
|
crop_size_field.val coords.w + "x" + coords.h
|
|
14
14
|
setSelect: box
|
|
15
15
|
aspectRatio: (if ratio then ratio else `undefined`)
|
|
16
|
-
minSize:
|
|
16
|
+
minSize: (if min_size then min_size else `undefined`)
|
|
17
17
|
boxWidth: 800
|
|
18
18
|
boxHeight: 600
|
|
19
19
|
trueSize: true_size
|
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
//= require jquery
|
|
4
4
|
//= require jquery_ujs
|
|
5
5
|
//= require turbolinks
|
|
6
|
-
//= require jquery
|
|
7
|
-
//= require jquery
|
|
8
|
-
//= require jquery
|
|
9
|
-
//= require jquery
|
|
10
|
-
//= require jquery
|
|
11
|
-
//= require jquery
|
|
6
|
+
//= require jquery-ui/datepicker
|
|
7
|
+
//= require jquery-ui/draggable
|
|
8
|
+
//= require jquery-ui/effect-drop
|
|
9
|
+
//= require jquery-ui/effect-fade
|
|
10
|
+
//= require jquery-ui/sortable
|
|
11
|
+
//= require jquery-ui/tabs
|
|
12
12
|
//= require tinymce/tinymce.min
|
|
13
13
|
//= require_tree ../../../../vendor/assets/javascripts/jquery_plugins/
|
|
14
14
|
//= require spin.min
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
//= require requestAnimationFrame
|
|
17
17
|
//= require select2
|
|
18
18
|
//= require select2_locale_de
|
|
19
|
-
//= require select2_locale_ru
|
|
20
19
|
//= require alchemy/alchemy.base
|
|
21
20
|
//= require alchemy/alchemy.autocomplete
|
|
22
21
|
//= require alchemy/alchemy.browser
|
|
@@ -87,46 +87,4 @@ Alchemy.translations =
|
|
|
87
87
|
'File is too small': 'Le fichier est trop petit.'
|
|
88
88
|
'File type not allowed': 'Type de document non autorisé.'
|
|
89
89
|
'Maximum number of files exceeded': 'Le nombre maximum de fichiers est atteint.'
|
|
90
|
-
'Uploaded bytes exceed file size': 'Taille de fichier maximale autorisée atteint.'
|
|
91
|
-
|
|
92
|
-
# Russian
|
|
93
|
-
ru:
|
|
94
|
-
allowed_chars: '%{count} знаков'
|
|
95
|
-
cancel: 'Отмена'
|
|
96
|
-
cancelled: 'Отменено'
|
|
97
|
-
click_to_edit: 'нажмите, чтобы редактировать'
|
|
98
|
-
complete: 'Завершено'
|
|
99
|
-
element_dirty_notice: 'Для этого элемента есть несохраненные изменения. Вы действительно хотите их сбросить?'
|
|
100
|
-
help: 'Помощь'
|
|
101
|
-
ok: 'Ок'
|
|
102
|
-
page_dirty_notice: 'На странице есть несохраненные изменения. Если вы продолжите, то они пропадут.'
|
|
103
|
-
page_found: 'Страница найдена'
|
|
104
|
-
pages_found: 'Страницы найдены'
|
|
105
|
-
url_validation_failed: 'Адрес (URL) имеет неверный формат.'
|
|
106
|
-
warning: 'Внимание!'
|
|
107
|
-
'File is too large': 'Файл слишком большой'
|
|
108
|
-
'File is too small': 'Файл слишком маленький'
|
|
109
|
-
'File type not allowed': 'Этот тип файла не разрешен'
|
|
110
|
-
'Maximum number of files exceeded': 'Исчерпано максимальное количество файлов.'
|
|
111
|
-
'Uploaded bytes exceed file size': 'Превышен максимальный размер файла'
|
|
112
|
-
|
|
113
|
-
# Spanish
|
|
114
|
-
es:
|
|
115
|
-
allowed_chars: 'de %{count} caracteres'
|
|
116
|
-
cancel: 'Cancelar'
|
|
117
|
-
cancelled: 'Cancelado'
|
|
118
|
-
click_to_edit: 'Pulsar para editar'
|
|
119
|
-
complete: 'Completado'
|
|
120
|
-
element_dirty_notice: 'Este elemento tiene cambios sin guardar. ¿Realmente quieres plegarlo?'
|
|
121
|
-
help: 'Ayuda'
|
|
122
|
-
ok: 'Aceptar'
|
|
123
|
-
page_dirty_notice: 'Tienes cambios sin guardar en esta página. Si continúas se perderán.'
|
|
124
|
-
page_found: 'Página encontrada'
|
|
125
|
-
pages_found: 'Páginas encontradas'
|
|
126
|
-
url_validation_failed: 'La url no tiene un formato válido.'
|
|
127
|
-
warning: '¡Atención!'
|
|
128
|
-
'File is too large': 'El archivo es demasiado grande'
|
|
129
|
-
'File is too small': 'El archivo es demasiado pequeño'
|
|
130
|
-
'File type not allowed': 'El tipo de archivo no está permitido'
|
|
131
|
-
'Maximum number of files exceeded': 'Número máximo de archivos excedido.'
|
|
132
|
-
'Uploaded bytes exceed file size': 'Los bytes subidos exceden el tamaño del archivo'
|
|
90
|
+
'Uploaded bytes exceed file size': 'Taille de fichier maximale autorisée atteint.'
|
|
@@ -122,12 +122,12 @@ div#overlay_text_box {
|
|
|
122
122
|
left: 0;
|
|
123
123
|
text-align: center;
|
|
124
124
|
width: 65px;
|
|
125
|
+
padding-top: 4px;
|
|
126
|
+
padding-bottom: 8px;
|
|
125
127
|
background: $light-blue;
|
|
126
128
|
|
|
127
129
|
a {
|
|
128
130
|
display: block;
|
|
129
|
-
padding-top: 4px;
|
|
130
|
-
padding-bottom: 8px;
|
|
131
131
|
|
|
132
132
|
&:hover {
|
|
133
133
|
text-decoration: none;
|
|
@@ -197,22 +197,20 @@ div#user_info {
|
|
|
197
197
|
text-shadow: 0px 1px 1px #FFFFFF;
|
|
198
198
|
@extend .disable-user-select;
|
|
199
199
|
cursor: default;
|
|
200
|
-
line-height:
|
|
200
|
+
line-height: 22px;
|
|
201
201
|
float: left;
|
|
202
202
|
@extend .top-rounded-border;
|
|
203
203
|
border: $default-border;
|
|
204
204
|
border-bottom-style: none;
|
|
205
205
|
height: 24px;
|
|
206
206
|
margin-right: 1px;
|
|
207
|
-
|
|
208
|
-
.page_name {
|
|
209
|
-
position: relative;
|
|
210
|
-
bottom: 2px;
|
|
211
|
-
}
|
|
212
207
|
}
|
|
213
208
|
|
|
214
209
|
.page_name {
|
|
210
|
+
position: relative;
|
|
215
211
|
margin-right: $default-margin;
|
|
212
|
+
line-height: 27px;
|
|
213
|
+
bottom: 2px;
|
|
216
214
|
}
|
|
217
215
|
|
|
218
216
|
.page_language {
|
|
@@ -230,6 +228,7 @@ div#user_info {
|
|
|
230
228
|
|
|
231
229
|
.subnavi_tab {
|
|
232
230
|
float: left;
|
|
231
|
+
padding: 0px 8px;
|
|
233
232
|
line-height: 21px;
|
|
234
233
|
height: 23px;
|
|
235
234
|
text-shadow: #fff 0 0px 4px;
|
|
@@ -258,7 +257,9 @@ div#user_info {
|
|
|
258
257
|
}
|
|
259
258
|
|
|
260
259
|
&.active {
|
|
260
|
+
float: left;
|
|
261
261
|
position: relative;
|
|
262
|
+
padding: 0px 8px;
|
|
262
263
|
height: 24px;
|
|
263
264
|
color: $text-color;
|
|
264
265
|
background-color: $medium-gray;
|
|
@@ -267,10 +268,6 @@ div#user_info {
|
|
|
267
268
|
cursor: default;
|
|
268
269
|
z-index: 10;
|
|
269
270
|
}
|
|
270
|
-
|
|
271
|
-
> a {
|
|
272
|
-
padding: 0px 8px;
|
|
273
|
-
}
|
|
274
271
|
}
|
|
275
272
|
}
|
|
276
273
|
|
|
@@ -2,13 +2,22 @@
|
|
|
2
2
|
*= require_self
|
|
3
3
|
*/
|
|
4
4
|
@import "alchemy/variables";
|
|
5
|
+
@import "compass/css3";
|
|
6
|
+
|
|
7
|
+
html {
|
|
8
|
+
@include box-shadow(inset 0px 1px 1px $medium-gray);
|
|
9
|
+
@include border-radius($default-border-radius);
|
|
10
|
+
}
|
|
5
11
|
|
|
6
12
|
body {
|
|
7
13
|
background-color: #fff;
|
|
8
14
|
color: $text-color;
|
|
9
15
|
font: $default-font-style;
|
|
10
|
-
margin: 0
|
|
11
|
-
padding-
|
|
16
|
+
margin: 6px 0 !important;
|
|
17
|
+
padding-left: 2*$default-margin !important;
|
|
18
|
+
padding-right: 2*$default-margin !important;
|
|
19
|
+
padding-top: 0px !important;
|
|
20
|
+
padding-bottom: 0px !important;
|
|
12
21
|
}
|
|
13
22
|
|
|
14
23
|
td,th {
|
|
@@ -98,6 +98,8 @@ div.mce-fullscreen {
|
|
|
98
98
|
div.mce-edit-area {
|
|
99
99
|
background: #FFF;
|
|
100
100
|
filter: none;
|
|
101
|
+
border-top: 0;
|
|
102
|
+
@include border-radius($default-border-radius);
|
|
101
103
|
}
|
|
102
104
|
|
|
103
105
|
.mce-statusbar {
|
|
@@ -246,6 +248,11 @@ div.mce-tinymce-inline {
|
|
|
246
248
|
.mce-panel {
|
|
247
249
|
border: 0 solid $default-border-color;
|
|
248
250
|
background-color: $medium-gray;
|
|
251
|
+
@include box-sizing(border-box);
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
.mce-toolbar-grp {
|
|
255
|
+
border-bottom: 1px solid $default-border-color;
|
|
249
256
|
}
|
|
250
257
|
|
|
251
258
|
.mce-floatpanel {
|
|
@@ -1397,6 +1404,7 @@ div.mce-menu .mce-menu-item-sep,.mce-menu-item-sep:hover {
|
|
|
1397
1404
|
|
|
1398
1405
|
i.mce-i-resize {
|
|
1399
1406
|
color: #333;
|
|
1407
|
+
font-size: 16px;
|
|
1400
1408
|
}
|
|
1401
1409
|
|
|
1402
1410
|
.mce-spacer {
|
|
@@ -1555,7 +1563,7 @@ i.mce-i-resize {
|
|
|
1555
1563
|
font-size: 12px;
|
|
1556
1564
|
line-height: 16px;
|
|
1557
1565
|
vertical-align: text-top;
|
|
1558
|
-
-webkit-font-smoothing: antialiased;
|
|
1566
|
+
-webkit-font-smoothing: subpixel-antialiased;
|
|
1559
1567
|
display: inline-block;
|
|
1560
1568
|
background: transparent center center;
|
|
1561
1569
|
width: 16px;
|
|
@@ -40,7 +40,6 @@ module Alchemy
|
|
|
40
40
|
end
|
|
41
41
|
|
|
42
42
|
def update
|
|
43
|
-
@attachment = Attachment.find(params[:id])
|
|
44
43
|
@attachment.update_attributes(attachment_attributes)
|
|
45
44
|
render_errors_or_redirect(
|
|
46
45
|
@attachment,
|
|
@@ -50,7 +49,6 @@ module Alchemy
|
|
|
50
49
|
end
|
|
51
50
|
|
|
52
51
|
def destroy
|
|
53
|
-
@attachment = Attachment.find(params[:id])
|
|
54
52
|
name = @attachment.name
|
|
55
53
|
@attachment.destroy
|
|
56
54
|
@url = admin_attachments_url(
|
|
@@ -76,7 +74,7 @@ module Alchemy
|
|
|
76
74
|
end
|
|
77
75
|
|
|
78
76
|
def archive_overlay
|
|
79
|
-
@content = Content.
|
|
77
|
+
@content = Content.find_by(id: params[:content_id])
|
|
80
78
|
@options = options_from_params
|
|
81
79
|
respond_to do |format|
|
|
82
80
|
format.html { render partial: 'archive_overlay' }
|
|
@@ -90,7 +88,7 @@ module Alchemy
|
|
|
90
88
|
|
|
91
89
|
def set_instance_variables
|
|
92
90
|
@while_assigning = true
|
|
93
|
-
@content = Content.
|
|
91
|
+
@content = Content.find_by(id: params[:content_id])
|
|
94
92
|
@swap = params[:swap]
|
|
95
93
|
@options = options_from_params
|
|
96
94
|
end
|
|
@@ -18,9 +18,13 @@ module Alchemy
|
|
|
18
18
|
if @picture = @essence_picture.picture
|
|
19
19
|
@content = @essence_picture.content
|
|
20
20
|
@options[:format] ||= (configuration(:image_store_format) or 'png')
|
|
21
|
-
|
|
22
|
-
@
|
|
21
|
+
|
|
22
|
+
@min_size = sizes_from_essence_or_params
|
|
23
23
|
@ratio = ratio_from_size_or_params
|
|
24
|
+
infer_width_or_height_from_ratio
|
|
25
|
+
|
|
26
|
+
@default_box = @essence_picture.default_mask(@min_size)
|
|
27
|
+
@initial_box = @essence_picture.cropping_mask || @default_box
|
|
24
28
|
else
|
|
25
29
|
@no_image_notice = _t(:no_image_for_cropper_found)
|
|
26
30
|
end
|
|
@@ -35,15 +39,16 @@ module Alchemy
|
|
|
35
39
|
# When the user press save on the element, it gets saved.
|
|
36
40
|
#
|
|
37
41
|
def assign
|
|
38
|
-
@picture = Picture.
|
|
42
|
+
@picture = Picture.find_by(id: params[:picture_id])
|
|
39
43
|
@content.essence.picture = @picture
|
|
44
|
+
@content.touch # We need to touch manually because its not saved yet.
|
|
40
45
|
@element = @content.element
|
|
41
46
|
@dragable = @options[:grouped]
|
|
42
47
|
@options = @options.merge(dragable: @dragable)
|
|
43
48
|
end
|
|
44
49
|
|
|
45
50
|
def destroy
|
|
46
|
-
@content = Content.
|
|
51
|
+
@content = Content.find_by(id: params[:id])
|
|
47
52
|
@element = @content.element
|
|
48
53
|
@content_id = @content.id
|
|
49
54
|
@content.destroy
|
|
@@ -64,49 +69,40 @@ module Alchemy
|
|
|
64
69
|
@content = Content.find(params[:content_id])
|
|
65
70
|
end
|
|
66
71
|
|
|
72
|
+
# Gets the minimum size of the image to be rendered. the database render_size
|
|
73
|
+
# has preference over the image_size parameter.
|
|
74
|
+
#
|
|
67
75
|
def sizes_from_essence_or_params
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
end
|
|
75
|
-
|
|
76
|
-
def sizes_from_essence
|
|
77
|
-
return if @essence_picture.render_size.blank?
|
|
78
|
-
size_x, size_y = @essence_picture.render_size.split('x').map(&:to_i)
|
|
79
|
-
if size_x.zero? || size_y.nil? || size_y.zero?
|
|
80
|
-
size_x_of_original = @essence_picture.picture.image_file_width
|
|
81
|
-
size_y_of_original = @essence_picture.picture.image_file_height
|
|
82
|
-
size_x = size_x_of_original * size_y / size_y_of_original if size_x.zero?
|
|
83
|
-
size_y = size_y_of_original * size_x / size_x_of_original if size_y.nil? || size_y.zero?
|
|
76
|
+
if @essence_picture.render_size? && !@essence_picture.render_size.blank?
|
|
77
|
+
@essence_picture.sizes_from_string(@essence_picture.render_size)
|
|
78
|
+
elsif @options[:image_size]
|
|
79
|
+
@essence_picture.sizes_from_string(@options[:image_size])
|
|
80
|
+
else
|
|
81
|
+
{ width: 0, height: 0 }
|
|
84
82
|
end
|
|
85
|
-
[size_x, size_y]
|
|
86
83
|
end
|
|
87
84
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
85
|
+
# Infers the aspect ratio from size or parameters. If you don't want a fixed
|
|
86
|
+
# aspect ratio, don't specify a size or only width or height.
|
|
87
|
+
#
|
|
88
|
+
def ratio_from_size_or_params
|
|
89
|
+
if @min_size.has_value?(0) && @options[:fixed_ratio]
|
|
90
|
+
@options[:fixed_ratio].to_f
|
|
91
|
+
elsif !@min_size[:width].zero? && !@min_size[:height].zero?
|
|
92
|
+
@min_size[:width].to_f / @min_size[:height].to_f
|
|
96
93
|
else
|
|
97
|
-
|
|
98
|
-
default_box = @picture.default_mask(sizes_string)
|
|
94
|
+
false
|
|
99
95
|
end
|
|
100
|
-
[initial_box, default_box]
|
|
101
96
|
end
|
|
102
97
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
98
|
+
# Infers the minimum width or height if the aspect ratio and one dimension
|
|
99
|
+
# is specified.
|
|
100
|
+
#
|
|
101
|
+
def infer_width_or_height_from_ratio
|
|
102
|
+
if @min_size[:height].zero?
|
|
103
|
+
@min_size[:height] = (@min_size[:width] / @ratio).to_i if @ratio
|
|
108
104
|
else
|
|
109
|
-
@
|
|
105
|
+
@min_size[:width] = (@min_size[:height] * @ratio).to_i if @ratio
|
|
110
106
|
end
|
|
111
107
|
end
|
|
112
108
|
|