radiant-ck_editor_filter-extension 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (531) hide show
  1. data/README.markdown +7 -1
  2. data/VERSION +1 -1
  3. data/ck_editor_filter_extension.rb +1 -1
  4. data/public/javascripts/extensions/ck_editor_filter/ckeditor/CHANGES.html +1130 -373
  5. data/public/javascripts/extensions/ck_editor_filter/ckeditor/INSTALL.html +2 -2
  6. data/public/javascripts/extensions/ck_editor_filter/ckeditor/LICENSE.html +2 -2
  7. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/adobeair/application.xml +32 -0
  8. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/adobeair/run.bat +9 -0
  9. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/adobeair/run.sh +8 -0
  10. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/adobeair/sample.html +45 -0
  11. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/ajax.html +23 -25
  12. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/api.html +64 -24
  13. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/api_dialog.html +36 -19
  14. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/api_dialog/my_dialog.js +1 -1
  15. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/asp/advanced.asp +105 -0
  16. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/asp/events.asp +136 -0
  17. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/asp/index.html +103 -0
  18. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/asp/replace.asp +72 -0
  19. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/asp/replaceall.asp +77 -0
  20. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/asp/sample_posteddata.asp +46 -0
  21. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/asp/standalone.asp +72 -0
  22. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/assets/_posteddata.php +59 -0
  23. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/assets/output_for_flash.fla +0 -0
  24. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/assets/output_for_flash.swf +0 -0
  25. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/assets/output_xhtml.css +204 -0
  26. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/assets/parsesample.css +70 -0
  27. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/assets/swfobject.js +18 -0
  28. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/autogrow.html +103 -0
  29. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/bbcode.html +136 -0
  30. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/devtools.html +94 -0
  31. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/divreplace.html +27 -10
  32. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/enterkey.html +39 -12
  33. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/fullpage.html +33 -13
  34. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/index.html +88 -25
  35. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/jqueryadapter.html +34 -8
  36. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/output_for_flash.html +275 -0
  37. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/output_html.html +285 -0
  38. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/output_xhtml.html +181 -0
  39. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/php/advanced.php +56 -29
  40. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/php/events.php +58 -35
  41. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/php/index.html +47 -0
  42. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/php/replace.php +48 -24
  43. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/php/replaceall.php +50 -30
  44. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/php/standalone.php +52 -33
  45. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/placeholder.html +81 -0
  46. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/readonly.html +91 -0
  47. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/replacebyclass.html +22 -7
  48. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/replacebycode.html +25 -8
  49. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/sample.css +85 -3
  50. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/sample.js +1 -1
  51. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/sample_posteddata.php +21 -59
  52. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/sharedspaces.html +32 -10
  53. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/skins.html +38 -11
  54. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/stylesheetparser.html +93 -0
  55. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/tableresize.html +115 -0
  56. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/ui_color.html +49 -7
  57. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_samples/ui_languages.html +53 -23
  58. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/adapters/jquery.js +17 -8
  59. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/_bootstrap.js +21 -18
  60. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/ckeditor.js +42 -4
  61. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/ckeditor_base.js +66 -29
  62. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/ckeditor_basic.js +12 -15
  63. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/command.js +138 -2
  64. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/commanddefinition.js +59 -16
  65. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/config.js +142 -18
  66. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dataprocessor.js +6 -7
  67. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom.js +2 -3
  68. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/comment.js +1 -1
  69. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/document.js +29 -2
  70. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/documentfragment.js +3 -3
  71. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/domobject.js +59 -11
  72. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/element.js +249 -27
  73. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/elementpath.js +18 -3
  74. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/event.js +1 -1
  75. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/node.js +84 -56
  76. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/nodelist.js +4 -1
  77. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/range.js +345 -48
  78. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/rangelist.js +213 -0
  79. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/text.js +6 -1
  80. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/walker.js +40 -29
  81. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dom/window.js +1 -1
  82. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/dtd.js +15 -11
  83. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/editor.js +336 -15
  84. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/editor_basic.js +19 -12
  85. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/env.js +80 -17
  86. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/event.js +12 -6
  87. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/eventInfo.js +5 -5
  88. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/focusmanager.js +27 -12
  89. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser.js +17 -5
  90. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser/basicwriter.js +3 -3
  91. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser/cdata.js +1 -1
  92. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser/comment.js +1 -1
  93. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser/element.js +14 -5
  94. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser/filter.js +34 -8
  95. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser/fragment.js +105 -108
  96. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/htmlparser/text.js +1 -1
  97. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/lang.js +12 -7
  98. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/loader.js +7 -9
  99. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/plugindefinition.js +18 -1
  100. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/plugins.js +21 -3
  101. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/resourcemanager.js +1 -1
  102. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/scriptloader.js +7 -25
  103. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/skins.js +5 -25
  104. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/themes.js +1 -1
  105. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/tools.js +61 -12
  106. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/ui.js +13 -1
  107. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/_languages.js +2 -1
  108. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/_translationstatus.txt +58 -57
  109. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/af.js +521 -410
  110. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ar.js +160 -49
  111. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/bg.js +162 -51
  112. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/bn.js +162 -51
  113. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/bs.js +162 -51
  114. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ca.js +260 -149
  115. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/cs.js +233 -122
  116. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/cy.js +159 -48
  117. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/da.js +162 -51
  118. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/de.js +217 -106
  119. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/el.js +162 -51
  120. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/en-au.js +166 -55
  121. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/en-ca.js +166 -55
  122. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/en-gb.js +277 -166
  123. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/en.js +166 -55
  124. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/eo.js +162 -51
  125. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/es.js +182 -71
  126. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/et.js +162 -51
  127. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/eu.js +162 -51
  128. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/fa.js +162 -51
  129. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/fi.js +178 -67
  130. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/fo.js +339 -228
  131. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/fr-ca.js +162 -51
  132. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/fr.js +261 -150
  133. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/gl.js +162 -51
  134. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/gu.js +162 -51
  135. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/he.js +179 -68
  136. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/hi.js +162 -51
  137. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/hr.js +162 -51
  138. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/hu.js +341 -230
  139. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/is.js +162 -51
  140. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/it.js +162 -51
  141. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ja.js +195 -84
  142. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ka.js +810 -0
  143. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/km.js +162 -51
  144. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ko.js +162 -51
  145. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/lt.js +162 -51
  146. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/lv.js +162 -51
  147. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/mn.js +162 -51
  148. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ms.js +162 -51
  149. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/nb.js +286 -175
  150. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/nl.js +178 -67
  151. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/no.js +286 -175
  152. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/pl.js +279 -168
  153. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/pt-br.js +318 -208
  154. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/pt.js +162 -51
  155. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ro.js +162 -51
  156. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/ru.js +159 -48
  157. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/sk.js +192 -81
  158. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/sl.js +161 -50
  159. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/sr-latn.js +162 -51
  160. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/sr.js +162 -51
  161. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/sv.js +357 -247
  162. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/th.js +162 -51
  163. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/tr.js +345 -235
  164. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/uk.js +387 -276
  165. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/vi.js +336 -225
  166. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/zh-cn.js +271 -160
  167. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/lang/zh.js +162 -51
  168. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/a11yhelp/dialogs/a11yhelp.js +16 -5
  169. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/a11yhelp/lang/en.js +3 -3
  170. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/a11yhelp/lang/he.js +216 -0
  171. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/a11yhelp/plugin.js +4 -3
  172. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/about/dialogs/about.js +4 -1
  173. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/about/plugin.js +2 -1
  174. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/adobeair/plugin.js +228 -0
  175. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/ajax/plugin.js +152 -0
  176. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/autogrow/plugin.js +88 -0
  177. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/basicstyles/plugin.js +27 -19
  178. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/bbcode/plugin.js +924 -0
  179. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/bidi/plugin.js +331 -0
  180. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/blockquote/plugin.js +8 -4
  181. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/button/plugin.js +70 -55
  182. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/clipboard/dialogs/paste.js +115 -78
  183. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/clipboard/plugin.js +133 -69
  184. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/colorbutton/plugin.js +91 -23
  185. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/colordialog/dialogs/colordialog.js +192 -43
  186. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/colordialog/plugin.js +12 -10
  187. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/contextmenu/plugin.js +124 -221
  188. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/devtools/lang/en.js +16 -0
  189. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/devtools/plugin.js +173 -0
  190. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/dialog/dialogDefinition.js +840 -56
  191. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/dialog/plugin.js +652 -301
  192. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/dialogadvtab/plugin.js +205 -0
  193. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/dialogui/plugin.js +179 -50
  194. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/div/dialogs/div.js +40 -40
  195. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/div/plugin.js +4 -4
  196. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/docprops/dialogs/docprops.js +686 -0
  197. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/docprops/plugin.js +22 -0
  198. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/domiterator/plugin.js +59 -53
  199. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/editingblock/plugin.js +62 -17
  200. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/elementspath/plugin.js +137 -108
  201. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/enterkey/plugin.js +117 -47
  202. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/entities/plugin.js +95 -45
  203. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/fakeobjects/plugin.js +22 -16
  204. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/filebrowser/plugin.js +75 -30
  205. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/find/dialogs/find.js +111 -69
  206. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/find/plugin.js +2 -1
  207. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/flash/dialogs/flash.js +28 -20
  208. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/flash/plugin.js +14 -11
  209. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/floatpanel/plugin.js +50 -21
  210. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/font/plugin.js +3 -2
  211. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/format/plugin.js +17 -13
  212. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/button.js +38 -55
  213. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/checkbox.js +21 -11
  214. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/form.js +6 -6
  215. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/hiddenfield.js +26 -17
  216. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/radio.js +6 -6
  217. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/select.js +13 -7
  218. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/textarea.js +4 -4
  219. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/dialogs/textfield.js +11 -5
  220. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/images/hiddenfield.gif +0 -0
  221. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/forms/plugin.js +112 -41
  222. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/horizontalrule/plugin.js +1 -1
  223. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/htmldataprocessor/plugin.js +200 -63
  224. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/htmlwriter/plugin.js +26 -21
  225. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/iframe/dialogs/iframe.js +257 -0
  226. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/iframe/images/placeholder.png +0 -0
  227. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/iframe/plugin.js +106 -0
  228. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/iframedialog/plugin.js +59 -7
  229. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/image/dialogs/image.js +243 -218
  230. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/image/plugin.js +19 -2
  231. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/indent/plugin.js +335 -223
  232. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/justify/plugin.js +115 -30
  233. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/keystrokes/plugin.js +3 -7
  234. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/link/dialogs/anchor.js +85 -40
  235. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/link/dialogs/link.js +163 -184
  236. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/link/plugin.js +180 -32
  237. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/list/plugin.js +165 -81
  238. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/listblock/plugin.js +11 -6
  239. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/liststyle/dialogs/liststyle.js +204 -0
  240. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/liststyle/plugin.js +66 -0
  241. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/maximize/plugin.js +109 -40
  242. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/menu/plugin.js +166 -67
  243. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/menubutton/plugin.js +12 -7
  244. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/newpage/plugin.js +3 -3
  245. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/pagebreak/plugin.js +95 -29
  246. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/panel/plugin.js +43 -20
  247. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/panelbutton/plugin.js +10 -11
  248. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/pastefromword/filter/default.js +316 -119
  249. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/pastefromword/plugin.js +32 -11
  250. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/pastetext/dialogs/pastetext.js +19 -29
  251. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/pastetext/plugin.js +15 -79
  252. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/placeholder/dialogs/placeholder.js +71 -0
  253. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/placeholder/lang/en.js +16 -0
  254. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/placeholder/lang/he.js +16 -0
  255. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/placeholder/placeholder.gif +0 -0
  256. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/placeholder/plugin.js +171 -0
  257. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/popup/plugin.js +9 -7
  258. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/preview/plugin.js +3 -2
  259. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/print/plugin.js +2 -1
  260. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/removeformat/plugin.js +89 -36
  261. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/resize/plugin.js +71 -18
  262. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/richcombo/plugin.js +40 -29
  263. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/save/plugin.js +2 -1
  264. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/scayt/dialogs/options.js +114 -110
  265. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/scayt/plugin.js +531 -170
  266. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/selection/plugin.js +791 -331
  267. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_address.png +0 -0
  268. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_blockquote.png +0 -0
  269. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_div.png +0 -0
  270. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_h1.png +0 -0
  271. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_h2.png +0 -0
  272. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_h3.png +0 -0
  273. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_h4.png +0 -0
  274. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_h5.png +0 -0
  275. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_h6.png +0 -0
  276. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_p.png +0 -0
  277. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/images/block_pre.png +0 -0
  278. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showblocks/plugin.js +14 -8
  279. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/showborders/plugin.js +63 -26
  280. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/smiley/dialogs/smiley.js +31 -22
  281. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/smiley/plugin.js +15 -6
  282. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/sourcearea/plugin.js +18 -14
  283. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/specialchar/dialogs/specialchar.js +36 -59
  284. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/specialchar/lang/en.js +89 -0
  285. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/specialchar/plugin.js +45 -4
  286. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/styles/plugin.js +632 -212
  287. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/{stylescombo → styles}/styles/default.js +5 -2
  288. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/stylescombo/plugin.js +77 -140
  289. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/stylesheetparser/plugin.js +143 -0
  290. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/tab/plugin.js +109 -3
  291. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/table/dialogs/table.js +106 -23
  292. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/table/plugin.js +11 -3
  293. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/tableresize/plugin.js +450 -0
  294. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/tabletools/dialogs/tableCell.js +66 -64
  295. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/tabletools/plugin.js +348 -179
  296. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/templates/dialogs/templates.js +41 -36
  297. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/templates/plugin.js +3 -4
  298. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/templates/templates/default.js +2 -2
  299. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/toolbar/plugin.js +193 -122
  300. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/uicolor/dialogs/uicolor.js +6 -5
  301. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/uicolor/lang/en.js +1 -1
  302. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/uicolor/lang/he.js +15 -0
  303. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/uicolor/plugin.js +2 -2
  304. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/uicolor/yui/assets/yui.css +1 -1
  305. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/undo/plugin.js +73 -12
  306. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/wsc/dialogs/ciframe.html +1 -1
  307. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/wsc/dialogs/tmpFrameset.html +1 -1
  308. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/wsc/dialogs/wsc.css +1 -2
  309. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/wsc/dialogs/wsc.js +20 -4
  310. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/wsc/plugin.js +2 -2
  311. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/wysiwygarea/plugin.js +751 -251
  312. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/plugins/xml/plugin.js +170 -0
  313. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/dialog.css +116 -18
  314. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/editor.css +1 -1
  315. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/elementspath.css +2 -1
  316. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/icons.css +42 -2
  317. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/icons.png +0 -0
  318. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/icons_rtl.png +0 -0
  319. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/mainui.css +25 -5
  320. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/menu.css +36 -15
  321. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/panel.css +18 -17
  322. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/presets.css +1 -1
  323. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/reset.css +7 -1
  324. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/richcombo.css +27 -10
  325. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/skin.js +4 -36
  326. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/templates.css +16 -12
  327. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/kama/toolbar.css +69 -83
  328. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/dialog.css +111 -13
  329. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/editor.css +1 -1
  330. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/elementspath.css +2 -1
  331. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/icons.css +40 -1
  332. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/icons.png +0 -0
  333. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/icons_rtl.png +0 -0
  334. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/mainui.css +33 -7
  335. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/menu.css +37 -15
  336. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/panel.css +23 -22
  337. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/presets.css +1 -1
  338. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/reset.css +7 -1
  339. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/richcombo.css +40 -20
  340. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/skin.js +10 -17
  341. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/templates.css +16 -10
  342. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/office2003/toolbar.css +79 -32
  343. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/dialog.css +112 -13
  344. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/editor.css +1 -1
  345. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/elementspath.css +2 -1
  346. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/icons.css +40 -1
  347. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/icons.png +0 -0
  348. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/icons_rtl.png +0 -0
  349. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/mainui.css +25 -5
  350. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/menu.css +38 -16
  351. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/panel.css +22 -21
  352. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/presets.css +1 -1
  353. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/reset.css +7 -1
  354. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/richcombo.css +36 -23
  355. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/skin.js +10 -17
  356. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/templates.css +16 -10
  357. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/skins/v2/toolbar.css +67 -27
  358. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/themes/default/theme.js +106 -46
  359. data/public/javascripts/extensions/ck_editor_filter/ckeditor/adapters/jquery.js +2 -2
  360. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor.asp +955 -0
  361. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor.js +141 -117
  362. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor.pack +13 -7
  363. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor.php +1 -1
  364. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor_basic.js +4 -4
  365. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor_basic_source.js +2 -2
  366. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor_php4.php +27 -54
  367. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor_php5.php +26 -53
  368. data/public/javascripts/extensions/ck_editor_filter/ckeditor/ckeditor_source.js +2 -2
  369. data/public/javascripts/extensions/ck_editor_filter/ckeditor/config.js +1 -1
  370. data/public/javascripts/extensions/ck_editor_filter/ckeditor/contents.css +4 -16
  371. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/_languages.js +2 -2
  372. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/_translationstatus.txt +58 -57
  373. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/af.js +2 -2
  374. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ar.js +2 -2
  375. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/bg.js +2 -2
  376. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/bn.js +2 -2
  377. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/bs.js +2 -2
  378. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ca.js +2 -2
  379. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/cs.js +2 -2
  380. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/cy.js +2 -2
  381. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/da.js +2 -2
  382. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/de.js +2 -2
  383. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/el.js +2 -2
  384. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/en-au.js +2 -2
  385. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/en-ca.js +2 -2
  386. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/en-gb.js +2 -2
  387. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/en.js +2 -2
  388. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/eo.js +2 -2
  389. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/es.js +2 -2
  390. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/et.js +2 -2
  391. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/eu.js +2 -2
  392. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/fa.js +2 -2
  393. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/fi.js +2 -2
  394. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/fo.js +2 -2
  395. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/fr-ca.js +2 -2
  396. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/fr.js +2 -2
  397. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/gl.js +2 -2
  398. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/gu.js +2 -2
  399. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/he.js +2 -2
  400. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/hi.js +2 -2
  401. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/hr.js +2 -2
  402. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/hu.js +2 -2
  403. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/is.js +2 -2
  404. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/it.js +2 -2
  405. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ja.js +2 -2
  406. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ka.js +6 -0
  407. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/km.js +2 -2
  408. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ko.js +2 -2
  409. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/lt.js +2 -2
  410. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/lv.js +2 -2
  411. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/mn.js +2 -2
  412. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ms.js +2 -2
  413. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/nb.js +2 -2
  414. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/nl.js +2 -2
  415. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/no.js +2 -2
  416. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/pl.js +2 -2
  417. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/pt-br.js +2 -2
  418. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/pt.js +2 -2
  419. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ro.js +2 -2
  420. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/ru.js +2 -2
  421. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/sk.js +2 -2
  422. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/sl.js +2 -2
  423. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/sr-latn.js +2 -2
  424. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/sr.js +2 -2
  425. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/sv.js +2 -2
  426. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/th.js +2 -2
  427. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/tr.js +2 -2
  428. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/uk.js +2 -2
  429. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/vi.js +2 -2
  430. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/zh-cn.js +2 -2
  431. data/public/javascripts/extensions/ck_editor_filter/ckeditor/lang/zh.js +2 -2
  432. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +2 -2
  433. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/a11yhelp/lang/en.js +2 -2
  434. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/a11yhelp/lang/he.js +6 -0
  435. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/about/dialogs/about.js +2 -2
  436. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/adobeair/plugin.js +6 -0
  437. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/ajax/plugin.js +6 -0
  438. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/autogrow/plugin.js +6 -0
  439. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/bbcode/plugin.js +9 -0
  440. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/clipboard/dialogs/paste.js +3 -3
  441. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/colordialog/dialogs/colordialog.js +3 -2
  442. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/devtools/lang/en.js +6 -0
  443. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/devtools/plugin.js +6 -0
  444. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/dialog/dialogDefinition.js +1 -1
  445. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/div/dialogs/div.js +3 -2
  446. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/docprops/dialogs/docprops.js +10 -0
  447. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/docprops/plugin.js +6 -0
  448. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/find/dialogs/find.js +5 -5
  449. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/flash/dialogs/flash.js +5 -5
  450. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/button.js +2 -2
  451. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/checkbox.js +2 -2
  452. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/form.js +2 -2
  453. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/hiddenfield.js +2 -2
  454. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/radio.js +2 -2
  455. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/select.js +4 -4
  456. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/textarea.js +2 -2
  457. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/dialogs/textfield.js +2 -2
  458. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/forms/images/hiddenfield.gif +0 -0
  459. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/iframe/dialogs/iframe.js +7 -0
  460. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/iframe/images/placeholder.png +0 -0
  461. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/iframedialog/plugin.js +2 -2
  462. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/image/dialogs/image.js +9 -9
  463. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/link/dialogs/anchor.js +2 -2
  464. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/link/dialogs/link.js +7 -7
  465. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/liststyle/dialogs/liststyle.js +6 -0
  466. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/pastefromword/filter/default.js +7 -6
  467. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/pastetext/dialogs/pastetext.js +2 -2
  468. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/placeholder/dialogs/placeholder.js +6 -0
  469. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/placeholder/lang/en.js +6 -0
  470. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/placeholder/lang/he.js +6 -0
  471. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/placeholder/placeholder.gif +0 -0
  472. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/placeholder/plugin.js +6 -0
  473. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/radiantpreview/images/radiant-preview.png +0 -0
  474. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/scayt/dialogs/options.js +4 -4
  475. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/scayt/dialogs/toolbar.css +1 -1
  476. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_address.png +0 -0
  477. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_blockquote.png +0 -0
  478. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_div.png +0 -0
  479. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_h1.png +0 -0
  480. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_h2.png +0 -0
  481. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_h3.png +0 -0
  482. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_h4.png +0 -0
  483. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_h5.png +0 -0
  484. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_h6.png +0 -0
  485. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_p.png +0 -0
  486. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/showblocks/images/block_pre.png +0 -0
  487. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/smiley/dialogs/smiley.js +3 -3
  488. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/specialchar/dialogs/specialchar.js +3 -3
  489. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/specialchar/lang/en.js +6 -0
  490. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/{stylescombo → styles}/styles/default.js +2 -2
  491. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/stylesheetparser/plugin.js +6 -0
  492. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/table/dialogs/table.js +5 -5
  493. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/tableresize/plugin.js +7 -0
  494. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/tabletools/dialogs/tableCell.js +4 -4
  495. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/templates/dialogs/templates.js +3 -3
  496. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/templates/templates/default.js +2 -2
  497. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/uicolor/dialogs/uicolor.js +3 -3
  498. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/uicolor/lang/en.js +1 -1
  499. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/uicolor/lang/he.js +6 -0
  500. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/uicolor/plugin.js +2 -2
  501. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/uicolor/yui/assets/yui.css +2 -2
  502. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/uicolor/yui/yui.js +1 -1
  503. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/wsc/dialogs/ciframe.html +1 -1
  504. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/wsc/dialogs/tmpFrameset.html +1 -1
  505. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/wsc/dialogs/wsc.css +2 -2
  506. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/wsc/dialogs/wsc.js +3 -3
  507. data/public/javascripts/extensions/ck_editor_filter/ckeditor/plugins/xml/plugin.js +6 -0
  508. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/kama/dialog.css +5 -5
  509. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/kama/editor.css +9 -8
  510. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/kama/icons.png +0 -0
  511. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/kama/icons_rtl.png +0 -0
  512. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/kama/skin.js +3 -3
  513. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/kama/templates.css +2 -2
  514. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/office2003/dialog.css +5 -5
  515. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/office2003/editor.css +10 -9
  516. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/office2003/icons.png +0 -0
  517. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/office2003/icons_rtl.png +0 -0
  518. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/office2003/skin.js +2 -2
  519. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/office2003/templates.css +2 -2
  520. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/v2/dialog.css +5 -4
  521. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/v2/editor.css +9 -8
  522. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/v2/icons.png +0 -0
  523. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/v2/icons_rtl.png +0 -0
  524. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/v2/skin.js +2 -2
  525. data/public/javascripts/extensions/ck_editor_filter/ckeditor/skins/v2/templates.css +2 -2
  526. data/public/javascripts/extensions/ck_editor_filter/ckeditor/themes/default/theme.js +4 -4
  527. data/public/javascripts/extensions/ck_editor_filter/radiant.ckeditor.js +21 -12
  528. metadata +94 -9
  529. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/ajax.js +0 -143
  530. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/imagecacher.js +0 -58
  531. data/public/javascripts/extensions/ck_editor_filter/ckeditor/_source/core/xml.js +0 -165
@@ -1,5 +1,5 @@
1
1
  /*
2
- Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved.
2
+ Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
3
3
  For licensing, see LICENSE.html or http://ckeditor.com/license
4
4
  */
5
5
 
@@ -10,19 +10,19 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
10
10
 
11
11
  (function()
12
12
  {
13
- var commandName = 'scaytcheck',
14
- openPage = '',
15
- scayt_paused = null;
13
+ var commandName = 'scaytcheck',
14
+ openPage = '';
16
15
 
17
16
  // Checks if a value exists in an array
18
- function in_array(needle, haystack)
17
+ function in_array( needle, haystack )
19
18
  {
20
- var found = false, key;
21
- for (key in haystack)
19
+ var found = 0,
20
+ key;
21
+ for ( key in haystack )
22
22
  {
23
- if ((haystack[key] === needle) || ( haystack[key] == needle))
23
+ if ( haystack[ key ] == needle )
24
24
  {
25
- found = true;
25
+ found = 1;
26
26
  break;
27
27
  }
28
28
  }
@@ -35,28 +35,57 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
35
35
 
36
36
  var createInstance = function() // Create new instance every time Document is created.
37
37
  {
38
+ var config = editor.config;
38
39
  // Initialise Scayt instance.
39
40
  var oParams = {};
40
- oParams.srcNodeRef = editor.document.getWindow().$.frameElement; // Get the iframe.
41
+ // Get the iframe.
42
+ oParams.srcNodeRef = editor.document.getWindow().$.frameElement;
41
43
  // syntax : AppName.AppVersion@AppRevision
42
- oParams.assocApp = "CKEDITOR." + CKEDITOR.version + "@" + CKEDITOR.revision;
43
- oParams.customerid = editor.config.scayt_customerid || "1:WvF0D4-UtPqN1-43nkD4-NKvUm2-daQqk3-LmNiI-z7Ysb4-mwry24-T8YrS3-Q2tpq2";
44
- oParams.customDictionaryIds = editor.config.scayt_customDictionaryIds;
45
- oParams.userDictionaryName = editor.config.scayt_userDictionaryName;
46
- oParams.sLang = editor.config.scayt_sLang || "en_US";
44
+ oParams.assocApp = 'CKEDITOR.' + CKEDITOR.version + '@' + CKEDITOR.revision;
45
+ oParams.customerid = config.scayt_customerid || '1:WvF0D4-UtPqN1-43nkD4-NKvUm2-daQqk3-LmNiI-z7Ysb4-mwry24-T8YrS3-Q2tpq2';
46
+ oParams.customDictionaryIds = config.scayt_customDictionaryIds || '';
47
+ oParams.userDictionaryName = config.scayt_userDictionaryName || '';
48
+ oParams.sLang = config.scayt_sLang || 'en_US';
49
+
50
+ // Introduce SCAYT onLoad callback. (#5632)
51
+ oParams.onLoad = function()
52
+ {
53
+ // Draw down word marker to avoid being covered by background-color style.(#5466)
54
+ if ( !( CKEDITOR.env.ie && CKEDITOR.env.version < 8 ) )
55
+ this.addStyle( this.selectorCss(), 'padding-bottom: 2px !important;' );
56
+
57
+ // Call scayt_control.focus when SCAYT loaded
58
+ // and only if editor has focus and scayt control creates at first time (#5720)
59
+ if ( editor.focusManager.hasFocus && !plugin.isControlRestored( editor ) )
60
+ this.focus();
61
+
62
+ };
47
63
 
48
- if ( CKEDITOR._scaytParams )
64
+ oParams.onBeforeChange = function()
49
65
  {
50
- for ( var k in CKEDITOR._scaytParams )
51
- {
52
- oParams[ k ] = CKEDITOR._scaytParams[ k ];
53
- }
66
+ if ( plugin.getScayt( editor ) && !editor.checkDirty() )
67
+ setTimeout( function(){ editor.resetDirty(); }, 0 );
68
+ };
69
+
70
+ var scayt_custom_params = window.scayt_custom_params;
71
+ if ( typeof scayt_custom_params == 'object' )
72
+ {
73
+ for ( var k in scayt_custom_params )
74
+ oParams[ k ] = scayt_custom_params[ k ];
54
75
  }
76
+ // needs for restoring a specific scayt control settings
77
+ if ( plugin.getControlId( editor ) )
78
+ oParams.id = plugin.getControlId( editor );
55
79
 
56
80
  var scayt_control = new window.scayt( oParams );
57
81
 
82
+ scayt_control.afterMarkupRemove.push( function( node )
83
+ {
84
+ ( new CKEDITOR.dom.element( node, scayt_control.document ) ).mergeSiblings();
85
+ } );
86
+
58
87
  // Copy config.
59
- var lastInstance = plugin.instances[ editor.name ];
88
+ var lastInstance = plugin.instances[ editor.name ];
60
89
  if ( lastInstance )
61
90
  {
62
91
  scayt_control.sLang = lastInstance.sLang;
@@ -66,17 +95,8 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
66
95
 
67
96
  plugin.instances[ editor.name ] = scayt_control;
68
97
 
69
- //window.scayt.uiTags
70
- var menuGroup = 'scaytButton';
71
- var uiTabs = window.scayt.uiTags;
72
- var fTabs = [];
73
-
74
- for (var i = 0,l=4; i<l; i++)
75
- fTabs.push( uiTabs[i] && plugin.uiTabs[i] );
76
-
77
- plugin.uiTabs = fTabs;
78
98
  try {
79
- scayt_control.setDisabled( scayt_paused === false );
99
+ scayt_control.setDisabled( plugin.isPaused( editor ) === false );
80
100
  } catch (e) {}
81
101
 
82
102
  editor.fire( 'showScaytState' );
@@ -103,28 +123,57 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
103
123
 
104
124
  editor.on( 'beforeCommandExec', function( ev ) // Disable SCAYT before Source command execution.
105
125
  {
106
- if ( (ev.data.name == 'source' || ev.data.name == 'newpage') && editor.mode == 'wysiwyg' )
126
+ if ( ( ev.data.name == 'source' || ev.data.name == 'newpage' ) && editor.mode == 'wysiwyg' )
107
127
  {
108
- var scayt_instanse = plugin.getScayt( editor );
109
- if ( scayt_instanse )
128
+ var scayt_instance = plugin.getScayt( editor );
129
+ if ( scayt_instance )
110
130
  {
111
- scayt_paused = scayt_instanse.paused = !scayt_instanse.disabled;
112
- scayt_instanse.destroy();
131
+ plugin.setPaused( editor, !scayt_instance.disabled );
132
+ // store a control id for restore a specific scayt control settings
133
+ plugin.setControlId( editor, scayt_instance.id );
134
+ scayt_instance.destroy( true );
113
135
  delete plugin.instances[ editor.name ];
114
136
  }
115
137
  }
138
+ // Catch on source mode switch off (#5720)
139
+ else if ( ev.data.name == 'source' && editor.mode == 'source' )
140
+ plugin.markControlRestore( editor );
116
141
  });
117
142
 
143
+ editor.on( 'afterCommandExec', function( ev )
144
+ {
145
+ if ( !plugin.isScaytEnabled( editor ) )
146
+ return;
147
+
148
+ if ( editor.mode == 'wysiwyg' && ( ev.data.name == 'undo' || ev.data.name == 'redo' ) )
149
+ window.setTimeout( function() { plugin.getScayt( editor ).refresh(); }, 10 );
150
+ });
118
151
 
119
- editor.on( 'destroy', function()
152
+ editor.on( 'destroy', function( ev )
120
153
  {
121
- plugin.getScayt( editor ).destroy();
154
+ var editor = ev.editor,
155
+ scayt_instance = plugin.getScayt( editor );
156
+
157
+ // SCAYT instance might already get destroyed by mode switch (#5744).
158
+ if ( !scayt_instance )
159
+ return;
160
+
161
+ delete plugin.instances[ editor.name ];
162
+ // store a control id for restore a specific scayt control settings
163
+ plugin.setControlId( editor, scayt_instance.id );
164
+ scayt_instance.destroy( true );
122
165
  });
166
+
123
167
  // Listen to data manipulation to reflect scayt markup.
124
168
  editor.on( 'afterSetData', function()
125
169
  {
126
- if ( plugin.isScaytEnabled( editor ) )
127
- plugin.getScayt( editor ).refresh();
170
+ if ( plugin.isScaytEnabled( editor ) ) {
171
+ window.setTimeout( function()
172
+ {
173
+ var instance = plugin.getScayt( editor );
174
+ instance && instance.refresh();
175
+ }, 10 );
176
+ }
128
177
  });
129
178
 
130
179
  // Reload spell-checking for current word after insertion completed.
@@ -138,17 +187,17 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
138
187
  if ( CKEDITOR.env.ie )
139
188
  editor.getSelection().unlock( true );
140
189
 
141
- // Swallow any SCAYT engine errors.
142
- try{
190
+ // Return focus to the editor and refresh SCAYT markup (#5573).
191
+ window.setTimeout( function()
192
+ {
193
+ scayt_instance.focus();
143
194
  scayt_instance.refresh();
144
- }catch( er )
145
- {}
195
+ }, 10 );
146
196
  }
147
197
  }, this, null, 50 );
148
198
 
149
199
  editor.on( 'insertHtml', function()
150
200
  {
151
-
152
201
  var scayt_instance = plugin.getScayt( editor );
153
202
  if ( plugin.isScaytEnabled( editor ) )
154
203
  {
@@ -157,11 +206,13 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
157
206
  if ( CKEDITOR.env.ie )
158
207
  editor.getSelection().unlock( true );
159
208
 
160
- // Swallow any SCAYT engine errors.
161
- try{
209
+ // Return focus to the editor (#5573)
210
+ // Refresh SCAYT markup
211
+ window.setTimeout( function()
212
+ {
213
+ scayt_instance.focus();
162
214
  scayt_instance.refresh();
163
- }catch( er )
164
- {}
215
+ }, 10 );
165
216
  }
166
217
  }, this, null, 50 );
167
218
 
@@ -175,6 +226,7 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
175
226
 
176
227
  var dataProcessor = editor.dataProcessor,
177
228
  htmlFilter = dataProcessor && dataProcessor.htmlFilter;
229
+
178
230
  if ( htmlFilter )
179
231
  {
180
232
  htmlFilter.addRules(
@@ -183,7 +235,8 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
183
235
  {
184
236
  span : function( element )
185
237
  {
186
- if ( element.attributes.scayt_word && element.attributes.scaytid )
238
+ if ( element.attributes[ 'data-scayt_word' ]
239
+ && element.attributes[ 'data-scaytid' ] )
187
240
  {
188
241
  delete element.name; // Write children, but don't write this node.
189
242
  return element;
@@ -194,14 +247,92 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
194
247
  );
195
248
  }
196
249
 
250
+ // Override Image.equals method avoid CK snapshot module to add SCAYT markup to snapshots. (#5546)
251
+ var undoImagePrototype = CKEDITOR.plugins.undo.Image.prototype;
252
+ undoImagePrototype.equals = CKEDITOR.tools.override( undoImagePrototype.equals, function( org )
253
+ {
254
+ return function( otherImage )
255
+ {
256
+ var thisContents = this.contents,
257
+ otherContents = otherImage.contents;
258
+ var scayt_instance = plugin.getScayt( this.editor );
259
+ // Making the comparison based on content without SCAYT word markers.
260
+ if ( scayt_instance && plugin.isScaytReady( this.editor ) )
261
+ {
262
+ // scayt::reset might return value undefined. (#5742)
263
+ this.contents = scayt_instance.reset( thisContents ) || '';
264
+ otherImage.contents = scayt_instance.reset( otherContents ) || '';
265
+ }
266
+
267
+ var retval = org.apply( this, arguments );
268
+
269
+ this.contents = thisContents;
270
+ otherImage.contents = otherContents;
271
+ return retval;
272
+ };
273
+ });
274
+
197
275
  if ( editor.document )
198
276
  createInstance();
199
277
  };
200
278
 
201
- CKEDITOR.plugins.scayt =
279
+ CKEDITOR.plugins.scayt =
202
280
  {
203
281
  engineLoaded : false,
204
282
  instances : {},
283
+ // Data storage for SCAYT control, based on editor instances
284
+ controlInfo : {},
285
+ setControlInfo : function( editor, o )
286
+ {
287
+ if ( editor && editor.name && typeof ( this.controlInfo[ editor.name ] ) != 'object' )
288
+ this.controlInfo[ editor.name ] = {};
289
+
290
+ for ( var infoOpt in o )
291
+ this.controlInfo[ editor.name ][ infoOpt ] = o[ infoOpt ];
292
+ },
293
+ isControlRestored : function( editor )
294
+ {
295
+ if ( editor &&
296
+ editor.name &&
297
+ this.controlInfo[ editor.name ] )
298
+ {
299
+ return this.controlInfo[ editor.name ].restored ;
300
+ }
301
+ return false;
302
+ },
303
+ markControlRestore : function( editor )
304
+ {
305
+ this.setControlInfo( editor, { restored:true } );
306
+ },
307
+ setControlId: function( editor, id )
308
+ {
309
+ this.setControlInfo( editor, { id:id } );
310
+ },
311
+ getControlId: function( editor )
312
+ {
313
+ if ( editor &&
314
+ editor.name &&
315
+ this.controlInfo[ editor.name ] &&
316
+ this.controlInfo[ editor.name ].id )
317
+ {
318
+ return this.controlInfo[ editor.name ].id;
319
+ }
320
+ return null;
321
+ },
322
+ setPaused: function( editor , bool )
323
+ {
324
+ this.setControlInfo( editor, { paused:bool } );
325
+ },
326
+ isPaused: function( editor )
327
+ {
328
+ if ( editor &&
329
+ editor.name &&
330
+ this.controlInfo[editor.name] )
331
+ {
332
+ return this.controlInfo[editor.name].paused;
333
+ }
334
+ return undefined;
335
+ },
205
336
  getScayt : function( editor )
206
337
  {
207
338
  return this.instances[ editor.name ];
@@ -213,15 +344,39 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
213
344
  },
214
345
  isScaytEnabled : function( editor )
215
346
  {
216
- var scayt_instanse = this.getScayt( editor );
217
- return ( scayt_instanse ) ? scayt_instanse.disabled === false : false;
347
+ var scayt_instance = this.getScayt( editor );
348
+ return ( scayt_instance ) ? scayt_instance.disabled === false : false;
349
+ },
350
+ getUiTabs : function( editor )
351
+ {
352
+ var uiTabs = [];
353
+
354
+ // read UI tabs value from config
355
+ var configUiTabs = editor.config.scayt_uiTabs || "1,1,1";
356
+
357
+ // convert string to array
358
+ configUiTabs = configUiTabs.split( ',' );
359
+
360
+ // "About us" should be always shown for standard config
361
+ configUiTabs[3] = "1";
362
+
363
+ for ( var i = 0; i < 4; i++ ) {
364
+ uiTabs[i] = (typeof window.scayt != "undefined" && typeof window.scayt.uiTags != "undefined")
365
+ ? (parseInt(configUiTabs[i],10) && window.scayt.uiTags[i])
366
+ : parseInt(configUiTabs[i],10);
367
+ }
368
+ return uiTabs;
218
369
  },
219
370
  loadEngine : function( editor )
220
371
  {
372
+ // SCAYT doesn't work with Firefox2, Opera and AIR.
373
+ if ( CKEDITOR.env.gecko && CKEDITOR.env.version < 10900 || CKEDITOR.env.opera || CKEDITOR.env.air )
374
+ return editor.fire( 'showScaytState' );
375
+
221
376
  if ( this.engineLoaded === true )
222
377
  return onEngineLoad.apply( editor ); // Add new instance.
223
378
  else if ( this.engineLoaded == -1 ) // We are waiting.
224
- return CKEDITOR.on( 'scaytReady', function(){ onEngineLoad.apply( editor );} ); // Use function(){} to avoid rejection as duplicate.
379
+ return CKEDITOR.on( 'scaytReady', function(){ onEngineLoad.apply( editor ); } ); // Use function(){} to avoid rejection as duplicate.
225
380
 
226
381
  CKEDITOR.on( 'scaytReady', onEngineLoad, editor );
227
382
  CKEDITOR.on( 'scaytReady', function()
@@ -230,7 +385,8 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
230
385
  },
231
386
  this,
232
387
  null,
233
- 0 ); // First to run.
388
+ 0
389
+ ); // First to run.
234
390
 
235
391
  this.engineLoaded = -1; // Loading in progress.
236
392
 
@@ -238,34 +394,40 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
238
394
  var protocol = document.location.protocol;
239
395
  // Default to 'http' for unknown.
240
396
  protocol = protocol.search( /https?:/) != -1? protocol : 'http:';
241
- var baseUrl = "svc.spellchecker.net/spellcheck3/lf/scayt/scayt21.js";
397
+ var baseUrl = 'svc.spellchecker.net/scayt26/loader__base.js';
242
398
 
243
- var scaytUrl = editor.config.scayt_srcUrl || ( protocol + "//" + baseUrl );
244
- var scaytConfigBaseUrl = plugin.parseUrl( scaytUrl ).path + "/";
399
+ var scaytUrl = editor.config.scayt_srcUrl || ( protocol + '//' + baseUrl );
400
+ var scaytConfigBaseUrl = plugin.parseUrl( scaytUrl ).path + '/';
245
401
 
246
- CKEDITOR._djScaytConfig =
402
+ if( window.scayt == undefined )
247
403
  {
248
- baseUrl: scaytConfigBaseUrl,
249
- addOnLoad:
250
- [
251
- function()
252
- {
253
- CKEDITOR.fireOnce( "scaytReady" );
254
- }
255
- ],
256
- isDebug: false
257
- };
258
- // Append javascript code.
259
- CKEDITOR.document.getHead().append(
260
- CKEDITOR.document.createElement( 'script',
261
- {
262
- attributes :
263
- {
264
- type : 'text/javascript',
265
- src : scaytUrl
266
- }
267
- })
268
- );
404
+ CKEDITOR._djScaytConfig =
405
+ {
406
+ baseUrl: scaytConfigBaseUrl,
407
+ addOnLoad:
408
+ [
409
+ function()
410
+ {
411
+ CKEDITOR.fireOnce( 'scaytReady' );
412
+ }
413
+ ],
414
+ isDebug: false
415
+ };
416
+ // Append javascript code.
417
+ CKEDITOR.document.getHead().append(
418
+ CKEDITOR.document.createElement( 'script',
419
+ {
420
+ attributes :
421
+ {
422
+ type : 'text/javascript',
423
+ async : 'true',
424
+ src : scaytUrl
425
+ }
426
+ })
427
+ );
428
+ }
429
+ else
430
+ CKEDITOR.fireOnce( 'scaytReady' );
269
431
 
270
432
  return null;
271
433
  },
@@ -300,6 +462,7 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
300
462
  {
301
463
  preserveState : true,
302
464
  editorFocus : false,
465
+ canUndo : false,
303
466
 
304
467
  exec: function( editor )
305
468
  {
@@ -310,19 +473,18 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
310
473
  this.setState( isEnabled ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_ON );
311
474
 
312
475
  var scayt_control = plugin.getScayt( editor );
476
+ // the place where the status of editor focus should be restored
477
+ // after there will be ability to store its state before SCAYT button click
478
+ // if (storedFocusState is focused )
479
+ // scayt_control.focus();
480
+ //
481
+ // now focus is set certainly
482
+ scayt_control.focus();
313
483
  scayt_control.setDisabled( isEnabled );
314
484
  }
315
485
  else if ( !editor.config.scayt_autoStartup && plugin.engineLoaded >= 0 ) // Load first time
316
486
  {
317
487
  this.setState( CKEDITOR.TRISTATE_DISABLED );
318
-
319
- editor.on( 'showScaytState', function()
320
- {
321
- this.removeListener();
322
- this.setState( plugin.isScaytEnabled( editor ) ? CKEDITOR.TRISTATE_ON : CKEDITOR.TRISTATE_OFF );
323
- },
324
- this);
325
-
326
488
  plugin.loadEngine( editor );
327
489
  }
328
490
  }
@@ -335,48 +497,70 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
335
497
 
336
498
  beforeInit : function( editor )
337
499
  {
338
- // Register own rbc menu group.
339
- editor.config.menu_groups = 'scayt_suggest,scayt_moresuggest,scayt_control,' + editor.config.menu_groups;
500
+ var items_order = editor.config.scayt_contextMenuItemsOrder
501
+ || 'suggest|moresuggest|control',
502
+ items_order_str = "";
503
+
504
+ items_order = items_order.split( '|' );
505
+
506
+ if ( items_order && items_order.length )
507
+ {
508
+ for ( var pos = 0 ; pos < items_order.length ; pos++ )
509
+ items_order_str += 'scayt_' + items_order[ pos ] + ( items_order.length != parseInt( pos, 10 ) + 1 ? ',' : '' );
510
+ }
511
+
512
+ // Put it on top of all context menu items (#5717)
513
+ editor.config.menu_groups = items_order_str + ',' + editor.config.menu_groups;
340
514
  },
341
515
 
342
516
  init : function( editor )
343
517
  {
344
- var moreSuggestions = {};
345
- var mainSuggestions = {};
518
+ // Delete span[data-scaytid] when text pasting in editor (#6921)
519
+ var dataFilter = editor.dataProcessor && editor.dataProcessor.dataFilter;
520
+ var dataFilterRules =
521
+ {
522
+ elements :
523
+ {
524
+ span : function( element )
525
+ {
526
+ var attrs = element.attributes;
527
+ if ( attrs && attrs[ 'data-scaytid' ] )
528
+ delete element.name;
529
+ }
530
+ }
531
+ };
532
+ dataFilter && dataFilter.addRules( dataFilterRules );
533
+
534
+ var moreSuggestions = {},
535
+ mainSuggestions = {};
346
536
 
347
537
  // Scayt command.
348
538
  var command = editor.addCommand( commandName, commandDefinition );
349
539
 
350
540
  // Add Options dialog.
351
541
  CKEDITOR.dialog.add( commandName, CKEDITOR.getUrl( this.path + 'dialogs/options.js' ) );
352
- // read ui tags
353
- var confuiTabs = editor.config.scayt_uiTabs || "1,1,1";
354
- var uiTabs =[];
355
- // string tp array convert
356
- confuiTabs = confuiTabs.split(",");
357
- // check array length ! allwaays must be 3 filled with 1 or 0
358
- for (var i=0,l=3; i<l; i++){
359
- var flag = parseInt(confuiTabs[i] || "1" ,10);
360
- uiTabs.push( flag );
361
- }
542
+
543
+ var uiTabs = plugin.getUiTabs( editor );
362
544
 
363
545
  var menuGroup = 'scaytButton';
364
546
  editor.addMenuGroup( menuGroup );
365
547
  // combine menu items to render
366
- var uiMuneItems = {};
548
+ var uiMenuItems = {};
549
+
550
+ var lang = editor.lang.scayt;
367
551
 
368
- // allways added
369
- uiMuneItems.scaytToggle =
552
+ // always added
553
+ uiMenuItems.scaytToggle =
370
554
  {
371
- label : editor.lang.scayt.enable,
555
+ label : lang.enable,
372
556
  command : commandName,
373
557
  group : menuGroup
374
558
  };
375
559
 
376
- if (uiTabs[0] == 1)
377
- uiMuneItems.scaytOptions =
560
+ if ( uiTabs[0] == 1 )
561
+ uiMenuItems.scaytOptions =
378
562
  {
379
- label : editor.lang.scayt.options,
563
+ label : lang.options,
380
564
  group : menuGroup,
381
565
  onClick : function()
382
566
  {
@@ -385,10 +569,10 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
385
569
  }
386
570
  };
387
571
 
388
- if (uiTabs[1] == 1)
389
- uiMuneItems.scaytLangs =
572
+ if ( uiTabs[1] == 1 )
573
+ uiMenuItems.scaytLangs =
390
574
  {
391
- label : editor.lang.scayt.langs,
575
+ label : lang.langs,
392
576
  group : menuGroup,
393
577
  onClick : function()
394
578
  {
@@ -396,10 +580,10 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
396
580
  editor.openDialog( commandName );
397
581
  }
398
582
  };
399
- if (uiTabs[2] == 1)
400
- uiMuneItems.scaytDict =
583
+ if ( uiTabs[2] == 1 )
584
+ uiMenuItems.scaytDict =
401
585
  {
402
- label : editor.lang.scayt.dictionariesTab,
586
+ label : lang.dictionariesTab,
403
587
  group : menuGroup,
404
588
  onClick : function()
405
589
  {
@@ -407,8 +591,8 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
407
591
  editor.openDialog( commandName );
408
592
  }
409
593
  };
410
- // allways added
411
- uiMuneItems.scaytAbout =
594
+ // always added
595
+ uiMenuItems.scaytAbout =
412
596
  {
413
597
  label : editor.lang.scayt.about,
414
598
  group : menuGroup,
@@ -417,19 +601,16 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
417
601
  openPage = 'about';
418
602
  editor.openDialog( commandName );
419
603
  }
420
- }
421
- ;
422
-
423
- uiTabs[3] = 1; // about us tab is allways on
424
- plugin.uiTabs = uiTabs;
604
+ };
425
605
 
426
- editor.addMenuItems( uiMuneItems );
606
+ editor.addMenuItems( uiMenuItems );
427
607
 
428
608
  editor.ui.add( 'Scayt', CKEDITOR.UI_MENUBUTTON,
429
609
  {
430
- label : editor.lang.scayt.title,
431
- title : editor.lang.scayt.title,
610
+ label : lang.title,
611
+ title : CKEDITOR.env.opera ? lang.opera_title : lang.title,
432
612
  className : 'cke_button_scayt',
613
+ modes : { wysiwyg : 1 },
433
614
  onRender: function()
434
615
  {
435
616
  command.on( 'state', function()
@@ -442,14 +623,16 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
442
623
  {
443
624
  var isEnabled = plugin.isScaytEnabled( editor );
444
625
 
445
- editor.getMenuItem( 'scaytToggle' ).label = editor.lang.scayt[ isEnabled ? 'disable' : 'enable' ];
626
+ editor.getMenuItem( 'scaytToggle' ).label = lang[ isEnabled ? 'disable' : 'enable' ];
627
+
628
+ var uiTabs = plugin.getUiTabs( editor );
446
629
 
447
630
  return {
448
631
  scaytToggle : CKEDITOR.TRISTATE_OFF,
449
- scaytOptions : isEnabled && plugin.uiTabs[0] ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED,
450
- scaytLangs : isEnabled && plugin.uiTabs[1] ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED,
451
- scaytDict : isEnabled && plugin.uiTabs[2] ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED,
452
- scaytAbout : isEnabled && plugin.uiTabs[3] ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED
632
+ scaytOptions : isEnabled && uiTabs[0] ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED,
633
+ scaytLangs : isEnabled && uiTabs[1] ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED,
634
+ scaytDict : isEnabled && uiTabs[2] ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED,
635
+ scaytAbout : isEnabled && uiTabs[3] ? CKEDITOR.TRISTATE_OFF : CKEDITOR.TRISTATE_DISABLED
453
636
  };
454
637
  }
455
638
  });
@@ -457,13 +640,19 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
457
640
  // If the "contextmenu" plugin is loaded, register the listeners.
458
641
  if ( editor.contextMenu && editor.addMenuItems )
459
642
  {
460
- editor.contextMenu.addListener( function( element )
643
+ editor.contextMenu.addListener( function( element, selection )
461
644
  {
462
- if ( !( plugin.isScaytEnabled( editor ) && element ) )
645
+ if ( !plugin.isScaytEnabled( editor )
646
+ || selection.getRanges()[ 0 ].checkReadOnly() )
463
647
  return null;
464
648
 
465
649
  var scayt_control = plugin.getScayt( editor ),
466
- word = scayt_control.getWord( element.$ );
650
+ node = scayt_control.getScaytNode();
651
+
652
+ if ( !node )
653
+ return null;
654
+
655
+ var word = scayt_control.getWord( node );
467
656
 
468
657
  if ( !word )
469
658
  return null;
@@ -471,31 +660,31 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
471
660
  var sLang = scayt_control.getLang(),
472
661
  _r = {},
473
662
  items_suggestion = window.scayt.getSuggestion( word, sLang );
474
- if (!items_suggestion || !items_suggestion.length )
663
+ if ( !items_suggestion || !items_suggestion.length )
475
664
  return null;
476
665
  // Remove unused commands and menuitems
477
- for ( i in moreSuggestions )
666
+ for ( var m in moreSuggestions )
478
667
  {
479
- delete editor._.menuItems[ i ];
480
- delete editor._.commands[ i ];
668
+ delete editor._.menuItems[ m ];
669
+ delete editor._.commands[ m ];
481
670
  }
482
- for ( i in mainSuggestions )
671
+ for ( m in mainSuggestions )
483
672
  {
484
- delete editor._.menuItems[ i ];
485
- delete editor._.commands[ i ];
673
+ delete editor._.menuItems[ m ];
674
+ delete editor._.commands[ m ];
486
675
  }
487
676
  moreSuggestions = {}; // Reset items.
488
677
  mainSuggestions = {};
489
678
 
490
- var moreSuggestionsUnable = editor.config.scayt_moreSuggestions || "on";
679
+ var moreSuggestionsUnable = editor.config.scayt_moreSuggestions || 'on';
491
680
  var moreSuggestionsUnableAdded = false;
492
681
 
493
682
  var maxSuggestions = editor.config.scayt_maxSuggestions;
494
683
  ( typeof maxSuggestions != 'number' ) && ( maxSuggestions = 5 );
495
684
  !maxSuggestions && ( maxSuggestions = items_suggestion.length );
496
685
 
497
- var contextCommands = editor.config.scayt_contextCommands || "all";
498
- contextCommands = contextCommands.split("|");
686
+ var contextCommands = editor.config.scayt_contextCommands || 'all';
687
+ contextCommands = contextCommands.split( '|' );
499
688
 
500
689
  for ( var i = 0, l = items_suggestion.length; i < l; i += 1 )
501
690
  {
@@ -505,10 +694,10 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
505
694
  return {
506
695
  exec: function()
507
696
  {
508
- scayt_control.replace(el, s);
697
+ scayt_control.replace( el, s );
509
698
  }
510
699
  };
511
- })( element.$, items_suggestion[i] );
700
+ })( node, items_suggestion[i] );
512
701
 
513
702
  if ( i < maxSuggestions )
514
703
  {
@@ -517,7 +706,7 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
517
706
  _r[ commandName ] = CKEDITOR.TRISTATE_OFF;
518
707
  mainSuggestions[ commandName ] = CKEDITOR.TRISTATE_OFF;
519
708
  }
520
- else if ( moreSuggestionsUnable == "on" )
709
+ else if ( moreSuggestionsUnable == 'on' )
521
710
  {
522
711
  addButtonCommand( editor, 'button_' + commandName, items_suggestion[i],
523
712
  commandName, exec, 'scayt_moresuggest', i + 1 );
@@ -526,11 +715,12 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
526
715
  }
527
716
  }
528
717
 
529
- if ( moreSuggestionsUnableAdded ){
530
- // Rgister the More suggestions group;
718
+ if ( moreSuggestionsUnableAdded )
719
+ {
720
+ // Register the More suggestions group;
531
721
  editor.addMenuItem( 'scayt_moresuggest',
532
722
  {
533
- label : editor.lang.scayt.moreSuggestions,
723
+ label : lang.moreSuggestions,
534
724
  group : 'scayt_moresuggest',
535
725
  order : 10,
536
726
  getItems : function()
@@ -539,39 +729,38 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
539
729
  }
540
730
  });
541
731
  mainSuggestions[ 'scayt_moresuggest' ] = CKEDITOR.TRISTATE_OFF;
542
-
543
732
  }
544
733
 
545
- if ( in_array( "all",contextCommands ) || in_array("ignore",contextCommands) )
734
+ if ( in_array( 'all', contextCommands ) || in_array( 'ignore', contextCommands) )
546
735
  {
547
736
  var ignore_command = {
548
737
  exec: function(){
549
- scayt_control.ignore(element.$);
738
+ scayt_control.ignore( node );
550
739
  }
551
740
  };
552
- addButtonCommand(editor, 'ignore', editor.lang.scayt.ignore, 'scayt_ignore', ignore_command, 'scayt_control', 1);
553
- mainSuggestions['scayt_ignore'] = CKEDITOR.TRISTATE_OFF;
741
+ addButtonCommand( editor, 'ignore', lang.ignore, 'scayt_ignore', ignore_command, 'scayt_control', 1 );
742
+ mainSuggestions[ 'scayt_ignore' ] = CKEDITOR.TRISTATE_OFF;
554
743
  }
555
744
 
556
- if ( in_array( "all",contextCommands ) || in_array("ignoreall",contextCommands) )
745
+ if ( in_array( 'all', contextCommands ) || in_array( 'ignoreall', contextCommands ) )
557
746
  {
558
747
  var ignore_all_command = {
559
748
  exec: function(){
560
- scayt_control.ignoreAll(element.$);
749
+ scayt_control.ignoreAll( node );
561
750
  }
562
751
  };
563
- addButtonCommand(editor, 'ignore_all', editor.lang.scayt.ignoreAll, 'scayt_ignore_all', ignore_all_command, 'scayt_control', 2);
752
+ addButtonCommand(editor, 'ignore_all', lang.ignoreAll, 'scayt_ignore_all', ignore_all_command, 'scayt_control', 2);
564
753
  mainSuggestions['scayt_ignore_all'] = CKEDITOR.TRISTATE_OFF;
565
754
  }
566
755
 
567
- if ( in_array( "all",contextCommands ) || in_array("add",contextCommands) )
756
+ if ( in_array( 'all', contextCommands ) || in_array( 'add', contextCommands ) )
568
757
  {
569
758
  var addword_command = {
570
759
  exec: function(){
571
- window.scayt.addWordToUserDictionary(element.$);
760
+ window.scayt.addWordToUserDictionary( node );
572
761
  }
573
762
  };
574
- addButtonCommand(editor, 'add_word', editor.lang.scayt.addWord, 'scayt_add_word', addword_command, 'scayt_control', 3);
763
+ addButtonCommand(editor, 'add_word', lang.addWord, 'scayt_add_word', addword_command, 'scayt_control', 3);
575
764
  mainSuggestions['scayt_add_word'] = CKEDITOR.TRISTATE_OFF;
576
765
  }
577
766
 
@@ -582,22 +771,194 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
582
771
  });
583
772
  }
584
773
 
585
- // Start plugin
586
- if ( editor.config.scayt_autoStartup )
587
- {
588
- var showInitialState = function()
774
+ var showInitialState = function()
589
775
  {
590
776
  editor.removeListener( 'showScaytState', showInitialState );
591
- command.setState( plugin.isScaytEnabled( editor ) ? CKEDITOR.TRISTATE_ON : CKEDITOR.TRISTATE_OFF );
777
+
778
+ if ( !CKEDITOR.env.opera && !CKEDITOR.env.air )
779
+ command.setState( plugin.isScaytEnabled( editor ) ? CKEDITOR.TRISTATE_ON : CKEDITOR.TRISTATE_OFF );
780
+ else
781
+ command.setState( CKEDITOR.TRISTATE_DISABLED );
592
782
  };
593
- editor.on( 'showScaytState', showInitialState );
594
783
 
595
- plugin.loadEngine( editor );
784
+ editor.on( 'showScaytState', showInitialState );
785
+
786
+ if ( CKEDITOR.env.opera || CKEDITOR.env.air )
787
+ {
788
+ editor.on( 'instanceReady', function()
789
+ {
790
+ showInitialState();
791
+ });
792
+ }
793
+
794
+ // Start plugin
795
+ if ( editor.config.scayt_autoStartup )
796
+ {
797
+ editor.on( 'instanceReady', function()
798
+ {
799
+ plugin.loadEngine( editor );
800
+ });
596
801
  }
802
+ },
803
+
804
+ afterInit : function( editor )
805
+ {
806
+ // Prevent word marker line from displaying in elements path and been removed when cleaning format. (#3570) (#4125)
807
+ var elementsPathFilters,
808
+ scaytFilter = function( element )
809
+ {
810
+ if ( element.hasAttribute( 'data-scaytid' ) )
811
+ return false;
812
+ };
813
+
814
+ if ( editor._.elementsPath && ( elementsPathFilters = editor._.elementsPath.filters ) )
815
+ elementsPathFilters.push( scaytFilter );
816
+
817
+ editor.addRemoveFormatFilter && editor.addRemoveFormatFilter( scaytFilter );
818
+
597
819
  }
598
820
  });
599
821
  })();
600
822
 
601
- // TODO: Documentation
602
- // CKEDITOR.config.scayt_maxSuggestions
603
- // CKEDITOR.config.scayt_autoStartup
823
+ /**
824
+ * If enabled (true), turns on SCAYT automatically after loading the editor.
825
+ * @name CKEDITOR.config.scayt_autoStartup
826
+ * @type Boolean
827
+ * @default false
828
+ * @example
829
+ * config.scayt_autoStartup = true;
830
+ */
831
+
832
+ /**
833
+ * Defines the number of SCAYT suggestions to show in the main context menu.
834
+ * The possible values are:
835
+ * <ul>
836
+ * <li>0 (zero): All suggestions are displayed in the main context menu.</li>
837
+ * <li>Positive number: The maximum number of suggestions to shown in context
838
+ * menu. Other entries will be shown in "More Suggestions" sub-menu.</li>
839
+ * <li>Negative number: No suggestions are shown in the main context menu. All
840
+ * entries will be listed in the "Suggestions" sub-menu.</li>
841
+ * </ul>
842
+ * @name CKEDITOR.config.scayt_maxSuggestions
843
+ * @type Number
844
+ * @default 5
845
+ * @example
846
+ * // Display only three suggestions in the main context menu.
847
+ * config.scayt_maxSuggestions = 3;
848
+ * @example
849
+ * // Do not show the suggestions directly.
850
+ * config.scayt_maxSuggestions = -1;
851
+ */
852
+
853
+ /**
854
+ * Sets the customer ID for SCAYT. Required for migration from free version
855
+ * with banner to paid version.
856
+ * @name CKEDITOR.config.scayt_customerid
857
+ * @type String
858
+ * @default ''
859
+ * @example
860
+ * // Load SCAYT using my customer ID.
861
+ * config.scayt_customerid = 'your-encrypted-customer-id';
862
+ */
863
+
864
+ /**
865
+ * Enables/disables the "More Suggestions" sub-menu in the context menu.
866
+ * The possible values are "on" or "off".
867
+ * @name CKEDITOR.config.scayt_moreSuggestions
868
+ * @type String
869
+ * @default 'on'
870
+ * @example
871
+ * // Disables the "More Suggestions" sub-menu.
872
+ * config.scayt_moreSuggestions = 'off';
873
+ */
874
+
875
+ /**
876
+ * Customizes the display of SCAYT context menu commands ("Add Word", "Ignore"
877
+ * and "Ignore All"). It must be a string with one or more of the following
878
+ * words separated by a pipe ("|"):
879
+ * <ul>
880
+ * <li>"off": disables all options.</li>
881
+ * <li>"all": enables all options.</li>
882
+ * <li>"ignore": enables the "Ignore" option.</li>
883
+ * <li>"ignoreall": enables the "Ignore All" option.</li>
884
+ * <li>"add": enables the "Add Word" option.</li>
885
+ * </ul>
886
+ * @name CKEDITOR.config.scayt_contextCommands
887
+ * @type String
888
+ * @default 'all'
889
+ * @example
890
+ * // Show only "Add Word" and "Ignore All" in the context menu.
891
+ * config.scayt_contextCommands = 'add|ignoreall';
892
+ */
893
+
894
+ /**
895
+ * Sets the default spellchecking language for SCAYT.
896
+ * @name CKEDITOR.config.scayt_sLang
897
+ * @type String
898
+ * @default 'en_US'
899
+ * @example
900
+ * // Sets SCAYT to German.
901
+ * config.scayt_sLang = 'de_DE';
902
+ */
903
+
904
+ /**
905
+ * Sets the visibility of the SCAYT tabs in the settings dialog and toolbar
906
+ * button. The value must contain a "1" (enabled) or "0" (disabled) number for
907
+ * each of the following entries, in this precise order, separated by a
908
+ * comma (","): "Options", "Languages" and "Dictionary".
909
+ * @name CKEDITOR.config.scayt_uiTabs
910
+ * @type String
911
+ * @default '1,1,1'
912
+ * @example
913
+ * // Hide the "Languages" tab.
914
+ * config.scayt_uiTabs = '1,0,1';
915
+ */
916
+
917
+
918
+ /**
919
+ * Set the URL to SCAYT core. Required to switch to licensed version of SCAYT application.
920
+ * Further details at http://wiki.spellchecker.net/doku.php?id=3rd:wysiwyg:fckeditor:wscckf3l .
921
+ * @name CKEDITOR.config.scayt_srcUrl
922
+ * @type String
923
+ * @default ''
924
+ * @example
925
+ * config.scayt_srcUrl = "http://my-host/spellcheck/lf/scayt/scayt.js";
926
+ */
927
+
928
+ /**
929
+ * Links SCAYT to custom dictionaries. It's a string containing dictionary ids
930
+ * separared by commas (","). Available only for licensed version.
931
+ * Further details at http://wiki.spellchecker.net/doku.php?id=custom_dictionary_support .
932
+ * @name CKEDITOR.config.scayt_customDictionaryIds
933
+ * @type String
934
+ * @default ''
935
+ * @example
936
+ * config.scayt_customDictionaryIds = '3021,3456,3478"';
937
+ */
938
+
939
+ /**
940
+ * Makes it possible to activate a custom dictionary on SCAYT. The user
941
+ * dictionary name must be used. Available only for licensed version.
942
+ * @name CKEDITOR.config.scayt_userDictionaryName
943
+ * @type String
944
+ * @default ''
945
+ * @example
946
+ * config.scayt_userDictionaryName = 'MyDictionary';
947
+ */
948
+
949
+ /**
950
+ * Define order of placing of SCAYT context menu items by groups.
951
+ * It must be a string with one or more of the following
952
+ * words separated by a pipe ("|"):
953
+ * <ul>
954
+ * <li>'suggest' - main suggestion word list,</li>
955
+ * <li>'moresuggest' - more suggestions word list,</li>
956
+ * <li>'control' - SCAYT commands, such as 'Ignore' and 'Add Word'</li>
957
+ * </ul>
958
+ *
959
+ * @name CKEDITOR.config.scayt_contextMenuItemsOrder
960
+ * @type String
961
+ * @default 'suggest|moresuggest|control'
962
+ * @example
963
+ * config.scayt_contextMenuItemsOrder = 'moresuggest|control|suggest';
964
+ */