ppc_logic 0.8.0 → 0.8.1

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