alchemy_cms 4.0.6 → 4.1.0.beta
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.codeclimate.yml +1 -0
- data/.gitignore +1 -0
- data/.localeapp/config.rb +8 -0
- data/.rubocop.yml +26 -13
- data/.travis.yml +12 -14
- data/CHANGELOG.md +5 -24
- data/Gemfile +10 -7
- data/README.md +16 -14
- data/Rakefile +1 -1
- data/alchemy_cms.gemspec +6 -7
- data/app/assets/images/alchemy/alchemy-logo.png +0 -0
- data/app/assets/images/alchemy/alchemy-logo.svg +1 -70
- data/app/assets/images/alchemy/favicon.ico +0 -0
- data/app/assets/images/alchemy/icon.svg +1 -14
- data/app/assets/javascripts/alchemy/admin.js +0 -7
- data/app/assets/javascripts/alchemy/alchemy.base.js.coffee +2 -2
- data/app/assets/javascripts/alchemy/alchemy.buttons.js.coffee +1 -1
- data/app/assets/javascripts/alchemy/alchemy.confirm_dialog.js.coffee +1 -1
- data/app/assets/javascripts/alchemy/alchemy.datepicker.js.coffee +1 -0
- data/app/assets/javascripts/alchemy/alchemy.dialog.js.coffee +19 -6
- data/app/assets/javascripts/alchemy/alchemy.dirty.js.coffee +2 -7
- data/app/assets/javascripts/alchemy/alchemy.element_editors.js.coffee +36 -26
- data/app/assets/javascripts/alchemy/alchemy.elements_window.js.coffee +6 -15
- data/app/assets/javascripts/alchemy/alchemy.file_progress.js.coffee +1 -1
- data/app/assets/javascripts/alchemy/alchemy.growler.js.coffee +8 -11
- data/app/assets/javascripts/alchemy/alchemy.gui.js.coffee +4 -1
- data/app/assets/javascripts/alchemy/alchemy.image_overlay.coffee +1 -1
- data/app/assets/javascripts/alchemy/alchemy.initializer.js.coffee +5 -14
- data/app/assets/javascripts/alchemy/alchemy.preview.js.coffee +54 -75
- data/app/assets/javascripts/alchemy/alchemy.preview_window.js.coffee +4 -13
- data/app/assets/javascripts/alchemy/alchemy.sitemap.js.coffee +1 -0
- data/app/assets/javascripts/alchemy/alchemy.tinymce.js.coffee +12 -6
- data/app/assets/javascripts/alchemy/alchemy.translations.js.coffee +0 -158
- data/app/assets/stylesheets/alchemy/_defaults.scss +0 -2
- data/app/assets/stylesheets/alchemy/_extends.scss +13 -18
- data/app/assets/stylesheets/alchemy/_mixins.scss +72 -46
- data/app/assets/stylesheets/alchemy/_variables.scss +128 -59
- data/app/assets/stylesheets/alchemy/admin.scss +7 -1
- data/app/assets/stylesheets/alchemy/archive.scss +23 -27
- data/app/assets/stylesheets/alchemy/base.scss +5 -355
- data/app/assets/stylesheets/alchemy/buttons.scss +23 -60
- data/app/assets/stylesheets/alchemy/clipboard.scss +26 -0
- data/app/assets/stylesheets/alchemy/dashboard.scss +7 -40
- data/app/assets/stylesheets/alchemy/dialogs.scss +23 -36
- data/app/assets/stylesheets/alchemy/elements.scss +80 -156
- data/app/assets/stylesheets/alchemy/errors.scss +2 -2
- data/app/assets/stylesheets/alchemy/flash.scss +19 -10
- data/app/assets/stylesheets/alchemy/fonts.scss +13 -0
- data/app/assets/stylesheets/alchemy/forms.scss +6 -1
- data/app/assets/stylesheets/alchemy/frame.scss +24 -65
- data/app/assets/stylesheets/alchemy/hints.scss +2 -2
- data/app/assets/stylesheets/alchemy/icons.scss +3 -337
- data/app/assets/stylesheets/alchemy/image_library.scss +9 -10
- data/app/assets/stylesheets/alchemy/jquery-ui.scss +21 -839
- data/app/assets/stylesheets/alchemy/jquery.datetimepicker.scss +32 -57
- data/app/assets/stylesheets/alchemy/lists.scss +4 -8
- data/app/assets/stylesheets/alchemy/menubar.scss +26 -29
- data/app/assets/stylesheets/alchemy/navigation.scss +23 -25
- data/app/assets/stylesheets/alchemy/notices.scss +25 -25
- data/app/assets/stylesheets/alchemy/pagination.scss +12 -7
- data/app/assets/stylesheets/alchemy/preview_window.scss +20 -0
- data/app/assets/stylesheets/alchemy/resource_info.scss +1 -1
- data/app/assets/stylesheets/alchemy/search.scss +19 -15
- data/app/assets/stylesheets/alchemy/selects.scss +63 -32
- data/app/assets/stylesheets/alchemy/sitemap.scss +70 -148
- data/app/assets/stylesheets/alchemy/tables.scss +16 -59
- data/app/assets/stylesheets/alchemy/toolbar.scss +9 -36
- data/app/assets/stylesheets/alchemy/trash.scss +8 -0
- data/app/assets/stylesheets/alchemy/upload.scss +5 -6
- data/app/assets/stylesheets/tinymce/skins/alchemy/content.min.css.scss +1 -0
- data/app/assets/stylesheets/tinymce/skins/alchemy/skin.min.css.scss +78 -43
- data/app/controllers/alchemy/admin/attachments_controller.rb +6 -6
- data/app/controllers/alchemy/admin/base_controller.rb +9 -9
- data/app/controllers/alchemy/admin/contents_controller.rb +0 -17
- data/app/controllers/alchemy/admin/elements_controller.rb +1 -4
- data/app/controllers/alchemy/admin/essence_files_controller.rb +1 -3
- data/app/controllers/alchemy/admin/essence_pictures_controller.rb +1 -3
- data/app/controllers/alchemy/admin/languages_controller.rb +1 -1
- data/app/controllers/alchemy/admin/pictures_controller.rb +5 -5
- data/app/controllers/alchemy/admin/resources_controller.rb +10 -10
- data/app/controllers/alchemy/admin/tags_controller.rb +7 -7
- data/app/controllers/alchemy/api/contents_controller.rb +6 -1
- data/app/controllers/alchemy/api/elements_controller.rb +5 -1
- data/app/controllers/alchemy/api/pages_controller.rb +6 -1
- data/app/controllers/alchemy/base_controller.rb +5 -3
- data/app/controllers/alchemy/pages_controller.rb +1 -1
- data/app/helpers/alchemy/admin/base_helper.rb +14 -15
- data/app/helpers/alchemy/admin/contents_helper.rb +1 -2
- data/app/helpers/alchemy/admin/elements_helper.rb +7 -6
- data/app/helpers/alchemy/admin/tags_helper.rb +3 -4
- data/app/helpers/alchemy/base_helper.rb +35 -5
- data/app/helpers/alchemy/elements_helper.rb +2 -2
- data/app/helpers/alchemy/pages_helper.rb +4 -2
- data/app/models/alchemy/attachment.rb +14 -23
- data/app/models/alchemy/base_record.rb +13 -0
- data/app/models/alchemy/cell.rb +1 -1
- data/app/models/alchemy/content.rb +1 -2
- data/app/models/alchemy/content/factory.rb +1 -1
- data/app/models/alchemy/element.rb +10 -12
- data/app/models/alchemy/essence_boolean.rb +1 -1
- data/app/models/alchemy/essence_date.rb +2 -2
- data/app/models/alchemy/essence_file.rb +1 -1
- data/app/models/alchemy/essence_html.rb +1 -1
- data/app/models/alchemy/essence_link.rb +1 -1
- data/app/models/alchemy/essence_picture.rb +1 -1
- data/app/models/alchemy/essence_richtext.rb +1 -1
- data/app/models/alchemy/essence_select.rb +1 -1
- data/app/models/alchemy/essence_text.rb +1 -1
- data/app/models/alchemy/folded_page.rb +1 -1
- data/app/models/alchemy/language.rb +21 -5
- data/app/models/alchemy/page.rb +17 -5
- data/app/models/alchemy/page/page_elements.rb +14 -2
- data/app/models/alchemy/page/page_naming.rb +17 -4
- data/app/models/alchemy/picture.rb +4 -7
- data/app/models/alchemy/site.rb +3 -3
- data/app/models/alchemy/tag.rb +3 -3
- data/app/models/concerns/alchemy/content_touching.rb +23 -0
- data/app/serializers/alchemy/element_serializer.rb +2 -0
- data/app/views/alchemy/admin/attachments/_archive_overlay.html.erb +1 -1
- data/app/views/alchemy/admin/attachments/_attachment.html.erb +11 -21
- data/app/views/alchemy/admin/attachments/_files_list.html.erb +26 -29
- data/app/views/alchemy/admin/attachments/_filter_bar.html.erb +2 -3
- data/app/views/alchemy/admin/attachments/_overlay_file_list.html.erb +3 -4
- data/app/views/alchemy/admin/attachments/_replace_button.html.erb +2 -3
- data/app/views/alchemy/admin/attachments/_tag_list.html.erb +3 -3
- data/app/views/alchemy/admin/attachments/destroy.js.erb +1 -1
- data/app/views/alchemy/admin/attachments/edit.html.erb +2 -2
- data/app/views/alchemy/admin/attachments/index.html.erb +3 -2
- data/app/views/alchemy/admin/attachments/show.html.erb +7 -8
- data/app/views/alchemy/admin/clipboard/clear.js.erb +1 -1
- data/app/views/alchemy/admin/clipboard/index.html.erb +23 -7
- data/app/views/alchemy/admin/clipboard/insert.js.erb +1 -1
- data/app/views/alchemy/admin/clipboard/remove.js.erb +2 -2
- data/app/views/alchemy/admin/contents/create.js.erb +1 -1
- data/app/views/alchemy/admin/dashboard/_locked_pages.html.erb +9 -6
- data/app/views/alchemy/admin/dashboard/_recent_pages.html.erb +6 -4
- data/app/views/alchemy/admin/dashboard/_sites.html.erb +4 -2
- data/app/views/alchemy/admin/dashboard/_users.html.erb +6 -4
- data/app/views/alchemy/admin/dashboard/index.html.erb +3 -3
- data/app/views/alchemy/admin/dashboard/info.html.erb +6 -7
- data/app/views/alchemy/admin/elements/_add_picture.html.erb +1 -1
- data/app/views/alchemy/admin/elements/_element.html.erb +1 -1
- data/app/views/alchemy/admin/elements/_element_header.html.erb +14 -14
- data/app/views/alchemy/admin/elements/_element_toolbar.html.erb +3 -3
- data/app/views/alchemy/admin/elements/_new_element_form.html.erb +2 -3
- data/app/views/alchemy/admin/elements/index.html.erb +2 -4
- data/app/views/alchemy/admin/elements/new.html.erb +1 -2
- data/app/views/alchemy/admin/elements/publish.js.erb +5 -5
- data/app/views/alchemy/admin/languages/_language.html.erb +4 -9
- data/app/views/alchemy/admin/languages/_table.html.erb +1 -1
- data/app/views/alchemy/admin/languages/index.html.erb +1 -1
- data/app/views/alchemy/admin/layoutpages/_layoutpage.html.erb +5 -5
- data/app/views/alchemy/admin/layoutpages/index.html.erb +5 -4
- data/app/views/alchemy/admin/leave.html.erb +1 -1
- data/app/views/alchemy/admin/legacy_page_urls/_legacy_page_url.html.erb +1 -1
- data/app/views/alchemy/admin/legacy_page_urls/_new.html.erb +1 -1
- data/app/views/alchemy/admin/pages/_form.html.erb +1 -1
- data/app/views/alchemy/admin/pages/_locked_page.html.erb +1 -1
- data/app/views/alchemy/admin/pages/_page.html.erb +31 -23
- data/app/views/alchemy/admin/pages/_page_for_links.html.erb +5 -5
- data/app/views/alchemy/admin/pages/_page_infos.html.erb +3 -3
- data/app/views/alchemy/admin/pages/_publication_fields.html.erb +1 -1
- data/app/views/alchemy/admin/pages/edit.html.erb +22 -21
- data/app/views/alchemy/admin/pages/index.html.erb +5 -21
- data/app/views/alchemy/admin/pages/info.html.erb +5 -5
- data/app/views/alchemy/admin/pages/sort.html.erb +1 -1
- data/app/views/alchemy/admin/pages/unlock.js.erb +2 -4
- data/app/views/alchemy/admin/partials/_flash.html.erb +1 -1
- data/app/views/alchemy/admin/partials/_main_navigation_entry.html.erb +7 -3
- data/app/views/alchemy/admin/partials/_remote_search_form.html.erb +2 -2
- data/app/views/alchemy/admin/partials/_search_form.html.erb +3 -3
- data/app/views/alchemy/admin/pictures/_archive.html.erb +19 -17
- data/app/views/alchemy/admin/pictures/_archive_overlay.html.erb +1 -1
- data/app/views/alchemy/admin/pictures/_filter_and_size_bar.html.erb +13 -13
- data/app/views/alchemy/admin/pictures/_filter_bar.html.erb +2 -3
- data/app/views/alchemy/admin/pictures/_form.html.erb +3 -3
- data/app/views/alchemy/admin/pictures/_overlay_picture_list.html.erb +2 -3
- data/app/views/alchemy/admin/pictures/_picture.html.erb +7 -7
- data/app/views/alchemy/admin/pictures/_tag_list.html.erb +3 -3
- data/app/views/alchemy/admin/pictures/edit_multiple.html.erb +6 -7
- data/app/views/alchemy/admin/pictures/index.html.erb +12 -12
- data/app/views/alchemy/admin/pictures/index.js.erb +0 -1
- data/app/views/alchemy/admin/pictures/show.html.erb +9 -9
- data/app/views/alchemy/admin/resources/_filter_bar.html.erb +2 -3
- data/app/views/alchemy/admin/resources/_form.html.erb +10 -2
- data/app/views/alchemy/admin/resources/_resource.html.erb +9 -14
- data/app/views/alchemy/admin/resources/_table.html.erb +1 -1
- data/app/views/alchemy/admin/resources/_tag_list.html.erb +4 -4
- data/app/views/alchemy/admin/resources/index.html.erb +2 -3
- data/app/views/alchemy/admin/sites/index.html.erb +1 -1
- data/app/views/alchemy/admin/tags/_tag.html.erb +7 -11
- data/app/views/alchemy/admin/tags/index.html.erb +4 -4
- data/app/views/alchemy/admin/trash/index.html.erb +2 -3
- data/app/views/alchemy/admin/uploader/_button.html.erb +1 -2
- data/app/views/alchemy/base/500.html.erb +1 -1
- data/app/views/alchemy/base/permission_denied.js.erb +1 -1
- data/app/views/alchemy/base/redirect.js.erb +1 -2
- data/app/views/alchemy/elements/_editor_not_found.html.erb +2 -3
- data/app/views/alchemy/essences/_essence_date_editor.html.erb +1 -1
- data/app/views/alchemy/essences/_essence_file_editor.html.erb +7 -11
- data/app/views/alchemy/essences/_essence_picture_editor.html.erb +9 -7
- data/app/views/alchemy/essences/shared/_essence_picture_tools.html.erb +1 -1
- data/app/views/alchemy/pages/_meta_data.html.erb +1 -1
- data/app/views/kaminari/alchemy/_first_page.html.erb +7 -3
- data/app/views/kaminari/alchemy/_gap.html.erb +1 -1
- data/app/views/kaminari/alchemy/_last_page.html.erb +7 -3
- data/app/views/kaminari/alchemy/_next_page.html.erb +4 -2
- data/app/views/kaminari/alchemy/_page.html.erb +1 -1
- data/app/views/kaminari/alchemy/_prev_page.html.erb +4 -2
- data/app/views/layouts/alchemy/admin.html.erb +8 -6
- data/bin/rails +2 -2
- data/bin/rspec +1 -1
- data/config/alchemy/config.yml +0 -2
- data/config/alchemy/modules.yml +5 -5
- data/config/initializers/simple_form.rb +45 -8
- data/config/locales/alchemy.en.yml +66 -179
- data/config/routes.rb +1 -1
- data/db/migrate/20180226123013_alchemy_four_point_zero.rb +392 -0
- data/db/migrate/20180227224537_migrate_tags_to_gutentag.rb +41 -0
- data/lib/alchemy/config.rb +0 -2
- data/lib/alchemy/engine.rb +5 -9
- data/lib/alchemy/essence.rb +6 -6
- data/lib/alchemy/filetypes.rb +13 -1
- data/lib/alchemy/forms/builder.rb +5 -3
- data/lib/alchemy/i18n.rb +8 -6
- data/lib/alchemy/modules.rb +1 -1
- data/lib/alchemy/name_conversions.rb +0 -2
- data/lib/alchemy/page_layout.rb +3 -2
- data/lib/alchemy/paths.rb +5 -5
- data/lib/alchemy/resource.rb +9 -9
- data/lib/alchemy/resources_helper.rb +11 -15
- data/lib/alchemy/routing_constraints.rb +2 -2
- data/lib/alchemy/shell.rb +0 -1
- data/lib/alchemy/taggable.rb +40 -0
- data/lib/alchemy/tasks/tidy.rb +1 -9
- data/lib/alchemy/test_support/factories/content_factory.rb +10 -0
- data/lib/alchemy/test_support/factories/element_factory.rb +5 -0
- data/lib/alchemy/test_support/shared_contexts.rb +1 -1
- data/lib/alchemy/tinymce.rb +2 -2
- data/lib/alchemy/upgrader/four_point_one.rb +42 -0
- data/lib/alchemy/upgrader/tasks/harden_acts_as_taggable_on_migrations.rb +27 -0
- data/lib/alchemy/version.rb +1 -1
- data/lib/alchemy_cms.rb +2 -3
- data/lib/rails/generators/alchemy/elements/elements_generator.rb +2 -2
- data/lib/rails/generators/alchemy/essence/essence_generator.rb +1 -1
- data/lib/rails/generators/alchemy/install/install_generator.rb +4 -8
- data/lib/rails/generators/alchemy/module/module_generator.rb +1 -1
- data/lib/rails/generators/alchemy/page_layouts/page_layouts_generator.rb +2 -2
- data/lib/rails/generators/alchemy/site_layouts/site_layouts_generator.rb +2 -2
- data/lib/rails/generators/alchemy/views/views_generator.rb +1 -1
- data/lib/tasks/alchemy/db.rake +2 -1
- data/lib/tasks/alchemy/tidy.rake +0 -6
- data/lib/tasks/alchemy/upgrade.rake +11 -144
- data/vendor/assets/fonts/fa-regular-400.eot +0 -0
- data/vendor/assets/fonts/fa-regular-400.svg +363 -0
- data/vendor/assets/fonts/fa-regular-400.ttf +0 -0
- data/vendor/assets/fonts/fa-regular-400.woff +0 -0
- data/vendor/assets/fonts/fa-regular-400.woff2 +0 -0
- data/vendor/assets/fonts/fa-solid-900.eot +0 -0
- data/vendor/assets/fonts/fa-solid-900.svg +1413 -0
- data/vendor/assets/fonts/fa-solid-900.ttf +0 -0
- data/vendor/assets/fonts/fa-solid-900.woff +0 -0
- data/vendor/assets/fonts/fa-solid-900.woff2 +0 -0
- data/vendor/assets/javascripts/tinymce/license.txt +6 -6
- data/vendor/assets/javascripts/tinymce/tinymce.min.js +2 -15
- data/vendor/assets/stylesheets/fontawesome/_animated.scss +20 -0
- data/vendor/assets/stylesheets/fontawesome/_bordered-pulled.scss +20 -0
- data/vendor/assets/stylesheets/fontawesome/_core.scss +16 -0
- data/vendor/assets/stylesheets/fontawesome/_fixed-width.scss +6 -0
- data/vendor/assets/stylesheets/fontawesome/_icons.scss +792 -0
- data/vendor/assets/stylesheets/fontawesome/_larger.scss +23 -0
- data/vendor/assets/stylesheets/fontawesome/_list.scss +18 -0
- data/vendor/assets/stylesheets/fontawesome/_mixins.scss +57 -0
- data/vendor/assets/stylesheets/fontawesome/_rotated-flipped.scss +23 -0
- data/vendor/assets/stylesheets/fontawesome/_screen-reader.scss +5 -0
- data/vendor/assets/stylesheets/fontawesome/_stacked.scss +31 -0
- data/vendor/assets/stylesheets/fontawesome/_variables.scss +805 -0
- data/vendor/assets/stylesheets/fontawesome/fa-regular.scss +22 -0
- data/vendor/assets/stylesheets/fontawesome/fa-solid.scss +23 -0
- data/vendor/assets/stylesheets/fontawesome/fontawesome.scss +16 -0
- metadata +78 -112
- data/app/assets/fonts/alchemy/icons.eot +0 -0
- data/app/assets/fonts/alchemy/icons.svg +0 -33
- data/app/assets/fonts/alchemy/icons.ttf +0 -0
- data/app/assets/fonts/alchemy/icons.woff +0 -0
- data/app/assets/images/alchemy/icons.png +0 -0
- data/app/assets/images/alchemy/ui-icons_666666_256x240.png +0 -0
- data/app/assets/images/sassy-ie-overlay.png +0 -0
- data/app/assets/javascripts/alchemy/alchemy.jquery_loader.js +0 -42
- data/app/assets/stylesheets/alchemy/icon-font.scss +0 -75
- data/app/assets/stylesheets/alchemy/modules.scss +0 -27
- data/app/models/alchemy.rb +0 -7
- data/app/views/alchemy/admin/contents/destroy.js.erb +0 -4
- data/app/views/alchemy/admin/pictures/flush.js.erb +0 -2
- data/config/locales/alchemy.de.yml +0 -932
- data/config/locales/alchemy.es.yml +0 -960
- data/config/locales/alchemy.fr.yml +0 -938
- data/config/locales/alchemy.it.yml +0 -938
- data/config/locales/alchemy.nl.yml +0 -918
- data/config/locales/alchemy.ru.yml +0 -830
- data/config/locales/simple_form.de.yml +0 -26
- data/config/locales/simple_form.en.yml +0 -25
- data/config/locales/simple_form.es.yml +0 -6
- data/config/locales/simple_form.fr.yml +0 -26
- data/config/locales/simple_form.it.yml +0 -25
- data/config/locales/simple_form.nl.yml +0 -25
- data/config/locales/simple_form.ru.yml +0 -25
- data/db/migrate/20130827094554_alchemy_two_point_six.rb +0 -378
- data/db/migrate/20130828121054_remove_do_not_index_from_alchemy_essence_texts.rb +0 -5
- data/db/migrate/20130828121120_remove_do_not_index_from_alchemy_essence_richtexts.rb +0 -5
- data/db/migrate/20130918201742_add_published_at_to_alchemy_pages.rb +0 -5
- data/db/migrate/20150608204610_add_parent_element_id_to_alchemy_elements.rb +0 -6
- data/db/migrate/20150729151825_add_link_text_to_alchemy_essence_files.rb +0 -5
- data/db/migrate/20150906195818_add_locale_to_alchemy_languages.rb +0 -7
- data/db/migrate/20160108174834_add_timebased_publishing_columns_to_pages.rb +0 -32
- data/db/migrate/20160422195310_add_image_file_format_to_alchemy_pictures.rb +0 -9
- data/db/migrate/20160617224938_change_alchemy_pages_locked_to_locked_at.rb +0 -22
- data/db/migrate/20160912223112_add_index_to_alchemy_pages_rgt.rb +0 -9
- data/db/migrate/20160927205604_add_foreign_key_indices_and_null_constraints.rb +0 -20
- data/db/migrate/20160928080104_add_foreign_keys.rb +0 -27
- data/lib/alchemy/touching.rb +0 -42
- data/lib/alchemy/upgrader/tasks/available_contents_upgrader.rb +0 -161
- data/lib/alchemy/upgrader/tasks/install_asset_manifests.rb +0 -15
- data/lib/alchemy/upgrader/tasks/install_dragonfly_config.rb +0 -14
- data/lib/alchemy/upgrader/tasks/nestable_elements_migration.rb +0 -71
- data/lib/alchemy/upgrader/tasks/three_point_two_task.rb +0 -31
- data/lib/alchemy/upgrader/three_point_five.rb +0 -32
- data/lib/alchemy/upgrader/three_point_four.rb +0 -52
- data/lib/alchemy/upgrader/three_point_one.rb +0 -54
- data/lib/alchemy/upgrader/three_point_three.rb +0 -50
- data/lib/alchemy/upgrader/three_point_two.rb +0 -40
- data/lib/alchemy/upgrader/three_point_zero.rb +0 -92
- data/vendor/assets/javascripts/jquery_plugins/jquery.floatThead.min.js +0 -3
- data/vendor/assets/javascripts/tinymce/langs/de.js +0 -219
- data/vendor/assets/javascripts/tinymce/langs/es.js +0 -219
- data/vendor/assets/javascripts/tinymce/langs/fr.js +0 -219
- data/vendor/assets/javascripts/tinymce/langs/it.js +0 -219
- data/vendor/assets/javascripts/tinymce/langs/nl.js +0 -219
- data/vendor/assets/javascripts/tinymce/langs/ru.js +0 -219
@@ -4,7 +4,7 @@
|
|
4
4
|
'file_type_filter',
|
5
5
|
options_for_select(
|
6
6
|
Alchemy::Attachment.file_types_for_select,
|
7
|
-
|
7
|
+
search_filter_params[:file_type]
|
8
8
|
),
|
9
9
|
include_blank: Alchemy.t('Show all files'),
|
10
10
|
data: { remote: !!request.xhr? },
|
@@ -20,9 +20,8 @@
|
|
20
20
|
if ($this.data('remote') === true) {
|
21
21
|
$.get(url, {file_type: $this.val()}, null, 'script');
|
22
22
|
} else {
|
23
|
-
Alchemy.pleaseWaitOverlay();
|
24
23
|
delimiter = url.match(/\?/) ? '&' : '?';
|
25
|
-
|
24
|
+
Turbolinks.visit(url + delimiter + 'file_type=' + encodeURIComponent($this.val()));
|
26
25
|
}
|
27
26
|
return false;
|
28
27
|
});
|
@@ -1,12 +1,11 @@
|
|
1
1
|
<% if @attachments.empty? %>
|
2
|
-
|
3
|
-
|
4
|
-
<% if params[:q].present? %>
|
2
|
+
<%= render_message do %>
|
3
|
+
<% if search_filter_params[:q].present? %>
|
5
4
|
<%= Alchemy.t(:no_search_results) %>
|
6
5
|
<% else %>
|
7
6
|
<%= Alchemy.t(:no_files_in_archive) %>
|
8
7
|
<% end %>
|
9
|
-
|
8
|
+
<% end %>
|
10
9
|
<% else %>
|
11
10
|
<ul class="list">
|
12
11
|
<li class="list-header">
|
@@ -4,7 +4,7 @@
|
|
4
4
|
name: "#{f.object_name}[#{file_attribute}]",
|
5
5
|
id: "replace_#{dom_id(object)}" %>
|
6
6
|
<%= label_tag "replace_#{dom_id(object)}", title: Alchemy.t(:replace_file) do %>
|
7
|
-
<%= render_icon :
|
7
|
+
<%= render_icon :sync %>
|
8
8
|
<% end %>
|
9
9
|
<% end %>
|
10
10
|
|
@@ -17,8 +17,7 @@
|
|
17
17
|
selector: '#replace_<%= dom_id(object) %>',
|
18
18
|
file_types: '<%= file_types.join("|") %>',
|
19
19
|
complete: function() {
|
20
|
-
|
21
|
-
window.location.href = '<%= redirect_url.html_safe %>';
|
20
|
+
Turbolinks.visit('<%= redirect_url.html_safe %>');
|
22
21
|
}
|
23
22
|
};
|
24
23
|
Alchemy.Uploader(options);
|
@@ -4,12 +4,12 @@
|
|
4
4
|
<ul>
|
5
5
|
<%= render_tag_list('Alchemy::Attachment') %>
|
6
6
|
</ul>
|
7
|
-
<% if
|
7
|
+
<% if search_filter_params[:tagged_with].present? %>
|
8
8
|
<%= link_to(
|
9
|
-
render_icon('
|
9
|
+
render_icon(:times, size: 'xs') + Alchemy.t('Remove tag filter'),
|
10
10
|
url_for(search_filter_params.except(:tagged_with)),
|
11
11
|
remote: request.xhr?,
|
12
|
-
class: 'button small with_icon
|
12
|
+
class: 'secondary button small with_icon'
|
13
13
|
) %>
|
14
14
|
<% end %>
|
15
15
|
<% end %>
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
Turbolinks.visit('<%= @url %>');
|
@@ -1,8 +1,8 @@
|
|
1
1
|
<%= alchemy_form_for([:admin, @attachment],
|
2
|
-
url: {action: :update, q:
|
2
|
+
url: {action: :update, q: search_filter_params[:q], page: params[:page]}) do |f| -%>
|
3
3
|
<%= f.input :name, input_html: {autofocus: true} %>
|
4
4
|
<%= f.input :file_name, input_html: {autofocus: true}, hint: Alchemy.t(:attachment_filename_notice) %>
|
5
|
-
<div class="input string">
|
5
|
+
<div class="input string autocomplete_tag_list">
|
6
6
|
<%= f.label :tag_list %>
|
7
7
|
<%= render 'alchemy/admin/partials/autocomplete_tag_list', f: f %>
|
8
8
|
</div>
|
@@ -7,7 +7,8 @@
|
|
7
7
|
file_attribute: 'file' %>
|
8
8
|
<% end %>
|
9
9
|
</div>
|
10
|
-
<%= render 'alchemy/admin/partials/search_form'
|
10
|
+
<%= render 'alchemy/admin/partials/search_form',
|
11
|
+
additional_params: [:file_type, :tagged_with] %>
|
11
12
|
<% end %>
|
12
13
|
|
13
14
|
<div id="archive_all" class="with_tag_filter resources-table-wrapper">
|
@@ -18,7 +19,7 @@
|
|
18
19
|
<%= render 'filter_bar' %>
|
19
20
|
|
20
21
|
<% if Alchemy::Attachment.tag_counts.any? %>
|
21
|
-
<div class="<%=
|
22
|
+
<div class="tag-list with_filter_bar<%= ' filtered' if search_filter_params[:tagged_with].present? %>">
|
22
23
|
<%= render 'tag_list' %>
|
23
24
|
</div>
|
24
25
|
<% end %>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<div class="resource_info">
|
2
2
|
<div class="value">
|
3
3
|
<label>
|
4
|
-
<%= render_icon @attachment.icon_css_class %>
|
4
|
+
<%= render_icon @attachment.icon_css_class, style: 'regular', size: 'lg' %>
|
5
5
|
</label>
|
6
6
|
<p><%= @attachment.file_name %></p>
|
7
7
|
</div>
|
@@ -9,33 +9,32 @@
|
|
9
9
|
<label><%= Alchemy::Attachment.human_attribute_name(:url) %></label>
|
10
10
|
<p><%= alchemy.show_attachment_url(@attachment) %></p>
|
11
11
|
<a data-clipboard-text="<%= alchemy.show_attachment_url(@attachment) %>" class="icon_button--right">
|
12
|
-
<%= render_icon(
|
12
|
+
<%= render_icon(:clipboard, style: 'regular') %>
|
13
13
|
</a>
|
14
14
|
</div>
|
15
15
|
<div class="value with-icon">
|
16
16
|
<label><%= Alchemy::Attachment.human_attribute_name(:download_url) %></label>
|
17
17
|
<p><%= alchemy.download_attachment_url(@attachment) %></p>
|
18
18
|
<a data-clipboard-text="<%= alchemy.download_attachment_url(@attachment) %>" class="icon_button--right">
|
19
|
-
<%= render_icon(
|
19
|
+
<%= render_icon(:clipboard, style: 'regular') %>
|
20
20
|
</a>
|
21
21
|
</div>
|
22
22
|
</div>
|
23
23
|
|
24
24
|
<% case @attachment.icon_css_class %>
|
25
|
-
<% when "image" %>
|
25
|
+
<% when "file-image" %>
|
26
26
|
<div class="attachment_preview_container image-preview">
|
27
27
|
<%= image_tag(alchemy.show_attachment_path(@attachment), class: "full_width") %>
|
28
28
|
</div>
|
29
|
-
<% when "audio" %>
|
29
|
+
<% when "file-audio" %>
|
30
30
|
<div class="attachment_preview_container player-preview">
|
31
31
|
<%= audio_tag(alchemy.show_attachment_path(@attachment), preload: "none", controls: true, class: "full_width") %>
|
32
32
|
</div>
|
33
|
-
<% when "video" %>
|
33
|
+
<% when "file-video" %>
|
34
34
|
<div class="attachment_preview_container player-preview">
|
35
35
|
<%= video_tag(alchemy.show_attachment_path(@attachment), preload: "metadata", controls: true, class: "full_width") %>
|
36
36
|
</div>
|
37
|
-
<% when "
|
38
|
-
<% else %>
|
37
|
+
<% when "file-pdf" %>
|
39
38
|
<iframe src="<%= alchemy.show_attachment_path(@attachment) %>" frameborder=0 class="full-iframe">
|
40
39
|
Your browser does not support frames.
|
41
40
|
</iframe>
|
@@ -1,3 +1,3 @@
|
|
1
1
|
$("#clipboard_items").replaceWith("<%= j render_message { Alchemy.t('No items in your clipboard') } -%>");
|
2
|
-
$('#clipboard_button .icon
|
2
|
+
$('#clipboard_button .icon').removeClass('fa-paste').addClass('fa-clipboard');
|
3
3
|
Alchemy.pleaseWaitOverlay(false);
|
@@ -1,22 +1,38 @@
|
|
1
1
|
<%- if @clipboard_items.blank? -%>
|
2
|
-
|
3
|
-
<%= render_icon('info') %>
|
2
|
+
<%= render_message do %>
|
4
3
|
<%= Alchemy.t('No items in your clipboard') %>
|
5
|
-
|
4
|
+
<% end %>
|
6
5
|
<%- else -%>
|
7
6
|
<div id="clipboard_items">
|
8
7
|
<ul>
|
9
8
|
<%- @clipboard_items.each do |item| -%>
|
10
9
|
<% item_class = item.class.name.demodulize.underscore.pluralize %>
|
11
10
|
<li id="clipboard_item_<%= item.id -%>" class="<%= item_class -%>">
|
12
|
-
|
13
|
-
|
14
|
-
|
11
|
+
<% if item_class == 'pages' %>
|
12
|
+
<%= render_icon(:file, style: 'regular') %>
|
13
|
+
<%= item.name %>
|
14
|
+
<% else %>
|
15
|
+
<% if item.public? %>
|
16
|
+
<%= render_icon('window-maximize', style: 'regular', class: 'element') %>
|
17
|
+
<% else %>
|
18
|
+
<%= render_icon('window-close', class: 'element') %>
|
19
|
+
<% end %>
|
20
|
+
<%= item.display_name_with_preview_text(60) %>
|
21
|
+
<% end %>
|
22
|
+
<span class="float_right">
|
23
|
+
<%= link_to render_icon(:times, size: 'xs'),
|
24
|
+
alchemy.remove_admin_clipboard_path(remarkable_type: item_class, remarkable_id: item.id),
|
25
|
+
remote: true, method: 'delete',
|
26
|
+
title: Alchemy.t('Remove item from clipboard') %>
|
27
|
+
</span>
|
15
28
|
</li>
|
16
29
|
<%- end -%>
|
17
30
|
</ul>
|
18
31
|
<p>
|
19
|
-
<%= link_to_confirm_dialog
|
32
|
+
<%= link_to_confirm_dialog Alchemy.t('clear clipboard'),
|
33
|
+
Alchemy.t('Do you really want to clear the clipboard?'),
|
34
|
+
alchemy.clear_admin_clipboard_path(remarkable_type: params[:remarkable_type]),
|
35
|
+
class: 'button' %>
|
20
36
|
</p>
|
21
37
|
</div>
|
22
38
|
<%- end -%>
|
@@ -3,8 +3,8 @@
|
|
3
3
|
$("#clipboard_item_<%= @item.id -%>").remove();
|
4
4
|
Alchemy.growl('<%= Alchemy.t("item removed from clipboard", :name => @item.class.to_s == "Element" ? @item.display_name_with_preview_text : @item.name) -%>');
|
5
5
|
<%- if @clipboard.blank? -%>
|
6
|
-
$('#clipboard_button .icon
|
7
|
-
$("#clipboard_items").replaceWith("
|
6
|
+
$('#clipboard_button .icon').removeClass('fa-paste').addClass('fa-clipboard');
|
7
|
+
$("#clipboard_items").replaceWith("<%= j render_message { Alchemy.t('No items in your clipboard') } %>");
|
8
8
|
<%- end -%>
|
9
9
|
|
10
10
|
})(jQuery);
|
@@ -23,7 +23,7 @@ $('#picture_to_assign_<%= @content.ingredient.id %> a').attr('href', '#').off('c
|
|
23
23
|
<% if @gallery_pictures %>
|
24
24
|
|
25
25
|
<% if @gallery_pictures.size > 1 %>
|
26
|
-
$('#element_<%= @element.id %>_contents .
|
26
|
+
$('#element_<%= @element.id %>_contents .essence_picture').addClass('draggable_picture');
|
27
27
|
<% end %>
|
28
28
|
|
29
29
|
<% if !max_image_count.blank? && @gallery_pictures.size >= max_image_count %>
|
@@ -1,13 +1,16 @@
|
|
1
|
+
<% colspan = multi_site? ? 5 : 4 %>
|
1
2
|
<div class="widget">
|
2
|
-
<
|
3
|
-
|
3
|
+
<table class="list">
|
4
|
+
<tr>
|
5
|
+
<th colspan="<%= colspan %>"><%= Alchemy.t('Currently locked pages') %></th>
|
6
|
+
</tr>
|
4
7
|
<% if @all_locked_pages.blank? %>
|
5
|
-
<tr
|
6
|
-
<td><%= Alchemy.t('no pages') %></td>
|
8
|
+
<tr>
|
9
|
+
<td colspan="<%= colspan %>"><%= Alchemy.t('no pages') %></td>
|
7
10
|
</tr>
|
8
11
|
<% else %>
|
9
12
|
<% @all_locked_pages.each do |page| %>
|
10
|
-
<tr class="<%= cycle('even', 'odd', :
|
13
|
+
<tr class="<%= cycle('even', 'odd', name: 'locked_pages') %>">
|
11
14
|
<td>
|
12
15
|
<% if current_alchemy_user.id == page.locked_by %>
|
13
16
|
<%= link_to(page.name, alchemy.edit_admin_page_path(page)) %>
|
@@ -36,7 +39,7 @@
|
|
36
39
|
<% if current_alchemy_user.id == page.locked_by %>
|
37
40
|
<%= form_tag(alchemy.unlock_admin_page_path(page, :redirect_to => alchemy.admin_dashboard_url)) do %>
|
38
41
|
<button class="icon_button small" title="<%= Alchemy.t(:explain_unlocking) %>">
|
39
|
-
<%= render_icon(
|
42
|
+
<%= render_icon(:times, size: 'xs') %>
|
40
43
|
</button>
|
41
44
|
<% end %>
|
42
45
|
<% end %>
|
@@ -1,9 +1,11 @@
|
|
1
1
|
<div class="widget">
|
2
|
-
<
|
3
|
-
|
2
|
+
<table class="list">
|
3
|
+
<tr>
|
4
|
+
<th colspan="4"><%= Alchemy.t('Your last updated pages') %></th>
|
5
|
+
</tr>
|
4
6
|
<% if @last_edited_pages.blank? %>
|
5
7
|
<tr class="even">
|
6
|
-
<td><%= Alchemy.t('no pages') %></td>
|
8
|
+
<td colspan="4"><%= Alchemy.t('no pages') %></td>
|
7
9
|
</tr>
|
8
10
|
<% else %>
|
9
11
|
<% @last_edited_pages.each do |page| %>
|
@@ -22,7 +24,7 @@
|
|
22
24
|
<% end %>
|
23
25
|
</td>
|
24
26
|
<td>
|
25
|
-
<small><%= l(page.updated_at, format: :
|
27
|
+
<small><%= l(page.updated_at, format: :'alchemy.short_datetime') %></small>
|
26
28
|
</td>
|
27
29
|
</tr>
|
28
30
|
<% end %>
|
@@ -1,6 +1,8 @@
|
|
1
1
|
<div class="widget sites">
|
2
|
-
<
|
3
|
-
|
2
|
+
<table class="list">
|
3
|
+
<tr>
|
4
|
+
<th colspan="2"><%= Alchemy::Site.model_name.human(count: 2) %></th>
|
5
|
+
</tr>
|
4
6
|
<% @sites.each do |site| %>
|
5
7
|
<tr class="<%= cycle('even', 'odd', name: 'sites') %>">
|
6
8
|
<td>
|
@@ -1,9 +1,11 @@
|
|
1
1
|
<div class="widget">
|
2
|
-
<
|
3
|
-
|
2
|
+
<table class="list">
|
3
|
+
<tr>
|
4
|
+
<th colspan="2"><%= Alchemy.t('Who else is online') %></th>
|
5
|
+
</tr>
|
4
6
|
<% if @online_users.blank? %>
|
5
|
-
<tr
|
6
|
-
<td><%= Alchemy.t('no users') %></td>
|
7
|
+
<tr>
|
8
|
+
<td colspan="2"><%= Alchemy.t('no users') %></td>
|
7
9
|
</tr>
|
8
10
|
<% else %>
|
9
11
|
<% @online_users.each do |user| %>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<%= toolbar(
|
2
2
|
buttons: [
|
3
3
|
{
|
4
|
-
icon: 'info',
|
4
|
+
icon: 'info-circle',
|
5
5
|
label: Alchemy.t(:info),
|
6
6
|
url: alchemy.dashboard_info_path,
|
7
7
|
title: Alchemy.t(:info),
|
@@ -26,7 +26,7 @@
|
|
26
26
|
</h1>
|
27
27
|
<% if @last_sign_at %>
|
28
28
|
<p>
|
29
|
-
<small><%= Alchemy.t('Your last login was on', time: l(@last_sign_at)) %></small>
|
29
|
+
<small><%= Alchemy.t('Your last login was on', time: l(@last_sign_at, format: :'alchemy.default')) %></small>
|
30
30
|
</p>
|
31
31
|
<% end %>
|
32
32
|
<div class="column left">
|
@@ -34,7 +34,7 @@
|
|
34
34
|
<%= render 'recent_pages' %>
|
35
35
|
</div>
|
36
36
|
<div class="column right">
|
37
|
-
<% if @online_users %>
|
37
|
+
<% if @online_users.any? %>
|
38
38
|
<%= render 'users' %>
|
39
39
|
<% end %>
|
40
40
|
<% if multi_site? %>
|
@@ -5,21 +5,20 @@
|
|
5
5
|
<% if can? :update_check, :alchemy_admin_dashboard %>
|
6
6
|
<p class="center" id="update_check">
|
7
7
|
<span id="update_available">
|
8
|
-
<%= render_icon(
|
8
|
+
<%= render_icon(:exclamation) %>
|
9
9
|
<%= Alchemy.t 'Update available' %>
|
10
10
|
</span>
|
11
11
|
<span id="up_to_date">
|
12
|
-
<%= render_icon(
|
12
|
+
<%= render_icon(:check) %>
|
13
13
|
<%= Alchemy.t 'Alchemy is up to date' %>
|
14
14
|
</span>
|
15
15
|
<span id="error">
|
16
|
-
<%= render_icon(
|
16
|
+
<%= render_icon(:exclamation) %>
|
17
17
|
<%= Alchemy.t 'Update status unavailable' %>
|
18
18
|
</span>
|
19
19
|
</p>
|
20
20
|
<% end %>
|
21
|
-
|
22
|
-
<%= render_icon('info') %>
|
21
|
+
<%= render_message do %>
|
23
22
|
<p><%= Alchemy.t('Alchemy is open software and itself uses open software and free resources:') %></p>
|
24
23
|
<ul>
|
25
24
|
<li>
|
@@ -38,10 +37,10 @@
|
|
38
37
|
<a href="http://blueimp.github.io/jQuery-File-Upload/" target="_blank">jQuery File Upload</a>
|
39
38
|
</li>
|
40
39
|
<li>
|
41
|
-
<a href="
|
40
|
+
<a href="https://fontawesome.com" target="_blank">FontAwesome Icons</a>
|
42
41
|
</li>
|
43
42
|
</ul>
|
44
|
-
|
43
|
+
<% end %>
|
45
44
|
<% if can? :update_check, :alchemy_admin_dashboard %>
|
46
45
|
<script type="text/javascript">
|
47
46
|
(function() {
|
@@ -39,7 +39,7 @@
|
|
39
39
|
<% end %>
|
40
40
|
|
41
41
|
<% if element.expanded? %>
|
42
|
-
<%= link_to_dialog render_icon(:
|
42
|
+
<%= link_to_dialog render_icon(:plus, size: 'xs') + Alchemy.t("New Element"),
|
43
43
|
alchemy.new_admin_element_path(
|
44
44
|
parent_element_id: element.id,
|
45
45
|
page_id: element.page.id
|
@@ -1,13 +1,13 @@
|
|
1
1
|
<div class="element-header<%= ' has-hint' if element.has_hint? %>">
|
2
2
|
<span class="element-handle">
|
3
|
-
<%= render_icon(:element) %>
|
4
3
|
<% if element.definition.blank? %>
|
5
|
-
<%= hint_with_tooltip(
|
6
|
-
Alchemy.t(:element_definition_missing),
|
7
|
-
class: 'warning icon'
|
8
|
-
) %>
|
4
|
+
<%= hint_with_tooltip Alchemy.t(:element_definition_missing) %>
|
9
5
|
<% else %>
|
10
|
-
|
6
|
+
<% if element.public? %>
|
7
|
+
<%= render_icon('window-maximize', style: 'regular', class: 'element') %>
|
8
|
+
<% else %>
|
9
|
+
<%= render_icon('window-close', class: 'element') %>
|
10
|
+
<% end %>
|
11
11
|
<% end %>
|
12
12
|
</span>
|
13
13
|
<span class="element-title">
|
@@ -17,12 +17,12 @@
|
|
17
17
|
</span>
|
18
18
|
</span>
|
19
19
|
<%= render_hint_for(element) unless element.trashed? %>
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
20
|
+
<%= link_to '#', {
|
21
|
+
'data-element-toggle' => element.id,
|
22
|
+
title: Alchemy.t(element.folded? ? :show_element_content : :hide_element_content),
|
23
|
+
id: "element_#{element.id}_folder",
|
24
|
+
class: "ajax-folder"
|
25
|
+
} do %>
|
26
|
+
<%= render_icon element.folded? ? 'plus-square' : 'minus-square' %>
|
27
|
+
<% end %>
|
28
28
|
</div>
|