ckeditor-rails 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (347) hide show
  1. data/README.md +10 -4
  2. data/ckeditor-rails.gemspec +1 -1
  3. data/lib/ckeditor-rails/version.rb +1 -1
  4. data/vendor/assets/ckeditor/ckeditor/INSTALL.html +92 -92
  5. data/vendor/assets/ckeditor/ckeditor/_samples/adobeair/application.xml +32 -32
  6. data/vendor/assets/ckeditor/ckeditor/_samples/adobeair/run.bat +9 -9
  7. data/vendor/assets/ckeditor/ckeditor/_samples/adobeair/sample.html +45 -45
  8. data/vendor/assets/ckeditor/ckeditor/_samples/ajax.html +98 -98
  9. data/vendor/assets/ckeditor/ckeditor/_samples/api.html +192 -192
  10. data/vendor/assets/ckeditor/ckeditor/_samples/api_dialog.html +198 -198
  11. data/vendor/assets/ckeditor/ckeditor/_samples/api_dialog/my_dialog.js +28 -28
  12. data/vendor/assets/ckeditor/ckeditor/_samples/asp/advanced.asp +105 -105
  13. data/vendor/assets/ckeditor/ckeditor/_samples/asp/events.asp +136 -136
  14. data/vendor/assets/ckeditor/ckeditor/_samples/asp/index.html +103 -103
  15. data/vendor/assets/ckeditor/ckeditor/_samples/asp/replace.asp +72 -72
  16. data/vendor/assets/ckeditor/ckeditor/_samples/asp/replaceall.asp +77 -77
  17. data/vendor/assets/ckeditor/ckeditor/_samples/asp/sample_posteddata.asp +46 -46
  18. data/vendor/assets/ckeditor/ckeditor/_samples/asp/standalone.asp +72 -72
  19. data/vendor/assets/ckeditor/ckeditor/_samples/assets/_posteddata.php +59 -59
  20. data/vendor/assets/ckeditor/ckeditor/_samples/assets/output_xhtml.css +204 -204
  21. data/vendor/assets/ckeditor/ckeditor/_samples/assets/parsesample.css +70 -70
  22. data/vendor/assets/ckeditor/ckeditor/_samples/assets/swfobject.js +18 -18
  23. data/vendor/assets/ckeditor/ckeditor/_samples/autogrow.html +107 -107
  24. data/vendor/assets/ckeditor/ckeditor/_samples/bbcode.html +125 -125
  25. data/vendor/assets/ckeditor/ckeditor/_samples/devtools.html +94 -94
  26. data/vendor/assets/ckeditor/ckeditor/_samples/divreplace.html +154 -154
  27. data/vendor/assets/ckeditor/ckeditor/_samples/enterkey.html +115 -115
  28. data/vendor/assets/ckeditor/ckeditor/_samples/fullpage.html +82 -82
  29. data/vendor/assets/ckeditor/ckeditor/_samples/index.html +116 -116
  30. data/vendor/assets/ckeditor/ckeditor/_samples/jqueryadapter.html +99 -99
  31. data/vendor/assets/ckeditor/ckeditor/_samples/output_for_flash.html +275 -275
  32. data/vendor/assets/ckeditor/ckeditor/_samples/output_html.html +285 -285
  33. data/vendor/assets/ckeditor/ckeditor/_samples/output_xhtml.html +177 -177
  34. data/vendor/assets/ckeditor/ckeditor/_samples/php/advanced.php +120 -120
  35. data/vendor/assets/ckeditor/ckeditor/_samples/php/events.php +153 -153
  36. data/vendor/assets/ckeditor/ckeditor/_samples/php/index.html +47 -47
  37. data/vendor/assets/ckeditor/ckeditor/_samples/php/replace.php +87 -87
  38. data/vendor/assets/ckeditor/ckeditor/_samples/php/replaceall.php +88 -88
  39. data/vendor/assets/ckeditor/ckeditor/_samples/php/standalone.php +83 -83
  40. data/vendor/assets/ckeditor/ckeditor/_samples/placeholder.html +81 -81
  41. data/vendor/assets/ckeditor/ckeditor/_samples/readonly.html +91 -91
  42. data/vendor/assets/ckeditor/ckeditor/_samples/replacebyclass.html +64 -64
  43. data/vendor/assets/ckeditor/ckeditor/_samples/replacebycode.html +97 -97
  44. data/vendor/assets/ckeditor/ckeditor/_samples/sample.css +163 -163
  45. data/vendor/assets/ckeditor/ckeditor/_samples/sample.js +65 -65
  46. data/vendor/assets/ckeditor/ckeditor/_samples/sample_posteddata.php +21 -21
  47. data/vendor/assets/ckeditor/ckeditor/_samples/sharedspaces.html +153 -153
  48. data/vendor/assets/ckeditor/ckeditor/_samples/skins.html +110 -110
  49. data/vendor/assets/ckeditor/ckeditor/_samples/stylesheetparser.html +93 -93
  50. data/vendor/assets/ckeditor/ckeditor/_samples/tableresize.html +115 -115
  51. data/vendor/assets/ckeditor/ckeditor/_samples/ui_color.html +129 -129
  52. data/vendor/assets/ckeditor/ckeditor/_samples/ui_languages.html +134 -134
  53. data/vendor/assets/ckeditor/ckeditor/_source/adapters/jquery.js +306 -306
  54. data/vendor/assets/ckeditor/ckeditor/_source/core/_bootstrap.js +87 -87
  55. data/vendor/assets/ckeditor/ckeditor/_source/core/ckeditor.js +141 -141
  56. data/vendor/assets/ckeditor/ckeditor/_source/core/ckeditor_base.js +227 -227
  57. data/vendor/assets/ckeditor/ckeditor/_source/core/ckeditor_basic.js +238 -238
  58. data/vendor/assets/ckeditor/ckeditor/_source/core/command.js +209 -209
  59. data/vendor/assets/ckeditor/ckeditor/_source/core/commanddefinition.js +129 -129
  60. data/vendor/assets/ckeditor/ckeditor/_source/core/config.js +431 -431
  61. data/vendor/assets/ckeditor/ckeditor/_source/core/dataprocessor.js +65 -65
  62. data/vendor/assets/ckeditor/ckeditor/_source/core/dom.js +20 -20
  63. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/comment.js +32 -32
  64. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/document.js +251 -251
  65. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/documentfragment.js +49 -49
  66. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/domobject.js +258 -258
  67. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/element.js +1681 -1681
  68. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/elementpath.js +119 -119
  69. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/event.js +145 -145
  70. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/node.js +695 -695
  71. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/nodelist.js +26 -26
  72. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/range.js +2032 -2032
  73. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/rangelist.js +213 -213
  74. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/text.js +128 -128
  75. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/walker.js +462 -462
  76. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/window.js +96 -96
  77. data/vendor/assets/ckeditor/ckeditor/_source/core/dtd.js +266 -266
  78. data/vendor/assets/ckeditor/ckeditor/_source/core/editor.js +1059 -1059
  79. data/vendor/assets/ckeditor/ckeditor/_source/core/editor_basic.js +186 -186
  80. data/vendor/assets/ckeditor/ckeditor/_source/core/env.js +291 -291
  81. data/vendor/assets/ckeditor/ckeditor/_source/core/event.js +342 -342
  82. data/vendor/assets/ckeditor/ckeditor/_source/core/eventInfo.js +120 -120
  83. data/vendor/assets/ckeditor/ckeditor/_source/core/focusmanager.js +152 -152
  84. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser.js +224 -224
  85. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/basicwriter.js +145 -145
  86. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/cdata.js +43 -43
  87. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/comment.js +60 -60
  88. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/element.js +308 -308
  89. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/filter.js +288 -288
  90. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/fragment.js +497 -497
  91. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/text.js +55 -55
  92. data/vendor/assets/ckeditor/ckeditor/_source/core/lang.js +157 -157
  93. data/vendor/assets/ckeditor/ckeditor/_source/core/loader.js +240 -240
  94. data/vendor/assets/ckeditor/ckeditor/_source/core/plugindefinition.js +83 -83
  95. data/vendor/assets/ckeditor/ckeditor/_source/core/plugins.js +103 -103
  96. data/vendor/assets/ckeditor/ckeditor/_source/core/resourcemanager.js +238 -238
  97. data/vendor/assets/ckeditor/ckeditor/_source/core/scriptloader.js +180 -180
  98. data/vendor/assets/ckeditor/ckeditor/_source/core/skins.js +184 -184
  99. data/vendor/assets/ckeditor/ckeditor/_source/core/themes.js +19 -19
  100. data/vendor/assets/ckeditor/ckeditor/_source/core/tools.js +763 -763
  101. data/vendor/assets/ckeditor/ckeditor/_source/core/ui.js +128 -128
  102. data/vendor/assets/ckeditor/ckeditor/_source/lang/_languages.js +84 -84
  103. data/vendor/assets/ckeditor/ckeditor/_source/lang/_translationstatus.txt +61 -61
  104. data/vendor/assets/ckeditor/ckeditor/_source/lang/af.js +812 -812
  105. data/vendor/assets/ckeditor/ckeditor/_source/lang/ar.js +812 -812
  106. data/vendor/assets/ckeditor/ckeditor/_source/lang/bg.js +812 -812
  107. data/vendor/assets/ckeditor/ckeditor/_source/lang/bn.js +812 -812
  108. data/vendor/assets/ckeditor/ckeditor/_source/lang/bs.js +812 -812
  109. data/vendor/assets/ckeditor/ckeditor/_source/lang/ca.js +812 -812
  110. data/vendor/assets/ckeditor/ckeditor/_source/lang/cs.js +812 -812
  111. data/vendor/assets/ckeditor/ckeditor/_source/lang/cy.js +812 -812
  112. data/vendor/assets/ckeditor/ckeditor/_source/lang/da.js +812 -812
  113. data/vendor/assets/ckeditor/ckeditor/_source/lang/de.js +812 -812
  114. data/vendor/assets/ckeditor/ckeditor/_source/lang/el.js +812 -812
  115. data/vendor/assets/ckeditor/ckeditor/_source/lang/en-au.js +812 -812
  116. data/vendor/assets/ckeditor/ckeditor/_source/lang/en-ca.js +812 -812
  117. data/vendor/assets/ckeditor/ckeditor/_source/lang/en-gb.js +812 -812
  118. data/vendor/assets/ckeditor/ckeditor/_source/lang/en.js +812 -812
  119. data/vendor/assets/ckeditor/ckeditor/_source/lang/eo.js +812 -812
  120. data/vendor/assets/ckeditor/ckeditor/_source/lang/es.js +812 -812
  121. data/vendor/assets/ckeditor/ckeditor/_source/lang/et.js +812 -812
  122. data/vendor/assets/ckeditor/ckeditor/_source/lang/eu.js +812 -812
  123. data/vendor/assets/ckeditor/ckeditor/_source/lang/fa.js +812 -812
  124. data/vendor/assets/ckeditor/ckeditor/_source/lang/fi.js +812 -812
  125. data/vendor/assets/ckeditor/ckeditor/_source/lang/fo.js +812 -812
  126. data/vendor/assets/ckeditor/ckeditor/_source/lang/fr-ca.js +812 -812
  127. data/vendor/assets/ckeditor/ckeditor/_source/lang/fr.js +812 -812
  128. data/vendor/assets/ckeditor/ckeditor/_source/lang/gl.js +812 -812
  129. data/vendor/assets/ckeditor/ckeditor/_source/lang/gu.js +812 -812
  130. data/vendor/assets/ckeditor/ckeditor/_source/lang/he.js +812 -812
  131. data/vendor/assets/ckeditor/ckeditor/_source/lang/hi.js +812 -812
  132. data/vendor/assets/ckeditor/ckeditor/_source/lang/hr.js +812 -812
  133. data/vendor/assets/ckeditor/ckeditor/_source/lang/hu.js +812 -812
  134. data/vendor/assets/ckeditor/ckeditor/_source/lang/is.js +812 -812
  135. data/vendor/assets/ckeditor/ckeditor/_source/lang/it.js +812 -812
  136. data/vendor/assets/ckeditor/ckeditor/_source/lang/ja.js +812 -812
  137. data/vendor/assets/ckeditor/ckeditor/_source/lang/ka.js +812 -812
  138. data/vendor/assets/ckeditor/ckeditor/_source/lang/km.js +812 -812
  139. data/vendor/assets/ckeditor/ckeditor/_source/lang/ko.js +812 -812
  140. data/vendor/assets/ckeditor/ckeditor/_source/lang/lt.js +812 -812
  141. data/vendor/assets/ckeditor/ckeditor/_source/lang/lv.js +812 -812
  142. data/vendor/assets/ckeditor/ckeditor/_source/lang/mn.js +812 -812
  143. data/vendor/assets/ckeditor/ckeditor/_source/lang/ms.js +812 -812
  144. data/vendor/assets/ckeditor/ckeditor/_source/lang/nb.js +812 -812
  145. data/vendor/assets/ckeditor/ckeditor/_source/lang/nl.js +812 -812
  146. data/vendor/assets/ckeditor/ckeditor/_source/lang/no.js +812 -812
  147. data/vendor/assets/ckeditor/ckeditor/_source/lang/pl.js +812 -812
  148. data/vendor/assets/ckeditor/ckeditor/_source/lang/pt-br.js +811 -811
  149. data/vendor/assets/ckeditor/ckeditor/_source/lang/pt.js +812 -812
  150. data/vendor/assets/ckeditor/ckeditor/_source/lang/ro.js +812 -812
  151. data/vendor/assets/ckeditor/ckeditor/_source/lang/ru.js +812 -812
  152. data/vendor/assets/ckeditor/ckeditor/_source/lang/sk.js +812 -812
  153. data/vendor/assets/ckeditor/ckeditor/_source/lang/sl.js +812 -812
  154. data/vendor/assets/ckeditor/ckeditor/_source/lang/sr-latn.js +812 -812
  155. data/vendor/assets/ckeditor/ckeditor/_source/lang/sr.js +812 -812
  156. data/vendor/assets/ckeditor/ckeditor/_source/lang/sv.js +811 -811
  157. data/vendor/assets/ckeditor/ckeditor/_source/lang/th.js +812 -812
  158. data/vendor/assets/ckeditor/ckeditor/_source/lang/tr.js +811 -811
  159. data/vendor/assets/ckeditor/ckeditor/_source/lang/uk.js +812 -812
  160. data/vendor/assets/ckeditor/ckeditor/_source/lang/vi.js +812 -812
  161. data/vendor/assets/ckeditor/ckeditor/_source/lang/zh-cn.js +812 -812
  162. data/vendor/assets/ckeditor/ckeditor/_source/lang/zh.js +812 -812
  163. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/dialogs/a11yhelp.js +222 -222
  164. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/en.js +108 -108
  165. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/he.js +216 -216
  166. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/plugin.js +47 -47
  167. data/vendor/assets/ckeditor/ckeditor/_source/plugins/about/dialogs/about.js +76 -76
  168. data/vendor/assets/ckeditor/ckeditor/_source/plugins/about/plugin.js +24 -24
  169. data/vendor/assets/ckeditor/ckeditor/_source/plugins/adobeair/plugin.js +228 -228
  170. data/vendor/assets/ckeditor/ckeditor/_source/plugins/ajax/plugin.js +152 -152
  171. data/vendor/assets/ckeditor/ckeditor/_source/plugins/autogrow/plugin.js +88 -88
  172. data/vendor/assets/ckeditor/ckeditor/_source/plugins/basicstyles/plugin.js +101 -101
  173. data/vendor/assets/ckeditor/ckeditor/_source/plugins/bbcode/plugin.js +931 -931
  174. data/vendor/assets/ckeditor/ckeditor/_source/plugins/bidi/plugin.js +334 -334
  175. data/vendor/assets/ckeditor/ckeditor/_source/plugins/blockquote/plugin.js +305 -305
  176. data/vendor/assets/ckeditor/ckeditor/_source/plugins/button/plugin.js +290 -290
  177. data/vendor/assets/ckeditor/ckeditor/_source/plugins/clipboard/dialogs/paste.js +223 -223
  178. data/vendor/assets/ckeditor/ckeditor/_source/plugins/clipboard/plugin.js +453 -453
  179. data/vendor/assets/ckeditor/ckeditor/_source/plugins/colorbutton/plugin.js +294 -294
  180. data/vendor/assets/ckeditor/ckeditor/_source/plugins/colordialog/dialogs/colordialog.js +340 -340
  181. data/vendor/assets/ckeditor/ckeditor/_source/plugins/colordialog/plugin.js +15 -15
  182. data/vendor/assets/ckeditor/ckeditor/_source/plugins/contextmenu/plugin.js +177 -177
  183. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/en.js +16 -16
  184. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/plugin.js +173 -173
  185. data/vendor/assets/ckeditor/ckeditor/_source/plugins/dialog/dialogDefinition.js +1166 -1166
  186. data/vendor/assets/ckeditor/ckeditor/_source/plugins/dialog/plugin.js +3289 -3289
  187. data/vendor/assets/ckeditor/ckeditor/_source/plugins/dialogadvtab/plugin.js +207 -207
  188. data/vendor/assets/ckeditor/ckeditor/_source/plugins/dialogui/plugin.js +1541 -1541
  189. data/vendor/assets/ckeditor/ckeditor/_source/plugins/div/dialogs/div.js +535 -535
  190. data/vendor/assets/ckeditor/ckeditor/_source/plugins/div/plugin.js +121 -121
  191. data/vendor/assets/ckeditor/ckeditor/_source/plugins/docprops/dialogs/docprops.js +686 -686
  192. data/vendor/assets/ckeditor/ckeditor/_source/plugins/docprops/plugin.js +22 -22
  193. data/vendor/assets/ckeditor/ckeditor/_source/plugins/domiterator/plugin.js +361 -361
  194. data/vendor/assets/ckeditor/ckeditor/_source/plugins/editingblock/plugin.js +275 -275
  195. data/vendor/assets/ckeditor/ckeditor/_source/plugins/elementspath/plugin.js +218 -218
  196. data/vendor/assets/ckeditor/ckeditor/_source/plugins/enterkey/plugin.js +413 -413
  197. data/vendor/assets/ckeditor/ckeditor/_source/plugins/entities/plugin.js +250 -250
  198. data/vendor/assets/ckeditor/ckeditor/_source/plugins/fakeobjects/plugin.js +175 -175
  199. data/vendor/assets/ckeditor/ckeditor/_source/plugins/filebrowser/plugin.js +524 -524
  200. data/vendor/assets/ckeditor/ckeditor/_source/plugins/find/dialogs/find.js +903 -903
  201. data/vendor/assets/ckeditor/ckeditor/_source/plugins/find/plugin.js +47 -47
  202. data/vendor/assets/ckeditor/ckeditor/_source/plugins/flash/dialogs/flash.js +673 -673
  203. data/vendor/assets/ckeditor/ckeditor/_source/plugins/flash/plugin.js +154 -154
  204. data/vendor/assets/ckeditor/ckeditor/_source/plugins/floatpanel/plugin.js +428 -428
  205. data/vendor/assets/ckeditor/ckeditor/_source/plugins/font/plugin.js +234 -234
  206. data/vendor/assets/ckeditor/ckeditor/_source/plugins/format/plugin.js +197 -197
  207. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/button.js +118 -118
  208. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/checkbox.js +153 -153
  209. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/form.js +177 -177
  210. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/hiddenfield.js +100 -100
  211. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/radio.js +135 -135
  212. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/select.js +558 -558
  213. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/textarea.js +114 -114
  214. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/textfield.js +199 -199
  215. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/plugin.js +288 -288
  216. data/vendor/assets/ckeditor/ckeditor/_source/plugins/horizontalrule/plugin.js +48 -48
  217. data/vendor/assets/ckeditor/ckeditor/_source/plugins/htmldataprocessor/plugin.js +595 -595
  218. data/vendor/assets/ckeditor/ckeditor/_source/plugins/htmlwriter/plugin.js +319 -319
  219. data/vendor/assets/ckeditor/ckeditor/_source/plugins/iframe/dialogs/iframe.js +229 -229
  220. data/vendor/assets/ckeditor/ckeditor/_source/plugins/iframe/plugin.js +87 -87
  221. data/vendor/assets/ckeditor/ckeditor/_source/plugins/iframedialog/plugin.js +188 -188
  222. data/vendor/assets/ckeditor/ckeditor/_source/plugins/image/dialogs/image.js +1406 -1406
  223. data/vendor/assets/ckeditor/ckeditor/_source/plugins/image/plugin.js +81 -81
  224. data/vendor/assets/ckeditor/ckeditor/_source/plugins/indent/plugin.js +461 -461
  225. data/vendor/assets/ckeditor/ckeditor/_source/plugins/justify/plugin.js +253 -253
  226. data/vendor/assets/ckeditor/ckeditor/_source/plugins/keystrokes/plugin.js +225 -225
  227. data/vendor/assets/ckeditor/ckeditor/_source/plugins/link/dialogs/anchor.js +144 -144
  228. data/vendor/assets/ckeditor/ckeditor/_source/plugins/link/dialogs/link.js +1424 -1424
  229. data/vendor/assets/ckeditor/ckeditor/_source/plugins/link/plugin.js +374 -374
  230. data/vendor/assets/ckeditor/ckeditor/_source/plugins/list/plugin.js +734 -734
  231. data/vendor/assets/ckeditor/ckeditor/_source/plugins/listblock/plugin.js +268 -268
  232. data/vendor/assets/ckeditor/ckeditor/_source/plugins/liststyle/dialogs/liststyle.js +225 -225
  233. data/vendor/assets/ckeditor/ckeditor/_source/plugins/liststyle/plugin.js +66 -66
  234. data/vendor/assets/ckeditor/ckeditor/_source/plugins/maximize/plugin.js +352 -352
  235. data/vendor/assets/ckeditor/ckeditor/_source/plugins/menu/plugin.js +541 -541
  236. data/vendor/assets/ckeditor/ckeditor/_source/plugins/menubutton/plugin.js +98 -98
  237. data/vendor/assets/ckeditor/ckeditor/_source/plugins/newpage/plugin.js +54 -54
  238. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pagebreak/plugin.js +164 -164
  239. data/vendor/assets/ckeditor/ckeditor/_source/plugins/panel/plugin.js +403 -403
  240. data/vendor/assets/ckeditor/ckeditor/_source/plugins/panelbutton/plugin.js +144 -144
  241. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pastefromword/filter/default.js +1367 -1367
  242. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pastefromword/plugin.js +141 -141
  243. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pastetext/dialogs/pastetext.js +67 -67
  244. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pastetext/plugin.js +98 -98
  245. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/dialogs/placeholder.js +71 -71
  246. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/en.js +16 -16
  247. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/he.js +16 -16
  248. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/plugin.js +171 -171
  249. data/vendor/assets/ckeditor/ckeditor/_source/plugins/popup/plugin.js +64 -64
  250. data/vendor/assets/ckeditor/ckeditor/_source/plugins/preview/plugin.js +109 -109
  251. data/vendor/assets/ckeditor/ckeditor/_source/plugins/print/plugin.js +42 -42
  252. data/vendor/assets/ckeditor/ckeditor/_source/plugins/removeformat/plugin.js +185 -185
  253. data/vendor/assets/ckeditor/ckeditor/_source/plugins/resize/plugin.js +168 -168
  254. data/vendor/assets/ckeditor/ckeditor/_source/plugins/richcombo/plugin.js +381 -381
  255. data/vendor/assets/ckeditor/ckeditor/_source/plugins/save/plugin.js +56 -56
  256. data/vendor/assets/ckeditor/ckeditor/_source/plugins/scayt/dialogs/options.js +537 -537
  257. data/vendor/assets/ckeditor/ckeditor/_source/plugins/scayt/dialogs/toolbar.css +71 -71
  258. data/vendor/assets/ckeditor/ckeditor/_source/plugins/scayt/plugin.js +964 -964
  259. data/vendor/assets/ckeditor/ckeditor/_source/plugins/selection/plugin.js +1601 -1601
  260. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showblocks/plugin.js +160 -160
  261. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showborders/plugin.js +207 -207
  262. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/dialogs/smiley.js +224 -224
  263. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/plugin.js +94 -94
  264. data/vendor/assets/ckeditor/ckeditor/_source/plugins/sourcearea/plugin.js +209 -209
  265. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/dialogs/specialchar.js +350 -350
  266. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/en.js +89 -89
  267. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/plugin.js +70 -70
  268. data/vendor/assets/ckeditor/ckeditor/_source/plugins/styles/plugin.js +1696 -1696
  269. data/vendor/assets/ckeditor/ckeditor/_source/plugins/styles/styles/default.js +88 -88
  270. data/vendor/assets/ckeditor/ckeditor/_source/plugins/stylescombo/plugin.js +218 -218
  271. data/vendor/assets/ckeditor/ckeditor/_source/plugins/stylesheetparser/plugin.js +148 -148
  272. data/vendor/assets/ckeditor/ckeditor/_source/plugins/tab/plugin.js +367 -367
  273. data/vendor/assets/ckeditor/ckeditor/_source/plugins/table/dialogs/table.js +602 -602
  274. data/vendor/assets/ckeditor/ckeditor/_source/plugins/table/plugin.js +78 -78
  275. data/vendor/assets/ckeditor/ckeditor/_source/plugins/tableresize/plugin.js +443 -443
  276. data/vendor/assets/ckeditor/ckeditor/_source/plugins/tabletools/dialogs/tableCell.js +525 -525
  277. data/vendor/assets/ckeditor/ckeditor/_source/plugins/tabletools/plugin.js +1194 -1194
  278. data/vendor/assets/ckeditor/ckeditor/_source/plugins/templates/dialogs/templates.js +234 -234
  279. data/vendor/assets/ckeditor/ckeditor/_source/plugins/templates/plugin.js +99 -99
  280. data/vendor/assets/ckeditor/ckeditor/_source/plugins/templates/templates/default.js +94 -94
  281. data/vendor/assets/ckeditor/ckeditor/_source/plugins/toolbar/plugin.js +545 -545
  282. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/dialogs/uicolor.js +205 -205
  283. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/en.js +15 -15
  284. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/he.js +15 -15
  285. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/plugin.js +37 -37
  286. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/yui/assets/yui.css +15 -15
  287. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/yui/yui.js +71 -71
  288. data/vendor/assets/ckeditor/ckeditor/_source/plugins/undo/plugin.js +580 -580
  289. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wsc/dialogs/ciframe.html +49 -49
  290. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wsc/dialogs/tmpFrameset.html +52 -52
  291. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wsc/dialogs/wsc.css +82 -82
  292. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wsc/dialogs/wsc.js +192 -192
  293. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wsc/plugin.js +33 -33
  294. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wysiwygarea/plugin.js +1351 -1351
  295. data/vendor/assets/ckeditor/ckeditor/_source/plugins/xml/plugin.js +170 -170
  296. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/dialog.css +943 -943
  297. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/editor.css +25 -25
  298. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/elementspath.css +73 -73
  299. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/icons.css +366 -366
  300. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/mainui.css +203 -203
  301. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/menu.css +232 -232
  302. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/panel.css +217 -217
  303. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/presets.css +49 -49
  304. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/reset.css +84 -84
  305. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/richcombo.css +287 -287
  306. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/skin.js +236 -236
  307. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/templates.css +88 -88
  308. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/toolbar.css +407 -407
  309. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/dialog.css +844 -844
  310. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/editor.css +25 -25
  311. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/elementspath.css +74 -74
  312. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/icons.css +363 -363
  313. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/mainui.css +153 -153
  314. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/menu.css +229 -229
  315. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/panel.css +212 -212
  316. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/presets.css +49 -49
  317. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/reset.css +84 -84
  318. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/richcombo.css +309 -309
  319. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/skin.js +74 -74
  320. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/templates.css +87 -87
  321. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/toolbar.css +522 -522
  322. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/dialog.css +861 -861
  323. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/editor.css +25 -25
  324. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/elementspath.css +74 -74
  325. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/icons.css +363 -363
  326. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/mainui.css +162 -162
  327. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/menu.css +232 -232
  328. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/panel.css +212 -212
  329. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/presets.css +50 -50
  330. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/reset.css +84 -84
  331. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/richcombo.css +302 -302
  332. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/skin.js +70 -70
  333. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/templates.css +87 -87
  334. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/toolbar.css +465 -465
  335. data/vendor/assets/ckeditor/ckeditor/_source/themes/default/theme.js +395 -395
  336. data/vendor/assets/ckeditor/ckeditor/adapters/jquery.js +6 -6
  337. data/vendor/assets/ckeditor/ckeditor/ckeditor.asp +955 -955
  338. data/vendor/assets/ckeditor/ckeditor/ckeditor.pack +211 -211
  339. data/vendor/assets/ckeditor/ckeditor/ckeditor.php +29 -29
  340. data/vendor/assets/ckeditor/ckeditor/ckeditor_basic.js +8 -8
  341. data/vendor/assets/ckeditor/ckeditor/ckeditor_basic_source.js +20 -20
  342. data/vendor/assets/ckeditor/ckeditor/ckeditor_php4.php +566 -566
  343. data/vendor/assets/ckeditor/ckeditor/ckeditor_php5.php +556 -556
  344. data/vendor/assets/ckeditor/ckeditor/config.js +11 -11
  345. data/vendor/assets/ckeditor/ckeditor/contents.css +25 -25
  346. data/vendor/assets/ckeditor/ckeditor/themes/default/theme.js +8 -8
  347. metadata +7 -9
@@ -1,78 +1,78 @@
1
- /*
2
- Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
3
- For licensing, see LICENSE.html or http://ckeditor.com/license
4
- */
5
-
6
- CKEDITOR.plugins.add( 'table',
7
- {
8
- init : function( editor )
9
- {
10
- var table = CKEDITOR.plugins.table,
11
- lang = editor.lang.table;
12
-
13
- editor.addCommand( 'table', new CKEDITOR.dialogCommand( 'table' ) );
14
- editor.addCommand( 'tableProperties', new CKEDITOR.dialogCommand( 'tableProperties' ) );
15
-
16
- editor.ui.addButton( 'Table',
17
- {
18
- label : lang.toolbar,
19
- command : 'table'
20
- });
21
-
22
- CKEDITOR.dialog.add( 'table', this.path + 'dialogs/table.js' );
23
- CKEDITOR.dialog.add( 'tableProperties', this.path + 'dialogs/table.js' );
24
-
25
- // If the "menu" plugin is loaded, register the menu items.
26
- if ( editor.addMenuItems )
27
- {
28
- editor.addMenuItems(
29
- {
30
- table :
31
- {
32
- label : lang.menu,
33
- command : 'tableProperties',
34
- group : 'table',
35
- order : 5
36
- },
37
-
38
- tabledelete :
39
- {
40
- label : lang.deleteTable,
41
- command : 'tableDelete',
42
- group : 'table',
43
- order : 1
44
- }
45
- } );
46
- }
47
-
48
- editor.on( 'doubleclick', function( evt )
49
- {
50
- var element = evt.data.element;
51
-
52
- if ( element.is( 'table' ) )
53
- evt.data.dialog = 'tableProperties';
54
- });
55
-
56
- // If the "contextmenu" plugin is loaded, register the listeners.
57
- if ( editor.contextMenu )
58
- {
59
- editor.contextMenu.addListener( function( element, selection )
60
- {
61
- if ( !element || element.isReadOnly() )
62
- return null;
63
-
64
- var isTable = element.hasAscendant( 'table', 1 );
65
-
66
- if ( isTable )
67
- {
68
- return {
69
- tabledelete : CKEDITOR.TRISTATE_OFF,
70
- table : CKEDITOR.TRISTATE_OFF
71
- };
72
- }
73
-
74
- return null;
75
- } );
76
- }
77
- }
78
- } );
1
+ /*
2
+ Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.html or http://ckeditor.com/license
4
+ */
5
+
6
+ CKEDITOR.plugins.add( 'table',
7
+ {
8
+ init : function( editor )
9
+ {
10
+ var table = CKEDITOR.plugins.table,
11
+ lang = editor.lang.table;
12
+
13
+ editor.addCommand( 'table', new CKEDITOR.dialogCommand( 'table' ) );
14
+ editor.addCommand( 'tableProperties', new CKEDITOR.dialogCommand( 'tableProperties' ) );
15
+
16
+ editor.ui.addButton( 'Table',
17
+ {
18
+ label : lang.toolbar,
19
+ command : 'table'
20
+ });
21
+
22
+ CKEDITOR.dialog.add( 'table', this.path + 'dialogs/table.js' );
23
+ CKEDITOR.dialog.add( 'tableProperties', this.path + 'dialogs/table.js' );
24
+
25
+ // If the "menu" plugin is loaded, register the menu items.
26
+ if ( editor.addMenuItems )
27
+ {
28
+ editor.addMenuItems(
29
+ {
30
+ table :
31
+ {
32
+ label : lang.menu,
33
+ command : 'tableProperties',
34
+ group : 'table',
35
+ order : 5
36
+ },
37
+
38
+ tabledelete :
39
+ {
40
+ label : lang.deleteTable,
41
+ command : 'tableDelete',
42
+ group : 'table',
43
+ order : 1
44
+ }
45
+ } );
46
+ }
47
+
48
+ editor.on( 'doubleclick', function( evt )
49
+ {
50
+ var element = evt.data.element;
51
+
52
+ if ( element.is( 'table' ) )
53
+ evt.data.dialog = 'tableProperties';
54
+ });
55
+
56
+ // If the "contextmenu" plugin is loaded, register the listeners.
57
+ if ( editor.contextMenu )
58
+ {
59
+ editor.contextMenu.addListener( function( element, selection )
60
+ {
61
+ if ( !element || element.isReadOnly() )
62
+ return null;
63
+
64
+ var isTable = element.hasAscendant( 'table', 1 );
65
+
66
+ if ( isTable )
67
+ {
68
+ return {
69
+ tabledelete : CKEDITOR.TRISTATE_OFF,
70
+ table : CKEDITOR.TRISTATE_OFF
71
+ };
72
+ }
73
+
74
+ return null;
75
+ } );
76
+ }
77
+ }
78
+ } );
@@ -1,443 +1,443 @@
1
- /*
2
- Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
3
- For licensing, see LICENSE.html or http://ckeditor.com/license
4
- */
5
-
6
- (function()
7
- {
8
- var pxUnit = CKEDITOR.tools.cssLength,
9
- needsIEHacks = CKEDITOR.env.ie && ( CKEDITOR.env.ie7Compat || CKEDITOR.env.quirks || CKEDITOR.env.version < 7 );
10
-
11
- function getWidth( el )
12
- {
13
- return CKEDITOR.env.ie ? el.$.clientWidth : parseInt( el.getComputedStyle( 'width' ), 10 );
14
- }
15
-
16
- function getBorderWidth( element, side )
17
- {
18
- var computed = element.getComputedStyle( 'border-' + side + '-width' ),
19
- borderMap =
20
- {
21
- thin: '0px',
22
- medium: '1px',
23
- thick: '2px'
24
- };
25
-
26
- if ( computed.indexOf( 'px' ) < 0 )
27
- {
28
- // look up keywords
29
- if ( computed in borderMap && element.getComputedStyle( 'border-style' ) != 'none' )
30
- computed = borderMap[ computed ];
31
- else
32
- computed = 0;
33
- }
34
-
35
- return parseInt( computed, 10 );
36
- }
37
-
38
- // Gets the table row that contains the most columns.
39
- function getMasterPillarRow( table )
40
- {
41
- var $rows = table.$.rows,
42
- maxCells = 0, cellsCount,
43
- $elected, $tr;
44
-
45
- for ( var i = 0, len = $rows.length ; i < len; i++ )
46
- {
47
- $tr = $rows[ i ];
48
- cellsCount = $tr.cells.length;
49
-
50
- if ( cellsCount > maxCells )
51
- {
52
- maxCells = cellsCount;
53
- $elected = $tr;
54
- }
55
- }
56
-
57
- return $elected;
58
- }
59
-
60
- function buildTableColumnPillars( table )
61
- {
62
- var pillars = [],
63
- pillarIndex = -1,
64
- rtl = ( table.getComputedStyle( 'direction' ) == 'rtl' );
65
-
66
- // Get the raw row element that cointains the most columns.
67
- var $tr = getMasterPillarRow( table );
68
-
69
- // Get the tbody element and position, which will be used to set the
70
- // top and bottom boundaries.
71
- var tbody = new CKEDITOR.dom.element( table.$.tBodies[ 0 ] ),
72
- tbodyPosition = tbody.getDocumentPosition();
73
-
74
- // Loop thorugh all cells, building pillars after each one of them.
75
- for ( var i = 0, len = $tr.cells.length ; i < len ; i++ )
76
- {
77
- // Both the current cell and the successive one will be used in the
78
- // pillar size calculation.
79
- var td = new CKEDITOR.dom.element( $tr.cells[ i ] ),
80
- nextTd = $tr.cells[ i + 1 ] && new CKEDITOR.dom.element( $tr.cells[ i + 1 ] );
81
-
82
- pillarIndex += td.$.colSpan || 1;
83
-
84
- // Calculate the pillar boundary positions.
85
- var pillarLeft, pillarRight, pillarWidth;
86
-
87
- var x = td.getDocumentPosition().x;
88
-
89
- // Calculate positions based on the current cell.
90
- rtl ?
91
- pillarRight = x + getBorderWidth( td, 'left' ) :
92
- pillarLeft = x + td.$.offsetWidth - getBorderWidth( td, 'right' );
93
-
94
- // Calculate positions based on the next cell, if available.
95
- if ( nextTd )
96
- {
97
- x = nextTd.getDocumentPosition().x;
98
-
99
- rtl ?
100
- pillarLeft = x + nextTd.$.offsetWidth - getBorderWidth( nextTd, 'right' ) :
101
- pillarRight = x + getBorderWidth( nextTd, 'left' );
102
- }
103
- // Otherwise calculate positions based on the table (for last cell).
104
- else
105
- {
106
- x = table.getDocumentPosition().x;
107
-
108
- rtl ?
109
- pillarLeft = x :
110
- pillarRight = x + table.$.offsetWidth;
111
- }
112
-
113
- pillarWidth = Math.max( pillarRight - pillarLeft, 3 );
114
-
115
- // The pillar should reflects exactly the shape of the hovered
116
- // column border line.
117
- pillars.push( {
118
- table : table,
119
- index : pillarIndex,
120
- x : pillarLeft,
121
- y : tbodyPosition.y,
122
- width : pillarWidth,
123
- height : tbody.$.offsetHeight,
124
- rtl : rtl } );
125
- }
126
-
127
- return pillars;
128
- }
129
-
130
- function getPillarAtPosition( pillars, positionX )
131
- {
132
- for ( var i = 0, len = pillars.length ; i < len ; i++ )
133
- {
134
- var pillar = pillars[ i ];
135
-
136
- if ( positionX >= pillar.x && positionX <= ( pillar.x + pillar.width ) )
137
- return pillar;
138
- }
139
-
140
- return null;
141
- }
142
-
143
- function cancel( evt )
144
- {
145
- ( evt.data || evt ).preventDefault();
146
- }
147
-
148
- function columnResizer( editor )
149
- {
150
- var pillar,
151
- document,
152
- resizer,
153
- isResizing,
154
- startOffset,
155
- currentShift;
156
-
157
- var leftSideCells, rightSideCells, leftShiftBoundary, rightShiftBoundary;
158
-
159
- function detach()
160
- {
161
- pillar = null;
162
- currentShift = 0;
163
- isResizing = 0;
164
-
165
- document.removeListener( 'mouseup', onMouseUp );
166
- resizer.removeListener( 'mousedown', onMouseDown );
167
- resizer.removeListener( 'mousemove', onMouseMove );
168
-
169
- document.getBody().setStyle( 'cursor', 'auto' );
170
-
171
- // Hide the resizer (remove it on IE7 - #5890).
172
- needsIEHacks ? resizer.remove() : resizer.hide();
173
- }
174
-
175
- function resizeStart()
176
- {
177
- // Before starting to resize, figure out which cells to change
178
- // and the boundaries of this resizing shift.
179
-
180
- var columnIndex = pillar.index,
181
- map = CKEDITOR.tools.buildTableMap( pillar.table ),
182
- leftColumnCells = [],
183
- rightColumnCells = [],
184
- leftMinSize = Number.MAX_VALUE,
185
- rightMinSize = leftMinSize,
186
- rtl = pillar.rtl;
187
-
188
- for ( var i = 0, len = map.length ; i < len ; i++ )
189
- {
190
- var row = map[ i ],
191
- leftCell = row[ columnIndex + ( rtl ? 1 : 0 ) ],
192
- rightCell = row[ columnIndex + ( rtl ? 0 : 1 ) ];
193
-
194
- leftCell = leftCell && new CKEDITOR.dom.element( leftCell );
195
- rightCell = rightCell && new CKEDITOR.dom.element( rightCell );
196
-
197
- if ( !leftCell || !rightCell || !leftCell.equals( rightCell ) )
198
- {
199
- leftCell && ( leftMinSize = Math.min( leftMinSize, getWidth( leftCell ) ) );
200
- rightCell && ( rightMinSize = Math.min( rightMinSize, getWidth( rightCell ) ) );
201
-
202
- leftColumnCells.push( leftCell );
203
- rightColumnCells.push( rightCell );
204
- }
205
- }
206
-
207
- // Cache the list of cells to be resized.
208
- leftSideCells = leftColumnCells;
209
- rightSideCells = rightColumnCells;
210
-
211
- // Cache the resize limit boundaries.
212
- leftShiftBoundary = pillar.x - leftMinSize;
213
- rightShiftBoundary = pillar.x + rightMinSize;
214
-
215
- resizer.setOpacity( 0.5 );
216
- startOffset = parseInt( resizer.getStyle( 'left' ), 10 );
217
- currentShift = 0;
218
- isResizing = 1;
219
-
220
- resizer.on( 'mousemove', onMouseMove );
221
-
222
- // Prevent the native drag behavior otherwise 'mousemove' won't fire.
223
- document.on( 'dragstart', cancel );
224
- }
225
-
226
- function resizeEnd()
227
- {
228
- isResizing = 0;
229
-
230
- resizer.setOpacity( 0 );
231
-
232
- currentShift && resizeColumn();
233
-
234
- var table = pillar.table;
235
- setTimeout( function () { table.removeCustomData( '_cke_table_pillars' ); }, 0 );
236
-
237
- document.removeListener( 'dragstart', cancel );
238
- }
239
-
240
- function resizeColumn()
241
- {
242
- var rtl = pillar.rtl,
243
- cellsCount = rtl ? rightSideCells.length : leftSideCells.length;
244
-
245
- // Perform the actual resize to table cells, only for those by side of the pillar.
246
- for ( var i = 0 ; i < cellsCount ; i++ )
247
- {
248
- var leftCell = leftSideCells[ i ],
249
- rightCell = rightSideCells[ i ],
250
- table = pillar.table;
251
-
252
- // Defer the resizing to avoid any interference among cells.
253
- CKEDITOR.tools.setTimeout(
254
- function( leftCell, leftOldWidth, rightCell, rightOldWidth, tableWidth, sizeShift )
255
- {
256
- leftCell && leftCell.setStyle( 'width', pxUnit( Math.max( leftOldWidth + sizeShift, 0 ) ) );
257
- rightCell && rightCell.setStyle( 'width', pxUnit( Math.max( rightOldWidth - sizeShift, 0 ) ) );
258
-
259
- // If we're in the last cell, we need to resize the table as well
260
- if ( tableWidth )
261
- table.setStyle( 'width', pxUnit( tableWidth + sizeShift * ( rtl ? -1 : 1 ) ) );
262
- }
263
- , 0,
264
- this, [
265
- leftCell, leftCell && getWidth( leftCell ),
266
- rightCell, rightCell && getWidth( rightCell ),
267
- ( !leftCell || !rightCell ) && ( getWidth( table ) + getBorderWidth( table, 'left' ) + getBorderWidth( table, 'right' ) ),
268
- currentShift ] );
269
- }
270
- }
271
-
272
- function onMouseDown( evt )
273
- {
274
- cancel( evt );
275
-
276
- resizeStart();
277
-
278
- document.on( 'mouseup', onMouseUp, this );
279
- }
280
-
281
- function onMouseUp( evt )
282
- {
283
- evt.removeListener();
284
-
285
- resizeEnd();
286
- }
287
-
288
- function onMouseMove( evt )
289
- {
290
- move( evt.data.$.clientX );
291
- }
292
-
293
- document = editor.document;
294
-
295
- resizer = CKEDITOR.dom.element.createFromHtml(
296
- '<div data-cke-temp=1 contenteditable=false unselectable=on '+
297
- 'style="position:absolute;cursor:col-resize;filter:alpha(opacity=0);opacity:0;' +
298
- 'padding:0;background-color:#004;background-image:none;border:0px none;z-index:10"></div>', document );
299
-
300
- // Except on IE6/7 (#5890), place the resizer after body to prevent it
301
- // from being editable.
302
- if ( !needsIEHacks )
303
- document.getDocumentElement().append( resizer );
304
-
305
- this.attachTo = function( targetPillar )
306
- {
307
- // Accept only one pillar at a time.
308
- if ( isResizing )
309
- return;
310
-
311
- // On IE6/7, we append the resizer everytime we need it. (#5890)
312
- if ( needsIEHacks )
313
- {
314
- document.getBody().append( resizer );
315
- currentShift = 0;
316
- }
317
-
318
- pillar = targetPillar;
319
-
320
- resizer.setStyles(
321
- {
322
- width: pxUnit( targetPillar.width ),
323
- height : pxUnit( targetPillar.height ),
324
- left : pxUnit( targetPillar.x ),
325
- top : pxUnit( targetPillar.y )
326
- });
327
-
328
- // In IE6/7, it's not possible to have custom cursors for floating
329
- // elements in an editable document. Show the resizer in that case,
330
- // to give the user a visual clue.
331
- needsIEHacks && resizer.setOpacity( 0.25 );
332
-
333
- resizer.on( 'mousedown', onMouseDown, this );
334
-
335
- document.getBody().setStyle( 'cursor', 'col-resize' );
336
-
337
- // Display the resizer to receive events but don't show it,
338
- // only change the cursor to resizable shape.
339
- resizer.show();
340
- };
341
-
342
- var move = this.move = function( posX )
343
- {
344
- if ( !pillar )
345
- return 0;
346
-
347
- if ( !isResizing && ( posX < pillar.x || posX > ( pillar.x + pillar.width ) ) )
348
- {
349
- detach();
350
- return 0;
351
- }
352
-
353
- var resizerNewPosition = posX - Math.round( resizer.$.offsetWidth / 2 );
354
-
355
- if ( isResizing )
356
- {
357
- if ( resizerNewPosition == leftShiftBoundary || resizerNewPosition == rightShiftBoundary )
358
- return 1;
359
-
360
- resizerNewPosition = Math.max( resizerNewPosition, leftShiftBoundary );
361
- resizerNewPosition = Math.min( resizerNewPosition, rightShiftBoundary );
362
-
363
- currentShift = resizerNewPosition - startOffset;
364
- }
365
-
366
- resizer.setStyle( 'left', pxUnit( resizerNewPosition ) );
367
-
368
- return 1;
369
- };
370
- }
371
-
372
- function clearPillarsCache( evt )
373
- {
374
- var target = evt.data.getTarget();
375
-
376
- if ( evt.name == 'mouseout' )
377
- {
378
- // Bypass interal mouse move.
379
- if ( !target.is ( 'table' ) )
380
- return;
381
-
382
- var dest = new CKEDITOR.dom.element( evt.data.$.relatedTarget || evt.data.$.toElement );
383
- while( dest && dest.$ && !dest.equals( target ) && !dest.is( 'body' ) )
384
- dest = dest.getParent();
385
- if ( !dest || dest.equals( target ) )
386
- return;
387
- }
388
-
389
- target.getAscendant( 'table', 1 ).removeCustomData( '_cke_table_pillars' );
390
- evt.removeListener();
391
- }
392
-
393
- CKEDITOR.plugins.add( 'tableresize',
394
- {
395
- requires : [ 'tabletools' ],
396
- init : function( editor )
397
- {
398
- editor.on( 'contentDom', function()
399
- {
400
- var resizer;
401
-
402
- editor.document.getBody().on( 'mousemove', function( evt )
403
- {
404
- evt = evt.data;
405
-
406
- // If we're already attached to a pillar, simply move the
407
- // resizer.
408
- if ( resizer && resizer.move( evt.$.clientX ) )
409
- {
410
- cancel( evt );
411
- return;
412
- }
413
-
414
- // Considering table, tr, td, tbody but nothing else.
415
- var target = evt.getTarget(),
416
- table,
417
- pillars;
418
-
419
- if ( !target.is( 'table' ) && !target.getAscendant( 'tbody', 1 ) )
420
- return;
421
-
422
- table = target.getAscendant( 'table', 1 );
423
-
424
- if ( !( pillars = table.getCustomData( '_cke_table_pillars' ) ) )
425
- {
426
- // Cache table pillars calculation result.
427
- table.setCustomData( '_cke_table_pillars', ( pillars = buildTableColumnPillars( table ) ) );
428
- table.on( 'mouseout', clearPillarsCache );
429
- table.on( 'mousedown', clearPillarsCache );
430
- }
431
-
432
- var pillar = getPillarAtPosition( pillars, evt.$.clientX );
433
- if ( pillar )
434
- {
435
- !resizer && ( resizer = new columnResizer( editor ) );
436
- resizer.attachTo( pillar );
437
- }
438
- });
439
- });
440
- }
441
- });
442
-
443
- })();
1
+ /*
2
+ Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.html or http://ckeditor.com/license
4
+ */
5
+
6
+ (function()
7
+ {
8
+ var pxUnit = CKEDITOR.tools.cssLength,
9
+ needsIEHacks = CKEDITOR.env.ie && ( CKEDITOR.env.ie7Compat || CKEDITOR.env.quirks || CKEDITOR.env.version < 7 );
10
+
11
+ function getWidth( el )
12
+ {
13
+ return CKEDITOR.env.ie ? el.$.clientWidth : parseInt( el.getComputedStyle( 'width' ), 10 );
14
+ }
15
+
16
+ function getBorderWidth( element, side )
17
+ {
18
+ var computed = element.getComputedStyle( 'border-' + side + '-width' ),
19
+ borderMap =
20
+ {
21
+ thin: '0px',
22
+ medium: '1px',
23
+ thick: '2px'
24
+ };
25
+
26
+ if ( computed.indexOf( 'px' ) < 0 )
27
+ {
28
+ // look up keywords
29
+ if ( computed in borderMap && element.getComputedStyle( 'border-style' ) != 'none' )
30
+ computed = borderMap[ computed ];
31
+ else
32
+ computed = 0;
33
+ }
34
+
35
+ return parseInt( computed, 10 );
36
+ }
37
+
38
+ // Gets the table row that contains the most columns.
39
+ function getMasterPillarRow( table )
40
+ {
41
+ var $rows = table.$.rows,
42
+ maxCells = 0, cellsCount,
43
+ $elected, $tr;
44
+
45
+ for ( var i = 0, len = $rows.length ; i < len; i++ )
46
+ {
47
+ $tr = $rows[ i ];
48
+ cellsCount = $tr.cells.length;
49
+
50
+ if ( cellsCount > maxCells )
51
+ {
52
+ maxCells = cellsCount;
53
+ $elected = $tr;
54
+ }
55
+ }
56
+
57
+ return $elected;
58
+ }
59
+
60
+ function buildTableColumnPillars( table )
61
+ {
62
+ var pillars = [],
63
+ pillarIndex = -1,
64
+ rtl = ( table.getComputedStyle( 'direction' ) == 'rtl' );
65
+
66
+ // Get the raw row element that cointains the most columns.
67
+ var $tr = getMasterPillarRow( table );
68
+
69
+ // Get the tbody element and position, which will be used to set the
70
+ // top and bottom boundaries.
71
+ var tbody = new CKEDITOR.dom.element( table.$.tBodies[ 0 ] ),
72
+ tbodyPosition = tbody.getDocumentPosition();
73
+
74
+ // Loop thorugh all cells, building pillars after each one of them.
75
+ for ( var i = 0, len = $tr.cells.length ; i < len ; i++ )
76
+ {
77
+ // Both the current cell and the successive one will be used in the
78
+ // pillar size calculation.
79
+ var td = new CKEDITOR.dom.element( $tr.cells[ i ] ),
80
+ nextTd = $tr.cells[ i + 1 ] && new CKEDITOR.dom.element( $tr.cells[ i + 1 ] );
81
+
82
+ pillarIndex += td.$.colSpan || 1;
83
+
84
+ // Calculate the pillar boundary positions.
85
+ var pillarLeft, pillarRight, pillarWidth;
86
+
87
+ var x = td.getDocumentPosition().x;
88
+
89
+ // Calculate positions based on the current cell.
90
+ rtl ?
91
+ pillarRight = x + getBorderWidth( td, 'left' ) :
92
+ pillarLeft = x + td.$.offsetWidth - getBorderWidth( td, 'right' );
93
+
94
+ // Calculate positions based on the next cell, if available.
95
+ if ( nextTd )
96
+ {
97
+ x = nextTd.getDocumentPosition().x;
98
+
99
+ rtl ?
100
+ pillarLeft = x + nextTd.$.offsetWidth - getBorderWidth( nextTd, 'right' ) :
101
+ pillarRight = x + getBorderWidth( nextTd, 'left' );
102
+ }
103
+ // Otherwise calculate positions based on the table (for last cell).
104
+ else
105
+ {
106
+ x = table.getDocumentPosition().x;
107
+
108
+ rtl ?
109
+ pillarLeft = x :
110
+ pillarRight = x + table.$.offsetWidth;
111
+ }
112
+
113
+ pillarWidth = Math.max( pillarRight - pillarLeft, 3 );
114
+
115
+ // The pillar should reflects exactly the shape of the hovered
116
+ // column border line.
117
+ pillars.push( {
118
+ table : table,
119
+ index : pillarIndex,
120
+ x : pillarLeft,
121
+ y : tbodyPosition.y,
122
+ width : pillarWidth,
123
+ height : tbody.$.offsetHeight,
124
+ rtl : rtl } );
125
+ }
126
+
127
+ return pillars;
128
+ }
129
+
130
+ function getPillarAtPosition( pillars, positionX )
131
+ {
132
+ for ( var i = 0, len = pillars.length ; i < len ; i++ )
133
+ {
134
+ var pillar = pillars[ i ];
135
+
136
+ if ( positionX >= pillar.x && positionX <= ( pillar.x + pillar.width ) )
137
+ return pillar;
138
+ }
139
+
140
+ return null;
141
+ }
142
+
143
+ function cancel( evt )
144
+ {
145
+ ( evt.data || evt ).preventDefault();
146
+ }
147
+
148
+ function columnResizer( editor )
149
+ {
150
+ var pillar,
151
+ document,
152
+ resizer,
153
+ isResizing,
154
+ startOffset,
155
+ currentShift;
156
+
157
+ var leftSideCells, rightSideCells, leftShiftBoundary, rightShiftBoundary;
158
+
159
+ function detach()
160
+ {
161
+ pillar = null;
162
+ currentShift = 0;
163
+ isResizing = 0;
164
+
165
+ document.removeListener( 'mouseup', onMouseUp );
166
+ resizer.removeListener( 'mousedown', onMouseDown );
167
+ resizer.removeListener( 'mousemove', onMouseMove );
168
+
169
+ document.getBody().setStyle( 'cursor', 'auto' );
170
+
171
+ // Hide the resizer (remove it on IE7 - #5890).
172
+ needsIEHacks ? resizer.remove() : resizer.hide();
173
+ }
174
+
175
+ function resizeStart()
176
+ {
177
+ // Before starting to resize, figure out which cells to change
178
+ // and the boundaries of this resizing shift.
179
+
180
+ var columnIndex = pillar.index,
181
+ map = CKEDITOR.tools.buildTableMap( pillar.table ),
182
+ leftColumnCells = [],
183
+ rightColumnCells = [],
184
+ leftMinSize = Number.MAX_VALUE,
185
+ rightMinSize = leftMinSize,
186
+ rtl = pillar.rtl;
187
+
188
+ for ( var i = 0, len = map.length ; i < len ; i++ )
189
+ {
190
+ var row = map[ i ],
191
+ leftCell = row[ columnIndex + ( rtl ? 1 : 0 ) ],
192
+ rightCell = row[ columnIndex + ( rtl ? 0 : 1 ) ];
193
+
194
+ leftCell = leftCell && new CKEDITOR.dom.element( leftCell );
195
+ rightCell = rightCell && new CKEDITOR.dom.element( rightCell );
196
+
197
+ if ( !leftCell || !rightCell || !leftCell.equals( rightCell ) )
198
+ {
199
+ leftCell && ( leftMinSize = Math.min( leftMinSize, getWidth( leftCell ) ) );
200
+ rightCell && ( rightMinSize = Math.min( rightMinSize, getWidth( rightCell ) ) );
201
+
202
+ leftColumnCells.push( leftCell );
203
+ rightColumnCells.push( rightCell );
204
+ }
205
+ }
206
+
207
+ // Cache the list of cells to be resized.
208
+ leftSideCells = leftColumnCells;
209
+ rightSideCells = rightColumnCells;
210
+
211
+ // Cache the resize limit boundaries.
212
+ leftShiftBoundary = pillar.x - leftMinSize;
213
+ rightShiftBoundary = pillar.x + rightMinSize;
214
+
215
+ resizer.setOpacity( 0.5 );
216
+ startOffset = parseInt( resizer.getStyle( 'left' ), 10 );
217
+ currentShift = 0;
218
+ isResizing = 1;
219
+
220
+ resizer.on( 'mousemove', onMouseMove );
221
+
222
+ // Prevent the native drag behavior otherwise 'mousemove' won't fire.
223
+ document.on( 'dragstart', cancel );
224
+ }
225
+
226
+ function resizeEnd()
227
+ {
228
+ isResizing = 0;
229
+
230
+ resizer.setOpacity( 0 );
231
+
232
+ currentShift && resizeColumn();
233
+
234
+ var table = pillar.table;
235
+ setTimeout( function () { table.removeCustomData( '_cke_table_pillars' ); }, 0 );
236
+
237
+ document.removeListener( 'dragstart', cancel );
238
+ }
239
+
240
+ function resizeColumn()
241
+ {
242
+ var rtl = pillar.rtl,
243
+ cellsCount = rtl ? rightSideCells.length : leftSideCells.length;
244
+
245
+ // Perform the actual resize to table cells, only for those by side of the pillar.
246
+ for ( var i = 0 ; i < cellsCount ; i++ )
247
+ {
248
+ var leftCell = leftSideCells[ i ],
249
+ rightCell = rightSideCells[ i ],
250
+ table = pillar.table;
251
+
252
+ // Defer the resizing to avoid any interference among cells.
253
+ CKEDITOR.tools.setTimeout(
254
+ function( leftCell, leftOldWidth, rightCell, rightOldWidth, tableWidth, sizeShift )
255
+ {
256
+ leftCell && leftCell.setStyle( 'width', pxUnit( Math.max( leftOldWidth + sizeShift, 0 ) ) );
257
+ rightCell && rightCell.setStyle( 'width', pxUnit( Math.max( rightOldWidth - sizeShift, 0 ) ) );
258
+
259
+ // If we're in the last cell, we need to resize the table as well
260
+ if ( tableWidth )
261
+ table.setStyle( 'width', pxUnit( tableWidth + sizeShift * ( rtl ? -1 : 1 ) ) );
262
+ }
263
+ , 0,
264
+ this, [
265
+ leftCell, leftCell && getWidth( leftCell ),
266
+ rightCell, rightCell && getWidth( rightCell ),
267
+ ( !leftCell || !rightCell ) && ( getWidth( table ) + getBorderWidth( table, 'left' ) + getBorderWidth( table, 'right' ) ),
268
+ currentShift ] );
269
+ }
270
+ }
271
+
272
+ function onMouseDown( evt )
273
+ {
274
+ cancel( evt );
275
+
276
+ resizeStart();
277
+
278
+ document.on( 'mouseup', onMouseUp, this );
279
+ }
280
+
281
+ function onMouseUp( evt )
282
+ {
283
+ evt.removeListener();
284
+
285
+ resizeEnd();
286
+ }
287
+
288
+ function onMouseMove( evt )
289
+ {
290
+ move( evt.data.$.clientX );
291
+ }
292
+
293
+ document = editor.document;
294
+
295
+ resizer = CKEDITOR.dom.element.createFromHtml(
296
+ '<div data-cke-temp=1 contenteditable=false unselectable=on '+
297
+ 'style="position:absolute;cursor:col-resize;filter:alpha(opacity=0);opacity:0;' +
298
+ 'padding:0;background-color:#004;background-image:none;border:0px none;z-index:10"></div>', document );
299
+
300
+ // Except on IE6/7 (#5890), place the resizer after body to prevent it
301
+ // from being editable.
302
+ if ( !needsIEHacks )
303
+ document.getDocumentElement().append( resizer );
304
+
305
+ this.attachTo = function( targetPillar )
306
+ {
307
+ // Accept only one pillar at a time.
308
+ if ( isResizing )
309
+ return;
310
+
311
+ // On IE6/7, we append the resizer everytime we need it. (#5890)
312
+ if ( needsIEHacks )
313
+ {
314
+ document.getBody().append( resizer );
315
+ currentShift = 0;
316
+ }
317
+
318
+ pillar = targetPillar;
319
+
320
+ resizer.setStyles(
321
+ {
322
+ width: pxUnit( targetPillar.width ),
323
+ height : pxUnit( targetPillar.height ),
324
+ left : pxUnit( targetPillar.x ),
325
+ top : pxUnit( targetPillar.y )
326
+ });
327
+
328
+ // In IE6/7, it's not possible to have custom cursors for floating
329
+ // elements in an editable document. Show the resizer in that case,
330
+ // to give the user a visual clue.
331
+ needsIEHacks && resizer.setOpacity( 0.25 );
332
+
333
+ resizer.on( 'mousedown', onMouseDown, this );
334
+
335
+ document.getBody().setStyle( 'cursor', 'col-resize' );
336
+
337
+ // Display the resizer to receive events but don't show it,
338
+ // only change the cursor to resizable shape.
339
+ resizer.show();
340
+ };
341
+
342
+ var move = this.move = function( posX )
343
+ {
344
+ if ( !pillar )
345
+ return 0;
346
+
347
+ if ( !isResizing && ( posX < pillar.x || posX > ( pillar.x + pillar.width ) ) )
348
+ {
349
+ detach();
350
+ return 0;
351
+ }
352
+
353
+ var resizerNewPosition = posX - Math.round( resizer.$.offsetWidth / 2 );
354
+
355
+ if ( isResizing )
356
+ {
357
+ if ( resizerNewPosition == leftShiftBoundary || resizerNewPosition == rightShiftBoundary )
358
+ return 1;
359
+
360
+ resizerNewPosition = Math.max( resizerNewPosition, leftShiftBoundary );
361
+ resizerNewPosition = Math.min( resizerNewPosition, rightShiftBoundary );
362
+
363
+ currentShift = resizerNewPosition - startOffset;
364
+ }
365
+
366
+ resizer.setStyle( 'left', pxUnit( resizerNewPosition ) );
367
+
368
+ return 1;
369
+ };
370
+ }
371
+
372
+ function clearPillarsCache( evt )
373
+ {
374
+ var target = evt.data.getTarget();
375
+
376
+ if ( evt.name == 'mouseout' )
377
+ {
378
+ // Bypass interal mouse move.
379
+ if ( !target.is ( 'table' ) )
380
+ return;
381
+
382
+ var dest = new CKEDITOR.dom.element( evt.data.$.relatedTarget || evt.data.$.toElement );
383
+ while( dest && dest.$ && !dest.equals( target ) && !dest.is( 'body' ) )
384
+ dest = dest.getParent();
385
+ if ( !dest || dest.equals( target ) )
386
+ return;
387
+ }
388
+
389
+ target.getAscendant( 'table', 1 ).removeCustomData( '_cke_table_pillars' );
390
+ evt.removeListener();
391
+ }
392
+
393
+ CKEDITOR.plugins.add( 'tableresize',
394
+ {
395
+ requires : [ 'tabletools' ],
396
+ init : function( editor )
397
+ {
398
+ editor.on( 'contentDom', function()
399
+ {
400
+ var resizer;
401
+
402
+ editor.document.getBody().on( 'mousemove', function( evt )
403
+ {
404
+ evt = evt.data;
405
+
406
+ // If we're already attached to a pillar, simply move the
407
+ // resizer.
408
+ if ( resizer && resizer.move( evt.$.clientX ) )
409
+ {
410
+ cancel( evt );
411
+ return;
412
+ }
413
+
414
+ // Considering table, tr, td, tbody but nothing else.
415
+ var target = evt.getTarget(),
416
+ table,
417
+ pillars;
418
+
419
+ if ( !target.is( 'table' ) && !target.getAscendant( 'tbody', 1 ) )
420
+ return;
421
+
422
+ table = target.getAscendant( 'table', 1 );
423
+
424
+ if ( !( pillars = table.getCustomData( '_cke_table_pillars' ) ) )
425
+ {
426
+ // Cache table pillars calculation result.
427
+ table.setCustomData( '_cke_table_pillars', ( pillars = buildTableColumnPillars( table ) ) );
428
+ table.on( 'mouseout', clearPillarsCache );
429
+ table.on( 'mousedown', clearPillarsCache );
430
+ }
431
+
432
+ var pillar = getPillarAtPosition( pillars, evt.$.clientX );
433
+ if ( pillar )
434
+ {
435
+ !resizer && ( resizer = new columnResizer( editor ) );
436
+ resizer.attachTo( pillar );
437
+ }
438
+ });
439
+ });
440
+ }
441
+ });
442
+
443
+ })();