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,186 @@
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
+ if ( !CKEDITOR.editor )
7
+ {
8
+ /**
9
+ * No element is linked to the editor instance.
10
+ * @constant
11
+ * @example
12
+ */
13
+ CKEDITOR.ELEMENT_MODE_NONE = 0;
14
+
15
+ /**
16
+ * The element is to be replaced by the editor instance.
17
+ * @constant
18
+ * @example
19
+ */
20
+ CKEDITOR.ELEMENT_MODE_REPLACE = 1;
21
+
22
+ /**
23
+ * The editor is to be created inside the element.
24
+ * @constant
25
+ * @example
26
+ */
27
+ CKEDITOR.ELEMENT_MODE_APPENDTO = 2;
28
+
29
+ /**
30
+ * Creates an editor class instance. This constructor should be rarely
31
+ * used, in favor of the {@link CKEDITOR} editor creation functions.
32
+ * @ class Represents an editor instance.
33
+ * @param {Object} instanceConfig Configuration values for this specific
34
+ * instance.
35
+ * @param {CKEDITOR.dom.element} [element] The element linked to this
36
+ * instance.
37
+ * @param {Number} [mode] The mode in which the element is linked to this
38
+ * instance. See {@link #elementMode}.
39
+ * @param {String} [data] Since 3.3. Initial value for the instance.
40
+ * @augments CKEDITOR.event
41
+ * @example
42
+ */
43
+ CKEDITOR.editor = function( instanceConfig, element, mode, data )
44
+ {
45
+ this._ =
46
+ {
47
+ // Save the config to be processed later by the full core code.
48
+ instanceConfig : instanceConfig,
49
+ element : element,
50
+ data : data
51
+ };
52
+
53
+ /**
54
+ * The mode in which the {@link #element} is linked to this editor
55
+ * instance. It can be any of the following values:
56
+ * <ul>
57
+ * <li>{@link CKEDITOR.ELEMENT_MODE_NONE}: No element is linked to the
58
+ * editor instance.</li>
59
+ * <li>{@link CKEDITOR.ELEMENT_MODE_REPLACE}: The element is to be
60
+ * replaced by the editor instance.</li>
61
+ * <li>{@link CKEDITOR.ELEMENT_MODE_APPENDTO}: The editor is to be
62
+ * created inside the element.</li>
63
+ * </ul>
64
+ * @name CKEDITOR.editor.prototype.elementMode
65
+ * @type Number
66
+ * @example
67
+ * var editor = CKEDITOR.replace( 'editor1' );
68
+ * alert( <b>editor.elementMode</b> ); "1"
69
+ */
70
+ this.elementMode = mode || CKEDITOR.ELEMENT_MODE_NONE;
71
+
72
+ // Call the CKEDITOR.event constructor to initialize this instance.
73
+ CKEDITOR.event.call( this );
74
+
75
+ this._init();
76
+ };
77
+
78
+ /**
79
+ * Replaces a &lt;textarea&gt; or a DOM element (DIV) with a CKEditor
80
+ * instance. For textareas, the initial value in the editor will be the
81
+ * textarea value. For DOM elements, their innerHTML will be used
82
+ * instead. We recommend using TEXTAREA and DIV elements only. Do not use
83
+ * this function directly. Use {@link CKEDITOR.replace} instead.
84
+ * @param {Object|String} elementOrIdOrName The DOM element (textarea), its
85
+ * ID or name.
86
+ * @param {Object} [config] The specific configurations to apply to this
87
+ * editor instance. Configurations set here will override global CKEditor
88
+ * settings.
89
+ * @returns {CKEDITOR.editor} The editor instance created.
90
+ * @example
91
+ */
92
+ CKEDITOR.editor.replace = function( elementOrIdOrName, config )
93
+ {
94
+ var element = elementOrIdOrName;
95
+
96
+ if ( typeof element != 'object' )
97
+ {
98
+ // Look for the element by id. We accept any kind of element here.
99
+ element = document.getElementById( elementOrIdOrName );
100
+
101
+ // Elements that should go into head are unacceptable (#6791).
102
+ if ( element && element.tagName.toLowerCase() in {style:1,script:1,base:1,link:1,meta:1,title:1} )
103
+ element = null;
104
+
105
+ // If not found, look for elements by name. In this case we accept only
106
+ // textareas.
107
+ if ( !element )
108
+ {
109
+ var i = 0,
110
+ textareasByName = document.getElementsByName( elementOrIdOrName );
111
+
112
+ while ( ( element = textareasByName[ i++ ] ) && element.tagName.toLowerCase() != 'textarea' )
113
+ { /*jsl:pass*/ }
114
+ }
115
+
116
+ if ( !element )
117
+ throw '[CKEDITOR.editor.replace] The element with id or name "' + elementOrIdOrName + '" was not found.';
118
+ }
119
+
120
+ // Do not replace the textarea right now, just hide it. The effective
121
+ // replacement will be done by the _init function.
122
+ element.style.visibility = 'hidden';
123
+
124
+ // Create the editor instance.
125
+ return new CKEDITOR.editor( config, element, CKEDITOR.ELEMENT_MODE_REPLACE );
126
+ };
127
+
128
+ /**
129
+ * Creates a new editor instance inside a specific DOM element. Do not use
130
+ * this function directly. Use {@link CKEDITOR.appendTo} instead.
131
+ * @param {Object|String} elementOrId The DOM element or its ID.
132
+ * @param {Object} [config] The specific configurations to apply to this
133
+ * editor instance. Configurations set here will override global CKEditor
134
+ * settings.
135
+ * @param {String} [data] Since 3.3. Initial value for the instance.
136
+ * @returns {CKEDITOR.editor} The editor instance created.
137
+ * @example
138
+ */
139
+ CKEDITOR.editor.appendTo = function( elementOrId, config, data )
140
+ {
141
+ var element = elementOrId;
142
+ if ( typeof element != 'object' )
143
+ {
144
+ element = document.getElementById( elementOrId );
145
+
146
+ if ( !element )
147
+ throw '[CKEDITOR.editor.appendTo] The element with id "' + elementOrId + '" was not found.';
148
+ }
149
+
150
+ // Create the editor instance.
151
+ return new CKEDITOR.editor( config, element, CKEDITOR.ELEMENT_MODE_APPENDTO, data );
152
+ };
153
+
154
+ CKEDITOR.editor.prototype =
155
+ {
156
+ /**
157
+ * Initializes the editor instance. This function will be overriden by the
158
+ * full CKEDITOR.editor implementation (editor.js).
159
+ * @private
160
+ */
161
+ _init : function()
162
+ {
163
+ var pending = CKEDITOR.editor._pending || ( CKEDITOR.editor._pending = [] );
164
+ pending.push( this );
165
+ },
166
+
167
+ // Both fire and fireOnce will always pass this editor instance as the
168
+ // "editor" param in CKEDITOR.event.fire. So, we override it to do that
169
+ // automaticaly.
170
+
171
+ /** @ignore */
172
+ fire : function( eventName, data )
173
+ {
174
+ return CKEDITOR.event.prototype.fire.call( this, eventName, data, this );
175
+ },
176
+
177
+ /** @ignore */
178
+ fireOnce : function( eventName, data )
179
+ {
180
+ return CKEDITOR.event.prototype.fireOnce.call( this, eventName, data, this );
181
+ }
182
+ };
183
+
184
+ // "Inherit" (copy actually) from CKEDITOR.event.
185
+ CKEDITOR.event.implementOn( CKEDITOR.editor.prototype, true );
186
+ }
@@ -0,0 +1,305 @@
1
+ /*
2
+ Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.html or http://ckeditor.com/license
4
+ */
5
+
6
+ /**
7
+ * @fileOverview Defines the {@link CKEDITOR.env} object, which constains
8
+ * environment and browser information.
9
+ */
10
+
11
+ if ( !CKEDITOR.env )
12
+ {
13
+ /**
14
+ * @namespace Environment and browser information.
15
+ */
16
+ CKEDITOR.env = (function()
17
+ {
18
+ var agent = navigator.userAgent.toLowerCase();
19
+ var opera = window.opera;
20
+
21
+ var env =
22
+ /** @lends CKEDITOR.env */
23
+ {
24
+ /**
25
+ * Indicates that CKEditor is running on Internet Explorer.
26
+ * @type Boolean
27
+ * @example
28
+ * if ( CKEDITOR.env.ie )
29
+ * alert( "I'm on IE!" );
30
+ */
31
+ ie : /*@cc_on!@*/false,
32
+
33
+ /**
34
+ * Indicates that CKEditor is running on Opera.
35
+ * @type Boolean
36
+ * @example
37
+ * if ( CKEDITOR.env.opera )
38
+ * alert( "I'm on Opera!" );
39
+ */
40
+ opera : ( !!opera && opera.version ),
41
+
42
+ /**
43
+ * Indicates that CKEditor is running on a WebKit based browser, like
44
+ * Safari.
45
+ * @type Boolean
46
+ * @example
47
+ * if ( CKEDITOR.env.webkit )
48
+ * alert( "I'm on WebKit!" );
49
+ */
50
+ webkit : ( agent.indexOf( ' applewebkit/' ) > -1 ),
51
+
52
+ /**
53
+ * Indicates that CKEditor is running on Adobe AIR.
54
+ * @type Boolean
55
+ * @example
56
+ * if ( CKEDITOR.env.air )
57
+ * alert( "I'm on AIR!" );
58
+ */
59
+ air : ( agent.indexOf( ' adobeair/' ) > -1 ),
60
+
61
+ /**
62
+ * Indicates that CKEditor is running on Macintosh.
63
+ * @type Boolean
64
+ * @example
65
+ * if ( CKEDITOR.env.mac )
66
+ * alert( "I love apples!" );
67
+ */
68
+ mac : ( agent.indexOf( 'macintosh' ) > -1 ),
69
+
70
+ /**
71
+ * Indicates that CKEditor is running on a quirks mode environemnt.
72
+ * @type Boolean
73
+ * @example
74
+ * if ( CKEDITOR.env.quirks )
75
+ * alert( "Nooooo!" );
76
+ */
77
+ quirks : ( document.compatMode == 'BackCompat' ),
78
+
79
+ /**
80
+ * Indicates that CKEditor is running on a mobile like environemnt.
81
+ * @type Boolean
82
+ * @example
83
+ * if ( CKEDITOR.env.mobile )
84
+ * alert( "I'm running with CKEditor today!" );
85
+ */
86
+ mobile : ( agent.indexOf( 'mobile' ) > -1 ),
87
+
88
+ /**
89
+ * Indicates that CKEditor is running on Apple iPhone/iPad/iPod devices.
90
+ * @type Boolean
91
+ * @example
92
+ * if ( CKEDITOR.env.iOS )
93
+ * alert( "I like little apples!" );
94
+ */
95
+ iOS : /(ipad|iphone|ipod)/.test(agent),
96
+
97
+ /**
98
+ * Indicates that the browser has a custom domain enabled. This has
99
+ * been set with "document.domain".
100
+ * @returns {Boolean} "true" if a custom domain is enabled.
101
+ * @example
102
+ * if ( CKEDITOR.env.isCustomDomain() )
103
+ * alert( "I'm in a custom domain!" );
104
+ */
105
+ isCustomDomain : function()
106
+ {
107
+ if ( !this.ie )
108
+ return false;
109
+
110
+ var domain = document.domain,
111
+ hostname = window.location.hostname;
112
+
113
+ return domain != hostname &&
114
+ domain != ( '[' + hostname + ']' ); // IPv6 IP support (#5434)
115
+ },
116
+
117
+ /**
118
+ * Indicates that page is running under an encrypted connection.
119
+ * @returns {Boolean} "true" if the page has an encrypted connection.
120
+ * @example
121
+ * if ( CKEDITOR.env.secure )
122
+ * alert( "I'm in SSL!" );
123
+ */
124
+ secure : location.protocol == 'https:'
125
+ };
126
+
127
+ /**
128
+ * Indicates that CKEditor is running on a Gecko based browser, like
129
+ * Firefox.
130
+ * @name CKEDITOR.env.gecko
131
+ * @type Boolean
132
+ * @example
133
+ * if ( CKEDITOR.env.gecko )
134
+ * alert( "I'm riding a gecko!" );
135
+ */
136
+ env.gecko = ( navigator.product == 'Gecko' && !env.webkit && !env.opera );
137
+
138
+ var version = 0;
139
+
140
+ // Internet Explorer 6.0+
141
+ if ( env.ie )
142
+ {
143
+ version = parseFloat( agent.match( /msie (\d+)/ )[1] );
144
+
145
+ /**
146
+ * Indicates that CKEditor is running on Internet Explorer 8.
147
+ * @name CKEDITOR.env.ie8
148
+ * @type Boolean
149
+ * @example
150
+ * if ( CKEDITOR.env.ie8 )
151
+ * alert( "I'm on IE8!" );
152
+ */
153
+ env.ie8 = !!document.documentMode;
154
+
155
+ /**
156
+ * Indicates that CKEditor is running on Internet Explorer 8 on
157
+ * standards mode.
158
+ * @name CKEDITOR.env.ie8Compat
159
+ * @type Boolean
160
+ * @example
161
+ * if ( CKEDITOR.env.ie8Compat )
162
+ * alert( "Now I'm on IE8, for real!" );
163
+ */
164
+ env.ie8Compat = document.documentMode == 8;
165
+
166
+ /**
167
+ * Indicates that CKEditor is running on Internet Explorer 9's standards mode.
168
+ * @name CKEDITOR.env.ie9Compat
169
+ * @type Boolean
170
+ * @example
171
+ * if ( CKEDITOR.env.ie9Compat )
172
+ * alert( "IE9, the beauty of the web!" );
173
+ */
174
+ env.ie9Compat = document.documentMode == 9;
175
+
176
+ /**
177
+ * Indicates that CKEditor is running on an IE7-like environment, which
178
+ * includes IE7 itself and IE8's IE7 document mode.
179
+ * @name CKEDITOR.env.ie7Compat
180
+ * @type Boolean
181
+ * @example
182
+ * if ( CKEDITOR.env.ie8Compat )
183
+ * alert( "I'm on IE7 or on an IE7 like IE8!" );
184
+ */
185
+ env.ie7Compat = ( ( version == 7 && !document.documentMode )
186
+ || document.documentMode == 7 );
187
+
188
+ /**
189
+ * Indicates that CKEditor is running on an IE6-like environment, which
190
+ * includes IE6 itself and IE7 and IE8 quirks mode.
191
+ * @name CKEDITOR.env.ie6Compat
192
+ * @type Boolean
193
+ * @example
194
+ * if ( CKEDITOR.env.ie6Compat )
195
+ * alert( "I'm on IE6 or quirks mode!" );
196
+ */
197
+ env.ie6Compat = ( version < 7 || env.quirks );
198
+ }
199
+
200
+ // Gecko.
201
+ if ( env.gecko )
202
+ {
203
+ var geckoRelease = agent.match( /rv:([\d\.]+)/ );
204
+ if ( geckoRelease )
205
+ {
206
+ geckoRelease = geckoRelease[1].split( '.' );
207
+ version = geckoRelease[0] * 10000 + ( geckoRelease[1] || 0 ) * 100 + ( geckoRelease[2] || 0 ) * 1;
208
+ }
209
+ }
210
+
211
+ // Opera 9.50+
212
+ if ( env.opera )
213
+ version = parseFloat( opera.version() );
214
+
215
+ // Adobe AIR 1.0+
216
+ // Checked before Safari because AIR have the WebKit rich text editor
217
+ // features from Safari 3.0.4, but the version reported is 420.
218
+ if ( env.air )
219
+ version = parseFloat( agent.match( / adobeair\/(\d+)/ )[1] );
220
+
221
+ // WebKit 522+ (Safari 3+)
222
+ if ( env.webkit )
223
+ version = parseFloat( agent.match( / applewebkit\/(\d+)/ )[1] );
224
+
225
+ /**
226
+ * Contains the browser version.<br />
227
+ * <br />
228
+ * For gecko based browsers (like Firefox) it contains the revision
229
+ * number with first three parts concatenated with a padding zero
230
+ * (e.g. for revision 1.9.0.2 we have 10900).<br />
231
+ * <br />
232
+ * For webkit based browser (like Safari and Chrome) it contains the
233
+ * WebKit build version (e.g. 522).
234
+ * @name CKEDITOR.env.version
235
+ * @type Boolean
236
+ * @example
237
+ * if ( CKEDITOR.env.ie && <b>CKEDITOR.env.version</b> <= 6 )
238
+ * alert( "Ouch!" );
239
+ */
240
+ env.version = version;
241
+
242
+ /**
243
+ * Indicates that CKEditor is running on a compatible browser.
244
+ * @name CKEDITOR.env.isCompatible
245
+ * @type Boolean
246
+ * @example
247
+ * if ( CKEDITOR.env.isCompatible )
248
+ * alert( "Your browser is pretty cool!" );
249
+ */
250
+ env.isCompatible =
251
+
252
+ // White list of mobile devices that supports.
253
+ env.iOS && version >= 534 ||
254
+
255
+ !env.mobile && (
256
+
257
+ ( env.ie && version >= 6 ) ||
258
+ ( env.gecko && version >= 10801 ) ||
259
+ ( env.opera && version >= 9.5 ) ||
260
+ ( env.air && version >= 1 ) ||
261
+ ( env.webkit && version >= 522 ) ||
262
+ false );
263
+
264
+ /**
265
+ * The CSS class to be appended on the main UI containers, making it
266
+ * easy to apply browser specific styles to it.
267
+ * @name CKEDITOR.env.cssClass
268
+ * @type String
269
+ * @example
270
+ * myDiv.className = CKEDITOR.env.cssClass;
271
+ */
272
+ env.cssClass =
273
+ 'cke_browser_' + (
274
+ env.ie ? 'ie' :
275
+ env.gecko ? 'gecko' :
276
+ env.opera ? 'opera' :
277
+ env.webkit ? 'webkit' :
278
+ 'unknown' );
279
+
280
+ if ( env.quirks )
281
+ env.cssClass += ' cke_browser_quirks';
282
+
283
+ if ( env.ie )
284
+ {
285
+ env.cssClass += ' cke_browser_ie' + (
286
+ env.version < 7 ? '6' :
287
+ env.version >= 8 ? document.documentMode:
288
+ '7' );
289
+
290
+ if ( env.quirks )
291
+ env.cssClass += ' cke_browser_iequirks';
292
+ }
293
+
294
+ if ( env.gecko && version < 10900 )
295
+ env.cssClass += ' cke_browser_gecko18';
296
+
297
+ if ( env.air )
298
+ env.cssClass += ' cke_browser_air';
299
+
300
+ return env;
301
+ })();
302
+ }
303
+
304
+ // PACKAGER_RENAME( CKEDITOR.env )
305
+ // PACKAGER_RENAME( CKEDITOR.env.ie )