glebtv-ckeditor 4.11.1 → 4.13.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (364) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +13 -12
  3. data/README.md +358 -2
  4. data/Rakefile +17 -8
  5. data/app/assets/javascripts/ckeditor/filebrowser/javascripts/fileuploader.js +313 -317
  6. data/app/controllers/ckeditor/application_controller.rb +3 -0
  7. data/app/controllers/ckeditor/attachment_files_controller.rb +2 -2
  8. data/app/controllers/ckeditor/pictures_controller.rb +2 -2
  9. data/app/helpers/ckeditor/application_helper.rb +2 -0
  10. data/app/views/ckeditor/shared/_asset.html.erb +1 -3
  11. data/app/views/ckeditor/shared/_asset_tmpl.html.erb +0 -2
  12. data/config/locales/da.ckeditor.yml +9 -0
  13. data/config/routes.rb +2 -0
  14. data/lib/ckeditor.rb +13 -19
  15. data/lib/ckeditor/asset_response.rb +17 -10
  16. data/lib/ckeditor/backend/active_storage.rb +68 -0
  17. data/lib/ckeditor/backend/carrierwave.rb +2 -12
  18. data/lib/ckeditor/backend/dragonfly.rb +2 -0
  19. data/lib/ckeditor/backend/paperclip.rb +2 -15
  20. data/lib/ckeditor/backend/shrine.rb +29 -0
  21. data/lib/ckeditor/helpers/controllers.rb +2 -0
  22. data/lib/ckeditor/helpers/form_builder.rb +2 -0
  23. data/lib/ckeditor/helpers/form_helper.rb +2 -0
  24. data/lib/ckeditor/helpers/view_helper.rb +2 -0
  25. data/lib/ckeditor/hooks/cancan.rb +4 -1
  26. data/lib/ckeditor/hooks/formtastic.rb +2 -0
  27. data/lib/ckeditor/hooks/pundit.rb +2 -0
  28. data/lib/ckeditor/hooks/simple_form.rb +2 -0
  29. data/lib/ckeditor/http.rb +14 -9
  30. data/lib/ckeditor/orm/active_record.rb +2 -0
  31. data/lib/ckeditor/orm/base.rb +11 -2
  32. data/lib/ckeditor/orm/mongoid.rb +2 -0
  33. data/lib/ckeditor/paginatable.rb +2 -0
  34. data/lib/ckeditor/rails.rb +2 -0
  35. data/lib/ckeditor/rails_admin/field.rb +16 -3
  36. data/lib/ckeditor/text_area.rb +2 -0
  37. data/lib/ckeditor/utils.rb +3 -16
  38. data/lib/ckeditor/utils/javascript_code.rb +1 -1
  39. data/lib/ckeditor/version.rb +4 -2
  40. data/lib/generators/ckeditor/install_generator.rb +16 -19
  41. data/lib/generators/ckeditor/pundit_policy_generator.rb +2 -0
  42. data/lib/generators/ckeditor/templates/active_record/active_storage/ckeditor/asset.rb +10 -0
  43. data/lib/generators/ckeditor/templates/active_record/{refile → active_storage}/ckeditor/attachment_file.rb +3 -1
  44. data/lib/generators/ckeditor/templates/active_record/active_storage/ckeditor/picture.rb +13 -0
  45. data/lib/generators/ckeditor/templates/active_record/{carrierwave/migration_versioned.rb → active_storage/migration.rb} +8 -5
  46. data/lib/generators/ckeditor/templates/active_record/carrierwave/ckeditor/asset.rb +2 -0
  47. data/lib/generators/ckeditor/templates/active_record/carrierwave/ckeditor/attachment_file.rb +2 -0
  48. data/lib/generators/ckeditor/templates/active_record/carrierwave/ckeditor/picture.rb +2 -0
  49. data/lib/generators/ckeditor/templates/active_record/carrierwave/migration.rb +7 -5
  50. data/lib/generators/ckeditor/templates/active_record/dragonfly/ckeditor/asset.rb +2 -0
  51. data/lib/generators/ckeditor/templates/active_record/dragonfly/ckeditor/attachment_file.rb +2 -0
  52. data/lib/generators/ckeditor/templates/active_record/dragonfly/ckeditor/picture.rb +2 -0
  53. data/lib/generators/ckeditor/templates/active_record/dragonfly/migration.rb +7 -5
  54. data/lib/generators/ckeditor/templates/active_record/paperclip/ckeditor/asset.rb +2 -0
  55. data/lib/generators/ckeditor/templates/active_record/paperclip/ckeditor/attachment_file.rb +2 -0
  56. data/lib/generators/ckeditor/templates/active_record/paperclip/ckeditor/picture.rb +2 -0
  57. data/lib/generators/ckeditor/templates/active_record/paperclip/migration.rb +8 -6
  58. data/lib/generators/ckeditor/templates/active_record/{refile → shrine}/ckeditor/asset.rb +3 -1
  59. data/lib/generators/ckeditor/templates/active_record/shrine/ckeditor/attachment_file.rb +21 -0
  60. data/lib/generators/ckeditor/templates/active_record/shrine/ckeditor/picture.rb +49 -0
  61. data/lib/generators/ckeditor/templates/active_record/shrine/migration.rb +22 -0
  62. data/lib/generators/ckeditor/templates/base/carrierwave/uploaders/ckeditor_attachment_file_uploader.rb +2 -1
  63. data/lib/generators/ckeditor/templates/base/carrierwave/uploaders/ckeditor_picture_uploader.rb +2 -3
  64. data/lib/generators/ckeditor/templates/base/dragonfly/initializer.rb +2 -0
  65. data/lib/generators/ckeditor/templates/base/shrine/initializer.rb +25 -0
  66. data/lib/generators/ckeditor/templates/ckeditor.rb +3 -6
  67. data/lib/generators/ckeditor/templates/mongoid/carrierwave/ckeditor/asset.rb +2 -0
  68. data/lib/generators/ckeditor/templates/mongoid/carrierwave/ckeditor/attachment_file.rb +2 -0
  69. data/lib/generators/ckeditor/templates/mongoid/carrierwave/ckeditor/picture.rb +2 -0
  70. data/lib/generators/ckeditor/templates/mongoid/paperclip/ckeditor/asset.rb +2 -0
  71. data/lib/generators/ckeditor/templates/mongoid/paperclip/ckeditor/attachment_file.rb +2 -0
  72. data/lib/generators/ckeditor/templates/mongoid/paperclip/ckeditor/picture.rb +2 -0
  73. data/lib/generators/ckeditor/templates/mongoid/shrine/ckeditor/asset.rb +8 -0
  74. data/lib/generators/ckeditor/templates/mongoid/shrine/ckeditor/attachment_file.rb +21 -0
  75. data/lib/generators/ckeditor/templates/mongoid/shrine/ckeditor/picture.rb +47 -0
  76. data/lib/generators/ckeditor/templates/pundit_policy/attachment_file_policy.rb +2 -0
  77. data/lib/generators/ckeditor/templates/pundit_policy/picture_policy.rb +2 -0
  78. data/lib/tasks/ckeditor.rake +2 -0
  79. data/test/controllers/attachment_files_controller_test.rb +17 -15
  80. data/test/controllers/pictures_controller_test.rb +17 -15
  81. data/test/dummy/Rakefile +2 -0
  82. data/test/dummy/app/assets/javascripts/application.js +0 -2
  83. data/test/dummy/app/controllers/application_controller.rb +2 -0
  84. data/test/dummy/app/controllers/posts_controller.rb +2 -0
  85. data/test/dummy/app/helpers/application_helper.rb +2 -0
  86. data/test/dummy/app/helpers/posts_helper.rb +2 -0
  87. data/test/dummy/app/models/post.rb +2 -0
  88. data/test/dummy/app/views/posts/index.html.erb +0 -3
  89. data/test/dummy/app/views/posts/show.html.erb +3 -0
  90. data/test/dummy/config.ru +2 -0
  91. data/test/dummy/config/application.rb +5 -1
  92. data/test/dummy/config/boot.rb +2 -0
  93. data/test/dummy/config/environment.rb +2 -0
  94. data/test/dummy/config/environments/development.rb +2 -0
  95. data/test/dummy/config/environments/production.rb +2 -0
  96. data/test/dummy/config/environments/test.rb +5 -3
  97. data/test/dummy/config/initializers/assets.rb +2 -0
  98. data/test/dummy/config/initializers/backtrace_silencers.rb +2 -0
  99. data/test/dummy/config/initializers/ckeditor.rb +2 -0
  100. data/test/dummy/config/initializers/cookies_serializer.rb +2 -0
  101. data/test/dummy/config/initializers/inflections.rb +2 -0
  102. data/test/dummy/config/initializers/mime_types.rb +2 -0
  103. data/test/dummy/config/initializers/paperclip.rb +2 -0
  104. data/test/dummy/config/initializers/session_store.rb +2 -0
  105. data/test/dummy/config/initializers/wrap_parameters.rb +2 -0
  106. data/test/dummy/config/routes.rb +2 -0
  107. data/test/dummy/config/storage.yml +3 -0
  108. data/test/dummy/db/migrate/20110623120047_create_posts.rb +5 -3
  109. data/test/dummy/db/migrate/20170806125915_create_active_storage_tables.rb +26 -0
  110. data/test/dummy/script/rails +2 -0
  111. data/test/functional/posts_controller_test.rb +18 -16
  112. data/test/generators/install_generator_test.rb +58 -56
  113. data/test/integration/navigation_test.rb +2 -0
  114. data/test/models/attachment_file_test.rb +4 -4
  115. data/test/models/ckeditor_test.rb +3 -21
  116. data/test/models/picture_test.rb +12 -10
  117. data/test/models/utils_test.rb +2 -0
  118. data/test/orm/active_record.rb +11 -1
  119. data/test/orm/mongoid.rb +2 -0
  120. data/test/support/helpers.rb +2 -0
  121. data/test/support/integration_case.rb +2 -0
  122. data/test/test_helper.rb +15 -9
  123. data/vendor/assets/javascripts/ckeditor/CHANGES.md +178 -2
  124. data/vendor/assets/javascripts/ckeditor/LICENSE.md +3 -2
  125. data/vendor/assets/javascripts/ckeditor/README.md +6 -6
  126. data/vendor/assets/javascripts/ckeditor/adapters/jquery.js +6 -6
  127. data/vendor/assets/javascripts/ckeditor/build-config.js +3 -4
  128. data/vendor/assets/javascripts/ckeditor/ckeditor.js +851 -816
  129. data/vendor/assets/javascripts/ckeditor/config.js +1 -1
  130. data/vendor/assets/javascripts/ckeditor/contents.css +1 -1
  131. data/vendor/assets/javascripts/ckeditor/lang/en.js +1 -1
  132. data/vendor/assets/javascripts/ckeditor/lang/ru.js +1 -1
  133. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +1 -1
  134. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/en.js +1 -1
  135. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js +1 -1
  136. data/vendor/assets/javascripts/ckeditor/plugins/about/dialogs/about.js +1 -1
  137. data/vendor/assets/javascripts/ckeditor/plugins/clipboard/dialogs/paste.js +1 -1
  138. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/css/codemirror.min.css +1 -1
  139. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.addons.min.js +4 -2
  140. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.addons.search.min.js +1 -1
  141. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.min.js +1 -1
  142. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.bbcodemixed.min.js +1 -1
  143. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.handlebars.min.js +1 -1
  144. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.htmlmixed.min.js +2 -2
  145. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.javascript.min.js +1 -1
  146. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.php.min.js +3 -3
  147. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.twig.min.js +1 -1
  148. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/plugin.js +7 -3
  149. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/3024-day.css +41 -41
  150. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/3024-night.css +39 -39
  151. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/abcdef.css +32 -32
  152. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/ambiance-mobile.css +5 -5
  153. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/ambiance.css +74 -74
  154. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/base16-dark.css +38 -38
  155. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/base16-light.css +38 -38
  156. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/bespin.css +34 -34
  157. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/blackboard.css +32 -32
  158. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/cobalt.css +25 -25
  159. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/colorforth.css +33 -33
  160. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/darcula.css +51 -46
  161. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/dracula.css +40 -40
  162. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/duotone-dark.css +35 -35
  163. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/duotone-light.css +36 -36
  164. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/eclipse.css +23 -23
  165. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/elegant.css +13 -13
  166. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/erlang-dark.css +34 -34
  167. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/gruvbox-dark.css +37 -34
  168. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/hopscotch.css +34 -34
  169. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/icecoder.css +43 -43
  170. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/idea.css +41 -41
  171. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/isotope.css +34 -34
  172. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/lesser-dark.css +47 -47
  173. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/liquibyte.css +95 -95
  174. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/lucario.css +37 -37
  175. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/material.css +53 -53
  176. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/mbo.css +37 -37
  177. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/mdn-like.css +46 -46
  178. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/midnight.css +43 -43
  179. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/monokai.css +41 -41
  180. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/neat.css +12 -12
  181. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/neo.css +43 -43
  182. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/night.css +27 -27
  183. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/nord.css +42 -0
  184. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/oceanic-next.css +44 -44
  185. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/panda-syntax.css +85 -85
  186. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/paraiso-dark.css +38 -38
  187. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/paraiso-light.css +38 -38
  188. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/pastel-on-dark.css +52 -52
  189. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/railscasts.css +34 -34
  190. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/rubyblue.css +25 -25
  191. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/seti.css +44 -44
  192. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/shadowfox.css +52 -52
  193. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/solarized.css +168 -168
  194. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/ssms.css +16 -16
  195. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/the-matrix.css +30 -30
  196. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/tomorrow-night-bright.css +35 -35
  197. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/tomorrow-night-eighties.css +38 -38
  198. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/ttcn.css +64 -64
  199. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/twilight.css +32 -32
  200. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/vibrant-ink.css +34 -34
  201. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/xq-dark.css +53 -53
  202. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/xq-light.css +43 -43
  203. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/yeti.css +44 -44
  204. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/yonce.css +59 -0
  205. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/zenburn.css +37 -37
  206. data/vendor/assets/javascripts/ckeditor/plugins/colordialog/dialogs/colordialog.css +1 -1
  207. data/vendor/assets/javascripts/ckeditor/plugins/colordialog/dialogs/colordialog.js +11 -11
  208. data/vendor/assets/javascripts/ckeditor/plugins/dialog/dialogDefinition.js +1 -1
  209. data/vendor/assets/javascripts/ckeditor/plugins/dialog/styles/dialog.css +18 -0
  210. data/vendor/assets/javascripts/ckeditor/plugins/div/dialogs/div.js +9 -8
  211. data/vendor/assets/javascripts/ckeditor/plugins/find/dialogs/find.js +4 -4
  212. data/vendor/assets/javascripts/ckeditor/plugins/flash/dialogs/flash.js +16 -16
  213. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/button.js +5 -5
  214. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/checkbox.js +3 -3
  215. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/form.js +2 -2
  216. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/hiddenfield.js +4 -4
  217. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/radio.js +2 -2
  218. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/select.js +16 -16
  219. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/textarea.js +6 -5
  220. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/textfield.js +8 -8
  221. data/vendor/assets/javascripts/ckeditor/plugins/iframe/dialogs/iframe.js +8 -7
  222. data/vendor/assets/javascripts/ckeditor/plugins/image/dialogs/image.js +13 -1
  223. data/vendor/assets/javascripts/ckeditor/plugins/image/lang/en.js +1 -1
  224. data/vendor/assets/javascripts/ckeditor/plugins/image/lang/ru.js +1 -1
  225. data/vendor/assets/javascripts/ckeditor/plugins/image/plugin.js +2 -2
  226. data/vendor/assets/javascripts/ckeditor/plugins/image2/dev/contents.css +1 -1
  227. data/vendor/assets/javascripts/ckeditor/plugins/image2/dev/image2.html +2 -2
  228. data/vendor/assets/javascripts/ckeditor/plugins/image2/dialogs/image2.js +2 -2
  229. data/vendor/assets/javascripts/ckeditor/plugins/image2/lang/en.js +1 -1
  230. data/vendor/assets/javascripts/ckeditor/plugins/image2/lang/ru.js +1 -1
  231. data/vendor/assets/javascripts/ckeditor/plugins/image2/plugin.js +95 -32
  232. data/vendor/assets/javascripts/ckeditor/plugins/image2/samples/image2.html +3 -3
  233. data/vendor/assets/javascripts/ckeditor/plugins/link/dialogs/anchor.js +4 -4
  234. data/vendor/assets/javascripts/ckeditor/plugins/link/dialogs/link.js +25 -25
  235. data/vendor/assets/javascripts/ckeditor/plugins/liststyle/dialogs/liststyle.js +7 -7
  236. data/vendor/assets/javascripts/ckeditor/plugins/pastefromword/filter/default.js +40 -52
  237. data/vendor/assets/javascripts/ckeditor/plugins/pastetools/filter/common.js +19 -0
  238. data/vendor/assets/javascripts/ckeditor/plugins/scayt/README.md +63 -7
  239. data/vendor/assets/javascripts/ckeditor/plugins/scayt/dialogs/options.js +32 -32
  240. data/vendor/assets/javascripts/ckeditor/plugins/smiley/dialogs/smiley.js +1 -1
  241. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/en.js +1 -1
  242. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ru.js +1 -1
  243. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/specialchar.js +1 -1
  244. data/vendor/assets/javascripts/ckeditor/plugins/table/dialogs/table.js +19 -18
  245. data/vendor/assets/javascripts/ckeditor/plugins/tabletools/dialogs/tableCell.js +15 -15
  246. data/vendor/assets/javascripts/ckeditor/plugins/templates/dialogs/templates.css +1 -1
  247. data/vendor/assets/javascripts/ckeditor/plugins/templates/dialogs/templates.js +1 -1
  248. data/vendor/assets/javascripts/ckeditor/plugins/templates/templates/default.js +1 -1
  249. data/vendor/assets/javascripts/ckeditor/plugins/wordcount/plugin.js +13 -7
  250. data/vendor/assets/javascripts/ckeditor/plugins/wsc/README.md +62 -7
  251. data/vendor/assets/javascripts/ckeditor/plugins/wsc/dialogs/wsc.js +4 -4
  252. data/vendor/assets/javascripts/ckeditor/skins/minimalist/editor.css +1 -123
  253. data/vendor/assets/javascripts/ckeditor/skins/minimalist/editor_gecko.css +1 -1
  254. data/vendor/assets/javascripts/ckeditor/skins/minimalist/editor_ie.css +1 -1
  255. data/vendor/assets/javascripts/ckeditor/skins/minimalist/editor_ie7.css +1 -1
  256. data/vendor/assets/javascripts/ckeditor/skins/minimalist/editor_ie8.css +1 -1
  257. data/vendor/assets/javascripts/ckeditor/skins/minimalist/editor_iequirks.css +1 -1
  258. data/vendor/assets/javascripts/ckeditor/skins/minimalist/icons.png +0 -0
  259. data/vendor/assets/javascripts/ckeditor/skins/minimalist/icons_hidpi.png +0 -0
  260. data/vendor/assets/javascripts/ckeditor/skins/minimalist/skin.js +10 -0
  261. data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/dialog.css +1 -1
  262. data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/dialog_ie.css +1 -1
  263. data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/dialog_ie8.css +1 -1
  264. data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/dialog_iequirks.css +1 -1
  265. data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/editor.css +2 -2
  266. data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/editor_gecko.css +2 -2
  267. data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/editor_ie.css +2 -2
  268. data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/editor_ie8.css +2 -2
  269. data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/editor_iequirks.css +2 -2
  270. data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/readme.md +1 -1
  271. data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/skin.js +1 -1
  272. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog.css +1 -1
  273. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie.css +1 -1
  274. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie7.css +1 -1
  275. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie8.css +1 -1
  276. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_iequirks.css +1 -1
  277. data/vendor/assets/javascripts/ckeditor/skins/moono/editor.css +2 -2
  278. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_gecko.css +2 -2
  279. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie.css +2 -2
  280. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie7.css +2 -2
  281. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie8.css +2 -2
  282. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_iequirks.css +2 -2
  283. data/vendor/assets/javascripts/ckeditor/skins/moono/readme.md +2 -2
  284. data/vendor/assets/javascripts/ckeditor/skins/moono/skin.js +1 -1
  285. data/vendor/assets/javascripts/ckeditor/styles.js +1 -1
  286. data/vendor/assets/javascripts/ckeditor/vendor/promise.js +13 -0
  287. metadata +65 -121
  288. data/lib/ckeditor/backend/refile.rb +0 -39
  289. data/lib/ckeditor/utils/content_type_detector.rb +0 -38
  290. data/lib/generators/ckeditor/templates/active_record/dragonfly/migration_versioned.rb +0 -23
  291. data/lib/generators/ckeditor/templates/active_record/paperclip/migration_versioned.rb +0 -23
  292. data/lib/generators/ckeditor/templates/active_record/refile/ckeditor/picture.rb +0 -11
  293. data/lib/generators/ckeditor/templates/active_record/refile/migration.rb +0 -23
  294. data/lib/generators/ckeditor/templates/active_record/refile/migration_versioned.rb +0 -23
  295. data/test/support/raw_post.rb +0 -9
  296. data/vendor/assets/javascripts/ckeditor/samples/css/samples.css +0 -1637
  297. data/vendor/assets/javascripts/ckeditor/samples/img/github-top.png +0 -0
  298. data/vendor/assets/javascripts/ckeditor/samples/img/header-bg.png +0 -0
  299. data/vendor/assets/javascripts/ckeditor/samples/img/header-separator.png +0 -0
  300. data/vendor/assets/javascripts/ckeditor/samples/img/logo.png +0 -0
  301. data/vendor/assets/javascripts/ckeditor/samples/img/logo.svg +0 -13
  302. data/vendor/assets/javascripts/ckeditor/samples/img/navigation-tip.png +0 -0
  303. data/vendor/assets/javascripts/ckeditor/samples/index.html +0 -128
  304. data/vendor/assets/javascripts/ckeditor/samples/js/sample.js +0 -53
  305. data/vendor/assets/javascripts/ckeditor/samples/js/sf.js +0 -17
  306. data/vendor/assets/javascripts/ckeditor/samples/old/ajax.html +0 -85
  307. data/vendor/assets/javascripts/ckeditor/samples/old/api.html +0 -210
  308. data/vendor/assets/javascripts/ckeditor/samples/old/appendto.html +0 -59
  309. data/vendor/assets/javascripts/ckeditor/samples/old/assets/inlineall/logo.png +0 -0
  310. data/vendor/assets/javascripts/ckeditor/samples/old/assets/outputxhtml/outputxhtml.css +0 -204
  311. data/vendor/assets/javascripts/ckeditor/samples/old/assets/posteddata.php +0 -59
  312. data/vendor/assets/javascripts/ckeditor/samples/old/assets/sample.jpg +0 -0
  313. data/vendor/assets/javascripts/ckeditor/samples/old/assets/uilanguages/languages.js +0 -7
  314. data/vendor/assets/javascripts/ckeditor/samples/old/datafiltering.html +0 -508
  315. data/vendor/assets/javascripts/ckeditor/samples/old/dialog/assets/my_dialog.js +0 -48
  316. data/vendor/assets/javascripts/ckeditor/samples/old/dialog/dialog.html +0 -190
  317. data/vendor/assets/javascripts/ckeditor/samples/old/divreplace.html +0 -144
  318. data/vendor/assets/javascripts/ckeditor/samples/old/enterkey/enterkey.html +0 -106
  319. data/vendor/assets/javascripts/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.fla +0 -0
  320. data/vendor/assets/javascripts/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.swf +0 -0
  321. data/vendor/assets/javascripts/ckeditor/samples/old/htmlwriter/assets/outputforflash/swfobject.js +0 -19
  322. data/vendor/assets/javascripts/ckeditor/samples/old/htmlwriter/outputforflash.html +0 -283
  323. data/vendor/assets/javascripts/ckeditor/samples/old/htmlwriter/outputhtml.html +0 -224
  324. data/vendor/assets/javascripts/ckeditor/samples/old/index.html +0 -134
  325. data/vendor/assets/javascripts/ckeditor/samples/old/inlineall.html +0 -314
  326. data/vendor/assets/javascripts/ckeditor/samples/old/inlinebycode.html +0 -124
  327. data/vendor/assets/javascripts/ckeditor/samples/old/inlinetextarea.html +0 -113
  328. data/vendor/assets/javascripts/ckeditor/samples/old/jquery.html +0 -103
  329. data/vendor/assets/javascripts/ckeditor/samples/old/magicline/magicline.html +0 -209
  330. data/vendor/assets/javascripts/ckeditor/samples/old/readonly.html +0 -76
  331. data/vendor/assets/javascripts/ckeditor/samples/old/replacebyclass.html +0 -60
  332. data/vendor/assets/javascripts/ckeditor/samples/old/replacebycode.html +0 -59
  333. data/vendor/assets/javascripts/ckeditor/samples/old/sample.css +0 -357
  334. data/vendor/assets/javascripts/ckeditor/samples/old/sample.js +0 -50
  335. data/vendor/assets/javascripts/ckeditor/samples/old/sample_posteddata.php +0 -16
  336. data/vendor/assets/javascripts/ckeditor/samples/old/stylesheetparser/assets/sample.css +0 -70
  337. data/vendor/assets/javascripts/ckeditor/samples/old/stylesheetparser/stylesheetparser.html +0 -85
  338. data/vendor/assets/javascripts/ckeditor/samples/old/tabindex.html +0 -78
  339. data/vendor/assets/javascripts/ckeditor/samples/old/toolbar/toolbar.html +0 -235
  340. data/vendor/assets/javascripts/ckeditor/samples/old/uicolor.html +0 -72
  341. data/vendor/assets/javascripts/ckeditor/samples/old/uilanguages.html +0 -122
  342. data/vendor/assets/javascripts/ckeditor/samples/old/wysiwygarea/fullpage.html +0 -80
  343. data/vendor/assets/javascripts/ckeditor/samples/old/xhtmlstyle.html +0 -234
  344. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/css/fontello.css +0 -55
  345. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/LICENSE.txt +0 -10
  346. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/config.json +0 -28
  347. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/fontello.eot +0 -0
  348. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/fontello.svg +0 -14
  349. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/fontello.ttf +0 -0
  350. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/fontello.woff +0 -0
  351. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/index.html +0 -446
  352. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/js/abstracttoolbarmodifier.js +0 -13
  353. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/js/fulltoolbareditor.js +0 -9
  354. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/js/toolbarmodifier.js +0 -33
  355. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/js/toolbartextmodifier.js +0 -14
  356. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/LICENSE +0 -19
  357. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.css +0 -325
  358. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.js +0 -288
  359. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/javascript.js +0 -25
  360. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/neo.css +0 -36
  361. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.css +0 -38
  362. data/vendor/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.js +0 -16
  363. data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/icons.png +0 -0
  364. data/vendor/assets/javascripts/ckeditor/skins/moono-lisa/icons_hidpi.png +0 -0
@@ -1,50 +0,0 @@
1
- /**
2
- * Copyright (c) 2003-2018, CKSource - Frederico Knabben. All rights reserved.
3
- * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
- */
5
-
6
- // Tool scripts for the sample pages.
7
- // This file can be ignored and is not required to make use of CKEditor.
8
-
9
- ( function() {
10
- CKEDITOR.on( 'instanceReady', function( ev ) {
11
- // Check for sample compliance.
12
- var editor = ev.editor,
13
- meta = CKEDITOR.document.$.getElementsByName( 'ckeditor-sample-required-plugins' ),
14
- requires = meta.length ? CKEDITOR.dom.element.get( meta[ 0 ] ).getAttribute( 'content' ).split( ',' ) : [],
15
- missing = [],
16
- i;
17
-
18
- if ( requires.length ) {
19
- for ( i = 0; i < requires.length; i++ ) {
20
- if ( !editor.plugins[ requires[ i ] ] )
21
- missing.push( '<code>' + requires[ i ] + '</code>' );
22
- }
23
-
24
- if ( missing.length ) {
25
- var warn = CKEDITOR.dom.element.createFromHtml(
26
- '<div class="warning">' +
27
- '<span>To fully experience this demo, the ' + missing.join( ', ' ) + ' plugin' + ( missing.length > 1 ? 's are' : ' is' ) + ' required.</span>' +
28
- '</div>'
29
- );
30
- warn.insertBefore( editor.container );
31
- }
32
- }
33
-
34
- // Set icons.
35
- var doc = new CKEDITOR.dom.document( document ),
36
- icons = doc.find( '.button_icon' );
37
-
38
- for ( i = 0; i < icons.count(); i++ ) {
39
- var icon = icons.getItem( i ),
40
- name = icon.getAttribute( 'data-icon' ),
41
- style = CKEDITOR.skin.getIconStyle( name, ( CKEDITOR.lang.dir == 'rtl' ) );
42
-
43
- icon.addClass( 'cke_button_icon' );
44
- icon.addClass( 'cke_button__' + name + '_icon' );
45
- icon.setAttribute( 'style', style );
46
- icon.setStyle( 'float', 'none' );
47
-
48
- }
49
- } );
50
- } )();
@@ -1,16 +0,0 @@
1
- <?php /* <body><pre>
2
-
3
- -------------------------------------------------------------------------------------------
4
- CKEditor - Posted Data
5
-
6
- We are sorry, but your Web server does not support the PHP language used in this script.
7
-
8
- Please note that CKEditor can be used with any other server-side language than just PHP.
9
- To save the content created with CKEditor you need to read the POST data on the server
10
- side and write it to a file or the database.
11
-
12
- Copyright (c) 2003-2018, CKSource - Frederico Knabben. All rights reserved.
13
- For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
14
- -------------------------------------------------------------------------------------------
15
-
16
- </pre><div style="display:none"></body> */ include "assets/posteddata.php"; ?>
@@ -1,70 +0,0 @@
1
- body
2
- {
3
- font-family: Arial, Verdana, sans-serif;
4
- font-size: 12px;
5
- color: #222;
6
- background-color: #fff;
7
- }
8
-
9
- /* preserved spaces for rtl list item bullets. (#6249)*/
10
- ol,ul,dl
11
- {
12
- padding-right:40px;
13
- }
14
-
15
- h1,h2,h3,h4
16
- {
17
- font-family: Georgia, Times, serif;
18
- }
19
-
20
- h1.lightBlue
21
- {
22
- color: #00A6C7;
23
- font-size: 1.8em;
24
- font-weight:normal;
25
- }
26
-
27
- h3.green
28
- {
29
- color: #739E39;
30
- font-weight:normal;
31
- }
32
-
33
- span.markYellow { background-color: yellow; }
34
- span.markGreen { background-color: lime; }
35
-
36
- img.left
37
- {
38
- padding: 5px;
39
- margin-right: 5px;
40
- float:left;
41
- border:2px solid #DDD;
42
- }
43
-
44
- img.right
45
- {
46
- padding: 5px;
47
- margin-right: 5px;
48
- float:right;
49
- border:2px solid #DDD;
50
- }
51
-
52
- a.green
53
- {
54
- color:#739E39;
55
- }
56
-
57
- table.grey
58
- {
59
- background-color : #F5F5F5;
60
- }
61
-
62
- table.grey th
63
- {
64
- background-color : #DDD;
65
- }
66
-
67
- ul.square
68
- {
69
- list-style-type : square;
70
- }
@@ -1,85 +0,0 @@
1
- <!DOCTYPE html>
2
- <!--
3
- Copyright (c) 2003-2018, CKSource - Frederico Knabben. All rights reserved.
4
- For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
5
- -->
6
- <html>
7
- <head>
8
- <meta charset="utf-8">
9
- <title>Using Stylesheet Parser Plugin &mdash; CKEditor Sample</title>
10
- <script src="../../../ckeditor.js"></script>
11
- <script src="../../../samples/old/sample.js"></script>
12
- <link rel="stylesheet" href="../../../samples/old/sample.css">
13
- <meta name="ckeditor-sample-required-plugins" content="stylescombo">
14
- <meta name="ckeditor-sample-name" content="Stylesheet Parser plugin">
15
- <meta name="ckeditor-sample-description" content="Using the Stylesheet Parser plugin to fill the Styles drop-down list based on the CSS classes available in the document stylesheet.">
16
- <meta name="ckeditor-sample-group" content="Plugins">
17
- </head>
18
- <body>
19
- <h1 class="samples">
20
- <a href="../../../samples/old/index.html">CKEditor Samples</a> &raquo; Using the Stylesheet Parser Plugin
21
- </h1>
22
- <div class="warning deprecated">
23
- This sample is not maintained anymore. Check out its <a href="https://sdk.ckeditor.com/samples/styles.html">brand new version in CKEditor SDK</a>.
24
- </div>
25
- <div class="description">
26
- <p>
27
- This sample shows how to configure CKEditor instances to use the
28
- <strong>Stylesheet Parser</strong> (<code>stylesheetparser</code>) plugin that fills
29
- the <strong>Styles</strong> drop-down list based on the CSS rules available in the document stylesheet.
30
- </p>
31
- <p>
32
- To add a CKEditor instance using the <code>stylesheetparser</code> plugin, insert
33
- the following JavaScript call into your code:
34
- </p>
35
- <pre class="samples">
36
- CKEDITOR.replace( '<em>textarea_id</em>', {
37
- <strong>extraPlugins: 'stylesheetparser'</strong>
38
- });</pre>
39
- <p>
40
- Note that <code><em>textarea_id</em></code> in the code above is the <code>id</code> attribute of
41
- the <code>&lt;textarea&gt;</code> element to be replaced with CKEditor.
42
- </p>
43
- </div>
44
- <form action="../../../samples/sample_posteddata.php" method="post">
45
- <p>
46
- <label for="editor1">
47
- CKEditor using the <code>stylesheetparser</code> plugin with its default configuration:
48
- </label>
49
- <textarea cols="80" id="editor1" name="editor1" rows="10">&lt;p&gt;This is some &lt;strong&gt;sample text&lt;/strong&gt;. You are using &lt;a href="https://ckeditor.com/"&gt;CKEditor&lt;/a&gt;.&lt;/p&gt;</textarea>
50
- <script>
51
-
52
- // This call can be placed at any point after the
53
- // <textarea>, or inside a <head><script> in a
54
- // window.onload event handler.
55
-
56
- // Replace the <textarea id="editor"> with an CKEditor
57
- // instance, using default configurations.
58
- CKEDITOR.replace( 'editor1' , {
59
- extraPlugins: 'stylesheetparser',
60
-
61
- // Stylesheet for the contents.
62
- contentsCss: 'assets/sample.css',
63
-
64
- // Do not load the default Styles configuration.
65
- stylesSet: []
66
- });
67
-
68
- </script>
69
- </p>
70
- <p>
71
- <input type="submit" value="Submit">
72
- </p>
73
- </form>
74
- <div id="footer">
75
- <hr>
76
- <p>
77
- CKEditor - The text editor for the Internet - <a class="samples" href="https://ckeditor.com/">https://ckeditor.com</a>
78
- </p>
79
- <p id="copy">
80
- Copyright &copy; 2003-2018, <a class="samples" href="https://cksource.com/">CKSource</a> - Frederico
81
- Knabben. All rights reserved.
82
- </p>
83
- </div>
84
- </body>
85
- </html>
@@ -1,78 +0,0 @@
1
- <!DOCTYPE html>
2
- <!--
3
- Copyright (c) 2003-2018, CKSource - Frederico Knabben. All rights reserved.
4
- For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
5
- -->
6
- <html>
7
- <head>
8
- <meta charset="utf-8">
9
- <title>TAB Key-Based Navigation &mdash; CKEditor Sample</title>
10
- <script src="../../ckeditor.js"></script>
11
- <link href="sample.css" rel="stylesheet">
12
- <style>
13
-
14
- .cke_focused,
15
- .cke_editable.cke_focused
16
- {
17
- outline: 3px dotted blue !important;
18
- *border: 3px dotted blue !important; /* For IE7 */
19
- }
20
-
21
- </style>
22
- <script>
23
-
24
- CKEDITOR.on( 'instanceReady', function( evt ) {
25
- var editor = evt.editor;
26
- editor.setData( 'This editor has it\'s tabIndex set to <strong>' + editor.tabIndex + '</strong>' );
27
-
28
- // Apply focus class name.
29
- editor.on( 'focus', function() {
30
- editor.container.addClass( 'cke_focused' );
31
- });
32
- editor.on( 'blur', function() {
33
- editor.container.removeClass( 'cke_focused' );
34
- });
35
-
36
- // Put startup focus on the first editor in tab order.
37
- if ( editor.tabIndex == 1 )
38
- editor.focus();
39
- });
40
-
41
- </script>
42
- </head>
43
- <body>
44
- <h1 class="samples">
45
- <a href="index.html">CKEditor Samples</a> &raquo; TAB Key-Based Navigation
46
- </h1>
47
- <div class="warning deprecated">
48
- This sample is not maintained anymore. Check out its <a href="https://sdk.ckeditor.com/samples/tabindex.html">brand new version in CKEditor SDK</a>.
49
- </div>
50
- <div class="description">
51
- <p>
52
- This sample shows how tab key navigation among editor instances is
53
- affected by the <code>tabIndex</code> attribute from
54
- the original page element. Use TAB key to move between the editors.
55
- </p>
56
- </div>
57
- <p>
58
- <textarea class="ckeditor" cols="80" id="editor4" rows="10" tabindex="1"></textarea>
59
- </p>
60
- <div class="ckeditor" contenteditable="true" id="editor1" tabindex="4"></div>
61
- <p>
62
- <textarea class="ckeditor" cols="80" id="editor2" rows="10" tabindex="2"></textarea>
63
- </p>
64
- <p>
65
- <textarea class="ckeditor" cols="80" id="editor3" rows="10" tabindex="3"></textarea>
66
- </p>
67
- <div id="footer">
68
- <hr>
69
- <p>
70
- CKEditor - The text editor for the Internet - <a class="samples" href="https://ckeditor.com/">https://ckeditor.com</a>
71
- </p>
72
- <p id="copy">
73
- Copyright &copy; 2003-2018, <a class="samples" href="https://cksource.com/">CKSource</a> - Frederico
74
- Knabben. All rights reserved.
75
- </p>
76
- </div>
77
- </body>
78
- </html>
@@ -1,235 +0,0 @@
1
- <!DOCTYPE html>
2
- <!--
3
- Copyright (c) 2003-2018, CKSource - Frederico Knabben. All rights reserved.
4
- For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
5
- -->
6
- <html>
7
- <head>
8
- <meta charset="utf-8">
9
- <title>Toolbar Configuration &mdash; CKEditor Sample</title>
10
- <meta name="ckeditor-sample-name" content="Toolbar Configurations">
11
- <meta name="ckeditor-sample-group" content="Advanced Samples">
12
- <meta name="ckeditor-sample-description" content="Configuring CKEditor to display full or custom toolbar layout.">
13
- <script src="../../../ckeditor.js"></script>
14
- <link href="../../../samples/old/sample.css" rel="stylesheet">
15
- </head>
16
- <body>
17
- <h1 class="samples">
18
- <a href="../../../samples/old/index.html">CKEditor Samples</a> &raquo; Toolbar Configuration
19
- </h1>
20
- <div class="warning deprecated">
21
- This sample is not maintained anymore. Check out the <a href="../../../samples/toolbarconfigurator/index.html#basic">brand new CKEditor Toolbar Configurator</a>.
22
- </div>
23
- <div class="description">
24
- <p>
25
- This sample page demonstrates editor with loaded <a href="#fullToolbar">full toolbar</a> (all registered buttons) and, if
26
- current editor's configuration modifies default settings, also editor with <a href="#currentToolbar">modified toolbar</a>.
27
- </p>
28
-
29
- <p>Since CKEditor 4 there are two ways to configure toolbar buttons.</p>
30
-
31
- <h2 class="samples">By <a href="https://ckeditor.com/docs/ckeditor4/latest/api/CKEDITOR_config.html#cfg-toolbar">config.toolbar</a></h2>
32
-
33
- <p>
34
- You can explicitly define which buttons are displayed in which groups and in which order.
35
- This is the more precise setting, but less flexible. If newly added plugin adds its
36
- own button you'll have to add it manually to your <code>config.toolbar</code> setting as well.
37
- </p>
38
-
39
- <p>To add a CKEditor instance with custom toolbar setting, insert the following JavaScript call to your code:</p>
40
-
41
- <pre class="samples">
42
- CKEDITOR.replace( <em>'textarea_id'</em>, {
43
- <strong>toolbar:</strong> [
44
- { name: 'document', items: [ 'Source', '-', 'NewPage', 'Preview', '-', 'Templates' ] }, // Defines toolbar group with name (used to create voice label) and items in 3 subgroups.
45
- [ 'Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord', '-', 'Undo', 'Redo' ], // Defines toolbar group without name.
46
- '/', // Line break - next group will be placed in new line.
47
- { name: 'basicstyles', items: [ 'Bold', 'Italic' ] }
48
- ]
49
- });</pre>
50
-
51
- <h2 class="samples">By <a href="https://ckeditor.com/docs/ckeditor4/latest/api/CKEDITOR_config.html#cfg-toolbarGroups">config.toolbarGroups</a></h2>
52
-
53
- <p>
54
- You can define which groups of buttons (like e.g. <code>basicstyles</code>, <code>clipboard</code>
55
- and <code>forms</code>) are displayed and in which order. Registered buttons are associated
56
- with toolbar groups by <code>toolbar</code> property in their definition.
57
- This setting's advantage is that you don't have to modify toolbar configuration
58
- when adding/removing plugins which register their own buttons.
59
- </p>
60
-
61
- <p>To add a CKEditor instance with custom toolbar groups setting, insert the following JavaScript call to your code:</p>
62
-
63
- <pre class="samples">
64
- CKEDITOR.replace( <em>'textarea_id'</em>, {
65
- <strong>toolbarGroups:</strong> [
66
- { name: 'document', groups: [ 'mode', 'document' ] }, // Displays document group with its two subgroups.
67
- { name: 'clipboard', groups: [ 'clipboard', 'undo' ] }, // Group's name will be used to create voice label.
68
- '/', // Line break - next group will be placed in new line.
69
- { name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
70
- { name: 'links' }
71
- ]
72
-
73
- // NOTE: Remember to leave 'toolbar' property with the default value (null).
74
- });</pre>
75
- </div>
76
-
77
- <div id="currentToolbar" style="display: none">
78
- <h2 class="samples">Current toolbar configuration</h2>
79
- <p>Below you can see editor with current toolbar definition.</p>
80
- <textarea cols="80" id="editorCurrent" name="editorCurrent" rows="10">&lt;p&gt;This is some &lt;strong&gt;sample text&lt;/strong&gt;. You are using &lt;a href="https://ckeditor.com/"&gt;CKEditor&lt;/a&gt;.&lt;/p&gt;</textarea>
81
- <pre id="editorCurrentCfg" class="samples"></pre>
82
- </div>
83
-
84
- <div id="fullToolbar">
85
- <h2 class="samples">Full toolbar configuration</h2>
86
- <p>Below you can see editor with full toolbar, generated automatically by the editor.</p>
87
- <p>
88
- <strong>Note</strong>: To create editor instance with full toolbar you don't have to set anything.
89
- Just leave <code>toolbar</code> and <code>toolbarGroups</code> with the default, <code>null</code> values.
90
- </p>
91
- <textarea cols="80" id="editorFull" name="editorFull" rows="10">&lt;p&gt;This is some &lt;strong&gt;sample text&lt;/strong&gt;. You are using &lt;a href="https://ckeditor.com/"&gt;CKEditor&lt;/a&gt;.&lt;/p&gt;</textarea>
92
- <pre id="editorFullCfg" class="samples"></pre>
93
- </div>
94
-
95
- <script>
96
-
97
- (function() {
98
- 'use strict';
99
-
100
- var buttonsNames;
101
-
102
- CKEDITOR.config.extraPlugins = 'toolbar';
103
-
104
- CKEDITOR.on( 'instanceReady', function( evt ) {
105
- var editor = evt.editor,
106
- editorCurrent = editor.name == 'editorCurrent',
107
- defaultToolbar = !( editor.config.toolbar || editor.config.toolbarGroups || editor.config.removeButtons ),
108
- pre = CKEDITOR.document.getById( editor.name + 'Cfg' ),
109
- output = '';
110
-
111
- if ( editorCurrent ) {
112
- // If default toolbar configuration has been modified, show "current toolbar" section.
113
- if ( !defaultToolbar )
114
- CKEDITOR.document.getById( 'currentToolbar' ).show();
115
- else
116
- return;
117
- }
118
-
119
- if ( !buttonsNames )
120
- buttonsNames = createButtonsNamesHash( editor.ui.items );
121
-
122
- // Toolbar isn't set explicitly, so it was created automatically from toolbarGroups.
123
- if ( !editor.config.toolbar ) {
124
- output +=
125
- '// Toolbar configuration generated automatically by the editor based on config.toolbarGroups.\n' +
126
- dumpToolbarConfiguration( editor ) +
127
- '\n\n' +
128
- '// Toolbar groups configuration.\n' +
129
- dumpToolbarConfiguration( editor, true )
130
- }
131
- // Toolbar groups doesn't count in this case - print only toolbar.
132
- else {
133
- output += '// Toolbar configuration.\n' +
134
- dumpToolbarConfiguration( editor );
135
- }
136
-
137
- // Recreate to avoid old IE from loosing whitespaces on filling <pre> content.
138
- var preOutput = pre.getOuterHtml().replace( /(?=<\/)/, output );
139
- CKEDITOR.dom.element.createFromHtml( preOutput ).replace( pre );
140
- } );
141
-
142
- CKEDITOR.replace( 'editorCurrent', { height: 100 } );
143
- CKEDITOR.replace( 'editorFull', {
144
- // Reset toolbar settings, so full toolbar will be generated automatically.
145
- toolbar: null,
146
- toolbarGroups: null,
147
- removeButtons: null,
148
- height: 100
149
- } );
150
-
151
- function dumpToolbarConfiguration( editor, printGroups ) {
152
- var output = [],
153
- toolbar = editor.toolbar;
154
-
155
- for ( var i = 0; i < toolbar.length; ++i ) {
156
- var group = dumpToolbarGroup( toolbar[ i ], printGroups );
157
- if ( group )
158
- output.push( group );
159
- }
160
-
161
- return 'config.toolbar' + ( printGroups ? 'Groups' : '' ) + ' = [\n\t' + output.join( ',\n\t' ) + '\n];';
162
- }
163
-
164
- function dumpToolbarGroup( group, printGroups ) {
165
- var output = [];
166
-
167
- if ( typeof group == 'string' )
168
- return '\'' + group + '\'';
169
- if ( CKEDITOR.tools.isArray( group ) )
170
- return dumpToolbarItems( group );
171
- // Skip group when printing entire toolbar configuration and there are no items in this group.
172
- if ( !printGroups && !group.items )
173
- return;
174
-
175
- if ( group.name )
176
- output.push( 'name: \'' + group.name + '\'' );
177
-
178
- if ( group.groups )
179
- output.push( 'groups: ' + dumpToolbarItems( group.groups ) );
180
-
181
- if ( !printGroups )
182
- output.push( 'items: ' + dumpToolbarItems( group.items ) );
183
-
184
- return '{ ' + output.join( ', ' ) + ' }';
185
- }
186
-
187
- function dumpToolbarItems( items ) {
188
- if ( typeof items == 'string' )
189
- return '\'' + items + '\'';
190
-
191
- var names = [],
192
- i, item;
193
-
194
- for ( var i = 0; i < items.length; ++i ) {
195
- item = items[ i ];
196
- if ( typeof item == 'string' )
197
- names.push( item );
198
- else {
199
- if ( item.type == CKEDITOR.UI_SEPARATOR )
200
- names.push( '-' );
201
- else
202
- names.push( buttonsNames[ item.name ] );
203
- }
204
- }
205
-
206
- return '[ \'' + names.join( '\', \'' ) + '\' ]';
207
- }
208
-
209
- // Creates { 'lowercased': 'LowerCased' } buttons names hash.
210
- function createButtonsNamesHash( items ) {
211
- var hash = {},
212
- name;
213
-
214
- for ( name in items ) {
215
- hash[ items[ name ].name ] = name;
216
- }
217
-
218
- return hash;
219
- }
220
-
221
- })();
222
- </script>
223
-
224
- <div id="footer">
225
- <hr>
226
- <p>
227
- CKEditor - The text editor for the Internet - <a class="samples" href="https://ckeditor.com/">https://ckeditor.com</a>
228
- </p>
229
- <p id="copy">
230
- Copyright &copy; 2003-2018, <a class="samples" href="https://cksource.com/">CKSource</a> - Frederico
231
- Knabben. All rights reserved.
232
- </p>
233
- </div>
234
- </body>
235
- </html>