ckeditor-rails 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
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,556 +1,556 @@
1
- <?php
2
- /*
3
- * Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
4
- * For licensing, see LICENSE.html or http://ckeditor.com/license
5
- */
6
-
7
- /**
8
- * \brief CKEditor class that can be used to create editor
9
- * instances in PHP pages on server side.
10
- * @see http://ckeditor.com
11
- *
12
- * Sample usage:
13
- * @code
14
- * $CKEditor = new CKEditor();
15
- * $CKEditor->editor("editor1", "<p>Initial value.</p>");
16
- * @endcode
17
- */
18
- class CKEditor
19
- {
20
- /**
21
- * The version of %CKEditor.
22
- */
23
- const version = '3.6.1';
24
- /**
25
- * A constant string unique for each release of %CKEditor.
26
- */
27
- const timestamp = 'B5GJ5GG';
28
-
29
- /**
30
- * URL to the %CKEditor installation directory (absolute or relative to document root).
31
- * If not set, CKEditor will try to guess it's path.
32
- *
33
- * Example usage:
34
- * @code
35
- * $CKEditor->basePath = '/ckeditor/';
36
- * @endcode
37
- */
38
- public $basePath;
39
- /**
40
- * An array that holds the global %CKEditor configuration.
41
- * For the list of available options, see http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.config.html
42
- *
43
- * Example usage:
44
- * @code
45
- * $CKEditor->config['height'] = 400;
46
- * // Use @@ at the beggining of a string to ouput it without surrounding quotes.
47
- * $CKEditor->config['width'] = '@@screen.width * 0.8';
48
- * @endcode
49
- */
50
- public $config = array();
51
- /**
52
- * A boolean variable indicating whether CKEditor has been initialized.
53
- * Set it to true only if you have already included
54
- * &lt;script&gt; tag loading ckeditor.js in your website.
55
- */
56
- public $initialized = false;
57
- /**
58
- * Boolean variable indicating whether created code should be printed out or returned by a function.
59
- *
60
- * Example 1: get the code creating %CKEditor instance and print it on a page with the "echo" function.
61
- * @code
62
- * $CKEditor = new CKEditor();
63
- * $CKEditor->returnOutput = true;
64
- * $code = $CKEditor->editor("editor1", "<p>Initial value.</p>");
65
- * echo "<p>Editor 1:</p>";
66
- * echo $code;
67
- * @endcode
68
- */
69
- public $returnOutput = false;
70
- /**
71
- * An array with textarea attributes.
72
- *
73
- * When %CKEditor is created with the editor() method, a HTML &lt;textarea&gt; element is created,
74
- * it will be displayed to anyone with JavaScript disabled or with incompatible browser.
75
- */
76
- public $textareaAttributes = array( "rows" => 8, "cols" => 60 );
77
- /**
78
- * A string indicating the creation date of %CKEditor.
79
- * Do not change it unless you want to force browsers to not use previously cached version of %CKEditor.
80
- */
81
- public $timestamp = "B5GJ5GG";
82
- /**
83
- * An array that holds event listeners.
84
- */
85
- private $events = array();
86
- /**
87
- * An array that holds global event listeners.
88
- */
89
- private $globalEvents = array();
90
-
91
- /**
92
- * Main Constructor.
93
- *
94
- * @param $basePath (string) URL to the %CKEditor installation directory (optional).
95
- */
96
- function __construct($basePath = null) {
97
- if (!empty($basePath)) {
98
- $this->basePath = $basePath;
99
- }
100
- }
101
-
102
- /**
103
- * Creates a %CKEditor instance.
104
- * In incompatible browsers %CKEditor will downgrade to plain HTML &lt;textarea&gt; element.
105
- *
106
- * @param $name (string) Name of the %CKEditor instance (this will be also the "name" attribute of textarea element).
107
- * @param $value (string) Initial value (optional).
108
- * @param $config (array) The specific configurations to apply to this editor instance (optional).
109
- * @param $events (array) Event listeners for this editor instance (optional).
110
- *
111
- * Example usage:
112
- * @code
113
- * $CKEditor = new CKEditor();
114
- * $CKEditor->editor("field1", "<p>Initial value.</p>");
115
- * @endcode
116
- *
117
- * Advanced example:
118
- * @code
119
- * $CKEditor = new CKEditor();
120
- * $config = array();
121
- * $config['toolbar'] = array(
122
- * array( 'Source', '-', 'Bold', 'Italic', 'Underline', 'Strike' ),
123
- * array( 'Image', 'Link', 'Unlink', 'Anchor' )
124
- * );
125
- * $events['instanceReady'] = 'function (ev) {
126
- * alert("Loaded: " + ev.editor.name);
127
- * }';
128
- * $CKEditor->editor("field1", "<p>Initial value.</p>", $config, $events);
129
- * @endcode
130
- */
131
- public function editor($name, $value = "", $config = array(), $events = array())
132
- {
133
- $attr = "";
134
- foreach ($this->textareaAttributes as $key => $val) {
135
- $attr.= " " . $key . '="' . str_replace('"', '&quot;', $val) . '"';
136
- }
137
- $out = "<textarea name=\"" . $name . "\"" . $attr . ">" . htmlspecialchars($value) . "</textarea>\n";
138
- if (!$this->initialized) {
139
- $out .= $this->init();
140
- }
141
-
142
- $_config = $this->configSettings($config, $events);
143
-
144
- $js = $this->returnGlobalEvents();
145
- if (!empty($_config))
146
- $js .= "CKEDITOR.replace('".$name."', ".$this->jsEncode($_config).");";
147
- else
148
- $js .= "CKEDITOR.replace('".$name."');";
149
-
150
- $out .= $this->script($js);
151
-
152
- if (!$this->returnOutput) {
153
- print $out;
154
- $out = "";
155
- }
156
-
157
- return $out;
158
- }
159
-
160
- /**
161
- * Replaces a &lt;textarea&gt; with a %CKEditor instance.
162
- *
163
- * @param $id (string) The id or name of textarea element.
164
- * @param $config (array) The specific configurations to apply to this editor instance (optional).
165
- * @param $events (array) Event listeners for this editor instance (optional).
166
- *
167
- * Example 1: adding %CKEditor to &lt;textarea name="article"&gt;&lt;/textarea&gt; element:
168
- * @code
169
- * $CKEditor = new CKEditor();
170
- * $CKEditor->replace("article");
171
- * @endcode
172
- */
173
- public function replace($id, $config = array(), $events = array())
174
- {
175
- $out = "";
176
- if (!$this->initialized) {
177
- $out .= $this->init();
178
- }
179
-
180
- $_config = $this->configSettings($config, $events);
181
-
182
- $js = $this->returnGlobalEvents();
183
- if (!empty($_config)) {
184
- $js .= "CKEDITOR.replace('".$id."', ".$this->jsEncode($_config).");";
185
- }
186
- else {
187
- $js .= "CKEDITOR.replace('".$id."');";
188
- }
189
- $out .= $this->script($js);
190
-
191
- if (!$this->returnOutput) {
192
- print $out;
193
- $out = "";
194
- }
195
-
196
- return $out;
197
- }
198
-
199
- /**
200
- * Replace all &lt;textarea&gt; elements available in the document with editor instances.
201
- *
202
- * @param $className (string) If set, replace all textareas with class className in the page.
203
- *
204
- * Example 1: replace all &lt;textarea&gt; elements in the page.
205
- * @code
206
- * $CKEditor = new CKEditor();
207
- * $CKEditor->replaceAll();
208
- * @endcode
209
- *
210
- * Example 2: replace all &lt;textarea class="myClassName"&gt; elements in the page.
211
- * @code
212
- * $CKEditor = new CKEditor();
213
- * $CKEditor->replaceAll( 'myClassName' );
214
- * @endcode
215
- */
216
- public function replaceAll($className = null)
217
- {
218
- $out = "";
219
- if (!$this->initialized) {
220
- $out .= $this->init();
221
- }
222
-
223
- $_config = $this->configSettings();
224
-
225
- $js = $this->returnGlobalEvents();
226
- if (empty($_config)) {
227
- if (empty($className)) {
228
- $js .= "CKEDITOR.replaceAll();";
229
- }
230
- else {
231
- $js .= "CKEDITOR.replaceAll('".$className."');";
232
- }
233
- }
234
- else {
235
- $classDetection = "";
236
- $js .= "CKEDITOR.replaceAll( function(textarea, config) {\n";
237
- if (!empty($className)) {
238
- $js .= " var classRegex = new RegExp('(?:^| )' + '". $className ."' + '(?:$| )');\n";
239
- $js .= " if (!classRegex.test(textarea.className))\n";
240
- $js .= " return false;\n";
241
- }
242
- $js .= " CKEDITOR.tools.extend(config, ". $this->jsEncode($_config) .", true);";
243
- $js .= "} );";
244
-
245
- }
246
-
247
- $out .= $this->script($js);
248
-
249
- if (!$this->returnOutput) {
250
- print $out;
251
- $out = "";
252
- }
253
-
254
- return $out;
255
- }
256
-
257
- /**
258
- * Adds event listener.
259
- * Events are fired by %CKEditor in various situations.
260
- *
261
- * @param $event (string) Event name.
262
- * @param $javascriptCode (string) Javascript anonymous function or function name.
263
- *
264
- * Example usage:
265
- * @code
266
- * $CKEditor->addEventHandler('instanceReady', 'function (ev) {
267
- * alert("Loaded: " + ev.editor.name);
268
- * }');
269
- * @endcode
270
- */
271
- public function addEventHandler($event, $javascriptCode)
272
- {
273
- if (!isset($this->events[$event])) {
274
- $this->events[$event] = array();
275
- }
276
- // Avoid duplicates.
277
- if (!in_array($javascriptCode, $this->events[$event])) {
278
- $this->events[$event][] = $javascriptCode;
279
- }
280
- }
281
-
282
- /**
283
- * Clear registered event handlers.
284
- * Note: this function will have no effect on already created editor instances.
285
- *
286
- * @param $event (string) Event name, if not set all event handlers will be removed (optional).
287
- */
288
- public function clearEventHandlers($event = null)
289
- {
290
- if (!empty($event)) {
291
- $this->events[$event] = array();
292
- }
293
- else {
294
- $this->events = array();
295
- }
296
- }
297
-
298
- /**
299
- * Adds global event listener.
300
- *
301
- * @param $event (string) Event name.
302
- * @param $javascriptCode (string) Javascript anonymous function or function name.
303
- *
304
- * Example usage:
305
- * @code
306
- * $CKEditor->addGlobalEventHandler('dialogDefinition', 'function (ev) {
307
- * alert("Loading dialog: " + ev.data.name);
308
- * }');
309
- * @endcode
310
- */
311
- public function addGlobalEventHandler($event, $javascriptCode)
312
- {
313
- if (!isset($this->globalEvents[$event])) {
314
- $this->globalEvents[$event] = array();
315
- }
316
- // Avoid duplicates.
317
- if (!in_array($javascriptCode, $this->globalEvents[$event])) {
318
- $this->globalEvents[$event][] = $javascriptCode;
319
- }
320
- }
321
-
322
- /**
323
- * Clear registered global event handlers.
324
- * Note: this function will have no effect if the event handler has been already printed/returned.
325
- *
326
- * @param $event (string) Event name, if not set all event handlers will be removed (optional).
327
- */
328
- public function clearGlobalEventHandlers($event = null)
329
- {
330
- if (!empty($event)) {
331
- $this->globalEvents[$event] = array();
332
- }
333
- else {
334
- $this->globalEvents = array();
335
- }
336
- }
337
-
338
- /**
339
- * Prints javascript code.
340
- *
341
- * @param string $js
342
- */
343
- private function script($js)
344
- {
345
- $out = "<script type=\"text/javascript\">";
346
- $out .= "//<![CDATA[\n";
347
- $out .= $js;
348
- $out .= "\n//]]>";
349
- $out .= "</script>\n";
350
-
351
- return $out;
352
- }
353
-
354
- /**
355
- * Returns the configuration array (global and instance specific settings are merged into one array).
356
- *
357
- * @param $config (array) The specific configurations to apply to editor instance.
358
- * @param $events (array) Event listeners for editor instance.
359
- */
360
- private function configSettings($config = array(), $events = array())
361
- {
362
- $_config = $this->config;
363
- $_events = $this->events;
364
-
365
- if (is_array($config) && !empty($config)) {
366
- $_config = array_merge($_config, $config);
367
- }
368
-
369
- if (is_array($events) && !empty($events)) {
370
- foreach ($events as $eventName => $code) {
371
- if (!isset($_events[$eventName])) {
372
- $_events[$eventName] = array();
373
- }
374
- if (!in_array($code, $_events[$eventName])) {
375
- $_events[$eventName][] = $code;
376
- }
377
- }
378
- }
379
-
380
- if (!empty($_events)) {
381
- foreach($_events as $eventName => $handlers) {
382
- if (empty($handlers)) {
383
- continue;
384
- }
385
- else if (count($handlers) == 1) {
386
- $_config['on'][$eventName] = '@@'.$handlers[0];
387
- }
388
- else {
389
- $_config['on'][$eventName] = '@@function (ev){';
390
- foreach ($handlers as $handler => $code) {
391
- $_config['on'][$eventName] .= '('.$code.')(ev);';
392
- }
393
- $_config['on'][$eventName] .= '}';
394
- }
395
- }
396
- }
397
-
398
- return $_config;
399
- }
400
-
401
- /**
402
- * Return global event handlers.
403
- */
404
- private function returnGlobalEvents()
405
- {
406
- static $returnedEvents;
407
- $out = "";
408
-
409
- if (!isset($returnedEvents)) {
410
- $returnedEvents = array();
411
- }
412
-
413
- if (!empty($this->globalEvents)) {
414
- foreach ($this->globalEvents as $eventName => $handlers) {
415
- foreach ($handlers as $handler => $code) {
416
- if (!isset($returnedEvents[$eventName])) {
417
- $returnedEvents[$eventName] = array();
418
- }
419
- // Return only new events
420
- if (!in_array($code, $returnedEvents[$eventName])) {
421
- $out .= ($code ? "\n" : "") . "CKEDITOR.on('". $eventName ."', $code);";
422
- $returnedEvents[$eventName][] = $code;
423
- }
424
- }
425
- }
426
- }
427
-
428
- return $out;
429
- }
430
-
431
- /**
432
- * Initializes CKEditor (executed only once).
433
- */
434
- private function init()
435
- {
436
- static $initComplete;
437
- $out = "";
438
-
439
- if (!empty($initComplete)) {
440
- return "";
441
- }
442
-
443
- if ($this->initialized) {
444
- $initComplete = true;
445
- return "";
446
- }
447
-
448
- $args = "";
449
- $ckeditorPath = $this->ckeditorPath();
450
-
451
- if (!empty($this->timestamp) && $this->timestamp != "%"."TIMESTAMP%") {
452
- $args = '?t=' . $this->timestamp;
453
- }
454
-
455
- // Skip relative paths...
456
- if (strpos($ckeditorPath, '..') !== 0) {
457
- $out .= $this->script("window.CKEDITOR_BASEPATH='". $ckeditorPath ."';");
458
- }
459
-
460
- $out .= "<script type=\"text/javascript\" src=\"" . $ckeditorPath . 'ckeditor.js' . $args . "\"></script>\n";
461
-
462
- $extraCode = "";
463
- if ($this->timestamp != self::timestamp) {
464
- $extraCode .= ($extraCode ? "\n" : "") . "CKEDITOR.timestamp = '". $this->timestamp ."';";
465
- }
466
- if ($extraCode) {
467
- $out .= $this->script($extraCode);
468
- }
469
-
470
- $initComplete = $this->initialized = true;
471
-
472
- return $out;
473
- }
474
-
475
- /**
476
- * Return path to ckeditor.js.
477
- */
478
- private function ckeditorPath()
479
- {
480
- if (!empty($this->basePath)) {
481
- return $this->basePath;
482
- }
483
-
484
- /**
485
- * The absolute pathname of the currently executing script.
486
- * Note: If a script is executed with the CLI, as a relative path, such as file.php or ../file.php,
487
- * $_SERVER['SCRIPT_FILENAME'] will contain the relative path specified by the user.
488
- */
489
- if (isset($_SERVER['SCRIPT_FILENAME'])) {
490
- $realPath = dirname($_SERVER['SCRIPT_FILENAME']);
491
- }
492
- else {
493
- /**
494
- * realpath - Returns canonicalized absolute pathname
495
- */
496
- $realPath = realpath( './' ) ;
497
- }
498
-
499
- /**
500
- * The filename of the currently executing script, relative to the document root.
501
- * For instance, $_SERVER['PHP_SELF'] in a script at the address http://example.com/test.php/foo.bar
502
- * would be /test.php/foo.bar.
503
- */
504
- $selfPath = dirname($_SERVER['PHP_SELF']);
505
- $file = str_replace("\\", "/", __FILE__);
506
-
507
- if (!$selfPath || !$realPath || !$file) {
508
- return "/ckeditor/";
509
- }
510
-
511
- $documentRoot = substr($realPath, 0, strlen($realPath) - strlen($selfPath));
512
- $fileUrl = substr($file, strlen($documentRoot));
513
- $ckeditorUrl = str_replace("ckeditor_php5.php", "", $fileUrl);
514
-
515
- return $ckeditorUrl;
516
- }
517
-
518
- /**
519
- * This little function provides a basic JSON support.
520
- *
521
- * @param mixed $val
522
- * @return string
523
- */
524
- private function jsEncode($val)
525
- {
526
- if (is_null($val)) {
527
- return 'null';
528
- }
529
- if (is_bool($val)) {
530
- return $val ? 'true' : 'false';
531
- }
532
- if (is_int($val)) {
533
- return $val;
534
- }
535
- if (is_float($val)) {
536
- return str_replace(',', '.', $val);
537
- }
538
- if (is_array($val) || is_object($val)) {
539
- if (is_array($val) && (array_keys($val) === range(0,count($val)-1))) {
540
- return '[' . implode(',', array_map(array($this, 'jsEncode'), $val)) . ']';
541
- }
542
- $temp = array();
543
- foreach ($val as $k => $v){
544
- $temp[] = $this->jsEncode("{$k}") . ':' . $this->jsEncode($v);
545
- }
546
- return '{' . implode(',', $temp) . '}';
547
- }
548
- // String otherwise
549
- if (strpos($val, '@@') === 0)
550
- return substr($val, 2);
551
- if (strtoupper(substr($val, 0, 9)) == 'CKEDITOR.')
552
- return $val;
553
-
554
- return '"' . str_replace(array("\\", "/", "\n", "\t", "\r", "\x08", "\x0c", '"'), array('\\\\', '\\/', '\\n', '\\t', '\\r', '\\b', '\\f', '\"'), $val) . '"';
555
- }
556
- }
1
+ <?php
2
+ /*
3
+ * Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved.
4
+ * For licensing, see LICENSE.html or http://ckeditor.com/license
5
+ */
6
+
7
+ /**
8
+ * \brief CKEditor class that can be used to create editor
9
+ * instances in PHP pages on server side.
10
+ * @see http://ckeditor.com
11
+ *
12
+ * Sample usage:
13
+ * @code
14
+ * $CKEditor = new CKEditor();
15
+ * $CKEditor->editor("editor1", "<p>Initial value.</p>");
16
+ * @endcode
17
+ */
18
+ class CKEditor
19
+ {
20
+ /**
21
+ * The version of %CKEditor.
22
+ */
23
+ const version = '3.6.3';
24
+ /**
25
+ * A constant string unique for each release of %CKEditor.
26
+ */
27
+ const timestamp = 'C3HA5RM';
28
+
29
+ /**
30
+ * URL to the %CKEditor installation directory (absolute or relative to document root).
31
+ * If not set, CKEditor will try to guess it's path.
32
+ *
33
+ * Example usage:
34
+ * @code
35
+ * $CKEditor->basePath = '/ckeditor/';
36
+ * @endcode
37
+ */
38
+ public $basePath;
39
+ /**
40
+ * An array that holds the global %CKEditor configuration.
41
+ * For the list of available options, see http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.config.html
42
+ *
43
+ * Example usage:
44
+ * @code
45
+ * $CKEditor->config['height'] = 400;
46
+ * // Use @@ at the beggining of a string to ouput it without surrounding quotes.
47
+ * $CKEditor->config['width'] = '@@screen.width * 0.8';
48
+ * @endcode
49
+ */
50
+ public $config = array();
51
+ /**
52
+ * A boolean variable indicating whether CKEditor has been initialized.
53
+ * Set it to true only if you have already included
54
+ * &lt;script&gt; tag loading ckeditor.js in your website.
55
+ */
56
+ public $initialized = false;
57
+ /**
58
+ * Boolean variable indicating whether created code should be printed out or returned by a function.
59
+ *
60
+ * Example 1: get the code creating %CKEditor instance and print it on a page with the "echo" function.
61
+ * @code
62
+ * $CKEditor = new CKEditor();
63
+ * $CKEditor->returnOutput = true;
64
+ * $code = $CKEditor->editor("editor1", "<p>Initial value.</p>");
65
+ * echo "<p>Editor 1:</p>";
66
+ * echo $code;
67
+ * @endcode
68
+ */
69
+ public $returnOutput = false;
70
+ /**
71
+ * An array with textarea attributes.
72
+ *
73
+ * When %CKEditor is created with the editor() method, a HTML &lt;textarea&gt; element is created,
74
+ * it will be displayed to anyone with JavaScript disabled or with incompatible browser.
75
+ */
76
+ public $textareaAttributes = array( "rows" => 8, "cols" => 60 );
77
+ /**
78
+ * A string indicating the creation date of %CKEditor.
79
+ * Do not change it unless you want to force browsers to not use previously cached version of %CKEditor.
80
+ */
81
+ public $timestamp = "C3HA5RM";
82
+ /**
83
+ * An array that holds event listeners.
84
+ */
85
+ private $events = array();
86
+ /**
87
+ * An array that holds global event listeners.
88
+ */
89
+ private $globalEvents = array();
90
+
91
+ /**
92
+ * Main Constructor.
93
+ *
94
+ * @param $basePath (string) URL to the %CKEditor installation directory (optional).
95
+ */
96
+ function __construct($basePath = null) {
97
+ if (!empty($basePath)) {
98
+ $this->basePath = $basePath;
99
+ }
100
+ }
101
+
102
+ /**
103
+ * Creates a %CKEditor instance.
104
+ * In incompatible browsers %CKEditor will downgrade to plain HTML &lt;textarea&gt; element.
105
+ *
106
+ * @param $name (string) Name of the %CKEditor instance (this will be also the "name" attribute of textarea element).
107
+ * @param $value (string) Initial value (optional).
108
+ * @param $config (array) The specific configurations to apply to this editor instance (optional).
109
+ * @param $events (array) Event listeners for this editor instance (optional).
110
+ *
111
+ * Example usage:
112
+ * @code
113
+ * $CKEditor = new CKEditor();
114
+ * $CKEditor->editor("field1", "<p>Initial value.</p>");
115
+ * @endcode
116
+ *
117
+ * Advanced example:
118
+ * @code
119
+ * $CKEditor = new CKEditor();
120
+ * $config = array();
121
+ * $config['toolbar'] = array(
122
+ * array( 'Source', '-', 'Bold', 'Italic', 'Underline', 'Strike' ),
123
+ * array( 'Image', 'Link', 'Unlink', 'Anchor' )
124
+ * );
125
+ * $events['instanceReady'] = 'function (ev) {
126
+ * alert("Loaded: " + ev.editor.name);
127
+ * }';
128
+ * $CKEditor->editor("field1", "<p>Initial value.</p>", $config, $events);
129
+ * @endcode
130
+ */
131
+ public function editor($name, $value = "", $config = array(), $events = array())
132
+ {
133
+ $attr = "";
134
+ foreach ($this->textareaAttributes as $key => $val) {
135
+ $attr.= " " . $key . '="' . str_replace('"', '&quot;', $val) . '"';
136
+ }
137
+ $out = "<textarea name=\"" . $name . "\"" . $attr . ">" . htmlspecialchars($value) . "</textarea>\n";
138
+ if (!$this->initialized) {
139
+ $out .= $this->init();
140
+ }
141
+
142
+ $_config = $this->configSettings($config, $events);
143
+
144
+ $js = $this->returnGlobalEvents();
145
+ if (!empty($_config))
146
+ $js .= "CKEDITOR.replace('".$name."', ".$this->jsEncode($_config).");";
147
+ else
148
+ $js .= "CKEDITOR.replace('".$name."');";
149
+
150
+ $out .= $this->script($js);
151
+
152
+ if (!$this->returnOutput) {
153
+ print $out;
154
+ $out = "";
155
+ }
156
+
157
+ return $out;
158
+ }
159
+
160
+ /**
161
+ * Replaces a &lt;textarea&gt; with a %CKEditor instance.
162
+ *
163
+ * @param $id (string) The id or name of textarea element.
164
+ * @param $config (array) The specific configurations to apply to this editor instance (optional).
165
+ * @param $events (array) Event listeners for this editor instance (optional).
166
+ *
167
+ * Example 1: adding %CKEditor to &lt;textarea name="article"&gt;&lt;/textarea&gt; element:
168
+ * @code
169
+ * $CKEditor = new CKEditor();
170
+ * $CKEditor->replace("article");
171
+ * @endcode
172
+ */
173
+ public function replace($id, $config = array(), $events = array())
174
+ {
175
+ $out = "";
176
+ if (!$this->initialized) {
177
+ $out .= $this->init();
178
+ }
179
+
180
+ $_config = $this->configSettings($config, $events);
181
+
182
+ $js = $this->returnGlobalEvents();
183
+ if (!empty($_config)) {
184
+ $js .= "CKEDITOR.replace('".$id."', ".$this->jsEncode($_config).");";
185
+ }
186
+ else {
187
+ $js .= "CKEDITOR.replace('".$id."');";
188
+ }
189
+ $out .= $this->script($js);
190
+
191
+ if (!$this->returnOutput) {
192
+ print $out;
193
+ $out = "";
194
+ }
195
+
196
+ return $out;
197
+ }
198
+
199
+ /**
200
+ * Replace all &lt;textarea&gt; elements available in the document with editor instances.
201
+ *
202
+ * @param $className (string) If set, replace all textareas with class className in the page.
203
+ *
204
+ * Example 1: replace all &lt;textarea&gt; elements in the page.
205
+ * @code
206
+ * $CKEditor = new CKEditor();
207
+ * $CKEditor->replaceAll();
208
+ * @endcode
209
+ *
210
+ * Example 2: replace all &lt;textarea class="myClassName"&gt; elements in the page.
211
+ * @code
212
+ * $CKEditor = new CKEditor();
213
+ * $CKEditor->replaceAll( 'myClassName' );
214
+ * @endcode
215
+ */
216
+ public function replaceAll($className = null)
217
+ {
218
+ $out = "";
219
+ if (!$this->initialized) {
220
+ $out .= $this->init();
221
+ }
222
+
223
+ $_config = $this->configSettings();
224
+
225
+ $js = $this->returnGlobalEvents();
226
+ if (empty($_config)) {
227
+ if (empty($className)) {
228
+ $js .= "CKEDITOR.replaceAll();";
229
+ }
230
+ else {
231
+ $js .= "CKEDITOR.replaceAll('".$className."');";
232
+ }
233
+ }
234
+ else {
235
+ $classDetection = "";
236
+ $js .= "CKEDITOR.replaceAll( function(textarea, config) {\n";
237
+ if (!empty($className)) {
238
+ $js .= " var classRegex = new RegExp('(?:^| )' + '". $className ."' + '(?:$| )');\n";
239
+ $js .= " if (!classRegex.test(textarea.className))\n";
240
+ $js .= " return false;\n";
241
+ }
242
+ $js .= " CKEDITOR.tools.extend(config, ". $this->jsEncode($_config) .", true);";
243
+ $js .= "} );";
244
+
245
+ }
246
+
247
+ $out .= $this->script($js);
248
+
249
+ if (!$this->returnOutput) {
250
+ print $out;
251
+ $out = "";
252
+ }
253
+
254
+ return $out;
255
+ }
256
+
257
+ /**
258
+ * Adds event listener.
259
+ * Events are fired by %CKEditor in various situations.
260
+ *
261
+ * @param $event (string) Event name.
262
+ * @param $javascriptCode (string) Javascript anonymous function or function name.
263
+ *
264
+ * Example usage:
265
+ * @code
266
+ * $CKEditor->addEventHandler('instanceReady', 'function (ev) {
267
+ * alert("Loaded: " + ev.editor.name);
268
+ * }');
269
+ * @endcode
270
+ */
271
+ public function addEventHandler($event, $javascriptCode)
272
+ {
273
+ if (!isset($this->events[$event])) {
274
+ $this->events[$event] = array();
275
+ }
276
+ // Avoid duplicates.
277
+ if (!in_array($javascriptCode, $this->events[$event])) {
278
+ $this->events[$event][] = $javascriptCode;
279
+ }
280
+ }
281
+
282
+ /**
283
+ * Clear registered event handlers.
284
+ * Note: this function will have no effect on already created editor instances.
285
+ *
286
+ * @param $event (string) Event name, if not set all event handlers will be removed (optional).
287
+ */
288
+ public function clearEventHandlers($event = null)
289
+ {
290
+ if (!empty($event)) {
291
+ $this->events[$event] = array();
292
+ }
293
+ else {
294
+ $this->events = array();
295
+ }
296
+ }
297
+
298
+ /**
299
+ * Adds global event listener.
300
+ *
301
+ * @param $event (string) Event name.
302
+ * @param $javascriptCode (string) Javascript anonymous function or function name.
303
+ *
304
+ * Example usage:
305
+ * @code
306
+ * $CKEditor->addGlobalEventHandler('dialogDefinition', 'function (ev) {
307
+ * alert("Loading dialog: " + ev.data.name);
308
+ * }');
309
+ * @endcode
310
+ */
311
+ public function addGlobalEventHandler($event, $javascriptCode)
312
+ {
313
+ if (!isset($this->globalEvents[$event])) {
314
+ $this->globalEvents[$event] = array();
315
+ }
316
+ // Avoid duplicates.
317
+ if (!in_array($javascriptCode, $this->globalEvents[$event])) {
318
+ $this->globalEvents[$event][] = $javascriptCode;
319
+ }
320
+ }
321
+
322
+ /**
323
+ * Clear registered global event handlers.
324
+ * Note: this function will have no effect if the event handler has been already printed/returned.
325
+ *
326
+ * @param $event (string) Event name, if not set all event handlers will be removed (optional).
327
+ */
328
+ public function clearGlobalEventHandlers($event = null)
329
+ {
330
+ if (!empty($event)) {
331
+ $this->globalEvents[$event] = array();
332
+ }
333
+ else {
334
+ $this->globalEvents = array();
335
+ }
336
+ }
337
+
338
+ /**
339
+ * Prints javascript code.
340
+ *
341
+ * @param string $js
342
+ */
343
+ private function script($js)
344
+ {
345
+ $out = "<script type=\"text/javascript\">";
346
+ $out .= "//<![CDATA[\n";
347
+ $out .= $js;
348
+ $out .= "\n//]]>";
349
+ $out .= "</script>\n";
350
+
351
+ return $out;
352
+ }
353
+
354
+ /**
355
+ * Returns the configuration array (global and instance specific settings are merged into one array).
356
+ *
357
+ * @param $config (array) The specific configurations to apply to editor instance.
358
+ * @param $events (array) Event listeners for editor instance.
359
+ */
360
+ private function configSettings($config = array(), $events = array())
361
+ {
362
+ $_config = $this->config;
363
+ $_events = $this->events;
364
+
365
+ if (is_array($config) && !empty($config)) {
366
+ $_config = array_merge($_config, $config);
367
+ }
368
+
369
+ if (is_array($events) && !empty($events)) {
370
+ foreach ($events as $eventName => $code) {
371
+ if (!isset($_events[$eventName])) {
372
+ $_events[$eventName] = array();
373
+ }
374
+ if (!in_array($code, $_events[$eventName])) {
375
+ $_events[$eventName][] = $code;
376
+ }
377
+ }
378
+ }
379
+
380
+ if (!empty($_events)) {
381
+ foreach($_events as $eventName => $handlers) {
382
+ if (empty($handlers)) {
383
+ continue;
384
+ }
385
+ else if (count($handlers) == 1) {
386
+ $_config['on'][$eventName] = '@@'.$handlers[0];
387
+ }
388
+ else {
389
+ $_config['on'][$eventName] = '@@function (ev){';
390
+ foreach ($handlers as $handler => $code) {
391
+ $_config['on'][$eventName] .= '('.$code.')(ev);';
392
+ }
393
+ $_config['on'][$eventName] .= '}';
394
+ }
395
+ }
396
+ }
397
+
398
+ return $_config;
399
+ }
400
+
401
+ /**
402
+ * Return global event handlers.
403
+ */
404
+ private function returnGlobalEvents()
405
+ {
406
+ static $returnedEvents;
407
+ $out = "";
408
+
409
+ if (!isset($returnedEvents)) {
410
+ $returnedEvents = array();
411
+ }
412
+
413
+ if (!empty($this->globalEvents)) {
414
+ foreach ($this->globalEvents as $eventName => $handlers) {
415
+ foreach ($handlers as $handler => $code) {
416
+ if (!isset($returnedEvents[$eventName])) {
417
+ $returnedEvents[$eventName] = array();
418
+ }
419
+ // Return only new events
420
+ if (!in_array($code, $returnedEvents[$eventName])) {
421
+ $out .= ($code ? "\n" : "") . "CKEDITOR.on('". $eventName ."', $code);";
422
+ $returnedEvents[$eventName][] = $code;
423
+ }
424
+ }
425
+ }
426
+ }
427
+
428
+ return $out;
429
+ }
430
+
431
+ /**
432
+ * Initializes CKEditor (executed only once).
433
+ */
434
+ private function init()
435
+ {
436
+ static $initComplete;
437
+ $out = "";
438
+
439
+ if (!empty($initComplete)) {
440
+ return "";
441
+ }
442
+
443
+ if ($this->initialized) {
444
+ $initComplete = true;
445
+ return "";
446
+ }
447
+
448
+ $args = "";
449
+ $ckeditorPath = $this->ckeditorPath();
450
+
451
+ if (!empty($this->timestamp) && $this->timestamp != "%"."TIMESTAMP%") {
452
+ $args = '?t=' . $this->timestamp;
453
+ }
454
+
455
+ // Skip relative paths...
456
+ if (strpos($ckeditorPath, '..') !== 0) {
457
+ $out .= $this->script("window.CKEDITOR_BASEPATH='". $ckeditorPath ."';");
458
+ }
459
+
460
+ $out .= "<script type=\"text/javascript\" src=\"" . $ckeditorPath . 'ckeditor.js' . $args . "\"></script>\n";
461
+
462
+ $extraCode = "";
463
+ if ($this->timestamp != self::timestamp) {
464
+ $extraCode .= ($extraCode ? "\n" : "") . "CKEDITOR.timestamp = '". $this->timestamp ."';";
465
+ }
466
+ if ($extraCode) {
467
+ $out .= $this->script($extraCode);
468
+ }
469
+
470
+ $initComplete = $this->initialized = true;
471
+
472
+ return $out;
473
+ }
474
+
475
+ /**
476
+ * Return path to ckeditor.js.
477
+ */
478
+ private function ckeditorPath()
479
+ {
480
+ if (!empty($this->basePath)) {
481
+ return $this->basePath;
482
+ }
483
+
484
+ /**
485
+ * The absolute pathname of the currently executing script.
486
+ * Note: If a script is executed with the CLI, as a relative path, such as file.php or ../file.php,
487
+ * $_SERVER['SCRIPT_FILENAME'] will contain the relative path specified by the user.
488
+ */
489
+ if (isset($_SERVER['SCRIPT_FILENAME'])) {
490
+ $realPath = dirname($_SERVER['SCRIPT_FILENAME']);
491
+ }
492
+ else {
493
+ /**
494
+ * realpath - Returns canonicalized absolute pathname
495
+ */
496
+ $realPath = realpath( './' ) ;
497
+ }
498
+
499
+ /**
500
+ * The filename of the currently executing script, relative to the document root.
501
+ * For instance, $_SERVER['PHP_SELF'] in a script at the address http://example.com/test.php/foo.bar
502
+ * would be /test.php/foo.bar.
503
+ */
504
+ $selfPath = dirname($_SERVER['PHP_SELF']);
505
+ $file = str_replace("\\", "/", __FILE__);
506
+
507
+ if (!$selfPath || !$realPath || !$file) {
508
+ return "/ckeditor/";
509
+ }
510
+
511
+ $documentRoot = substr($realPath, 0, strlen($realPath) - strlen($selfPath));
512
+ $fileUrl = substr($file, strlen($documentRoot));
513
+ $ckeditorUrl = str_replace("ckeditor_php5.php", "", $fileUrl);
514
+
515
+ return $ckeditorUrl;
516
+ }
517
+
518
+ /**
519
+ * This little function provides a basic JSON support.
520
+ *
521
+ * @param mixed $val
522
+ * @return string
523
+ */
524
+ private function jsEncode($val)
525
+ {
526
+ if (is_null($val)) {
527
+ return 'null';
528
+ }
529
+ if (is_bool($val)) {
530
+ return $val ? 'true' : 'false';
531
+ }
532
+ if (is_int($val)) {
533
+ return $val;
534
+ }
535
+ if (is_float($val)) {
536
+ return str_replace(',', '.', $val);
537
+ }
538
+ if (is_array($val) || is_object($val)) {
539
+ if (is_array($val) && (array_keys($val) === range(0,count($val)-1))) {
540
+ return '[' . implode(',', array_map(array($this, 'jsEncode'), $val)) . ']';
541
+ }
542
+ $temp = array();
543
+ foreach ($val as $k => $v){
544
+ $temp[] = $this->jsEncode("{$k}") . ':' . $this->jsEncode($v);
545
+ }
546
+ return '{' . implode(',', $temp) . '}';
547
+ }
548
+ // String otherwise
549
+ if (strpos($val, '@@') === 0)
550
+ return substr($val, 2);
551
+ if (strtoupper(substr($val, 0, 9)) == 'CKEDITOR.')
552
+ return $val;
553
+
554
+ return '"' . str_replace(array("\\", "/", "\n", "\t", "\r", "\x08", "\x0c", '"'), array('\\\\', '\\/', '\\n', '\\t', '\\r', '\\b', '\\f', '\"'), $val) . '"';
555
+ }
556
+ }