ckeditor 3.4.3 → 3.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (975) hide show
  1. data/CHANGELOG +15 -0
  2. data/README.rdoc +26 -47
  3. data/Rakefile +6 -5
  4. data/app/controllers/ckeditor/attachments_controller.rb +23 -0
  5. data/app/controllers/ckeditor/base_controller.rb +60 -0
  6. data/app/controllers/ckeditor/pictures_controller.rb +23 -0
  7. data/app/helpers/ckeditor/base_helper.rb +21 -0
  8. data/app/views/ckeditor/attachments/index.html.erb +91 -0
  9. data/app/views/ckeditor/pictures/index.html.erb +91 -0
  10. data/config/routes.rb +5 -4
  11. data/lib/ckeditor.rb +29 -26
  12. data/lib/ckeditor/engine.rb +21 -0
  13. data/lib/ckeditor/utils.rb +13 -6
  14. data/lib/ckeditor/version.rb +2 -2
  15. data/lib/generators/ckeditor/base/USAGE +7 -0
  16. data/lib/generators/ckeditor/base/base_generator.rb +20 -0
  17. data/lib/generators/ckeditor/base/templates/ckeditor.rb +54 -0
  18. data/lib/generators/ckeditor/base/templates/ckeditor/CHANGES.html +1063 -0
  19. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/INSTALL.html +0 -0
  20. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/LICENSE.html +0 -0
  21. data/lib/generators/ckeditor/base/templates/ckeditor/_samples/adobeair/application.xml +32 -0
  22. data/lib/generators/ckeditor/base/templates/ckeditor/_samples/adobeair/run.bat +9 -0
  23. data/lib/generators/ckeditor/base/templates/ckeditor/_samples/adobeair/run.sh +8 -0
  24. data/lib/generators/ckeditor/base/templates/ckeditor/_samples/adobeair/sample.html +45 -0
  25. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/ajax.html +0 -0
  26. data/lib/generators/ckeditor/base/templates/ckeditor/_samples/api.html +174 -0
  27. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/api_dialog.html +0 -0
  28. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/api_dialog/my_dialog.js +0 -0
  29. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/asp/advanced.asp +0 -0
  30. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/asp/events.asp +0 -0
  31. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/asp/index.html +0 -0
  32. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/asp/replace.asp +0 -0
  33. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/asp/replaceall.asp +0 -0
  34. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/asp/sample_posteddata.asp +0 -0
  35. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/asp/standalone.asp +0 -0
  36. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/assets/output_for_flash.fla +0 -0
  37. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/assets/output_for_flash.swf +0 -0
  38. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/assets/output_xhtml.css +0 -0
  39. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/assets/swfobject.js +0 -0
  40. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/autogrow.html +0 -0
  41. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/divreplace.html +0 -0
  42. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/enterkey.html +0 -0
  43. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/fullpage.html +0 -0
  44. data/lib/generators/ckeditor/base/templates/ckeditor/_samples/index.html +58 -0
  45. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/jqueryadapter.html +0 -0
  46. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/output_for_flash.html +0 -0
  47. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/output_html.html +0 -0
  48. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/output_xhtml.html +0 -0
  49. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/php/advanced.php +0 -0
  50. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/php/events.php +0 -0
  51. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/php/replace.php +0 -0
  52. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/php/replaceall.php +0 -0
  53. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/php/standalone.php +0 -0
  54. data/lib/generators/ckeditor/base/templates/ckeditor/_samples/placeholder.html +62 -0
  55. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/replacebyclass.html +0 -0
  56. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/replacebycode.html +0 -0
  57. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/sample.css +0 -0
  58. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/sample.js +0 -0
  59. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/sample_posteddata.php +0 -0
  60. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/sharedspaces.html +0 -0
  61. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/skins.html +0 -0
  62. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/ui_color.html +0 -0
  63. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_samples/ui_languages.html +0 -0
  64. data/lib/generators/ckeditor/base/templates/ckeditor/_source/adapters/jquery.js +300 -0
  65. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/_bootstrap.js +0 -0
  66. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/ajax.js +0 -0
  67. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/ckeditor.js +0 -0
  68. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/ckeditor_base.js +196 -0
  69. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/ckeditor_basic.js +0 -0
  70. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/command.js +0 -0
  71. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/commanddefinition.js +0 -0
  72. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/config.js +431 -0
  73. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/dataprocessor.js +0 -0
  74. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/dom.js +0 -0
  75. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/dom/comment.js +0 -0
  76. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/dom/document.js +251 -0
  77. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/dom/documentfragment.js +0 -0
  78. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/dom/domobject.js +258 -0
  79. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/dom/element.js +1615 -0
  80. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/dom/elementpath.js +0 -0
  81. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/dom/event.js +0 -0
  82. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/dom/node.js +696 -0
  83. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/dom/nodelist.js +0 -0
  84. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/dom/range.js +1893 -0
  85. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/dom/rangelist.js +213 -0
  86. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/dom/text.js +0 -0
  87. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/dom/walker.js +444 -0
  88. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/dom/window.js +0 -0
  89. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/dtd.js +0 -0
  90. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/editor.js +943 -0
  91. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/editor_basic.js +0 -0
  92. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/env.js +272 -0
  93. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/event.js +0 -0
  94. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/eventInfo.js +0 -0
  95. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/focusmanager.js +0 -0
  96. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/htmlparser.js +0 -0
  97. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/htmlparser/basicwriter.js +0 -0
  98. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/htmlparser/cdata.js +0 -0
  99. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/htmlparser/comment.js +0 -0
  100. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/htmlparser/element.js +240 -0
  101. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/htmlparser/filter.js +0 -0
  102. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/htmlparser/fragment.js +504 -0
  103. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/htmlparser/text.js +0 -0
  104. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/lang.js +0 -0
  105. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/loader.js +242 -0
  106. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/plugindefinition.js +0 -0
  107. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/plugins.js +0 -0
  108. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/resourcemanager.js +0 -0
  109. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/scriptloader.js +0 -0
  110. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/skins.js +184 -0
  111. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/themes.js +0 -0
  112. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/tools.js +734 -0
  113. data/lib/generators/ckeditor/base/templates/ckeditor/_source/core/ui.js +118 -0
  114. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/core/xml.js +0 -0
  115. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/lang/_languages.js +0 -0
  116. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/_translationstatus.txt +60 -0
  117. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/af.js +752 -0
  118. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/ar.js +752 -0
  119. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/bg.js +752 -0
  120. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/bn.js +752 -0
  121. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/bs.js +752 -0
  122. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/ca.js +752 -0
  123. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/cs.js +752 -0
  124. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/cy.js +752 -0
  125. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/da.js +752 -0
  126. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/de.js +752 -0
  127. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/el.js +752 -0
  128. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/en-au.js +752 -0
  129. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/en-ca.js +752 -0
  130. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/en-gb.js +752 -0
  131. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/en.js +752 -0
  132. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/eo.js +752 -0
  133. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/es.js +752 -0
  134. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/et.js +752 -0
  135. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/eu.js +752 -0
  136. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/fa.js +752 -0
  137. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/fi.js +752 -0
  138. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/fo.js +752 -0
  139. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/fr-ca.js +752 -0
  140. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/fr.js +752 -0
  141. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/gl.js +752 -0
  142. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/gu.js +752 -0
  143. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/he.js +752 -0
  144. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/hi.js +752 -0
  145. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/hr.js +752 -0
  146. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/hu.js +752 -0
  147. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/is.js +752 -0
  148. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/it.js +752 -0
  149. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/ja.js +752 -0
  150. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/km.js +752 -0
  151. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/ko.js +752 -0
  152. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/lt.js +752 -0
  153. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/lv.js +752 -0
  154. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/mn.js +752 -0
  155. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/ms.js +752 -0
  156. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/nb.js +752 -0
  157. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/nl.js +752 -0
  158. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/no.js +752 -0
  159. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/pl.js +752 -0
  160. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/pt-br.js +751 -0
  161. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/pt.js +752 -0
  162. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/ro.js +752 -0
  163. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/ru.js +752 -0
  164. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/sk.js +752 -0
  165. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/sl.js +752 -0
  166. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/sr-latn.js +752 -0
  167. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/sr.js +752 -0
  168. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/sv.js +752 -0
  169. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/th.js +752 -0
  170. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/tr.js +751 -0
  171. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/uk.js +752 -0
  172. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/vi.js +752 -0
  173. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/zh-cn.js +752 -0
  174. data/lib/generators/ckeditor/base/templates/ckeditor/_source/lang/zh.js +752 -0
  175. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/a11yhelp/dialogs/a11yhelp.js +0 -0
  176. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/a11yhelp/lang/en.js +0 -0
  177. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/a11yhelp/lang/he.js +0 -0
  178. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/a11yhelp/plugin.js +0 -0
  179. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/about/dialogs/about.js +0 -0
  180. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/about/dialogs/logo_ckeditor.png +0 -0
  181. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/about/plugin.js +0 -0
  182. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/adobeair/plugin.js +228 -0
  183. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/ajax_save/plugin.js +0 -0
  184. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/attachment/dialogs/attachment.js +0 -0
  185. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/attachment/images/attachment.png +0 -0
  186. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/attachment/lang/en.js +0 -0
  187. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/attachment/lang/ru.js +0 -0
  188. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/attachment/lang/uk.js +0 -0
  189. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/attachment/plugin.js +0 -0
  190. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/autogrow/plugin.js +0 -0
  191. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/basicstyles/plugin.js +0 -0
  192. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/bidi/plugin.js +265 -0
  193. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/blockquote/plugin.js +0 -0
  194. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/button/plugin.js +295 -0
  195. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/clipboard/dialogs/paste.js +212 -0
  196. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/clipboard/plugin.js +412 -0
  197. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/colorbutton/plugin.js +291 -0
  198. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/colordialog/dialogs/colordialog.js +340 -0
  199. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/colordialog/plugin.js +0 -0
  200. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/contextmenu/plugin.js +177 -0
  201. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/dialog/dialogDefinition.js +0 -0
  202. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/dialog/plugin.js +3067 -0
  203. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/dialogadvtab/plugin.js +213 -0
  204. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/dialogui/plugin.js +1523 -0
  205. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/div/dialogs/div.js +0 -0
  206. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/div/plugin.js +121 -0
  207. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/domiterator/plugin.js +0 -0
  208. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/editingblock/plugin.js +0 -0
  209. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/elementspath/plugin.js +201 -0
  210. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/embed/dialogs/embed.js +0 -0
  211. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/embed/images/embed.png +0 -0
  212. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/embed/lang/en.js +0 -0
  213. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/embed/lang/ru.js +0 -0
  214. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/embed/lang/uk.js +0 -0
  215. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/embed/plugin.js +0 -0
  216. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/enterkey/plugin.js +381 -0
  217. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/entities/plugin.js +0 -0
  218. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/fakeobjects/plugin.js +126 -0
  219. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/filebrowser/plugin.js +501 -0
  220. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/find/dialogs/find.js +0 -0
  221. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/find/plugin.js +0 -0
  222. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/flash/dialogs/flash.js +698 -0
  223. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/flash/images/placeholder.png +0 -0
  224. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/flash/plugin.js +168 -0
  225. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/floatpanel/plugin.js +405 -0
  226. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/font/plugin.js +0 -0
  227. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/format/plugin.js +0 -0
  228. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/forms/dialogs/button.js +135 -0
  229. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/forms/dialogs/checkbox.js +153 -0
  230. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/forms/dialogs/form.js +177 -0
  231. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/forms/dialogs/hiddenfield.js +98 -0
  232. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/forms/dialogs/radio.js +135 -0
  233. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/forms/dialogs/select.js +556 -0
  234. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/forms/dialogs/textarea.js +114 -0
  235. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/forms/dialogs/textfield.js +199 -0
  236. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/forms/images/hiddenfield.gif +0 -0
  237. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/forms/plugin.js +284 -0
  238. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/horizontalrule/plugin.js +0 -0
  239. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/htmldataprocessor/plugin.js +543 -0
  240. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/htmlwriter/plugin.js +0 -0
  241. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/iframe/dialogs/iframe.js +257 -0
  242. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/iframe/images/placeholder.png +0 -0
  243. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/iframe/plugin.js +106 -0
  244. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/iframedialog/plugin.js +0 -0
  245. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/image/dialogs/image.js +1388 -0
  246. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/image/plugin.js +81 -0
  247. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/indent/plugin.js +468 -0
  248. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/justify/plugin.js +239 -0
  249. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/keystrokes/plugin.js +0 -0
  250. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/link/dialogs/anchor.js +99 -0
  251. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/link/dialogs/link.js +1426 -0
  252. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/link/images/anchor.gif +0 -0
  253. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/link/plugin.js +241 -0
  254. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/list/plugin.js +723 -0
  255. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/listblock/plugin.js +257 -0
  256. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/liststyle/dialogs/liststyle.js +0 -0
  257. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/liststyle/plugin.js +0 -0
  258. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/maximize/plugin.js +340 -0
  259. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/menu/plugin.js +505 -0
  260. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/menubutton/plugin.js +98 -0
  261. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/newpage/plugin.js +0 -0
  262. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/pagebreak/images/pagebreak.gif +0 -0
  263. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/pagebreak/plugin.js +120 -0
  264. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/panel/plugin.js +395 -0
  265. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/panelbutton/plugin.js +146 -0
  266. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/pastefromword/filter/default.js +1175 -0
  267. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/pastefromword/plugin.js +0 -0
  268. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/pastetext/dialogs/pastetext.js +0 -0
  269. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/pastetext/plugin.js +85 -0
  270. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/placeholder/dialogs/placeholder.js +78 -0
  271. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/placeholder/lang/en.js +16 -0
  272. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/placeholder/placeholder.gif +0 -0
  273. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/placeholder/plugin.js +160 -0
  274. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/popup/plugin.js +0 -0
  275. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/preview/plugin.js +0 -0
  276. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/print/plugin.js +0 -0
  277. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/removeformat/plugin.js +184 -0
  278. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/resize/plugin.js +0 -0
  279. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/richcombo/plugin.js +371 -0
  280. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/save/plugin.js +0 -0
  281. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/scayt/dialogs/options.js +534 -0
  282. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/scayt/dialogs/toolbar.css +0 -0
  283. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/scayt/plugin.js +947 -0
  284. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/selection/plugin.js +0 -0
  285. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/showblocks/images/block_address.png +0 -0
  286. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/showblocks/images/block_blockquote.png +0 -0
  287. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/showblocks/images/block_div.png +0 -0
  288. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/showblocks/images/block_h1.png +0 -0
  289. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/showblocks/images/block_h2.png +0 -0
  290. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/showblocks/images/block_h3.png +0 -0
  291. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/showblocks/images/block_h4.png +0 -0
  292. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/showblocks/images/block_h5.png +0 -0
  293. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/showblocks/images/block_h6.png +0 -0
  294. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/showblocks/images/block_p.png +0 -0
  295. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/showblocks/images/block_pre.png +0 -0
  296. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/showblocks/plugin.js +156 -0
  297. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/showborders/plugin.js +203 -0
  298. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/smiley/dialogs/smiley.js +223 -0
  299. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/angel_smile.gif +0 -0
  300. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/angry_smile.gif +0 -0
  301. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/broken_heart.gif +0 -0
  302. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/confused_smile.gif +0 -0
  303. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/cry_smile.gif +0 -0
  304. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/devil_smile.gif +0 -0
  305. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/embaressed_smile.gif +0 -0
  306. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/envelope.gif +0 -0
  307. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/heart.gif +0 -0
  308. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/kiss.gif +0 -0
  309. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/lightbulb.gif +0 -0
  310. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/omg_smile.gif +0 -0
  311. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/regular_smile.gif +0 -0
  312. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/sad_smile.gif +0 -0
  313. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/shades_smile.gif +0 -0
  314. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/teeth_smile.gif +0 -0
  315. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/thumbs_down.gif +0 -0
  316. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/thumbs_up.gif +0 -0
  317. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/tounge_smile.gif +0 -0
  318. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/whatchutalkingabout_smile.gif +0 -0
  319. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/images/wink_smile.gif +0 -0
  320. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/smiley/plugin.js +0 -0
  321. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/sourcearea/plugin.js +196 -0
  322. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/specialchar/dialogs/specialchar.js +347 -0
  323. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/specialchar/lang/en.js +89 -0
  324. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/specialchar/plugin.js +70 -0
  325. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/styles/plugin.js +1564 -0
  326. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/styles/styles/default.js +0 -0
  327. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/stylescombo/plugin.js +0 -0
  328. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/tab/plugin.js +0 -0
  329. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/table/dialogs/table.js +672 -0
  330. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/table/plugin.js +0 -0
  331. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/tableresize/plugin.js +450 -0
  332. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/tabletools/dialogs/tableCell.js +525 -0
  333. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/tabletools/plugin.js +0 -0
  334. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/templates/dialogs/templates.js +0 -0
  335. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/templates/plugin.js +0 -0
  336. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/templates/templates/default.js +0 -0
  337. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/templates/templates/images/template1.gif +0 -0
  338. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/templates/templates/images/template2.gif +0 -0
  339. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/templates/templates/images/template3.gif +0 -0
  340. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/toolbar/plugin.js +482 -0
  341. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/uicolor/dialogs/uicolor.js +0 -0
  342. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/uicolor/lang/en.js +0 -0
  343. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/uicolor/lang/he.js +0 -0
  344. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/uicolor/plugin.js +0 -0
  345. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/uicolor/uicolor.gif +0 -0
  346. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/uicolor/yui/assets/hue_bg.png +0 -0
  347. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/uicolor/yui/assets/hue_thumb.png +0 -0
  348. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/uicolor/yui/assets/picker_mask.png +0 -0
  349. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/uicolor/yui/assets/picker_thumb.png +0 -0
  350. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/uicolor/yui/assets/yui.css +0 -0
  351. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/uicolor/yui/yui.js +0 -0
  352. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/undo/plugin.js +554 -0
  353. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/wsc/dialogs/ciframe.html +0 -0
  354. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/wsc/dialogs/tmpFrameset.html +0 -0
  355. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/plugins/wsc/dialogs/wsc.css +0 -0
  356. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/wsc/dialogs/wsc.js +191 -0
  357. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/wsc/plugin.js +33 -0
  358. data/lib/generators/ckeditor/base/templates/ckeditor/_source/plugins/wysiwygarea/plugin.js +1224 -0
  359. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/kama/dialog.css +915 -0
  360. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/kama/editor.css +0 -0
  361. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/kama/elementspath.css +0 -0
  362. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/kama/icons.css +361 -0
  363. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/kama/icons.png +0 -0
  364. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/kama/icons_rtl.png +0 -0
  365. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/kama/images/dialog_sides.gif +0 -0
  366. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/kama/images/dialog_sides.png +0 -0
  367. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/kama/images/dialog_sides_rtl.png +0 -0
  368. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/kama/images/mini.gif +0 -0
  369. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/kama/images/noimage.png +0 -0
  370. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/kama/images/sprites.png +0 -0
  371. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/kama/images/sprites_ie6.png +0 -0
  372. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/kama/images/toolbar_start.gif +0 -0
  373. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/kama/mainui.css +202 -0
  374. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/kama/menu.css +244 -0
  375. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/kama/panel.css +0 -0
  376. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/kama/presets.css +0 -0
  377. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/kama/reset.css +0 -0
  378. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/kama/richcombo.css +287 -0
  379. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/kama/skin.js +259 -0
  380. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/kama/templates.css +0 -0
  381. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/kama/toolbar.css +448 -0
  382. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/office2003/dialog.css +826 -0
  383. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/office2003/editor.css +0 -0
  384. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/office2003/elementspath.css +0 -0
  385. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/office2003/icons.css +358 -0
  386. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/office2003/icons.png +0 -0
  387. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/office2003/icons_rtl.png +0 -0
  388. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/office2003/images/dialog_sides.gif +0 -0
  389. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/office2003/images/dialog_sides.png +0 -0
  390. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/office2003/images/dialog_sides_rtl.png +0 -0
  391. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/office2003/images/mini.gif +0 -0
  392. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/office2003/images/noimage.png +0 -0
  393. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/office2003/images/sprites.png +0 -0
  394. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/office2003/images/sprites_ie6.png +0 -0
  395. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/office2003/mainui.css +152 -0
  396. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/office2003/menu.css +241 -0
  397. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/office2003/panel.css +0 -0
  398. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/office2003/presets.css +0 -0
  399. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/office2003/reset.css +0 -0
  400. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/office2003/richcombo.css +318 -0
  401. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/office2003/skin.js +71 -0
  402. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/office2003/templates.css +0 -0
  403. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/office2003/toolbar.css +510 -0
  404. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/v2/dialog.css +842 -0
  405. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/v2/editor.css +0 -0
  406. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/v2/elementspath.css +0 -0
  407. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/v2/icons.css +358 -0
  408. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/v2/icons.png +0 -0
  409. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/v2/icons_rtl.png +0 -0
  410. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/v2/images/dialog_sides.gif +0 -0
  411. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/v2/images/dialog_sides.png +0 -0
  412. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/v2/images/dialog_sides_rtl.png +0 -0
  413. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/v2/images/mini.gif +0 -0
  414. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/v2/images/noimage.png +0 -0
  415. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/v2/images/sprites.png +0 -0
  416. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/v2/images/sprites_ie6.png +0 -0
  417. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/v2/images/toolbar_start.gif +0 -0
  418. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/v2/mainui.css +161 -0
  419. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/v2/menu.css +244 -0
  420. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/v2/panel.css +0 -0
  421. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/v2/presets.css +0 -0
  422. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/v2/reset.css +0 -0
  423. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/v2/richcombo.css +317 -0
  424. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/v2/skin.js +67 -0
  425. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/_source/skins/v2/templates.css +0 -0
  426. data/lib/generators/ckeditor/base/templates/ckeditor/_source/skins/v2/toolbar.css +453 -0
  427. data/lib/generators/ckeditor/base/templates/ckeditor/_source/themes/default/theme.js +368 -0
  428. data/lib/generators/ckeditor/base/templates/ckeditor/adapters/jquery.js +6 -0
  429. data/lib/generators/ckeditor/base/templates/ckeditor/ckeditor.js +139 -0
  430. data/lib/generators/ckeditor/base/templates/ckeditor/ckeditor.pack +211 -0
  431. data/lib/generators/ckeditor/base/templates/ckeditor/ckeditor_basic.js +8 -0
  432. data/lib/generators/ckeditor/base/templates/ckeditor/ckeditor_basic_source.js +20 -0
  433. data/lib/generators/ckeditor/base/templates/ckeditor/ckeditor_source.js +25 -0
  434. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/config.js +0 -0
  435. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/contents.css +0 -0
  436. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/css/ckfinder.css +0 -0
  437. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/css/fck_dialog.css +0 -0
  438. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/css/fck_editor.css +0 -0
  439. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/css/swfupload.css +0 -0
  440. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/images/add.gif +0 -0
  441. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/images/cancelbutton.gif +0 -0
  442. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/images/ckfnothumb.gif +0 -0
  443. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/images/doc.gif +0 -0
  444. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/images/mp3.gif +0 -0
  445. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/images/pdf.gif +0 -0
  446. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/images/rar.gif +0 -0
  447. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/images/refresh.gif +0 -0
  448. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/images/select_files.png +0 -0
  449. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/images/spacer.gif +0 -0
  450. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/images/swf.gif +0 -0
  451. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/images/toolbar.start.gif +0 -0
  452. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/images/xls.gif +0 -0
  453. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/lang/_languages.js +0 -0
  454. data/lib/generators/ckeditor/base/templates/ckeditor/lang/_translationstatus.txt +60 -0
  455. data/lib/generators/ckeditor/base/templates/ckeditor/lang/af.js +6 -0
  456. data/lib/generators/ckeditor/base/templates/ckeditor/lang/ar.js +6 -0
  457. data/lib/generators/ckeditor/base/templates/ckeditor/lang/bg.js +6 -0
  458. data/lib/generators/ckeditor/base/templates/ckeditor/lang/bn.js +6 -0
  459. data/lib/generators/ckeditor/base/templates/ckeditor/lang/bs.js +6 -0
  460. data/lib/generators/ckeditor/base/templates/ckeditor/lang/ca.js +6 -0
  461. data/lib/generators/ckeditor/base/templates/ckeditor/lang/cs.js +6 -0
  462. data/lib/generators/ckeditor/base/templates/ckeditor/lang/cy.js +6 -0
  463. data/lib/generators/ckeditor/base/templates/ckeditor/lang/da.js +6 -0
  464. data/lib/generators/ckeditor/base/templates/ckeditor/lang/de.js +6 -0
  465. data/lib/generators/ckeditor/base/templates/ckeditor/lang/el.js +6 -0
  466. data/lib/generators/ckeditor/base/templates/ckeditor/lang/en-au.js +6 -0
  467. data/lib/generators/ckeditor/base/templates/ckeditor/lang/en-ca.js +6 -0
  468. data/lib/generators/ckeditor/base/templates/ckeditor/lang/en-gb.js +6 -0
  469. data/lib/generators/ckeditor/base/templates/ckeditor/lang/en.js +6 -0
  470. data/lib/generators/ckeditor/base/templates/ckeditor/lang/eo.js +6 -0
  471. data/lib/generators/ckeditor/base/templates/ckeditor/lang/es.js +6 -0
  472. data/lib/generators/ckeditor/base/templates/ckeditor/lang/et.js +6 -0
  473. data/lib/generators/ckeditor/base/templates/ckeditor/lang/eu.js +6 -0
  474. data/lib/generators/ckeditor/base/templates/ckeditor/lang/fa.js +6 -0
  475. data/lib/generators/ckeditor/base/templates/ckeditor/lang/fi.js +6 -0
  476. data/lib/generators/ckeditor/base/templates/ckeditor/lang/fo.js +6 -0
  477. data/lib/generators/ckeditor/base/templates/ckeditor/lang/fr-ca.js +6 -0
  478. data/lib/generators/ckeditor/base/templates/ckeditor/lang/fr.js +6 -0
  479. data/lib/generators/ckeditor/base/templates/ckeditor/lang/gl.js +6 -0
  480. data/lib/generators/ckeditor/base/templates/ckeditor/lang/gu.js +6 -0
  481. data/lib/generators/ckeditor/base/templates/ckeditor/lang/he.js +6 -0
  482. data/lib/generators/ckeditor/base/templates/ckeditor/lang/hi.js +6 -0
  483. data/lib/generators/ckeditor/base/templates/ckeditor/lang/hr.js +6 -0
  484. data/lib/generators/ckeditor/base/templates/ckeditor/lang/hu.js +6 -0
  485. data/lib/generators/ckeditor/base/templates/ckeditor/lang/is.js +6 -0
  486. data/lib/generators/ckeditor/base/templates/ckeditor/lang/it.js +6 -0
  487. data/lib/generators/ckeditor/base/templates/ckeditor/lang/ja.js +6 -0
  488. data/lib/generators/ckeditor/base/templates/ckeditor/lang/km.js +6 -0
  489. data/lib/generators/ckeditor/base/templates/ckeditor/lang/ko.js +6 -0
  490. data/lib/generators/ckeditor/base/templates/ckeditor/lang/lt.js +6 -0
  491. data/lib/generators/ckeditor/base/templates/ckeditor/lang/lv.js +6 -0
  492. data/lib/generators/ckeditor/base/templates/ckeditor/lang/mn.js +6 -0
  493. data/lib/generators/ckeditor/base/templates/ckeditor/lang/ms.js +6 -0
  494. data/lib/generators/ckeditor/base/templates/ckeditor/lang/nb.js +6 -0
  495. data/lib/generators/ckeditor/base/templates/ckeditor/lang/nl.js +6 -0
  496. data/lib/generators/ckeditor/base/templates/ckeditor/lang/no.js +6 -0
  497. data/lib/generators/ckeditor/base/templates/ckeditor/lang/pl.js +6 -0
  498. data/lib/generators/ckeditor/base/templates/ckeditor/lang/pt-br.js +6 -0
  499. data/lib/generators/ckeditor/base/templates/ckeditor/lang/pt.js +6 -0
  500. data/lib/generators/ckeditor/base/templates/ckeditor/lang/ro.js +6 -0
  501. data/lib/generators/ckeditor/base/templates/ckeditor/lang/ru.js +6 -0
  502. data/lib/generators/ckeditor/base/templates/ckeditor/lang/sk.js +6 -0
  503. data/lib/generators/ckeditor/base/templates/ckeditor/lang/sl.js +6 -0
  504. data/lib/generators/ckeditor/base/templates/ckeditor/lang/sr-latn.js +6 -0
  505. data/lib/generators/ckeditor/base/templates/ckeditor/lang/sr.js +6 -0
  506. data/lib/generators/ckeditor/base/templates/ckeditor/lang/sv.js +6 -0
  507. data/lib/generators/ckeditor/base/templates/ckeditor/lang/th.js +6 -0
  508. data/lib/generators/ckeditor/base/templates/ckeditor/lang/tr.js +6 -0
  509. data/lib/generators/ckeditor/base/templates/ckeditor/lang/uk.js +6 -0
  510. data/lib/generators/ckeditor/base/templates/ckeditor/lang/vi.js +6 -0
  511. data/lib/generators/ckeditor/base/templates/ckeditor/lang/zh-cn.js +6 -0
  512. data/lib/generators/ckeditor/base/templates/ckeditor/lang/zh.js +6 -0
  513. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +0 -0
  514. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/a11yhelp/lang/en.js +0 -0
  515. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/a11yhelp/lang/he.js +0 -0
  516. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/about/dialogs/about.js +0 -0
  517. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/about/dialogs/logo_ckeditor.png +0 -0
  518. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/adobeair/plugin.js +6 -0
  519. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/ajax_save/plugin.js +0 -0
  520. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/attachment/dialogs/attachment.js +0 -0
  521. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/attachment/images/attachment.png +0 -0
  522. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/attachment/lang/en.js +0 -0
  523. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/attachment/lang/ru.js +0 -0
  524. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/attachment/lang/uk.js +0 -0
  525. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/attachment/plugin.js +0 -0
  526. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/autogrow/plugin.js +0 -0
  527. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/clipboard/dialogs/paste.js +7 -0
  528. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/colordialog/dialogs/colordialog.js +7 -0
  529. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/dialog/dialogDefinition.js +0 -0
  530. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/div/dialogs/div.js +0 -0
  531. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/embed/dialogs/embed.js +0 -0
  532. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/embed/images/embed.png +0 -0
  533. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/embed/lang/en.js +0 -0
  534. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/embed/lang/ru.js +0 -0
  535. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/embed/lang/uk.js +0 -0
  536. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/embed/plugin.js +0 -0
  537. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/find/dialogs/find.js +0 -0
  538. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/flash/dialogs/flash.js +9 -0
  539. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/flash/images/placeholder.png +0 -0
  540. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/forms/dialogs/button.js +6 -0
  541. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/forms/dialogs/checkbox.js +6 -0
  542. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/forms/dialogs/form.js +6 -0
  543. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/forms/dialogs/hiddenfield.js +6 -0
  544. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/forms/dialogs/radio.js +6 -0
  545. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/forms/dialogs/select.js +9 -0
  546. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/forms/dialogs/textarea.js +6 -0
  547. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/forms/dialogs/textfield.js +6 -0
  548. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/forms/images/hiddenfield.gif +0 -0
  549. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/iframe/dialogs/iframe.js +7 -0
  550. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/iframe/images/placeholder.png +0 -0
  551. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/iframedialog/plugin.js +0 -0
  552. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/image/dialogs/image.js +13 -0
  553. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/link/dialogs/anchor.js +6 -0
  554. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/link/dialogs/link.js +11 -0
  555. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/link/images/anchor.gif +0 -0
  556. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/liststyle/dialogs/liststyle.js +0 -0
  557. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/pagebreak/images/pagebreak.gif +0 -0
  558. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/pastefromword/filter/default.js +10 -0
  559. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/pastetext/dialogs/pastetext.js +0 -0
  560. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/placeholder/dialogs/placeholder.js +6 -0
  561. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/placeholder/lang/en.js +6 -0
  562. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/placeholder/placeholder.gif +0 -0
  563. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/placeholder/plugin.js +6 -0
  564. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/scayt/dialogs/options.js +8 -0
  565. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/scayt/dialogs/toolbar.css +0 -0
  566. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/showblocks/images/block_address.png +0 -0
  567. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/showblocks/images/block_blockquote.png +0 -0
  568. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/showblocks/images/block_div.png +0 -0
  569. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/showblocks/images/block_h1.png +0 -0
  570. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/showblocks/images/block_h2.png +0 -0
  571. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/showblocks/images/block_h3.png +0 -0
  572. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/showblocks/images/block_h4.png +0 -0
  573. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/showblocks/images/block_h5.png +0 -0
  574. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/showblocks/images/block_h6.png +0 -0
  575. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/showblocks/images/block_p.png +0 -0
  576. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/showblocks/images/block_pre.png +0 -0
  577. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/smiley/dialogs/smiley.js +7 -0
  578. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/angel_smile.gif +0 -0
  579. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/angry_smile.gif +0 -0
  580. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/broken_heart.gif +0 -0
  581. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/confused_smile.gif +0 -0
  582. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/cry_smile.gif +0 -0
  583. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/devil_smile.gif +0 -0
  584. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/embaressed_smile.gif +0 -0
  585. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/envelope.gif +0 -0
  586. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/heart.gif +0 -0
  587. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/kiss.gif +0 -0
  588. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/lightbulb.gif +0 -0
  589. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/omg_smile.gif +0 -0
  590. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/regular_smile.gif +0 -0
  591. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/sad_smile.gif +0 -0
  592. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/shades_smile.gif +0 -0
  593. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/teeth_smile.gif +0 -0
  594. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/thumbs_down.gif +0 -0
  595. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/thumbs_up.gif +0 -0
  596. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/tounge_smile.gif +0 -0
  597. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif +0 -0
  598. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/smiley/images/wink_smile.gif +0 -0
  599. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/specialchar/dialogs/specialchar.js +7 -0
  600. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/specialchar/lang/en.js +6 -0
  601. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/styles/styles/default.js +0 -0
  602. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/table/dialogs/table.js +9 -0
  603. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/tableresize/plugin.js +7 -0
  604. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/tabletools/dialogs/tableCell.js +8 -0
  605. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/templates/dialogs/templates.js +0 -0
  606. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/templates/templates/default.js +0 -0
  607. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/templates/templates/images/template1.gif +0 -0
  608. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/templates/templates/images/template2.gif +0 -0
  609. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/templates/templates/images/template3.gif +0 -0
  610. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/uicolor/dialogs/uicolor.js +0 -0
  611. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/uicolor/lang/en.js +0 -0
  612. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/uicolor/lang/he.js +0 -0
  613. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/uicolor/plugin.js +0 -0
  614. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/uicolor/uicolor.gif +0 -0
  615. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/uicolor/yui/assets/hue_bg.png +0 -0
  616. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/uicolor/yui/assets/hue_thumb.png +0 -0
  617. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/uicolor/yui/assets/picker_mask.png +0 -0
  618. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/uicolor/yui/assets/picker_thumb.png +0 -0
  619. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/uicolor/yui/assets/yui.css +0 -0
  620. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/uicolor/yui/yui.js +0 -0
  621. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/wsc/dialogs/ciframe.html +0 -0
  622. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/wsc/dialogs/tmpFrameset.html +0 -0
  623. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/plugins/wsc/dialogs/wsc.css +0 -0
  624. data/lib/generators/ckeditor/base/templates/ckeditor/plugins/wsc/dialogs/wsc.js +7 -0
  625. data/lib/generators/ckeditor/base/templates/ckeditor/skins/kama/dialog.css +9 -0
  626. data/lib/generators/ckeditor/base/templates/ckeditor/skins/kama/editor.css +13 -0
  627. data/lib/generators/ckeditor/base/templates/ckeditor/skins/kama/icons.png +0 -0
  628. data/lib/generators/ckeditor/base/templates/ckeditor/skins/kama/icons_rtl.png +0 -0
  629. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/kama/images/dialog_sides.gif +0 -0
  630. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/kama/images/dialog_sides.png +0 -0
  631. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/kama/images/dialog_sides_rtl.png +0 -0
  632. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/kama/images/mini.gif +0 -0
  633. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/kama/images/noimage.png +0 -0
  634. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/kama/images/sprites.png +0 -0
  635. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/kama/images/sprites_ie6.png +0 -0
  636. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/kama/images/toolbar_start.gif +0 -0
  637. data/lib/generators/ckeditor/base/templates/ckeditor/skins/kama/skin.js +7 -0
  638. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/kama/templates.css +0 -0
  639. data/lib/generators/ckeditor/base/templates/ckeditor/skins/office2003/dialog.css +9 -0
  640. data/lib/generators/ckeditor/base/templates/ckeditor/skins/office2003/editor.css +14 -0
  641. data/lib/generators/ckeditor/base/templates/ckeditor/skins/office2003/icons.png +0 -0
  642. data/lib/generators/ckeditor/base/templates/ckeditor/skins/office2003/icons_rtl.png +0 -0
  643. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/office2003/images/dialog_sides.gif +0 -0
  644. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/office2003/images/dialog_sides.png +0 -0
  645. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/office2003/images/dialog_sides_rtl.png +0 -0
  646. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/office2003/images/mini.gif +0 -0
  647. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/office2003/images/noimage.png +0 -0
  648. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/office2003/images/sprites.png +0 -0
  649. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/office2003/images/sprites_ie6.png +0 -0
  650. data/lib/generators/ckeditor/base/templates/ckeditor/skins/office2003/skin.js +6 -0
  651. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/office2003/templates.css +0 -0
  652. data/lib/generators/ckeditor/base/templates/ckeditor/skins/v2/dialog.css +9 -0
  653. data/lib/generators/ckeditor/base/templates/ckeditor/skins/v2/editor.css +13 -0
  654. data/lib/generators/ckeditor/base/templates/ckeditor/skins/v2/icons.png +0 -0
  655. data/lib/generators/ckeditor/base/templates/ckeditor/skins/v2/icons_rtl.png +0 -0
  656. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/v2/images/dialog_sides.gif +0 -0
  657. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/v2/images/dialog_sides.png +0 -0
  658. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/v2/images/dialog_sides_rtl.png +0 -0
  659. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/v2/images/mini.gif +0 -0
  660. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/v2/images/noimage.png +0 -0
  661. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/v2/images/sprites.png +0 -0
  662. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/v2/images/sprites_ie6.png +0 -0
  663. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/v2/images/toolbar_start.gif +0 -0
  664. data/lib/generators/ckeditor/base/templates/ckeditor/skins/v2/skin.js +6 -0
  665. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/skins/v2/templates.css +0 -0
  666. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/swfupload/fileprogress.js +0 -0
  667. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/swfupload/handlers.js +0 -0
  668. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/swfupload/mootools-1.2.3-core-yc.js +0 -0
  669. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/swfupload/querystring.js +0 -0
  670. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/swfupload/swfupload.js +0 -0
  671. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/swfupload/swfupload.queue.js +0 -0
  672. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/swfupload/swfupload.swf +0 -0
  673. data/{generators/ckeditor_install → lib/generators/ckeditor/base}/templates/ckeditor/swfupload/swfupload.swfobject.js +0 -0
  674. data/lib/generators/ckeditor/base/templates/ckeditor/themes/default/theme.js +8 -0
  675. data/lib/generators/ckeditor/migration/USAGE +12 -0
  676. data/lib/generators/ckeditor/migration/migration_generator.rb +46 -0
  677. data/{generators/ckeditor_migration → lib/generators/ckeditor/migration}/templates/models/attachment_fu/asset.rb +0 -0
  678. data/{generators/ckeditor_migration → lib/generators/ckeditor/migration}/templates/models/attachment_fu/attachment_file.rb +0 -0
  679. data/{generators/ckeditor_migration → lib/generators/ckeditor/migration}/templates/models/attachment_fu/migration.rb +0 -0
  680. data/{generators/ckeditor_migration → lib/generators/ckeditor/migration}/templates/models/attachment_fu/picture.rb +0 -0
  681. data/lib/generators/ckeditor/migration/templates/models/paperclip/asset.rb +95 -0
  682. data/{generators/ckeditor_migration → lib/generators/ckeditor/migration}/templates/models/paperclip/attachment_file.rb +0 -0
  683. data/{generators/ckeditor_migration → lib/generators/ckeditor/migration}/templates/models/paperclip/migration.rb +0 -0
  684. data/{generators/ckeditor_migration → lib/generators/ckeditor/migration}/templates/models/paperclip/picture.rb +0 -0
  685. data/lib/tasks/ckeditor_tasks.rake +3 -0
  686. metadata +693 -670
  687. data/app/controllers/ckeditor_controller.rb +0 -85
  688. data/app/helpers/ckeditor_helper.rb +0 -38
  689. data/app/views/ckeditor/files.html.erb +0 -91
  690. data/app/views/ckeditor/images.html.erb +0 -91
  691. data/examples/s3/s3.yml +0 -2
  692. data/generators/ckeditor_install/USAGE +0 -7
  693. data/generators/ckeditor_install/ckeditor_install_generator.rb +0 -28
  694. data/generators/ckeditor_install/templates/README +0 -0
  695. data/generators/ckeditor_install/templates/ckeditor.rb +0 -56
  696. data/generators/ckeditor_install/templates/ckeditor/CHANGES.html +0 -993
  697. data/generators/ckeditor_install/templates/ckeditor/_samples/api.html +0 -152
  698. data/generators/ckeditor_install/templates/ckeditor/_samples/index.html +0 -57
  699. data/generators/ckeditor_install/templates/ckeditor/_source/adapters/jquery.js +0 -297
  700. data/generators/ckeditor_install/templates/ckeditor/_source/core/ckeditor_base.js +0 -196
  701. data/generators/ckeditor_install/templates/ckeditor/_source/core/config.js +0 -430
  702. data/generators/ckeditor_install/templates/ckeditor/_source/core/dom/document.js +0 -224
  703. data/generators/ckeditor_install/templates/ckeditor/_source/core/dom/domobject.js +0 -255
  704. data/generators/ckeditor_install/templates/ckeditor/_source/core/dom/element.js +0 -1564
  705. data/generators/ckeditor_install/templates/ckeditor/_source/core/dom/node.js +0 -683
  706. data/generators/ckeditor_install/templates/ckeditor/_source/core/dom/range.js +0 -1883
  707. data/generators/ckeditor_install/templates/ckeditor/_source/core/dom/rangelist.js +0 -214
  708. data/generators/ckeditor_install/templates/ckeditor/_source/core/dom/walker.js +0 -445
  709. data/generators/ckeditor_install/templates/ckeditor/_source/core/editor.js +0 -924
  710. data/generators/ckeditor_install/templates/ckeditor/_source/core/env.js +0 -270
  711. data/generators/ckeditor_install/templates/ckeditor/_source/core/htmlparser/element.js +0 -240
  712. data/generators/ckeditor_install/templates/ckeditor/_source/core/htmlparser/fragment.js +0 -504
  713. data/generators/ckeditor_install/templates/ckeditor/_source/core/imagecacher.js +0 -80
  714. data/generators/ckeditor_install/templates/ckeditor/_source/core/loader.js +0 -243
  715. data/generators/ckeditor_install/templates/ckeditor/_source/core/skins.js +0 -212
  716. data/generators/ckeditor_install/templates/ckeditor/_source/core/tools.js +0 -734
  717. data/generators/ckeditor_install/templates/ckeditor/_source/core/ui.js +0 -116
  718. data/generators/ckeditor_install/templates/ckeditor/_source/lang/_translationstatus.txt +0 -60
  719. data/generators/ckeditor_install/templates/ckeditor/_source/lang/af.js +0 -758
  720. data/generators/ckeditor_install/templates/ckeditor/_source/lang/ar.js +0 -758
  721. data/generators/ckeditor_install/templates/ckeditor/_source/lang/bg.js +0 -758
  722. data/generators/ckeditor_install/templates/ckeditor/_source/lang/bn.js +0 -758
  723. data/generators/ckeditor_install/templates/ckeditor/_source/lang/bs.js +0 -758
  724. data/generators/ckeditor_install/templates/ckeditor/_source/lang/ca.js +0 -758
  725. data/generators/ckeditor_install/templates/ckeditor/_source/lang/cs.js +0 -758
  726. data/generators/ckeditor_install/templates/ckeditor/_source/lang/cy.js +0 -758
  727. data/generators/ckeditor_install/templates/ckeditor/_source/lang/da.js +0 -758
  728. data/generators/ckeditor_install/templates/ckeditor/_source/lang/de.js +0 -758
  729. data/generators/ckeditor_install/templates/ckeditor/_source/lang/el.js +0 -758
  730. data/generators/ckeditor_install/templates/ckeditor/_source/lang/en-au.js +0 -758
  731. data/generators/ckeditor_install/templates/ckeditor/_source/lang/en-ca.js +0 -758
  732. data/generators/ckeditor_install/templates/ckeditor/_source/lang/en-gb.js +0 -758
  733. data/generators/ckeditor_install/templates/ckeditor/_source/lang/en.js +0 -758
  734. data/generators/ckeditor_install/templates/ckeditor/_source/lang/eo.js +0 -758
  735. data/generators/ckeditor_install/templates/ckeditor/_source/lang/es.js +0 -758
  736. data/generators/ckeditor_install/templates/ckeditor/_source/lang/et.js +0 -758
  737. data/generators/ckeditor_install/templates/ckeditor/_source/lang/eu.js +0 -758
  738. data/generators/ckeditor_install/templates/ckeditor/_source/lang/fa.js +0 -758
  739. data/generators/ckeditor_install/templates/ckeditor/_source/lang/fi.js +0 -758
  740. data/generators/ckeditor_install/templates/ckeditor/_source/lang/fo.js +0 -758
  741. data/generators/ckeditor_install/templates/ckeditor/_source/lang/fr-ca.js +0 -758
  742. data/generators/ckeditor_install/templates/ckeditor/_source/lang/fr.js +0 -758
  743. data/generators/ckeditor_install/templates/ckeditor/_source/lang/gl.js +0 -758
  744. data/generators/ckeditor_install/templates/ckeditor/_source/lang/gu.js +0 -758
  745. data/generators/ckeditor_install/templates/ckeditor/_source/lang/he.js +0 -758
  746. data/generators/ckeditor_install/templates/ckeditor/_source/lang/hi.js +0 -758
  747. data/generators/ckeditor_install/templates/ckeditor/_source/lang/hr.js +0 -758
  748. data/generators/ckeditor_install/templates/ckeditor/_source/lang/hu.js +0 -758
  749. data/generators/ckeditor_install/templates/ckeditor/_source/lang/is.js +0 -758
  750. data/generators/ckeditor_install/templates/ckeditor/_source/lang/it.js +0 -758
  751. data/generators/ckeditor_install/templates/ckeditor/_source/lang/ja.js +0 -758
  752. data/generators/ckeditor_install/templates/ckeditor/_source/lang/km.js +0 -758
  753. data/generators/ckeditor_install/templates/ckeditor/_source/lang/ko.js +0 -758
  754. data/generators/ckeditor_install/templates/ckeditor/_source/lang/lt.js +0 -758
  755. data/generators/ckeditor_install/templates/ckeditor/_source/lang/lv.js +0 -758
  756. data/generators/ckeditor_install/templates/ckeditor/_source/lang/mn.js +0 -758
  757. data/generators/ckeditor_install/templates/ckeditor/_source/lang/ms.js +0 -758
  758. data/generators/ckeditor_install/templates/ckeditor/_source/lang/nb.js +0 -758
  759. data/generators/ckeditor_install/templates/ckeditor/_source/lang/nl.js +0 -758
  760. data/generators/ckeditor_install/templates/ckeditor/_source/lang/no.js +0 -758
  761. data/generators/ckeditor_install/templates/ckeditor/_source/lang/pl.js +0 -758
  762. data/generators/ckeditor_install/templates/ckeditor/_source/lang/pt-br.js +0 -757
  763. data/generators/ckeditor_install/templates/ckeditor/_source/lang/pt.js +0 -758
  764. data/generators/ckeditor_install/templates/ckeditor/_source/lang/ro.js +0 -758
  765. data/generators/ckeditor_install/templates/ckeditor/_source/lang/ru.js +0 -758
  766. data/generators/ckeditor_install/templates/ckeditor/_source/lang/sk.js +0 -758
  767. data/generators/ckeditor_install/templates/ckeditor/_source/lang/sl.js +0 -758
  768. data/generators/ckeditor_install/templates/ckeditor/_source/lang/sr-latn.js +0 -758
  769. data/generators/ckeditor_install/templates/ckeditor/_source/lang/sr.js +0 -758
  770. data/generators/ckeditor_install/templates/ckeditor/_source/lang/sv.js +0 -758
  771. data/generators/ckeditor_install/templates/ckeditor/_source/lang/th.js +0 -758
  772. data/generators/ckeditor_install/templates/ckeditor/_source/lang/tr.js +0 -757
  773. data/generators/ckeditor_install/templates/ckeditor/_source/lang/uk.js +0 -758
  774. data/generators/ckeditor_install/templates/ckeditor/_source/lang/vi.js +0 -758
  775. data/generators/ckeditor_install/templates/ckeditor/_source/lang/zh-cn.js +0 -758
  776. data/generators/ckeditor_install/templates/ckeditor/_source/lang/zh.js +0 -758
  777. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/bidi/plugin.js +0 -259
  778. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/button/plugin.js +0 -277
  779. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/clipboard/dialogs/paste.js +0 -205
  780. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/clipboard/plugin.js +0 -412
  781. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/colorbutton/plugin.js +0 -250
  782. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/colordialog/dialogs/colordialog.js +0 -336
  783. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/contextmenu/plugin.js +0 -290
  784. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/dialog/plugin.js +0 -3015
  785. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/dialogadvtab/plugin.js +0 -213
  786. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/dialogui/plugin.js +0 -1523
  787. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/div/plugin.js +0 -121
  788. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/elementspath/plugin.js +0 -206
  789. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/enterkey/plugin.js +0 -363
  790. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/fakeobjects/plugin.js +0 -122
  791. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/filebrowser/plugin.js +0 -501
  792. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/flash/dialogs/flash.js +0 -698
  793. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/flash/plugin.js +0 -168
  794. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/floatpanel/plugin.js +0 -402
  795. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/forms/dialogs/button.js +0 -135
  796. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/forms/dialogs/checkbox.js +0 -153
  797. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/forms/dialogs/form.js +0 -177
  798. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/forms/dialogs/hiddenfield.js +0 -98
  799. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/forms/dialogs/radio.js +0 -135
  800. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/forms/dialogs/select.js +0 -556
  801. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/forms/dialogs/textarea.js +0 -114
  802. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/forms/dialogs/textfield.js +0 -199
  803. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/forms/plugin.js +0 -284
  804. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/htmldataprocessor/plugin.js +0 -502
  805. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/image/dialogs/image.js +0 -1396
  806. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/image/plugin.js +0 -81
  807. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/indent/plugin.js +0 -455
  808. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/justify/plugin.js +0 -221
  809. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/link/dialogs/anchor.js +0 -99
  810. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/link/dialogs/link.js +0 -1424
  811. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/link/plugin.js +0 -238
  812. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/list/plugin.js +0 -710
  813. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/listblock/plugin.js +0 -257
  814. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/maximize/plugin.js +0 -350
  815. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/menu/plugin.js +0 -408
  816. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/menubutton/plugin.js +0 -94
  817. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/pagebreak/plugin.js +0 -121
  818. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/panel/plugin.js +0 -399
  819. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/panelbutton/plugin.js +0 -147
  820. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/pastefromword/filter/default.js +0 -1170
  821. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/pastetext/plugin.js +0 -145
  822. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/removeformat/plugin.js +0 -184
  823. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/richcombo/plugin.js +0 -370
  824. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/scayt/dialogs/options.js +0 -534
  825. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/scayt/plugin.js +0 -945
  826. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/showblocks/plugin.js +0 -155
  827. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/showborders/plugin.js +0 -201
  828. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/smiley/dialogs/smiley.js +0 -218
  829. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/sourcearea/plugin.js +0 -207
  830. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/specialchar/dialogs/specialchar.js +0 -409
  831. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/specialchar/plugin.js +0 -29
  832. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/styles/plugin.js +0 -1479
  833. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/table/dialogs/table.js +0 -672
  834. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/tableresize/plugin.js +0 -450
  835. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/tabletools/dialogs/tableCell.js +0 -533
  836. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/toolbar/plugin.js +0 -481
  837. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/undo/plugin.js +0 -554
  838. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/wsc/dialogs/wsc.js +0 -176
  839. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/wsc/plugin.js +0 -33
  840. data/generators/ckeditor_install/templates/ckeditor/_source/plugins/wysiwygarea/plugin.js +0 -1146
  841. data/generators/ckeditor_install/templates/ckeditor/_source/skins/kama/dialog.css +0 -882
  842. data/generators/ckeditor_install/templates/ckeditor/_source/skins/kama/icons.css +0 -357
  843. data/generators/ckeditor_install/templates/ckeditor/_source/skins/kama/icons.png +0 -0
  844. data/generators/ckeditor_install/templates/ckeditor/_source/skins/kama/icons_rtl.png +0 -0
  845. data/generators/ckeditor_install/templates/ckeditor/_source/skins/kama/mainui.css +0 -195
  846. data/generators/ckeditor_install/templates/ckeditor/_source/skins/kama/menu.css +0 -216
  847. data/generators/ckeditor_install/templates/ckeditor/_source/skins/kama/richcombo.css +0 -277
  848. data/generators/ckeditor_install/templates/ckeditor/_source/skins/kama/skin.js +0 -268
  849. data/generators/ckeditor_install/templates/ckeditor/_source/skins/kama/toolbar.css +0 -409
  850. data/generators/ckeditor_install/templates/ckeditor/_source/skins/office2003/dialog.css +0 -785
  851. data/generators/ckeditor_install/templates/ckeditor/_source/skins/office2003/icons.css +0 -354
  852. data/generators/ckeditor_install/templates/ckeditor/_source/skins/office2003/icons.png +0 -0
  853. data/generators/ckeditor_install/templates/ckeditor/_source/skins/office2003/icons_rtl.png +0 -0
  854. data/generators/ckeditor_install/templates/ckeditor/_source/skins/office2003/mainui.css +0 -145
  855. data/generators/ckeditor_install/templates/ckeditor/_source/skins/office2003/menu.css +0 -213
  856. data/generators/ckeditor_install/templates/ckeditor/_source/skins/office2003/richcombo.css +0 -297
  857. data/generators/ckeditor_install/templates/ckeditor/_source/skins/office2003/skin.js +0 -81
  858. data/generators/ckeditor_install/templates/ckeditor/_source/skins/office2003/toolbar.css +0 -470
  859. data/generators/ckeditor_install/templates/ckeditor/_source/skins/v2/dialog.css +0 -800
  860. data/generators/ckeditor_install/templates/ckeditor/_source/skins/v2/icons.css +0 -354
  861. data/generators/ckeditor_install/templates/ckeditor/_source/skins/v2/icons.png +0 -0
  862. data/generators/ckeditor_install/templates/ckeditor/_source/skins/v2/icons_rtl.png +0 -0
  863. data/generators/ckeditor_install/templates/ckeditor/_source/skins/v2/mainui.css +0 -154
  864. data/generators/ckeditor_install/templates/ckeditor/_source/skins/v2/menu.css +0 -215
  865. data/generators/ckeditor_install/templates/ckeditor/_source/skins/v2/richcombo.css +0 -297
  866. data/generators/ckeditor_install/templates/ckeditor/_source/skins/v2/skin.js +0 -77
  867. data/generators/ckeditor_install/templates/ckeditor/_source/skins/v2/toolbar.css +0 -423
  868. data/generators/ckeditor_install/templates/ckeditor/_source/themes/default/theme.js +0 -361
  869. data/generators/ckeditor_install/templates/ckeditor/adapters/jquery.js +0 -6
  870. data/generators/ckeditor_install/templates/ckeditor/ckeditor.js +0 -137
  871. data/generators/ckeditor_install/templates/ckeditor/ckeditor.pack +0 -211
  872. data/generators/ckeditor_install/templates/ckeditor/ckeditor_basic.js +0 -8
  873. data/generators/ckeditor_install/templates/ckeditor/ckeditor_basic_source.js +0 -20
  874. data/generators/ckeditor_install/templates/ckeditor/ckeditor_source.js +0 -25
  875. data/generators/ckeditor_install/templates/ckeditor/lang/_translationstatus.txt +0 -60
  876. data/generators/ckeditor_install/templates/ckeditor/lang/af.js +0 -6
  877. data/generators/ckeditor_install/templates/ckeditor/lang/ar.js +0 -6
  878. data/generators/ckeditor_install/templates/ckeditor/lang/bg.js +0 -6
  879. data/generators/ckeditor_install/templates/ckeditor/lang/bn.js +0 -6
  880. data/generators/ckeditor_install/templates/ckeditor/lang/bs.js +0 -6
  881. data/generators/ckeditor_install/templates/ckeditor/lang/ca.js +0 -6
  882. data/generators/ckeditor_install/templates/ckeditor/lang/cs.js +0 -6
  883. data/generators/ckeditor_install/templates/ckeditor/lang/cy.js +0 -6
  884. data/generators/ckeditor_install/templates/ckeditor/lang/da.js +0 -6
  885. data/generators/ckeditor_install/templates/ckeditor/lang/de.js +0 -6
  886. data/generators/ckeditor_install/templates/ckeditor/lang/el.js +0 -6
  887. data/generators/ckeditor_install/templates/ckeditor/lang/en-au.js +0 -6
  888. data/generators/ckeditor_install/templates/ckeditor/lang/en-ca.js +0 -6
  889. data/generators/ckeditor_install/templates/ckeditor/lang/en-gb.js +0 -6
  890. data/generators/ckeditor_install/templates/ckeditor/lang/en.js +0 -6
  891. data/generators/ckeditor_install/templates/ckeditor/lang/eo.js +0 -6
  892. data/generators/ckeditor_install/templates/ckeditor/lang/es.js +0 -6
  893. data/generators/ckeditor_install/templates/ckeditor/lang/et.js +0 -6
  894. data/generators/ckeditor_install/templates/ckeditor/lang/eu.js +0 -6
  895. data/generators/ckeditor_install/templates/ckeditor/lang/fa.js +0 -6
  896. data/generators/ckeditor_install/templates/ckeditor/lang/fi.js +0 -6
  897. data/generators/ckeditor_install/templates/ckeditor/lang/fo.js +0 -6
  898. data/generators/ckeditor_install/templates/ckeditor/lang/fr-ca.js +0 -6
  899. data/generators/ckeditor_install/templates/ckeditor/lang/fr.js +0 -6
  900. data/generators/ckeditor_install/templates/ckeditor/lang/gl.js +0 -6
  901. data/generators/ckeditor_install/templates/ckeditor/lang/gu.js +0 -6
  902. data/generators/ckeditor_install/templates/ckeditor/lang/he.js +0 -6
  903. data/generators/ckeditor_install/templates/ckeditor/lang/hi.js +0 -6
  904. data/generators/ckeditor_install/templates/ckeditor/lang/hr.js +0 -6
  905. data/generators/ckeditor_install/templates/ckeditor/lang/hu.js +0 -6
  906. data/generators/ckeditor_install/templates/ckeditor/lang/is.js +0 -6
  907. data/generators/ckeditor_install/templates/ckeditor/lang/it.js +0 -6
  908. data/generators/ckeditor_install/templates/ckeditor/lang/ja.js +0 -6
  909. data/generators/ckeditor_install/templates/ckeditor/lang/km.js +0 -6
  910. data/generators/ckeditor_install/templates/ckeditor/lang/ko.js +0 -6
  911. data/generators/ckeditor_install/templates/ckeditor/lang/lt.js +0 -6
  912. data/generators/ckeditor_install/templates/ckeditor/lang/lv.js +0 -6
  913. data/generators/ckeditor_install/templates/ckeditor/lang/mn.js +0 -6
  914. data/generators/ckeditor_install/templates/ckeditor/lang/ms.js +0 -6
  915. data/generators/ckeditor_install/templates/ckeditor/lang/nb.js +0 -6
  916. data/generators/ckeditor_install/templates/ckeditor/lang/nl.js +0 -6
  917. data/generators/ckeditor_install/templates/ckeditor/lang/no.js +0 -6
  918. data/generators/ckeditor_install/templates/ckeditor/lang/pl.js +0 -6
  919. data/generators/ckeditor_install/templates/ckeditor/lang/pt-br.js +0 -6
  920. data/generators/ckeditor_install/templates/ckeditor/lang/pt.js +0 -6
  921. data/generators/ckeditor_install/templates/ckeditor/lang/ro.js +0 -6
  922. data/generators/ckeditor_install/templates/ckeditor/lang/ru.js +0 -6
  923. data/generators/ckeditor_install/templates/ckeditor/lang/sk.js +0 -6
  924. data/generators/ckeditor_install/templates/ckeditor/lang/sl.js +0 -6
  925. data/generators/ckeditor_install/templates/ckeditor/lang/sr-latn.js +0 -6
  926. data/generators/ckeditor_install/templates/ckeditor/lang/sr.js +0 -6
  927. data/generators/ckeditor_install/templates/ckeditor/lang/sv.js +0 -6
  928. data/generators/ckeditor_install/templates/ckeditor/lang/th.js +0 -6
  929. data/generators/ckeditor_install/templates/ckeditor/lang/tr.js +0 -6
  930. data/generators/ckeditor_install/templates/ckeditor/lang/uk.js +0 -6
  931. data/generators/ckeditor_install/templates/ckeditor/lang/vi.js +0 -6
  932. data/generators/ckeditor_install/templates/ckeditor/lang/zh-cn.js +0 -6
  933. data/generators/ckeditor_install/templates/ckeditor/lang/zh.js +0 -6
  934. data/generators/ckeditor_install/templates/ckeditor/plugins/clipboard/dialogs/paste.js +0 -7
  935. data/generators/ckeditor_install/templates/ckeditor/plugins/colordialog/dialogs/colordialog.js +0 -7
  936. data/generators/ckeditor_install/templates/ckeditor/plugins/flash/dialogs/flash.js +0 -9
  937. data/generators/ckeditor_install/templates/ckeditor/plugins/forms/dialogs/button.js +0 -6
  938. data/generators/ckeditor_install/templates/ckeditor/plugins/forms/dialogs/checkbox.js +0 -6
  939. data/generators/ckeditor_install/templates/ckeditor/plugins/forms/dialogs/form.js +0 -6
  940. data/generators/ckeditor_install/templates/ckeditor/plugins/forms/dialogs/hiddenfield.js +0 -6
  941. data/generators/ckeditor_install/templates/ckeditor/plugins/forms/dialogs/radio.js +0 -6
  942. data/generators/ckeditor_install/templates/ckeditor/plugins/forms/dialogs/select.js +0 -9
  943. data/generators/ckeditor_install/templates/ckeditor/plugins/forms/dialogs/textarea.js +0 -6
  944. data/generators/ckeditor_install/templates/ckeditor/plugins/forms/dialogs/textfield.js +0 -7
  945. data/generators/ckeditor_install/templates/ckeditor/plugins/image/dialogs/image.js +0 -13
  946. data/generators/ckeditor_install/templates/ckeditor/plugins/link/dialogs/anchor.js +0 -6
  947. data/generators/ckeditor_install/templates/ckeditor/plugins/link/dialogs/link.js +0 -11
  948. data/generators/ckeditor_install/templates/ckeditor/plugins/pastefromword/filter/default.js +0 -10
  949. data/generators/ckeditor_install/templates/ckeditor/plugins/scayt/dialogs/options.js +0 -8
  950. data/generators/ckeditor_install/templates/ckeditor/plugins/smiley/dialogs/smiley.js +0 -7
  951. data/generators/ckeditor_install/templates/ckeditor/plugins/specialchar/dialogs/specialchar.js +0 -7
  952. data/generators/ckeditor_install/templates/ckeditor/plugins/table/dialogs/table.js +0 -9
  953. data/generators/ckeditor_install/templates/ckeditor/plugins/tableresize/plugin.js +0 -7
  954. data/generators/ckeditor_install/templates/ckeditor/plugins/tabletools/dialogs/tableCell.js +0 -8
  955. data/generators/ckeditor_install/templates/ckeditor/plugins/wsc/dialogs/wsc.js +0 -7
  956. data/generators/ckeditor_install/templates/ckeditor/skins/kama/dialog.css +0 -9
  957. data/generators/ckeditor_install/templates/ckeditor/skins/kama/editor.css +0 -12
  958. data/generators/ckeditor_install/templates/ckeditor/skins/kama/icons.png +0 -0
  959. data/generators/ckeditor_install/templates/ckeditor/skins/kama/icons_rtl.png +0 -0
  960. data/generators/ckeditor_install/templates/ckeditor/skins/kama/skin.js +0 -7
  961. data/generators/ckeditor_install/templates/ckeditor/skins/office2003/dialog.css +0 -9
  962. data/generators/ckeditor_install/templates/ckeditor/skins/office2003/editor.css +0 -13
  963. data/generators/ckeditor_install/templates/ckeditor/skins/office2003/icons.png +0 -0
  964. data/generators/ckeditor_install/templates/ckeditor/skins/office2003/icons_rtl.png +0 -0
  965. data/generators/ckeditor_install/templates/ckeditor/skins/office2003/skin.js +0 -6
  966. data/generators/ckeditor_install/templates/ckeditor/skins/v2/dialog.css +0 -9
  967. data/generators/ckeditor_install/templates/ckeditor/skins/v2/editor.css +0 -12
  968. data/generators/ckeditor_install/templates/ckeditor/skins/v2/icons.png +0 -0
  969. data/generators/ckeditor_install/templates/ckeditor/skins/v2/icons_rtl.png +0 -0
  970. data/generators/ckeditor_install/templates/ckeditor/skins/v2/skin.js +0 -6
  971. data/generators/ckeditor_install/templates/ckeditor/themes/default/theme.js +0 -8
  972. data/generators/ckeditor_migration/USAGE +0 -12
  973. data/generators/ckeditor_migration/ckeditor_migration_generator.rb +0 -36
  974. data/generators/ckeditor_migration/templates/models/paperclip/asset.rb +0 -88
  975. data/lib/ckeditor/safe_buffer.rb +0 -34
@@ -0,0 +1,213 @@
1
+ /*
2
+ Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.html or http://ckeditor.com/license
4
+ */
5
+
6
+ (function()
7
+ {
8
+
9
+ function setupAdvParams( element )
10
+ {
11
+ var attrName = this.att;
12
+
13
+ var value = element && element.hasAttribute( attrName ) && element.getAttribute( attrName ) || '';
14
+
15
+ if ( value !== undefined )
16
+ this.setValue( value );
17
+ }
18
+
19
+ function commitAdvParams()
20
+ {
21
+ // Dialogs may use different parameters in the commit list, so, by
22
+ // definition, we take the first CKEDITOR.dom.element available.
23
+ var element;
24
+
25
+ for ( var i = 0 ; i < arguments.length ; i++ )
26
+ {
27
+ if ( arguments[ i ] instanceof CKEDITOR.dom.element )
28
+ {
29
+ element = arguments[ i ];
30
+ break;
31
+ }
32
+ }
33
+
34
+ if ( element )
35
+ {
36
+ var attrName = this.att,
37
+ value = this.getValue();
38
+
39
+ // Broadcast Lang Dir change
40
+ if ( attrName == 'dir' )
41
+ {
42
+ var dir = element.getAttribute( attrName );
43
+ if ( dir != value && element.getParent() )
44
+ this._.dialog._.editor.fire( 'dirChanged', { node : element, dir : value || element.getDirection( 1 ) } );
45
+ }
46
+
47
+ if ( value )
48
+ element.setAttribute( attrName, value );
49
+ else
50
+ element.removeAttribute( attrName, value );
51
+ }
52
+ }
53
+
54
+ CKEDITOR.plugins.add( 'dialogadvtab',
55
+ {
56
+ /**
57
+ *
58
+ * @param tabConfig
59
+ * id, dir, classes, styles
60
+ */
61
+ createAdvancedTab : function( editor, tabConfig )
62
+ {
63
+ if ( !tabConfig )
64
+ tabConfig = { id:1, dir:1, classes:1, styles:1 };
65
+
66
+ var lang = editor.lang.common;
67
+
68
+ var result =
69
+ {
70
+ id : 'advanced',
71
+ label : lang.advancedTab,
72
+ title : lang.advancedTab,
73
+ elements :
74
+ [
75
+ {
76
+ type : 'vbox',
77
+ padding : 1,
78
+ children : []
79
+ }
80
+ ]
81
+ };
82
+
83
+ var contents = [];
84
+
85
+ if ( tabConfig.id || tabConfig.dir )
86
+ {
87
+ if ( tabConfig.id )
88
+ {
89
+ contents.push(
90
+ {
91
+ id : 'advId',
92
+ att : 'id',
93
+ type : 'text',
94
+ label : lang.id,
95
+ setup : setupAdvParams,
96
+ commit : commitAdvParams
97
+ });
98
+ }
99
+
100
+ if ( tabConfig.dir )
101
+ {
102
+ contents.push(
103
+ {
104
+ id : 'advLangDir',
105
+ att : 'dir',
106
+ type : 'select',
107
+ label : lang.langDir,
108
+ 'default' : '',
109
+ style : 'width:100%',
110
+ items :
111
+ [
112
+ [ lang.notSet, '' ],
113
+ [ lang.langDirLTR, 'ltr' ],
114
+ [ lang.langDirRTL, 'rtl' ]
115
+ ],
116
+ setup : setupAdvParams,
117
+ commit : commitAdvParams
118
+ });
119
+ }
120
+
121
+ result.elements[ 0 ].children.push(
122
+ {
123
+ type : 'hbox',
124
+ widths : [ '50%', '50%' ],
125
+ children : [].concat( contents )
126
+ });
127
+ }
128
+
129
+ if ( tabConfig.styles || tabConfig.classes )
130
+ {
131
+ contents = [];
132
+
133
+ if ( tabConfig.styles )
134
+ {
135
+ contents.push(
136
+ {
137
+ id : 'advStyles',
138
+ att : 'style',
139
+ type : 'text',
140
+ label : lang.styles,
141
+ 'default' : '',
142
+
143
+ getStyle : function( name, defaultValue )
144
+ {
145
+ var match = this.getValue().match( new RegExp( name + '\\s*:\s*([^;]*)', 'i') );
146
+ return match ? match[ 1 ] : defaultValue;
147
+ },
148
+
149
+ updateStyle : function( name, value )
150
+ {
151
+ var styles = this.getValue();
152
+
153
+ // Remove the current value.
154
+ if ( styles )
155
+ {
156
+ styles = styles
157
+ .replace( new RegExp( '\\s*' + name + '\s*:[^;]*(?:$|;\s*)', 'i' ), '' )
158
+ .replace( /^[;\s]+/, '' )
159
+ .replace( /\s+$/, '' );
160
+ }
161
+
162
+ if ( value )
163
+ {
164
+ styles && !(/;\s*$/).test( styles ) && ( styles += '; ' );
165
+ styles += name + ': ' + value;
166
+ }
167
+
168
+ this.setValue( styles, 1 );
169
+
170
+ },
171
+
172
+ setup : setupAdvParams,
173
+
174
+ commit : commitAdvParams
175
+
176
+ });
177
+ }
178
+
179
+ if ( tabConfig.classes )
180
+ {
181
+ contents.push(
182
+ {
183
+ type : 'hbox',
184
+ widths : [ '45%', '55%' ],
185
+ children :
186
+ [
187
+ {
188
+ id : 'advCSSClasses',
189
+ att : 'class',
190
+ type : 'text',
191
+ label : lang.cssClasses,
192
+ 'default' : '',
193
+ setup : setupAdvParams,
194
+ commit : commitAdvParams
195
+
196
+ }
197
+ ]
198
+ });
199
+ }
200
+
201
+ result.elements[ 0 ].children.push(
202
+ {
203
+ type : 'hbox',
204
+ widths : [ '50%', '50%' ],
205
+ children : [].concat( contents )
206
+ });
207
+ }
208
+
209
+ return result;
210
+ }
211
+ });
212
+
213
+ })();
@@ -0,0 +1,1523 @@
1
+ /*
2
+ Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.html or http://ckeditor.com/license
4
+ */
5
+
6
+ /** @fileoverview The "dialogui" plugin. */
7
+
8
+ CKEDITOR.plugins.add( 'dialogui' );
9
+
10
+ (function()
11
+ {
12
+ var initPrivateObject = function( elementDefinition )
13
+ {
14
+ this._ || ( this._ = {} );
15
+ this._['default'] = this._.initValue = elementDefinition['default'] || '';
16
+ this._.required = elementDefinition[ 'required' ] || false;
17
+ var args = [ this._ ];
18
+ for ( var i = 1 ; i < arguments.length ; i++ )
19
+ args.push( arguments[i] );
20
+ args.push( true );
21
+ CKEDITOR.tools.extend.apply( CKEDITOR.tools, args );
22
+ return this._;
23
+ },
24
+ textBuilder =
25
+ {
26
+ build : function( dialog, elementDefinition, output )
27
+ {
28
+ return new CKEDITOR.ui.dialog.textInput( dialog, elementDefinition, output );
29
+ }
30
+ },
31
+ commonBuilder =
32
+ {
33
+ build : function( dialog, elementDefinition, output )
34
+ {
35
+ return new CKEDITOR.ui.dialog[elementDefinition.type]( dialog, elementDefinition, output );
36
+ }
37
+ },
38
+ containerBuilder =
39
+ {
40
+ build : function( dialog, elementDefinition, output )
41
+ {
42
+ var children = elementDefinition.children,
43
+ child,
44
+ childHtmlList = [],
45
+ childObjList = [];
46
+ for ( var i = 0 ; ( i < children.length && ( child = children[i] ) ) ; i++ )
47
+ {
48
+ var childHtml = [];
49
+ childHtmlList.push( childHtml );
50
+ childObjList.push( CKEDITOR.dialog._.uiElementBuilders[ child.type ].build( dialog, child, childHtml ) );
51
+ }
52
+ return new CKEDITOR.ui.dialog[ elementDefinition.type ]( dialog, childObjList, childHtmlList, output, elementDefinition );
53
+ }
54
+ },
55
+ commonPrototype =
56
+ {
57
+ isChanged : function()
58
+ {
59
+ return this.getValue() != this.getInitValue();
60
+ },
61
+
62
+ reset : function( noChangeEvent )
63
+ {
64
+ this.setValue( this.getInitValue(), noChangeEvent );
65
+ },
66
+
67
+ setInitValue : function()
68
+ {
69
+ this._.initValue = this.getValue();
70
+ },
71
+
72
+ resetInitValue : function()
73
+ {
74
+ this._.initValue = this._['default'];
75
+ },
76
+
77
+ getInitValue : function()
78
+ {
79
+ return this._.initValue;
80
+ }
81
+ },
82
+ commonEventProcessors = CKEDITOR.tools.extend( {}, CKEDITOR.ui.dialog.uiElement.prototype.eventProcessors,
83
+ {
84
+ onChange : function( dialog, func )
85
+ {
86
+ if ( !this._.domOnChangeRegistered )
87
+ {
88
+ dialog.on( 'load', function()
89
+ {
90
+ this.getInputElement().on( 'change', function()
91
+ {
92
+ // Make sure 'onchange' doesn't get fired after dialog closed. (#5719)
93
+ if ( !dialog.parts.dialog.isVisible() )
94
+ return;
95
+
96
+ this.fire( 'change', { value : this.getValue() } );
97
+ }, this );
98
+ }, this );
99
+ this._.domOnChangeRegistered = true;
100
+ }
101
+
102
+ this.on( 'change', func );
103
+ }
104
+ }, true ),
105
+ eventRegex = /^on([A-Z]\w+)/,
106
+ cleanInnerDefinition = function( def )
107
+ {
108
+ // An inner UI element should not have the parent's type, title or events.
109
+ for ( var i in def )
110
+ {
111
+ if ( eventRegex.test( i ) || i == 'title' || i == 'type' )
112
+ delete def[i];
113
+ }
114
+ return def;
115
+ };
116
+
117
+ CKEDITOR.tools.extend( CKEDITOR.ui.dialog,
118
+ /** @lends CKEDITOR.ui.dialog */
119
+ {
120
+ /**
121
+ * Base class for all dialog elements with a textual label on the left.
122
+ * @constructor
123
+ * @example
124
+ * @extends CKEDITOR.ui.dialog.uiElement
125
+ * @param {CKEDITOR.dialog} dialog
126
+ * Parent dialog object.
127
+ * @param {CKEDITOR.dialog.uiElementDefinition} elementDefinition
128
+ * The element definition. Accepted fields:
129
+ * <ul>
130
+ * <li><strong>label</strong> (Required) The label string.</li>
131
+ * <li><strong>labelLayout</strong> (Optional) Put 'horizontal' here if the
132
+ * label element is to be layed out horizontally. Otherwise a vertical
133
+ * layout will be used.</li>
134
+ * <li><strong>widths</strong> (Optional) This applies only for horizontal
135
+ * layouts - an 2-element array of lengths to specify the widths of the
136
+ * label and the content element.</li>
137
+ * </ul>
138
+ * @param {Array} htmlList
139
+ * List of HTML code to output to.
140
+ * @param {Function} contentHtml
141
+ * A function returning the HTML code string to be added inside the content
142
+ * cell.
143
+ */
144
+ labeledElement : function( dialog, elementDefinition, htmlList, contentHtml )
145
+ {
146
+ if ( arguments.length < 4 )
147
+ return;
148
+
149
+ var _ = initPrivateObject.call( this, elementDefinition );
150
+ _.labelId = CKEDITOR.tools.getNextId() + '_label';
151
+ var children = this._.children = [];
152
+ /** @ignore */
153
+ var innerHTML = function()
154
+ {
155
+ var html = [],
156
+ requiredClass = elementDefinition.required ? ' cke_required' : '' ;
157
+ if ( elementDefinition.labelLayout != 'horizontal' )
158
+ html.push( '<label class="cke_dialog_ui_labeled_label' + requiredClass + '" ',
159
+ ' id="'+ _.labelId + '"',
160
+ ' for="' + _.inputId + '"',
161
+ ' style="' + elementDefinition.labelStyle + '">',
162
+ elementDefinition.label,
163
+ '</label>',
164
+ '<div class="cke_dialog_ui_labeled_content" role="presentation">',
165
+ contentHtml.call( this, dialog, elementDefinition ),
166
+ '</div>' );
167
+ else
168
+ {
169
+ var hboxDefinition = {
170
+ type : 'hbox',
171
+ widths : elementDefinition.widths,
172
+ padding : 0,
173
+ children :
174
+ [
175
+ {
176
+ type : 'html',
177
+ html : '<label class="cke_dialog_ui_labeled_label' + requiredClass + '"' +
178
+ ' id="' + _.labelId + '"' +
179
+ ' for="' + _.inputId + '"' +
180
+ ' style="' + elementDefinition.labelStyle + '">' +
181
+ CKEDITOR.tools.htmlEncode( elementDefinition.label ) +
182
+ '</span>'
183
+ },
184
+ {
185
+ type : 'html',
186
+ html : '<span class="cke_dialog_ui_labeled_content">' +
187
+ contentHtml.call( this, dialog, elementDefinition ) +
188
+ '</span>'
189
+ }
190
+ ]
191
+ };
192
+ CKEDITOR.dialog._.uiElementBuilders.hbox.build( dialog, hboxDefinition, html );
193
+ }
194
+ return html.join( '' );
195
+ };
196
+ CKEDITOR.ui.dialog.uiElement.call( this, dialog, elementDefinition, htmlList, 'div', null, { role : 'presentation' }, innerHTML );
197
+ },
198
+
199
+ /**
200
+ * A text input with a label. This UI element class represents both the
201
+ * single-line text inputs and password inputs in dialog boxes.
202
+ * @constructor
203
+ * @example
204
+ * @extends CKEDITOR.ui.dialog.labeledElement
205
+ * @param {CKEDITOR.dialog} dialog
206
+ * Parent dialog object.
207
+ * @param {CKEDITOR.dialog.uiElementDefinition} elementDefinition
208
+ * The element definition. Accepted fields:
209
+ * <ul>
210
+ * <li><strong>default</strong> (Optional) The default value.</li>
211
+ * <li><strong>validate</strong> (Optional) The validation function. </li>
212
+ * <li><strong>maxLength</strong> (Optional) The maximum length of text box
213
+ * contents.</li>
214
+ * <li><strong>size</strong> (Optional) The size of the text box. This is
215
+ * usually overridden by the size defined by the skin, however.</li>
216
+ * </ul>
217
+ * @param {Array} htmlList
218
+ * List of HTML code to output to.
219
+ */
220
+ textInput : function( dialog, elementDefinition, htmlList )
221
+ {
222
+ if ( arguments.length < 3 )
223
+ return;
224
+
225
+ initPrivateObject.call( this, elementDefinition );
226
+ var domId = this._.inputId = CKEDITOR.tools.getNextId() + '_textInput',
227
+ attributes = { 'class' : 'cke_dialog_ui_input_' + elementDefinition.type, id : domId, type : 'text' },
228
+ i;
229
+
230
+ // Set the validator, if any.
231
+ if ( elementDefinition.validate )
232
+ this.validate = elementDefinition.validate;
233
+
234
+ // Set the max length and size.
235
+ if ( elementDefinition.maxLength )
236
+ attributes.maxlength = elementDefinition.maxLength;
237
+ if ( elementDefinition.size )
238
+ attributes.size = elementDefinition.size;
239
+
240
+ if ( elementDefinition.controlStyle )
241
+ attributes.style = elementDefinition.controlStyle;
242
+
243
+ // If user presses Enter in a text box, it implies clicking OK for the dialog.
244
+ var me = this, keyPressedOnMe = false;
245
+ dialog.on( 'load', function()
246
+ {
247
+ me.getInputElement().on( 'keydown', function( evt )
248
+ {
249
+ if ( evt.data.getKeystroke() == 13 )
250
+ keyPressedOnMe = true;
251
+ } );
252
+
253
+ // Lower the priority this 'keyup' since 'ok' will close the dialog.(#3749)
254
+ me.getInputElement().on( 'keyup', function( evt )
255
+ {
256
+ if ( evt.data.getKeystroke() == 13 && keyPressedOnMe )
257
+ {
258
+ dialog.getButton( 'ok' ) && setTimeout( function ()
259
+ {
260
+ dialog.getButton( 'ok' ).click();
261
+ }, 0 );
262
+ keyPressedOnMe = false;
263
+ }
264
+ }, null, null, 1000 );
265
+ } );
266
+
267
+ /** @ignore */
268
+ var innerHTML = function()
269
+ {
270
+ // IE BUG: Text input fields in IE at 100% would exceed a <td> or inline
271
+ // container's width, so need to wrap it inside a <div>.
272
+ var html = [ '<div class="cke_dialog_ui_input_', elementDefinition.type, '" role="presentation"' ];
273
+
274
+ if ( elementDefinition.width )
275
+ html.push( 'style="width:'+ elementDefinition.width +'" ' );
276
+
277
+ html.push( '><input ' );
278
+
279
+ attributes[ 'aria-labelledby' ] = this._.labelId;
280
+ this._.required && ( attributes[ 'aria-required' ] = this._.required );
281
+ for ( var i in attributes )
282
+ html.push( i + '="' + attributes[i] + '" ' );
283
+ html.push( ' /></div>' );
284
+ return html.join( '' );
285
+ };
286
+ CKEDITOR.ui.dialog.labeledElement.call( this, dialog, elementDefinition, htmlList, innerHTML );
287
+ },
288
+
289
+ /**
290
+ * A text area with a label on the top or left.
291
+ * @constructor
292
+ * @extends CKEDITOR.ui.dialog.labeledElement
293
+ * @example
294
+ * @param {CKEDITOR.dialog} dialog
295
+ * Parent dialog object.
296
+ * @param {CKEDITOR.dialog.uiElementDefinition} elementDefinition
297
+ * The element definition. Accepted fields:
298
+ * <ul>
299
+ * <li><strong>rows</strong> (Optional) The number of rows displayed.
300
+ * Defaults to 5 if not defined.</li>
301
+ * <li><strong>cols</strong> (Optional) The number of cols displayed.
302
+ * Defaults to 20 if not defined. Usually overridden by skins.</li>
303
+ * <li><strong>default</strong> (Optional) The default value.</li>
304
+ * <li><strong>validate</strong> (Optional) The validation function. </li>
305
+ * </ul>
306
+ * @param {Array} htmlList
307
+ * List of HTML code to output to.
308
+ */
309
+ textarea : function( dialog, elementDefinition, htmlList )
310
+ {
311
+ if ( arguments.length < 3 )
312
+ return;
313
+
314
+ initPrivateObject.call( this, elementDefinition );
315
+ var me = this,
316
+ domId = this._.inputId = CKEDITOR.tools.getNextId() + '_textarea',
317
+ attributes = {};
318
+
319
+ if ( elementDefinition.validate )
320
+ this.validate = elementDefinition.validate;
321
+
322
+ // Generates the essential attributes for the textarea tag.
323
+ attributes.rows = elementDefinition.rows || 5;
324
+ attributes.cols = elementDefinition.cols || 20;
325
+
326
+ /** @ignore */
327
+ var innerHTML = function()
328
+ {
329
+ attributes[ 'aria-labelledby' ] = this._.labelId;
330
+ this._.required && ( attributes[ 'aria-required' ] = this._.required );
331
+ var html = [ '<div class="cke_dialog_ui_input_textarea" role="presentation"><textarea class="cke_dialog_ui_input_textarea" id="', domId, '" ' ];
332
+ for ( var i in attributes )
333
+ html.push( i + '="' + CKEDITOR.tools.htmlEncode( attributes[i] ) + '" ' );
334
+ html.push( '>', CKEDITOR.tools.htmlEncode( me._['default'] ), '</textarea></div>' );
335
+ return html.join( '' );
336
+ };
337
+ CKEDITOR.ui.dialog.labeledElement.call( this, dialog, elementDefinition, htmlList, innerHTML );
338
+ },
339
+
340
+ /**
341
+ * A single checkbox with a label on the right.
342
+ * @constructor
343
+ * @extends CKEDITOR.ui.dialog.uiElement
344
+ * @example
345
+ * @param {CKEDITOR.dialog} dialog
346
+ * Parent dialog object.
347
+ * @param {CKEDITOR.dialog.uiElementDefinition} elementDefinition
348
+ * The element definition. Accepted fields:
349
+ * <ul>
350
+ * <li><strong>checked</strong> (Optional) Whether the checkbox is checked
351
+ * on instantiation. Defaults to false.</li>
352
+ * <li><strong>validate</strong> (Optional) The validation function.</li>
353
+ * <li><strong>label</strong> (Optional) The checkbox label.</li>
354
+ * </ul>
355
+ * @param {Array} htmlList
356
+ * List of HTML code to output to.
357
+ */
358
+ checkbox : function( dialog, elementDefinition, htmlList )
359
+ {
360
+ if ( arguments.length < 3 )
361
+ return;
362
+
363
+ var _ = initPrivateObject.call( this, elementDefinition, { 'default' : !!elementDefinition[ 'default' ] } );
364
+
365
+ if ( elementDefinition.validate )
366
+ this.validate = elementDefinition.validate;
367
+
368
+ /** @ignore */
369
+ var innerHTML = function()
370
+ {
371
+ var myDefinition = CKEDITOR.tools.extend( {}, elementDefinition,
372
+ {
373
+ id : elementDefinition.id ? elementDefinition.id + '_checkbox' : CKEDITOR.tools.getNextId() + '_checkbox'
374
+ }, true ),
375
+ html = [];
376
+
377
+ var labelId = CKEDITOR.tools.getNextId() + '_label';
378
+ var attributes = { 'class' : 'cke_dialog_ui_checkbox_input', type : 'checkbox', 'aria-labelledby' : labelId };
379
+ cleanInnerDefinition( myDefinition );
380
+ if ( elementDefinition[ 'default' ] )
381
+ attributes.checked = 'checked';
382
+
383
+ if ( typeof myDefinition.controlStyle != 'undefined' )
384
+ myDefinition.style = myDefinition.controlStyle;
385
+
386
+ _.checkbox = new CKEDITOR.ui.dialog.uiElement( dialog, myDefinition, html, 'input', null, attributes );
387
+ html.push( ' <label id="', labelId, '" for="', attributes.id, '">',
388
+ CKEDITOR.tools.htmlEncode( elementDefinition.label ),
389
+ '</label>' );
390
+ return html.join( '' );
391
+ };
392
+
393
+ CKEDITOR.ui.dialog.uiElement.call( this, dialog, elementDefinition, htmlList, 'span', null, null, innerHTML );
394
+ },
395
+
396
+ /**
397
+ * A group of radio buttons.
398
+ * @constructor
399
+ * @example
400
+ * @extends CKEDITOR.ui.dialog.labeledElement
401
+ * @param {CKEDITOR.dialog} dialog
402
+ * Parent dialog object.
403
+ * @param {CKEDITOR.dialog.uiElementDefinition} elementDefinition
404
+ * The element definition. Accepted fields:
405
+ * <ul>
406
+ * <li><strong>default</strong> (Required) The default value.</li>
407
+ * <li><strong>validate</strong> (Optional) The validation function.</li>
408
+ * <li><strong>items</strong> (Required) An array of options. Each option
409
+ * is a 1- or 2-item array of format [ 'Description', 'Value' ]. If 'Value'
410
+ * is missing, then the value would be assumed to be the same as the
411
+ * description.</li>
412
+ * </ul>
413
+ * @param {Array} htmlList
414
+ * List of HTML code to output to.
415
+ */
416
+ radio : function( dialog, elementDefinition, htmlList )
417
+ {
418
+ if ( arguments.length < 3)
419
+ return;
420
+
421
+ initPrivateObject.call( this, elementDefinition );
422
+ if ( !this._['default'] )
423
+ this._['default'] = this._.initValue = elementDefinition.items[0][1];
424
+ if ( elementDefinition.validate )
425
+ this.validate = elementDefinition.valdiate;
426
+ var children = [], me = this;
427
+
428
+ /** @ignore */
429
+ var innerHTML = function()
430
+ {
431
+ var inputHtmlList = [], html = [],
432
+ commonAttributes = { 'class' : 'cke_dialog_ui_radio_item', 'aria-labelledby' : this._.labelId },
433
+ commonName = elementDefinition.id ? elementDefinition.id + '_radio' : CKEDITOR.tools.getNextId() + '_radio';
434
+ for ( var i = 0 ; i < elementDefinition.items.length ; i++ )
435
+ {
436
+ var item = elementDefinition.items[i],
437
+ title = item[2] !== undefined ? item[2] : item[0],
438
+ value = item[1] !== undefined ? item[1] : item[0],
439
+ inputId = CKEDITOR.tools.getNextId() + '_radio_input',
440
+ labelId = inputId + '_label',
441
+ inputDefinition = CKEDITOR.tools.extend( {}, elementDefinition,
442
+ {
443
+ id : inputId,
444
+ title : null,
445
+ type : null
446
+ }, true ),
447
+ labelDefinition = CKEDITOR.tools.extend( {}, inputDefinition,
448
+ {
449
+ title : title
450
+ }, true ),
451
+ inputAttributes =
452
+ {
453
+ type : 'radio',
454
+ 'class' : 'cke_dialog_ui_radio_input',
455
+ name : commonName,
456
+ value : value,
457
+ 'aria-labelledby' : labelId
458
+ },
459
+ inputHtml = [];
460
+ if ( me._['default'] == value )
461
+ inputAttributes.checked = 'checked';
462
+ cleanInnerDefinition( inputDefinition );
463
+ cleanInnerDefinition( labelDefinition );
464
+
465
+ if ( typeof inputDefinition.controlStyle != 'undefined' )
466
+ inputDefinition.style = inputDefinition.controlStyle;
467
+
468
+ children.push( new CKEDITOR.ui.dialog.uiElement( dialog, inputDefinition, inputHtml, 'input', null, inputAttributes ) );
469
+ inputHtml.push( ' ' );
470
+ new CKEDITOR.ui.dialog.uiElement( dialog, labelDefinition, inputHtml, 'label', null, { id : labelId, 'for' : inputAttributes.id },
471
+ item[0] );
472
+ inputHtmlList.push( inputHtml.join( '' ) );
473
+ }
474
+ new CKEDITOR.ui.dialog.hbox( dialog, [], inputHtmlList, html );
475
+ return html.join( '' );
476
+ };
477
+
478
+ CKEDITOR.ui.dialog.labeledElement.call( this, dialog, elementDefinition, htmlList, innerHTML );
479
+ this._.children = children;
480
+ },
481
+
482
+ /**
483
+ * A button with a label inside.
484
+ * @constructor
485
+ * @example
486
+ * @extends CKEDITOR.ui.dialog.uiElement
487
+ * @param {CKEDITOR.dialog} dialog
488
+ * Parent dialog object.
489
+ * @param {CKEDITOR.dialog.uiElementDefinition} elementDefinition
490
+ * The element definition. Accepted fields:
491
+ * <ul>
492
+ * <li><strong>label</strong> (Required) The button label.</li>
493
+ * <li><strong>disabled</strong> (Optional) Set to true if you want the
494
+ * button to appear in disabled state.</li>
495
+ * </ul>
496
+ * @param {Array} htmlList
497
+ * List of HTML code to output to.
498
+ */
499
+ button : function( dialog, elementDefinition, htmlList )
500
+ {
501
+ if ( !arguments.length )
502
+ return;
503
+
504
+ if ( typeof elementDefinition == 'function' )
505
+ elementDefinition = elementDefinition( dialog.getParentEditor() );
506
+
507
+ initPrivateObject.call( this, elementDefinition, { disabled : elementDefinition.disabled || false } );
508
+
509
+ // Add OnClick event to this input.
510
+ CKEDITOR.event.implementOn( this );
511
+
512
+ var me = this;
513
+
514
+ // Register an event handler for processing button clicks.
515
+ dialog.on( 'load', function( eventInfo )
516
+ {
517
+ var element = this.getElement();
518
+
519
+ (function()
520
+ {
521
+ element.on( 'click', function( evt )
522
+ {
523
+ me.fire( 'click', { dialog : me.getDialog() } );
524
+ evt.data.preventDefault();
525
+ } );
526
+
527
+ element.on( 'keydown', function( evt )
528
+ {
529
+ if ( evt.data.getKeystroke() in { 32:1 } )
530
+ {
531
+ me.click();
532
+ evt.data.preventDefault();
533
+ }
534
+ } );
535
+ })();
536
+
537
+ element.unselectable();
538
+ }, this );
539
+
540
+ var outerDefinition = CKEDITOR.tools.extend( {}, elementDefinition );
541
+ delete outerDefinition.style;
542
+
543
+ var labelId = CKEDITOR.tools.getNextId() + '_label';
544
+ CKEDITOR.ui.dialog.uiElement.call(
545
+ this,
546
+ dialog,
547
+ outerDefinition,
548
+ htmlList,
549
+ 'a',
550
+ null,
551
+ {
552
+ style : elementDefinition.style,
553
+ href : 'javascript:void(0)',
554
+ title : elementDefinition.label,
555
+ hidefocus : 'true',
556
+ 'class' : elementDefinition['class'],
557
+ role : 'button',
558
+ 'aria-labelledby' : labelId
559
+ },
560
+ '<span id="' + labelId + '" class="cke_dialog_ui_button">' +
561
+ CKEDITOR.tools.htmlEncode( elementDefinition.label ) +
562
+ '</span>' );
563
+ },
564
+
565
+ /**
566
+ * A select box.
567
+ * @extends CKEDITOR.ui.dialog.uiElement
568
+ * @example
569
+ * @constructor
570
+ * @param {CKEDITOR.dialog} dialog
571
+ * Parent dialog object.
572
+ * @param {CKEDITOR.dialog.uiElementDefinition} elementDefinition
573
+ * The element definition. Accepted fields:
574
+ * <ul>
575
+ * <li><strong>default</strong> (Required) The default value.</li>
576
+ * <li><strong>validate</strong> (Optional) The validation function.</li>
577
+ * <li><strong>items</strong> (Required) An array of options. Each option
578
+ * is a 1- or 2-item array of format [ 'Description', 'Value' ]. If 'Value'
579
+ * is missing, then the value would be assumed to be the same as the
580
+ * description.</li>
581
+ * <li><strong>multiple</strong> (Optional) Set this to true if you'd like
582
+ * to have a multiple-choice select box.</li>
583
+ * <li><strong>size</strong> (Optional) The number of items to display in
584
+ * the select box.</li>
585
+ * </ul>
586
+ * @param {Array} htmlList
587
+ * List of HTML code to output to.
588
+ */
589
+ select : function( dialog, elementDefinition, htmlList )
590
+ {
591
+ if ( arguments.length < 3 )
592
+ return;
593
+
594
+ var _ = initPrivateObject.call( this, elementDefinition );
595
+
596
+ if ( elementDefinition.validate )
597
+ this.validate = elementDefinition.validate;
598
+
599
+ _.inputId = CKEDITOR.tools.getNextId() + '_select';
600
+ /** @ignore */
601
+ var innerHTML = function()
602
+ {
603
+ var myDefinition = CKEDITOR.tools.extend( {}, elementDefinition,
604
+ {
605
+ id : elementDefinition.id ? elementDefinition.id + '_select' : CKEDITOR.tools.getNextId() + '_select'
606
+ }, true ),
607
+ html = [],
608
+ innerHTML = [],
609
+ attributes = { 'id' : _.inputId, 'class' : 'cke_dialog_ui_input_select', 'aria-labelledby' : this._.labelId };
610
+
611
+ // Add multiple and size attributes from element definition.
612
+ if ( elementDefinition.size != undefined )
613
+ attributes.size = elementDefinition.size;
614
+ if ( elementDefinition.multiple != undefined )
615
+ attributes.multiple = elementDefinition.multiple;
616
+
617
+ cleanInnerDefinition( myDefinition );
618
+ for ( var i = 0, item ; i < elementDefinition.items.length && ( item = elementDefinition.items[i] ) ; i++ )
619
+ {
620
+ innerHTML.push( '<option value="',
621
+ CKEDITOR.tools.htmlEncode( item[1] !== undefined ? item[1] : item[0] ), '" /> ',
622
+ CKEDITOR.tools.htmlEncode( item[0] ) );
623
+ }
624
+
625
+ if ( typeof myDefinition.controlStyle != 'undefined' )
626
+ myDefinition.style = myDefinition.controlStyle;
627
+
628
+ _.select = new CKEDITOR.ui.dialog.uiElement( dialog, myDefinition, html, 'select', null, attributes, innerHTML.join( '' ) );
629
+ return html.join( '' );
630
+ };
631
+
632
+ CKEDITOR.ui.dialog.labeledElement.call( this, dialog, elementDefinition, htmlList, innerHTML );
633
+ },
634
+
635
+ /**
636
+ * A file upload input.
637
+ * @extends CKEDITOR.ui.dialog.labeledElement
638
+ * @example
639
+ * @constructor
640
+ * @param {CKEDITOR.dialog} dialog
641
+ * Parent dialog object.
642
+ * @param {CKEDITOR.dialog.uiElementDefinition} elementDefinition
643
+ * The element definition. Accepted fields:
644
+ * <ul>
645
+ * <li><strong>validate</strong> (Optional) The validation function.</li>
646
+ * </ul>
647
+ * @param {Array} htmlList
648
+ * List of HTML code to output to.
649
+ */
650
+ file : function( dialog, elementDefinition, htmlList )
651
+ {
652
+ if ( arguments.length < 3 )
653
+ return;
654
+
655
+ if ( elementDefinition['default'] === undefined )
656
+ elementDefinition['default'] = '';
657
+
658
+ var _ = CKEDITOR.tools.extend( initPrivateObject.call( this, elementDefinition ), { definition : elementDefinition, buttons : [] } );
659
+
660
+ if ( elementDefinition.validate )
661
+ this.validate = elementDefinition.validate;
662
+
663
+ /** @ignore */
664
+ var innerHTML = function()
665
+ {
666
+ _.frameId = CKEDITOR.tools.getNextId() + '_fileInput';
667
+
668
+ // Support for custom document.domain in IE.
669
+ var isCustomDomain = CKEDITOR.env.isCustomDomain();
670
+
671
+ var html = [
672
+ '<iframe' +
673
+ ' frameborder="0"' +
674
+ ' allowtransparency="0"' +
675
+ ' class="cke_dialog_ui_input_file"' +
676
+ ' id="', _.frameId, '"' +
677
+ ' title="', elementDefinition.label, '"' +
678
+ ' src="javascript:void(' ];
679
+
680
+ html.push(
681
+ isCustomDomain ?
682
+ '(function(){' +
683
+ 'document.open();' +
684
+ 'document.domain=\'' + document.domain + '\';' +
685
+ 'document.close();' +
686
+ '})()'
687
+ :
688
+ '0' );
689
+
690
+ html.push(
691
+ ')">' +
692
+ '</iframe>' );
693
+
694
+ return html.join( '' );
695
+ };
696
+
697
+ // IE BUG: Parent container does not resize to contain the iframe automatically.
698
+ dialog.on( 'load', function()
699
+ {
700
+ var iframe = CKEDITOR.document.getById( _.frameId ),
701
+ contentDiv = iframe.getParent();
702
+ contentDiv.addClass( 'cke_dialog_ui_input_file' );
703
+ } );
704
+
705
+ CKEDITOR.ui.dialog.labeledElement.call( this, dialog, elementDefinition, htmlList, innerHTML );
706
+ },
707
+
708
+ /**
709
+ * A button for submitting the file in a file upload input.
710
+ * @extends CKEDITOR.ui.dialog.button
711
+ * @example
712
+ * @constructor
713
+ * @param {CKEDITOR.dialog} dialog
714
+ * Parent dialog object.
715
+ * @param {CKEDITOR.dialog.uiElementDefinition} elementDefinition
716
+ * The element definition. Accepted fields:
717
+ * <ul>
718
+ * <li><strong>for</strong> (Required) The file input's page and element Id
719
+ * to associate to, in a 2-item array format: [ 'page_id', 'element_id' ].
720
+ * </li>
721
+ * <li><strong>validate</strong> (Optional) The validation function.</li>
722
+ * </ul>
723
+ * @param {Array} htmlList
724
+ * List of HTML code to output to.
725
+ */
726
+ fileButton : function( dialog, elementDefinition, htmlList )
727
+ {
728
+ if ( arguments.length < 3 )
729
+ return;
730
+
731
+ var _ = initPrivateObject.call( this, elementDefinition ),
732
+ me = this;
733
+
734
+ if ( elementDefinition.validate )
735
+ this.validate = elementDefinition.validate;
736
+
737
+ var myDefinition = CKEDITOR.tools.extend( {}, elementDefinition );
738
+ var onClick = myDefinition.onClick;
739
+ myDefinition.className = ( myDefinition.className ? myDefinition.className + ' ' : '' ) + 'cke_dialog_ui_button';
740
+ myDefinition.onClick = function( evt )
741
+ {
742
+ var target = elementDefinition[ 'for' ]; // [ pageId, elementId ]
743
+ if ( !onClick || onClick.call( this, evt ) !== false )
744
+ {
745
+ dialog.getContentElement( target[0], target[1] ).submit();
746
+ this.disable();
747
+ }
748
+ };
749
+
750
+ dialog.on( 'load', function()
751
+ {
752
+ dialog.getContentElement( elementDefinition[ 'for' ][0], elementDefinition[ 'for' ][1] )._.buttons.push( me );
753
+ } );
754
+
755
+ CKEDITOR.ui.dialog.button.call( this, dialog, myDefinition, htmlList );
756
+ },
757
+
758
+ html : (function()
759
+ {
760
+ var myHtmlRe = /^\s*<[\w:]+\s+([^>]*)?>/,
761
+ theirHtmlRe = /^(\s*<[\w:]+(?:\s+[^>]*)?)((?:.|\r|\n)+)$/,
762
+ emptyTagRe = /\/$/;
763
+ /**
764
+ * A dialog element made from raw HTML code.
765
+ * @extends CKEDITOR.ui.dialog.uiElement
766
+ * @name CKEDITOR.ui.dialog.html
767
+ * @param {CKEDITOR.dialog} dialog Parent dialog object.
768
+ * @param {CKEDITOR.dialog.uiElementDefinition} elementDefinition Element definition.
769
+ * Accepted fields:
770
+ * <ul>
771
+ * <li><strong>html</strong> (Required) HTML code of this element.</li>
772
+ * </ul>
773
+ * @param {Array} htmlList List of HTML code to be added to the dialog's content area.
774
+ * @example
775
+ * @constructor
776
+ */
777
+ return function( dialog, elementDefinition, htmlList )
778
+ {
779
+ if ( arguments.length < 3 )
780
+ return;
781
+
782
+ var myHtmlList = [],
783
+ myHtml,
784
+ theirHtml = elementDefinition.html,
785
+ myMatch, theirMatch;
786
+
787
+ // If the HTML input doesn't contain any tags at the beginning, add a <span> tag around it.
788
+ if ( theirHtml.charAt( 0 ) != '<' )
789
+ theirHtml = '<span>' + theirHtml + '</span>';
790
+
791
+ // Look for focus function in definition.
792
+ var focus = elementDefinition.focus;
793
+ if ( focus )
794
+ {
795
+ var oldFocus = this.focus;
796
+ this.focus = function()
797
+ {
798
+ oldFocus.call( this );
799
+ typeof focus == 'function' && focus.call( this );
800
+ this.fire( 'focus' );
801
+ };
802
+ if ( elementDefinition.isFocusable )
803
+ {
804
+ var oldIsFocusable = this.isFocusable;
805
+ this.isFocusable = oldIsFocusable;
806
+ }
807
+ this.keyboardFocusable = true;
808
+ }
809
+
810
+ CKEDITOR.ui.dialog.uiElement.call( this, dialog, elementDefinition, myHtmlList, 'span', null, null, '' );
811
+
812
+ // Append the attributes created by the uiElement call to the real HTML.
813
+ myHtml = myHtmlList.join( '' );
814
+ myMatch = myHtml.match( myHtmlRe );
815
+ theirMatch = theirHtml.match( theirHtmlRe ) || [ '', '', '' ];
816
+
817
+ if ( emptyTagRe.test( theirMatch[1] ) )
818
+ {
819
+ theirMatch[1] = theirMatch[1].slice( 0, -1 );
820
+ theirMatch[2] = '/' + theirMatch[2];
821
+ }
822
+
823
+ htmlList.push( [ theirMatch[1], ' ', myMatch[1] || '', theirMatch[2] ].join( '' ) );
824
+ };
825
+ })(),
826
+
827
+ /**
828
+ * Form fieldset for grouping dialog UI elements.
829
+ * @constructor
830
+ * @extends CKEDITOR.ui.dialog.uiElement
831
+ * @param {CKEDITOR.dialog} dialog Parent dialog object.
832
+ * @param {Array} childObjList
833
+ * Array of {@link CKEDITOR.ui.dialog.uiElement} objects inside this
834
+ * container.
835
+ * @param {Array} childHtmlList
836
+ * Array of HTML code that correspond to the HTML output of all the
837
+ * objects in childObjList.
838
+ * @param {Array} htmlList
839
+ * Array of HTML code that this element will output to.
840
+ * @param {CKEDITOR.dialog.uiElementDefinition} elementDefinition
841
+ * The element definition. Accepted fields:
842
+ * <ul>
843
+ * <li><strong>label</strong> (Optional) The legend of the this fieldset.</li>
844
+ * <li><strong>children</strong> (Required) An array of dialog field definitions which will be grouped inside this fieldset. </li>
845
+ * </ul>
846
+ */
847
+ fieldset : function( dialog, childObjList, childHtmlList, htmlList, elementDefinition )
848
+ {
849
+ var legendLabel = elementDefinition.label;
850
+ /** @ignore */
851
+ var innerHTML = function()
852
+ {
853
+ var html = [];
854
+ legendLabel && html.push( '<legend>' + legendLabel + '</legend>' );
855
+ for ( var i = 0; i < childHtmlList.length; i++ )
856
+ html.push( childHtmlList[ i ] );
857
+ return html.join( '' );
858
+ };
859
+
860
+ this._ = { children : childObjList };
861
+ CKEDITOR.ui.dialog.uiElement.call( this, dialog, elementDefinition, htmlList, 'fieldset', null, null, innerHTML );
862
+ }
863
+
864
+ }, true );
865
+
866
+ CKEDITOR.ui.dialog.html.prototype = new CKEDITOR.ui.dialog.uiElement;
867
+
868
+ CKEDITOR.ui.dialog.labeledElement.prototype = CKEDITOR.tools.extend( new CKEDITOR.ui.dialog.uiElement,
869
+ /** @lends CKEDITOR.ui.dialog.labeledElement.prototype */
870
+ {
871
+ /**
872
+ * Sets the label text of the element.
873
+ * @param {String} label The new label text.
874
+ * @returns {CKEDITOR.ui.dialog.labeledElement} The current labeled element.
875
+ * @example
876
+ */
877
+ setLabel : function( label )
878
+ {
879
+ var node = CKEDITOR.document.getById( this._.labelId );
880
+ if ( node.getChildCount() < 1 )
881
+ ( new CKEDITOR.dom.text( label, CKEDITOR.document ) ).appendTo( node );
882
+ else
883
+ node.getChild( 0 ).$.nodeValue = label;
884
+ return this;
885
+ },
886
+
887
+ /**
888
+ * Retrieves the current label text of the elment.
889
+ * @returns {String} The current label text.
890
+ * @example
891
+ */
892
+ getLabel : function()
893
+ {
894
+ var node = CKEDITOR.document.getById( this._.labelId );
895
+ if ( !node || node.getChildCount() < 1 )
896
+ return '';
897
+ else
898
+ return node.getChild( 0 ).getText();
899
+ },
900
+
901
+ /**
902
+ * Defines the onChange event for UI element definitions.
903
+ * @field
904
+ * @type Object
905
+ * @example
906
+ */
907
+ eventProcessors : commonEventProcessors
908
+ }, true );
909
+
910
+ CKEDITOR.ui.dialog.button.prototype = CKEDITOR.tools.extend( new CKEDITOR.ui.dialog.uiElement,
911
+ /** @lends CKEDITOR.ui.dialog.button.prototype */
912
+ {
913
+ /**
914
+ * Simulates a click to the button.
915
+ * @example
916
+ * @returns {Object} Return value of the 'click' event.
917
+ */
918
+ click : function()
919
+ {
920
+ if ( !this._.disabled )
921
+ return this.fire( 'click', { dialog : this._.dialog } );
922
+ this.getElement().$.blur();
923
+ return false;
924
+ },
925
+
926
+ /**
927
+ * Enables the button.
928
+ * @example
929
+ */
930
+ enable : function()
931
+ {
932
+ this._.disabled = false;
933
+ var element = this.getElement();
934
+ element && element.removeClass( 'cke_disabled' );
935
+ },
936
+
937
+ /**
938
+ * Disables the button.
939
+ * @example
940
+ */
941
+ disable : function()
942
+ {
943
+ this._.disabled = true;
944
+ this.getElement().addClass( 'cke_disabled' );
945
+ },
946
+
947
+ isVisible : function()
948
+ {
949
+ return this.getElement().getFirst().isVisible();
950
+ },
951
+
952
+ isEnabled : function()
953
+ {
954
+ return !this._.disabled;
955
+ },
956
+
957
+ /**
958
+ * Defines the onChange event and onClick for button element definitions.
959
+ * @field
960
+ * @type Object
961
+ * @example
962
+ */
963
+ eventProcessors : CKEDITOR.tools.extend( {}, CKEDITOR.ui.dialog.uiElement.prototype.eventProcessors,
964
+ {
965
+ /** @ignore */
966
+ onClick : function( dialog, func )
967
+ {
968
+ this.on( 'click', func );
969
+ }
970
+ }, true ),
971
+
972
+ /**
973
+ * Handler for the element's access key up event. Simulates a click to
974
+ * the button.
975
+ * @example
976
+ */
977
+ accessKeyUp : function()
978
+ {
979
+ this.click();
980
+ },
981
+
982
+ /**
983
+ * Handler for the element's access key down event. Simulates a mouse
984
+ * down to the button.
985
+ * @example
986
+ */
987
+ accessKeyDown : function()
988
+ {
989
+ this.focus();
990
+ },
991
+
992
+ keyboardFocusable : true
993
+ }, true );
994
+
995
+ CKEDITOR.ui.dialog.textInput.prototype = CKEDITOR.tools.extend( new CKEDITOR.ui.dialog.labeledElement,
996
+ /** @lends CKEDITOR.ui.dialog.textInput.prototype */
997
+ {
998
+ /**
999
+ * Gets the text input DOM element under this UI object.
1000
+ * @example
1001
+ * @returns {CKEDITOR.dom.element} The DOM element of the text input.
1002
+ */
1003
+ getInputElement : function()
1004
+ {
1005
+ return CKEDITOR.document.getById( this._.inputId );
1006
+ },
1007
+
1008
+ /**
1009
+ * Puts focus into the text input.
1010
+ * @example
1011
+ */
1012
+ focus : function()
1013
+ {
1014
+ var me = this.selectParentTab();
1015
+
1016
+ // GECKO BUG: setTimeout() is needed to workaround invisible selections.
1017
+ setTimeout( function()
1018
+ {
1019
+ var element = me.getInputElement();
1020
+ element && element.$.focus();
1021
+ }, 0 );
1022
+ },
1023
+
1024
+ /**
1025
+ * Selects all the text in the text input.
1026
+ * @example
1027
+ */
1028
+ select : function()
1029
+ {
1030
+ var me = this.selectParentTab();
1031
+
1032
+ // GECKO BUG: setTimeout() is needed to workaround invisible selections.
1033
+ setTimeout( function()
1034
+ {
1035
+ var e = me.getInputElement();
1036
+ if ( e )
1037
+ {
1038
+ e.$.focus();
1039
+ e.$.select();
1040
+ }
1041
+ }, 0 );
1042
+ },
1043
+
1044
+ /**
1045
+ * Handler for the text input's access key up event. Makes a select()
1046
+ * call to the text input.
1047
+ * @example
1048
+ */
1049
+ accessKeyUp : function()
1050
+ {
1051
+ this.select();
1052
+ },
1053
+
1054
+ /**
1055
+ * Sets the value of this text input object.
1056
+ * @param {Object} value The new value.
1057
+ * @returns {CKEDITOR.ui.dialog.textInput} The current UI element.
1058
+ * @example
1059
+ * uiElement.setValue( 'Blamo' );
1060
+ */
1061
+ setValue : function( value )
1062
+ {
1063
+ !value && ( value = '' );
1064
+ return CKEDITOR.ui.dialog.uiElement.prototype.setValue.apply( this, arguments );
1065
+ },
1066
+
1067
+ keyboardFocusable : true
1068
+ }, commonPrototype, true );
1069
+
1070
+ CKEDITOR.ui.dialog.textarea.prototype = new CKEDITOR.ui.dialog.textInput();
1071
+
1072
+ CKEDITOR.ui.dialog.select.prototype = CKEDITOR.tools.extend( new CKEDITOR.ui.dialog.labeledElement,
1073
+ /** @lends CKEDITOR.ui.dialog.select.prototype */
1074
+ {
1075
+ /**
1076
+ * Gets the DOM element of the select box.
1077
+ * @returns {CKEDITOR.dom.element} The &lt;select&gt; element of this UI
1078
+ * element.
1079
+ * @example
1080
+ */
1081
+ getInputElement : function()
1082
+ {
1083
+ return this._.select.getElement();
1084
+ },
1085
+
1086
+ /**
1087
+ * Adds an option to the select box.
1088
+ * @param {String} label Option label.
1089
+ * @param {String} value (Optional) Option value, if not defined it'll be
1090
+ * assumed to be the same as the label.
1091
+ * @param {Number} index (Optional) Position of the option to be inserted
1092
+ * to. If not defined the new option will be inserted to the end of list.
1093
+ * @example
1094
+ * @returns {CKEDITOR.ui.dialog.select} The current select UI element.
1095
+ */
1096
+ add : function( label, value, index )
1097
+ {
1098
+ var option = new CKEDITOR.dom.element( 'option', this.getDialog().getParentEditor().document ),
1099
+ selectElement = this.getInputElement().$;
1100
+ option.$.text = label;
1101
+ option.$.value = ( value === undefined || value === null ) ? label : value;
1102
+ if ( index === undefined || index === null )
1103
+ {
1104
+ if ( CKEDITOR.env.ie )
1105
+ selectElement.add( option.$ );
1106
+ else
1107
+ selectElement.add( option.$, null );
1108
+ }
1109
+ else
1110
+ selectElement.add( option.$, index );
1111
+ return this;
1112
+ },
1113
+
1114
+ /**
1115
+ * Removes an option from the selection list.
1116
+ * @param {Number} index Index of the option to be removed.
1117
+ * @example
1118
+ * @returns {CKEDITOR.ui.dialog.select} The current select UI element.
1119
+ */
1120
+ remove : function( index )
1121
+ {
1122
+ var selectElement = this.getInputElement().$;
1123
+ selectElement.remove( index );
1124
+ return this;
1125
+ },
1126
+
1127
+ /**
1128
+ * Clears all options out of the selection list.
1129
+ * @returns {CKEDITOR.ui.dialog.select} The current select UI element.
1130
+ */
1131
+ clear : function()
1132
+ {
1133
+ var selectElement = this.getInputElement().$;
1134
+ while ( selectElement.length > 0 )
1135
+ selectElement.remove( 0 );
1136
+ return this;
1137
+ },
1138
+
1139
+ keyboardFocusable : true
1140
+ }, commonPrototype, true );
1141
+
1142
+ CKEDITOR.ui.dialog.checkbox.prototype = CKEDITOR.tools.extend( new CKEDITOR.ui.dialog.uiElement,
1143
+ /** @lends CKEDITOR.ui.dialog.checkbox.prototype */
1144
+ {
1145
+ /**
1146
+ * Gets the checkbox DOM element.
1147
+ * @example
1148
+ * @returns {CKEDITOR.dom.element} The DOM element of the checkbox.
1149
+ */
1150
+ getInputElement : function()
1151
+ {
1152
+ return this._.checkbox.getElement();
1153
+ },
1154
+
1155
+ /**
1156
+ * Sets the state of the checkbox.
1157
+ * @example
1158
+ * @param {Boolean} true to tick the checkbox, false to untick it.
1159
+ * @param {Boolean} noChangeEvent Internal commit, to supress 'change' event on this element.
1160
+ */
1161
+ setValue : function( checked, noChangeEvent )
1162
+ {
1163
+ this.getInputElement().$.checked = checked;
1164
+ !noChangeEvent && this.fire( 'change', { value : checked } );
1165
+ },
1166
+
1167
+ /**
1168
+ * Gets the state of the checkbox.
1169
+ * @example
1170
+ * @returns {Boolean} true means the checkbox is ticked, false means it's not ticked.
1171
+ */
1172
+ getValue : function()
1173
+ {
1174
+ return this.getInputElement().$.checked;
1175
+ },
1176
+
1177
+ /**
1178
+ * Handler for the access key up event. Toggles the checkbox.
1179
+ * @example
1180
+ */
1181
+ accessKeyUp : function()
1182
+ {
1183
+ this.setValue( !this.getValue() );
1184
+ },
1185
+
1186
+ /**
1187
+ * Defines the onChange event for UI element definitions.
1188
+ * @field
1189
+ * @type Object
1190
+ * @example
1191
+ */
1192
+ eventProcessors :
1193
+ {
1194
+ onChange : function( dialog, func )
1195
+ {
1196
+ if ( !CKEDITOR.env.ie )
1197
+ return commonEventProcessors.onChange.apply( this, arguments );
1198
+ else
1199
+ {
1200
+ dialog.on( 'load', function()
1201
+ {
1202
+ var element = this._.checkbox.getElement();
1203
+ element.on( 'propertychange', function( evt )
1204
+ {
1205
+ evt = evt.data.$;
1206
+ if ( evt.propertyName == 'checked' )
1207
+ this.fire( 'change', { value : element.$.checked } );
1208
+ }, this );
1209
+ }, this );
1210
+ this.on( 'change', func );
1211
+ }
1212
+ return null;
1213
+ }
1214
+ },
1215
+
1216
+ keyboardFocusable : true
1217
+ }, commonPrototype, true );
1218
+
1219
+ CKEDITOR.ui.dialog.radio.prototype = CKEDITOR.tools.extend( new CKEDITOR.ui.dialog.uiElement,
1220
+ /** @lends CKEDITOR.ui.dialog.radio.prototype */
1221
+ {
1222
+ /**
1223
+ * Checks one of the radio buttons in this button group.
1224
+ * @example
1225
+ * @param {String} value The value of the button to be chcked.
1226
+ * @param {Boolean} noChangeEvent Internal commit, to supress 'change' event on this element.
1227
+ */
1228
+ setValue : function( value, noChangeEvent )
1229
+ {
1230
+ var children = this._.children,
1231
+ item;
1232
+ for ( var i = 0 ; ( i < children.length ) && ( item = children[i] ) ; i++ )
1233
+ item.getElement().$.checked = ( item.getValue() == value );
1234
+ !noChangeEvent && this.fire( 'change', { value : value } );
1235
+ },
1236
+
1237
+ /**
1238
+ * Gets the value of the currently checked radio button.
1239
+ * @example
1240
+ * @returns {String} The currently checked button's value.
1241
+ */
1242
+ getValue : function()
1243
+ {
1244
+ var children = this._.children;
1245
+ for ( var i = 0 ; i < children.length ; i++ )
1246
+ {
1247
+ if ( children[i].getElement().$.checked )
1248
+ return children[i].getValue();
1249
+ }
1250
+ return null;
1251
+ },
1252
+
1253
+ /**
1254
+ * Handler for the access key up event. Focuses the currently
1255
+ * selected radio button, or the first radio button if none is
1256
+ * selected.
1257
+ * @example
1258
+ */
1259
+ accessKeyUp : function()
1260
+ {
1261
+ var children = this._.children, i;
1262
+ for ( i = 0 ; i < children.length ; i++ )
1263
+ {
1264
+ if ( children[i].getElement().$.checked )
1265
+ {
1266
+ children[i].getElement().focus();
1267
+ return;
1268
+ }
1269
+ }
1270
+ children[0].getElement().focus();
1271
+ },
1272
+
1273
+ /**
1274
+ * Defines the onChange event for UI element definitions.
1275
+ * @field
1276
+ * @type Object
1277
+ * @example
1278
+ */
1279
+ eventProcessors :
1280
+ {
1281
+ onChange : function( dialog, func )
1282
+ {
1283
+ if ( !CKEDITOR.env.ie )
1284
+ return commonEventProcessors.onChange.apply( this, arguments );
1285
+ else
1286
+ {
1287
+ dialog.on( 'load', function()
1288
+ {
1289
+ var children = this._.children, me = this;
1290
+ for ( var i = 0 ; i < children.length ; i++ )
1291
+ {
1292
+ var element = children[i].getElement();
1293
+ element.on( 'propertychange', function( evt )
1294
+ {
1295
+ evt = evt.data.$;
1296
+ if ( evt.propertyName == 'checked' && this.$.checked )
1297
+ me.fire( 'change', { value : this.getAttribute( 'value' ) } );
1298
+ } );
1299
+ }
1300
+ }, this );
1301
+ this.on( 'change', func );
1302
+ }
1303
+ return null;
1304
+ }
1305
+ },
1306
+
1307
+ keyboardFocusable : true
1308
+ }, commonPrototype, true );
1309
+
1310
+ CKEDITOR.ui.dialog.file.prototype = CKEDITOR.tools.extend( new CKEDITOR.ui.dialog.labeledElement,
1311
+ commonPrototype,
1312
+ /** @lends CKEDITOR.ui.dialog.file.prototype */
1313
+ {
1314
+ /**
1315
+ * Gets the &lt;input&gt; element of this file input.
1316
+ * @returns {CKEDITOR.dom.element} The file input element.
1317
+ * @example
1318
+ */
1319
+ getInputElement : function()
1320
+ {
1321
+ var frameDocument = CKEDITOR.document.getById( this._.frameId ).getFrameDocument();
1322
+ return frameDocument.$.forms.length > 0 ?
1323
+ new CKEDITOR.dom.element( frameDocument.$.forms[0].elements[0] ) :
1324
+ this.getElement();
1325
+ },
1326
+
1327
+ /**
1328
+ * Uploads the file in the file input.
1329
+ * @returns {CKEDITOR.ui.dialog.file} This object.
1330
+ * @example
1331
+ */
1332
+ submit : function()
1333
+ {
1334
+ this.getInputElement().getParent().$.submit();
1335
+ return this;
1336
+ },
1337
+
1338
+ /**
1339
+ * Get the action assigned to the form.
1340
+ * @returns {String} The value of the action.
1341
+ * @example
1342
+ */
1343
+ getAction : function()
1344
+ {
1345
+ return this.getInputElement().getParent().$.action;
1346
+ },
1347
+
1348
+ /**
1349
+ * The events must be applied on the inner input element, and
1350
+ * that must be done when the iframe & form has been loaded
1351
+ */
1352
+ registerEvents : function( definition )
1353
+ {
1354
+ var regex = /^on([A-Z]\w+)/,
1355
+ match;
1356
+
1357
+ var registerDomEvent = function( uiElement, dialog, eventName, func )
1358
+ {
1359
+ uiElement.on( 'formLoaded', function()
1360
+ {
1361
+ uiElement.getInputElement().on( eventName, func, uiElement );
1362
+ });
1363
+ };
1364
+
1365
+ for ( var i in definition )
1366
+ {
1367
+ if ( !( match = i.match( regex ) ) )
1368
+ continue;
1369
+
1370
+ if ( this.eventProcessors[i] )
1371
+ this.eventProcessors[i].call( this, this._.dialog, definition[i] );
1372
+ else
1373
+ registerDomEvent( this, this._.dialog, match[1].toLowerCase(), definition[i] );
1374
+ }
1375
+
1376
+ return this;
1377
+ },
1378
+
1379
+ /**
1380
+ * Redraws the file input and resets the file path in the file input.
1381
+ * The redraw logic is necessary because non-IE browsers tend to clear
1382
+ * the &lt;iframe&gt; containing the file input after closing the dialog.
1383
+ * @example
1384
+ */
1385
+ reset : function()
1386
+ {
1387
+ var _ = this._,
1388
+ frameElement = CKEDITOR.document.getById( _.frameId ),
1389
+ frameDocument = frameElement.getFrameDocument(),
1390
+ elementDefinition = _.definition,
1391
+ buttons = _.buttons,
1392
+ callNumber = this.formLoadedNumber,
1393
+ unloadNumber = this.formUnloadNumber,
1394
+ langDir = _.dialog._.editor.lang.dir,
1395
+ langCode = _.dialog._.editor.langCode;
1396
+
1397
+ // The callback function for the iframe, but we must call tools.addFunction only once
1398
+ // so we store the function number in this.formLoadedNumber
1399
+ if ( !callNumber )
1400
+ {
1401
+ callNumber = this.formLoadedNumber = CKEDITOR.tools.addFunction(
1402
+ function()
1403
+ {
1404
+ // Now we can apply the events to the input type=file
1405
+ this.fire( 'formLoaded' ) ;
1406
+ }, this ) ;
1407
+
1408
+ // Remove listeners attached to the content of the iframe (the file input)
1409
+ unloadNumber = this.formUnloadNumber = CKEDITOR.tools.addFunction(
1410
+ function()
1411
+ {
1412
+ this.getInputElement().clearCustomData();
1413
+ }, this ) ;
1414
+
1415
+ this.getDialog()._.editor.on( 'destroy', function()
1416
+ {
1417
+ CKEDITOR.tools.removeFunction( callNumber );
1418
+ CKEDITOR.tools.removeFunction( unloadNumber );
1419
+ } );
1420
+ }
1421
+
1422
+ function generateFormField()
1423
+ {
1424
+ frameDocument.$.open();
1425
+
1426
+ // Support for custom document.domain in IE.
1427
+ if ( CKEDITOR.env.isCustomDomain() )
1428
+ frameDocument.$.domain = document.domain;
1429
+
1430
+ var size = '';
1431
+ if ( elementDefinition.size )
1432
+ size = elementDefinition.size - ( CKEDITOR.env.ie ? 7 : 0 ); // "Browse" button is bigger in IE.
1433
+
1434
+ frameDocument.$.write( [ '<html dir="' + langDir + '" lang="' + langCode + '"><head><title></title></head><body style="margin: 0; overflow: hidden; background: transparent;">',
1435
+ '<form enctype="multipart/form-data" method="POST" dir="' + langDir + '" lang="' + langCode + '" action="',
1436
+ CKEDITOR.tools.htmlEncode( elementDefinition.action ),
1437
+ '">',
1438
+ '<input type="file" name="',
1439
+ CKEDITOR.tools.htmlEncode( elementDefinition.id || 'cke_upload' ),
1440
+ '" size="',
1441
+ CKEDITOR.tools.htmlEncode( size > 0 ? size : "" ),
1442
+ '" />',
1443
+ '</form>',
1444
+ '</body></html>',
1445
+ '<script>window.parent.CKEDITOR.tools.callFunction(' + callNumber + ');',
1446
+ 'window.onbeforeunload = function() {window.parent.CKEDITOR.tools.callFunction(' + unloadNumber + ')}</script>' ].join( '' ) );
1447
+
1448
+ frameDocument.$.close();
1449
+
1450
+ for ( var i = 0 ; i < buttons.length ; i++ )
1451
+ buttons[i].enable();
1452
+ }
1453
+
1454
+ // #3465: Wait for the browser to finish rendering the dialog first.
1455
+ if ( CKEDITOR.env.gecko )
1456
+ setTimeout( generateFormField, 500 );
1457
+ else
1458
+ generateFormField();
1459
+ },
1460
+
1461
+ getValue : function()
1462
+ {
1463
+ return this.getInputElement().$.value || '';
1464
+ },
1465
+
1466
+ /***
1467
+ * The default value of input type="file" is an empty string, but during initialization
1468
+ * of this UI element, the iframe still isn't ready so it can't be read from that object
1469
+ * Setting it manually prevents later issues about the current value ("") being different
1470
+ * of the initial value (undefined as it asked for .value of a div)
1471
+ */
1472
+ setInitValue : function()
1473
+ {
1474
+ this._.initValue = '';
1475
+ },
1476
+
1477
+ /**
1478
+ * Defines the onChange event for UI element definitions.
1479
+ * @field
1480
+ * @type Object
1481
+ * @example
1482
+ */
1483
+ eventProcessors :
1484
+ {
1485
+ onChange : function( dialog, func )
1486
+ {
1487
+ // If this method is called several times (I'm not sure about how this can happen but the default
1488
+ // onChange processor includes this protection)
1489
+ // In order to reapply to the new element, the property is deleted at the beggining of the registerEvents method
1490
+ if ( !this._.domOnChangeRegistered )
1491
+ {
1492
+ // By listening for the formLoaded event, this handler will get reapplied when a new
1493
+ // form is created
1494
+ this.on( 'formLoaded', function()
1495
+ {
1496
+ this.getInputElement().on( 'change', function(){ this.fire( 'change', { value : this.getValue() } ); }, this );
1497
+ }, this );
1498
+ this._.domOnChangeRegistered = true;
1499
+ }
1500
+
1501
+ this.on( 'change', func );
1502
+ }
1503
+ },
1504
+
1505
+ keyboardFocusable : true
1506
+ }, true );
1507
+
1508
+ CKEDITOR.ui.dialog.fileButton.prototype = new CKEDITOR.ui.dialog.button;
1509
+
1510
+ CKEDITOR.ui.dialog.fieldset.prototype = CKEDITOR.tools.clone( CKEDITOR.ui.dialog.hbox.prototype );
1511
+
1512
+ CKEDITOR.dialog.addUIElement( 'text', textBuilder );
1513
+ CKEDITOR.dialog.addUIElement( 'password', textBuilder );
1514
+ CKEDITOR.dialog.addUIElement( 'textarea', commonBuilder );
1515
+ CKEDITOR.dialog.addUIElement( 'checkbox', commonBuilder );
1516
+ CKEDITOR.dialog.addUIElement( 'radio', commonBuilder );
1517
+ CKEDITOR.dialog.addUIElement( 'button', commonBuilder );
1518
+ CKEDITOR.dialog.addUIElement( 'select', commonBuilder );
1519
+ CKEDITOR.dialog.addUIElement( 'file', commonBuilder );
1520
+ CKEDITOR.dialog.addUIElement( 'fileButton', commonBuilder );
1521
+ CKEDITOR.dialog.addUIElement( 'html', commonBuilder );
1522
+ CKEDITOR.dialog.addUIElement( 'fieldset', containerBuilder );
1523
+ })();