glebtv-ckeditor 4.11.1 → 4.13.0
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/Gemfile +13 -12
- data/README.md +358 -2
- data/Rakefile +17 -8
- data/app/assets/javascripts/ckeditor/filebrowser/javascripts/fileuploader.js +313 -317
- data/app/controllers/ckeditor/application_controller.rb +3 -0
- data/app/controllers/ckeditor/attachment_files_controller.rb +2 -2
- data/app/controllers/ckeditor/pictures_controller.rb +2 -2
- data/app/helpers/ckeditor/application_helper.rb +2 -0
- data/app/views/ckeditor/shared/_asset.html.erb +1 -3
- data/app/views/ckeditor/shared/_asset_tmpl.html.erb +0 -2
- data/config/locales/da.ckeditor.yml +9 -0
- data/config/routes.rb +2 -0
- data/lib/ckeditor.rb +13 -19
- data/lib/ckeditor/asset_response.rb +17 -10
- data/lib/ckeditor/backend/active_storage.rb +68 -0
- data/lib/ckeditor/backend/carrierwave.rb +2 -12
- data/lib/ckeditor/backend/dragonfly.rb +2 -0
- data/lib/ckeditor/backend/paperclip.rb +2 -15
- data/lib/ckeditor/backend/shrine.rb +29 -0
- data/lib/ckeditor/helpers/controllers.rb +2 -0
- data/lib/ckeditor/helpers/form_builder.rb +2 -0
- data/lib/ckeditor/helpers/form_helper.rb +2 -0
- data/lib/ckeditor/helpers/view_helper.rb +2 -0
- data/lib/ckeditor/hooks/cancan.rb +4 -1
- data/lib/ckeditor/hooks/formtastic.rb +2 -0
- data/lib/ckeditor/hooks/pundit.rb +2 -0
- data/lib/ckeditor/hooks/simple_form.rb +2 -0
- data/lib/ckeditor/http.rb +14 -9
- data/lib/ckeditor/orm/active_record.rb +2 -0
- data/lib/ckeditor/orm/base.rb +11 -2
- data/lib/ckeditor/orm/mongoid.rb +2 -0
- data/lib/ckeditor/paginatable.rb +2 -0
- data/lib/ckeditor/rails.rb +2 -0
- data/lib/ckeditor/rails_admin/field.rb +16 -3
- data/lib/ckeditor/text_area.rb +2 -0
- data/lib/ckeditor/utils.rb +3 -16
- data/lib/ckeditor/utils/javascript_code.rb +1 -1
- data/lib/ckeditor/version.rb +4 -2
- data/lib/generators/ckeditor/install_generator.rb +16 -19
- data/lib/generators/ckeditor/pundit_policy_generator.rb +2 -0
- data/lib/generators/ckeditor/templates/active_record/active_storage/ckeditor/asset.rb +10 -0
- data/lib/generators/ckeditor/templates/active_record/{refile → active_storage}/ckeditor/attachment_file.rb +3 -1
- data/lib/generators/ckeditor/templates/active_record/active_storage/ckeditor/picture.rb +13 -0
- data/lib/generators/ckeditor/templates/active_record/{carrierwave/migration_versioned.rb → active_storage/migration.rb} +8 -5
- data/lib/generators/ckeditor/templates/active_record/carrierwave/ckeditor/asset.rb +2 -0
- data/lib/generators/ckeditor/templates/active_record/carrierwave/ckeditor/attachment_file.rb +2 -0
- data/lib/generators/ckeditor/templates/active_record/carrierwave/ckeditor/picture.rb +2 -0
- data/lib/generators/ckeditor/templates/active_record/carrierwave/migration.rb +7 -5
- data/lib/generators/ckeditor/templates/active_record/dragonfly/ckeditor/asset.rb +2 -0
- data/lib/generators/ckeditor/templates/active_record/dragonfly/ckeditor/attachment_file.rb +2 -0
- data/lib/generators/ckeditor/templates/active_record/dragonfly/ckeditor/picture.rb +2 -0
- data/lib/generators/ckeditor/templates/active_record/dragonfly/migration.rb +7 -5
- data/lib/generators/ckeditor/templates/active_record/paperclip/ckeditor/asset.rb +2 -0
- data/lib/generators/ckeditor/templates/active_record/paperclip/ckeditor/attachment_file.rb +2 -0
- data/lib/generators/ckeditor/templates/active_record/paperclip/ckeditor/picture.rb +2 -0
- data/lib/generators/ckeditor/templates/active_record/paperclip/migration.rb +8 -6
- data/lib/generators/ckeditor/templates/active_record/{refile → shrine}/ckeditor/asset.rb +3 -1
- data/lib/generators/ckeditor/templates/active_record/shrine/ckeditor/attachment_file.rb +21 -0
- data/lib/generators/ckeditor/templates/active_record/shrine/ckeditor/picture.rb +49 -0
- data/lib/generators/ckeditor/templates/active_record/shrine/migration.rb +22 -0
- data/lib/generators/ckeditor/templates/base/carrierwave/uploaders/ckeditor_attachment_file_uploader.rb +2 -1
- data/lib/generators/ckeditor/templates/base/carrierwave/uploaders/ckeditor_picture_uploader.rb +2 -3
- data/lib/generators/ckeditor/templates/base/dragonfly/initializer.rb +2 -0
- data/lib/generators/ckeditor/templates/base/shrine/initializer.rb +25 -0
- data/lib/generators/ckeditor/templates/ckeditor.rb +3 -6
- data/lib/generators/ckeditor/templates/mongoid/carrierwave/ckeditor/asset.rb +2 -0
- data/lib/generators/ckeditor/templates/mongoid/carrierwave/ckeditor/attachment_file.rb +2 -0
- data/lib/generators/ckeditor/templates/mongoid/carrierwave/ckeditor/picture.rb +2 -0
- data/lib/generators/ckeditor/templates/mongoid/paperclip/ckeditor/asset.rb +2 -0
- data/lib/generators/ckeditor/templates/mongoid/paperclip/ckeditor/attachment_file.rb +2 -0
- data/lib/generators/ckeditor/templates/mongoid/paperclip/ckeditor/picture.rb +2 -0
- data/lib/generators/ckeditor/templates/mongoid/shrine/ckeditor/asset.rb +8 -0
- data/lib/generators/ckeditor/templates/mongoid/shrine/ckeditor/attachment_file.rb +21 -0
- data/lib/generators/ckeditor/templates/mongoid/shrine/ckeditor/picture.rb +47 -0
- data/lib/generators/ckeditor/templates/pundit_policy/attachment_file_policy.rb +2 -0
- data/lib/generators/ckeditor/templates/pundit_policy/picture_policy.rb +2 -0
- data/lib/tasks/ckeditor.rake +2 -0
- data/test/controllers/attachment_files_controller_test.rb +17 -15
- data/test/controllers/pictures_controller_test.rb +17 -15
- data/test/dummy/Rakefile +2 -0
- data/test/dummy/app/assets/javascripts/application.js +0 -2
- data/test/dummy/app/controllers/application_controller.rb +2 -0
- data/test/dummy/app/controllers/posts_controller.rb +2 -0
- data/test/dummy/app/helpers/application_helper.rb +2 -0
- data/test/dummy/app/helpers/posts_helper.rb +2 -0
- data/test/dummy/app/models/post.rb +2 -0
- data/test/dummy/app/views/posts/index.html.erb +0 -3
- data/test/dummy/app/views/posts/show.html.erb +3 -0
- data/test/dummy/config.ru +2 -0
- data/test/dummy/config/application.rb +5 -1
- data/test/dummy/config/boot.rb +2 -0
- data/test/dummy/config/environment.rb +2 -0
- data/test/dummy/config/environments/development.rb +2 -0
- data/test/dummy/config/environments/production.rb +2 -0
- data/test/dummy/config/environments/test.rb +5 -3
- data/test/dummy/config/initializers/assets.rb +2 -0
- data/test/dummy/config/initializers/backtrace_silencers.rb +2 -0
- data/test/dummy/config/initializers/ckeditor.rb +2 -0
- data/test/dummy/config/initializers/cookies_serializer.rb +2 -0
- data/test/dummy/config/initializers/inflections.rb +2 -0
- data/test/dummy/config/initializers/mime_types.rb +2 -0
- data/test/dummy/config/initializers/paperclip.rb +2 -0
- data/test/dummy/config/initializers/session_store.rb +2 -0
- data/test/dummy/config/initializers/wrap_parameters.rb +2 -0
- data/test/dummy/config/routes.rb +2 -0
- data/test/dummy/config/storage.yml +3 -0
- data/test/dummy/db/migrate/20110623120047_create_posts.rb +5 -3
- data/test/dummy/db/migrate/20170806125915_create_active_storage_tables.rb +26 -0
- data/test/dummy/script/rails +2 -0
- data/test/functional/posts_controller_test.rb +18 -16
- data/test/generators/install_generator_test.rb +58 -56
- data/test/integration/navigation_test.rb +2 -0
- data/test/models/attachment_file_test.rb +4 -4
- data/test/models/ckeditor_test.rb +3 -21
- data/test/models/picture_test.rb +12 -10
- data/test/models/utils_test.rb +2 -0
- data/test/orm/active_record.rb +11 -1
- data/test/orm/mongoid.rb +2 -0
- data/test/support/helpers.rb +2 -0
- data/test/support/integration_case.rb +2 -0
- data/test/test_helper.rb +15 -9
- data/vendor/assets/javascripts/ckeditor/CHANGES.md +178 -2
- data/vendor/assets/javascripts/ckeditor/LICENSE.md +3 -2
- data/vendor/assets/javascripts/ckeditor/README.md +6 -6
- data/vendor/assets/javascripts/ckeditor/adapters/jquery.js +6 -6
- data/vendor/assets/javascripts/ckeditor/build-config.js +3 -4
- data/vendor/assets/javascripts/ckeditor/ckeditor.js +851 -816
- data/vendor/assets/javascripts/ckeditor/config.js +1 -1
- data/vendor/assets/javascripts/ckeditor/contents.css +1 -1
- data/vendor/assets/javascripts/ckeditor/lang/en.js +1 -1
- data/vendor/assets/javascripts/ckeditor/lang/ru.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/en.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/about/dialogs/about.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/clipboard/dialogs/paste.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/css/codemirror.min.css +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.addons.min.js +4 -2
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.addons.search.min.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.min.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.bbcodemixed.min.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.handlebars.min.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.htmlmixed.min.js +2 -2
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.javascript.min.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.php.min.js +3 -3
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.twig.min.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/plugin.js +7 -3
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/3024-day.css +41 -41
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/3024-night.css +39 -39
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/abcdef.css +32 -32
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/ambiance-mobile.css +5 -5
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/ambiance.css +74 -74
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/base16-dark.css +38 -38
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/base16-light.css +38 -38
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/bespin.css +34 -34
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/blackboard.css +32 -32
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/cobalt.css +25 -25
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/colorforth.css +33 -33
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/darcula.css +51 -46
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/dracula.css +40 -40
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/duotone-dark.css +35 -35
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/duotone-light.css +36 -36
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/eclipse.css +23 -23
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/elegant.css +13 -13
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/erlang-dark.css +34 -34
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/gruvbox-dark.css +37 -34
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/hopscotch.css +34 -34
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/icecoder.css +43 -43
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/idea.css +41 -41
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/isotope.css +34 -34
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/lesser-dark.css +47 -47
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/liquibyte.css +95 -95
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/lucario.css +37 -37
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/material.css +53 -53
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/mbo.css +37 -37
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/mdn-like.css +46 -46
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/midnight.css +43 -43
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/monokai.css +41 -41
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/neat.css +12 -12
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/neo.css +43 -43
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/night.css +27 -27
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/nord.css +42 -0
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/oceanic-next.css +44 -44
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/panda-syntax.css +85 -85
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/paraiso-dark.css +38 -38
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/paraiso-light.css +38 -38
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/pastel-on-dark.css +52 -52
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/railscasts.css +34 -34
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/rubyblue.css +25 -25
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/seti.css +44 -44
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/shadowfox.css +52 -52
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/solarized.css +168 -168
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/ssms.css +16 -16
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/the-matrix.css +30 -30
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/tomorrow-night-bright.css +35 -35
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/tomorrow-night-eighties.css +38 -38
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/ttcn.css +64 -64
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/twilight.css +32 -32
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/vibrant-ink.css +34 -34
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/xq-dark.css +53 -53
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/xq-light.css +43 -43
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/yeti.css +44 -44
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/yonce.css +59 -0
- data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/zenburn.css +37 -37
- data/vendor/assets/javascripts/ckeditor/plugins/colordialog/dialogs/colordialog.css +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/colordialog/dialogs/colordialog.js +11 -11
- data/vendor/assets/javascripts/ckeditor/plugins/dialog/dialogDefinition.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/dialog/styles/dialog.css +18 -0
- data/vendor/assets/javascripts/ckeditor/plugins/div/dialogs/div.js +9 -8
- data/vendor/assets/javascripts/ckeditor/plugins/find/dialogs/find.js +4 -4
- data/vendor/assets/javascripts/ckeditor/plugins/flash/dialogs/flash.js +16 -16
- data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/button.js +5 -5
- data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/checkbox.js +3 -3
- data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/form.js +2 -2
- data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/hiddenfield.js +4 -4
- data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/radio.js +2 -2
- data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/select.js +16 -16
- data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/textarea.js +6 -5
- data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/textfield.js +8 -8
- data/vendor/assets/javascripts/ckeditor/plugins/iframe/dialogs/iframe.js +8 -7
- data/vendor/assets/javascripts/ckeditor/plugins/image/dialogs/image.js +13 -1
- data/vendor/assets/javascripts/ckeditor/plugins/image/lang/en.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/image/lang/ru.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/image/plugin.js +2 -2
- data/vendor/assets/javascripts/ckeditor/plugins/image2/dev/contents.css +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/image2/dev/image2.html +2 -2
- data/vendor/assets/javascripts/ckeditor/plugins/image2/dialogs/image2.js +2 -2
- data/vendor/assets/javascripts/ckeditor/plugins/image2/lang/en.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/image2/lang/ru.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/image2/plugin.js +95 -32
- data/vendor/assets/javascripts/ckeditor/plugins/image2/samples/image2.html +3 -3
- data/vendor/assets/javascripts/ckeditor/plugins/link/dialogs/anchor.js +4 -4
- data/vendor/assets/javascripts/ckeditor/plugins/link/dialogs/link.js +25 -25
- data/vendor/assets/javascripts/ckeditor/plugins/liststyle/dialogs/liststyle.js +7 -7
- data/vendor/assets/javascripts/ckeditor/plugins/pastefromword/filter/default.js +40 -52
- data/vendor/assets/javascripts/ckeditor/plugins/pastetools/filter/common.js +19 -0
- data/vendor/assets/javascripts/ckeditor/plugins/scayt/README.md +63 -7
- data/vendor/assets/javascripts/ckeditor/plugins/scayt/dialogs/options.js +32 -32
- data/vendor/assets/javascripts/ckeditor/plugins/smiley/dialogs/smiley.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/en.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ru.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/specialchar.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/table/dialogs/table.js +19 -18
- data/vendor/assets/javascripts/ckeditor/plugins/tabletools/dialogs/tableCell.js +15 -15
- data/vendor/assets/javascripts/ckeditor/plugins/templates/dialogs/templates.css +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/templates/dialogs/templates.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/templates/templates/default.js +1 -1
- data/vendor/assets/javascripts/ckeditor/plugins/wordcount/plugin.js +13 -7
- data/vendor/assets/javascripts/ckeditor/plugins/wsc/README.md +62 -7
- data/vendor/assets/javascripts/ckeditor/plugins/wsc/dialogs/wsc.js +4 -4
- data/vendor/assets/javascripts/ckeditor/skins/minimalist/editor.css +1 -123
- data/vendor/assets/javascripts/ckeditor/skins/minimalist/editor_gecko.css +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/minimalist/editor_ie.css +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/minimalist/editor_ie7.css +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/minimalist/editor_ie8.css +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/minimalist/editor_iequirks.css +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/minimalist/icons.png +0 -0
- data/vendor/assets/javascripts/ckeditor/skins/minimalist/icons_hidpi.png +0 -0
- data/vendor/assets/javascripts/ckeditor/skins/minimalist/skin.js +10 -0
- data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/dialog.css +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/dialog_ie.css +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/dialog_ie8.css +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/dialog_iequirks.css +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/editor.css +2 -2
- data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/editor_gecko.css +2 -2
- data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/editor_ie.css +2 -2
- data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/editor_ie8.css +2 -2
- data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/editor_iequirks.css +2 -2
- data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/readme.md +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/skin.js +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/moono/dialog.css +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie.css +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie7.css +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie8.css +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_iequirks.css +1 -1
- data/vendor/assets/javascripts/ckeditor/skins/moono/editor.css +2 -2
- data/vendor/assets/javascripts/ckeditor/skins/moono/editor_gecko.css +2 -2
- data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie.css +2 -2
- data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie7.css +2 -2
- data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie8.css +2 -2
- data/vendor/assets/javascripts/ckeditor/skins/moono/editor_iequirks.css +2 -2
- data/vendor/assets/javascripts/ckeditor/skins/moono/readme.md +2 -2
- data/vendor/assets/javascripts/ckeditor/skins/moono/skin.js +1 -1
- data/vendor/assets/javascripts/ckeditor/styles.js +1 -1
- data/vendor/assets/javascripts/ckeditor/vendor/promise.js +13 -0
- metadata +65 -121
- data/lib/ckeditor/backend/refile.rb +0 -39
- data/lib/ckeditor/utils/content_type_detector.rb +0 -38
- data/lib/generators/ckeditor/templates/active_record/dragonfly/migration_versioned.rb +0 -23
- data/lib/generators/ckeditor/templates/active_record/paperclip/migration_versioned.rb +0 -23
- data/lib/generators/ckeditor/templates/active_record/refile/ckeditor/picture.rb +0 -11
- data/lib/generators/ckeditor/templates/active_record/refile/migration.rb +0 -23
- data/lib/generators/ckeditor/templates/active_record/refile/migration_versioned.rb +0 -23
- data/test/support/raw_post.rb +0 -9
- data/vendor/assets/javascripts/ckeditor/samples/css/samples.css +0 -1637
- data/vendor/assets/javascripts/ckeditor/samples/img/github-top.png +0 -0
- data/vendor/assets/javascripts/ckeditor/samples/img/header-bg.png +0 -0
- data/vendor/assets/javascripts/ckeditor/samples/img/header-separator.png +0 -0
- data/vendor/assets/javascripts/ckeditor/samples/img/logo.png +0 -0
- data/vendor/assets/javascripts/ckeditor/samples/img/logo.svg +0 -13
- data/vendor/assets/javascripts/ckeditor/samples/img/navigation-tip.png +0 -0
- data/vendor/assets/javascripts/ckeditor/samples/index.html +0 -128
- data/vendor/assets/javascripts/ckeditor/samples/js/sample.js +0 -53
- data/vendor/assets/javascripts/ckeditor/samples/js/sf.js +0 -17
- data/vendor/assets/javascripts/ckeditor/samples/old/ajax.html +0 -85
- data/vendor/assets/javascripts/ckeditor/samples/old/api.html +0 -210
- data/vendor/assets/javascripts/ckeditor/samples/old/appendto.html +0 -59
- data/vendor/assets/javascripts/ckeditor/samples/old/assets/inlineall/logo.png +0 -0
- data/vendor/assets/javascripts/ckeditor/samples/old/assets/outputxhtml/outputxhtml.css +0 -204
- data/vendor/assets/javascripts/ckeditor/samples/old/assets/posteddata.php +0 -59
- data/vendor/assets/javascripts/ckeditor/samples/old/assets/sample.jpg +0 -0
- data/vendor/assets/javascripts/ckeditor/samples/old/assets/uilanguages/languages.js +0 -7
- data/vendor/assets/javascripts/ckeditor/samples/old/datafiltering.html +0 -508
- data/vendor/assets/javascripts/ckeditor/samples/old/dialog/assets/my_dialog.js +0 -48
- data/vendor/assets/javascripts/ckeditor/samples/old/dialog/dialog.html +0 -190
- data/vendor/assets/javascripts/ckeditor/samples/old/divreplace.html +0 -144
- data/vendor/assets/javascripts/ckeditor/samples/old/enterkey/enterkey.html +0 -106
- data/vendor/assets/javascripts/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.fla +0 -0
- data/vendor/assets/javascripts/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.swf +0 -0
- data/vendor/assets/javascripts/ckeditor/samples/old/htmlwriter/assets/outputforflash/swfobject.js +0 -19
- data/vendor/assets/javascripts/ckeditor/samples/old/htmlwriter/outputforflash.html +0 -283
- data/vendor/assets/javascripts/ckeditor/samples/old/htmlwriter/outputhtml.html +0 -224
- data/vendor/assets/javascripts/ckeditor/samples/old/index.html +0 -134
- data/vendor/assets/javascripts/ckeditor/samples/old/inlineall.html +0 -314
- data/vendor/assets/javascripts/ckeditor/samples/old/inlinebycode.html +0 -124
- data/vendor/assets/javascripts/ckeditor/samples/old/inlinetextarea.html +0 -113
- data/vendor/assets/javascripts/ckeditor/samples/old/jquery.html +0 -103
- data/vendor/assets/javascripts/ckeditor/samples/old/magicline/magicline.html +0 -209
- data/vendor/assets/javascripts/ckeditor/samples/old/readonly.html +0 -76
- data/vendor/assets/javascripts/ckeditor/samples/old/replacebyclass.html +0 -60
- data/vendor/assets/javascripts/ckeditor/samples/old/replacebycode.html +0 -59
- data/vendor/assets/javascripts/ckeditor/samples/old/sample.css +0 -357
- data/vendor/assets/javascripts/ckeditor/samples/old/sample.js +0 -50
- data/vendor/assets/javascripts/ckeditor/samples/old/sample_posteddata.php +0 -16
- data/vendor/assets/javascripts/ckeditor/samples/old/stylesheetparser/assets/sample.css +0 -70
- data/vendor/assets/javascripts/ckeditor/samples/old/stylesheetparser/stylesheetparser.html +0 -85
- data/vendor/assets/javascripts/ckeditor/samples/old/tabindex.html +0 -78
- data/vendor/assets/javascripts/ckeditor/samples/old/toolbar/toolbar.html +0 -235
- data/vendor/assets/javascripts/ckeditor/samples/old/uicolor.html +0 -72
- data/vendor/assets/javascripts/ckeditor/samples/old/uilanguages.html +0 -122
- data/vendor/assets/javascripts/ckeditor/samples/old/wysiwygarea/fullpage.html +0 -80
- data/vendor/assets/javascripts/ckeditor/samples/old/xhtmlstyle.html +0 -234
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/css/fontello.css +0 -55
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/LICENSE.txt +0 -10
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/config.json +0 -28
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/fontello.eot +0 -0
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/fontello.svg +0 -14
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/fontello.ttf +0 -0
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/fontello.woff +0 -0
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/index.html +0 -446
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/js/abstracttoolbarmodifier.js +0 -13
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/js/fulltoolbareditor.js +0 -9
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/js/toolbarmodifier.js +0 -33
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/js/toolbartextmodifier.js +0 -14
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/LICENSE +0 -19
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.css +0 -325
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.js +0 -288
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/javascript.js +0 -25
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/neo.css +0 -36
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.css +0 -38
- data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.js +0 -16
- data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/icons.png +0 -0
- data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/icons_hidpi.png +0 -0
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
class Ckeditor::ApplicationController < Ckeditor.parent_controller.constantize
|
2
4
|
layout Ckeditor.controller_layout
|
3
5
|
|
@@ -9,6 +11,7 @@ class Ckeditor::ApplicationController < Ckeditor.parent_controller.constantize
|
|
9
11
|
|
10
12
|
def respond_with_asset(asset)
|
11
13
|
asset_response = Ckeditor::AssetResponse.new(asset, request)
|
14
|
+
asset.data = asset_response.data
|
12
15
|
|
13
16
|
if asset.save
|
14
17
|
render asset_response.success(config.relative_url_root)
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
class Ckeditor::AttachmentFilesController < Ckeditor::ApplicationController
|
2
4
|
skip_before_action :verify_authenticity_token, only: :create, raise: false
|
3
5
|
|
@@ -16,8 +18,6 @@ class Ckeditor::AttachmentFilesController < Ckeditor::ApplicationController
|
|
16
18
|
end
|
17
19
|
|
18
20
|
def destroy
|
19
|
-
return false unless Ckeditor.can_delete
|
20
|
-
|
21
21
|
@attachment.destroy
|
22
22
|
|
23
23
|
respond_to do |format|
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
class Ckeditor::PicturesController < Ckeditor::ApplicationController
|
2
4
|
skip_before_action :verify_authenticity_token, only: :create, raise: false
|
3
5
|
|
@@ -16,8 +18,6 @@ class Ckeditor::PicturesController < Ckeditor::ApplicationController
|
|
16
18
|
end
|
17
19
|
|
18
20
|
def destroy
|
19
|
-
return false unless Ckeditor.can_delete
|
20
|
-
|
21
21
|
@picture.destroy
|
22
22
|
|
23
23
|
respond_to do |format|
|
@@ -1,13 +1,11 @@
|
|
1
1
|
<%= content_tag(:div, id: dom_id(asset), class: "gal-item", data: { url: image_path(asset.url_content) }) do %>
|
2
|
-
|
3
|
-
<% if Ckeditor.can_delete then %>
|
4
2
|
<%= link_to '', polymorphic_path(asset, format: :json),
|
5
3
|
remote: true,
|
6
4
|
method: :delete,
|
7
5
|
title: I18n.t('ckeditor.buttons.delete'),
|
8
6
|
data: { confirm: t('ckeditor.confirm_delete') },
|
9
7
|
class: "fileupload-cancel gal-del" %>
|
10
|
-
|
8
|
+
|
11
9
|
<div class="fileupload-file gal-inner-holder">
|
12
10
|
<div class="img"><%= image_tag(asset.url_thumb, title: asset.filename) %></div>
|
13
11
|
<div class="img-data">
|
@@ -1,13 +1,11 @@
|
|
1
1
|
<script id="fileupload_tmpl" type="text/x-jquery-tmpl">
|
2
2
|
<div id="asset_${id}" class="gal-item" data-url="${url_content}">
|
3
|
-
<% if Ckeditor.can_delete then %>
|
4
3
|
<%= link_to '', "/ckeditor/${controller}/${id}.json",
|
5
4
|
remote: true,
|
6
5
|
method: :delete,
|
7
6
|
title: I18n.t('ckeditor.buttons.delete'),
|
8
7
|
data: { confirm: t('ckeditor.confirm_delete') },
|
9
8
|
class: "fileupload-cancel gal-del" %>
|
10
|
-
<% end %>
|
11
9
|
|
12
10
|
<div class="fileupload-file gal-inner-holder">
|
13
11
|
<div class="img"><img src="${url_thumb}" title="${filename}"></div>
|
data/config/routes.rb
CHANGED
data/lib/ckeditor.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'orm_adapter'
|
2
4
|
require 'pathname'
|
3
5
|
|
@@ -22,10 +24,11 @@ module Ckeditor
|
|
22
24
|
end
|
23
25
|
|
24
26
|
module Backend
|
27
|
+
autoload :ActiveStorage, 'ckeditor/backend/active_storage'
|
25
28
|
autoload :Paperclip, 'ckeditor/backend/paperclip'
|
26
29
|
autoload :CarrierWave, 'ckeditor/backend/carrierwave'
|
27
30
|
autoload :Dragonfly, 'ckeditor/backend/dragonfly'
|
28
|
-
autoload :
|
31
|
+
autoload :Shrine, 'ckeditor/backend/shrine'
|
29
32
|
end
|
30
33
|
|
31
34
|
IMAGE_TYPES = %w[image/jpeg image/png image/gif image/jpg image/pjpeg image/tiff image/x-png].freeze
|
@@ -38,9 +41,6 @@ module Ckeditor
|
|
38
41
|
request.env['warden'].try(:user) || respond_to?(:current_user) && current_user
|
39
42
|
end
|
40
43
|
|
41
|
-
mattr_accessor :can_delete
|
42
|
-
@@can_delete = true
|
43
|
-
|
44
44
|
# Allowed image file types for upload.
|
45
45
|
# Set to nil or [] (empty array) for all file types
|
46
46
|
mattr_accessor :image_file_types
|
@@ -72,14 +72,9 @@ module Ckeditor
|
|
72
72
|
mattr_accessor :default_per_page
|
73
73
|
@@default_per_page = 24
|
74
74
|
|
75
|
-
# Asset restrictions
|
76
|
-
mattr_accessor :assets_languages
|
77
|
-
mattr_accessor :assets_plugins
|
78
|
-
@@assets_languages = nil
|
79
|
-
@@assets_plugins = nil
|
80
|
-
|
81
75
|
# CKEditor CDN
|
82
76
|
mattr_accessor :cdn_url
|
77
|
+
#@@cdn_url = '//cdn.ckeditor.com/4.11.3/standard/ckeditor.js'
|
83
78
|
@@cdn_url = nil
|
84
79
|
|
85
80
|
# Url to ckeditor config, used when CDN enabled
|
@@ -101,7 +96,7 @@ module Ckeditor
|
|
101
96
|
# Turn on/off assets pipeline
|
102
97
|
# By default ckeditor will check assets pipeline
|
103
98
|
mattr_accessor :assets_pipeline_enabled
|
104
|
-
@@assets_pipeline_enabled =
|
99
|
+
@@assets_pipeline_enabled = true
|
105
100
|
|
106
101
|
# Default way to setup Ckeditor. Run rails generate ckeditor to create
|
107
102
|
# a fresh initializer with all configuration values.
|
@@ -126,11 +121,10 @@ module Ckeditor
|
|
126
121
|
|
127
122
|
# All css and js files from ckeditor folder
|
128
123
|
def self.assets
|
129
|
-
@assets ||=
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
end
|
124
|
+
@assets ||= Ckeditor.cdn_enabled? ?
|
125
|
+
['ckeditor/config.js']
|
126
|
+
:
|
127
|
+
Utils.select_assets('ckeditor', 'vendor/assets/javascripts') << 'ckeditor/init.js'
|
134
128
|
end
|
135
129
|
|
136
130
|
def self.assets=(value)
|
@@ -204,11 +198,11 @@ module Ckeditor
|
|
204
198
|
# end
|
205
199
|
#
|
206
200
|
# To use an authorization adapter, pass the name of the adapter. For example,
|
207
|
-
# to use with
|
201
|
+
# to use with CanCanCan[https://github.com/CanCanCommunity/cancancan], pass it like this.
|
208
202
|
#
|
209
|
-
# @example
|
203
|
+
# @example CanCanCan
|
210
204
|
# Ckeditor.setup do |config|
|
211
|
-
# config.authorize_with :
|
205
|
+
# config.authorize_with :cancancan
|
212
206
|
# end
|
213
207
|
#
|
214
208
|
def self.authorize_with(*args, &block)
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'action_view/helpers/tag_helper'
|
2
4
|
require 'action_view/helpers/javascript_helper'
|
3
5
|
|
@@ -6,21 +8,23 @@ module Ckeditor
|
|
6
8
|
include ActionView::Helpers::TagHelper
|
7
9
|
include ActionView::Helpers::JavaScriptHelper
|
8
10
|
|
9
|
-
FUNCTION = 'window.parent.CKEDITOR.tools.callFunction'
|
10
|
-
JSON_TYPE = 'json'
|
11
|
+
FUNCTION = 'window.parent.CKEDITOR.tools.callFunction'
|
12
|
+
JSON_TYPE = 'json'
|
11
13
|
|
12
|
-
attr_reader :asset, :params
|
14
|
+
attr_reader :asset, :request, :params
|
13
15
|
|
14
16
|
def initialize(asset, request)
|
15
17
|
@asset = asset
|
16
18
|
@request = request
|
17
19
|
@params = request.params
|
20
|
+
end
|
18
21
|
|
19
|
-
|
22
|
+
def data
|
23
|
+
@data ||= read_data
|
20
24
|
end
|
21
25
|
|
22
26
|
def json?
|
23
|
-
params
|
27
|
+
params[:responseType] == JSON_TYPE
|
24
28
|
end
|
25
29
|
|
26
30
|
def ckeditor?
|
@@ -28,11 +32,7 @@ module Ckeditor
|
|
28
32
|
end
|
29
33
|
|
30
34
|
def file
|
31
|
-
|
32
|
-
params[:qqfile]
|
33
|
-
else
|
34
|
-
params[:upload]
|
35
|
-
end
|
35
|
+
!(ckeditor? || json?) ? params[:qqfile] : params[:upload]
|
36
36
|
end
|
37
37
|
|
38
38
|
def current_mode
|
@@ -108,5 +108,12 @@ module Ckeditor
|
|
108
108
|
:default
|
109
109
|
end
|
110
110
|
end
|
111
|
+
|
112
|
+
def read_data
|
113
|
+
data = Ckeditor::Http.normalize_param(file, request)
|
114
|
+
return if data.size.zero? || data.original_filename.blank?
|
115
|
+
|
116
|
+
data
|
117
|
+
end
|
111
118
|
end
|
112
119
|
end
|
@@ -0,0 +1,68 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Ckeditor
|
4
|
+
module Backend
|
5
|
+
module ActiveStorage
|
6
|
+
def self.included(base)
|
7
|
+
base.send(:include, Rails.application.routes.url_helpers)
|
8
|
+
base.send(:include, InstanceMethods)
|
9
|
+
base.send(:extend, ClassMethods)
|
10
|
+
end
|
11
|
+
|
12
|
+
module ClassMethods
|
13
|
+
def self.extended(base)
|
14
|
+
base.class_eval do
|
15
|
+
before_save :apply_data
|
16
|
+
validate do
|
17
|
+
if data.nil? || file.nil?
|
18
|
+
errors.add(:data, :not_data_present, message: "data must be present")
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
module InstanceMethods
|
26
|
+
def url
|
27
|
+
rails_blob_path(self.storage_data, only_path: true)
|
28
|
+
end
|
29
|
+
|
30
|
+
def path
|
31
|
+
rails_blob_path(self.storage_data, only_path: true)
|
32
|
+
end
|
33
|
+
|
34
|
+
def styles
|
35
|
+
end
|
36
|
+
|
37
|
+
def content_type
|
38
|
+
self.storage_data.content_type
|
39
|
+
end
|
40
|
+
def content_type=(_content_type)
|
41
|
+
self.storage_data.content_type = _content_type
|
42
|
+
end
|
43
|
+
protected
|
44
|
+
|
45
|
+
def file
|
46
|
+
@file ||= storage_data
|
47
|
+
end
|
48
|
+
|
49
|
+
def blob
|
50
|
+
@blob ||= ::ActiveStorage::Blob.find(file.attachment.blob_id)
|
51
|
+
end
|
52
|
+
|
53
|
+
def apply_data
|
54
|
+
if data.is_a?(Ckeditor::Http::QqFile)
|
55
|
+
storage_data.attach(io: data, filename: data.original_filename)
|
56
|
+
else
|
57
|
+
storage_data.attach(data)
|
58
|
+
end
|
59
|
+
|
60
|
+
self.data_file_name = storage_data.blob.filename
|
61
|
+
self.data_content_type = storage_data.blob.content_type
|
62
|
+
self.data_file_size = storage_data.blob.byte_size
|
63
|
+
end
|
64
|
+
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'mini_magick'
|
2
4
|
|
3
5
|
module Ckeditor
|
@@ -11,7 +13,6 @@ module Ckeditor
|
|
11
13
|
module ClassMethods
|
12
14
|
def self.extended(base)
|
13
15
|
base.class_eval do
|
14
|
-
process :extract_content_type
|
15
16
|
process :extract_size
|
16
17
|
end
|
17
18
|
end
|
@@ -36,21 +37,10 @@ module Ckeditor
|
|
36
37
|
end
|
37
38
|
end
|
38
39
|
|
39
|
-
def extract_content_type
|
40
|
-
model.data_content_type = Utils::ContentTypeDetector.new(file.path).detect
|
41
|
-
end
|
42
|
-
|
43
40
|
def extract_size
|
44
41
|
model.data_file_size = file.size
|
45
42
|
end
|
46
43
|
|
47
|
-
def extract_dimensions
|
48
|
-
if model.image? && model.has_dimensions?
|
49
|
-
model.width = magick[:width]
|
50
|
-
model.height = magick[:height]
|
51
|
-
end
|
52
|
-
end
|
53
|
-
|
54
44
|
def magick
|
55
45
|
@magick ||= ::MiniMagick::Image.new(current_path)
|
56
46
|
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Ckeditor
|
2
4
|
module Backend
|
3
5
|
module Paperclip
|
@@ -9,9 +11,6 @@ module Ckeditor
|
|
9
11
|
module ClassMethods
|
10
12
|
def self.extended(base)
|
11
13
|
base.class_eval do
|
12
|
-
before_validation :extract_content_type
|
13
|
-
before_create :extract_dimensions
|
14
|
-
|
15
14
|
delegate :url, :path, :styles, :content_type, to: :data
|
16
15
|
end
|
17
16
|
end
|
@@ -27,18 +26,6 @@ module Ckeditor
|
|
27
26
|
def file
|
28
27
|
@file ||= data.respond_to?(:queued_for_write) ? data.queued_for_write[:original] : data.to_file
|
29
28
|
end
|
30
|
-
|
31
|
-
def extract_dimensions
|
32
|
-
if image? && has_dimensions?
|
33
|
-
self.width = geometry.width
|
34
|
-
self.height = geometry.height
|
35
|
-
end
|
36
|
-
end
|
37
|
-
|
38
|
-
def extract_content_type
|
39
|
-
path = file.nil? ? nil : file.path
|
40
|
-
self.data_content_type = Utils::ContentTypeDetector.new(path).detect
|
41
|
-
end
|
42
29
|
end
|
43
30
|
end
|
44
31
|
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Ckeditor
|
4
|
+
module Backend
|
5
|
+
module Shrine
|
6
|
+
def self.included(base)
|
7
|
+
base.send(:include, InstanceMethods)
|
8
|
+
end
|
9
|
+
|
10
|
+
module InstanceMethods
|
11
|
+
def url
|
12
|
+
data_url
|
13
|
+
end
|
14
|
+
|
15
|
+
def filename
|
16
|
+
datasource['filename']
|
17
|
+
end
|
18
|
+
|
19
|
+
def size
|
20
|
+
datasource['size']
|
21
|
+
end
|
22
|
+
|
23
|
+
def datasource
|
24
|
+
data.metadata
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -1,8 +1,10 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'cancan'
|
2
4
|
|
3
5
|
module Ckeditor
|
4
6
|
module Hooks
|
5
|
-
# This adapter is for the
|
7
|
+
# This adapter is for the CanCanCan[https://github.com/CanCanCommunity/cancancan] authorization library.
|
6
8
|
# You can create another adapter for different authorization behavior, just be certain it
|
7
9
|
# responds to each of the public methods here.
|
8
10
|
class CanCanAuthorization
|
@@ -45,3 +47,4 @@ module Ckeditor
|
|
45
47
|
end
|
46
48
|
|
47
49
|
Ckeditor::AUTHORIZATION_ADAPTERS[:cancan] = Ckeditor::Hooks::CanCanAuthorization
|
50
|
+
Ckeditor::AUTHORIZATION_ADAPTERS[:cancancan] = Ckeditor::Hooks::CanCanAuthorization
|