ckeditor-rails 0.0.4 → 0.0.5

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.
Files changed (708) hide show
  1. data/README.md +17 -14
  2. data/lib/ckeditor-rails/version.rb +1 -1
  3. data/vendor/assets/ckeditor/ckeditor/.htaccess +1 -1
  4. data/vendor/assets/ckeditor/ckeditor/CHANGES.html +139 -3
  5. data/vendor/assets/ckeditor/ckeditor/INSTALL.html +92 -92
  6. data/vendor/assets/ckeditor/ckeditor/LICENSE.html +2 -2
  7. data/vendor/assets/ckeditor/ckeditor/_samples/adobeair/application.xml +32 -32
  8. data/vendor/assets/ckeditor/ckeditor/_samples/adobeair/run.bat +9 -9
  9. data/vendor/assets/ckeditor/ckeditor/_samples/adobeair/run.sh +1 -1
  10. data/vendor/assets/ckeditor/ckeditor/_samples/adobeair/sample.html +45 -45
  11. data/vendor/assets/ckeditor/ckeditor/_samples/ajax.html +98 -98
  12. data/vendor/assets/ckeditor/ckeditor/_samples/api.html +192 -192
  13. data/vendor/assets/ckeditor/ckeditor/_samples/api_dialog.html +198 -198
  14. data/vendor/assets/ckeditor/ckeditor/_samples/api_dialog/my_dialog.js +28 -28
  15. data/vendor/assets/ckeditor/ckeditor/_samples/asp/advanced.asp +105 -105
  16. data/vendor/assets/ckeditor/ckeditor/_samples/asp/events.asp +136 -136
  17. data/vendor/assets/ckeditor/ckeditor/_samples/asp/index.html +103 -103
  18. data/vendor/assets/ckeditor/ckeditor/_samples/asp/replace.asp +72 -72
  19. data/vendor/assets/ckeditor/ckeditor/_samples/asp/replaceall.asp +77 -77
  20. data/vendor/assets/ckeditor/ckeditor/_samples/asp/sample_posteddata.asp +46 -46
  21. data/vendor/assets/ckeditor/ckeditor/_samples/asp/standalone.asp +72 -72
  22. data/vendor/assets/ckeditor/ckeditor/_samples/assets/_posteddata.php +59 -59
  23. data/vendor/assets/ckeditor/ckeditor/_samples/assets/output_xhtml.css +204 -204
  24. data/vendor/assets/ckeditor/ckeditor/_samples/assets/parsesample.css +70 -70
  25. data/vendor/assets/ckeditor/ckeditor/_samples/assets/swfobject.js +18 -18
  26. data/vendor/assets/ckeditor/ckeditor/_samples/autogrow.html +108 -107
  27. data/vendor/assets/ckeditor/ckeditor/_samples/bbcode.html +125 -125
  28. data/vendor/assets/ckeditor/ckeditor/_samples/devtools.html +94 -94
  29. data/vendor/assets/ckeditor/ckeditor/_samples/divreplace.html +154 -154
  30. data/vendor/assets/ckeditor/ckeditor/_samples/enterkey.html +115 -115
  31. data/vendor/assets/ckeditor/ckeditor/_samples/fullpage.html +82 -82
  32. data/vendor/assets/ckeditor/ckeditor/_samples/index.html +116 -116
  33. data/vendor/assets/ckeditor/ckeditor/_samples/jqueryadapter.html +99 -99
  34. data/vendor/assets/ckeditor/ckeditor/_samples/output_for_flash.html +275 -275
  35. data/vendor/assets/ckeditor/ckeditor/_samples/output_html.html +285 -285
  36. data/vendor/assets/ckeditor/ckeditor/_samples/output_xhtml.html +181 -177
  37. data/vendor/assets/ckeditor/ckeditor/_samples/php/advanced.php +120 -120
  38. data/vendor/assets/ckeditor/ckeditor/_samples/php/events.php +153 -153
  39. data/vendor/assets/ckeditor/ckeditor/_samples/php/index.html +47 -47
  40. data/vendor/assets/ckeditor/ckeditor/_samples/php/replace.php +87 -87
  41. data/vendor/assets/ckeditor/ckeditor/_samples/php/replaceall.php +88 -88
  42. data/vendor/assets/ckeditor/ckeditor/_samples/php/standalone.php +83 -83
  43. data/vendor/assets/ckeditor/ckeditor/_samples/placeholder.html +81 -81
  44. data/vendor/assets/ckeditor/ckeditor/_samples/readonly.html +91 -91
  45. data/vendor/assets/ckeditor/ckeditor/_samples/replacebyclass.html +64 -64
  46. data/vendor/assets/ckeditor/ckeditor/_samples/replacebycode.html +97 -97
  47. data/vendor/assets/ckeditor/ckeditor/_samples/sample.css +163 -163
  48. data/vendor/assets/ckeditor/ckeditor/_samples/sample.js +65 -65
  49. data/vendor/assets/ckeditor/ckeditor/_samples/sample_posteddata.php +21 -21
  50. data/vendor/assets/ckeditor/ckeditor/_samples/sharedspaces.html +153 -153
  51. data/vendor/assets/ckeditor/ckeditor/_samples/skins.html +110 -110
  52. data/vendor/assets/ckeditor/ckeditor/_samples/stylesheetparser.html +93 -93
  53. data/vendor/assets/ckeditor/ckeditor/_samples/tableresize.html +115 -115
  54. data/vendor/assets/ckeditor/ckeditor/_samples/ui_color.html +129 -129
  55. data/vendor/assets/ckeditor/ckeditor/_samples/ui_languages.html +134 -134
  56. data/vendor/assets/ckeditor/ckeditor/_source/adapters/jquery.js +306 -306
  57. data/vendor/assets/ckeditor/ckeditor/_source/core/_bootstrap.js +87 -87
  58. data/vendor/assets/ckeditor/ckeditor/_source/core/ckeditor.js +141 -141
  59. data/vendor/assets/ckeditor/ckeditor/_source/core/ckeditor_base.js +235 -227
  60. data/vendor/assets/ckeditor/ckeditor/_source/core/ckeditor_basic.js +238 -238
  61. data/vendor/assets/ckeditor/ckeditor/_source/core/command.js +225 -209
  62. data/vendor/assets/ckeditor/ckeditor/_source/core/commanddefinition.js +129 -129
  63. data/vendor/assets/ckeditor/ckeditor/_source/core/config.js +447 -431
  64. data/vendor/assets/ckeditor/ckeditor/_source/core/dataprocessor.js +65 -65
  65. data/vendor/assets/ckeditor/ckeditor/_source/core/dom.js +20 -20
  66. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/comment.js +44 -32
  67. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/document.js +251 -251
  68. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/documentfragment.js +49 -49
  69. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/domobject.js +258 -258
  70. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/element.js +1796 -1681
  71. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/elementpath.js +117 -119
  72. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/event.js +145 -145
  73. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/node.js +691 -695
  74. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/nodelist.js +26 -26
  75. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/range.js +2068 -2032
  76. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/rangelist.js +213 -213
  77. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/text.js +128 -128
  78. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/walker.js +496 -462
  79. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/window.js +96 -96
  80. data/vendor/assets/ckeditor/ckeditor/_source/core/dtd.js +266 -266
  81. data/vendor/assets/ckeditor/ckeditor/_source/core/editor.js +1059 -1059
  82. data/vendor/assets/ckeditor/ckeditor/_source/core/editor_basic.js +186 -186
  83. data/vendor/assets/ckeditor/ckeditor/_source/core/env.js +305 -291
  84. data/vendor/assets/ckeditor/ckeditor/_source/core/event.js +342 -342
  85. data/vendor/assets/ckeditor/ckeditor/_source/core/eventInfo.js +120 -120
  86. data/vendor/assets/ckeditor/ckeditor/_source/core/focusmanager.js +152 -152
  87. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser.js +224 -224
  88. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/basicwriter.js +145 -145
  89. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/cdata.js +43 -43
  90. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/comment.js +60 -60
  91. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/element.js +308 -308
  92. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/filter.js +288 -288
  93. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/fragment.js +537 -497
  94. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/text.js +53 -55
  95. data/vendor/assets/ckeditor/ckeditor/_source/core/lang.js +157 -157
  96. data/vendor/assets/ckeditor/ckeditor/_source/core/loader.js +240 -240
  97. data/vendor/assets/ckeditor/ckeditor/_source/core/plugindefinition.js +83 -83
  98. data/vendor/assets/ckeditor/ckeditor/_source/core/plugins.js +103 -103
  99. data/vendor/assets/ckeditor/ckeditor/_source/core/resourcemanager.js +238 -238
  100. data/vendor/assets/ckeditor/ckeditor/_source/core/scriptloader.js +180 -180
  101. data/vendor/assets/ckeditor/ckeditor/_source/core/skins.js +184 -184
  102. data/vendor/assets/ckeditor/ckeditor/_source/core/themes.js +19 -19
  103. data/vendor/assets/ckeditor/ckeditor/_source/core/tools.js +763 -763
  104. data/vendor/assets/ckeditor/ckeditor/_source/core/ui.js +128 -128
  105. data/vendor/assets/ckeditor/ckeditor/_source/lang/_languages.js +84 -84
  106. data/vendor/assets/ckeditor/ckeditor/_source/lang/_translationstatus.txt +63 -61
  107. data/vendor/assets/ckeditor/ckeditor/_source/lang/af.js +815 -812
  108. data/vendor/assets/ckeditor/ckeditor/_source/lang/ar.js +815 -812
  109. data/vendor/assets/ckeditor/ckeditor/_source/lang/bg.js +815 -812
  110. data/vendor/assets/ckeditor/ckeditor/_source/lang/bn.js +815 -812
  111. data/vendor/assets/ckeditor/ckeditor/_source/lang/bs.js +815 -812
  112. data/vendor/assets/ckeditor/ckeditor/_source/lang/ca.js +815 -812
  113. data/vendor/assets/ckeditor/ckeditor/_source/lang/cs.js +815 -812
  114. data/vendor/assets/ckeditor/ckeditor/_source/lang/cy.js +815 -812
  115. data/vendor/assets/ckeditor/ckeditor/_source/lang/da.js +815 -812
  116. data/vendor/assets/ckeditor/ckeditor/_source/lang/de.js +815 -812
  117. data/vendor/assets/ckeditor/ckeditor/_source/lang/el.js +815 -812
  118. data/vendor/assets/ckeditor/ckeditor/_source/lang/en-au.js +815 -812
  119. data/vendor/assets/ckeditor/ckeditor/_source/lang/en-ca.js +815 -812
  120. data/vendor/assets/ckeditor/ckeditor/_source/lang/en-gb.js +815 -812
  121. data/vendor/assets/ckeditor/ckeditor/_source/lang/en.js +815 -812
  122. data/vendor/assets/ckeditor/ckeditor/_source/lang/eo.js +815 -812
  123. data/vendor/assets/ckeditor/ckeditor/_source/lang/es.js +815 -812
  124. data/vendor/assets/ckeditor/ckeditor/_source/lang/et.js +815 -812
  125. data/vendor/assets/ckeditor/ckeditor/_source/lang/eu.js +815 -812
  126. data/vendor/assets/ckeditor/ckeditor/_source/lang/fa.js +815 -812
  127. data/vendor/assets/ckeditor/ckeditor/_source/lang/fi.js +815 -812
  128. data/vendor/assets/ckeditor/ckeditor/_source/lang/fo.js +815 -812
  129. data/vendor/assets/ckeditor/ckeditor/_source/lang/fr-ca.js +815 -812
  130. data/vendor/assets/ckeditor/ckeditor/_source/lang/fr.js +815 -812
  131. data/vendor/assets/ckeditor/ckeditor/_source/lang/gl.js +815 -812
  132. data/vendor/assets/ckeditor/ckeditor/_source/lang/gu.js +815 -812
  133. data/vendor/assets/ckeditor/ckeditor/_source/lang/he.js +815 -812
  134. data/vendor/assets/ckeditor/ckeditor/_source/lang/hi.js +815 -812
  135. data/vendor/assets/ckeditor/ckeditor/_source/lang/hr.js +815 -812
  136. data/vendor/assets/ckeditor/ckeditor/_source/lang/hu.js +815 -812
  137. data/vendor/assets/ckeditor/ckeditor/_source/lang/is.js +815 -812
  138. data/vendor/assets/ckeditor/ckeditor/_source/lang/it.js +815 -812
  139. data/vendor/assets/ckeditor/ckeditor/_source/lang/ja.js +815 -812
  140. data/vendor/assets/ckeditor/ckeditor/_source/lang/ka.js +815 -812
  141. data/vendor/assets/ckeditor/ckeditor/_source/lang/km.js +815 -812
  142. data/vendor/assets/ckeditor/ckeditor/_source/lang/ko.js +815 -812
  143. data/vendor/assets/ckeditor/ckeditor/_source/lang/lt.js +815 -812
  144. data/vendor/assets/ckeditor/ckeditor/_source/lang/lv.js +815 -812
  145. data/vendor/assets/ckeditor/ckeditor/_source/lang/mk.js +814 -0
  146. data/vendor/assets/ckeditor/ckeditor/_source/lang/mn.js +815 -812
  147. data/vendor/assets/ckeditor/ckeditor/_source/lang/ms.js +815 -812
  148. data/vendor/assets/ckeditor/ckeditor/_source/lang/nb.js +815 -812
  149. data/vendor/assets/ckeditor/ckeditor/_source/lang/nl.js +815 -812
  150. data/vendor/assets/ckeditor/ckeditor/_source/lang/no.js +815 -812
  151. data/vendor/assets/ckeditor/ckeditor/_source/lang/pl.js +815 -812
  152. data/vendor/assets/ckeditor/ckeditor/_source/lang/pt-br.js +814 -811
  153. data/vendor/assets/ckeditor/ckeditor/_source/lang/pt.js +815 -812
  154. data/vendor/assets/ckeditor/ckeditor/_source/lang/ro.js +815 -812
  155. data/vendor/assets/ckeditor/ckeditor/_source/lang/ru.js +815 -812
  156. data/vendor/assets/ckeditor/ckeditor/_source/lang/sk.js +815 -812
  157. data/vendor/assets/ckeditor/ckeditor/_source/lang/sl.js +815 -812
  158. data/vendor/assets/ckeditor/ckeditor/_source/lang/sr-latn.js +815 -812
  159. data/vendor/assets/ckeditor/ckeditor/_source/lang/sr.js +815 -812
  160. data/vendor/assets/ckeditor/ckeditor/_source/lang/sv.js +814 -811
  161. data/vendor/assets/ckeditor/ckeditor/_source/lang/th.js +815 -812
  162. data/vendor/assets/ckeditor/ckeditor/_source/lang/tr.js +814 -811
  163. data/vendor/assets/ckeditor/ckeditor/_source/lang/ug.js +814 -0
  164. data/vendor/assets/ckeditor/ckeditor/_source/lang/uk.js +815 -812
  165. data/vendor/assets/ckeditor/ckeditor/_source/lang/vi.js +815 -812
  166. data/vendor/assets/ckeditor/ckeditor/_source/lang/zh-cn.js +815 -812
  167. data/vendor/assets/ckeditor/ckeditor/_source/lang/zh.js +815 -812
  168. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/dialogs/a11yhelp.js +222 -222
  169. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/_translationstatus.txt +23 -0
  170. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/cs.js +89 -0
  171. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/cy.js +89 -0
  172. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/da.js +89 -0
  173. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/de.js +89 -0
  174. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/el.js +89 -0
  175. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/en.js +108 -108
  176. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/eo.js +89 -0
  177. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/fa.js +89 -0
  178. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/fi.js +89 -0
  179. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/fr.js +89 -0
  180. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/gu.js +89 -0
  181. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/he.js +89 -216
  182. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/it.js +89 -0
  183. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/mk.js +89 -0
  184. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/nb.js +89 -0
  185. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/nl.js +89 -0
  186. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/no.js +89 -0
  187. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/tr.js +89 -0
  188. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/ug.js +89 -0
  189. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/vi.js +89 -0
  190. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/zh-cn.js +89 -0
  191. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/plugin.js +47 -47
  192. data/vendor/assets/ckeditor/ckeditor/_source/plugins/about/dialogs/about.js +76 -76
  193. data/vendor/assets/ckeditor/ckeditor/_source/plugins/about/plugin.js +24 -24
  194. data/vendor/assets/ckeditor/ckeditor/_source/plugins/adobeair/plugin.js +228 -228
  195. data/vendor/assets/ckeditor/ckeditor/_source/plugins/ajax/plugin.js +152 -152
  196. data/vendor/assets/ckeditor/ckeditor/_source/plugins/autogrow/plugin.js +141 -88
  197. data/vendor/assets/ckeditor/ckeditor/_source/plugins/basicstyles/plugin.js +129 -101
  198. data/vendor/assets/ckeditor/ckeditor/_source/plugins/bbcode/plugin.js +931 -931
  199. data/vendor/assets/ckeditor/ckeditor/_source/plugins/bidi/plugin.js +334 -334
  200. data/vendor/assets/ckeditor/ckeditor/_source/plugins/blockquote/plugin.js +305 -305
  201. data/vendor/assets/ckeditor/ckeditor/_source/plugins/button/plugin.js +290 -290
  202. data/vendor/assets/ckeditor/ckeditor/_source/plugins/clipboard/dialogs/paste.js +223 -223
  203. data/vendor/assets/ckeditor/ckeditor/_source/plugins/clipboard/plugin.js +479 -453
  204. data/vendor/assets/ckeditor/ckeditor/_source/plugins/colorbutton/plugin.js +300 -294
  205. data/vendor/assets/ckeditor/ckeditor/_source/plugins/colordialog/dialogs/colordialog.js +387 -340
  206. data/vendor/assets/ckeditor/ckeditor/_source/plugins/colordialog/plugin.js +15 -15
  207. data/vendor/assets/ckeditor/ckeditor/_source/plugins/contextmenu/plugin.js +179 -177
  208. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/_translationstatus.txt +27 -0
  209. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/bg.js +16 -0
  210. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/cs.js +16 -0
  211. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/cy.js +16 -0
  212. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/da.js +16 -0
  213. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/de.js +16 -0
  214. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/el.js +16 -0
  215. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/en.js +16 -16
  216. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/eo.js +16 -0
  217. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/et.js +16 -0
  218. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/fa.js +16 -0
  219. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/fi.js +16 -0
  220. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/fr.js +16 -0
  221. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/gu.js +16 -0
  222. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/he.js +16 -0
  223. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/hr.js +16 -0
  224. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/it.js +16 -0
  225. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/nb.js +16 -0
  226. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/nl.js +16 -0
  227. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/no.js +16 -0
  228. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/pl.js +16 -0
  229. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/tr.js +16 -0
  230. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/ug.js +16 -0
  231. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/uk.js +16 -0
  232. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/vi.js +16 -0
  233. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/zh-cn.js +16 -0
  234. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/plugin.js +173 -173
  235. data/vendor/assets/ckeditor/ckeditor/_source/plugins/dialog/dialogDefinition.js +1166 -1166
  236. data/vendor/assets/ckeditor/ckeditor/_source/plugins/dialog/plugin.js +3319 -3289
  237. data/vendor/assets/ckeditor/ckeditor/_source/plugins/dialogadvtab/plugin.js +208 -207
  238. data/vendor/assets/ckeditor/ckeditor/_source/plugins/dialogui/plugin.js +1549 -1541
  239. data/vendor/assets/ckeditor/ckeditor/_source/plugins/div/dialogs/div.js +535 -535
  240. data/vendor/assets/ckeditor/ckeditor/_source/plugins/div/plugin.js +121 -121
  241. data/vendor/assets/ckeditor/ckeditor/_source/plugins/docprops/dialogs/docprops.js +674 -686
  242. data/vendor/assets/ckeditor/ckeditor/_source/plugins/docprops/plugin.js +22 -22
  243. data/vendor/assets/ckeditor/ckeditor/_source/plugins/domiterator/plugin.js +366 -361
  244. data/vendor/assets/ckeditor/ckeditor/_source/plugins/editingblock/plugin.js +278 -275
  245. data/vendor/assets/ckeditor/ckeditor/_source/plugins/elementspath/plugin.js +218 -218
  246. data/vendor/assets/ckeditor/ckeditor/_source/plugins/enterkey/plugin.js +433 -413
  247. data/vendor/assets/ckeditor/ckeditor/_source/plugins/entities/plugin.js +254 -250
  248. data/vendor/assets/ckeditor/ckeditor/_source/plugins/fakeobjects/plugin.js +175 -175
  249. data/vendor/assets/ckeditor/ckeditor/_source/plugins/filebrowser/plugin.js +533 -524
  250. data/vendor/assets/ckeditor/ckeditor/_source/plugins/find/dialogs/find.js +915 -903
  251. data/vendor/assets/ckeditor/ckeditor/_source/plugins/find/plugin.js +47 -47
  252. data/vendor/assets/ckeditor/ckeditor/_source/plugins/flash/dialogs/flash.js +674 -673
  253. data/vendor/assets/ckeditor/ckeditor/_source/plugins/flash/plugin.js +154 -154
  254. data/vendor/assets/ckeditor/ckeditor/_source/plugins/floatpanel/plugin.js +476 -428
  255. data/vendor/assets/ckeditor/ckeditor/_source/plugins/font/plugin.js +234 -234
  256. data/vendor/assets/ckeditor/ckeditor/_source/plugins/format/plugin.js +197 -197
  257. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/button.js +118 -118
  258. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/checkbox.js +153 -153
  259. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/form.js +177 -177
  260. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/hiddenfield.js +100 -100
  261. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/radio.js +135 -135
  262. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/select.js +558 -558
  263. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/textarea.js +135 -114
  264. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/textfield.js +199 -199
  265. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/plugin.js +288 -288
  266. data/vendor/assets/ckeditor/ckeditor/_source/plugins/horizontalrule/plugin.js +48 -48
  267. data/vendor/assets/ckeditor/ckeditor/_source/plugins/htmldataprocessor/plugin.js +600 -595
  268. data/vendor/assets/ckeditor/ckeditor/_source/plugins/htmlwriter/plugin.js +319 -319
  269. data/vendor/assets/ckeditor/ckeditor/_source/plugins/iframe/dialogs/iframe.js +229 -229
  270. data/vendor/assets/ckeditor/ckeditor/_source/plugins/iframe/plugin.js +87 -87
  271. data/vendor/assets/ckeditor/ckeditor/_source/plugins/iframedialog/plugin.js +188 -188
  272. data/vendor/assets/ckeditor/ckeditor/_source/plugins/image/dialogs/image.js +1406 -1406
  273. data/vendor/assets/ckeditor/ckeditor/_source/plugins/image/plugin.js +164 -81
  274. data/vendor/assets/ckeditor/ckeditor/_source/plugins/indent/plugin.js +480 -461
  275. data/vendor/assets/ckeditor/ckeditor/_source/plugins/justify/plugin.js +251 -253
  276. data/vendor/assets/ckeditor/ckeditor/_source/plugins/keystrokes/plugin.js +225 -225
  277. data/vendor/assets/ckeditor/ckeditor/_source/plugins/link/dialogs/anchor.js +144 -144
  278. data/vendor/assets/ckeditor/ckeditor/_source/plugins/link/dialogs/link.js +1427 -1424
  279. data/vendor/assets/ckeditor/ckeditor/_source/plugins/link/plugin.js +374 -374
  280. data/vendor/assets/ckeditor/ckeditor/_source/plugins/list/plugin.js +967 -734
  281. data/vendor/assets/ckeditor/ckeditor/_source/plugins/listblock/plugin.js +260 -268
  282. data/vendor/assets/ckeditor/ckeditor/_source/plugins/liststyle/dialogs/liststyle.js +225 -225
  283. data/vendor/assets/ckeditor/ckeditor/_source/plugins/liststyle/plugin.js +66 -66
  284. data/vendor/assets/ckeditor/ckeditor/_source/plugins/maximize/plugin.js +353 -352
  285. data/vendor/assets/ckeditor/ckeditor/_source/plugins/menu/plugin.js +542 -541
  286. data/vendor/assets/ckeditor/ckeditor/_source/plugins/menubutton/plugin.js +98 -98
  287. data/vendor/assets/ckeditor/ckeditor/_source/plugins/newpage/plugin.js +55 -54
  288. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pagebreak/plugin.js +164 -164
  289. data/vendor/assets/ckeditor/ckeditor/_source/plugins/panel/plugin.js +396 -403
  290. data/vendor/assets/ckeditor/ckeditor/_source/plugins/panelbutton/plugin.js +144 -144
  291. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pastefromword/filter/default.js +1367 -1367
  292. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pastefromword/plugin.js +141 -141
  293. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pastetext/dialogs/pastetext.js +67 -67
  294. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pastetext/plugin.js +98 -98
  295. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/dialogs/placeholder.js +71 -71
  296. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/_translationstatus.txt +26 -0
  297. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/bg.js +16 -0
  298. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/cs.js +16 -0
  299. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/cy.js +16 -0
  300. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/da.js +16 -0
  301. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/de.js +16 -0
  302. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/el.js +16 -0
  303. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/en.js +16 -16
  304. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/eo.js +16 -0
  305. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/et.js +16 -0
  306. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/fa.js +16 -0
  307. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/fi.js +16 -0
  308. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/fr.js +16 -0
  309. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/he.js +16 -16
  310. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/hr.js +16 -0
  311. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/it.js +16 -0
  312. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/nb.js +16 -0
  313. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/nl.js +16 -0
  314. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/no.js +16 -0
  315. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/pl.js +16 -0
  316. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/tr.js +16 -0
  317. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/ug.js +16 -0
  318. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/uk.js +16 -0
  319. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/vi.js +16 -0
  320. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/zh-cn.js +16 -0
  321. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/plugin.js +171 -171
  322. data/vendor/assets/ckeditor/ckeditor/_source/plugins/popup/plugin.js +69 -64
  323. data/vendor/assets/ckeditor/ckeditor/_source/plugins/preview/plugin.js +113 -109
  324. data/vendor/assets/ckeditor/ckeditor/_source/plugins/print/plugin.js +42 -42
  325. data/vendor/assets/ckeditor/ckeditor/_source/plugins/removeformat/plugin.js +185 -185
  326. data/vendor/assets/ckeditor/ckeditor/_source/plugins/resize/plugin.js +169 -168
  327. data/vendor/assets/ckeditor/ckeditor/_source/plugins/richcombo/plugin.js +381 -381
  328. data/vendor/assets/ckeditor/ckeditor/_source/plugins/save/plugin.js +56 -56
  329. data/vendor/assets/ckeditor/ckeditor/_source/plugins/scayt/dialogs/options.js +537 -537
  330. data/vendor/assets/ckeditor/ckeditor/_source/plugins/scayt/dialogs/toolbar.css +71 -71
  331. data/vendor/assets/ckeditor/ckeditor/_source/plugins/scayt/plugin.js +973 -964
  332. data/vendor/assets/ckeditor/ckeditor/_source/plugins/selection/plugin.js +1855 -1601
  333. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showblocks/plugin.js +160 -160
  334. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showborders/plugin.js +207 -207
  335. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/dialogs/smiley.js +224 -224
  336. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/plugin.js +94 -94
  337. data/vendor/assets/ckeditor/ckeditor/_source/plugins/sourcearea/plugin.js +209 -209
  338. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/dialogs/specialchar.js +350 -350
  339. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/_translationstatus.txt +19 -0
  340. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/cs.js +126 -0
  341. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/cy.js +126 -0
  342. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/de.js +126 -0
  343. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/en.js +126 -89
  344. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/eo.js +126 -0
  345. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/et.js +126 -0
  346. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/fa.js +126 -0
  347. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/fi.js +126 -0
  348. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/fr.js +126 -0
  349. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/hr.js +126 -0
  350. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/it.js +126 -0
  351. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/nb.js +126 -0
  352. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/nl.js +126 -0
  353. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/no.js +126 -0
  354. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/tr.js +126 -0
  355. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/ug.js +126 -0
  356. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/zh-cn.js +126 -0
  357. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/plugin.js +70 -70
  358. data/vendor/assets/ckeditor/ckeditor/_source/plugins/styles/plugin.js +1706 -1696
  359. data/vendor/assets/ckeditor/ckeditor/_source/plugins/styles/styles/default.js +88 -88
  360. data/vendor/assets/ckeditor/ckeditor/_source/plugins/stylescombo/plugin.js +218 -218
  361. data/vendor/assets/ckeditor/ckeditor/_source/plugins/stylesheetparser/plugin.js +148 -148
  362. data/vendor/assets/ckeditor/ckeditor/_source/plugins/tab/plugin.js +367 -367
  363. data/vendor/assets/ckeditor/ckeditor/_source/plugins/table/dialogs/table.js +618 -602
  364. data/vendor/assets/ckeditor/ckeditor/_source/plugins/table/plugin.js +78 -78
  365. data/vendor/assets/ckeditor/ckeditor/_source/plugins/tableresize/plugin.js +443 -443
  366. data/vendor/assets/ckeditor/ckeditor/_source/plugins/tabletools/dialogs/tableCell.js +520 -525
  367. data/vendor/assets/ckeditor/ckeditor/_source/plugins/tabletools/plugin.js +1185 -1194
  368. data/vendor/assets/ckeditor/ckeditor/_source/plugins/templates/dialogs/templates.js +234 -234
  369. data/vendor/assets/ckeditor/ckeditor/_source/plugins/templates/plugin.js +100 -99
  370. data/vendor/assets/ckeditor/ckeditor/_source/plugins/templates/templates/default.js +94 -94
  371. data/vendor/assets/ckeditor/ckeditor/_source/plugins/toolbar/plugin.js +545 -545
  372. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/dialogs/uicolor.js +205 -205
  373. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/_translationstatus.txt +27 -0
  374. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/bg.js +15 -0
  375. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/cs.js +15 -0
  376. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/cy.js +15 -0
  377. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/da.js +15 -0
  378. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/de.js +15 -0
  379. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/el.js +15 -0
  380. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/en.js +15 -15
  381. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/eo.js +15 -0
  382. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/et.js +15 -0
  383. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/fa.js +15 -0
  384. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/fi.js +15 -0
  385. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/fr.js +15 -0
  386. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/he.js +15 -15
  387. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/hr.js +15 -0
  388. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/it.js +15 -0
  389. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/mk.js +15 -0
  390. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/nb.js +15 -0
  391. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/nl.js +15 -0
  392. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/no.js +15 -0
  393. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/pl.js +15 -0
  394. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/tr.js +15 -0
  395. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/ug.js +15 -0
  396. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/uk.js +15 -0
  397. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/vi.js +15 -0
  398. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/zh-cn.js +15 -0
  399. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/plugin.js +37 -37
  400. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/yui/assets/yui.css +15 -15
  401. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/yui/yui.js +71 -71
  402. data/vendor/assets/ckeditor/ckeditor/_source/plugins/undo/plugin.js +593 -580
  403. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wsc/dialogs/ciframe.html +49 -49
  404. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wsc/dialogs/tmpFrameset.html +52 -52
  405. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wsc/dialogs/wsc.css +82 -82
  406. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wsc/dialogs/wsc.js +192 -192
  407. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wsc/plugin.js +33 -33
  408. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wysiwygarea/plugin.js +1346 -1351
  409. data/vendor/assets/ckeditor/ckeditor/_source/plugins/xml/plugin.js +170 -170
  410. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/dialog.css +989 -943
  411. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/editor.css +25 -25
  412. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/elementspath.css +73 -73
  413. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/icons.css +366 -366
  414. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/mainui.css +206 -203
  415. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/menu.css +232 -232
  416. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/panel.css +217 -217
  417. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/presets.css +49 -49
  418. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/reset.css +85 -84
  419. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/richcombo.css +287 -287
  420. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/skin.js +236 -236
  421. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/templates.css +88 -88
  422. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/toolbar.css +408 -407
  423. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/dialog.css +891 -844
  424. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/editor.css +25 -25
  425. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/elementspath.css +74 -74
  426. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/icons.css +363 -363
  427. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/mainui.css +153 -153
  428. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/menu.css +229 -229
  429. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/panel.css +212 -212
  430. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/presets.css +49 -49
  431. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/reset.css +85 -84
  432. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/richcombo.css +309 -309
  433. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/skin.js +74 -74
  434. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/templates.css +87 -87
  435. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/toolbar.css +522 -522
  436. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/dialog.css +907 -861
  437. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/editor.css +25 -25
  438. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/elementspath.css +74 -74
  439. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/icons.css +363 -363
  440. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/mainui.css +162 -162
  441. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/menu.css +232 -232
  442. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/panel.css +212 -212
  443. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/presets.css +50 -50
  444. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/reset.css +85 -84
  445. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/richcombo.css +302 -302
  446. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/skin.js +70 -70
  447. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/templates.css +87 -87
  448. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/toolbar.css +465 -465
  449. data/vendor/assets/ckeditor/ckeditor/_source/themes/default/theme.js +407 -395
  450. data/vendor/assets/ckeditor/ckeditor/adapters/jquery.js +6 -6
  451. data/vendor/assets/ckeditor/ckeditor/ckeditor.asp +955 -955
  452. data/vendor/assets/ckeditor/ckeditor/ckeditor.js +134 -130
  453. data/vendor/assets/ckeditor/ckeditor/ckeditor.pack +211 -211
  454. data/vendor/assets/ckeditor/ckeditor/ckeditor.php +29 -29
  455. data/vendor/assets/ckeditor/ckeditor/ckeditor_basic.js +8 -8
  456. data/vendor/assets/ckeditor/ckeditor/ckeditor_basic_source.js +20 -20
  457. data/vendor/assets/ckeditor/ckeditor/ckeditor_php4.php +566 -566
  458. data/vendor/assets/ckeditor/ckeditor/ckeditor_php5.php +556 -556
  459. data/vendor/assets/ckeditor/ckeditor/ckeditor_source.js +14 -4
  460. data/vendor/assets/ckeditor/ckeditor/config.js +11 -11
  461. data/vendor/assets/ckeditor/ckeditor/contents.css +25 -25
  462. data/vendor/assets/ckeditor/ckeditor/lang/_languages.js +1 -1
  463. data/vendor/assets/ckeditor/ckeditor/lang/_translationstatus.txt +61 -59
  464. data/vendor/assets/ckeditor/ckeditor/lang/af.js +2 -2
  465. data/vendor/assets/ckeditor/ckeditor/lang/ar.js +2 -2
  466. data/vendor/assets/ckeditor/ckeditor/lang/bg.js +2 -2
  467. data/vendor/assets/ckeditor/ckeditor/lang/bn.js +2 -2
  468. data/vendor/assets/ckeditor/ckeditor/lang/bs.js +2 -2
  469. data/vendor/assets/ckeditor/ckeditor/lang/ca.js +2 -2
  470. data/vendor/assets/ckeditor/ckeditor/lang/cs.js +2 -2
  471. data/vendor/assets/ckeditor/ckeditor/lang/cy.js +2 -2
  472. data/vendor/assets/ckeditor/ckeditor/lang/da.js +2 -2
  473. data/vendor/assets/ckeditor/ckeditor/lang/de.js +2 -2
  474. data/vendor/assets/ckeditor/ckeditor/lang/el.js +2 -2
  475. data/vendor/assets/ckeditor/ckeditor/lang/en-au.js +2 -2
  476. data/vendor/assets/ckeditor/ckeditor/lang/en-ca.js +2 -2
  477. data/vendor/assets/ckeditor/ckeditor/lang/en-gb.js +2 -2
  478. data/vendor/assets/ckeditor/ckeditor/lang/en.js +2 -2
  479. data/vendor/assets/ckeditor/ckeditor/lang/eo.js +2 -2
  480. data/vendor/assets/ckeditor/ckeditor/lang/es.js +2 -2
  481. data/vendor/assets/ckeditor/ckeditor/lang/et.js +2 -2
  482. data/vendor/assets/ckeditor/ckeditor/lang/eu.js +2 -2
  483. data/vendor/assets/ckeditor/ckeditor/lang/fa.js +2 -2
  484. data/vendor/assets/ckeditor/ckeditor/lang/fi.js +2 -2
  485. data/vendor/assets/ckeditor/ckeditor/lang/fo.js +2 -2
  486. data/vendor/assets/ckeditor/ckeditor/lang/fr-ca.js +2 -2
  487. data/vendor/assets/ckeditor/ckeditor/lang/fr.js +2 -2
  488. data/vendor/assets/ckeditor/ckeditor/lang/gl.js +2 -2
  489. data/vendor/assets/ckeditor/ckeditor/lang/gu.js +2 -2
  490. data/vendor/assets/ckeditor/ckeditor/lang/he.js +2 -2
  491. data/vendor/assets/ckeditor/ckeditor/lang/hi.js +2 -2
  492. data/vendor/assets/ckeditor/ckeditor/lang/hr.js +2 -2
  493. data/vendor/assets/ckeditor/ckeditor/lang/hu.js +2 -2
  494. data/vendor/assets/ckeditor/ckeditor/lang/is.js +2 -2
  495. data/vendor/assets/ckeditor/ckeditor/lang/it.js +2 -2
  496. data/vendor/assets/ckeditor/ckeditor/lang/ja.js +2 -2
  497. data/vendor/assets/ckeditor/ckeditor/lang/ka.js +2 -2
  498. data/vendor/assets/ckeditor/ckeditor/lang/km.js +2 -2
  499. data/vendor/assets/ckeditor/ckeditor/lang/ko.js +2 -2
  500. data/vendor/assets/ckeditor/ckeditor/lang/lt.js +2 -2
  501. data/vendor/assets/ckeditor/ckeditor/lang/lv.js +2 -2
  502. data/vendor/assets/ckeditor/ckeditor/lang/mk.js +6 -0
  503. data/vendor/assets/ckeditor/ckeditor/lang/mn.js +2 -2
  504. data/vendor/assets/ckeditor/ckeditor/lang/ms.js +2 -2
  505. data/vendor/assets/ckeditor/ckeditor/lang/nb.js +2 -2
  506. data/vendor/assets/ckeditor/ckeditor/lang/nl.js +2 -2
  507. data/vendor/assets/ckeditor/ckeditor/lang/no.js +2 -2
  508. data/vendor/assets/ckeditor/ckeditor/lang/pl.js +2 -2
  509. data/vendor/assets/ckeditor/ckeditor/lang/pt-br.js +2 -2
  510. data/vendor/assets/ckeditor/ckeditor/lang/pt.js +2 -2
  511. data/vendor/assets/ckeditor/ckeditor/lang/ro.js +2 -2
  512. data/vendor/assets/ckeditor/ckeditor/lang/ru.js +2 -2
  513. data/vendor/assets/ckeditor/ckeditor/lang/sk.js +2 -2
  514. data/vendor/assets/ckeditor/ckeditor/lang/sl.js +2 -2
  515. data/vendor/assets/ckeditor/ckeditor/lang/sr-latn.js +2 -2
  516. data/vendor/assets/ckeditor/ckeditor/lang/sr.js +2 -2
  517. data/vendor/assets/ckeditor/ckeditor/lang/sv.js +2 -2
  518. data/vendor/assets/ckeditor/ckeditor/lang/th.js +2 -2
  519. data/vendor/assets/ckeditor/ckeditor/lang/tr.js +2 -2
  520. data/vendor/assets/ckeditor/ckeditor/lang/ug.js +6 -0
  521. data/vendor/assets/ckeditor/ckeditor/lang/uk.js +2 -2
  522. data/vendor/assets/ckeditor/ckeditor/lang/vi.js +2 -2
  523. data/vendor/assets/ckeditor/ckeditor/lang/zh-cn.js +2 -2
  524. data/vendor/assets/ckeditor/ckeditor/lang/zh.js +2 -2
  525. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +1 -1
  526. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/_translationstatus.txt +23 -0
  527. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/cs.js +6 -0
  528. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/cy.js +6 -0
  529. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/da.js +6 -0
  530. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/de.js +6 -0
  531. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/el.js +6 -0
  532. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/en.js +2 -2
  533. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/eo.js +6 -0
  534. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/fa.js +6 -0
  535. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/fi.js +6 -0
  536. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/fr.js +6 -0
  537. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/gu.js +6 -0
  538. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/he.js +2 -2
  539. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/it.js +6 -0
  540. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/mk.js +6 -0
  541. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/nb.js +6 -0
  542. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/nl.js +6 -0
  543. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/no.js +6 -0
  544. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/tr.js +6 -0
  545. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/ug.js +6 -0
  546. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/vi.js +6 -0
  547. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/zh-cn.js +6 -0
  548. data/vendor/assets/ckeditor/ckeditor/plugins/about/dialogs/about.js +1 -1
  549. data/vendor/assets/ckeditor/ckeditor/plugins/adobeair/plugin.js +1 -1
  550. data/vendor/assets/ckeditor/ckeditor/plugins/ajax/plugin.js +1 -1
  551. data/vendor/assets/ckeditor/ckeditor/plugins/autogrow/plugin.js +2 -2
  552. data/vendor/assets/ckeditor/ckeditor/plugins/bbcode/plugin.js +1 -1
  553. data/vendor/assets/ckeditor/ckeditor/plugins/clipboard/dialogs/paste.js +2 -2
  554. data/vendor/assets/ckeditor/ckeditor/plugins/colordialog/dialogs/colordialog.js +3 -3
  555. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/_translationstatus.txt +27 -0
  556. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/bg.js +6 -0
  557. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/cs.js +6 -0
  558. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/cy.js +6 -0
  559. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/da.js +6 -0
  560. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/de.js +6 -0
  561. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/el.js +6 -0
  562. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/en.js +1 -1
  563. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/eo.js +6 -0
  564. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/et.js +6 -0
  565. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/fa.js +6 -0
  566. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/fi.js +6 -0
  567. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/fr.js +6 -0
  568. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/gu.js +6 -0
  569. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/he.js +6 -0
  570. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/hr.js +6 -0
  571. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/it.js +6 -0
  572. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/nb.js +6 -0
  573. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/nl.js +6 -0
  574. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/no.js +6 -0
  575. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/pl.js +6 -0
  576. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/tr.js +6 -0
  577. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/ug.js +6 -0
  578. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/uk.js +6 -0
  579. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/vi.js +6 -0
  580. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/zh-cn.js +6 -0
  581. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/plugin.js +2 -2
  582. data/vendor/assets/ckeditor/ckeditor/plugins/dialog/dialogDefinition.js +1 -1
  583. data/vendor/assets/ckeditor/ckeditor/plugins/div/dialogs/div.js +1 -1
  584. data/vendor/assets/ckeditor/ckeditor/plugins/docprops/dialogs/docprops.js +3 -3
  585. data/vendor/assets/ckeditor/ckeditor/plugins/docprops/plugin.js +1 -1
  586. data/vendor/assets/ckeditor/ckeditor/plugins/find/dialogs/find.js +6 -6
  587. data/vendor/assets/ckeditor/ckeditor/plugins/flash/dialogs/flash.js +2 -2
  588. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/button.js +1 -1
  589. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/checkbox.js +1 -1
  590. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/form.js +1 -1
  591. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/hiddenfield.js +1 -1
  592. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/radio.js +1 -1
  593. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/select.js +1 -1
  594. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/textarea.js +2 -2
  595. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/textfield.js +1 -1
  596. data/vendor/assets/ckeditor/ckeditor/plugins/iframe/dialogs/iframe.js +1 -1
  597. data/vendor/assets/ckeditor/ckeditor/plugins/iframedialog/plugin.js +1 -1
  598. data/vendor/assets/ckeditor/ckeditor/plugins/image/dialogs/image.js +9 -9
  599. data/vendor/assets/ckeditor/ckeditor/plugins/link/dialogs/anchor.js +1 -1
  600. data/vendor/assets/ckeditor/ckeditor/plugins/link/dialogs/link.js +6 -6
  601. data/vendor/assets/ckeditor/ckeditor/plugins/liststyle/dialogs/liststyle.js +1 -1
  602. data/vendor/assets/ckeditor/ckeditor/plugins/pastefromword/filter/default.js +1 -1
  603. data/vendor/assets/ckeditor/ckeditor/plugins/pastetext/dialogs/pastetext.js +1 -1
  604. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/dialogs/placeholder.js +1 -1
  605. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/_translationstatus.txt +26 -0
  606. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/bg.js +6 -0
  607. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/cs.js +6 -0
  608. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/cy.js +6 -0
  609. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/da.js +6 -0
  610. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/de.js +6 -0
  611. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/el.js +6 -0
  612. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/en.js +1 -1
  613. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/eo.js +6 -0
  614. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/et.js +6 -0
  615. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/fa.js +6 -0
  616. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/fi.js +6 -0
  617. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/fr.js +6 -0
  618. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/he.js +1 -1
  619. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/hr.js +6 -0
  620. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/it.js +6 -0
  621. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/nb.js +6 -0
  622. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/nl.js +6 -0
  623. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/no.js +6 -0
  624. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/pl.js +6 -0
  625. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/tr.js +6 -0
  626. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/ug.js +6 -0
  627. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/uk.js +6 -0
  628. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/vi.js +6 -0
  629. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/zh-cn.js +6 -0
  630. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/plugin.js +2 -2
  631. data/vendor/assets/ckeditor/ckeditor/plugins/scayt/dialogs/options.js +1 -1
  632. data/vendor/assets/ckeditor/ckeditor/plugins/scayt/dialogs/toolbar.css +1 -1
  633. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/dialogs/smiley.js +1 -1
  634. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/specialchar.js +2 -2
  635. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/_translationstatus.txt +19 -0
  636. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/cs.js +6 -0
  637. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/cy.js +6 -0
  638. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/de.js +6 -0
  639. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/en.js +2 -2
  640. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/eo.js +6 -0
  641. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/et.js +6 -0
  642. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/fa.js +6 -0
  643. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/fi.js +6 -0
  644. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/fr.js +6 -0
  645. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/hr.js +6 -0
  646. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/it.js +6 -0
  647. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/nb.js +6 -0
  648. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/nl.js +6 -0
  649. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/no.js +6 -0
  650. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/tr.js +6 -0
  651. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/ug.js +6 -0
  652. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/zh-cn.js +6 -0
  653. data/vendor/assets/ckeditor/ckeditor/plugins/styles/styles/default.js +1 -1
  654. data/vendor/assets/ckeditor/ckeditor/plugins/stylesheetparser/plugin.js +1 -1
  655. data/vendor/assets/ckeditor/ckeditor/plugins/table/dialogs/table.js +5 -5
  656. data/vendor/assets/ckeditor/ckeditor/plugins/tableresize/plugin.js +1 -1
  657. data/vendor/assets/ckeditor/ckeditor/plugins/tabletools/dialogs/tableCell.js +3 -3
  658. data/vendor/assets/ckeditor/ckeditor/plugins/templates/dialogs/templates.js +1 -1
  659. data/vendor/assets/ckeditor/ckeditor/plugins/templates/templates/default.js +1 -1
  660. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/dialogs/uicolor.js +1 -1
  661. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/_translationstatus.txt +27 -0
  662. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/bg.js +6 -0
  663. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/cs.js +6 -0
  664. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/cy.js +6 -0
  665. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/da.js +6 -0
  666. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/de.js +6 -0
  667. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/el.js +6 -0
  668. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/en.js +1 -1
  669. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/eo.js +6 -0
  670. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/et.js +6 -0
  671. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/fa.js +6 -0
  672. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/fi.js +6 -0
  673. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/fr.js +6 -0
  674. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/he.js +1 -1
  675. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/hr.js +6 -0
  676. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/it.js +6 -0
  677. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/mk.js +6 -0
  678. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/nb.js +6 -0
  679. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/nl.js +6 -0
  680. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/no.js +6 -0
  681. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/pl.js +6 -0
  682. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/tr.js +6 -0
  683. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/ug.js +6 -0
  684. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/uk.js +6 -0
  685. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/vi.js +6 -0
  686. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/zh-cn.js +6 -0
  687. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/plugin.js +2 -2
  688. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/yui/assets/yui.css +1 -1
  689. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/yui/yui.js +1 -1
  690. data/vendor/assets/ckeditor/ckeditor/plugins/wsc/dialogs/ciframe.html +1 -1
  691. data/vendor/assets/ckeditor/ckeditor/plugins/wsc/dialogs/tmpFrameset.html +1 -1
  692. data/vendor/assets/ckeditor/ckeditor/plugins/wsc/dialogs/wsc.css +1 -1
  693. data/vendor/assets/ckeditor/ckeditor/plugins/wsc/dialogs/wsc.js +2 -2
  694. data/vendor/assets/ckeditor/ckeditor/plugins/xml/plugin.js +1 -1
  695. data/vendor/assets/ckeditor/ckeditor/skins/kama/dialog.css +2 -2
  696. data/vendor/assets/ckeditor/ckeditor/skins/kama/editor.css +4 -4
  697. data/vendor/assets/ckeditor/ckeditor/skins/kama/skin.js +1 -1
  698. data/vendor/assets/ckeditor/ckeditor/skins/kama/templates.css +1 -1
  699. data/vendor/assets/ckeditor/ckeditor/skins/office2003/dialog.css +2 -2
  700. data/vendor/assets/ckeditor/ckeditor/skins/office2003/editor.css +2 -2
  701. data/vendor/assets/ckeditor/ckeditor/skins/office2003/skin.js +1 -1
  702. data/vendor/assets/ckeditor/ckeditor/skins/office2003/templates.css +1 -1
  703. data/vendor/assets/ckeditor/ckeditor/skins/v2/dialog.css +2 -2
  704. data/vendor/assets/ckeditor/ckeditor/skins/v2/editor.css +2 -2
  705. data/vendor/assets/ckeditor/ckeditor/skins/v2/skin.js +1 -1
  706. data/vendor/assets/ckeditor/ckeditor/skins/v2/templates.css +1 -1
  707. data/vendor/assets/ckeditor/ckeditor/themes/default/theme.js +8 -8
  708. metadata +225 -3
@@ -1,175 +1,175 @@
1
- /*
2
- Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
3
- For licensing, see LICENSE.html or http://ckeditor.com/license
4
- */
5
-
6
- (function()
7
- {
8
- var cssStyle = CKEDITOR.htmlParser.cssStyle,
9
- cssLength = CKEDITOR.tools.cssLength;
10
-
11
- var cssLengthRegex = /^((?:\d*(?:\.\d+))|(?:\d+))(.*)?$/i;
12
-
13
- /*
14
- * Replacing the former CSS length value with the later one, with
15
- * adjustment to the length unit.
16
- */
17
- function replaceCssLength( length1, length2 )
18
- {
19
- var parts1 = cssLengthRegex.exec( length1 ),
20
- parts2 = cssLengthRegex.exec( length2 );
21
-
22
- // Omit pixel length unit when necessary,
23
- // e.g. replaceCssLength( 10, '20px' ) -> 20
24
- if ( parts1 )
25
- {
26
- if ( !parts1[ 2 ] && parts2[ 2 ] == 'px' )
27
- return parts2[ 1 ];
28
- if ( parts1[ 2 ] == 'px' && !parts2[ 2 ] )
29
- return parts2[ 1 ] + 'px';
30
- }
31
-
32
- return length2;
33
- }
34
-
35
- var htmlFilterRules =
36
- {
37
- elements :
38
- {
39
- $ : function( element )
40
- {
41
- var attributes = element.attributes,
42
- realHtml = attributes && attributes[ 'data-cke-realelement' ],
43
- realFragment = realHtml && new CKEDITOR.htmlParser.fragment.fromHtml( decodeURIComponent( realHtml ) ),
44
- realElement = realFragment && realFragment.children[ 0 ];
45
-
46
- // Width/height in the fake object are subjected to clone into the real element.
47
- if ( realElement && element.attributes[ 'data-cke-resizable' ] )
48
- {
49
- var styles = new cssStyle( element ).rules,
50
- realAttrs = realElement.attributes,
51
- width = styles.width,
52
- height = styles.height;
53
-
54
- width && ( realAttrs.width = replaceCssLength( realAttrs.width, width ) );
55
- height && ( realAttrs.height = replaceCssLength( realAttrs.height, height ) );
56
- }
57
-
58
- return realElement;
59
- }
60
- }
61
- };
62
-
63
- CKEDITOR.plugins.add( 'fakeobjects',
64
- {
65
- requires : [ 'htmlwriter' ],
66
-
67
- afterInit : function( editor )
68
- {
69
- var dataProcessor = editor.dataProcessor,
70
- htmlFilter = dataProcessor && dataProcessor.htmlFilter;
71
-
72
- if ( htmlFilter )
73
- htmlFilter.addRules( htmlFilterRules );
74
- }
75
- });
76
-
77
- CKEDITOR.editor.prototype.createFakeElement = function( realElement, className, realElementType, isResizable )
78
- {
79
- var lang = this.lang.fakeobjects,
80
- label = lang[ realElementType ] || lang.unknown;
81
-
82
- var attributes =
83
- {
84
- 'class' : className,
85
- src : CKEDITOR.getUrl( 'images/spacer.gif' ),
86
- 'data-cke-realelement' : encodeURIComponent( realElement.getOuterHtml() ),
87
- 'data-cke-real-node-type' : realElement.type,
88
- alt : label,
89
- title : label,
90
- align : realElement.getAttribute( 'align' ) || ''
91
- };
92
-
93
- if ( realElementType )
94
- attributes[ 'data-cke-real-element-type' ] = realElementType;
95
-
96
- if ( isResizable )
97
- {
98
- attributes[ 'data-cke-resizable' ] = isResizable;
99
-
100
- var fakeStyle = new cssStyle();
101
-
102
- var width = realElement.getAttribute( 'width' ),
103
- height = realElement.getAttribute( 'height' );
104
-
105
- width && ( fakeStyle.rules.width = cssLength( width ) );
106
- height && ( fakeStyle.rules.height = cssLength( height ) );
107
- fakeStyle.populate( attributes );
108
- }
109
-
110
- return this.document.createElement( 'img', { attributes : attributes } );
111
- };
112
-
113
- CKEDITOR.editor.prototype.createFakeParserElement = function( realElement, className, realElementType, isResizable )
114
- {
115
- var lang = this.lang.fakeobjects,
116
- label = lang[ realElementType ] || lang.unknown,
117
- html;
118
-
119
- var writer = new CKEDITOR.htmlParser.basicWriter();
120
- realElement.writeHtml( writer );
121
- html = writer.getHtml();
122
-
123
- var attributes =
124
- {
125
- 'class' : className,
126
- src : CKEDITOR.getUrl( 'images/spacer.gif' ),
127
- 'data-cke-realelement' : encodeURIComponent( html ),
128
- 'data-cke-real-node-type' : realElement.type,
129
- alt : label,
130
- title : label,
131
- align : realElement.attributes.align || ''
132
- };
133
-
134
- if ( realElementType )
135
- attributes[ 'data-cke-real-element-type' ] = realElementType;
136
-
137
- if ( isResizable )
138
- {
139
- attributes[ 'data-cke-resizable' ] = isResizable;
140
- var realAttrs = realElement.attributes,
141
- fakeStyle = new cssStyle();
142
-
143
- var width = realAttrs.width,
144
- height = realAttrs.height;
145
-
146
- width != undefined && ( fakeStyle.rules.width = cssLength( width ) );
147
- height != undefined && ( fakeStyle.rules.height = cssLength ( height ) );
148
- fakeStyle.populate( attributes );
149
- }
150
-
151
- return new CKEDITOR.htmlParser.element( 'img', attributes );
152
- };
153
-
154
- CKEDITOR.editor.prototype.restoreRealElement = function( fakeElement )
155
- {
156
- if ( fakeElement.data( 'cke-real-node-type' ) != CKEDITOR.NODE_ELEMENT )
157
- return null;
158
-
159
- var element = CKEDITOR.dom.element.createFromHtml(
160
- decodeURIComponent( fakeElement.data( 'cke-realelement' ) ),
161
- this.document );
162
-
163
- if ( fakeElement.data( 'cke-resizable') )
164
- {
165
- var width = fakeElement.getStyle( 'width' ),
166
- height = fakeElement.getStyle( 'height' );
167
-
168
- width && element.setAttribute( 'width', replaceCssLength( element.getAttribute( 'width' ), width ) );
169
- height && element.setAttribute( 'height', replaceCssLength( element.getAttribute( 'height' ), height ) );
170
- }
171
-
172
- return element;
173
- };
174
-
175
- })();
1
+ /*
2
+ Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.html or http://ckeditor.com/license
4
+ */
5
+
6
+ (function()
7
+ {
8
+ var cssStyle = CKEDITOR.htmlParser.cssStyle,
9
+ cssLength = CKEDITOR.tools.cssLength;
10
+
11
+ var cssLengthRegex = /^((?:\d*(?:\.\d+))|(?:\d+))(.*)?$/i;
12
+
13
+ /*
14
+ * Replacing the former CSS length value with the later one, with
15
+ * adjustment to the length unit.
16
+ */
17
+ function replaceCssLength( length1, length2 )
18
+ {
19
+ var parts1 = cssLengthRegex.exec( length1 ),
20
+ parts2 = cssLengthRegex.exec( length2 );
21
+
22
+ // Omit pixel length unit when necessary,
23
+ // e.g. replaceCssLength( 10, '20px' ) -> 20
24
+ if ( parts1 )
25
+ {
26
+ if ( !parts1[ 2 ] && parts2[ 2 ] == 'px' )
27
+ return parts2[ 1 ];
28
+ if ( parts1[ 2 ] == 'px' && !parts2[ 2 ] )
29
+ return parts2[ 1 ] + 'px';
30
+ }
31
+
32
+ return length2;
33
+ }
34
+
35
+ var htmlFilterRules =
36
+ {
37
+ elements :
38
+ {
39
+ $ : function( element )
40
+ {
41
+ var attributes = element.attributes,
42
+ realHtml = attributes && attributes[ 'data-cke-realelement' ],
43
+ realFragment = realHtml && new CKEDITOR.htmlParser.fragment.fromHtml( decodeURIComponent( realHtml ) ),
44
+ realElement = realFragment && realFragment.children[ 0 ];
45
+
46
+ // Width/height in the fake object are subjected to clone into the real element.
47
+ if ( realElement && element.attributes[ 'data-cke-resizable' ] )
48
+ {
49
+ var styles = new cssStyle( element ).rules,
50
+ realAttrs = realElement.attributes,
51
+ width = styles.width,
52
+ height = styles.height;
53
+
54
+ width && ( realAttrs.width = replaceCssLength( realAttrs.width, width ) );
55
+ height && ( realAttrs.height = replaceCssLength( realAttrs.height, height ) );
56
+ }
57
+
58
+ return realElement;
59
+ }
60
+ }
61
+ };
62
+
63
+ CKEDITOR.plugins.add( 'fakeobjects',
64
+ {
65
+ requires : [ 'htmlwriter' ],
66
+
67
+ afterInit : function( editor )
68
+ {
69
+ var dataProcessor = editor.dataProcessor,
70
+ htmlFilter = dataProcessor && dataProcessor.htmlFilter;
71
+
72
+ if ( htmlFilter )
73
+ htmlFilter.addRules( htmlFilterRules );
74
+ }
75
+ });
76
+
77
+ CKEDITOR.editor.prototype.createFakeElement = function( realElement, className, realElementType, isResizable )
78
+ {
79
+ var lang = this.lang.fakeobjects,
80
+ label = lang[ realElementType ] || lang.unknown;
81
+
82
+ var attributes =
83
+ {
84
+ 'class' : className,
85
+ src : CKEDITOR.getUrl( 'images/spacer.gif' ),
86
+ 'data-cke-realelement' : encodeURIComponent( realElement.getOuterHtml() ),
87
+ 'data-cke-real-node-type' : realElement.type,
88
+ alt : label,
89
+ title : label,
90
+ align : realElement.getAttribute( 'align' ) || ''
91
+ };
92
+
93
+ if ( realElementType )
94
+ attributes[ 'data-cke-real-element-type' ] = realElementType;
95
+
96
+ if ( isResizable )
97
+ {
98
+ attributes[ 'data-cke-resizable' ] = isResizable;
99
+
100
+ var fakeStyle = new cssStyle();
101
+
102
+ var width = realElement.getAttribute( 'width' ),
103
+ height = realElement.getAttribute( 'height' );
104
+
105
+ width && ( fakeStyle.rules.width = cssLength( width ) );
106
+ height && ( fakeStyle.rules.height = cssLength( height ) );
107
+ fakeStyle.populate( attributes );
108
+ }
109
+
110
+ return this.document.createElement( 'img', { attributes : attributes } );
111
+ };
112
+
113
+ CKEDITOR.editor.prototype.createFakeParserElement = function( realElement, className, realElementType, isResizable )
114
+ {
115
+ var lang = this.lang.fakeobjects,
116
+ label = lang[ realElementType ] || lang.unknown,
117
+ html;
118
+
119
+ var writer = new CKEDITOR.htmlParser.basicWriter();
120
+ realElement.writeHtml( writer );
121
+ html = writer.getHtml();
122
+
123
+ var attributes =
124
+ {
125
+ 'class' : className,
126
+ src : CKEDITOR.getUrl( 'images/spacer.gif' ),
127
+ 'data-cke-realelement' : encodeURIComponent( html ),
128
+ 'data-cke-real-node-type' : realElement.type,
129
+ alt : label,
130
+ title : label,
131
+ align : realElement.attributes.align || ''
132
+ };
133
+
134
+ if ( realElementType )
135
+ attributes[ 'data-cke-real-element-type' ] = realElementType;
136
+
137
+ if ( isResizable )
138
+ {
139
+ attributes[ 'data-cke-resizable' ] = isResizable;
140
+ var realAttrs = realElement.attributes,
141
+ fakeStyle = new cssStyle();
142
+
143
+ var width = realAttrs.width,
144
+ height = realAttrs.height;
145
+
146
+ width != undefined && ( fakeStyle.rules.width = cssLength( width ) );
147
+ height != undefined && ( fakeStyle.rules.height = cssLength ( height ) );
148
+ fakeStyle.populate( attributes );
149
+ }
150
+
151
+ return new CKEDITOR.htmlParser.element( 'img', attributes );
152
+ };
153
+
154
+ CKEDITOR.editor.prototype.restoreRealElement = function( fakeElement )
155
+ {
156
+ if ( fakeElement.data( 'cke-real-node-type' ) != CKEDITOR.NODE_ELEMENT )
157
+ return null;
158
+
159
+ var element = CKEDITOR.dom.element.createFromHtml(
160
+ decodeURIComponent( fakeElement.data( 'cke-realelement' ) ),
161
+ this.document );
162
+
163
+ if ( fakeElement.data( 'cke-resizable') )
164
+ {
165
+ var width = fakeElement.getStyle( 'width' ),
166
+ height = fakeElement.getStyle( 'height' );
167
+
168
+ width && element.setAttribute( 'width', replaceCssLength( element.getAttribute( 'width' ), width ) );
169
+ height && element.setAttribute( 'height', replaceCssLength( element.getAttribute( 'height' ), height ) );
170
+ }
171
+
172
+ return element;
173
+ };
174
+
175
+ })();
@@ -1,524 +1,533 @@
1
- /*
2
- Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
3
- For licensing, see LICENSE.html or http://ckeditor.com/license
4
- */
5
-
6
- /**
7
- * @fileOverview The "filebrowser" plugin, it adds support for file uploads and
8
- * browsing.
9
- *
10
- * When file is selected inside of the file browser or uploaded, its url is
11
- * inserted automatically to a field, which is described in the 'filebrowser'
12
- * attribute. To specify field that should be updated, pass the tab id and
13
- * element id, separated with a colon.
14
- *
15
- * Example 1: (Browse)
16
- *
17
- * <pre>
18
- * {
19
- * type : 'button',
20
- * id : 'browse',
21
- * filebrowser : 'tabId:elementId',
22
- * label : editor.lang.common.browseServer
23
- * }
24
- * </pre>
25
- *
26
- * If you set the 'filebrowser' attribute on any element other than
27
- * 'fileButton', the 'Browse' action will be triggered.
28
- *
29
- * Example 2: (Quick Upload)
30
- *
31
- * <pre>
32
- * {
33
- * type : 'fileButton',
34
- * id : 'uploadButton',
35
- * filebrowser : 'tabId:elementId',
36
- * label : editor.lang.common.uploadSubmit,
37
- * 'for' : [ 'upload', 'upload' ]
38
- * }
39
- * </pre>
40
- *
41
- * If you set the 'filebrowser' attribute on a fileButton element, the
42
- * 'QuickUpload' action will be executed.
43
- *
44
- * Filebrowser plugin also supports more advanced configuration (through
45
- * javascript object).
46
- *
47
- * The following settings are supported:
48
- *
49
- * <pre>
50
- * [action] - Browse or QuickUpload
51
- * [target] - field to update, tabId:elementId
52
- * [params] - additional arguments to be passed to the server connector (optional)
53
- * [onSelect] - function to execute when file is selected/uploaded (optional)
54
- * [url] - the URL to be called (optional)
55
- * </pre>
56
- *
57
- * Example 3: (Quick Upload)
58
- *
59
- * <pre>
60
- * {
61
- * type : 'fileButton',
62
- * label : editor.lang.common.uploadSubmit,
63
- * id : 'buttonId',
64
- * filebrowser :
65
- * {
66
- * action : 'QuickUpload', //required
67
- * target : 'tab1:elementId', //required
68
- * params : //optional
69
- * {
70
- * type : 'Files',
71
- * currentFolder : '/folder/'
72
- * },
73
- * onSelect : function( fileUrl, errorMessage ) //optional
74
- * {
75
- * // Do not call the built-in selectFuntion
76
- * // return false;
77
- * }
78
- * },
79
- * 'for' : [ 'tab1', 'myFile' ]
80
- * }
81
- * </pre>
82
- *
83
- * Suppose we have a file element with id 'myFile', text field with id
84
- * 'elementId' and a fileButton. If filebowser.url is not specified explicitly,
85
- * form action will be set to 'filebrowser[DialogName]UploadUrl' or, if not
86
- * specified, to 'filebrowserUploadUrl'. Additional parameters from 'params'
87
- * object will be added to the query string. It is possible to create your own
88
- * uploadHandler and cancel the built-in updateTargetElement command.
89
- *
90
- * Example 4: (Browse)
91
- *
92
- * <pre>
93
- * {
94
- * type : 'button',
95
- * id : 'buttonId',
96
- * label : editor.lang.common.browseServer,
97
- * filebrowser :
98
- * {
99
- * action : 'Browse',
100
- * url : '/ckfinder/ckfinder.html&amp;type=Images',
101
- * target : 'tab1:elementId'
102
- * }
103
- * }
104
- * </pre>
105
- *
106
- * In this example, after pressing a button, file browser will be opened in a
107
- * popup. If we don't specify filebrowser.url attribute,
108
- * 'filebrowser[DialogName]BrowseUrl' or 'filebrowserBrowseUrl' will be used.
109
- * After selecting a file in a file browser, an element with id 'elementId' will
110
- * be updated. Just like in the third example, a custom 'onSelect' function may be
111
- * defined.
112
- */
113
- ( function()
114
- {
115
- /*
116
- * Adds (additional) arguments to given url.
117
- *
118
- * @param {String}
119
- * url The url.
120
- * @param {Object}
121
- * params Additional parameters.
122
- */
123
- function addQueryString( url, params )
124
- {
125
- var queryString = [];
126
-
127
- if ( !params )
128
- return url;
129
- else
130
- {
131
- for ( var i in params )
132
- queryString.push( i + "=" + encodeURIComponent( params[ i ] ) );
133
- }
134
-
135
- return url + ( ( url.indexOf( "?" ) != -1 ) ? "&" : "?" ) + queryString.join( "&" );
136
- }
137
-
138
- /*
139
- * Make a string's first character uppercase.
140
- *
141
- * @param {String}
142
- * str String.
143
- */
144
- function ucFirst( str )
145
- {
146
- str += '';
147
- var f = str.charAt( 0 ).toUpperCase();
148
- return f + str.substr( 1 );
149
- }
150
-
151
- /*
152
- * The onlick function assigned to the 'Browse Server' button. Opens the
153
- * file browser and updates target field when file is selected.
154
- *
155
- * @param {CKEDITOR.event}
156
- * evt The event object.
157
- */
158
- function browseServer( evt )
159
- {
160
- var dialog = this.getDialog();
161
- var editor = dialog.getParentEditor();
162
-
163
- editor._.filebrowserSe = this;
164
-
165
- var width = editor.config[ 'filebrowser' + ucFirst( dialog.getName() ) + 'WindowWidth' ]
166
- || editor.config.filebrowserWindowWidth || '80%';
167
- var height = editor.config[ 'filebrowser' + ucFirst( dialog.getName() ) + 'WindowHeight' ]
168
- || editor.config.filebrowserWindowHeight || '70%';
169
-
170
- var params = this.filebrowser.params || {};
171
- params.CKEditor = editor.name;
172
- params.CKEditorFuncNum = editor._.filebrowserFn;
173
- if ( !params.langCode )
174
- params.langCode = editor.langCode;
175
-
176
- var url = addQueryString( this.filebrowser.url, params );
177
- editor.popup( url, width, height, editor.config.fileBrowserWindowFeatures );
178
- }
179
-
180
- /*
181
- * The onlick function assigned to the 'Upload' button. Makes the final
182
- * decision whether form is really submitted and updates target field when
183
- * file is uploaded.
184
- *
185
- * @param {CKEDITOR.event}
186
- * evt The event object.
187
- */
188
- function uploadFile( evt )
189
- {
190
- var dialog = this.getDialog();
191
- var editor = dialog.getParentEditor();
192
-
193
- editor._.filebrowserSe = this;
194
-
195
- // If user didn't select the file, stop the upload.
196
- if ( !dialog.getContentElement( this[ 'for' ][ 0 ], this[ 'for' ][ 1 ] ).getInputElement().$.value )
197
- return false;
198
-
199
- if ( !dialog.getContentElement( this[ 'for' ][ 0 ], this[ 'for' ][ 1 ] ).getAction() )
200
- return false;
201
-
202
- return true;
203
- }
204
-
205
- /*
206
- * Setups the file element.
207
- *
208
- * @param {CKEDITOR.ui.dialog.file}
209
- * fileInput The file element used during file upload.
210
- * @param {Object}
211
- * filebrowser Object containing filebrowser settings assigned to
212
- * the fileButton associated with this file element.
213
- */
214
- function setupFileElement( editor, fileInput, filebrowser )
215
- {
216
- var params = filebrowser.params || {};
217
- params.CKEditor = editor.name;
218
- params.CKEditorFuncNum = editor._.filebrowserFn;
219
- if ( !params.langCode )
220
- params.langCode = editor.langCode;
221
-
222
- fileInput.action = addQueryString( filebrowser.url, params );
223
- fileInput.filebrowser = filebrowser;
224
- }
225
-
226
- /*
227
- * Traverse through the content definition and attach filebrowser to
228
- * elements with 'filebrowser' attribute.
229
- *
230
- * @param String
231
- * dialogName Dialog name.
232
- * @param {CKEDITOR.dialog.definitionObject}
233
- * definition Dialog definition.
234
- * @param {Array}
235
- * elements Array of {@link CKEDITOR.dialog.definition.content}
236
- * objects.
237
- */
238
- function attachFileBrowser( editor, dialogName, definition, elements )
239
- {
240
- var element, fileInput;
241
-
242
- for ( var i in elements )
243
- {
244
- element = elements[ i ];
245
-
246
- if ( element.type == 'hbox' || element.type == 'vbox' )
247
- attachFileBrowser( editor, dialogName, definition, element.children );
248
-
249
- if ( !element.filebrowser )
250
- continue;
251
-
252
- if ( typeof element.filebrowser == 'string' )
253
- {
254
- var fb =
255
- {
256
- action : ( element.type == 'fileButton' ) ? 'QuickUpload' : 'Browse',
257
- target : element.filebrowser
258
- };
259
- element.filebrowser = fb;
260
- }
261
-
262
- if ( element.filebrowser.action == 'Browse' )
263
- {
264
- var url = element.filebrowser.url;
265
- if ( url === undefined )
266
- {
267
- url = editor.config[ 'filebrowser' + ucFirst( dialogName ) + 'BrowseUrl' ];
268
- if ( url === undefined )
269
- url = editor.config.filebrowserBrowseUrl;
270
- }
271
-
272
- if ( url )
273
- {
274
- element.onClick = browseServer;
275
- element.filebrowser.url = url;
276
- element.hidden = false;
277
- }
278
- }
279
- else if ( element.filebrowser.action == 'QuickUpload' && element[ 'for' ] )
280
- {
281
- url = element.filebrowser.url;
282
- if ( url === undefined )
283
- {
284
- url = editor.config[ 'filebrowser' + ucFirst( dialogName ) + 'UploadUrl' ];
285
- if ( url === undefined )
286
- url = editor.config.filebrowserUploadUrl;
287
- }
288
-
289
- if ( url )
290
- {
291
- var onClick = element.onClick;
292
- element.onClick = function( evt )
293
- {
294
- // "element" here means the definition object, so we need to find the correct
295
- // button to scope the event call
296
- var sender = evt.sender;
297
- if ( onClick && onClick.call( sender, evt ) === false )
298
- return false;
299
-
300
- return uploadFile.call( sender, evt );
301
- };
302
-
303
- element.filebrowser.url = url;
304
- element.hidden = false;
305
- setupFileElement( editor, definition.getContents( element[ 'for' ][ 0 ] ).get( element[ 'for' ][ 1 ] ), element.filebrowser );
306
- }
307
- }
308
- }
309
- }
310
-
311
- /*
312
- * Updates the target element with the url of uploaded/selected file.
313
- *
314
- * @param {String}
315
- * url The url of a file.
316
- */
317
- function updateTargetElement( url, sourceElement )
318
- {
319
- var dialog = sourceElement.getDialog();
320
- var targetElement = sourceElement.filebrowser.target || null;
321
- url = url.replace( /#/g, '%23' );
322
-
323
- // If there is a reference to targetElement, update it.
324
- if ( targetElement )
325
- {
326
- var target = targetElement.split( ':' );
327
- var element = dialog.getContentElement( target[ 0 ], target[ 1 ] );
328
- if ( element )
329
- {
330
- element.setValue( url );
331
- dialog.selectPage( target[ 0 ] );
332
- }
333
- }
334
- }
335
-
336
- /*
337
- * Returns true if filebrowser is configured in one of the elements.
338
- *
339
- * @param {CKEDITOR.dialog.definitionObject}
340
- * definition Dialog definition.
341
- * @param String
342
- * tabId The tab id where element(s) can be found.
343
- * @param String
344
- * elementId The element id (or ids, separated with a semicolon) to check.
345
- */
346
- function isConfigured( definition, tabId, elementId )
347
- {
348
- if ( elementId.indexOf( ";" ) !== -1 )
349
- {
350
- var ids = elementId.split( ";" );
351
- for ( var i = 0 ; i < ids.length ; i++ )
352
- {
353
- if ( isConfigured( definition, tabId, ids[i] ) )
354
- return true;
355
- }
356
- return false;
357
- }
358
-
359
- var elementFileBrowser = definition.getContents( tabId ).get( elementId ).filebrowser;
360
- return ( elementFileBrowser && elementFileBrowser.url );
361
- }
362
-
363
- function setUrl( fileUrl, data )
364
- {
365
- var dialog = this._.filebrowserSe.getDialog(),
366
- targetInput = this._.filebrowserSe[ 'for' ],
367
- onSelect = this._.filebrowserSe.filebrowser.onSelect;
368
-
369
- if ( targetInput )
370
- dialog.getContentElement( targetInput[ 0 ], targetInput[ 1 ] ).reset();
371
-
372
- if ( typeof data == 'function' && data.call( this._.filebrowserSe ) === false )
373
- return;
374
-
375
- if ( onSelect && onSelect.call( this._.filebrowserSe, fileUrl, data ) === false )
376
- return;
377
-
378
- // The "data" argument may be used to pass the error message to the editor.
379
- if ( typeof data == 'string' && data )
380
- alert( data );
381
-
382
- if ( fileUrl )
383
- updateTargetElement( fileUrl, this._.filebrowserSe );
384
- }
385
-
386
- CKEDITOR.plugins.add( 'filebrowser',
387
- {
388
- init : function( editor, pluginPath )
389
- {
390
- editor._.filebrowserFn = CKEDITOR.tools.addFunction( setUrl, editor );
391
- editor.on( 'destroy', function () { CKEDITOR.tools.removeFunction( this._.filebrowserFn ); } );
392
- }
393
- } );
394
-
395
- CKEDITOR.on( 'dialogDefinition', function( evt )
396
- {
397
- var definition = evt.data.definition,
398
- element;
399
- // Associate filebrowser to elements with 'filebrowser' attribute.
400
- for ( var i in definition.contents )
401
- {
402
- if ( ( element = definition.contents[ i ] ) )
403
- {
404
- attachFileBrowser( evt.editor, evt.data.name, definition, element.elements );
405
- if ( element.hidden && element.filebrowser )
406
- {
407
- element.hidden = !isConfigured( definition, element[ 'id' ], element.filebrowser );
408
- }
409
- }
410
- }
411
- } );
412
-
413
- } )();
414
-
415
- /**
416
- * The location of an external file browser, that should be launched when "Browse Server" button is pressed.
417
- * If configured, the "Browse Server" button will appear in Link, Image and Flash dialogs.
418
- * @see The <a href="http://docs.cksource.com/CKEditor_3.x/Developers_Guide/File_Browser_(Uploader)">File Browser/Uploader</a> documentation.
419
- * @name CKEDITOR.config.filebrowserBrowseUrl
420
- * @since 3.0
421
- * @type String
422
- * @default '' (empty string = disabled)
423
- * @example
424
- * config.filebrowserBrowseUrl = '/browser/browse.php';
425
- */
426
-
427
- /**
428
- * The location of a script that handles file uploads.
429
- * If set, the "Upload" tab will appear in "Link", "Image" and "Flash" dialogs.
430
- * @name CKEDITOR.config.filebrowserUploadUrl
431
- * @see The <a href="http://docs.cksource.com/CKEditor_3.x/Developers_Guide/File_Browser_(Uploader)">File Browser/Uploader</a> documentation.
432
- * @since 3.0
433
- * @type String
434
- * @default '' (empty string = disabled)
435
- * @example
436
- * config.filebrowserUploadUrl = '/uploader/upload.php';
437
- */
438
-
439
- /**
440
- * The location of an external file browser, that should be launched when "Browse Server" button is pressed in the Image dialog.
441
- * If not set, CKEditor will use {@link CKEDITOR.config.filebrowserBrowseUrl}.
442
- * @name CKEDITOR.config.filebrowserImageBrowseUrl
443
- * @since 3.0
444
- * @type String
445
- * @default '' (empty string = disabled)
446
- * @example
447
- * config.filebrowserImageBrowseUrl = '/browser/browse.php?type=Images';
448
- */
449
-
450
- /**
451
- * The location of an external file browser, that should be launched when "Browse Server" button is pressed in the Flash dialog.
452
- * If not set, CKEditor will use {@link CKEDITOR.config.filebrowserBrowseUrl}.
453
- * @name CKEDITOR.config.filebrowserFlashBrowseUrl
454
- * @since 3.0
455
- * @type String
456
- * @default '' (empty string = disabled)
457
- * @example
458
- * config.filebrowserFlashBrowseUrl = '/browser/browse.php?type=Flash';
459
- */
460
-
461
- /**
462
- * The location of a script that handles file uploads in the Image dialog.
463
- * If not set, CKEditor will use {@link CKEDITOR.config.filebrowserUploadUrl}.
464
- * @name CKEDITOR.config.filebrowserImageUploadUrl
465
- * @since 3.0
466
- * @type String
467
- * @default '' (empty string = disabled)
468
- * @example
469
- * config.filebrowserImageUploadUrl = '/uploader/upload.php?type=Images';
470
- */
471
-
472
- /**
473
- * The location of a script that handles file uploads in the Flash dialog.
474
- * If not set, CKEditor will use {@link CKEDITOR.config.filebrowserUploadUrl}.
475
- * @name CKEDITOR.config.filebrowserFlashUploadUrl
476
- * @since 3.0
477
- * @type String
478
- * @default '' (empty string = disabled)
479
- * @example
480
- * config.filebrowserFlashUploadUrl = '/uploader/upload.php?type=Flash';
481
- */
482
-
483
- /**
484
- * The location of an external file browser, that should be launched when "Browse Server" button is pressed in the Link tab of Image dialog.
485
- * If not set, CKEditor will use {@link CKEDITOR.config.filebrowserBrowseUrl}.
486
- * @name CKEDITOR.config.filebrowserImageBrowseLinkUrl
487
- * @since 3.2
488
- * @type String
489
- * @default '' (empty string = disabled)
490
- * @example
491
- * config.filebrowserImageBrowseLinkUrl = '/browser/browse.php';
492
- */
493
-
494
- /**
495
- * The "features" to use in the file browser popup window.
496
- * @name CKEDITOR.config.filebrowserWindowFeatures
497
- * @since 3.4.1
498
- * @type String
499
- * @default 'location=no,menubar=no,toolbar=no,dependent=yes,minimizable=no,modal=yes,alwaysRaised=yes,resizable=yes,scrollbars=yes'
500
- * @example
501
- * config.filebrowserWindowFeatures = 'resizable=yes,scrollbars=no';
502
- */
503
-
504
- /**
505
- * The width of the file browser popup window. It can be a number or a percent string.
506
- * @name CKEDITOR.config.filebrowserWindowWidth
507
- * @type Number|String
508
- * @default '80%'
509
- * @example
510
- * config.filebrowserWindowWidth = 750;
511
- * @example
512
- * config.filebrowserWindowWidth = '50%';
513
- */
514
-
515
- /**
516
- * The height of the file browser popup window. It can be a number or a percent string.
517
- * @name CKEDITOR.config.filebrowserWindowHeight
518
- * @type Number|String
519
- * @default '70%'
520
- * @example
521
- * config.filebrowserWindowHeight = 580;
522
- * @example
523
- * config.filebrowserWindowHeight = '50%';
524
- */
1
+ /*
2
+ Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.html or http://ckeditor.com/license
4
+ */
5
+
6
+ /**
7
+ * @fileOverview The "filebrowser" plugin that adds support for file uploads and
8
+ * browsing.
9
+ *
10
+ * When a file is uploaded or selected inside the file browser, its URL is
11
+ * inserted automatically into a field defined in the <code>filebrowser</code>
12
+ * attribute. In order to specify a field that should be updated, pass the tab ID and
13
+ * the element ID, separated with a colon.<br /><br />
14
+ *
15
+ * <strong>Example 1: (Browse)</strong>
16
+ *
17
+ * <pre>
18
+ * {
19
+ * type : 'button',
20
+ * id : 'browse',
21
+ * filebrowser : 'tabId:elementId',
22
+ * label : editor.lang.common.browseServer
23
+ * }
24
+ * </pre>
25
+ *
26
+ * If you set the <code>filebrowser</code> attribute for an element other than
27
+ * the <code>fileButton</code>, the <code>Browse</code> action will be triggered.<br /><br />
28
+ *
29
+ * <strong>Example 2: (Quick Upload)</strong>
30
+ *
31
+ * <pre>
32
+ * {
33
+ * type : 'fileButton',
34
+ * id : 'uploadButton',
35
+ * filebrowser : 'tabId:elementId',
36
+ * label : editor.lang.common.uploadSubmit,
37
+ * 'for' : [ 'upload', 'upload' ]
38
+ * }
39
+ * </pre>
40
+ *
41
+ * If you set the <code>filebrowser</code> attribute for a <code>fileButton</code>
42
+ * element, the <code>QuickUpload</code> action will be executed.<br /><br />
43
+ *
44
+ * The filebrowser plugin also supports more advanced configuration performed through
45
+ * a JavaScript object.
46
+ *
47
+ * The following settings are supported:
48
+ *
49
+ * <ul>
50
+ * <li><code>action</code> &ndash; <code>Browse</code> or <code>QuickUpload</code>.</li>
51
+ * <li><code>target</code> &ndash; the field to update in the <code><em>tabId:elementId</em></code> format.</li>
52
+ * <li><code>params</code> &ndash; additional arguments to be passed to the server connector (optional).</li>
53
+ * <li><code>onSelect</code> &ndash; a function to execute when the file is selected/uploaded (optional).</li>
54
+ * <li><code>url</code> &ndash; the URL to be called (optional).</li>
55
+ * </ul>
56
+ *
57
+ * <strong>Example 3: (Quick Upload)</strong>
58
+ *
59
+ * <pre>
60
+ * {
61
+ * type : 'fileButton',
62
+ * label : editor.lang.common.uploadSubmit,
63
+ * id : 'buttonId',
64
+ * filebrowser :
65
+ * {
66
+ * action : 'QuickUpload', // required
67
+ * target : 'tab1:elementId', // required
68
+ * params : // optional
69
+ * {
70
+ * type : 'Files',
71
+ * currentFolder : '/folder/'
72
+ * },
73
+ * onSelect : function( fileUrl, errorMessage ) // optional
74
+ * {
75
+ * // Do not call the built-in selectFuntion.
76
+ * // return false;
77
+ * }
78
+ * },
79
+ * 'for' : [ 'tab1', 'myFile' ]
80
+ * }
81
+ * </pre>
82
+ *
83
+ * Suppose you have a file element with an ID of <code>myFile</code>, a text
84
+ * field with an ID of <code>elementId</code> and a <code>fileButton</code>.
85
+ * If the <code>filebowser.url</code> attribute is not specified explicitly,
86
+ * the form action will be set to <code>filebrowser[<em>DialogWindowName</em>]UploadUrl</code>
87
+ * or, if not specified, to <code>filebrowserUploadUrl</code>. Additional parameters
88
+ * from the <code>params</code> object will be added to the query string. It is
89
+ * possible to create your own <code>uploadHandler</code> and cancel the built-in
90
+ * <code>updateTargetElement</code> command.<br /><br />
91
+ *
92
+ * <strong>Example 4: (Browse)</strong>
93
+ *
94
+ * <pre>
95
+ * {
96
+ * type : 'button',
97
+ * id : 'buttonId',
98
+ * label : editor.lang.common.browseServer,
99
+ * filebrowser :
100
+ * {
101
+ * action : 'Browse',
102
+ * url : '/ckfinder/ckfinder.html&amp;type=Images',
103
+ * target : 'tab1:elementId'
104
+ * }
105
+ * }
106
+ * </pre>
107
+ *
108
+ * In this example, when the button is pressed, the file browser will be opened in a
109
+ * popup window. If you do not specify the <code>filebrowser.url</code> attribute,
110
+ * <code>filebrowser[<em>DialogName</em>]BrowseUrl</code> or
111
+ * <code>filebrowserBrowseUrl</code> will be used. After selecting a file in the file
112
+ * browser, an element with an ID of <code>elementId</code> will be updated. Just
113
+ * like in the third example, a custom <code>onSelect</code> function may be defined.
114
+ */
115
+ ( function()
116
+ {
117
+ /*
118
+ * Adds (additional) arguments to given url.
119
+ *
120
+ * @param {String}
121
+ * url The url.
122
+ * @param {Object}
123
+ * params Additional parameters.
124
+ */
125
+ function addQueryString( url, params )
126
+ {
127
+ var queryString = [];
128
+
129
+ if ( !params )
130
+ return url;
131
+ else
132
+ {
133
+ for ( var i in params )
134
+ queryString.push( i + "=" + encodeURIComponent( params[ i ] ) );
135
+ }
136
+
137
+ return url + ( ( url.indexOf( "?" ) != -1 ) ? "&" : "?" ) + queryString.join( "&" );
138
+ }
139
+
140
+ /*
141
+ * Make a string's first character uppercase.
142
+ *
143
+ * @param {String}
144
+ * str String.
145
+ */
146
+ function ucFirst( str )
147
+ {
148
+ str += '';
149
+ var f = str.charAt( 0 ).toUpperCase();
150
+ return f + str.substr( 1 );
151
+ }
152
+
153
+ /*
154
+ * The onlick function assigned to the 'Browse Server' button. Opens the
155
+ * file browser and updates target field when file is selected.
156
+ *
157
+ * @param {CKEDITOR.event}
158
+ * evt The event object.
159
+ */
160
+ function browseServer( evt )
161
+ {
162
+ var dialog = this.getDialog();
163
+ var editor = dialog.getParentEditor();
164
+
165
+ editor._.filebrowserSe = this;
166
+
167
+ var width = editor.config[ 'filebrowser' + ucFirst( dialog.getName() ) + 'WindowWidth' ]
168
+ || editor.config.filebrowserWindowWidth || '80%';
169
+ var height = editor.config[ 'filebrowser' + ucFirst( dialog.getName() ) + 'WindowHeight' ]
170
+ || editor.config.filebrowserWindowHeight || '70%';
171
+
172
+ var params = this.filebrowser.params || {};
173
+ params.CKEditor = editor.name;
174
+ params.CKEditorFuncNum = editor._.filebrowserFn;
175
+ if ( !params.langCode )
176
+ params.langCode = editor.langCode;
177
+
178
+ var url = addQueryString( this.filebrowser.url, params );
179
+ // TODO: V4: Remove backward compatibility (#8163).
180
+ editor.popup( url, width, height, editor.config.filebrowserWindowFeatures || editor.config.fileBrowserWindowFeatures );
181
+ }
182
+
183
+ /*
184
+ * The onlick function assigned to the 'Upload' button. Makes the final
185
+ * decision whether form is really submitted and updates target field when
186
+ * file is uploaded.
187
+ *
188
+ * @param {CKEDITOR.event}
189
+ * evt The event object.
190
+ */
191
+ function uploadFile( evt )
192
+ {
193
+ var dialog = this.getDialog();
194
+ var editor = dialog.getParentEditor();
195
+
196
+ editor._.filebrowserSe = this;
197
+
198
+ // If user didn't select the file, stop the upload.
199
+ if ( !dialog.getContentElement( this[ 'for' ][ 0 ], this[ 'for' ][ 1 ] ).getInputElement().$.value )
200
+ return false;
201
+
202
+ if ( !dialog.getContentElement( this[ 'for' ][ 0 ], this[ 'for' ][ 1 ] ).getAction() )
203
+ return false;
204
+
205
+ return true;
206
+ }
207
+
208
+ /*
209
+ * Setups the file element.
210
+ *
211
+ * @param {CKEDITOR.ui.dialog.file}
212
+ * fileInput The file element used during file upload.
213
+ * @param {Object}
214
+ * filebrowser Object containing filebrowser settings assigned to
215
+ * the fileButton associated with this file element.
216
+ */
217
+ function setupFileElement( editor, fileInput, filebrowser )
218
+ {
219
+ var params = filebrowser.params || {};
220
+ params.CKEditor = editor.name;
221
+ params.CKEditorFuncNum = editor._.filebrowserFn;
222
+ if ( !params.langCode )
223
+ params.langCode = editor.langCode;
224
+
225
+ fileInput.action = addQueryString( filebrowser.url, params );
226
+ fileInput.filebrowser = filebrowser;
227
+ }
228
+
229
+ /*
230
+ * Traverse through the content definition and attach filebrowser to
231
+ * elements with 'filebrowser' attribute.
232
+ *
233
+ * @param String
234
+ * dialogName Dialog name.
235
+ * @param {CKEDITOR.dialog.definitionObject}
236
+ * definition Dialog definition.
237
+ * @param {Array}
238
+ * elements Array of {@link CKEDITOR.dialog.definition.content}
239
+ * objects.
240
+ */
241
+ function attachFileBrowser( editor, dialogName, definition, elements )
242
+ {
243
+ var element, fileInput;
244
+
245
+ for ( var i in elements )
246
+ {
247
+ element = elements[ i ];
248
+
249
+ if ( element.type == 'hbox' || element.type == 'vbox' || element.type == 'fieldset' )
250
+ attachFileBrowser( editor, dialogName, definition, element.children );
251
+
252
+ if ( !element.filebrowser )
253
+ continue;
254
+
255
+ if ( typeof element.filebrowser == 'string' )
256
+ {
257
+ var fb =
258
+ {
259
+ action : ( element.type == 'fileButton' ) ? 'QuickUpload' : 'Browse',
260
+ target : element.filebrowser
261
+ };
262
+ element.filebrowser = fb;
263
+ }
264
+
265
+ if ( element.filebrowser.action == 'Browse' )
266
+ {
267
+ var url = element.filebrowser.url;
268
+ if ( url === undefined )
269
+ {
270
+ url = editor.config[ 'filebrowser' + ucFirst( dialogName ) + 'BrowseUrl' ];
271
+ if ( url === undefined )
272
+ url = editor.config.filebrowserBrowseUrl;
273
+ }
274
+
275
+ if ( url )
276
+ {
277
+ element.onClick = browseServer;
278
+ element.filebrowser.url = url;
279
+ element.hidden = false;
280
+ }
281
+ }
282
+ else if ( element.filebrowser.action == 'QuickUpload' && element[ 'for' ] )
283
+ {
284
+ url = element.filebrowser.url;
285
+ if ( url === undefined )
286
+ {
287
+ url = editor.config[ 'filebrowser' + ucFirst( dialogName ) + 'UploadUrl' ];
288
+ if ( url === undefined )
289
+ url = editor.config.filebrowserUploadUrl;
290
+ }
291
+
292
+ if ( url )
293
+ {
294
+ var onClick = element.onClick;
295
+ element.onClick = function( evt )
296
+ {
297
+ // "element" here means the definition object, so we need to find the correct
298
+ // button to scope the event call
299
+ var sender = evt.sender;
300
+ if ( onClick && onClick.call( sender, evt ) === false )
301
+ return false;
302
+
303
+ return uploadFile.call( sender, evt );
304
+ };
305
+
306
+ element.filebrowser.url = url;
307
+ element.hidden = false;
308
+ setupFileElement( editor, definition.getContents( element[ 'for' ][ 0 ] ).get( element[ 'for' ][ 1 ] ), element.filebrowser );
309
+ }
310
+ }
311
+ }
312
+ }
313
+
314
+ /*
315
+ * Updates the target element with the url of uploaded/selected file.
316
+ *
317
+ * @param {String}
318
+ * url The url of a file.
319
+ */
320
+ function updateTargetElement( url, sourceElement )
321
+ {
322
+ var dialog = sourceElement.getDialog();
323
+ var targetElement = sourceElement.filebrowser.target || null;
324
+
325
+ // If there is a reference to targetElement, update it.
326
+ if ( targetElement )
327
+ {
328
+ var target = targetElement.split( ':' );
329
+ var element = dialog.getContentElement( target[ 0 ], target[ 1 ] );
330
+ if ( element )
331
+ {
332
+ element.setValue( url );
333
+ dialog.selectPage( target[ 0 ] );
334
+ }
335
+ }
336
+ }
337
+
338
+ /*
339
+ * Returns true if filebrowser is configured in one of the elements.
340
+ *
341
+ * @param {CKEDITOR.dialog.definitionObject}
342
+ * definition Dialog definition.
343
+ * @param String
344
+ * tabId The tab id where element(s) can be found.
345
+ * @param String
346
+ * elementId The element id (or ids, separated with a semicolon) to check.
347
+ */
348
+ function isConfigured( definition, tabId, elementId )
349
+ {
350
+ if ( elementId.indexOf( ";" ) !== -1 )
351
+ {
352
+ var ids = elementId.split( ";" );
353
+ for ( var i = 0 ; i < ids.length ; i++ )
354
+ {
355
+ if ( isConfigured( definition, tabId, ids[i] ) )
356
+ return true;
357
+ }
358
+ return false;
359
+ }
360
+
361
+ var elementFileBrowser = definition.getContents( tabId ).get( elementId ).filebrowser;
362
+ return ( elementFileBrowser && elementFileBrowser.url );
363
+ }
364
+
365
+ function setUrl( fileUrl, data )
366
+ {
367
+ var dialog = this._.filebrowserSe.getDialog(),
368
+ targetInput = this._.filebrowserSe[ 'for' ],
369
+ onSelect = this._.filebrowserSe.filebrowser.onSelect;
370
+
371
+ if ( targetInput )
372
+ dialog.getContentElement( targetInput[ 0 ], targetInput[ 1 ] ).reset();
373
+
374
+ if ( typeof data == 'function' && data.call( this._.filebrowserSe ) === false )
375
+ return;
376
+
377
+ if ( onSelect && onSelect.call( this._.filebrowserSe, fileUrl, data ) === false )
378
+ return;
379
+
380
+ // The "data" argument may be used to pass the error message to the editor.
381
+ if ( typeof data == 'string' && data )
382
+ alert( data );
383
+
384
+ if ( fileUrl )
385
+ updateTargetElement( fileUrl, this._.filebrowserSe );
386
+ }
387
+
388
+ CKEDITOR.plugins.add( 'filebrowser',
389
+ {
390
+ init : function( editor, pluginPath )
391
+ {
392
+ editor._.filebrowserFn = CKEDITOR.tools.addFunction( setUrl, editor );
393
+ editor.on( 'destroy', function () { CKEDITOR.tools.removeFunction( this._.filebrowserFn ); } );
394
+ }
395
+ } );
396
+
397
+ CKEDITOR.on( 'dialogDefinition', function( evt )
398
+ {
399
+ var definition = evt.data.definition,
400
+ element;
401
+ // Associate filebrowser to elements with 'filebrowser' attribute.
402
+ for ( var i in definition.contents )
403
+ {
404
+ if ( ( element = definition.contents[ i ] ) )
405
+ {
406
+ attachFileBrowser( evt.editor, evt.data.name, definition, element.elements );
407
+ if ( element.hidden && element.filebrowser )
408
+ {
409
+ element.hidden = !isConfigured( definition, element[ 'id' ], element.filebrowser );
410
+ }
411
+ }
412
+ }
413
+ } );
414
+
415
+ } )();
416
+
417
+ /**
418
+ * The location of an external file browser that should be launched when the <strong>Browse Server</strong>
419
+ * button is pressed. If configured, the <strong>Browse Server</strong> button will appear in the
420
+ * <strong>Link</strong>, <strong>Image</strong>, and <strong>Flash</strong> dialog windows.
421
+ * @see The <a href="http://docs.cksource.com/CKEditor_3.x/Developers_Guide/File_Browser_(Uploader)">File Browser/Uploader</a> documentation.
422
+ * @name CKEDITOR.config.filebrowserBrowseUrl
423
+ * @since 3.0
424
+ * @type String
425
+ * @default <code>''</code> (empty string = disabled)
426
+ * @example
427
+ * config.filebrowserBrowseUrl = '/browser/browse.php';
428
+ */
429
+
430
+ /**
431
+ * The location of the script that handles file uploads.
432
+ * If set, the <strong>Upload</strong> tab will appear in the <strong>Link</strong>, <strong>Image</strong>,
433
+ * and <strong>Flash</strong> dialog windows.
434
+ * @name CKEDITOR.config.filebrowserUploadUrl
435
+ * @see The <a href="http://docs.cksource.com/CKEditor_3.x/Developers_Guide/File_Browser_(Uploader)">File Browser/Uploader</a> documentation.
436
+ * @since 3.0
437
+ * @type String
438
+ * @default <code>''</code> (empty string = disabled)
439
+ * @example
440
+ * config.filebrowserUploadUrl = '/uploader/upload.php';
441
+ */
442
+
443
+ /**
444
+ * The location of an external file browser that should be launched when the <strong>Browse Server</strong>
445
+ * button is pressed in the <strong>Image</strong> dialog window.
446
+ * If not set, CKEditor will use <code>{@link CKEDITOR.config.filebrowserBrowseUrl}</code>.
447
+ * @name CKEDITOR.config.filebrowserImageBrowseUrl
448
+ * @since 3.0
449
+ * @type String
450
+ * @default <code>''</code> (empty string = disabled)
451
+ * @example
452
+ * config.filebrowserImageBrowseUrl = '/browser/browse.php?type=Images';
453
+ */
454
+
455
+ /**
456
+ * The location of an external file browser that should be launched when the <strong>Browse Server</strong>
457
+ * button is pressed in the <strong>Flash</strong> dialog window.
458
+ * If not set, CKEditor will use <code>{@link CKEDITOR.config.filebrowserBrowseUrl}</code>.
459
+ * @name CKEDITOR.config.filebrowserFlashBrowseUrl
460
+ * @since 3.0
461
+ * @type String
462
+ * @default <code>''</code> (empty string = disabled)
463
+ * @example
464
+ * config.filebrowserFlashBrowseUrl = '/browser/browse.php?type=Flash';
465
+ */
466
+
467
+ /**
468
+ * The location of the script that handles file uploads in the <strong>Image</strong> dialog window.
469
+ * If not set, CKEditor will use <code>{@link CKEDITOR.config.filebrowserUploadUrl}</code>.
470
+ * @name CKEDITOR.config.filebrowserImageUploadUrl
471
+ * @since 3.0
472
+ * @type String
473
+ * @default <code>''</code> (empty string = disabled)
474
+ * @example
475
+ * config.filebrowserImageUploadUrl = '/uploader/upload.php?type=Images';
476
+ */
477
+
478
+ /**
479
+ * The location of the script that handles file uploads in the <strong>Flash</strong> dialog window.
480
+ * If not set, CKEditor will use <code>{@link CKEDITOR.config.filebrowserUploadUrl}</code>.
481
+ * @name CKEDITOR.config.filebrowserFlashUploadUrl
482
+ * @since 3.0
483
+ * @type String
484
+ * @default <code>''</code> (empty string = disabled)
485
+ * @example
486
+ * config.filebrowserFlashUploadUrl = '/uploader/upload.php?type=Flash';
487
+ */
488
+
489
+ /**
490
+ * The location of an external file browser that should be launched when the <strong>Browse Server</strong>
491
+ * button is pressed in the <strong>Link</strong> tab of the <strong>Image</strong> dialog window.
492
+ * If not set, CKEditor will use <code>{@link CKEDITOR.config.filebrowserBrowseUrl}</code>.
493
+ * @name CKEDITOR.config.filebrowserImageBrowseLinkUrl
494
+ * @since 3.2
495
+ * @type String
496
+ * @default <code>''</code> (empty string = disabled)
497
+ * @example
498
+ * config.filebrowserImageBrowseLinkUrl = '/browser/browse.php';
499
+ */
500
+
501
+ /**
502
+ * The features to use in the file browser popup window.
503
+ * @name CKEDITOR.config.filebrowserWindowFeatures
504
+ * @since 3.4.1
505
+ * @type String
506
+ * @default <code>'location=no,menubar=no,toolbar=no,dependent=yes,minimizable=no,modal=yes,alwaysRaised=yes,resizable=yes,scrollbars=yes'</code>
507
+ * @example
508
+ * config.filebrowserWindowFeatures = 'resizable=yes,scrollbars=no';
509
+ */
510
+
511
+ /**
512
+ * The width of the file browser popup window. It can be a number denoting a value in
513
+ * pixels or a percent string.
514
+ * @name CKEDITOR.config.filebrowserWindowWidth
515
+ * @type Number|String
516
+ * @default <code>'80%'</code>
517
+ * @example
518
+ * config.filebrowserWindowWidth = 750;
519
+ * @example
520
+ * config.filebrowserWindowWidth = '50%';
521
+ */
522
+
523
+ /**
524
+ * The height of the file browser popup window. It can be a number denoting a value in
525
+ * pixels or a percent string.
526
+ * @name CKEDITOR.config.filebrowserWindowHeight
527
+ * @type Number|String
528
+ * @default <code>'70%'</code>
529
+ * @example
530
+ * config.filebrowserWindowHeight = 580;
531
+ * @example
532
+ * config.filebrowserWindowHeight = '50%';
533
+ */