ckeditor 4.1.6 → 4.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (307) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +14 -21
  3. data/README.md +24 -13
  4. data/app/controllers/ckeditor/application_controller.rb +4 -4
  5. data/app/controllers/ckeditor/attachment_files_controller.rb +2 -2
  6. data/app/controllers/ckeditor/pictures_controller.rb +1 -1
  7. data/app/views/ckeditor/attachment_files/index.html.erb +1 -1
  8. data/lib/ckeditor.rb +28 -19
  9. data/lib/ckeditor/asset_response.rb +68 -24
  10. data/lib/ckeditor/backend/carrierwave.rb +8 -5
  11. data/lib/ckeditor/backend/dragonfly.rb +5 -3
  12. data/lib/ckeditor/backend/paperclip.rb +19 -19
  13. data/lib/ckeditor/backend/refile.rb +5 -3
  14. data/lib/ckeditor/helpers/controllers.rb +19 -19
  15. data/lib/ckeditor/helpers/form_builder.rb +1 -1
  16. data/lib/ckeditor/hooks/cancan.rb +0 -2
  17. data/lib/ckeditor/hooks/formtastic.rb +2 -2
  18. data/lib/ckeditor/hooks/pundit.rb +1 -4
  19. data/lib/ckeditor/hooks/simple_form.rb +9 -14
  20. data/lib/ckeditor/http.rb +9 -11
  21. data/lib/ckeditor/orm/active_record.rb +2 -2
  22. data/lib/ckeditor/orm/base.rb +4 -4
  23. data/lib/ckeditor/orm/mongoid.rb +5 -5
  24. data/lib/ckeditor/paginatable.rb +1 -1
  25. data/lib/ckeditor/rails.rb +33 -0
  26. data/lib/ckeditor/text_area.rb +14 -14
  27. data/lib/ckeditor/utils.rb +18 -20
  28. data/lib/ckeditor/utils/content_type_detector.rb +7 -10
  29. data/lib/ckeditor/utils/javascript_code.rb +8 -3
  30. data/lib/ckeditor/version.rb +2 -2
  31. data/lib/generators/ckeditor/install_generator.rb +39 -30
  32. data/lib/generators/ckeditor/pundit_policy_generator.rb +1 -3
  33. data/lib/generators/ckeditor/templates/active_record/carrierwave/ckeditor/asset.rb +2 -2
  34. data/lib/generators/ckeditor/templates/active_record/carrierwave/ckeditor/attachment_file.rb +1 -1
  35. data/lib/generators/ckeditor/templates/active_record/carrierwave/ckeditor/picture.rb +1 -1
  36. data/lib/generators/ckeditor/templates/active_record/carrierwave/migration.rb +7 -7
  37. data/lib/generators/ckeditor/templates/active_record/dragonfly/ckeditor/asset.rb +1 -1
  38. data/lib/generators/ckeditor/templates/active_record/dragonfly/ckeditor/attachment_file.rb +1 -1
  39. data/lib/generators/ckeditor/templates/active_record/dragonfly/ckeditor/picture.rb +4 -4
  40. data/lib/generators/ckeditor/templates/active_record/dragonfly/migration.rb +7 -7
  41. data/lib/generators/ckeditor/templates/active_record/paperclip/ckeditor/attachment_file.rb +3 -3
  42. data/lib/generators/ckeditor/templates/active_record/paperclip/ckeditor/picture.rb +5 -5
  43. data/lib/generators/ckeditor/templates/active_record/paperclip/migration.rb +3 -3
  44. data/lib/generators/ckeditor/templates/active_record/refile/migration.rb +8 -9
  45. data/lib/generators/ckeditor/templates/base/carrierwave/uploaders/ckeditor_picture_uploader.rb +4 -4
  46. data/lib/generators/ckeditor/templates/base/dragonfly/initializer.rb +4 -5
  47. data/lib/generators/ckeditor/templates/ckeditor.rb +11 -2
  48. data/lib/generators/ckeditor/templates/mongoid/carrierwave/ckeditor/asset.rb +2 -2
  49. data/lib/generators/ckeditor/templates/mongoid/carrierwave/ckeditor/attachment_file.rb +1 -1
  50. data/lib/generators/ckeditor/templates/mongoid/carrierwave/ckeditor/picture.rb +1 -1
  51. data/lib/generators/ckeditor/templates/mongoid/paperclip/ckeditor/attachment_file.rb +5 -5
  52. data/lib/generators/ckeditor/templates/mongoid/paperclip/ckeditor/picture.rb +5 -5
  53. data/test/dummy/config/initializers/assets.rb +1 -0
  54. data/test/dummy/config/initializers/paperclip.rb +3 -0
  55. data/test/dummy/public/ckeditor_assets/attachments/1/rails_tar.gz +0 -0
  56. data/test/dummy/public/ckeditor_assets/pictures/1/content_rails.png +0 -0
  57. data/test/dummy/public/ckeditor_assets/pictures/1/original_rails.png +0 -0
  58. data/test/dummy/public/ckeditor_assets/pictures/1/thumb_rails.png +0 -0
  59. data/test/dummy/public/uploads/ckeditor/attachments/1/rails.tar.gz +0 -0
  60. data/test/dummy/public/uploads/ckeditor/pictures/1/content_rails.png +0 -0
  61. data/test/dummy/public/uploads/ckeditor/pictures/1/rails.png +0 -0
  62. data/test/dummy/public/uploads/ckeditor/pictures/1/thumb_rails.png +0 -0
  63. data/test/dummy/public/uploads/tmp/1468570200-60772-1241/rails.png +0 -0
  64. data/test/dummy/public/uploads/tmp/1468570200-60772-1405/rails.png +0 -0
  65. data/test/dummy/public/uploads/tmp/1468570200-60772-2164/rails.png +0 -0
  66. data/test/dummy/public/uploads/tmp/1468570200-60772-6603/rails.png +0 -0
  67. data/test/dummy/public/uploads/tmp/1468570200-60772-8111/rails.png +0 -0
  68. data/test/functional/posts_controller_test.rb +2 -3
  69. data/test/models/ckeditor_test.rb +1 -1
  70. data/test/tmp/app/models/ckeditor/asset.rb +5 -0
  71. data/test/tmp/app/models/ckeditor/attachment_file.rb +13 -0
  72. data/test/tmp/app/models/ckeditor/picture.rb +14 -0
  73. data/test/tmp/config/initializers/ckeditor.rb +58 -0
  74. data/test/tmp/config/routes.rb +5 -0
  75. data/vendor/assets/javascripts/ckeditor/CHANGES.md +59 -1
  76. data/vendor/assets/javascripts/ckeditor/LICENSE.md +2 -2
  77. data/vendor/assets/javascripts/ckeditor/README.md +1 -1
  78. data/vendor/assets/javascripts/ckeditor/adapters/jquery.js +1 -1
  79. data/vendor/assets/javascripts/ckeditor/ckeditor.js +434 -430
  80. data/vendor/assets/javascripts/ckeditor/config.js +1 -1
  81. data/vendor/assets/javascripts/ckeditor/contents.css +4 -1
  82. data/vendor/assets/javascripts/ckeditor/lang/af.js +1 -1
  83. data/vendor/assets/javascripts/ckeditor/lang/ar.js +1 -1
  84. data/vendor/assets/javascripts/ckeditor/lang/bg.js +1 -1
  85. data/vendor/assets/javascripts/ckeditor/lang/bn.js +2 -2
  86. data/vendor/assets/javascripts/ckeditor/lang/bs.js +1 -1
  87. data/vendor/assets/javascripts/ckeditor/lang/ca.js +1 -1
  88. data/vendor/assets/javascripts/ckeditor/lang/cs.js +1 -1
  89. data/vendor/assets/javascripts/ckeditor/lang/cy.js +1 -1
  90. data/vendor/assets/javascripts/ckeditor/lang/da.js +1 -1
  91. data/vendor/assets/javascripts/ckeditor/lang/de-ch.js +5 -0
  92. data/vendor/assets/javascripts/ckeditor/lang/de.js +1 -1
  93. data/vendor/assets/javascripts/ckeditor/lang/el.js +2 -2
  94. data/vendor/assets/javascripts/ckeditor/lang/en-au.js +1 -1
  95. data/vendor/assets/javascripts/ckeditor/lang/en-ca.js +1 -1
  96. data/vendor/assets/javascripts/ckeditor/lang/en-gb.js +1 -1
  97. data/vendor/assets/javascripts/ckeditor/lang/en.js +1 -1
  98. data/vendor/assets/javascripts/ckeditor/lang/eo.js +1 -1
  99. data/vendor/assets/javascripts/ckeditor/lang/es.js +1 -1
  100. data/vendor/assets/javascripts/ckeditor/lang/et.js +1 -1
  101. data/vendor/assets/javascripts/ckeditor/lang/eu.js +2 -2
  102. data/vendor/assets/javascripts/ckeditor/lang/fa.js +1 -1
  103. data/vendor/assets/javascripts/ckeditor/lang/fi.js +1 -1
  104. data/vendor/assets/javascripts/ckeditor/lang/fo.js +1 -1
  105. data/vendor/assets/javascripts/ckeditor/lang/fr-ca.js +1 -1
  106. data/vendor/assets/javascripts/ckeditor/lang/fr.js +2 -2
  107. data/vendor/assets/javascripts/ckeditor/lang/gl.js +1 -1
  108. data/vendor/assets/javascripts/ckeditor/lang/gu.js +1 -1
  109. data/vendor/assets/javascripts/ckeditor/lang/he.js +1 -1
  110. data/vendor/assets/javascripts/ckeditor/lang/hi.js +1 -1
  111. data/vendor/assets/javascripts/ckeditor/lang/hr.js +1 -1
  112. data/vendor/assets/javascripts/ckeditor/lang/hu.js +1 -1
  113. data/vendor/assets/javascripts/ckeditor/lang/id.js +1 -1
  114. data/vendor/assets/javascripts/ckeditor/lang/is.js +1 -1
  115. data/vendor/assets/javascripts/ckeditor/lang/it.js +1 -1
  116. data/vendor/assets/javascripts/ckeditor/lang/ja.js +1 -1
  117. data/vendor/assets/javascripts/ckeditor/lang/ka.js +1 -1
  118. data/vendor/assets/javascripts/ckeditor/lang/km.js +1 -1
  119. data/vendor/assets/javascripts/ckeditor/lang/ko.js +1 -1
  120. data/vendor/assets/javascripts/ckeditor/lang/ku.js +1 -1
  121. data/vendor/assets/javascripts/ckeditor/lang/lt.js +1 -1
  122. data/vendor/assets/javascripts/ckeditor/lang/lv.js +1 -1
  123. data/vendor/assets/javascripts/ckeditor/lang/mk.js +2 -2
  124. data/vendor/assets/javascripts/ckeditor/lang/mn.js +1 -1
  125. data/vendor/assets/javascripts/ckeditor/lang/ms.js +1 -1
  126. data/vendor/assets/javascripts/ckeditor/lang/nb.js +1 -1
  127. data/vendor/assets/javascripts/ckeditor/lang/nl.js +2 -2
  128. data/vendor/assets/javascripts/ckeditor/lang/no.js +1 -1
  129. data/vendor/assets/javascripts/ckeditor/lang/pl.js +1 -1
  130. data/vendor/assets/javascripts/ckeditor/lang/pt-br.js +1 -1
  131. data/vendor/assets/javascripts/ckeditor/lang/pt.js +2 -2
  132. data/vendor/assets/javascripts/ckeditor/lang/ro.js +1 -1
  133. data/vendor/assets/javascripts/ckeditor/lang/ru.js +1 -1
  134. data/vendor/assets/javascripts/ckeditor/lang/si.js +1 -1
  135. data/vendor/assets/javascripts/ckeditor/lang/sk.js +2 -2
  136. data/vendor/assets/javascripts/ckeditor/lang/sl.js +2 -2
  137. data/vendor/assets/javascripts/ckeditor/lang/sq.js +1 -1
  138. data/vendor/assets/javascripts/ckeditor/lang/sr-latn.js +1 -1
  139. data/vendor/assets/javascripts/ckeditor/lang/sr.js +1 -1
  140. data/vendor/assets/javascripts/ckeditor/lang/sv.js +1 -1
  141. data/vendor/assets/javascripts/ckeditor/lang/th.js +1 -1
  142. data/vendor/assets/javascripts/ckeditor/lang/tr.js +1 -1
  143. data/vendor/assets/javascripts/ckeditor/lang/tt.js +2 -2
  144. data/vendor/assets/javascripts/ckeditor/lang/ug.js +2 -2
  145. data/vendor/assets/javascripts/ckeditor/lang/uk.js +1 -1
  146. data/vendor/assets/javascripts/ckeditor/lang/vi.js +2 -2
  147. data/vendor/assets/javascripts/ckeditor/lang/zh-cn.js +1 -1
  148. data/vendor/assets/javascripts/ckeditor/lang/zh.js +1 -1
  149. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +1 -1
  150. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt +1 -1
  151. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/af.js +1 -1
  152. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js +1 -1
  153. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js +1 -1
  154. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js +1 -1
  155. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js +1 -1
  156. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js +1 -1
  157. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/da.js +1 -1
  158. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/de-ch.js +12 -0
  159. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/de.js +1 -1
  160. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/el.js +1 -1
  161. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js +1 -1
  162. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/en.js +1 -1
  163. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js +1 -1
  164. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/es.js +1 -1
  165. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/et.js +1 -1
  166. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/eu.js +1 -1
  167. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js +1 -1
  168. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js +1 -1
  169. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/fo.js +1 -1
  170. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js +1 -1
  171. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js +9 -9
  172. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js +1 -1
  173. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js +1 -1
  174. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/he.js +1 -1
  175. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js +1 -1
  176. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js +1 -1
  177. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js +1 -1
  178. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/id.js +1 -1
  179. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/it.js +1 -1
  180. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js +1 -1
  181. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/km.js +1 -1
  182. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js +1 -1
  183. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js +1 -1
  184. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js +1 -1
  185. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js +1 -1
  186. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js +7 -7
  187. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js +1 -1
  188. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js +1 -1
  189. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js +1 -1
  190. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/no.js +1 -1
  191. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js +1 -1
  192. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js +1 -1
  193. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js +7 -7
  194. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js +1 -1
  195. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js +1 -1
  196. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/si.js +1 -1
  197. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js +1 -1
  198. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js +6 -6
  199. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/sq.js +1 -1
  200. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js +1 -1
  201. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js +1 -1
  202. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js +1 -1
  203. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/th.js +1 -1
  204. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js +1 -1
  205. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js +1 -1
  206. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js +1 -1
  207. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js +1 -1
  208. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js +1 -1
  209. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js +1 -1
  210. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js +1 -1
  211. data/vendor/assets/javascripts/ckeditor/plugins/about/dialogs/about.js +1 -1
  212. data/vendor/assets/javascripts/ckeditor/plugins/clipboard/dialogs/paste.js +1 -1
  213. data/vendor/assets/javascripts/ckeditor/plugins/colordialog/dialogs/colordialog.css +20 -0
  214. data/vendor/assets/javascripts/ckeditor/plugins/colordialog/dialogs/colordialog.js +11 -10
  215. data/vendor/assets/javascripts/ckeditor/plugins/dialog/dialogDefinition.js +1 -1
  216. data/vendor/assets/javascripts/ckeditor/plugins/find/dialogs/find.js +12 -11
  217. data/vendor/assets/javascripts/ckeditor/plugins/flash/dialogs/flash.js +1 -1
  218. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/button.js +1 -1
  219. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/checkbox.js +1 -1
  220. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/form.js +1 -1
  221. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/hiddenfield.js +1 -1
  222. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/radio.js +1 -1
  223. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/select.js +1 -1
  224. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/textarea.js +1 -1
  225. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/textfield.js +1 -1
  226. data/vendor/assets/javascripts/ckeditor/plugins/iframe/dialogs/iframe.js +1 -1
  227. data/vendor/assets/javascripts/ckeditor/plugins/image/dialogs/image.js +1 -1
  228. data/vendor/assets/javascripts/ckeditor/plugins/link/dialogs/anchor.js +1 -1
  229. data/vendor/assets/javascripts/ckeditor/plugins/link/dialogs/link.js +1 -1
  230. data/vendor/assets/javascripts/ckeditor/plugins/liststyle/dialogs/liststyle.js +1 -1
  231. data/vendor/assets/javascripts/ckeditor/plugins/pastefromword/filter/default.js +1 -1
  232. data/vendor/assets/javascripts/ckeditor/plugins/scayt/CHANGELOG.md +3 -3
  233. data/vendor/assets/javascripts/ckeditor/plugins/smiley/dialogs/smiley.js +1 -1
  234. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt +1 -1
  235. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/af.js +1 -1
  236. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ar.js +1 -1
  237. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/bg.js +1 -1
  238. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ca.js +1 -1
  239. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/cs.js +1 -1
  240. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/cy.js +1 -1
  241. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/da.js +1 -1
  242. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/de-ch.js +13 -0
  243. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/de.js +1 -1
  244. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/el.js +1 -1
  245. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/en-gb.js +1 -1
  246. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/en.js +1 -1
  247. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/eo.js +1 -1
  248. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/es.js +1 -1
  249. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/et.js +1 -1
  250. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/eu.js +1 -1
  251. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/fa.js +1 -1
  252. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/fi.js +1 -1
  253. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/fr-ca.js +1 -1
  254. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/fr.js +9 -8
  255. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/gl.js +1 -1
  256. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/he.js +1 -1
  257. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/hr.js +1 -1
  258. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/hu.js +1 -1
  259. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/id.js +1 -1
  260. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/it.js +2 -2
  261. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ja.js +1 -1
  262. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/km.js +1 -1
  263. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ko.js +1 -1
  264. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ku.js +1 -1
  265. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/lt.js +1 -1
  266. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/lv.js +1 -1
  267. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/nb.js +1 -1
  268. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/nl.js +1 -1
  269. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/no.js +1 -1
  270. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/pl.js +1 -1
  271. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js +1 -1
  272. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/pt.js +10 -10
  273. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ru.js +1 -1
  274. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/si.js +1 -1
  275. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/sk.js +1 -1
  276. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/sl.js +9 -9
  277. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/sq.js +1 -1
  278. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/sv.js +1 -1
  279. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/th.js +1 -1
  280. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/tr.js +1 -1
  281. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/tt.js +1 -1
  282. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ug.js +1 -1
  283. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/uk.js +1 -1
  284. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/vi.js +1 -1
  285. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js +1 -1
  286. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/zh.js +1 -1
  287. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/specialchar.js +1 -1
  288. data/vendor/assets/javascripts/ckeditor/plugins/table/dialogs/table.js +18 -18
  289. data/vendor/assets/javascripts/ckeditor/plugins/tabletools/dialogs/tableCell.js +1 -1
  290. data/vendor/assets/javascripts/ckeditor/plugins/templates/dialogs/templates.css +1 -1
  291. data/vendor/assets/javascripts/ckeditor/plugins/templates/dialogs/templates.js +1 -1
  292. data/vendor/assets/javascripts/ckeditor/plugins/templates/templates/default.js +1 -1
  293. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog.css +2 -2
  294. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie.css +2 -2
  295. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie7.css +2 -2
  296. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie8.css +2 -2
  297. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_iequirks.css +2 -2
  298. data/vendor/assets/javascripts/ckeditor/skins/moono/editor.css +2 -2
  299. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_gecko.css +2 -2
  300. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie.css +2 -2
  301. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie7.css +2 -2
  302. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie8.css +2 -2
  303. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_iequirks.css +2 -2
  304. data/vendor/assets/javascripts/ckeditor/skins/moono/readme.md +1 -1
  305. data/vendor/assets/javascripts/ckeditor/styles.js +1 -1
  306. metadata +120 -75
  307. data/lib/ckeditor/engine.rb +0 -46
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5eabd9522c6e41cc16b578e752c34cb931454a92
4
- data.tar.gz: c11df316e009cde1dcef7c0046ee8db5ab08bdbe
3
+ metadata.gz: 7ba28bfa21d329af77d72bb3f6d787618ea1ba91
4
+ data.tar.gz: dd4bd4dbcb3bab209666f640bc775b5d331b0ba3
5
5
  SHA512:
6
- metadata.gz: ba3eab2c3f744e674b0569974f4cab7832c1c64d5927f25d1d3155dc13160d78d0610966c16661b9d422c4bc84c7eeb28b49cad85168571689f5a9e18e20eb04
7
- data.tar.gz: 1d01d18849af4afcb915182b1caf1d4fc2df8159001ceceed5e72c597e6a62943c45abe81254f19a7948768d8f2347a475444c3af0d37e48ed8fd44e50ab03a7
6
+ metadata.gz: cfd9a557133ffdde4d12ea628dfbfd05de84aeca946de7694b8f1ee021cfb40b4ea724cee62aa1ef2aae5cf0bfa88380f9f325ae9b9c71c22c5db4e3a29ad69c
7
+ data.tar.gz: b07c84bda9a828f867e2fe524cc45a1ddbb11f7c55765a9162ba235e93bfae29cfca2c08ae9e9cd094672aa678d82619cd5b8de6dc38b5909ffa3930d26d3596
data/Gemfile CHANGED
@@ -1,42 +1,35 @@
1
- source "http://rubygems.org"
1
+ source 'http://rubygems.org'
2
2
 
3
3
  gemspec
4
4
 
5
- gem "rails", "4.2.4"
6
-
7
- platforms :mri_18 do
8
- group :test do
9
- gem 'ruby-debug'
10
- gem 'SystemTimer'
11
- end
12
- end
5
+ gem 'rails', '4.2.7'
13
6
 
14
7
  platforms :ruby do
15
- gem "sqlite3"
8
+ gem 'sqlite3'
16
9
 
17
10
  group :development do
18
- gem "unicorn", "~> 4.0.1"
11
+ gem 'unicorn', '~> 4.0.1'
19
12
  end
20
13
 
21
14
  group :development, :test do
22
15
  gem 'jquery-rails', '~> 4.0.4'
23
- gem "capybara", ">= 0.4.0"
24
- gem "mynyml-redgreen", "~> 0.7.1", :require => 'redgreen'
16
+ gem 'capybara', '>= 0.4.0'
17
+ gem 'mynyml-redgreen', '~> 0.7.1', require: 'redgreen'
25
18
  end
26
19
 
27
20
  group :active_record do
28
21
  gem 'paperclip'
29
- gem "carrierwave"
30
- gem "dragonfly"
31
- gem "mini_magick"
32
- gem "refile", require: "refile/rails"
33
- gem "refile-mini_magick"
22
+ gem 'carrierwave'
23
+ gem 'dragonfly'
24
+ gem 'mini_magick'
25
+ gem 'refile', require: 'refile/rails'
26
+ gem 'refile-mini_magick'
34
27
  end
35
28
 
36
29
  group :mongoid do
37
30
  gem 'mongoid', '~> 5.0.0'
38
- gem "bson_ext"
39
- gem 'mongoid-paperclip', :require => 'mongoid_paperclip'
40
- gem 'carrierwave-mongoid', :require => 'carrierwave/mongoid'
31
+ gem 'bson_ext'
32
+ gem 'mongoid-paperclip', require: 'mongoid_paperclip'
33
+ gem 'carrierwave-mongoid', require: 'carrierwave/mongoid'
41
34
  end
42
35
  end
data/README.md CHANGED
@@ -8,8 +8,8 @@ CKEditor is a WYSIWYG text editor designed to simplify web content creation. It
8
8
 
9
9
  ## Features
10
10
 
11
- * Ckeditor version 4.5.6 (9 Dec 2015)
12
- * Rails 4 integration
11
+ * Ckeditor version 4.5.10 (13 Jul 2016)
12
+ * Rails 4.2-5 integration
13
13
  * Files browser
14
14
  * HTML5 file uploader
15
15
  * Hooks for formtastic and simple_form forms generators
@@ -32,7 +32,7 @@ gem 'ckeditor', github: 'galetahub/ckeditor'
32
32
  For file upload support, you must generate the necessary file storage models.
33
33
  The currently supported backends are:
34
34
 
35
- * ActiveRecord (paperclip, carrierwave, dragonfly)
35
+ * ActiveRecord (paperclip, carrierwave, dragonfly, refile)
36
36
  * Mongoid (paperclip, carrierwave, dragonfly)
37
37
 
38
38
  ### How to generate models to store uploaded files
@@ -78,7 +78,7 @@ rails generate ckeditor:install --orm=active_record --backend=dragonfly
78
78
  #### Mongoid + paperclip
79
79
 
80
80
  ```
81
- gem 'mongoid-paperclip', :require => 'mongoid_paperclip'
81
+ gem 'mongoid-paperclip', require: 'mongoid_paperclip'
82
82
 
83
83
  rails generate ckeditor:install --orm=mongoid --backend=paperclip
84
84
  ```
@@ -86,7 +86,7 @@ rails generate ckeditor:install --orm=mongoid --backend=paperclip
86
86
  #### Mongoid + carrierwave
87
87
 
88
88
  ```
89
- gem 'carrierwave-mongoid', :require => 'carrierwave/mongoid'
89
+ gem 'carrierwave-mongoid', require: 'carrierwave/mongoid'
90
90
  gem 'mini_magick'
91
91
 
92
92
  rails generate ckeditor:install --orm=mongoid --backend=carrierwave
@@ -98,7 +98,7 @@ All ckeditor models will be generated in the app/models/ckeditor directory.
98
98
  Models are autoloaded in Rails 4. For earlier Rails versions, you need to add them to the autoload path (in application.rb):
99
99
 
100
100
  ```ruby
101
- config.autoload_paths += %W(#{config.root}/app/models/ckeditor)
101
+ config.autoload_paths += %w(#{config.root}/app/models/ckeditor)
102
102
  ```
103
103
 
104
104
  Mount the Ckeditor::Engine in your routes (config/routes.rb):
@@ -126,7 +126,7 @@ Setup editor version to load (more info here http://cdn.ckeditor.com/)
126
126
 
127
127
  Ckeditor.setup do |config|
128
128
  # //cdn.ckeditor.com/<version.number>/<distribution>/ckeditor.js
129
- config.cdn_url = "//cdn.ckeditor.com/4.5.6/standard/ckeditor.js"
129
+ config.cdn_url = "//cdn.ckeditor.com/4.5.10/standard/ckeditor.js"
130
130
  end
131
131
  ```
132
132
 
@@ -140,9 +140,9 @@ In view template include ckeditor CDN:
140
140
 
141
141
  ```slim
142
142
  = form_for @page do |form|
143
- = form.cktext_area :notes, :class => 'someclass', :ckeditor => {:language => 'uk'}
144
- = form.cktext_area :content, :value => 'Default value', :id => 'sometext'
145
- = cktext_area :page, :info, :cols => 40, :ckeditor => {:uiColor => '#AADC6E', :toolbar => 'mini'}
143
+ = form.cktext_area :notes, class: 'someclass', ckeditor: { language: 'uk'}
144
+ = form.cktext_area :content, value: 'Default value', id: 'sometext'
145
+ = cktext_area :page, :info, cols: 40, ckeditor: { uiColor: '#AADC6E', toolbar: 'mini' }
146
146
  ```
147
147
 
148
148
  ### Customize ckeditor
@@ -237,14 +237,14 @@ jQuery sample:
237
237
  ### Formtastic integration
238
238
 
239
239
  ```slim
240
- = form.input :content, :as => :ckeditor
241
- = form.input :content, :as => :ckeditor, :input_html => { :ckeditor => { :height => 400 } }
240
+ = form.input :content, as: :ckeditor
241
+ = form.input :content, as: :ckeditor, input_html: { ckeditor: { height: 400 } }
242
242
  ```
243
243
 
244
244
  ### SimpleForm integration
245
245
 
246
246
  ```slim
247
- = form.input :content, :as => :ckeditor, :input_html => { :ckeditor => {:toolbar => 'Full'} }
247
+ = form.input :content, as: :ckeditor, input_html: { ckeditor: { toolbar: 'Full' } }
248
248
  ```
249
249
 
250
250
  ### CanCan integration
@@ -294,6 +294,17 @@ By default, only the user that logged in can access the models (with actions *in
294
294
 
295
295
  You can customize these two policy files as you like.
296
296
 
297
+ ## Engine configuration
298
+ * To override the default CKEditor routes create a [config.js](https://github.com/galetahub/ckeditor/blob/master/app/assets/javascripts/ckeditor/config.js) file within the host application at `app/assets/javascripts/ckeditor/config.js`
299
+ * To override the default parent controller
300
+ ```
301
+ # in config/initializers/ckeditor.rb
302
+
303
+ Ckeditor.setup do |config|
304
+ config.parent_controller = 'MyController'
305
+ end
306
+ ```
307
+
297
308
  ## I18n
298
309
 
299
310
  ```yml
@@ -1,9 +1,9 @@
1
- class Ckeditor::ApplicationController < ApplicationController
1
+ class Ckeditor::ApplicationController < Ckeditor.parent_controller.constantize
2
2
  layout 'ckeditor/application'
3
3
 
4
- before_filter :find_asset, :only => [:destroy]
5
- before_filter :ckeditor_authorize!
6
- before_filter :authorize_resource
4
+ before_action :find_asset, :only => [:destroy]
5
+ before_action :ckeditor_authorize!
6
+ before_action :authorize_resource
7
7
 
8
8
  protected
9
9
 
@@ -1,6 +1,6 @@
1
1
  class Ckeditor::AttachmentFilesController < Ckeditor::ApplicationController
2
- skip_before_filter :verify_authenticity_token, only: :create
3
-
2
+ skip_before_action :verify_authenticity_token, only: :create
3
+
4
4
  def index
5
5
  @attachments = Ckeditor.attachment_file_adapter.find_all(ckeditor_attachment_files_scope)
6
6
  @attachments = Ckeditor::Paginatable.new(@attachments).page(params[:page])
@@ -1,5 +1,5 @@
1
1
  class Ckeditor::PicturesController < Ckeditor::ApplicationController
2
- skip_before_filter :verify_authenticity_token, only: :create
2
+ skip_before_action :verify_authenticity_token, only: :create
3
3
 
4
4
  def index
5
5
  @pictures = Ckeditor.picture_adapter.find_all(ckeditor_pictures_scope)
@@ -6,7 +6,7 @@
6
6
  </div>
7
7
 
8
8
  <div class="fileupload-list">
9
- <%= render :partial => 'ckeditor/shared/asset', :collection => @attachments.scoped %>
9
+ <%= render :partial => 'ckeditor/shared/asset', :collection => @attachments %>
10
10
  </div>
11
11
 
12
12
  <% unless @attachments.last_page? %>
@@ -28,14 +28,14 @@ module Ckeditor
28
28
  autoload :Refile, 'ckeditor/backend/refile'
29
29
  end
30
30
 
31
- IMAGE_TYPES = %w(image/jpeg image/png image/gif image/jpg image/pjpeg image/tiff image/x-png)
31
+ IMAGE_TYPES = %w(image/jpeg image/png image/gif image/jpg image/pjpeg image/tiff image/x-png).freeze
32
32
 
33
- DEFAULT_AUTHORIZE = Proc.new {}
33
+ DEFAULT_AUTHORIZE = -> {}
34
34
 
35
35
  AUTHORIZATION_ADAPTERS = {}
36
36
 
37
- DEFAULT_CURRENT_USER = Proc.new do
38
- request.env["warden"].try(:user) || respond_to?(:current_user) && current_user
37
+ DEFAULT_CURRENT_USER = lambda do
38
+ request.env['warden'].try(:user) || respond_to?(:current_user) && current_user
39
39
  end
40
40
 
41
41
  # Allowed image file types for upload.
@@ -43,6 +43,11 @@ module Ckeditor
43
43
  mattr_accessor :image_file_types
44
44
  @@image_file_types = %w(jpg jpeg png gif tiff)
45
45
 
46
+ # Allowed flash file types for upload.
47
+ # Set to nil or [] (empty array) for all file types
48
+ mattr_accessor :flash_file_types
49
+ @@flash_file_types = %w(swf)
50
+
46
51
  # Allowed attachment file types for upload.
47
52
  # Set to nil or [] (empty array) for all file types
48
53
  mattr_accessor :attachment_file_types
@@ -56,10 +61,6 @@ module Ckeditor
56
61
  mattr_accessor :asset_path
57
62
  @@asset_path = nil
58
63
 
59
- # Ckeditor assets for precompilation
60
- mattr_accessor :assets
61
- @@assets = nil
62
-
63
64
  # Remove digest from ckeditor asset files while running assets:precompile task?
64
65
  mattr_accessor :run_on_precompile
65
66
  @@run_on_precompile = true
@@ -90,6 +91,10 @@ module Ckeditor
90
91
  @@picture_model = nil
91
92
  @@attachment_file_model = nil
92
93
 
94
+ # Configurable parent controller
95
+ mattr_accessor :parent_controller
96
+ @@parent_controller = 'ApplicationController'
97
+
93
98
  # Default way to setup Ckeditor. Run rails generate ckeditor to create
94
99
  # a fresh initializer with all configuration values.
95
100
  #
@@ -113,11 +118,15 @@ module Ckeditor
113
118
 
114
119
  # All css and js files from ckeditor folder
115
120
  def self.assets
116
- @@assets ||= if Ckeditor.cdn_enabled?
117
- ["ckeditor/config.js"]
118
- else
119
- Utils.select_assets("ckeditor", "vendor/assets/javascripts") << "ckeditor/init.js"
120
- end
121
+ @assets ||= if Ckeditor.cdn_enabled?
122
+ ['ckeditor/config.js']
123
+ else
124
+ Utils.select_assets('ckeditor', 'vendor/assets/javascripts') << 'ckeditor/init.js'
125
+ end
126
+ end
127
+
128
+ def self.assets=(value)
129
+ @assets = value.nil? ? nil : Array(value)
121
130
  end
122
131
 
123
132
  def self.run_on_precompile?
@@ -198,11 +207,11 @@ module Ckeditor
198
207
  extension = args.shift
199
208
 
200
209
  if extension
201
- @authorize = Proc.new {
210
+ @authorize = lambda do
202
211
  @authorization_adapter = Ckeditor::AUTHORIZATION_ADAPTERS[extension].new(*([self] + args).compact)
203
- }
204
- else
205
- @authorize = block if block
212
+ end
213
+ elsif block_given?
214
+ @authorize = block
206
215
  end
207
216
 
208
217
  @authorize || DEFAULT_AUTHORIZE
@@ -221,10 +230,10 @@ module Ckeditor
221
230
  # end
222
231
  #
223
232
  def self.current_user_method(&block)
224
- @current_user = block if block
233
+ @current_user = block if block_given?
225
234
  @current_user || DEFAULT_CURRENT_USER
226
235
  end
227
236
  end
228
237
 
229
- require 'ckeditor/engine'
238
+ require 'ckeditor/rails'
230
239
  require 'ckeditor/version'
@@ -22,38 +22,82 @@ module Ckeditor
22
22
  !(ckeditor? || json?) ? params[:qqfile] : params[:upload]
23
23
  end
24
24
 
25
+ def current_mode
26
+ @current_mode ||= extract_mode
27
+ end
28
+
25
29
  def success(relative_url_root = nil)
26
- if json?
27
- {
28
- json: { "uploaded" => 1, "fileName" => asset.filename, "url" => asset.url }.to_json
29
- }
30
- elsif ckeditor?
31
- {
32
- text: %Q"<script type='text/javascript'>
33
- window.parent.CKEDITOR.tools.callFunction(#{params[:CKEditorFuncNum]}, '#{relative_url_root}#{Ckeditor::Utils.escape_single_quotes(asset.url_content)}');
34
- </script>"
35
- }
30
+ send("success_#{current_mode}", relative_url_root)
31
+ end
32
+
33
+ def errors
34
+ send("errors_#{current_mode}")
35
+ end
36
+
37
+ private
38
+
39
+ def success_json(_relative_url_root = nil)
40
+ {
41
+ json: { uploaded: 1, fileName: asset.filename, url: asset.url }.to_json
42
+ }
43
+ end
44
+
45
+ def success_ckeditor(relative_url_root = nil)
46
+ {
47
+ text: %"<script type='text/javascript'>
48
+ window.parent.CKEDITOR.tools.callFunction(#{params[:CKEditorFuncNum]}, '#{asset_url(relative_url_root)}');
49
+ </script>"
50
+ }
51
+ end
52
+
53
+ def success_default(_relative_url_root = nil)
54
+ {
55
+ json: asset.to_json(only: [:id, :type])
56
+ }
57
+ end
58
+
59
+ def errors_json
60
+ {
61
+ json: { uploaded: 0, error: { message: error_message } }.to_json
62
+ }
63
+ end
64
+
65
+ def errors_ckeditor
66
+ {
67
+ text: %"<script type='text/javascript'>
68
+ window.parent.CKEDITOR.tools.callFunction(#{params[:CKEditorFuncNum]}, null, '#{error_message}');
69
+ </script>"
70
+ }
71
+ end
72
+
73
+ def errors_default
74
+ {
75
+ json: { message: error_message }.to_json
76
+ }
77
+ end
78
+
79
+ def error_message
80
+ Ckeditor::Utils.escape_single_quotes(asset.errors.full_messages.first)
81
+ end
82
+
83
+ def asset_url(relative_url_root)
84
+ url = Ckeditor::Utils.escape_single_quotes(asset.url_content)
85
+
86
+ if URI(url).relative?
87
+ "#{relative_url_root}#{url}"
36
88
  else
37
- {
38
- json: asset.to_json(only: [:id, :type])
39
- }
89
+ url
40
90
  end
41
91
  end
42
92
 
43
- def errors
93
+ def extract_mode
44
94
  if json?
45
- {
46
- json: { "uploaded" => 0, "error" => { "message" => "Upload failed"} }.to_json
47
- }
95
+ :json
48
96
  elsif ckeditor?
49
- {
50
- text: %Q"<script type='text/javascript'>
51
- window.parent.CKEDITOR.tools.callFunction(#{params[:CKEditorFuncNum]}, null, '#{Ckeditor::Utils.escape_single_quotes(asset.errors.full_messages.first)}');
52
- </script>"
53
- }
97
+ :ckeditor
54
98
  else
55
- {nothing: true, format: :json}
99
+ :default
56
100
  end
57
101
  end
58
102
  end
59
- end
103
+ end
@@ -12,7 +12,7 @@ module Ckeditor
12
12
  def self.extended(base)
13
13
  base.class_eval do
14
14
  process :extract_content_type
15
- process :set_size
15
+ process :extract_size
16
16
  end
17
17
  end
18
18
  end
@@ -40,17 +40,20 @@ module Ckeditor
40
40
  model.data_content_type = Utils::ContentTypeDetector.new(file.path).detect
41
41
  end
42
42
 
43
- def set_size
43
+ def extract_size
44
44
  model.data_file_size = file.size
45
45
  end
46
46
 
47
- def read_dimensions
47
+ def extract_dimensions
48
48
  if model.image? && model.has_dimensions?
49
- magick = ::MiniMagick::Image.new(current_path)
50
- model.width, model.height = magick[:width], magick[:height]
49
+ model.width = magick[:width]
50
+ model.height = magick[:height]
51
51
  end
52
52
  end
53
53
 
54
+ def magick
55
+ @magick ||= ::MiniMagick::Image.new(current_path)
56
+ end
54
57
  end
55
58
  end
56
59
  end