esp-ckeditor 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (340) hide show
  1. data/MIT-LICENSE +20 -0
  2. data/README.rdoc +32 -0
  3. data/Rakefile +28 -0
  4. data/app/assets/javascripts/esp-ckeditor/_source/core/_bootstrap.js +87 -0
  5. data/app/assets/javascripts/esp-ckeditor/_source/core/ckeditor.js +141 -0
  6. data/app/assets/javascripts/esp-ckeditor/_source/core/ckeditor_base.js +227 -0
  7. data/app/assets/javascripts/esp-ckeditor/_source/core/ckeditor_basic.js +238 -0
  8. data/app/assets/javascripts/esp-ckeditor/_source/core/command.js +209 -0
  9. data/app/assets/javascripts/esp-ckeditor/_source/core/commanddefinition.js +129 -0
  10. data/app/assets/javascripts/esp-ckeditor/_source/core/config.js +423 -0
  11. data/app/assets/javascripts/esp-ckeditor/_source/core/dataprocessor.js +65 -0
  12. data/app/assets/javascripts/esp-ckeditor/_source/core/dom/comment.js +32 -0
  13. data/app/assets/javascripts/esp-ckeditor/_source/core/dom/document.js +251 -0
  14. data/app/assets/javascripts/esp-ckeditor/_source/core/dom/documentfragment.js +49 -0
  15. data/app/assets/javascripts/esp-ckeditor/_source/core/dom/domobject.js +258 -0
  16. data/app/assets/javascripts/esp-ckeditor/_source/core/dom/element.js +1691 -0
  17. data/app/assets/javascripts/esp-ckeditor/_source/core/dom/elementpath.js +119 -0
  18. data/app/assets/javascripts/esp-ckeditor/_source/core/dom/event.js +145 -0
  19. data/app/assets/javascripts/esp-ckeditor/_source/core/dom/node.js +696 -0
  20. data/app/assets/javascripts/esp-ckeditor/_source/core/dom/nodelist.js +26 -0
  21. data/app/assets/javascripts/esp-ckeditor/_source/core/dom/range.js +2054 -0
  22. data/app/assets/javascripts/esp-ckeditor/_source/core/dom/rangelist.js +213 -0
  23. data/app/assets/javascripts/esp-ckeditor/_source/core/dom/text.js +128 -0
  24. data/app/assets/javascripts/esp-ckeditor/_source/core/dom/walker.js +462 -0
  25. data/app/assets/javascripts/esp-ckeditor/_source/core/dom/window.js +96 -0
  26. data/app/assets/javascripts/esp-ckeditor/_source/core/dom.js +20 -0
  27. data/app/assets/javascripts/esp-ckeditor/_source/core/dtd.js +266 -0
  28. data/app/assets/javascripts/esp-ckeditor/_source/core/editor.js +1060 -0
  29. data/app/assets/javascripts/esp-ckeditor/_source/core/editor_basic.js +186 -0
  30. data/app/assets/javascripts/esp-ckeditor/_source/core/env.js +305 -0
  31. data/app/assets/javascripts/esp-ckeditor/_source/core/event.js +342 -0
  32. data/app/assets/javascripts/esp-ckeditor/_source/core/eventInfo.js +120 -0
  33. data/app/assets/javascripts/esp-ckeditor/_source/core/focusmanager.js +152 -0
  34. data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser/basicwriter.js +145 -0
  35. data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser/cdata.js +43 -0
  36. data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser/comment.js +60 -0
  37. data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser/element.js +308 -0
  38. data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser/filter.js +288 -0
  39. data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser/fragment.js +518 -0
  40. data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser/text.js +53 -0
  41. data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser.js +224 -0
  42. data/app/assets/javascripts/esp-ckeditor/_source/core/lang.js +157 -0
  43. data/app/assets/javascripts/esp-ckeditor/_source/core/loader.js +240 -0
  44. data/app/assets/javascripts/esp-ckeditor/_source/core/plugindefinition.js +83 -0
  45. data/app/assets/javascripts/esp-ckeditor/_source/core/plugins.js +103 -0
  46. data/app/assets/javascripts/esp-ckeditor/_source/core/resourcemanager.js +238 -0
  47. data/app/assets/javascripts/esp-ckeditor/_source/core/scriptloader.js +180 -0
  48. data/app/assets/javascripts/esp-ckeditor/_source/core/skins.js +184 -0
  49. data/app/assets/javascripts/esp-ckeditor/_source/core/themes.js +19 -0
  50. data/app/assets/javascripts/esp-ckeditor/_source/core/tools.js +763 -0
  51. data/app/assets/javascripts/esp-ckeditor/_source/core/ui.js +128 -0
  52. data/app/assets/javascripts/esp-ckeditor/_source/lang/_languages.js +27 -0
  53. data/app/assets/javascripts/esp-ckeditor/_source/lang/en.js +815 -0
  54. data/app/assets/javascripts/esp-ckeditor/_source/lang/ru.js +815 -0
  55. data/app/assets/javascripts/esp-ckeditor/_source/plugins/a11yhelp/dialogs/a11yhelp.js +222 -0
  56. data/app/assets/javascripts/esp-ckeditor/_source/plugins/a11yhelp/lang/en.js +108 -0
  57. data/app/assets/javascripts/esp-ckeditor/_source/plugins/a11yhelp/lang/he.js +216 -0
  58. data/app/assets/javascripts/esp-ckeditor/_source/plugins/a11yhelp/plugin.js +47 -0
  59. data/app/assets/javascripts/esp-ckeditor/_source/plugins/basicstyles/plugin.js +129 -0
  60. data/app/assets/javascripts/esp-ckeditor/_source/plugins/button/plugin.js +290 -0
  61. data/app/assets/javascripts/esp-ckeditor/_source/plugins/clipboard/dialogs/paste.js +223 -0
  62. data/app/assets/javascripts/esp-ckeditor/_source/plugins/clipboard/plugin.js +453 -0
  63. data/app/assets/javascripts/esp-ckeditor/_source/plugins/contextmenu/plugin.js +179 -0
  64. data/app/assets/javascripts/esp-ckeditor/_source/plugins/dialog/dialogDefinition.js +1166 -0
  65. data/app/assets/javascripts/esp-ckeditor/_source/plugins/dialog/plugin.js +3308 -0
  66. data/app/assets/javascripts/esp-ckeditor/_source/plugins/dialogadvtab/plugin.js +208 -0
  67. data/app/assets/javascripts/esp-ckeditor/_source/plugins/dialogui/plugin.js +1541 -0
  68. data/app/assets/javascripts/esp-ckeditor/_source/plugins/domiterator/plugin.js +361 -0
  69. data/app/assets/javascripts/esp-ckeditor/_source/plugins/editingblock/plugin.js +278 -0
  70. data/app/assets/javascripts/esp-ckeditor/_source/plugins/elementspath/plugin.js +218 -0
  71. data/app/assets/javascripts/esp-ckeditor/_source/plugins/enterkey/plugin.js +433 -0
  72. data/app/assets/javascripts/esp-ckeditor/_source/plugins/entities/plugin.js +250 -0
  73. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_attachment/dialogs/esp_attachment.js +234 -0
  74. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_attachment/images/esp_attachment.png +0 -0
  75. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_attachment/lang/en.js +22 -0
  76. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_attachment/lang/ru.js +22 -0
  77. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_attachment/lang/uk.js +22 -0
  78. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_attachment/plugin.js +23 -0
  79. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_audio/dialogs/esp_audio.js +207 -0
  80. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_audio/images/esp_audio.png +0 -0
  81. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_audio/images/placeholder.png +0 -0
  82. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_audio/lang/en.js +18 -0
  83. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_audio/lang/ru.js +18 -0
  84. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_audio/lang/uk.js +18 -0
  85. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_audio/plugin.js +182 -0
  86. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_blockquote/dialogs/esp_blockquote.js +132 -0
  87. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_blockquote/plugin.js +235 -0
  88. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_image/dialogs/esp_image.js +1414 -0
  89. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_image/images/esp_image.png +0 -0
  90. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_image/lang/en.js +9 -0
  91. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_image/lang/ru.js +9 -0
  92. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_image/lang/uk.js +9 -0
  93. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_image/plugin.js +80 -0
  94. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/dialogs/esp_anchor.js +145 -0
  95. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/dialogs/esp_link.js +1396 -0
  96. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/images/anchor.png +0 -0
  97. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/images/esp_anchor.png +0 -0
  98. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/images/esp_link.png +0 -0
  99. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/images/esp_unlink.png +0 -0
  100. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/lang/en.js +8 -0
  101. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/lang/ru.js +8 -0
  102. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/lang/uk.js +8 -0
  103. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/plugin.js +379 -0
  104. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_address.png +0 -0
  105. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_blockquote.png +0 -0
  106. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_div.png +0 -0
  107. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_h1.png +0 -0
  108. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_h2.png +0 -0
  109. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_h3.png +0 -0
  110. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_h4.png +0 -0
  111. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_h5.png +0 -0
  112. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_h6.png +0 -0
  113. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_p.png +0 -0
  114. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_pre.png +0 -0
  115. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/esp_showblocks.png +0 -0
  116. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/plugin.js +163 -0
  117. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_video/dialogs/esp_video.js +277 -0
  118. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_video/images/esp_video.png +0 -0
  119. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_video/images/placeholder.png +0 -0
  120. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_video/lang/en.js +19 -0
  121. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_video/lang/ru.js +19 -0
  122. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_video/lang/uk.js +19 -0
  123. data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_video/plugin.js +182 -0
  124. data/app/assets/javascripts/esp-ckeditor/_source/plugins/fakeobjects/plugin.js +175 -0
  125. data/app/assets/javascripts/esp-ckeditor/_source/plugins/filebrowser/plugin.js +534 -0
  126. data/app/assets/javascripts/esp-ckeditor/_source/plugins/find/dialogs/find.js +915 -0
  127. data/app/assets/javascripts/esp-ckeditor/_source/plugins/find/plugin.js +47 -0
  128. data/app/assets/javascripts/esp-ckeditor/_source/plugins/floatpanel/plugin.js +428 -0
  129. data/app/assets/javascripts/esp-ckeditor/_source/plugins/format/plugin.js +197 -0
  130. data/app/assets/javascripts/esp-ckeditor/_source/plugins/htmldataprocessor/plugin.js +596 -0
  131. data/app/assets/javascripts/esp-ckeditor/_source/plugins/htmlwriter/plugin.js +319 -0
  132. data/app/assets/javascripts/esp-ckeditor/_source/plugins/image/dialogs/image.js +1407 -0
  133. data/app/assets/javascripts/esp-ckeditor/_source/plugins/image/plugin.js +81 -0
  134. data/app/assets/javascripts/esp-ckeditor/_source/plugins/indent/plugin.js +461 -0
  135. data/app/assets/javascripts/esp-ckeditor/_source/plugins/justify/plugin.js +253 -0
  136. data/app/assets/javascripts/esp-ckeditor/_source/plugins/keystrokes/plugin.js +225 -0
  137. data/app/assets/javascripts/esp-ckeditor/_source/plugins/list/plugin.js +774 -0
  138. data/app/assets/javascripts/esp-ckeditor/_source/plugins/listblock/plugin.js +266 -0
  139. data/app/assets/javascripts/esp-ckeditor/_source/plugins/liststyle/dialogs/liststyle.js +225 -0
  140. data/app/assets/javascripts/esp-ckeditor/_source/plugins/liststyle/plugin.js +66 -0
  141. data/app/assets/javascripts/esp-ckeditor/_source/plugins/maximize/plugin.js +353 -0
  142. data/app/assets/javascripts/esp-ckeditor/_source/plugins/menu/plugin.js +541 -0
  143. data/app/assets/javascripts/esp-ckeditor/_source/plugins/panel/plugin.js +400 -0
  144. data/app/assets/javascripts/esp-ckeditor/_source/plugins/pastefromword/filter/default.js +1367 -0
  145. data/app/assets/javascripts/esp-ckeditor/_source/plugins/pastefromword/plugin.js +141 -0
  146. data/app/assets/javascripts/esp-ckeditor/_source/plugins/pastetext/dialogs/pastetext.js +67 -0
  147. data/app/assets/javascripts/esp-ckeditor/_source/plugins/pastetext/plugin.js +98 -0
  148. data/app/assets/javascripts/esp-ckeditor/_source/plugins/popup/plugin.js +64 -0
  149. data/app/assets/javascripts/esp-ckeditor/_source/plugins/removeformat/plugin.js +185 -0
  150. data/app/assets/javascripts/esp-ckeditor/_source/plugins/resize/plugin.js +168 -0
  151. data/app/assets/javascripts/esp-ckeditor/_source/plugins/richcombo/plugin.js +381 -0
  152. data/app/assets/javascripts/esp-ckeditor/_source/plugins/selection/plugin.js +1729 -0
  153. data/app/assets/javascripts/esp-ckeditor/_source/plugins/showborders/plugin.js +207 -0
  154. data/app/assets/javascripts/esp-ckeditor/_source/plugins/sourcearea/plugin.js +209 -0
  155. data/app/assets/javascripts/esp-ckeditor/_source/plugins/styles/plugin.js +1700 -0
  156. data/app/assets/javascripts/esp-ckeditor/_source/plugins/styles/styles/default.js +88 -0
  157. data/app/assets/javascripts/esp-ckeditor/_source/plugins/stylescombo/plugin.js +218 -0
  158. data/app/assets/javascripts/esp-ckeditor/_source/plugins/tab/plugin.js +367 -0
  159. data/app/assets/javascripts/esp-ckeditor/_source/plugins/table/dialogs/table.js +623 -0
  160. data/app/assets/javascripts/esp-ckeditor/_source/plugins/table/plugin.js +78 -0
  161. data/app/assets/javascripts/esp-ckeditor/_source/plugins/tabletools/dialogs/tableCell.js +525 -0
  162. data/app/assets/javascripts/esp-ckeditor/_source/plugins/tabletools/plugin.js +1194 -0
  163. data/app/assets/javascripts/esp-ckeditor/_source/plugins/toolbar/plugin.js +545 -0
  164. data/app/assets/javascripts/esp-ckeditor/_source/plugins/undo/plugin.js +578 -0
  165. data/app/assets/javascripts/esp-ckeditor/_source/plugins/wysiwygarea/plugin.js +1347 -0
  166. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/dialog.css +988 -0
  167. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/editor.css +25 -0
  168. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/elementspath.css +73 -0
  169. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/icons.css +367 -0
  170. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/icons.png +0 -0
  171. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/icons_rtl.png +0 -0
  172. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/dialog_sides.gif +0 -0
  173. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/dialog_sides.png +0 -0
  174. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/dialog_sides_rtl.png +0 -0
  175. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/mini.gif +0 -0
  176. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/noimage.png +0 -0
  177. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/sprites.png +0 -0
  178. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/sprites_ie6.png +0 -0
  179. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/toolbar_start.gif +0 -0
  180. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/mainui.css +209 -0
  181. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/menu.css +232 -0
  182. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/panel.css +227 -0
  183. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/presets.css +49 -0
  184. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/reset.css +85 -0
  185. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/richcombo.css +287 -0
  186. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/skin.js +236 -0
  187. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/templates.css +88 -0
  188. data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/toolbar.css +412 -0
  189. data/app/assets/javascripts/esp-ckeditor/_source/themes/default/theme.js +407 -0
  190. data/app/assets/javascripts/esp-ckeditor/application.js +8 -0
  191. data/app/assets/javascripts/esp-ckeditor/ckeditor.js +137 -0
  192. data/app/assets/javascripts/esp-ckeditor/ckeditor.pack +194 -0
  193. data/app/assets/javascripts/esp-ckeditor/ckeditor_source.js +35 -0
  194. data/app/assets/javascripts/esp-ckeditor/ckpackager.jar +0 -0
  195. data/app/assets/javascripts/esp-ckeditor/ckpackager.txt +2 -0
  196. data/app/assets/javascripts/esp-ckeditor/config.js +147 -0
  197. data/app/assets/javascripts/esp-ckeditor/contents.css +38 -0
  198. data/app/assets/javascripts/esp-ckeditor/images/spacer.gif +0 -0
  199. data/app/assets/javascripts/esp-ckeditor/init_ckeditor.js +1 -0
  200. data/app/assets/javascripts/esp-ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +1 -0
  201. data/app/assets/javascripts/esp-ckeditor/plugins/a11yhelp/lang/en.js +1 -0
  202. data/app/assets/javascripts/esp-ckeditor/plugins/a11yhelp/lang/he.js +1 -0
  203. data/app/assets/javascripts/esp-ckeditor/plugins/a11yhelp/plugin.js +1 -0
  204. data/app/assets/javascripts/esp-ckeditor/plugins/basicstyles/plugin.js +1 -0
  205. data/app/assets/javascripts/esp-ckeditor/plugins/button/plugin.js +1 -0
  206. data/app/assets/javascripts/esp-ckeditor/plugins/clipboard/dialogs/paste.js +1 -0
  207. data/app/assets/javascripts/esp-ckeditor/plugins/clipboard/plugin.js +1 -0
  208. data/app/assets/javascripts/esp-ckeditor/plugins/contextmenu/plugin.js +1 -0
  209. data/app/assets/javascripts/esp-ckeditor/plugins/dialog/dialogDefinition.js +0 -0
  210. data/app/assets/javascripts/esp-ckeditor/plugins/dialog/plugin.js +1 -0
  211. data/app/assets/javascripts/esp-ckeditor/plugins/dialogadvtab/plugin.js +1 -0
  212. data/app/assets/javascripts/esp-ckeditor/plugins/dialogui/plugin.js +1 -0
  213. data/app/assets/javascripts/esp-ckeditor/plugins/domiterator/plugin.js +1 -0
  214. data/app/assets/javascripts/esp-ckeditor/plugins/editingblock/plugin.js +1 -0
  215. data/app/assets/javascripts/esp-ckeditor/plugins/elementspath/plugin.js +1 -0
  216. data/app/assets/javascripts/esp-ckeditor/plugins/enterkey/plugin.js +1 -0
  217. data/app/assets/javascripts/esp-ckeditor/plugins/entities/plugin.js +1 -0
  218. data/app/assets/javascripts/esp-ckeditor/plugins/esp_attachment/dialogs/esp_attachment.js +1 -0
  219. data/app/assets/javascripts/esp-ckeditor/plugins/esp_attachment/images/esp_attachment.png +0 -0
  220. data/app/assets/javascripts/esp-ckeditor/plugins/esp_attachment/lang/en.js +1 -0
  221. data/app/assets/javascripts/esp-ckeditor/plugins/esp_attachment/lang/ru.js +1 -0
  222. data/app/assets/javascripts/esp-ckeditor/plugins/esp_attachment/lang/uk.js +1 -0
  223. data/app/assets/javascripts/esp-ckeditor/plugins/esp_attachment/plugin.js +1 -0
  224. data/app/assets/javascripts/esp-ckeditor/plugins/esp_audio/dialogs/esp_audio.js +1 -0
  225. data/app/assets/javascripts/esp-ckeditor/plugins/esp_audio/images/esp_audio.png +0 -0
  226. data/app/assets/javascripts/esp-ckeditor/plugins/esp_audio/images/placeholder.png +0 -0
  227. data/app/assets/javascripts/esp-ckeditor/plugins/esp_audio/lang/en.js +1 -0
  228. data/app/assets/javascripts/esp-ckeditor/plugins/esp_audio/lang/ru.js +1 -0
  229. data/app/assets/javascripts/esp-ckeditor/plugins/esp_audio/lang/uk.js +1 -0
  230. data/app/assets/javascripts/esp-ckeditor/plugins/esp_audio/plugin.js +1 -0
  231. data/app/assets/javascripts/esp-ckeditor/plugins/esp_blockquote/dialogs/esp_blockquote.js +1 -0
  232. data/app/assets/javascripts/esp-ckeditor/plugins/esp_blockquote/plugin.js +1 -0
  233. data/app/assets/javascripts/esp-ckeditor/plugins/esp_image/dialogs/esp_image.js +1 -0
  234. data/app/assets/javascripts/esp-ckeditor/plugins/esp_image/images/esp_image.png +0 -0
  235. data/app/assets/javascripts/esp-ckeditor/plugins/esp_image/lang/en.js +1 -0
  236. data/app/assets/javascripts/esp-ckeditor/plugins/esp_image/lang/ru.js +1 -0
  237. data/app/assets/javascripts/esp-ckeditor/plugins/esp_image/lang/uk.js +1 -0
  238. data/app/assets/javascripts/esp-ckeditor/plugins/esp_image/plugin.js +1 -0
  239. data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/dialogs/esp_anchor.js +1 -0
  240. data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/dialogs/esp_link.js +1 -0
  241. data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/images/anchor.png +0 -0
  242. data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/images/esp_anchor.png +0 -0
  243. data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/images/esp_link.png +0 -0
  244. data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/images/esp_unlink.png +0 -0
  245. data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/lang/en.js +1 -0
  246. data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/lang/ru.js +1 -0
  247. data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/lang/uk.js +1 -0
  248. data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/plugin.js +1 -0
  249. data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_address.png +0 -0
  250. data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_blockquote.png +0 -0
  251. data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_div.png +0 -0
  252. data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_h1.png +0 -0
  253. data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_h2.png +0 -0
  254. data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_h3.png +0 -0
  255. data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_h4.png +0 -0
  256. data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_h5.png +0 -0
  257. data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_h6.png +0 -0
  258. data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_p.png +0 -0
  259. data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_pre.png +0 -0
  260. data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/esp_showblocks.png +0 -0
  261. data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/plugin.js +1 -0
  262. data/app/assets/javascripts/esp-ckeditor/plugins/esp_video/dialogs/esp_video.js +1 -0
  263. data/app/assets/javascripts/esp-ckeditor/plugins/esp_video/images/esp_video.png +0 -0
  264. data/app/assets/javascripts/esp-ckeditor/plugins/esp_video/images/placeholder.png +0 -0
  265. data/app/assets/javascripts/esp-ckeditor/plugins/esp_video/lang/en.js +1 -0
  266. data/app/assets/javascripts/esp-ckeditor/plugins/esp_video/lang/ru.js +1 -0
  267. data/app/assets/javascripts/esp-ckeditor/plugins/esp_video/lang/uk.js +1 -0
  268. data/app/assets/javascripts/esp-ckeditor/plugins/esp_video/plugin.js +1 -0
  269. data/app/assets/javascripts/esp-ckeditor/plugins/fakeobjects/plugin.js +1 -0
  270. data/app/assets/javascripts/esp-ckeditor/plugins/filebrowser/plugin.js +1 -0
  271. data/app/assets/javascripts/esp-ckeditor/plugins/find/dialogs/find.js +1 -0
  272. data/app/assets/javascripts/esp-ckeditor/plugins/find/plugin.js +1 -0
  273. data/app/assets/javascripts/esp-ckeditor/plugins/floatpanel/plugin.js +1 -0
  274. data/app/assets/javascripts/esp-ckeditor/plugins/format/plugin.js +1 -0
  275. data/app/assets/javascripts/esp-ckeditor/plugins/htmldataprocessor/plugin.js +1 -0
  276. data/app/assets/javascripts/esp-ckeditor/plugins/htmlwriter/plugin.js +1 -0
  277. data/app/assets/javascripts/esp-ckeditor/plugins/image/dialogs/image.js +1 -0
  278. data/app/assets/javascripts/esp-ckeditor/plugins/image/plugin.js +1 -0
  279. data/app/assets/javascripts/esp-ckeditor/plugins/indent/plugin.js +1 -0
  280. data/app/assets/javascripts/esp-ckeditor/plugins/justify/plugin.js +1 -0
  281. data/app/assets/javascripts/esp-ckeditor/plugins/keystrokes/plugin.js +1 -0
  282. data/app/assets/javascripts/esp-ckeditor/plugins/list/plugin.js +1 -0
  283. data/app/assets/javascripts/esp-ckeditor/plugins/listblock/plugin.js +1 -0
  284. data/app/assets/javascripts/esp-ckeditor/plugins/liststyle/dialogs/liststyle.js +1 -0
  285. data/app/assets/javascripts/esp-ckeditor/plugins/liststyle/plugin.js +1 -0
  286. data/app/assets/javascripts/esp-ckeditor/plugins/maximize/plugin.js +1 -0
  287. data/app/assets/javascripts/esp-ckeditor/plugins/menu/plugin.js +1 -0
  288. data/app/assets/javascripts/esp-ckeditor/plugins/panel/plugin.js +1 -0
  289. data/app/assets/javascripts/esp-ckeditor/plugins/pastefromword/filter/default.js +1 -0
  290. data/app/assets/javascripts/esp-ckeditor/plugins/pastefromword/plugin.js +1 -0
  291. data/app/assets/javascripts/esp-ckeditor/plugins/pastetext/dialogs/pastetext.js +1 -0
  292. data/app/assets/javascripts/esp-ckeditor/plugins/pastetext/plugin.js +1 -0
  293. data/app/assets/javascripts/esp-ckeditor/plugins/popup/plugin.js +1 -0
  294. data/app/assets/javascripts/esp-ckeditor/plugins/removeformat/plugin.js +1 -0
  295. data/app/assets/javascripts/esp-ckeditor/plugins/resize/plugin.js +1 -0
  296. data/app/assets/javascripts/esp-ckeditor/plugins/richcombo/plugin.js +1 -0
  297. data/app/assets/javascripts/esp-ckeditor/plugins/selection/plugin.js +1 -0
  298. data/app/assets/javascripts/esp-ckeditor/plugins/showborders/plugin.js +1 -0
  299. data/app/assets/javascripts/esp-ckeditor/plugins/sourcearea/plugin.js +1 -0
  300. data/app/assets/javascripts/esp-ckeditor/plugins/styles/plugin.js +1 -0
  301. data/app/assets/javascripts/esp-ckeditor/plugins/styles/styles/default.js +1 -0
  302. data/app/assets/javascripts/esp-ckeditor/plugins/stylescombo/plugin.js +1 -0
  303. data/app/assets/javascripts/esp-ckeditor/plugins/tab/plugin.js +1 -0
  304. data/app/assets/javascripts/esp-ckeditor/plugins/table/dialogs/table.js +1 -0
  305. data/app/assets/javascripts/esp-ckeditor/plugins/table/plugin.js +1 -0
  306. data/app/assets/javascripts/esp-ckeditor/plugins/tabletools/dialogs/tableCell.js +1 -0
  307. data/app/assets/javascripts/esp-ckeditor/plugins/tabletools/plugin.js +1 -0
  308. data/app/assets/javascripts/esp-ckeditor/plugins/toolbar/plugin.js +1 -0
  309. data/app/assets/javascripts/esp-ckeditor/plugins/undo/plugin.js +1 -0
  310. data/app/assets/javascripts/esp-ckeditor/plugins/wysiwygarea/plugin.js +1 -0
  311. data/app/assets/javascripts/esp-ckeditor/skins/kama/dialog.css +988 -0
  312. data/app/assets/javascripts/esp-ckeditor/skins/kama/editor.css +25 -0
  313. data/app/assets/javascripts/esp-ckeditor/skins/kama/elementspath.css +73 -0
  314. data/app/assets/javascripts/esp-ckeditor/skins/kama/icons.css +367 -0
  315. data/app/assets/javascripts/esp-ckeditor/skins/kama/icons.png +0 -0
  316. data/app/assets/javascripts/esp-ckeditor/skins/kama/icons_rtl.png +0 -0
  317. data/app/assets/javascripts/esp-ckeditor/skins/kama/images/dialog_sides.gif +0 -0
  318. data/app/assets/javascripts/esp-ckeditor/skins/kama/images/dialog_sides.png +0 -0
  319. data/app/assets/javascripts/esp-ckeditor/skins/kama/images/dialog_sides_rtl.png +0 -0
  320. data/app/assets/javascripts/esp-ckeditor/skins/kama/images/mini.gif +0 -0
  321. data/app/assets/javascripts/esp-ckeditor/skins/kama/images/noimage.png +0 -0
  322. data/app/assets/javascripts/esp-ckeditor/skins/kama/images/sprites.png +0 -0
  323. data/app/assets/javascripts/esp-ckeditor/skins/kama/images/sprites_ie6.png +0 -0
  324. data/app/assets/javascripts/esp-ckeditor/skins/kama/images/toolbar_start.gif +0 -0
  325. data/app/assets/javascripts/esp-ckeditor/skins/kama/mainui.css +209 -0
  326. data/app/assets/javascripts/esp-ckeditor/skins/kama/menu.css +232 -0
  327. data/app/assets/javascripts/esp-ckeditor/skins/kama/panel.css +227 -0
  328. data/app/assets/javascripts/esp-ckeditor/skins/kama/presets.css +49 -0
  329. data/app/assets/javascripts/esp-ckeditor/skins/kama/reset.css +85 -0
  330. data/app/assets/javascripts/esp-ckeditor/skins/kama/richcombo.css +287 -0
  331. data/app/assets/javascripts/esp-ckeditor/skins/kama/skin.js +236 -0
  332. data/app/assets/javascripts/esp-ckeditor/skins/kama/templates.css +88 -0
  333. data/app/assets/javascripts/esp-ckeditor/skins/kama/toolbar.css +412 -0
  334. data/app/inputs/ckeditor_input.rb +42 -0
  335. data/config/routes.rb +2 -0
  336. data/lib/esp-ckeditor/engine.rb +9 -0
  337. data/lib/esp-ckeditor/version.rb +3 -0
  338. data/lib/esp-ckeditor.rb +17 -0
  339. data/lib/tasks/esp-ckeditor_tasks.rake +4 -0
  340. metadata +434 -0
@@ -0,0 +1,194 @@
1
+ /*
2
+ * CKPackager - Sample Package file
3
+ */
4
+
5
+ header :
6
+ '/*' + '\n' +
7
+ 'Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.' + '\n' +
8
+ 'For licensing, see LICENSE.html or http://ckeditor.com/license' + '\n' +
9
+ '*/' + '\n' +
10
+ '\n',
11
+
12
+ noCheck : false,
13
+
14
+ constants :
15
+ {
16
+ 'CKEDITOR.ELEMENT_MODE_NONE' : 0,
17
+ 'CKEDITOR.ELEMENT_MODE_REPLACE' : 1,
18
+ 'CKEDITOR.ELEMENT_MODE_APPENDTO' : 2,
19
+ 'CKEDITOR.CTRL' : 0x110000,
20
+ 'CKEDITOR.SHIFT' : 0x220000,
21
+ 'CKEDITOR.ALT' : 0x440000,
22
+ 'CKEDITOR.NODE_ELEMENT' : 1,
23
+ 'CKEDITOR.NODE_DOCUMENT' : 9,
24
+ 'CKEDITOR.NODE_TEXT' : 3,
25
+ 'CKEDITOR.NODE_COMMENT' : 8,
26
+ 'CKEDITOR.NODE_DOCUMENT_FRAGMENT' : 11,
27
+ 'CKEDITOR.POSITION_IDENTICAL' : 0,
28
+ 'CKEDITOR.POSITION_DISCONNECTED' : 1,
29
+ 'CKEDITOR.POSITION_FOLLOWING' : 2,
30
+ 'CKEDITOR.POSITION_PRECEDING' : 4,
31
+ 'CKEDITOR.POSITION_IS_CONTAINED' : 8,
32
+ 'CKEDITOR.POSITION_CONTAINS' : 16,
33
+ 'CKEDITOR.ENTER_P' : 1,
34
+ 'CKEDITOR.ENTER_BR' : 2,
35
+ 'CKEDITOR.ENTER_DIV' : 3,
36
+ 'CKEDITOR.TRISTATE_ON' : 1,
37
+ 'CKEDITOR.TRISTATE_OFF' : 2,
38
+ 'CKEDITOR.TRISTATE_DISABLED' : 0,
39
+ 'CKEDITOR.POSITION_AFTER_START' : 1,
40
+ 'CKEDITOR.POSITION_BEFORE_END' : 2,
41
+ 'CKEDITOR.POSITION_BEFORE_START' : 3,
42
+ 'CKEDITOR.POSITION_AFTER_END' : 4,
43
+ 'CKEDITOR.ENLARGE_ELEMENT' : 1,
44
+ 'CKEDITOR.ENLARGE_BLOCK_CONTENTS' : 2,
45
+ 'CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS' : 3,
46
+ 'CKEDITOR.START' : 1,
47
+ 'CKEDITOR.END' : 2,
48
+ 'CKEDITOR.STARTEND' : 3,
49
+ 'CKEDITOR.SHRINK_ELEMENT' : 1,
50
+ 'CKEDITOR.SHRINK_TEXT' : 2,
51
+ 'CKEDITOR.UI_BUTTON' : '\'button\'',
52
+ 'CKEDITOR.DIALOG_RESIZE_NONE' : 0,
53
+ 'CKEDITOR.DIALOG_RESIZE_WIDTH' : 1,
54
+ 'CKEDITOR.DIALOG_RESIZE_HEIGHT' : 2,
55
+ 'CKEDITOR.DIALOG_RESIZE_BOTH' : 3,
56
+ 'CKEDITOR.VALIDATE_OR' : 1,
57
+ 'CKEDITOR.VALIDATE_AND' : 2,
58
+ 'CKEDITOR.STYLE_BLOCK' : 1,
59
+ 'CKEDITOR.STYLE_INLINE' : 2,
60
+ 'CKEDITOR.STYLE_OBJECT' : 3,
61
+ 'CKEDITOR.UI_PANELBUTTON' : '\'panelbutton\'',
62
+ 'CKEDITOR.SELECTION_NONE' : 1,
63
+ 'CKEDITOR.SELECTION_TEXT' : 2,
64
+ 'CKEDITOR.SELECTION_ELEMENT' : 3,
65
+ 'CKEDITOR.UI_RICHCOMBO' : '\'richcombo\'',
66
+ 'CKEDITOR.UI_MENUBUTTON' : '\'menubutton\'',
67
+ 'CKEDITOR.UI_PANEL' : '\'panel\''
68
+ },
69
+
70
+ packages :
71
+ [
72
+ {
73
+ output : 'ckeditor.js',
74
+ wrap : true,
75
+ files :
76
+ [
77
+ '_source/core/ckeditor_base.js',
78
+ '_source/core/event.js',
79
+ '_source/core/editor_basic.js',
80
+ '_source/core/env.js',
81
+ '_source/core/ckeditor_basic.js',
82
+ '_source/core/dom.js',
83
+ '_source/core/tools.js',
84
+ '_source/core/dtd.js',
85
+ '_source/core/dom/event.js',
86
+ '_source/core/dom/domobject.js',
87
+ '_source/core/dom/window.js',
88
+ '_source/core/dom/document.js',
89
+ '_source/core/dom/node.js',
90
+ '_source/core/dom/nodelist.js',
91
+ '_source/core/dom/element.js',
92
+ '_source/core/command.js',
93
+ '_source/core/config.js',
94
+ '_source/core/focusmanager.js',
95
+ '_source/core/lang.js',
96
+ '_source/core/scriptloader.js',
97
+ '_source/core/resourcemanager.js',
98
+ '_source/core/plugins.js',
99
+ '_source/core/skins.js',
100
+ '_source/core/themes.js',
101
+ '_source/core/ui.js',
102
+ '_source/core/editor.js',
103
+ '_source/core/htmlparser.js',
104
+ '_source/core/htmlparser/comment.js',
105
+ '_source/core/htmlparser/text.js',
106
+ '_source/core/htmlparser/cdata.js',
107
+ '_source/core/htmlparser/fragment.js',
108
+ '_source/core/htmlparser/element.js',
109
+ '_source/core/htmlparser/filter.js',
110
+ '_source/core/htmlparser/basicwriter.js',
111
+ '_source/core/ckeditor.js',
112
+ '_source/core/dom/comment.js',
113
+ '_source/core/dom/elementpath.js',
114
+ '_source/core/dom/text.js',
115
+ '_source/core/dom/documentfragment.js',
116
+ '_source/core/dom/walker.js',
117
+ '_source/core/dom/range.js',
118
+ '_source/core/dom/rangelist.js',
119
+ '_source/core/_bootstrap.js',
120
+
121
+ '_source/skins/kama/skin.js',
122
+
123
+ '_source/lang/en.js',
124
+ '_source/lang/ru.js',
125
+
126
+ '_source/plugins/a11yhelp/plugin.js',
127
+ '_source/plugins/basicstyles/plugin.js',
128
+ '_source/plugins/button/plugin.js',
129
+ '_source/plugins/clipboard/plugin.js',
130
+ '_source/plugins/contextmenu/plugin.js',
131
+ '_source/plugins/dialog/plugin.js',
132
+ '_source/plugins/dialogadvtab/plugin.js',
133
+ '_source/plugins/dialogui/plugin.js',
134
+ '_source/plugins/domiterator/plugin.js',
135
+ '_source/plugins/editingblock/plugin.js',
136
+ '_source/plugins/elementspath/plugin.js',
137
+ '_source/plugins/enterkey/plugin.js',
138
+ '_source/plugins/entities/plugin.js',
139
+ '_source/plugins/esp_attachment/plugin.js',
140
+ '_source/plugins/esp_attachment/lang/en.js',
141
+ '_source/plugins/esp_attachment/lang/ru.js',
142
+ '_source/plugins/esp_audio/plugin.js',
143
+ '_source/plugins/esp_audio/lang/en.js',
144
+ '_source/plugins/esp_audio/lang/ru.js',
145
+ '_source/plugins/esp_blockquote/plugin.js',
146
+ '_source/plugins/esp_image/plugin.js',
147
+ '_source/plugins/esp_image/lang/en.js',
148
+ '_source/plugins/esp_image/lang/ru.js',
149
+ '_source/plugins/esp_link/plugin.js',
150
+ '_source/plugins/esp_link/lang/en.js',
151
+ '_source/plugins/esp_link/lang/ru.js',
152
+ '_source/plugins/esp_showblocks/plugin.js',
153
+ '_source/plugins/esp_video/plugin.js',
154
+ '_source/plugins/esp_video/lang/en.js',
155
+ '_source/plugins/esp_video/lang/ru.js',
156
+ '_source/plugins/fakeobjects/plugin.js',
157
+ '_source/plugins/filebrowser/plugin.js',
158
+ '_source/plugins/find/plugin.js',
159
+ '_source/plugins/floatpanel/plugin.js',
160
+ '_source/plugins/format/plugin.js',
161
+ '_source/plugins/htmldataprocessor/plugin.js',
162
+ '_source/plugins/htmlwriter/plugin.js',
163
+ '_source/plugins/image/plugin.js',
164
+ '_source/plugins/indent/plugin.js',
165
+ '_source/plugins/justify/plugin.js',
166
+ '_source/plugins/keystrokes/plugin.js',
167
+ '_source/plugins/list/plugin.js',
168
+ '_source/plugins/listblock/plugin.js',
169
+ '_source/plugins/liststyle/plugin.js',
170
+ '_source/plugins/maximize/plugin.js',
171
+ '_source/plugins/menu/plugin.js',
172
+ '_source/plugins/panel/plugin.js',
173
+ '_source/plugins/pastefromword/plugin.js',
174
+ '_source/plugins/pastetext/plugin.js',
175
+ '_source/plugins/popup/plugin.js',
176
+ '_source/plugins/removeformat/plugin.js',
177
+ '_source/plugins/resize/plugin.js',
178
+ '_source/plugins/richcombo/plugin.js',
179
+ '_source/plugins/selection/plugin.js',
180
+ '_source/plugins/showborders/plugin.js',
181
+ '_source/plugins/sourcearea/plugin.js',
182
+ '_source/plugins/styles/plugin.js',
183
+ '_source/plugins/tab/plugin.js',
184
+ '_source/plugins/table/plugin.js',
185
+ '_source/plugins/tabletools/plugin.js',
186
+ '_source/plugins/toolbar/plugin.js',
187
+ '_source/plugins/undo/plugin.js',
188
+ '_source/plugins/wysiwygarea/plugin.js',
189
+
190
+ '_source/themes/default/theme.js'
191
+ ]
192
+ }
193
+
194
+ ]
@@ -0,0 +1,35 @@
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
+ // Compressed version of core/ckeditor_base.js. See original for instructions.
7
+ /*jsl:ignore*/
8
+ if(!window.CKEDITOR)window.CKEDITOR=(function(){var a={timestamp:'',version:'3.6.2',revision:'7275',_:{},status:'unloaded',basePath:(function(){var d=window.CKEDITOR_BASEPATH||'';if(!d){var e=document.getElementsByTagName('script');for(var f=0;f<e.length;f++){var g=e[f].src.match(/(^|.*[\\\/])ckeditor(?:_basic)?(?:_source)?.js(?:\?.*)?$/i);if(g){d=g[1];break;}}}if(d.indexOf(':/')==-1)if(d.indexOf('/')===0)d=location.href.match(/^.*?:\/\/[^\/]*/)[0]+d;else d=location.href.match(/^[^\?]*\/(?:)/)[0]+d;return d;})(),getUrl:function(d){if(d.indexOf(':/')==-1&&d.indexOf('/')!==0)d=this.basePath+d;if(this.timestamp&&d.charAt(d.length-1)!='/')d+=(d.indexOf('?')>=0?'&':'?')+('t=')+this.timestamp;return d;}},b=window.CKEDITOR_GETURL;if(b){var c=a.getUrl;a.getUrl=function(d){return b.call(a,d)||c.call(a,d);};}return a;})();
9
+ /*jsl:end*/
10
+
11
+ // Uncomment the following line to have a new timestamp generated for each
12
+ // request, having clear cache load of the editor code.
13
+ // CKEDITOR.timestamp = ( new Date() ).valueOf();
14
+
15
+ if ( CKEDITOR.loader )
16
+ CKEDITOR.loader.load( 'core/ckeditor' );
17
+ else
18
+ {
19
+ // Set the script name to be loaded by the loader.
20
+ CKEDITOR._autoLoad = 'core/ckeditor';
21
+
22
+ // Include the loader script.
23
+ if ( document.body && (!document.readyState || document.readyState == 'complete') )
24
+ {
25
+ var script = document.createElement( 'script' );
26
+ script.type = 'text/javascript';
27
+ script.src = CKEDITOR.getUrl( '_source/core/loader.js' );
28
+ document.body.appendChild( script );
29
+ }
30
+ else
31
+ {
32
+ document.write(
33
+ '<script type="text/javascript" src="' + CKEDITOR.getUrl( '_source/core/loader.js' ) + '"></script>' );
34
+ }
35
+ }
@@ -0,0 +1,2 @@
1
+ Для регенерации пожатых файлов ckeditor.js и ckeditor_basic.js выполняем команду
2
+ java -jar ckpackager.jar ckeditor.pack
@@ -0,0 +1,147 @@
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.editorConfig = function( config )
7
+ {
8
+ // Define changes to default configuration here. For example:
9
+ // config.language = 'fr';
10
+ // config.uiColor = '#AADC6E';
11
+
12
+ config.fillEmptyBlocks = false;
13
+
14
+ config.disableNativeSpellChecker = false;
15
+
16
+ config.baseFloatZIndex = 1000000;
17
+
18
+ config.startupOutlineBlocks = true;
19
+
20
+ /* Filebrowser routes */
21
+ // The location of an external file browser, that should be launched when "Browse Server" button is pressed.
22
+ config.filebrowserBrowseUrl = "/el_finder";
23
+
24
+ // The location of an external file browser, that should be launched when "Browse Server" button is pressed in the Flash dialog.
25
+ config.filebrowserFlashBrowseUrl = "/el_finder";
26
+
27
+ // The location of a script that handles file uploads in the Flash dialog.
28
+ config.filebrowserFlashUploadUrl = "/el_finder";
29
+
30
+ // The location of an external file browser, that should be launched when "Browse Server" button is pressed in the Link tab of Image dialog.
31
+ config.filebrowserImageBrowseLinkUrl = "/el_finder";
32
+
33
+ // The location of an external file browser, that should be launched when "Browse Server" button is pressed in the Image dialog.
34
+ config.filebrowserImageBrowseUrl = "/el_finder";
35
+
36
+ // The location of a script that handles file uploads in the Image dialog.
37
+ config.filebrowserImageUploadUrl = "/el_finder";
38
+
39
+ // The location of a script that handles file uploads.
40
+ config.filebrowserUploadUrl = "/el_finder";
41
+
42
+ // Rails CSRF token
43
+ config.filebrowserParams = function(){
44
+ var csrf_token = jQuery('meta[name=csrf-token]').attr('content'),
45
+ csrf_param = jQuery('meta[name=csrf-param]').attr('content'),
46
+ params = new Object();
47
+
48
+ if (csrf_param !== undefined && csrf_token !== undefined) {
49
+ params[csrf_param] = csrf_token;
50
+ }
51
+
52
+ return params;
53
+ };
54
+
55
+ /* Toolbars */
56
+ config.toolbar = 'Full';
57
+
58
+ config.toolbar_Full = [
59
+ ['Source'],
60
+ ['Cut','Copy','Paste','PasteText','PasteFromWord'],
61
+ ['Undo','Redo','-','Find','Replace','-','SelectAll'],
62
+ ['Esp_link','Esp_unlink','Esp_anchor'],
63
+ ['Esp_image', 'Esp_attachment', 'Esp_video', 'Esp_audio', 'Table'],
64
+ '/',
65
+ ['Format','Styles','Esp_Blockquote'],
66
+ ['Bold','Italic','Underline','Strike','-','Subscript','Superscript','-','RemoveFormat'],
67
+ ['JustifyLeft','JustifyCenter','JustifyRight'],
68
+ ['NumberedList','BulletedList','-','Outdent','Indent'],
69
+ ['Maximize', 'Esp_ShowBlocks']
70
+ ];
71
+
72
+ /* Format tags */
73
+ config.format_tags = 'p;h1;h2;h3;div';
74
+
75
+ /* Style tags */
76
+ config.stylesSet = [
77
+ { name: 'Cite', element: 'cite' },
78
+ { name: 'Mark', element: 'mark' }
79
+ ];
80
+
81
+ };
82
+
83
+ CKEDITOR.on('instanceReady', function(ev) {
84
+
85
+ ev.editor.dataProcessor.writer.indentationChars = " ";
86
+
87
+ var tags = new Array('h1','h2','h3','h4','h5','h6', 'td', 'li', 'caption', 'th');
88
+ for (var tag in tags) {
89
+ ev.editor.dataProcessor.writer.setRules(tags[tag], {
90
+ indent : false,
91
+ breakBeforeOpen : false,
92
+ breakAfterOpen : false,
93
+ breakBeforeClose : false,
94
+ breakAfterClose : true
95
+ });
96
+ };
97
+
98
+ tags = ['p', 'div', 'blockquote', 'pre', 'audio','video', 'source'];
99
+
100
+ for (var tag in tags) {
101
+ ev.editor.dataProcessor.writer.setRules(tags[tag], {
102
+ indent : true,
103
+ breakBeforeOpen : true,
104
+ breakAfterOpen : true,
105
+ breakBeforeClose : true,
106
+ breakAfterClose : true
107
+ });
108
+ };
109
+
110
+ ev.editor.dataProcessor.htmlFilter.addRules({
111
+ elements:
112
+ {
113
+ $: function (element) {
114
+ // Output dimensions of images as width and height
115
+ if (element.name == 'img') {
116
+ var style = element.attributes.style;
117
+ if (style) {
118
+ // Get the width from the style.
119
+ var match = /(?:^|\s)width\s*:\s*(\d+)px/i.exec(style),
120
+ width = match && match[1];
121
+ if (width) {
122
+ element.attributes.style = element.attributes.style.replace(/(?:^|\s)width\s*:\s*(\d+)px;?/i, '');
123
+ element.attributes.width = width;
124
+ }
125
+ // Get the height from the style.
126
+ match = /(?:^|\s)height\s*:\s*(\d+)px/i.exec(style);
127
+ var height = match && match[1];
128
+ if (height) {
129
+ element.attributes.style = element.attributes.style.replace(/(?:^|\s)height\s*:\s*(\d+)px;?/i, '');
130
+ element.attributes.height = height;
131
+ }
132
+ // Get the float from the style.
133
+ match = /(?:^|\s)float\s*:\s*([a-z]+);/i.exec(style);
134
+ var float = match && match[1];
135
+ if (float) {
136
+ element.attributes.class = "float_" + float;
137
+ }
138
+ }
139
+ }
140
+ if (!element.attributes.style)
141
+ delete element.attributes.style;
142
+ return element;
143
+ }
144
+ }
145
+ });
146
+
147
+ });
@@ -0,0 +1,38 @@
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
+ body
7
+ {
8
+ /* Font */
9
+ font-family: Arial, Verdana, sans-serif;
10
+ font-size: 12px;
11
+
12
+ /* Text color */
13
+ color: #222;
14
+
15
+ /* Remove the background color to make it transparent */
16
+ background-color: #fff;
17
+ }
18
+
19
+ ol,ul,dl
20
+ {
21
+ /* IE7: reset rtl list margin. (#7334) */
22
+ *margin-right:0px;
23
+ /* preserved spaces for list items with text direction other than the list. (#6249,#8049)*/
24
+ padding:0 40px;
25
+ }
26
+
27
+ body blockquote
28
+ {
29
+ border-left: 3px solid #ccc;
30
+ margin-left: 10px;
31
+ margin-right: 0;
32
+ padding-left: 10px;
33
+ }
34
+
35
+ body cite
36
+ {
37
+ color: green
38
+ }
@@ -0,0 +1 @@
1
+ var CKEDITOR_BASEPATH = '/assets/esp-ckeditor/';
@@ -0,0 +1 @@
1
+ CKEDITOR.dialog.add("a11yHelp",function(g){var d=g.lang.accessibilityHelp,a=CKEDITOR.tools.getNextId();var h={8:"BACKSPACE",9:"TAB",13:"ENTER",16:"SHIFT",17:"CTRL",18:"ALT",19:"PAUSE",20:"CAPSLOCK",27:"ESCAPE",33:"PAGE UP",34:"PAGE DOWN",35:"END",36:"HOME",37:"LEFT ARROW",38:"UP ARROW",39:"RIGHT ARROW",40:"DOWN ARROW",45:"INSERT",46:"DELETE",91:"LEFT WINDOW KEY",92:"RIGHT WINDOW KEY",93:"SELECT KEY",96:"NUMPAD 0",97:"NUMPAD 1",98:"NUMPAD 2",99:"NUMPAD 3",100:"NUMPAD 4",101:"NUMPAD 5",102:"NUMPAD 6",103:"NUMPAD 7",104:"NUMPAD 8",105:"NUMPAD 9",106:"MULTIPLY",107:"ADD",109:"SUBTRACT",110:"DECIMAL POINT",111:"DIVIDE",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NUM LOCK",145:"SCROLL LOCK",186:"SEMI-COLON",187:"EQUAL SIGN",188:"COMMA",189:"DASH",190:"PERIOD",191:"FORWARD SLASH",192:"GRAVE ACCENT",219:"OPEN BRACKET",220:"BACK SLASH",221:"CLOSE BRAKET",222:"SINGLE QUOTE"};h[CKEDITOR.ALT]="ALT";h[CKEDITOR.SHIFT]="SHIFT";h[CKEDITOR.CTRL]="CTRL";var i=[CKEDITOR.ALT,CKEDITOR.SHIFT,CKEDITOR.CTRL];function c(n){var m,j,l=[];for(var k=0;k<i.length;k++){j=i[k];m=n/i[k];if(m>1&&m<=2){n-=j;l.push(h[j])}}l.push(h[n]||String.fromCharCode(n));return l.join("+")}var e=/\$\{(.*?)\}/g;function b(k,j){var o=g.config.keystrokes,m,n=o.length;for(var l=0;l<n;l++){m=o[l];if(m[1]==j){break}}return c(m[0])}function f(){var s='<div class="cke_accessibility_legend" role="document" aria-labelledby="'+a+'_arialbl" tabIndex="-1">%1</div><span id="'+a+'_arialbl" class="cke_voice_label">'+d.contents+" </span>",p="<h1>%1</h1><dl>%2</dl>",t="<dt>%1</dt><dd>%2</dd>";var k=[],v=d.legend,q=v.length;for(var n=0;n<q;n++){var u=v[n],r=[],o=u.items,x=o.length;for(var m=0;m<x;m++){var w=o[m],l;l=t.replace("%1",w.name).replace("%2",w.legend.replace(e,b));r.push(l)}k.push(p.replace("%1",u.name).replace("%2",r.join("")))}return s.replace("%1",k.join(""))}return{title:d.title,minWidth:600,minHeight:400,contents:[{id:"info",label:g.lang.common.generalTab,expand:true,elements:[{type:"html",id:"legends",style:"white-space:normal;",focus:function(){},html:f()+'<style type="text/css">.cke_accessibility_legend{width:600px;height:400px;padding-right:5px;overflow-y:auto;overflow-x:hidden;}.cke_browser_quirks .cke_accessibility_legend,.cke_browser_ie6 .cke_accessibility_legend{height:390px}.cke_accessibility_legend *{white-space:normal;}.cke_accessibility_legend h1{font-size: 20px;border-bottom: 1px solid #AAA;margin: 5px 0px 15px;}.cke_accessibility_legend dl{margin-left: 5px;}.cke_accessibility_legend dt{font-size: 13px;font-weight: bold;}.cke_accessibility_legend dd{margin:10px}</style>'}]}],buttons:[CKEDITOR.dialog.cancelButton]}});
@@ -0,0 +1 @@
1
+ CKEDITOR.plugins.setLang("a11yhelp","en",{accessibilityHelp:{title:"Accessibility Instructions",contents:"Help Contents. To close this dialog press ESC.",legend:[{name:"General",items:[{name:"Editor Toolbar",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Editor Dialog",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option wtih SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"Commands",items:[{name:" Undo command",legend:"Press ${undo}"},{name:" Redo command",legend:"Press ${redo}"},{name:" Bold command",legend:"Press ${bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",legend:"Press ${underline}"},{name:" Link command",legend:"Press ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}]}});
@@ -0,0 +1 @@
1
+ CKEDITOR.plugins.setLang("a11yhelp","he",{accessibilityHelp:{title:"הוראות נגישות",contents:"הוראות נגישות. לסגירה לחץ אסקייפ (ESC).",legend:[{name:"כללי",items:[{name:"סרגל הכלים",legend:"לחץ על ${toolbarFocus} כדי לנווט לסרגל הכלים. עבור לכפתור הבא עם מקש הטאב (TAB) או חץ שמאלי. עבור לכפתור הקודם עם מקש השיפט (SHIFT) + טאב (TAB) או חץ ימני. לחץ רווח או אנטר (ENTER) כדי להפעיל את הכפתור הנבחר."},{name:"דיאלוגים (חלונות תשאול)",legend:"בתוך דיאלוג, לחץ טאב (TAB) כדי לנווט לשדה הבא, לחץ שיפט (SHIFT) + טאב (TAB) כדי לנווט לשדה הקודם, לחץ אנטר (ENTER) כדי לשלוח את הדיאלוג, לחץ אסקייפ (ESC) כדי לבטל. בתוך דיאלוגים בעלי מספר טאבים (לשוניות), לחץ אלט (ALT) + F10 כדי לנווט לשורת הטאבים. נווט לטאב הבא עם טאב (TAB) או חץ שמאלי. עבור לטאב הקודם עם שיפט (SHIFT) + טאב (TAB) או חץ שמאלי. לחץ רווח או אנטר (ENTER) כדי להיכנס לטאב."},{name:"תפריט ההקשר (Context Menu)",legend:"לחץ ${contextMenu} או APPLICATION KEYכדי לפתוח את תפריט ההקשר. עבור לאפשרות הבאה עם טאב (TAB) או חץ למטה. עבור לאפשרות הקודמת עם שיפט (SHIFT) + טאב (TAB) או חץ למעלה. לחץ רווח או אנטר (ENTER) כדי לבחור את האפשרות. פתח את תת התפריט (Sub-menu) של האפשרות הנוכחית עם רווח או אנטר (ENTER) או חץ שמאלי. חזור לתפריט האב עם אסקייפ (ESC) או חץ שמאלי. סגור את תפריט ההקשר עם אסקייפ (ESC)."},{name:"תפריטים צפים (List boxes)",legend:"בתוך תפריט צף, עבור לפריט הבא עם טאב (TAB) או חץ למטה. עבור לתפריט הקודם עם שיפט (SHIFT) + טאב (TAB) or חץ עליון. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},{name:"עץ אלמנטים (Elements Path)",legend:"לחץ ${elementsPathFocus} כדי לנווט לעץ האלמנטים. עבור לפריט הבא עם טאב (TAB) או חץ ימני. עבור לפריט הקודם עם שיפט (SHIFT) + טאב (TAB) או חץ שמאלי. לחץ רווח או אנטר (ENTER) כדי לבחור את האלמנט בעורך."}]},{name:"פקודות",items:[{name:" ביטול צעד אחרון",legend:"לחץ ${undo}"},{name:" חזרה על צעד אחרון",legend:"לחץ ${redo}"},{name:" הדגשה",legend:"לחץ ${bold}"},{name:" הטייה",legend:"לחץ ${italic}"},{name:" הוספת קו תחתון",legend:"לחץ ${underline}"},{name:" הוספת לינק",legend:"לחץ ${link}"},{name:" כיווץ סרגל הכלים",legend:"לחץ ${toolbarCollapse}"},{name:" הוראות נגישות",legend:"לחץ ${a11yHelp}"}]}]}});CKEDITOR.plugins.setLang("a11yhelp","he",{accessibilityHelp:{title:"הוראות נגישות",contents:"הוראות נגישות. לסגירה לחץ אסקייפ (ESC).",legend:[{name:"כללי",items:[{name:"סרגל הכלים",legend:"לחץ על ${toolbarFocus} כדי לנווט לסרגל הכלים. עבור לכפתור הבא עם מקש הטאב (TAB) או חץ שמאלי. עבור לכפתור הקודם עם מקש השיפט (SHIFT) + טאב (TAB) או חץ ימני. לחץ רווח או אנטר (ENTER) כדי להפעיל את הכפתור הנבחר."},{name:"דיאלוגים (חלונות תשאול)",legend:"בתוך דיאלוג, לחץ טאב (TAB) כדי לנווט לשדה הבא, לחץ שיפט (SHIFT) + טאב (TAB) כדי לנווט לשדה הקודם, לחץ אנטר (ENTER) כדי לשלוח את הדיאלוג, לחץ אסקייפ (ESC) כדי לבטל. בתוך דיאלוגים בעלי מספר טאבים (לשוניות), לחץ אלט (ALT) + F10 כדי לנווט לשורת הטאבים. נווט לטאב הבא עם טאב (TAB) או חץ שמאלי. עבור לטאב הקודם עם שיפט (SHIFT) + טאב (TAB) או חץ שמאלי. לחץ רווח או אנטר (ENTER) כדי להיכנס לטאב."},{name:"תפריט ההקשר (Context Menu)",legend:"לחץ ${contextMenu} או APPLICATION KEYכדי לפתוח את תפריט ההקשר. עבור לאפשרות הבאה עם טאב (TAB) או חץ למטה. עבור לאפשרות הקודמת עם שיפט (SHIFT) + טאב (TAB) או חץ למעלה. לחץ רווח או אנטר (ENTER) כדי לבחור את האפשרות. פתח את תת התפריט (Sub-menu) של האפשרות הנוכחית עם רווח או אנטר (ENTER) או חץ שמאלי. חזור לתפריט האב עם אסקייפ (ESC) או חץ שמאלי. סגור את תפריט ההקשר עם אסקייפ (ESC)."},{name:"תפריטים צפים (List boxes)",legend:"בתוך תפריט צף, עבור לפריט הבא עם טאב (TAB) או חץ למטה. עבור לתפריט הקודם עם שיפט (SHIFT) + טאב (TAB) or חץ עליון. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},{name:"עץ אלמנטים (Elements Path)",legend:"לחץ ${elementsPathFocus} כדי לנווט לעץ האלמנטים. עבור לפריט הבא עם טאב (TAB) או חץ ימני. עבור לפריט הקודם עם שיפט (SHIFT) + טאב (TAB) או חץ שמאלי. לחץ רווח או אנטר (ENTER) כדי לבחור את האלמנט בעורך."}]},{name:"פקודות",items:[{name:" ביטול צעד אחרון",legend:"לחץ ${undo}"},{name:" חזרה על צעד אחרון",legend:"לחץ ${redo}"},{name:" הדגשה",legend:"לחץ ${bold}"},{name:" הטייה",legend:"לחץ ${italic}"},{name:" הוספת קו תחתון",legend:"לחץ ${underline}"},{name:" הוספת לינק",legend:"לחץ ${link}"},{name:" כיווץ סרגל הכלים",legend:"לחץ ${toolbarCollapse}"},{name:" הוראות נגישות",legend:"לחץ ${a11yHelp}"}]}]}});
@@ -0,0 +1 @@
1
+ (function(){var b="a11yhelp",a="a11yHelp";CKEDITOR.plugins.add(b,{availableLangs:{en:1,he:1},init:function(c){var d=this;c.addCommand(a,{exec:function(){var e=c.langCode;e=d.availableLangs[e]?e:"en";CKEDITOR.scriptLoader.load(CKEDITOR.getUrl(d.path+"lang/"+e+".js"),function(){CKEDITOR.tools.extend(c.lang,d.langEntries[e]);c.openDialog(a)})},modes:{wysiwyg:1,source:1},readOnly:1,canUndo:false});CKEDITOR.dialog.add(a,this.path+"dialogs/a11yhelp.js")}})})();
@@ -0,0 +1 @@
1
+ CKEDITOR.plugins.add("basicstyles",{requires:["styles","button"],init:function(b){var c=function(f,i,g,e){var h=new CKEDITOR.style(e);b.attachStyleStateChange(h,function(j){!b.readOnly&&b.getCommand(g).setState(j)});b.addCommand(g,new CKEDITOR.styleCommand(h));b.ui.addButton(f,{label:i,command:g})};var a=b.config,d=b.lang;c("Bold",d.bold,"bold",a.coreStyles_bold);c("Italic",d.italic,"italic",a.coreStyles_italic);c("Underline",d.underline,"underline",a.coreStyles_underline);c("Strike",d.strike,"strike",a.coreStyles_strike);c("Subscript",d.subscript,"subscript",a.coreStyles_subscript);c("Superscript",d.superscript,"superscript",a.coreStyles_superscript)}});CKEDITOR.config.coreStyles_bold={element:"strong",overrides:"b"};CKEDITOR.config.coreStyles_italic={element:"em",overrides:"i"};CKEDITOR.config.coreStyles_underline={element:"u"};CKEDITOR.config.coreStyles_strike={element:"strike"};CKEDITOR.config.coreStyles_subscript={element:"sub"};CKEDITOR.config.coreStyles_superscript={element:"sup"};
@@ -0,0 +1 @@
1
+ CKEDITOR.plugins.add("button",{beforeInit:function(a){a.ui.addHandler(CKEDITOR.UI_BUTTON,CKEDITOR.ui.button.handler)}});CKEDITOR.UI_BUTTON="button";CKEDITOR.ui.button=function(a){CKEDITOR.tools.extend(this,a,{title:a.label,className:a.className||(a.command&&"cke_button_"+a.command)||"",click:a.click||function(b){b.execCommand(a.command)}});this._={}};CKEDITOR.ui.button.handler={create:function(a){return new CKEDITOR.ui.button(a)}};(function(){CKEDITOR.ui.button.prototype={render:function(h,d){var i=CKEDITOR.env,c=this._.id=CKEDITOR.tools.getNextId(),e="",f=this.command,a;this._.editor=h;var l={id:c,button:this,editor:h,focus:function(){var n=CKEDITOR.document.getById(c);n.focus()},execute:function(){if(CKEDITOR.env.ie&&CKEDITOR.env.version<7){CKEDITOR.tools.setTimeout(function(){this.button.click(h)},0,this)}else{this.button.click(h)}}};var j=CKEDITOR.tools.addFunction(function(n){if(l.onkey){n=new CKEDITOR.dom.event(n);return(l.onkey(l,n.getKeystroke())!==false)}});var b=CKEDITOR.tools.addFunction(function(n){var o;if(l.onfocus){o=(l.onfocus(l,new CKEDITOR.dom.event(n))!==false)}if(CKEDITOR.env.gecko&&CKEDITOR.env.version<10900){n.preventBubble()}return o});l.clickFn=a=CKEDITOR.tools.addFunction(l.execute,l);if(this.modes){var k={};function m(){var o=h.mode;if(o){var n=this.modes[o]?k[o]!=undefined?k[o]:CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED;this.setState(h.readOnly&&!this.readOnly?CKEDITOR.TRISTATE_DISABLED:n)}}h.on("beforeModeUnload",function(){if(h.mode&&this._.state!=CKEDITOR.TRISTATE_DISABLED){k[h.mode]=this._.state}},this);h.on("mode",m,this);!this.readOnly&&h.on("readOnly",m,this)}else{if(f){f=h.getCommand(f);if(f){f.on("state",function(){this.setState(f.state)},this);e+="cke_"+(f.state==CKEDITOR.TRISTATE_ON?"on":f.state==CKEDITOR.TRISTATE_DISABLED?"disabled":"off")}}}if(!f){e+="cke_off"}if(this.className){e+=" "+this.className}d.push('<span class="cke_button'+(this.icon&&this.icon.indexOf(".png")==-1?" cke_noalphafix":"")+'">','<a id="',c,'" class="',e,'"',i.gecko&&i.version>=10900&&!i.hc?"":'" href="javascript:void(\''+(this.title||"").replace("'","")+"')\"",' title="',this.title,'" tabindex="-1" hidefocus="true" role="button" aria-labelledby="'+c+'_label"'+(this.hasArrow?' aria-haspopup="true"':""));if(i.opera||(i.gecko&&i.mac)){d.push(' onkeypress="return false;"')}if(i.gecko){d.push(' onblur="this.style.cssText = this.style.cssText;"')}d.push(' onkeydown="return CKEDITOR.tools.callFunction(',j,', event);" onfocus="return CKEDITOR.tools.callFunction(',b,', event);" '+(CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick")+'="CKEDITOR.tools.callFunction(',a,', this); return false;"><span class="cke_icon"');if(this.icon){var g=(this.iconOffset||0)*-16;d.push(' style="background-image:url(',CKEDITOR.getUrl(this.icon),");background-position:0 "+g+'px;"')}d.push('>&nbsp;</span><span id="',c,'_label" class="cke_label">',this.label,"</span>");if(this.hasArrow){d.push('<span class="cke_buttonarrow">'+(CKEDITOR.env.hc?"&#9660;":"&nbsp;")+"</span>")}d.push("</a>","</span>");if(this.onRender){this.onRender()}return l},setState:function(b){if(this._.state==b){return false}this._.state=b;var a=CKEDITOR.document.getById(this._.id);if(a){a.setState(b);b==CKEDITOR.TRISTATE_DISABLED?a.setAttribute("aria-disabled",true):a.removeAttribute("aria-disabled");b==CKEDITOR.TRISTATE_ON?a.setAttribute("aria-pressed",true):a.removeAttribute("aria-pressed");return true}else{return false}}}})();CKEDITOR.ui.prototype.addButton=function(a,b){this.add(a,CKEDITOR.UI_BUTTON,b)};