forge-cli 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (620) hide show
  1. checksums.yaml +7 -0
  2. data/lib/forge-cli/modules/base/manifest.yml +1 -1
  3. data/lib/forge-cli/modules/base/routes.rb +1 -1
  4. data/lib/forge-cli/modules/posts/routes.rb +3 -1
  5. data/lib/forge-cli/version.rb +1 -1
  6. data/lib/forge/Gemfile +1 -0
  7. data/lib/forge/app/assets/javascripts/ckeditor/config.js +35 -0
  8. data/lib/forge/{public → app/assets}/javascripts/ckeditor/contents.css +0 -0
  9. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +0 -0
  10. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/a11yhelp/lang/en.js +0 -0
  11. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/a11yhelp/lang/he.js +0 -0
  12. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/about/dialogs/about.js +0 -0
  13. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/about/dialogs/logo_ckeditor.png +0 -0
  14. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/ajax_save/plugin.js +0 -0
  15. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/attachment/dialogs/attachment.js +0 -0
  16. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/attachment/images/attachment.png +0 -0
  17. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/attachment/lang/en.js +0 -0
  18. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/attachment/lang/ru.js +0 -0
  19. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/attachment/lang/uk.js +0 -0
  20. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/attachment/plugin.js +0 -0
  21. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/autogrow/plugin.js +0 -0
  22. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/clipboard/dialogs/paste.js +0 -0
  23. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/colordialog/dialogs/colordialog.js +0 -0
  24. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/dialog/dialogDefinition.js +0 -0
  25. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/div/dialogs/div.js +0 -0
  26. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/embed/dialogs/embed.js +0 -0
  27. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/embed/images/embed.png +0 -0
  28. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/embed/lang/en.js +0 -0
  29. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/embed/lang/ru.js +0 -0
  30. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/embed/lang/uk.js +0 -0
  31. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/embed/plugin.js +0 -0
  32. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/find/dialogs/find.js +0 -0
  33. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/flash/dialogs/flash.js +0 -0
  34. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/flash/images/placeholder.png +0 -0
  35. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/forge_assets/plugin.js +2 -2
  36. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/forms/dialogs/button.js +0 -0
  37. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/forms/dialogs/checkbox.js +0 -0
  38. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/forms/dialogs/form.js +0 -0
  39. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/forms/dialogs/hiddenfield.js +0 -0
  40. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/forms/dialogs/radio.js +0 -0
  41. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/forms/dialogs/select.js +0 -0
  42. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/forms/dialogs/textarea.js +0 -0
  43. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/forms/dialogs/textfield.js +0 -0
  44. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/forms/images/hiddenfield.gif +0 -0
  45. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/iframedialog/plugin.js +0 -0
  46. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/image/dialogs/image.js +0 -0
  47. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/link/dialogs/anchor.js +0 -0
  48. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/link/dialogs/link.js +0 -0
  49. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/link/images/anchor.gif +0 -0
  50. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/liststyle/dialogs/liststyle.js +0 -0
  51. data/lib/forge/app/assets/javascripts/ckeditor/plugins/mediaembed/icons/hidpi/mediaembed.png +0 -0
  52. data/lib/forge/app/assets/javascripts/ckeditor/plugins/mediaembed/icons/mediaembed.png +0 -0
  53. data/lib/forge/app/assets/javascripts/ckeditor/plugins/mediaembed/plugin.js +64 -0
  54. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/pagebreak/images/pagebreak.gif +0 -0
  55. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/pastefromword/filter/default.js +0 -0
  56. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/pastetext/dialogs/pastetext.js +0 -0
  57. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/scayt/dialogs/options.js +0 -0
  58. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/scayt/dialogs/toolbar.css +0 -0
  59. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/showblocks/images/block_address.png +0 -0
  60. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/showblocks/images/block_blockquote.png +0 -0
  61. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/showblocks/images/block_div.png +0 -0
  62. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/showblocks/images/block_h1.png +0 -0
  63. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/showblocks/images/block_h2.png +0 -0
  64. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/showblocks/images/block_h3.png +0 -0
  65. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/showblocks/images/block_h4.png +0 -0
  66. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/showblocks/images/block_h5.png +0 -0
  67. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/showblocks/images/block_h6.png +0 -0
  68. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/showblocks/images/block_p.png +0 -0
  69. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/showblocks/images/block_pre.png +0 -0
  70. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/smiley/dialogs/smiley.js +0 -0
  71. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/angel_smile.gif +0 -0
  72. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/angry_smile.gif +0 -0
  73. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/broken_heart.gif +0 -0
  74. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/confused_smile.gif +0 -0
  75. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/cry_smile.gif +0 -0
  76. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/devil_smile.gif +0 -0
  77. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/embaressed_smile.gif +0 -0
  78. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/envelope.gif +0 -0
  79. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/heart.gif +0 -0
  80. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/kiss.gif +0 -0
  81. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/lightbulb.gif +0 -0
  82. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/omg_smile.gif +0 -0
  83. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/regular_smile.gif +0 -0
  84. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/sad_smile.gif +0 -0
  85. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/shades_smile.gif +0 -0
  86. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/teeth_smile.gif +0 -0
  87. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/thumbs_down.gif +0 -0
  88. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/thumbs_up.gif +0 -0
  89. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/tounge_smile.gif +0 -0
  90. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/whatchutalkingabout_smile.gif +0 -0
  91. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/smiley/images/wink_smile.gif +0 -0
  92. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/specialchar/dialogs/specialchar.js +0 -0
  93. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/styles/styles/default.js +0 -0
  94. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/table/dialogs/table.js +0 -0
  95. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/tableresize/plugin.js +0 -0
  96. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/tabletools/dialogs/tableCell.js +0 -0
  97. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/templates/dialogs/templates.js +0 -0
  98. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/templates/templates/default.js +0 -0
  99. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/templates/templates/images/template1.gif +0 -0
  100. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/templates/templates/images/template2.gif +0 -0
  101. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/templates/templates/images/template3.gif +0 -0
  102. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/uicolor/dialogs/uicolor.js +0 -0
  103. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/uicolor/lang/en.js +0 -0
  104. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/uicolor/plugin.js +0 -0
  105. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/uicolor/uicolor.gif +0 -0
  106. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/uicolor/yui/assets/hue_bg.png +0 -0
  107. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/uicolor/yui/assets/hue_thumb.png +0 -0
  108. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/uicolor/yui/assets/picker_mask.png +0 -0
  109. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/uicolor/yui/assets/picker_thumb.png +0 -0
  110. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/uicolor/yui/assets/yui.css +0 -0
  111. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/uicolor/yui/yui.js +0 -0
  112. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/wsc/dialogs/ciframe.html +0 -0
  113. data/lib/forge/{public/javascripts/ckeditor/_source → app/assets/javascripts/ckeditor}/plugins/wsc/dialogs/tmpFrameset.html +0 -0
  114. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/wsc/dialogs/wsc.css +0 -0
  115. data/lib/forge/{public → app/assets}/javascripts/ckeditor/plugins/wsc/dialogs/wsc.js +0 -0
  116. data/lib/forge/app/models/asset.rb +2 -1
  117. data/lib/forge/app/views/forge/pages/_form.html.haml +12 -5
  118. data/lib/forge/app/views/forge/posts/_form.html.haml +12 -6
  119. data/lib/forge/app/views/layouts/forge.html.haml +0 -3
  120. data/lib/forge/config/routes.rb +4 -2
  121. data/lib/forge/lib/assets/javascripts/forge/features/asset_dialog.js.erb +1 -1
  122. data/lib/forge/lib/assets/javascripts/forge/features/asset_drawer.js.erb +4 -4
  123. data/lib/forge/lib/assets/javascripts/forge/forge_manifest.js.erb +1 -0
  124. data/lib/forge/lib/generators/forge/scaffold/scaffold_generator.rb +1 -0
  125. data/lib/forge/lib/templates/active_record/model/model.rb +4 -1
  126. data/lib/forge/public/images/image_new.png +0 -0
  127. metadata +207 -699
  128. data/lib/forge/public/javascripts/ckeditor/CHANGES.html +0 -923
  129. data/lib/forge/public/javascripts/ckeditor/INSTALL.html +0 -92
  130. data/lib/forge/public/javascripts/ckeditor/LICENSE.html +0 -1334
  131. data/lib/forge/public/javascripts/ckeditor/_source/adapters/jquery.js +0 -297
  132. data/lib/forge/public/javascripts/ckeditor/_source/core/_bootstrap.js +0 -91
  133. data/lib/forge/public/javascripts/ckeditor/_source/core/ajax.js +0 -143
  134. data/lib/forge/public/javascripts/ckeditor/_source/core/ckeditor.js +0 -113
  135. data/lib/forge/public/javascripts/ckeditor/_source/core/ckeditor_base.js +0 -193
  136. data/lib/forge/public/javascripts/ckeditor/_source/core/ckeditor_basic.js +0 -242
  137. data/lib/forge/public/javascripts/ckeditor/_source/core/command.js +0 -73
  138. data/lib/forge/public/javascripts/ckeditor/_source/core/commanddefinition.js +0 -102
  139. data/lib/forge/public/javascripts/ckeditor/_source/core/config.js +0 -405
  140. data/lib/forge/public/javascripts/ckeditor/_source/core/dataprocessor.js +0 -66
  141. data/lib/forge/public/javascripts/ckeditor/_source/core/dom.js +0 -21
  142. data/lib/forge/public/javascripts/ckeditor/_source/core/dom/comment.js +0 -32
  143. data/lib/forge/public/javascripts/ckeditor/_source/core/dom/document.js +0 -224
  144. data/lib/forge/public/javascripts/ckeditor/_source/core/dom/documentfragment.js +0 -49
  145. data/lib/forge/public/javascripts/ckeditor/_source/core/dom/domobject.js +0 -251
  146. data/lib/forge/public/javascripts/ckeditor/_source/core/dom/element.js +0 -1556
  147. data/lib/forge/public/javascripts/ckeditor/_source/core/dom/elementpath.js +0 -116
  148. data/lib/forge/public/javascripts/ckeditor/_source/core/dom/event.js +0 -142
  149. data/lib/forge/public/javascripts/ckeditor/_source/core/dom/node.js +0 -683
  150. data/lib/forge/public/javascripts/ckeditor/_source/core/dom/nodelist.js +0 -23
  151. data/lib/forge/public/javascripts/ckeditor/_source/core/dom/range.js +0 -1880
  152. data/lib/forge/public/javascripts/ckeditor/_source/core/dom/rangelist.js +0 -163
  153. data/lib/forge/public/javascripts/ckeditor/_source/core/dom/text.js +0 -123
  154. data/lib/forge/public/javascripts/ckeditor/_source/core/dom/walker.js +0 -445
  155. data/lib/forge/public/javascripts/ckeditor/_source/core/dom/window.js +0 -96
  156. data/lib/forge/public/javascripts/ckeditor/_source/core/dtd.js +0 -233
  157. data/lib/forge/public/javascripts/ckeditor/_source/core/editor.js +0 -759
  158. data/lib/forge/public/javascripts/ckeditor/_source/core/editor_basic.js +0 -182
  159. data/lib/forge/public/javascripts/ckeditor/_source/core/env.js +0 -229
  160. data/lib/forge/public/javascripts/ckeditor/_source/core/event.js +0 -336
  161. data/lib/forge/public/javascripts/ckeditor/_source/core/eventInfo.js +0 -120
  162. data/lib/forge/public/javascripts/ckeditor/_source/core/focusmanager.js +0 -137
  163. data/lib/forge/public/javascripts/ckeditor/_source/core/htmlparser.js +0 -218
  164. data/lib/forge/public/javascripts/ckeditor/_source/core/htmlparser/basicwriter.js +0 -145
  165. data/lib/forge/public/javascripts/ckeditor/_source/core/htmlparser/cdata.js +0 -43
  166. data/lib/forge/public/javascripts/ckeditor/_source/core/htmlparser/comment.js +0 -60
  167. data/lib/forge/public/javascripts/ckeditor/_source/core/htmlparser/element.js +0 -240
  168. data/lib/forge/public/javascripts/ckeditor/_source/core/htmlparser/filter.js +0 -288
  169. data/lib/forge/public/javascripts/ckeditor/_source/core/htmlparser/fragment.js +0 -497
  170. data/lib/forge/public/javascripts/ckeditor/_source/core/htmlparser/text.js +0 -55
  171. data/lib/forge/public/javascripts/ckeditor/_source/core/imagecacher.js +0 -59
  172. data/lib/forge/public/javascripts/ckeditor/_source/core/lang.js +0 -152
  173. data/lib/forge/public/javascripts/ckeditor/_source/core/loader.js +0 -243
  174. data/lib/forge/public/javascripts/ckeditor/_source/core/plugindefinition.js +0 -66
  175. data/lib/forge/public/javascripts/ckeditor/_source/core/plugins.js +0 -85
  176. data/lib/forge/public/javascripts/ckeditor/_source/core/resourcemanager.js +0 -238
  177. data/lib/forge/public/javascripts/ckeditor/_source/core/scriptloader.js +0 -198
  178. data/lib/forge/public/javascripts/ckeditor/_source/core/skins.js +0 -204
  179. data/lib/forge/public/javascripts/ckeditor/_source/core/themes.js +0 -19
  180. data/lib/forge/public/javascripts/ckeditor/_source/core/tools.js +0 -747
  181. data/lib/forge/public/javascripts/ckeditor/_source/core/ui.js +0 -116
  182. data/lib/forge/public/javascripts/ckeditor/_source/core/xml.js +0 -165
  183. data/lib/forge/public/javascripts/ckeditor/_source/lang/_languages.js +0 -83
  184. data/lib/forge/public/javascripts/ckeditor/_source/lang/_translationstatus.txt +0 -60
  185. data/lib/forge/public/javascripts/ckeditor/_source/lang/af.js +0 -758
  186. data/lib/forge/public/javascripts/ckeditor/_source/lang/ar.js +0 -758
  187. data/lib/forge/public/javascripts/ckeditor/_source/lang/bg.js +0 -758
  188. data/lib/forge/public/javascripts/ckeditor/_source/lang/bn.js +0 -758
  189. data/lib/forge/public/javascripts/ckeditor/_source/lang/bs.js +0 -758
  190. data/lib/forge/public/javascripts/ckeditor/_source/lang/ca.js +0 -758
  191. data/lib/forge/public/javascripts/ckeditor/_source/lang/cs.js +0 -758
  192. data/lib/forge/public/javascripts/ckeditor/_source/lang/cy.js +0 -758
  193. data/lib/forge/public/javascripts/ckeditor/_source/lang/da.js +0 -758
  194. data/lib/forge/public/javascripts/ckeditor/_source/lang/de.js +0 -758
  195. data/lib/forge/public/javascripts/ckeditor/_source/lang/el.js +0 -758
  196. data/lib/forge/public/javascripts/ckeditor/_source/lang/en-au.js +0 -758
  197. data/lib/forge/public/javascripts/ckeditor/_source/lang/en-ca.js +0 -758
  198. data/lib/forge/public/javascripts/ckeditor/_source/lang/en-gb.js +0 -758
  199. data/lib/forge/public/javascripts/ckeditor/_source/lang/en.js +0 -758
  200. data/lib/forge/public/javascripts/ckeditor/_source/lang/eo.js +0 -758
  201. data/lib/forge/public/javascripts/ckeditor/_source/lang/es.js +0 -758
  202. data/lib/forge/public/javascripts/ckeditor/_source/lang/et.js +0 -758
  203. data/lib/forge/public/javascripts/ckeditor/_source/lang/eu.js +0 -758
  204. data/lib/forge/public/javascripts/ckeditor/_source/lang/fa.js +0 -758
  205. data/lib/forge/public/javascripts/ckeditor/_source/lang/fi.js +0 -758
  206. data/lib/forge/public/javascripts/ckeditor/_source/lang/fo.js +0 -758
  207. data/lib/forge/public/javascripts/ckeditor/_source/lang/fr-ca.js +0 -758
  208. data/lib/forge/public/javascripts/ckeditor/_source/lang/fr.js +0 -758
  209. data/lib/forge/public/javascripts/ckeditor/_source/lang/gl.js +0 -758
  210. data/lib/forge/public/javascripts/ckeditor/_source/lang/gu.js +0 -758
  211. data/lib/forge/public/javascripts/ckeditor/_source/lang/he.js +0 -758
  212. data/lib/forge/public/javascripts/ckeditor/_source/lang/hi.js +0 -758
  213. data/lib/forge/public/javascripts/ckeditor/_source/lang/hr.js +0 -758
  214. data/lib/forge/public/javascripts/ckeditor/_source/lang/hu.js +0 -758
  215. data/lib/forge/public/javascripts/ckeditor/_source/lang/is.js +0 -758
  216. data/lib/forge/public/javascripts/ckeditor/_source/lang/it.js +0 -758
  217. data/lib/forge/public/javascripts/ckeditor/_source/lang/ja.js +0 -758
  218. data/lib/forge/public/javascripts/ckeditor/_source/lang/km.js +0 -758
  219. data/lib/forge/public/javascripts/ckeditor/_source/lang/ko.js +0 -758
  220. data/lib/forge/public/javascripts/ckeditor/_source/lang/lt.js +0 -758
  221. data/lib/forge/public/javascripts/ckeditor/_source/lang/lv.js +0 -758
  222. data/lib/forge/public/javascripts/ckeditor/_source/lang/mn.js +0 -758
  223. data/lib/forge/public/javascripts/ckeditor/_source/lang/ms.js +0 -758
  224. data/lib/forge/public/javascripts/ckeditor/_source/lang/nb.js +0 -758
  225. data/lib/forge/public/javascripts/ckeditor/_source/lang/nl.js +0 -758
  226. data/lib/forge/public/javascripts/ckeditor/_source/lang/no.js +0 -758
  227. data/lib/forge/public/javascripts/ckeditor/_source/lang/pl.js +0 -758
  228. data/lib/forge/public/javascripts/ckeditor/_source/lang/pt-br.js +0 -757
  229. data/lib/forge/public/javascripts/ckeditor/_source/lang/pt.js +0 -758
  230. data/lib/forge/public/javascripts/ckeditor/_source/lang/ro.js +0 -758
  231. data/lib/forge/public/javascripts/ckeditor/_source/lang/ru.js +0 -758
  232. data/lib/forge/public/javascripts/ckeditor/_source/lang/sk.js +0 -758
  233. data/lib/forge/public/javascripts/ckeditor/_source/lang/sl.js +0 -758
  234. data/lib/forge/public/javascripts/ckeditor/_source/lang/sr-latn.js +0 -758
  235. data/lib/forge/public/javascripts/ckeditor/_source/lang/sr.js +0 -758
  236. data/lib/forge/public/javascripts/ckeditor/_source/lang/sv.js +0 -758
  237. data/lib/forge/public/javascripts/ckeditor/_source/lang/th.js +0 -758
  238. data/lib/forge/public/javascripts/ckeditor/_source/lang/tr.js +0 -757
  239. data/lib/forge/public/javascripts/ckeditor/_source/lang/uk.js +0 -758
  240. data/lib/forge/public/javascripts/ckeditor/_source/lang/vi.js +0 -758
  241. data/lib/forge/public/javascripts/ckeditor/_source/lang/zh-cn.js +0 -758
  242. data/lib/forge/public/javascripts/ckeditor/_source/lang/zh.js +0 -758
  243. data/lib/forge/public/javascripts/ckeditor/_source/plugins/a11yhelp/dialogs/a11yhelp.js +0 -211
  244. data/lib/forge/public/javascripts/ckeditor/_source/plugins/a11yhelp/lang/en.js +0 -108
  245. data/lib/forge/public/javascripts/ckeditor/_source/plugins/a11yhelp/lang/he.js +0 -216
  246. data/lib/forge/public/javascripts/ckeditor/_source/plugins/a11yhelp/plugin.js +0 -46
  247. data/lib/forge/public/javascripts/ckeditor/_source/plugins/about/dialogs/about.js +0 -73
  248. data/lib/forge/public/javascripts/ckeditor/_source/plugins/about/plugin.js +0 -23
  249. data/lib/forge/public/javascripts/ckeditor/_source/plugins/ajax_save/plugin.js +0 -43
  250. data/lib/forge/public/javascripts/ckeditor/_source/plugins/attachment/dialogs/attachment.js +0 -384
  251. data/lib/forge/public/javascripts/ckeditor/_source/plugins/attachment/plugin.js +0 -44
  252. data/lib/forge/public/javascripts/ckeditor/_source/plugins/autogrow/plugin.js +0 -79
  253. data/lib/forge/public/javascripts/ckeditor/_source/plugins/basicstyles/plugin.js +0 -101
  254. data/lib/forge/public/javascripts/ckeditor/_source/plugins/bidi/plugin.js +0 -247
  255. data/lib/forge/public/javascripts/ckeditor/_source/plugins/blockquote/plugin.js +0 -301
  256. data/lib/forge/public/javascripts/ckeditor/_source/plugins/button/plugin.js +0 -277
  257. data/lib/forge/public/javascripts/ckeditor/_source/plugins/clipboard/dialogs/paste.js +0 -205
  258. data/lib/forge/public/javascripts/ckeditor/_source/plugins/clipboard/plugin.js +0 -412
  259. data/lib/forge/public/javascripts/ckeditor/_source/plugins/colorbutton/plugin.js +0 -251
  260. data/lib/forge/public/javascripts/ckeditor/_source/plugins/colordialog/dialogs/colordialog.js +0 -340
  261. data/lib/forge/public/javascripts/ckeditor/_source/plugins/colordialog/plugin.js +0 -13
  262. data/lib/forge/public/javascripts/ckeditor/_source/plugins/contextmenu/plugin.js +0 -276
  263. data/lib/forge/public/javascripts/ckeditor/_source/plugins/dialog/dialogDefinition.js +0 -315
  264. data/lib/forge/public/javascripts/ckeditor/_source/plugins/dialog/plugin.js +0 -3016
  265. data/lib/forge/public/javascripts/ckeditor/_source/plugins/dialogadvtab/plugin.js +0 -207
  266. data/lib/forge/public/javascripts/ckeditor/_source/plugins/dialogui/plugin.js +0 -1522
  267. data/lib/forge/public/javascripts/ckeditor/_source/plugins/div/dialogs/div.js +0 -535
  268. data/lib/forge/public/javascripts/ckeditor/_source/plugins/div/plugin.js +0 -121
  269. data/lib/forge/public/javascripts/ckeditor/_source/plugins/domiterator/plugin.js +0 -350
  270. data/lib/forge/public/javascripts/ckeditor/_source/plugins/editingblock/plugin.js +0 -230
  271. data/lib/forge/public/javascripts/ckeditor/_source/plugins/elementspath/plugin.js +0 -206
  272. data/lib/forge/public/javascripts/ckeditor/_source/plugins/embed/dialogs/embed.js +0 -65
  273. data/lib/forge/public/javascripts/ckeditor/_source/plugins/embed/plugin.js +0 -43
  274. data/lib/forge/public/javascripts/ckeditor/_source/plugins/enterkey/plugin.js +0 -363
  275. data/lib/forge/public/javascripts/ckeditor/_source/plugins/entities/plugin.js +0 -227
  276. data/lib/forge/public/javascripts/ckeditor/_source/plugins/fakeobjects/plugin.js +0 -122
  277. data/lib/forge/public/javascripts/ckeditor/_source/plugins/filebrowser/plugin.js +0 -491
  278. data/lib/forge/public/javascripts/ckeditor/_source/plugins/find/dialogs/find.js +0 -885
  279. data/lib/forge/public/javascripts/ckeditor/_source/plugins/find/plugin.js +0 -46
  280. data/lib/forge/public/javascripts/ckeditor/_source/plugins/flash/dialogs/flash.js +0 -698
  281. data/lib/forge/public/javascripts/ckeditor/_source/plugins/flash/plugin.js +0 -174
  282. data/lib/forge/public/javascripts/ckeditor/_source/plugins/floatpanel/plugin.js +0 -398
  283. data/lib/forge/public/javascripts/ckeditor/_source/plugins/font/plugin.js +0 -234
  284. data/lib/forge/public/javascripts/ckeditor/_source/plugins/format/plugin.js +0 -194
  285. data/lib/forge/public/javascripts/ckeditor/_source/plugins/forms/dialogs/button.js +0 -135
  286. data/lib/forge/public/javascripts/ckeditor/_source/plugins/forms/dialogs/checkbox.js +0 -155
  287. data/lib/forge/public/javascripts/ckeditor/_source/plugins/forms/dialogs/form.js +0 -177
  288. data/lib/forge/public/javascripts/ckeditor/_source/plugins/forms/dialogs/hiddenfield.js +0 -98
  289. data/lib/forge/public/javascripts/ckeditor/_source/plugins/forms/dialogs/radio.js +0 -135
  290. data/lib/forge/public/javascripts/ckeditor/_source/plugins/forms/dialogs/select.js +0 -556
  291. data/lib/forge/public/javascripts/ckeditor/_source/plugins/forms/dialogs/textarea.js +0 -114
  292. data/lib/forge/public/javascripts/ckeditor/_source/plugins/forms/dialogs/textfield.js +0 -199
  293. data/lib/forge/public/javascripts/ckeditor/_source/plugins/forms/plugin.js +0 -281
  294. data/lib/forge/public/javascripts/ckeditor/_source/plugins/horizontalrule/plugin.js +0 -36
  295. data/lib/forge/public/javascripts/ckeditor/_source/plugins/htmldataprocessor/plugin.js +0 -494
  296. data/lib/forge/public/javascripts/ckeditor/_source/plugins/htmlwriter/plugin.js +0 -314
  297. data/lib/forge/public/javascripts/ckeditor/_source/plugins/iframedialog/plugin.js +0 -136
  298. data/lib/forge/public/javascripts/ckeditor/_source/plugins/image/dialogs/image.js +0 -1396
  299. data/lib/forge/public/javascripts/ckeditor/_source/plugins/image/plugin.js +0 -81
  300. data/lib/forge/public/javascripts/ckeditor/_source/plugins/indent/plugin.js +0 -447
  301. data/lib/forge/public/javascripts/ckeditor/_source/plugins/justify/plugin.js +0 -190
  302. data/lib/forge/public/javascripts/ckeditor/_source/plugins/keystrokes/plugin.js +0 -229
  303. data/lib/forge/public/javascripts/ckeditor/_source/plugins/link/dialogs/anchor.js +0 -99
  304. data/lib/forge/public/javascripts/ckeditor/_source/plugins/link/dialogs/link.js +0 -1420
  305. data/lib/forge/public/javascripts/ckeditor/_source/plugins/link/plugin.js +0 -238
  306. data/lib/forge/public/javascripts/ckeditor/_source/plugins/list/plugin.js +0 -683
  307. data/lib/forge/public/javascripts/ckeditor/_source/plugins/listblock/plugin.js +0 -257
  308. data/lib/forge/public/javascripts/ckeditor/_source/plugins/liststyle/dialogs/liststyle.js +0 -203
  309. data/lib/forge/public/javascripts/ckeditor/_source/plugins/liststyle/plugin.js +0 -66
  310. data/lib/forge/public/javascripts/ckeditor/_source/plugins/maximize/plugin.js +0 -343
  311. data/lib/forge/public/javascripts/ckeditor/_source/plugins/menu/plugin.js +0 -409
  312. data/lib/forge/public/javascripts/ckeditor/_source/plugins/menubutton/plugin.js +0 -94
  313. data/lib/forge/public/javascripts/ckeditor/_source/plugins/newpage/plugin.js +0 -54
  314. data/lib/forge/public/javascripts/ckeditor/_source/plugins/pagebreak/plugin.js +0 -121
  315. data/lib/forge/public/javascripts/ckeditor/_source/plugins/panel/plugin.js +0 -398
  316. data/lib/forge/public/javascripts/ckeditor/_source/plugins/panelbutton/plugin.js +0 -147
  317. data/lib/forge/public/javascripts/ckeditor/_source/plugins/pastefromword/filter/default.js +0 -1170
  318. data/lib/forge/public/javascripts/ckeditor/_source/plugins/pastefromword/plugin.js +0 -122
  319. data/lib/forge/public/javascripts/ckeditor/_source/plugins/pastetext/dialogs/pastetext.js +0 -70
  320. data/lib/forge/public/javascripts/ckeditor/_source/plugins/pastetext/plugin.js +0 -145
  321. data/lib/forge/public/javascripts/ckeditor/_source/plugins/popup/plugin.js +0 -64
  322. data/lib/forge/public/javascripts/ckeditor/_source/plugins/preview/plugin.js +0 -108
  323. data/lib/forge/public/javascripts/ckeditor/_source/plugins/print/plugin.js +0 -41
  324. data/lib/forge/public/javascripts/ckeditor/_source/plugins/removeformat/plugin.js +0 -184
  325. data/lib/forge/public/javascripts/ckeditor/_source/plugins/resize/plugin.js +0 -157
  326. data/lib/forge/public/javascripts/ckeditor/_source/plugins/richcombo/plugin.js +0 -370
  327. data/lib/forge/public/javascripts/ckeditor/_source/plugins/save/plugin.js +0 -55
  328. data/lib/forge/public/javascripts/ckeditor/_source/plugins/scayt/dialogs/options.js +0 -533
  329. data/lib/forge/public/javascripts/ckeditor/_source/plugins/scayt/dialogs/toolbar.css +0 -71
  330. data/lib/forge/public/javascripts/ckeditor/_source/plugins/scayt/plugin.js +0 -943
  331. data/lib/forge/public/javascripts/ckeditor/_source/plugins/selection/plugin.js +0 -1367
  332. data/lib/forge/public/javascripts/ckeditor/_source/plugins/showblocks/plugin.js +0 -156
  333. data/lib/forge/public/javascripts/ckeditor/_source/plugins/showborders/plugin.js +0 -201
  334. data/lib/forge/public/javascripts/ckeditor/_source/plugins/smiley/dialogs/smiley.js +0 -216
  335. data/lib/forge/public/javascripts/ckeditor/_source/plugins/smiley/plugin.js +0 -94
  336. data/lib/forge/public/javascripts/ckeditor/_source/plugins/sourcearea/plugin.js +0 -207
  337. data/lib/forge/public/javascripts/ckeditor/_source/plugins/specialchar/dialogs/specialchar.js +0 -409
  338. data/lib/forge/public/javascripts/ckeditor/_source/plugins/specialchar/plugin.js +0 -29
  339. data/lib/forge/public/javascripts/ckeditor/_source/plugins/styles/plugin.js +0 -1445
  340. data/lib/forge/public/javascripts/ckeditor/_source/plugins/styles/styles/default.js +0 -88
  341. data/lib/forge/public/javascripts/ckeditor/_source/plugins/stylescombo/plugin.js +0 -207
  342. data/lib/forge/public/javascripts/ckeditor/_source/plugins/tab/plugin.js +0 -367
  343. data/lib/forge/public/javascripts/ckeditor/_source/plugins/table/dialogs/table.js +0 -673
  344. data/lib/forge/public/javascripts/ckeditor/_source/plugins/table/plugin.js +0 -78
  345. data/lib/forge/public/javascripts/ckeditor/_source/plugins/tableresize/plugin.js +0 -450
  346. data/lib/forge/public/javascripts/ckeditor/_source/plugins/tabletools/dialogs/tableCell.js +0 -533
  347. data/lib/forge/public/javascripts/ckeditor/_source/plugins/tabletools/plugin.js +0 -1120
  348. data/lib/forge/public/javascripts/ckeditor/_source/plugins/templates/dialogs/templates.js +0 -231
  349. data/lib/forge/public/javascripts/ckeditor/_source/plugins/templates/plugin.js +0 -100
  350. data/lib/forge/public/javascripts/ckeditor/_source/plugins/templates/templates/default.js +0 -94
  351. data/lib/forge/public/javascripts/ckeditor/_source/plugins/toolbar/plugin.js +0 -481
  352. data/lib/forge/public/javascripts/ckeditor/_source/plugins/uicolor/dialogs/uicolor.js +0 -205
  353. data/lib/forge/public/javascripts/ckeditor/_source/plugins/uicolor/lang/en.js +0 -15
  354. data/lib/forge/public/javascripts/ckeditor/_source/plugins/uicolor/plugin.js +0 -37
  355. data/lib/forge/public/javascripts/ckeditor/_source/plugins/uicolor/yui/assets/yui.css +0 -15
  356. data/lib/forge/public/javascripts/ckeditor/_source/plugins/uicolor/yui/yui.js +0 -71
  357. data/lib/forge/public/javascripts/ckeditor/_source/plugins/undo/plugin.js +0 -555
  358. data/lib/forge/public/javascripts/ckeditor/_source/plugins/wsc/dialogs/wsc.css +0 -82
  359. data/lib/forge/public/javascripts/ckeditor/_source/plugins/wsc/dialogs/wsc.js +0 -176
  360. data/lib/forge/public/javascripts/ckeditor/_source/plugins/wsc/plugin.js +0 -33
  361. data/lib/forge/public/javascripts/ckeditor/_source/plugins/wysiwygarea/plugin.js +0 -1126
  362. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/dialog.css +0 -856
  363. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/editor.css +0 -25
  364. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/elementspath.css +0 -73
  365. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/icons.css +0 -357
  366. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/icons.png +0 -0
  367. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/icons_rtl.png +0 -0
  368. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/images/dialog_sides.gif +0 -0
  369. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/images/dialog_sides.png +0 -0
  370. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/images/dialog_sides_rtl.png +0 -0
  371. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/images/mini.gif +0 -0
  372. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/images/noimage.png +0 -0
  373. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/images/sprites.png +0 -0
  374. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/images/sprites_ie6.png +0 -0
  375. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/images/toolbar_start.gif +0 -0
  376. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/mainui.css +0 -195
  377. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/menu.css +0 -202
  378. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/panel.css +0 -217
  379. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/presets.css +0 -49
  380. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/reset.css +0 -84
  381. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/richcombo.css +0 -277
  382. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/skin.js +0 -268
  383. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/templates.css +0 -88
  384. data/lib/forge/public/javascripts/ckeditor/_source/skins/kama/toolbar.css +0 -409
  385. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/dialog.css +0 -765
  386. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/editor.css +0 -25
  387. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/elementspath.css +0 -74
  388. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/icons.css +0 -354
  389. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/icons.png +0 -0
  390. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/icons_rtl.png +0 -0
  391. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/images/dialog_sides.gif +0 -0
  392. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/images/dialog_sides.png +0 -0
  393. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/images/dialog_sides_rtl.png +0 -0
  394. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/images/mini.gif +0 -0
  395. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/images/noimage.png +0 -0
  396. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/images/sprites.png +0 -0
  397. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/images/sprites_ie6.png +0 -0
  398. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/mainui.css +0 -145
  399. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/menu.css +0 -199
  400. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/panel.css +0 -212
  401. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/presets.css +0 -49
  402. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/reset.css +0 -84
  403. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/richcombo.css +0 -297
  404. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/skin.js +0 -81
  405. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/templates.css +0 -87
  406. data/lib/forge/public/javascripts/ckeditor/_source/skins/office2003/toolbar.css +0 -470
  407. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/dialog.css +0 -780
  408. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/editor.css +0 -25
  409. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/elementspath.css +0 -74
  410. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/icons.css +0 -354
  411. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/icons.png +0 -0
  412. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/icons_rtl.png +0 -0
  413. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/images/dialog_sides.gif +0 -0
  414. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/images/dialog_sides.png +0 -0
  415. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/images/dialog_sides_rtl.png +0 -0
  416. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/images/mini.gif +0 -0
  417. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/images/noimage.png +0 -0
  418. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/images/sprites.png +0 -0
  419. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/images/sprites_ie6.png +0 -0
  420. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/images/toolbar_start.gif +0 -0
  421. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/mainui.css +0 -154
  422. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/menu.css +0 -201
  423. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/panel.css +0 -212
  424. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/presets.css +0 -50
  425. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/reset.css +0 -84
  426. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/richcombo.css +0 -297
  427. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/skin.js +0 -77
  428. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/templates.css +0 -87
  429. data/lib/forge/public/javascripts/ckeditor/_source/skins/v2/toolbar.css +0 -423
  430. data/lib/forge/public/javascripts/ckeditor/_source/themes/default/theme.js +0 -356
  431. data/lib/forge/public/javascripts/ckeditor/adapters/jquery.js +0 -6
  432. data/lib/forge/public/javascripts/ckeditor/ckeditor.js +0 -135
  433. data/lib/forge/public/javascripts/ckeditor/ckeditor.pack +0 -211
  434. data/lib/forge/public/javascripts/ckeditor/ckeditor_basic.js +0 -8
  435. data/lib/forge/public/javascripts/ckeditor/ckeditor_basic_source.js +0 -20
  436. data/lib/forge/public/javascripts/ckeditor/ckeditor_source.js +0 -25
  437. data/lib/forge/public/javascripts/ckeditor/config.js +0 -47
  438. data/lib/forge/public/javascripts/ckeditor/css/ckfinder.css +0 -299
  439. data/lib/forge/public/javascripts/ckeditor/css/fck_dialog.css +0 -119
  440. data/lib/forge/public/javascripts/ckeditor/css/fck_editor.css +0 -448
  441. data/lib/forge/public/javascripts/ckeditor/css/swfupload.css +0 -94
  442. data/lib/forge/public/javascripts/ckeditor/images/add.gif +0 -0
  443. data/lib/forge/public/javascripts/ckeditor/images/cancelbutton.gif +0 -0
  444. data/lib/forge/public/javascripts/ckeditor/images/ckfnothumb.gif +0 -0
  445. data/lib/forge/public/javascripts/ckeditor/images/doc.gif +0 -0
  446. data/lib/forge/public/javascripts/ckeditor/images/image_new.gif +0 -0
  447. data/lib/forge/public/javascripts/ckeditor/images/mp3.gif +0 -0
  448. data/lib/forge/public/javascripts/ckeditor/images/pdf.gif +0 -0
  449. data/lib/forge/public/javascripts/ckeditor/images/rar.gif +0 -0
  450. data/lib/forge/public/javascripts/ckeditor/images/refresh.gif +0 -0
  451. data/lib/forge/public/javascripts/ckeditor/images/select_files.png +0 -0
  452. data/lib/forge/public/javascripts/ckeditor/images/spacer.gif +0 -0
  453. data/lib/forge/public/javascripts/ckeditor/images/swf.gif +0 -0
  454. data/lib/forge/public/javascripts/ckeditor/images/toolbar.start.gif +0 -0
  455. data/lib/forge/public/javascripts/ckeditor/images/xls.gif +0 -0
  456. data/lib/forge/public/javascripts/ckeditor/lang/_languages.js +0 -6
  457. data/lib/forge/public/javascripts/ckeditor/lang/_translationstatus.txt +0 -60
  458. data/lib/forge/public/javascripts/ckeditor/lang/af.js +0 -6
  459. data/lib/forge/public/javascripts/ckeditor/lang/ar.js +0 -6
  460. data/lib/forge/public/javascripts/ckeditor/lang/bg.js +0 -6
  461. data/lib/forge/public/javascripts/ckeditor/lang/bn.js +0 -6
  462. data/lib/forge/public/javascripts/ckeditor/lang/bs.js +0 -6
  463. data/lib/forge/public/javascripts/ckeditor/lang/ca.js +0 -6
  464. data/lib/forge/public/javascripts/ckeditor/lang/cs.js +0 -6
  465. data/lib/forge/public/javascripts/ckeditor/lang/cy.js +0 -6
  466. data/lib/forge/public/javascripts/ckeditor/lang/da.js +0 -6
  467. data/lib/forge/public/javascripts/ckeditor/lang/de.js +0 -6
  468. data/lib/forge/public/javascripts/ckeditor/lang/el.js +0 -6
  469. data/lib/forge/public/javascripts/ckeditor/lang/en-au.js +0 -6
  470. data/lib/forge/public/javascripts/ckeditor/lang/en-ca.js +0 -6
  471. data/lib/forge/public/javascripts/ckeditor/lang/en-gb.js +0 -6
  472. data/lib/forge/public/javascripts/ckeditor/lang/en.js +0 -6
  473. data/lib/forge/public/javascripts/ckeditor/lang/eo.js +0 -6
  474. data/lib/forge/public/javascripts/ckeditor/lang/es.js +0 -6
  475. data/lib/forge/public/javascripts/ckeditor/lang/et.js +0 -6
  476. data/lib/forge/public/javascripts/ckeditor/lang/eu.js +0 -6
  477. data/lib/forge/public/javascripts/ckeditor/lang/fa.js +0 -6
  478. data/lib/forge/public/javascripts/ckeditor/lang/fi.js +0 -6
  479. data/lib/forge/public/javascripts/ckeditor/lang/fo.js +0 -6
  480. data/lib/forge/public/javascripts/ckeditor/lang/fr-ca.js +0 -6
  481. data/lib/forge/public/javascripts/ckeditor/lang/fr.js +0 -6
  482. data/lib/forge/public/javascripts/ckeditor/lang/gl.js +0 -6
  483. data/lib/forge/public/javascripts/ckeditor/lang/gu.js +0 -6
  484. data/lib/forge/public/javascripts/ckeditor/lang/he.js +0 -6
  485. data/lib/forge/public/javascripts/ckeditor/lang/hi.js +0 -6
  486. data/lib/forge/public/javascripts/ckeditor/lang/hr.js +0 -6
  487. data/lib/forge/public/javascripts/ckeditor/lang/hu.js +0 -6
  488. data/lib/forge/public/javascripts/ckeditor/lang/is.js +0 -6
  489. data/lib/forge/public/javascripts/ckeditor/lang/it.js +0 -6
  490. data/lib/forge/public/javascripts/ckeditor/lang/ja.js +0 -6
  491. data/lib/forge/public/javascripts/ckeditor/lang/km.js +0 -6
  492. data/lib/forge/public/javascripts/ckeditor/lang/ko.js +0 -6
  493. data/lib/forge/public/javascripts/ckeditor/lang/lt.js +0 -6
  494. data/lib/forge/public/javascripts/ckeditor/lang/lv.js +0 -6
  495. data/lib/forge/public/javascripts/ckeditor/lang/mn.js +0 -6
  496. data/lib/forge/public/javascripts/ckeditor/lang/ms.js +0 -6
  497. data/lib/forge/public/javascripts/ckeditor/lang/nb.js +0 -6
  498. data/lib/forge/public/javascripts/ckeditor/lang/nl.js +0 -6
  499. data/lib/forge/public/javascripts/ckeditor/lang/no.js +0 -6
  500. data/lib/forge/public/javascripts/ckeditor/lang/pl.js +0 -6
  501. data/lib/forge/public/javascripts/ckeditor/lang/pt-br.js +0 -6
  502. data/lib/forge/public/javascripts/ckeditor/lang/pt.js +0 -6
  503. data/lib/forge/public/javascripts/ckeditor/lang/ro.js +0 -6
  504. data/lib/forge/public/javascripts/ckeditor/lang/ru.js +0 -6
  505. data/lib/forge/public/javascripts/ckeditor/lang/sk.js +0 -6
  506. data/lib/forge/public/javascripts/ckeditor/lang/sl.js +0 -6
  507. data/lib/forge/public/javascripts/ckeditor/lang/sr-latn.js +0 -6
  508. data/lib/forge/public/javascripts/ckeditor/lang/sr.js +0 -6
  509. data/lib/forge/public/javascripts/ckeditor/lang/sv.js +0 -6
  510. data/lib/forge/public/javascripts/ckeditor/lang/th.js +0 -6
  511. data/lib/forge/public/javascripts/ckeditor/lang/tr.js +0 -6
  512. data/lib/forge/public/javascripts/ckeditor/lang/uk.js +0 -6
  513. data/lib/forge/public/javascripts/ckeditor/lang/vi.js +0 -6
  514. data/lib/forge/public/javascripts/ckeditor/lang/zh-cn.js +0 -6
  515. data/lib/forge/public/javascripts/ckeditor/lang/zh.js +0 -6
  516. data/lib/forge/public/javascripts/ckeditor/plugins/about/dialogs/logo_ckeditor.png +0 -0
  517. data/lib/forge/public/javascripts/ckeditor/plugins/attachment/images/attachment.png +0 -0
  518. data/lib/forge/public/javascripts/ckeditor/plugins/attachment/lang/en.js +0 -10
  519. data/lib/forge/public/javascripts/ckeditor/plugins/attachment/lang/ru.js +0 -10
  520. data/lib/forge/public/javascripts/ckeditor/plugins/attachment/lang/uk.js +0 -10
  521. data/lib/forge/public/javascripts/ckeditor/plugins/embed/images/embed.png +0 -0
  522. data/lib/forge/public/javascripts/ckeditor/plugins/embed/lang/en.js +0 -9
  523. data/lib/forge/public/javascripts/ckeditor/plugins/embed/lang/ru.js +0 -9
  524. data/lib/forge/public/javascripts/ckeditor/plugins/embed/lang/uk.js +0 -9
  525. data/lib/forge/public/javascripts/ckeditor/plugins/flash/images/placeholder.png +0 -0
  526. data/lib/forge/public/javascripts/ckeditor/plugins/forms/images/hiddenfield.gif +0 -0
  527. data/lib/forge/public/javascripts/ckeditor/plugins/link/images/anchor.gif +0 -0
  528. data/lib/forge/public/javascripts/ckeditor/plugins/pagebreak/images/pagebreak.gif +0 -0
  529. data/lib/forge/public/javascripts/ckeditor/plugins/showblocks/images/block_address.png +0 -0
  530. data/lib/forge/public/javascripts/ckeditor/plugins/showblocks/images/block_blockquote.png +0 -0
  531. data/lib/forge/public/javascripts/ckeditor/plugins/showblocks/images/block_div.png +0 -0
  532. data/lib/forge/public/javascripts/ckeditor/plugins/showblocks/images/block_h1.png +0 -0
  533. data/lib/forge/public/javascripts/ckeditor/plugins/showblocks/images/block_h2.png +0 -0
  534. data/lib/forge/public/javascripts/ckeditor/plugins/showblocks/images/block_h3.png +0 -0
  535. data/lib/forge/public/javascripts/ckeditor/plugins/showblocks/images/block_h4.png +0 -0
  536. data/lib/forge/public/javascripts/ckeditor/plugins/showblocks/images/block_h5.png +0 -0
  537. data/lib/forge/public/javascripts/ckeditor/plugins/showblocks/images/block_h6.png +0 -0
  538. data/lib/forge/public/javascripts/ckeditor/plugins/showblocks/images/block_p.png +0 -0
  539. data/lib/forge/public/javascripts/ckeditor/plugins/showblocks/images/block_pre.png +0 -0
  540. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/angel_smile.gif +0 -0
  541. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/angry_smile.gif +0 -0
  542. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/broken_heart.gif +0 -0
  543. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/confused_smile.gif +0 -0
  544. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/cry_smile.gif +0 -0
  545. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/devil_smile.gif +0 -0
  546. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/embaressed_smile.gif +0 -0
  547. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/envelope.gif +0 -0
  548. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/heart.gif +0 -0
  549. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/kiss.gif +0 -0
  550. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/lightbulb.gif +0 -0
  551. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/omg_smile.gif +0 -0
  552. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/regular_smile.gif +0 -0
  553. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/sad_smile.gif +0 -0
  554. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/shades_smile.gif +0 -0
  555. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/teeth_smile.gif +0 -0
  556. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/thumbs_down.gif +0 -0
  557. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/thumbs_up.gif +0 -0
  558. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/tounge_smile.gif +0 -0
  559. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif +0 -0
  560. data/lib/forge/public/javascripts/ckeditor/plugins/smiley/images/wink_smile.gif +0 -0
  561. data/lib/forge/public/javascripts/ckeditor/plugins/templates/templates/images/template1.gif +0 -0
  562. data/lib/forge/public/javascripts/ckeditor/plugins/templates/templates/images/template2.gif +0 -0
  563. data/lib/forge/public/javascripts/ckeditor/plugins/templates/templates/images/template3.gif +0 -0
  564. data/lib/forge/public/javascripts/ckeditor/plugins/uicolor/uicolor.gif +0 -0
  565. data/lib/forge/public/javascripts/ckeditor/plugins/uicolor/yui/assets/hue_bg.png +0 -0
  566. data/lib/forge/public/javascripts/ckeditor/plugins/uicolor/yui/assets/hue_thumb.png +0 -0
  567. data/lib/forge/public/javascripts/ckeditor/plugins/uicolor/yui/assets/picker_mask.png +0 -0
  568. data/lib/forge/public/javascripts/ckeditor/plugins/uicolor/yui/assets/picker_thumb.png +0 -0
  569. data/lib/forge/public/javascripts/ckeditor/plugins/wsc/dialogs/ciframe.html +0 -49
  570. data/lib/forge/public/javascripts/ckeditor/plugins/wsc/dialogs/tmpFrameset.html +0 -52
  571. data/lib/forge/public/javascripts/ckeditor/skins/kama/dialog.css +0 -9
  572. data/lib/forge/public/javascripts/ckeditor/skins/kama/editor.css +0 -12
  573. data/lib/forge/public/javascripts/ckeditor/skins/kama/icons.png +0 -0
  574. data/lib/forge/public/javascripts/ckeditor/skins/kama/icons_rtl.png +0 -0
  575. data/lib/forge/public/javascripts/ckeditor/skins/kama/images/dialog_sides.gif +0 -0
  576. data/lib/forge/public/javascripts/ckeditor/skins/kama/images/dialog_sides.png +0 -0
  577. data/lib/forge/public/javascripts/ckeditor/skins/kama/images/dialog_sides_rtl.png +0 -0
  578. data/lib/forge/public/javascripts/ckeditor/skins/kama/images/mini.gif +0 -0
  579. data/lib/forge/public/javascripts/ckeditor/skins/kama/images/noimage.png +0 -0
  580. data/lib/forge/public/javascripts/ckeditor/skins/kama/images/sprites.png +0 -0
  581. data/lib/forge/public/javascripts/ckeditor/skins/kama/images/sprites_ie6.png +0 -0
  582. data/lib/forge/public/javascripts/ckeditor/skins/kama/images/toolbar_start.gif +0 -0
  583. data/lib/forge/public/javascripts/ckeditor/skins/kama/skin.js +0 -7
  584. data/lib/forge/public/javascripts/ckeditor/skins/kama/templates.css +0 -6
  585. data/lib/forge/public/javascripts/ckeditor/skins/office2003/dialog.css +0 -9
  586. data/lib/forge/public/javascripts/ckeditor/skins/office2003/editor.css +0 -13
  587. data/lib/forge/public/javascripts/ckeditor/skins/office2003/icons.png +0 -0
  588. data/lib/forge/public/javascripts/ckeditor/skins/office2003/icons_rtl.png +0 -0
  589. data/lib/forge/public/javascripts/ckeditor/skins/office2003/images/dialog_sides.gif +0 -0
  590. data/lib/forge/public/javascripts/ckeditor/skins/office2003/images/dialog_sides.png +0 -0
  591. data/lib/forge/public/javascripts/ckeditor/skins/office2003/images/dialog_sides_rtl.png +0 -0
  592. data/lib/forge/public/javascripts/ckeditor/skins/office2003/images/mini.gif +0 -0
  593. data/lib/forge/public/javascripts/ckeditor/skins/office2003/images/noimage.png +0 -0
  594. data/lib/forge/public/javascripts/ckeditor/skins/office2003/images/sprites.png +0 -0
  595. data/lib/forge/public/javascripts/ckeditor/skins/office2003/images/sprites_ie6.png +0 -0
  596. data/lib/forge/public/javascripts/ckeditor/skins/office2003/skin.js +0 -6
  597. data/lib/forge/public/javascripts/ckeditor/skins/office2003/templates.css +0 -6
  598. data/lib/forge/public/javascripts/ckeditor/skins/v2/dialog.css +0 -8
  599. data/lib/forge/public/javascripts/ckeditor/skins/v2/editor.css +0 -12
  600. data/lib/forge/public/javascripts/ckeditor/skins/v2/icons.png +0 -0
  601. data/lib/forge/public/javascripts/ckeditor/skins/v2/icons_rtl.png +0 -0
  602. data/lib/forge/public/javascripts/ckeditor/skins/v2/images/dialog_sides.gif +0 -0
  603. data/lib/forge/public/javascripts/ckeditor/skins/v2/images/dialog_sides.png +0 -0
  604. data/lib/forge/public/javascripts/ckeditor/skins/v2/images/dialog_sides_rtl.png +0 -0
  605. data/lib/forge/public/javascripts/ckeditor/skins/v2/images/mini.gif +0 -0
  606. data/lib/forge/public/javascripts/ckeditor/skins/v2/images/noimage.png +0 -0
  607. data/lib/forge/public/javascripts/ckeditor/skins/v2/images/sprites.png +0 -0
  608. data/lib/forge/public/javascripts/ckeditor/skins/v2/images/sprites_ie6.png +0 -0
  609. data/lib/forge/public/javascripts/ckeditor/skins/v2/images/toolbar_start.gif +0 -0
  610. data/lib/forge/public/javascripts/ckeditor/skins/v2/skin.js +0 -6
  611. data/lib/forge/public/javascripts/ckeditor/skins/v2/templates.css +0 -6
  612. data/lib/forge/public/javascripts/ckeditor/swfupload/fileprogress.js +0 -275
  613. data/lib/forge/public/javascripts/ckeditor/swfupload/handlers.js +0 -170
  614. data/lib/forge/public/javascripts/ckeditor/swfupload/mootools-1.2.3-core-yc.js +0 -356
  615. data/lib/forge/public/javascripts/ckeditor/swfupload/querystring.js +0 -40
  616. data/lib/forge/public/javascripts/ckeditor/swfupload/swfupload.js +0 -1
  617. data/lib/forge/public/javascripts/ckeditor/swfupload/swfupload.queue.js +0 -1
  618. data/lib/forge/public/javascripts/ckeditor/swfupload/swfupload.swf +0 -0
  619. data/lib/forge/public/javascripts/ckeditor/swfupload/swfupload.swfobject.js +0 -111
  620. data/lib/forge/public/javascripts/ckeditor/themes/default/theme.js +0 -8
@@ -1,238 +0,0 @@
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
- CKEDITOR.plugins.add( 'link',
7
- {
8
- init : function( editor )
9
- {
10
- // Add the link and unlink buttons.
11
- editor.addCommand( 'link', new CKEDITOR.dialogCommand( 'link' ) );
12
- editor.addCommand( 'anchor', new CKEDITOR.dialogCommand( 'anchor' ) );
13
- editor.addCommand( 'unlink', new CKEDITOR.unlinkCommand() );
14
- editor.ui.addButton( 'Link',
15
- {
16
- label : editor.lang.link.toolbar,
17
- command : 'link'
18
- } );
19
- editor.ui.addButton( 'Unlink',
20
- {
21
- label : editor.lang.unlink,
22
- command : 'unlink'
23
- } );
24
- editor.ui.addButton( 'Anchor',
25
- {
26
- label : editor.lang.anchor.toolbar,
27
- command : 'anchor'
28
- } );
29
- CKEDITOR.dialog.add( 'link', this.path + 'dialogs/link.js' );
30
- CKEDITOR.dialog.add( 'anchor', this.path + 'dialogs/anchor.js' );
31
-
32
- // Add the CSS styles for anchor placeholders.
33
- editor.addCss(
34
- 'img.cke_anchor' +
35
- '{' +
36
- 'background-image: url(' + CKEDITOR.getUrl( this.path + 'images/anchor.gif' ) + ');' +
37
- 'background-position: center center;' +
38
- 'background-repeat: no-repeat;' +
39
- 'border: 1px solid #a9a9a9;' +
40
- 'width: 18px !important;' +
41
- 'height: 18px !important;' +
42
- '}\n' +
43
- 'a.cke_anchor' +
44
- '{' +
45
- 'background-image: url(' + CKEDITOR.getUrl( this.path + 'images/anchor.gif' ) + ');' +
46
- 'background-position: 0 center;' +
47
- 'background-repeat: no-repeat;' +
48
- 'border: 1px solid #a9a9a9;' +
49
- 'padding-left: 18px;' +
50
- '}'
51
- );
52
-
53
- // Register selection change handler for the unlink button.
54
- editor.on( 'selectionChange', function( evt )
55
- {
56
- /*
57
- * Despite our initial hope, document.queryCommandEnabled() does not work
58
- * for this in Firefox. So we must detect the state by element paths.
59
- */
60
- var command = editor.getCommand( 'unlink' ),
61
- element = evt.data.path.lastElement && evt.data.path.lastElement.getAscendant( 'a', true );
62
- if ( element && element.getName() == 'a' && element.getAttribute( 'href' ) )
63
- command.setState( CKEDITOR.TRISTATE_OFF );
64
- else
65
- command.setState( CKEDITOR.TRISTATE_DISABLED );
66
- } );
67
-
68
- editor.on( 'doubleclick', function( evt )
69
- {
70
- var element = CKEDITOR.plugins.link.getSelectedLink( editor ) || evt.data.element;
71
-
72
- if ( element.is( 'a' ) )
73
- evt.data.dialog = ( element.getAttribute( 'name' ) && !element.getAttribute( 'href' ) ) ? 'anchor' : 'link';
74
- else if ( element.is( 'img' ) && element.getAttribute( '_cke_real_element_type' ) == 'anchor' )
75
- evt.data.dialog = 'anchor';
76
- });
77
-
78
- // If the "menu" plugin is loaded, register the menu items.
79
- if ( editor.addMenuItems )
80
- {
81
- editor.addMenuItems(
82
- {
83
- anchor :
84
- {
85
- label : editor.lang.anchor.menu,
86
- command : 'anchor',
87
- group : 'anchor'
88
- },
89
-
90
- link :
91
- {
92
- label : editor.lang.link.menu,
93
- command : 'link',
94
- group : 'link',
95
- order : 1
96
- },
97
-
98
- unlink :
99
- {
100
- label : editor.lang.unlink,
101
- command : 'unlink',
102
- group : 'link',
103
- order : 5
104
- }
105
- });
106
- }
107
-
108
- // If the "contextmenu" plugin is loaded, register the listeners.
109
- if ( editor.contextMenu )
110
- {
111
- editor.contextMenu.addListener( function( element, selection )
112
- {
113
- if ( !element || element.isReadOnly() )
114
- return null;
115
-
116
- var isAnchor = ( element.is( 'img' ) && element.getAttribute( '_cke_real_element_type' ) == 'anchor' );
117
-
118
- if ( !isAnchor )
119
- {
120
- if ( !( element = CKEDITOR.plugins.link.getSelectedLink( editor ) ) )
121
- return null;
122
-
123
- isAnchor = ( element.getAttribute( 'name' ) && !element.getAttribute( 'href' ) );
124
- }
125
-
126
- return isAnchor ?
127
- { anchor : CKEDITOR.TRISTATE_OFF } :
128
- { link : CKEDITOR.TRISTATE_OFF, unlink : CKEDITOR.TRISTATE_OFF };
129
- });
130
- }
131
- },
132
-
133
- afterInit : function( editor )
134
- {
135
- // Register a filter to displaying placeholders after mode change.
136
-
137
- var dataProcessor = editor.dataProcessor,
138
- dataFilter = dataProcessor && dataProcessor.dataFilter;
139
-
140
- if ( dataFilter )
141
- {
142
- dataFilter.addRules(
143
- {
144
- elements :
145
- {
146
- a : function( element )
147
- {
148
- var attributes = element.attributes;
149
- if ( attributes.name && !attributes.href )
150
- return editor.createFakeParserElement( element, 'cke_anchor', 'anchor' );
151
- }
152
- }
153
- });
154
- }
155
- },
156
-
157
- requires : [ 'fakeobjects' ]
158
- } );
159
-
160
- CKEDITOR.plugins.link =
161
- {
162
- /**
163
- * Get the surrounding link element of current selection.
164
- * @param editor
165
- * @example CKEDITOR.plugins.link.getSelectedLink( editor );
166
- * @since 3.2.1
167
- * The following selection will all return the link element.
168
- * <pre>
169
- * <a href="#">li^nk</a>
170
- * <a href="#">[link]</a>
171
- * text[<a href="#">link]</a>
172
- * <a href="#">li[nk</a>]
173
- * [<b><a href="#">li]nk</a></b>]
174
- * [<a href="#"><b>li]nk</b></a>
175
- * </pre>
176
- */
177
- getSelectedLink : function( editor )
178
- {
179
- try
180
- {
181
- var selection = editor.getSelection();
182
- if ( selection.getType() == CKEDITOR.SELECTION_ELEMENT )
183
- {
184
- var selectedElement = selection.getSelectedElement();
185
- if ( selectedElement.is( 'a' ) )
186
- return selectedElement;
187
- }
188
-
189
- var range = selection.getRanges( true )[ 0 ];
190
- range.shrink( CKEDITOR.SHRINK_TEXT );
191
- var root = range.getCommonAncestor();
192
- return root.getAscendant( 'a', true );
193
- }
194
- catch( e ) { return null; }
195
- }
196
- };
197
-
198
- CKEDITOR.unlinkCommand = function(){};
199
- CKEDITOR.unlinkCommand.prototype =
200
- {
201
- /** @ignore */
202
- exec : function( editor )
203
- {
204
- /*
205
- * execCommand( 'unlink', ... ) in Firefox leaves behind <span> tags at where
206
- * the <a> was, so again we have to remove the link ourselves. (See #430)
207
- *
208
- * TODO: Use the style system when it's complete. Let's use execCommand()
209
- * as a stopgap solution for now.
210
- */
211
- var selection = editor.getSelection(),
212
- bookmarks = selection.createBookmarks(),
213
- ranges = selection.getRanges(),
214
- rangeRoot,
215
- element;
216
-
217
- for ( var i = 0 ; i < ranges.length ; i++ )
218
- {
219
- rangeRoot = ranges[i].getCommonAncestor( true );
220
- element = rangeRoot.getAscendant( 'a', true );
221
- if ( !element )
222
- continue;
223
- ranges[i].selectNodeContents( element );
224
- }
225
-
226
- selection.selectRanges( ranges );
227
- editor.document.$.execCommand( 'unlink', false, null );
228
- selection.selectBookmarks( bookmarks );
229
- },
230
-
231
- startDisabled : true
232
- };
233
-
234
- CKEDITOR.tools.extend( CKEDITOR.config,
235
- {
236
- linkShowAdvancedTab : true,
237
- linkShowTargetTab : true
238
- } );
@@ -1,683 +0,0 @@
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
- /**
7
- * @file Insert and remove numbered and bulleted lists.
8
- */
9
-
10
- (function()
11
- {
12
- var listNodeNames = { ol : 1, ul : 1 },
13
- emptyTextRegex = /^[\n\r\t ]*$/;
14
-
15
- CKEDITOR.plugins.list = {
16
- /*
17
- * Convert a DOM list tree into a data structure that is easier to
18
- * manipulate. This operation should be non-intrusive in the sense that it
19
- * does not change the DOM tree, with the exception that it may add some
20
- * markers to the list item nodes when database is specified.
21
- */
22
- listToArray : function( listNode, database, baseArray, baseIndentLevel, grandparentNode )
23
- {
24
- if ( !listNodeNames[ listNode.getName() ] )
25
- return [];
26
-
27
- if ( !baseIndentLevel )
28
- baseIndentLevel = 0;
29
- if ( !baseArray )
30
- baseArray = [];
31
-
32
- // Iterate over all list items to and look for inner lists.
33
- for ( var i = 0, count = listNode.getChildCount() ; i < count ; i++ )
34
- {
35
- var listItem = listNode.getChild( i );
36
-
37
- // It may be a text node or some funny stuff.
38
- if ( listItem.$.nodeName.toLowerCase() != 'li' )
39
- continue;
40
-
41
- var itemObj = { 'parent' : listNode, indent : baseIndentLevel, element : listItem, contents : [] };
42
- if ( !grandparentNode )
43
- {
44
- itemObj.grandparent = listNode.getParent();
45
- if ( itemObj.grandparent && itemObj.grandparent.$.nodeName.toLowerCase() == 'li' )
46
- itemObj.grandparent = itemObj.grandparent.getParent();
47
- }
48
- else
49
- itemObj.grandparent = grandparentNode;
50
-
51
- if ( database )
52
- CKEDITOR.dom.element.setMarker( database, listItem, 'listarray_index', baseArray.length );
53
- baseArray.push( itemObj );
54
-
55
- for ( var j = 0, itemChildCount = listItem.getChildCount(), child; j < itemChildCount ; j++ )
56
- {
57
- child = listItem.getChild( j );
58
- if ( child.type == CKEDITOR.NODE_ELEMENT && listNodeNames[ child.getName() ] )
59
- // Note the recursion here, it pushes inner list items with
60
- // +1 indentation in the correct order.
61
- CKEDITOR.plugins.list.listToArray( child, database, baseArray, baseIndentLevel + 1, itemObj.grandparent );
62
- else
63
- itemObj.contents.push( child );
64
- }
65
- }
66
- return baseArray;
67
- },
68
-
69
- // Convert our internal representation of a list back to a DOM forest.
70
- arrayToList : function( listArray, database, baseIndex, paragraphMode, dir )
71
- {
72
- if ( !baseIndex )
73
- baseIndex = 0;
74
- if ( !listArray || listArray.length < baseIndex + 1 )
75
- return null;
76
- var doc = listArray[ baseIndex ].parent.getDocument(),
77
- retval = new CKEDITOR.dom.documentFragment( doc ),
78
- rootNode = null,
79
- currentIndex = baseIndex,
80
- indentLevel = Math.max( listArray[ baseIndex ].indent, 0 ),
81
- currentListItem = null,
82
- paragraphName = ( paragraphMode == CKEDITOR.ENTER_P ? 'p' : 'div' );
83
- while ( true )
84
- {
85
- var item = listArray[ currentIndex ];
86
- if ( item.indent == indentLevel )
87
- {
88
- if ( !rootNode || listArray[ currentIndex ].parent.getName() != rootNode.getName() )
89
- {
90
- rootNode = listArray[ currentIndex ].parent.clone( false, true );
91
- retval.append( rootNode );
92
- }
93
- currentListItem = rootNode.append( item.element.clone( false, true ) );
94
- for ( var i = 0 ; i < item.contents.length ; i++ )
95
- currentListItem.append( item.contents[i].clone( true, true ) );
96
- currentIndex++;
97
- }
98
- else if ( item.indent == Math.max( indentLevel, 0 ) + 1 )
99
- {
100
- var listData = CKEDITOR.plugins.list.arrayToList( listArray, null, currentIndex, paragraphMode );
101
- currentListItem.append( listData.listNode );
102
- currentIndex = listData.nextIndex;
103
- }
104
- else if ( item.indent == -1 && !baseIndex && item.grandparent )
105
- {
106
- currentListItem;
107
- if ( listNodeNames[ item.grandparent.getName() ] )
108
- currentListItem = item.element.clone( false, true );
109
- else
110
- {
111
- // Create completely new blocks here, attributes are dropped.
112
- if ( dir || ( paragraphMode != CKEDITOR.ENTER_BR && item.grandparent.getName() != 'td' ) )
113
- {
114
- currentListItem = doc.createElement( paragraphName );
115
- if ( dir )
116
- currentListItem.setAttribute( 'dir', dir );
117
- }
118
- else
119
- currentListItem = new CKEDITOR.dom.documentFragment( doc );
120
- }
121
-
122
- for ( i = 0 ; i < item.contents.length ; i++ )
123
- currentListItem.append( item.contents[i].clone( true, true ) );
124
-
125
- if ( currentListItem.type == CKEDITOR.NODE_DOCUMENT_FRAGMENT
126
- && currentIndex != listArray.length - 1 )
127
- {
128
- if ( currentListItem.getLast()
129
- && currentListItem.getLast().type == CKEDITOR.NODE_ELEMENT
130
- && currentListItem.getLast().getAttribute( 'type' ) == '_moz' )
131
- currentListItem.getLast().remove();
132
- currentListItem.appendBogus();
133
- }
134
-
135
- if ( currentListItem.type == CKEDITOR.NODE_ELEMENT &&
136
- currentListItem.getName() == paragraphName &&
137
- currentListItem.$.firstChild )
138
- {
139
- currentListItem.trim();
140
- var firstChild = currentListItem.getFirst();
141
- if ( firstChild.type == CKEDITOR.NODE_ELEMENT && firstChild.isBlockBoundary() )
142
- {
143
- var tmp = new CKEDITOR.dom.documentFragment( doc );
144
- currentListItem.moveChildren( tmp );
145
- currentListItem = tmp;
146
- }
147
- }
148
-
149
- var currentListItemName = currentListItem.$.nodeName.toLowerCase();
150
- if ( !CKEDITOR.env.ie && ( currentListItemName == 'div' || currentListItemName == 'p' ) )
151
- currentListItem.appendBogus();
152
- retval.append( currentListItem );
153
- rootNode = null;
154
- currentIndex++;
155
- }
156
- else
157
- return null;
158
-
159
- if ( listArray.length <= currentIndex || Math.max( listArray[ currentIndex ].indent, 0 ) < indentLevel )
160
- break;
161
- }
162
-
163
- // Clear marker attributes for the new list tree made of cloned nodes, if any.
164
- if ( database )
165
- {
166
- var currentNode = retval.getFirst();
167
- while ( currentNode )
168
- {
169
- if ( currentNode.type == CKEDITOR.NODE_ELEMENT )
170
- CKEDITOR.dom.element.clearMarkers( database, currentNode );
171
- currentNode = currentNode.getNextSourceNode();
172
- }
173
- }
174
-
175
- return { listNode : retval, nextIndex : currentIndex };
176
- }
177
- };
178
-
179
- function setState( editor, state )
180
- {
181
- editor.getCommand( this.name ).setState( state );
182
- }
183
-
184
- function onSelectionChange( evt )
185
- {
186
- var path = evt.data.path,
187
- blockLimit = path.blockLimit,
188
- elements = path.elements,
189
- element;
190
-
191
- // Grouping should only happen under blockLimit.(#3940).
192
- for ( var i = 0 ; i < elements.length && ( element = elements[ i ] )
193
- && !element.equals( blockLimit ); i++ )
194
- {
195
- if ( listNodeNames[ elements[i].getName() ] )
196
- {
197
- return setState.call( this, evt.editor,
198
- this.type == elements[i].getName() ? CKEDITOR.TRISTATE_ON : CKEDITOR.TRISTATE_OFF );
199
- }
200
- }
201
-
202
- return setState.call( this, evt.editor, CKEDITOR.TRISTATE_OFF );
203
- }
204
-
205
- function changeListType( editor, groupObj, database, listsCreated )
206
- {
207
- // This case is easy...
208
- // 1. Convert the whole list into a one-dimensional array.
209
- // 2. Change the list type by modifying the array.
210
- // 3. Recreate the whole list by converting the array to a list.
211
- // 4. Replace the original list with the recreated list.
212
- var listArray = CKEDITOR.plugins.list.listToArray( groupObj.root, database ),
213
- selectedListItems = [];
214
-
215
- for ( var i = 0 ; i < groupObj.contents.length ; i++ )
216
- {
217
- var itemNode = groupObj.contents[i];
218
- itemNode = itemNode.getAscendant( 'li', true );
219
- if ( !itemNode || itemNode.getCustomData( 'list_item_processed' ) )
220
- continue;
221
- selectedListItems.push( itemNode );
222
- CKEDITOR.dom.element.setMarker( database, itemNode, 'list_item_processed', true );
223
- }
224
-
225
- var root = groupObj.root,
226
- fakeParent = root.getDocument().createElement( this.type );
227
- // Copy all attributes, except from 'start' and 'type'.
228
- root.copyAttributes( fakeParent, { start : 1, type : 1 } );
229
- // The list-style-type property should be ignored.
230
- fakeParent.removeStyle( 'list-style-type' );
231
-
232
- for ( i = 0 ; i < selectedListItems.length ; i++ )
233
- {
234
- var listIndex = selectedListItems[i].getCustomData( 'listarray_index' );
235
- listArray[listIndex].parent = fakeParent;
236
- }
237
- var newList = CKEDITOR.plugins.list.arrayToList( listArray, database, null, editor.config.enterMode );
238
- var child, length = newList.listNode.getChildCount();
239
- for ( i = 0 ; i < length && ( child = newList.listNode.getChild( i ) ) ; i++ )
240
- {
241
- if ( child.getName() == this.type )
242
- listsCreated.push( child );
243
- }
244
- newList.listNode.replace( groupObj.root );
245
- }
246
-
247
- var headerTagRegex = /^h[1-6]$/;
248
-
249
- function createList( editor, groupObj, listsCreated )
250
- {
251
- var contents = groupObj.contents,
252
- doc = groupObj.root.getDocument(),
253
- listContents = [];
254
-
255
- // It is possible to have the contents returned by DomRangeIterator to be the same as the root.
256
- // e.g. when we're running into table cells.
257
- // In such a case, enclose the childNodes of contents[0] into a <div>.
258
- if ( contents.length == 1 && contents[0].equals( groupObj.root ) )
259
- {
260
- var divBlock = doc.createElement( 'div' );
261
- contents[0].moveChildren && contents[0].moveChildren( divBlock );
262
- contents[0].append( divBlock );
263
- contents[0] = divBlock;
264
- }
265
-
266
- // Calculate the common parent node of all content blocks.
267
- var commonParent = groupObj.contents[0].getParent();
268
- for ( var i = 0 ; i < contents.length ; i++ )
269
- commonParent = commonParent.getCommonAncestor( contents[i].getParent() );
270
-
271
- // We want to insert things that are in the same tree level only, so calculate the contents again
272
- // by expanding the selected blocks to the same tree level.
273
- for ( i = 0 ; i < contents.length ; i++ )
274
- {
275
- var contentNode = contents[i],
276
- parentNode;
277
- while ( ( parentNode = contentNode.getParent() ) )
278
- {
279
- if ( parentNode.equals( commonParent ) )
280
- {
281
- listContents.push( contentNode );
282
- break;
283
- }
284
- contentNode = parentNode;
285
- }
286
- }
287
-
288
- if ( listContents.length < 1 )
289
- return;
290
-
291
- // Insert the list to the DOM tree.
292
- var insertAnchor = listContents[ listContents.length - 1 ].getNext(),
293
- listNode = doc.createElement( this.type ),
294
- dir;
295
-
296
- listsCreated.push( listNode );
297
- while ( listContents.length )
298
- {
299
- var contentBlock = listContents.shift(),
300
- listItem = doc.createElement( 'li' );
301
-
302
- // Preserve preformat block and heading structure when converting to list item. (#5335) (#5271)
303
- if ( contentBlock.is( 'pre' ) || headerTagRegex.test( contentBlock.getName() ) )
304
- contentBlock.appendTo( listItem );
305
- else
306
- {
307
- if ( contentBlock.hasAttribute( 'dir' ) )
308
- {
309
- dir = dir || contentBlock.getAttribute( 'dir' );
310
- contentBlock.removeAttribute( 'dir' );
311
- }
312
- contentBlock.copyAttributes( listItem );
313
- contentBlock.moveChildren( listItem );
314
- contentBlock.remove();
315
-
316
- // Append a bogus BR to force the LI to render at full height
317
- if ( !CKEDITOR.env.ie )
318
- listItem.appendBogus();
319
- }
320
-
321
- listItem.appendTo( listNode );
322
- }
323
-
324
- if ( dir )
325
- listNode.setAttribute( 'dir', dir );
326
-
327
- if ( insertAnchor )
328
- listNode.insertBefore( insertAnchor );
329
- else
330
- listNode.appendTo( commonParent );
331
- }
332
-
333
- function removeList( editor, groupObj, database )
334
- {
335
- // This is very much like the change list type operation.
336
- // Except that we're changing the selected items' indent to -1 in the list array.
337
- var listArray = CKEDITOR.plugins.list.listToArray( groupObj.root, database ),
338
- selectedListItems = [];
339
-
340
- for ( var i = 0 ; i < groupObj.contents.length ; i++ )
341
- {
342
- var itemNode = groupObj.contents[i];
343
- itemNode = itemNode.getAscendant( 'li', true );
344
- if ( !itemNode || itemNode.getCustomData( 'list_item_processed' ) )
345
- continue;
346
- selectedListItems.push( itemNode );
347
- CKEDITOR.dom.element.setMarker( database, itemNode, 'list_item_processed', true );
348
- }
349
-
350
- var lastListIndex = null;
351
- for ( i = 0 ; i < selectedListItems.length ; i++ )
352
- {
353
- var listIndex = selectedListItems[i].getCustomData( 'listarray_index' );
354
- listArray[listIndex].indent = -1;
355
- lastListIndex = listIndex;
356
- }
357
-
358
- // After cutting parts of the list out with indent=-1, we still have to maintain the array list
359
- // model's nextItem.indent <= currentItem.indent + 1 invariant. Otherwise the array model of the
360
- // list cannot be converted back to a real DOM list.
361
- for ( i = lastListIndex + 1 ; i < listArray.length ; i++ )
362
- {
363
- if ( listArray[i].indent > listArray[i-1].indent + 1 )
364
- {
365
- var indentOffset = listArray[i-1].indent + 1 - listArray[i].indent;
366
- var oldIndent = listArray[i].indent;
367
- while ( listArray[i] && listArray[i].indent >= oldIndent )
368
- {
369
- listArray[i].indent += indentOffset;
370
- i++;
371
- }
372
- i--;
373
- }
374
- }
375
-
376
- var newList = CKEDITOR.plugins.list.arrayToList( listArray, database, null, editor.config.enterMode,
377
- groupObj.root.getAttribute( 'dir' ) );
378
-
379
- // Compensate <br> before/after the list node if the surrounds are non-blocks.(#3836)
380
- var docFragment = newList.listNode, boundaryNode, siblingNode;
381
- function compensateBrs( isStart )
382
- {
383
- if ( ( boundaryNode = docFragment[ isStart ? 'getFirst' : 'getLast' ]() )
384
- && !( boundaryNode.is && boundaryNode.isBlockBoundary() )
385
- && ( siblingNode = groupObj.root[ isStart ? 'getPrevious' : 'getNext' ]
386
- ( CKEDITOR.dom.walker.whitespaces( true ) ) )
387
- && !( siblingNode.is && siblingNode.isBlockBoundary( { br : 1 } ) ) )
388
- editor.document.createElement( 'br' )[ isStart ? 'insertBefore' : 'insertAfter' ]( boundaryNode );
389
- }
390
- compensateBrs( true );
391
- compensateBrs();
392
-
393
- docFragment.replace( groupObj.root );
394
- }
395
-
396
- function listCommand( name, type )
397
- {
398
- this.name = name;
399
- this.type = type;
400
- }
401
-
402
- listCommand.prototype = {
403
- exec : function( editor )
404
- {
405
- editor.focus();
406
-
407
- var doc = editor.document,
408
- selection = editor.getSelection(),
409
- ranges = selection && selection.getRanges( true );
410
-
411
- // There should be at least one selected range.
412
- if ( !ranges || ranges.length < 1 )
413
- return;
414
-
415
- // Midas lists rule #1 says we can create a list even in an empty document.
416
- // But DOM iterator wouldn't run if the document is really empty.
417
- // So create a paragraph if the document is empty and we're going to create a list.
418
- if ( this.state == CKEDITOR.TRISTATE_OFF )
419
- {
420
- var body = doc.getBody();
421
- body.trim();
422
- if ( !body.getFirst() )
423
- {
424
- var paragraph = doc.createElement( editor.config.enterMode == CKEDITOR.ENTER_P ? 'p' :
425
- ( editor.config.enterMode == CKEDITOR.ENTER_DIV ? 'div' : 'br' ) );
426
- paragraph.appendTo( body );
427
- ranges = new CKEDITOR.dom.rangeList( [ new CKEDITOR.dom.range( doc ) ] );
428
- // IE exception on inserting anything when anchor inside <br>.
429
- if ( paragraph.is( 'br' ) )
430
- {
431
- ranges[ 0 ].setStartBefore( paragraph );
432
- ranges[ 0 ].setEndAfter( paragraph );
433
- }
434
- else
435
- ranges[ 0 ].selectNodeContents( paragraph );
436
- selection.selectRanges( ranges );
437
- }
438
- // Maybe a single range there enclosing the whole list,
439
- // turn on the list state manually(#4129).
440
- else
441
- {
442
- var range = ranges.length == 1 && ranges[ 0 ],
443
- enclosedNode = range && range.getEnclosedNode();
444
- if ( enclosedNode && enclosedNode.is
445
- && this.type == enclosedNode.getName() )
446
- {
447
- setState.call( this, editor, CKEDITOR.TRISTATE_ON );
448
- }
449
- }
450
- }
451
-
452
- var bookmarks = selection.createBookmarks( true );
453
-
454
- // Group the blocks up because there are many cases where multiple lists have to be created,
455
- // or multiple lists have to be cancelled.
456
- var listGroups = [],
457
- database = {},
458
- rangeIterator = ranges.createIterator(),
459
- index = 0;
460
-
461
- while ( ( range = rangeIterator.getNextRange() ) && ++index )
462
- {
463
- var boundaryNodes = range.getBoundaryNodes(),
464
- startNode = boundaryNodes.startNode,
465
- endNode = boundaryNodes.endNode;
466
-
467
- if ( startNode.type == CKEDITOR.NODE_ELEMENT && startNode.getName() == 'td' )
468
- range.setStartAt( boundaryNodes.startNode, CKEDITOR.POSITION_AFTER_START );
469
-
470
- if ( endNode.type == CKEDITOR.NODE_ELEMENT && endNode.getName() == 'td' )
471
- range.setEndAt( boundaryNodes.endNode, CKEDITOR.POSITION_BEFORE_END );
472
-
473
- var iterator = range.createIterator(),
474
- block;
475
-
476
- iterator.forceBrBreak = ( this.state == CKEDITOR.TRISTATE_OFF );
477
-
478
- while ( ( block = iterator.getNextParagraph() ) )
479
- {
480
- // Avoid duplicate blocks get processed across ranges.
481
- if( block.getCustomData( 'list_block' ) )
482
- continue;
483
- else
484
- CKEDITOR.dom.element.setMarker( database, block, 'list_block', 1 );
485
-
486
- var path = new CKEDITOR.dom.elementPath( block ),
487
- pathElements = path.elements,
488
- pathElementsCount = pathElements.length,
489
- listNode = null,
490
- processedFlag = false,
491
- blockLimit = path.blockLimit,
492
- element;
493
-
494
- // First, try to group by a list ancestor.
495
- for ( var i = pathElementsCount - 1; i >= 0 && ( element = pathElements[ i ] ); i-- )
496
- {
497
- if ( listNodeNames[ element.getName() ]
498
- && blockLimit.contains( element ) ) // Don't leak outside block limit (#3940).
499
- {
500
- // If we've encountered a list inside a block limit
501
- // The last group object of the block limit element should
502
- // no longer be valid. Since paragraphs after the list
503
- // should belong to a different group of paragraphs before
504
- // the list. (Bug #1309)
505
- blockLimit.removeCustomData( 'list_group_object_' + index );
506
-
507
- var groupObj = element.getCustomData( 'list_group_object' );
508
- if ( groupObj )
509
- groupObj.contents.push( block );
510
- else
511
- {
512
- groupObj = { root : element, contents : [ block ] };
513
- listGroups.push( groupObj );
514
- CKEDITOR.dom.element.setMarker( database, element, 'list_group_object', groupObj );
515
- }
516
- processedFlag = true;
517
- break;
518
- }
519
- }
520
-
521
- if ( processedFlag )
522
- continue;
523
-
524
- // No list ancestor? Group by block limit, but don't mix contents from different ranges.
525
- var root = blockLimit;
526
- if ( root.getCustomData( 'list_group_object_' + index ) )
527
- root.getCustomData( 'list_group_object_' + index ).contents.push( block );
528
- else
529
- {
530
- groupObj = { root : root, contents : [ block ] };
531
- CKEDITOR.dom.element.setMarker( database, root, 'list_group_object_' + index, groupObj );
532
- listGroups.push( groupObj );
533
- }
534
- }
535
- }
536
-
537
- // Now we have two kinds of list groups, groups rooted at a list, and groups rooted at a block limit element.
538
- // We either have to build lists or remove lists, for removing a list does not makes sense when we are looking
539
- // at the group that's not rooted at lists. So we have three cases to handle.
540
- var listsCreated = [];
541
- while ( listGroups.length > 0 )
542
- {
543
- groupObj = listGroups.shift();
544
- if ( this.state == CKEDITOR.TRISTATE_OFF )
545
- {
546
- if ( listNodeNames[ groupObj.root.getName() ] )
547
- changeListType.call( this, editor, groupObj, database, listsCreated );
548
- else
549
- createList.call( this, editor, groupObj, listsCreated );
550
- }
551
- else if ( this.state == CKEDITOR.TRISTATE_ON && listNodeNames[ groupObj.root.getName() ] )
552
- removeList.call( this, editor, groupObj, database );
553
- }
554
-
555
- // For all new lists created, merge adjacent, same type lists.
556
- for ( i = 0 ; i < listsCreated.length ; i++ )
557
- {
558
- listNode = listsCreated[i];
559
- var mergeSibling, listCommand = this;
560
- ( mergeSibling = function( rtl ){
561
-
562
- var sibling = listNode[ rtl ?
563
- 'getPrevious' : 'getNext' ]( CKEDITOR.dom.walker.whitespaces( true ) );
564
- if ( sibling && sibling.getName &&
565
- sibling.getName() == listCommand.type )
566
- {
567
- sibling.remove();
568
- // Move children order by merge direction.(#3820)
569
- sibling.moveChildren( listNode, rtl ? true : false );
570
- }
571
- } )();
572
- mergeSibling( true );
573
- }
574
-
575
- // Clean up, restore selection and update toolbar button states.
576
- CKEDITOR.dom.element.clearAllMarkers( database );
577
- selection.selectBookmarks( bookmarks );
578
- editor.focus();
579
- }
580
- };
581
-
582
- var dtd = CKEDITOR.dtd;
583
- var tailNbspRegex = /[\t\r\n ]*(?:&nbsp;|\xa0)$/;
584
-
585
- function indexOfFirstChildElement( element, tagNameList )
586
- {
587
- var child,
588
- children = element.children,
589
- length = children.length;
590
-
591
- for ( var i = 0 ; i < length ; i++ )
592
- {
593
- child = children[ i ];
594
- if ( child.name && ( child.name in tagNameList ) )
595
- return i;
596
- }
597
-
598
- return length;
599
- }
600
-
601
- function getExtendNestedListFilter( isHtmlFilter )
602
- {
603
- // An element filter function that corrects nested list start in an empty
604
- // list item for better displaying/outputting. (#3165)
605
- return function( listItem )
606
- {
607
- var children = listItem.children,
608
- firstNestedListIndex = indexOfFirstChildElement( listItem, dtd.$list ),
609
- firstNestedList = children[ firstNestedListIndex ],
610
- nodeBefore = firstNestedList && firstNestedList.previous,
611
- tailNbspmatch;
612
-
613
- if ( nodeBefore
614
- && ( nodeBefore.name && nodeBefore.name == 'br'
615
- || nodeBefore.value && ( tailNbspmatch = nodeBefore.value.match( tailNbspRegex ) ) ) )
616
- {
617
- var fillerNode = nodeBefore;
618
-
619
- // Always use 'nbsp' as filler node if we found a nested list appear
620
- // in front of a list item.
621
- if ( !( tailNbspmatch && tailNbspmatch.index ) && fillerNode == children[ 0 ] )
622
- children[ 0 ] = ( isHtmlFilter || CKEDITOR.env.ie ) ?
623
- new CKEDITOR.htmlParser.text( '\xa0' ) :
624
- new CKEDITOR.htmlParser.element( 'br', {} );
625
-
626
- // Otherwise the filler is not needed anymore.
627
- else if ( fillerNode.name == 'br' )
628
- children.splice( firstNestedListIndex - 1, 1 );
629
- else
630
- fillerNode.value = fillerNode.value.replace( tailNbspRegex, '' );
631
- }
632
-
633
- };
634
- }
635
-
636
- var defaultListDataFilterRules = { elements : {} };
637
- for ( var i in dtd.$listItem )
638
- defaultListDataFilterRules.elements[ i ] = getExtendNestedListFilter();
639
-
640
- var defaultListHtmlFilterRules = { elements : {} };
641
- for ( i in dtd.$listItem )
642
- defaultListHtmlFilterRules.elements[ i ] = getExtendNestedListFilter( true );
643
-
644
- CKEDITOR.plugins.add( 'list',
645
- {
646
- init : function( editor )
647
- {
648
- // Register commands.
649
- var numberedListCommand = new listCommand( 'numberedlist', 'ol' ),
650
- bulletedListCommand = new listCommand( 'bulletedlist', 'ul' );
651
- editor.addCommand( 'numberedlist', numberedListCommand );
652
- editor.addCommand( 'bulletedlist', bulletedListCommand );
653
-
654
- // Register the toolbar button.
655
- editor.ui.addButton( 'NumberedList',
656
- {
657
- label : editor.lang.numberedlist,
658
- command : 'numberedlist'
659
- } );
660
- editor.ui.addButton( 'BulletedList',
661
- {
662
- label : editor.lang.bulletedlist,
663
- command : 'bulletedlist'
664
- } );
665
-
666
- // Register the state changing handlers.
667
- editor.on( 'selectionChange', CKEDITOR.tools.bind( onSelectionChange, numberedListCommand ) );
668
- editor.on( 'selectionChange', CKEDITOR.tools.bind( onSelectionChange, bulletedListCommand ) );
669
- },
670
-
671
- afterInit : function ( editor )
672
- {
673
- var dataProcessor = editor.dataProcessor;
674
- if ( dataProcessor )
675
- {
676
- dataProcessor.dataFilter.addRules( defaultListDataFilterRules );
677
- dataProcessor.htmlFilter.addRules( defaultListHtmlFilterRules );
678
- }
679
- },
680
-
681
- requires : [ 'domiterator' ]
682
- } );
683
- })();