rich 1.3.1 → 1.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1048) hide show
  1. data/README.rdoc +9 -6
  2. data/app/assets/javascripts/rich/base.js.erb +0 -1
  3. data/app/assets/javascripts/rich/editor/rich_editor.js.erb +1 -3
  4. data/lib/rich.rb +2 -2
  5. data/lib/rich/version.rb +1 -1
  6. data/vendor/assets/ckeditor/ckeditor-contrib/plugins/mediaembed/images/icon.png +0 -0
  7. data/vendor/assets/ckeditor/ckeditor-contrib/plugins/mediaembed/plugin.js +64 -0
  8. data/vendor/assets/ckeditor/ckeditor/CHANGES.md +56 -0
  9. data/vendor/assets/ckeditor/ckeditor/{LICENSE.html → LICENSE.md} +27 -90
  10. data/vendor/assets/ckeditor/ckeditor/README.md +39 -0
  11. data/vendor/assets/ckeditor/ckeditor/build-config.js +103 -0
  12. data/vendor/assets/ckeditor/ckeditor/ckeditor.js +884 -151
  13. data/vendor/assets/ckeditor/ckeditor/config.js +10 -11
  14. data/vendor/assets/ckeditor/ckeditor/contents.css +79 -5
  15. data/vendor/assets/ckeditor/ckeditor/lang/en.js +3 -4
  16. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +10 -7
  17. data/vendor/assets/ckeditor/ckeditor/{_source/plugins/a11yhelp → plugins/a11yhelp/dialogs}/lang/_translationstatus.txt +5 -3
  18. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js +9 -0
  19. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js +9 -0
  20. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js +9 -0
  21. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js +10 -0
  22. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js +9 -0
  23. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/da.js +9 -0
  24. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/de.js +10 -0
  25. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/el.js +10 -0
  26. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/en.js +9 -0
  27. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js +10 -0
  28. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/es.js +10 -0
  29. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/et.js +9 -0
  30. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js +9 -0
  31. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js +10 -0
  32. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js +10 -0
  33. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js +9 -0
  34. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/he.js +9 -0
  35. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js +9 -0
  36. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js +9 -0
  37. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js +9 -0
  38. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/it.js +10 -0
  39. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js +9 -0
  40. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js +10 -0
  41. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js +9 -0
  42. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js +10 -0
  43. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js +9 -0
  44. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js +9 -0
  45. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js +9 -0
  46. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js +10 -0
  47. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/no.js +9 -0
  48. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js +9 -0
  49. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js +9 -0
  50. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js +9 -0
  51. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js +9 -0
  52. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js +9 -0
  53. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js +10 -0
  54. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js +9 -0
  55. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js +10 -0
  56. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js +10 -0
  57. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js +9 -0
  58. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js +9 -0
  59. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js +9 -0
  60. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js +7 -0
  61. data/vendor/assets/ckeditor/ckeditor/plugins/about/dialogs/about.js +6 -6
  62. data/vendor/assets/ckeditor/ckeditor/plugins/about/dialogs/logo_ckeditor.png +0 -0
  63. data/vendor/assets/ckeditor/ckeditor/plugins/clipboard/dialogs/paste.js +11 -7
  64. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/css/codemirror.css +239 -0
  65. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/codemirror.js +160 -0
  66. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/css.js +10 -0
  67. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/htmlmixed.js +4 -0
  68. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/javascript.js +13 -0
  69. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/closetag.js +3 -0
  70. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/colorize.js +1 -0
  71. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/continuecomment.js +2 -0
  72. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/continuelist.js +1 -0
  73. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/dialog.css +32 -0
  74. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/dialog.js +3 -0
  75. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/foldcode.js +7 -0
  76. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/formatting.js +4 -0
  77. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/javascript-hint.js +5 -0
  78. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/loadmode.js +3 -0
  79. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/match-highlighter.js +2 -0
  80. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/matchbrackets.js +4 -0
  81. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/multiplex.js +4 -0
  82. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/overlay.js +2 -0
  83. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/pig-hint.js +6 -0
  84. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/runmode-standalone.js +5 -0
  85. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/runmode.js +2 -0
  86. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/search.js +5 -0
  87. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/searchcursor.js +5 -0
  88. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/simple-hint.css +16 -0
  89. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/simple-hint.js +4 -0
  90. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/util/xml-hint.js +3 -0
  91. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/js/xml.js +10 -0
  92. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/ambiance-mobile.css +6 -0
  93. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/ambiance.css +76 -0
  94. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/blackboard.css +25 -0
  95. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/cobalt.css +18 -0
  96. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/eclipse.css +25 -0
  97. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/elegant.css +10 -0
  98. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/erlang-dark.css +21 -0
  99. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/lesser-dark.css +44 -0
  100. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/monokai.css +28 -0
  101. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/neat.css +9 -0
  102. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/night.css +21 -0
  103. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/rubyblue.css +21 -0
  104. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/solarized.css +207 -0
  105. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/twilight.css +25 -0
  106. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/vibrant-ink.css +27 -0
  107. data/vendor/assets/ckeditor/ckeditor/plugins/codemirror/theme/xq-dark.css +46 -0
  108. data/vendor/assets/ckeditor/ckeditor/plugins/colordialog/dialogs/colordialog.js +13 -7
  109. data/vendor/assets/ckeditor/ckeditor/plugins/dialog/dialogDefinition.js +4 -4
  110. data/vendor/assets/ckeditor/ckeditor/plugins/div/dialogs/div.js +9 -8
  111. data/vendor/assets/ckeditor/ckeditor/{images → plugins/fakeobjects/images}/spacer.gif +0 -0
  112. data/vendor/assets/ckeditor/ckeditor/plugins/find/dialogs/find.js +24 -10
  113. data/vendor/assets/ckeditor/ckeditor/plugins/flash/dialogs/flash.js +23 -9
  114. data/vendor/assets/ckeditor/ckeditor/plugins/flash/images/placeholder.png +0 -0
  115. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/button.js +8 -6
  116. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/checkbox.js +8 -6
  117. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/form.js +8 -6
  118. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/hiddenfield.js +8 -6
  119. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/radio.js +8 -6
  120. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/select.js +20 -9
  121. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/textarea.js +8 -6
  122. data/vendor/assets/ckeditor/ckeditor/plugins/forms/dialogs/textfield.js +10 -6
  123. data/vendor/assets/ckeditor/ckeditor/plugins/forms/images/hiddenfield.gif +0 -0
  124. data/vendor/assets/ckeditor/ckeditor/plugins/icons.png +0 -0
  125. data/vendor/assets/ckeditor/ckeditor/plugins/iframe/dialogs/iframe.js +10 -7
  126. data/vendor/assets/ckeditor/ckeditor/plugins/iframe/images/placeholder.png +0 -0
  127. data/vendor/assets/ckeditor/ckeditor/plugins/image/dialogs/image.js +41 -13
  128. data/vendor/assets/ckeditor/ckeditor/{_source/skins/kama → plugins/image}/images/noimage.png +0 -0
  129. data/vendor/assets/ckeditor/ckeditor/plugins/link/dialogs/anchor.js +8 -6
  130. data/vendor/assets/ckeditor/ckeditor/plugins/link/dialogs/link.js +36 -12
  131. data/vendor/assets/ckeditor/ckeditor/plugins/link/images/anchor.png +0 -0
  132. data/vendor/assets/ckeditor/ckeditor/plugins/liststyle/dialogs/liststyle.js +10 -7
  133. data/vendor/assets/ckeditor/ckeditor/plugins/magicline/images/icon.png +0 -0
  134. data/vendor/assets/ckeditor/ckeditor/plugins/pagebreak/images/pagebreak.gif +0 -0
  135. data/vendor/assets/ckeditor/ckeditor/plugins/pastefromword/filter/default.js +31 -11
  136. data/vendor/assets/ckeditor/ckeditor/plugins/preview/preview.html +10 -0
  137. data/vendor/assets/ckeditor/ckeditor/plugins/scayt/LICENSE.md +28 -0
  138. data/vendor/assets/ckeditor/ckeditor/plugins/scayt/README.md +25 -0
  139. data/vendor/assets/ckeditor/ckeditor/plugins/scayt/dialogs/options.js +19 -8
  140. data/vendor/assets/ckeditor/ckeditor/plugins/scayt/dialogs/toolbar.css +70 -5
  141. data/vendor/assets/ckeditor/ckeditor/plugins/showblocks/images/block_address.png +0 -0
  142. data/vendor/assets/ckeditor/ckeditor/plugins/showblocks/images/block_blockquote.png +0 -0
  143. data/vendor/assets/ckeditor/ckeditor/plugins/showblocks/images/block_div.png +0 -0
  144. data/vendor/assets/ckeditor/ckeditor/plugins/showblocks/images/block_h1.png +0 -0
  145. data/vendor/assets/ckeditor/ckeditor/plugins/showblocks/images/block_h2.png +0 -0
  146. data/vendor/assets/ckeditor/ckeditor/plugins/showblocks/images/block_h3.png +0 -0
  147. data/vendor/assets/ckeditor/ckeditor/plugins/showblocks/images/block_h4.png +0 -0
  148. data/vendor/assets/ckeditor/ckeditor/plugins/showblocks/images/block_h5.png +0 -0
  149. data/vendor/assets/ckeditor/ckeditor/plugins/showblocks/images/block_h6.png +0 -0
  150. data/vendor/assets/ckeditor/ckeditor/plugins/showblocks/images/block_p.png +0 -0
  151. data/vendor/assets/ckeditor/ckeditor/plugins/showblocks/images/block_pre.png +0 -0
  152. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/dialogs/smiley.js +10 -7
  153. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/angel_smile.gif +0 -0
  154. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/angry_smile.gif +0 -0
  155. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/broken_heart.gif +0 -0
  156. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/confused_smile.gif +0 -0
  157. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/cry_smile.gif +0 -0
  158. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/devil_smile.gif +0 -0
  159. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/embaressed_smile.gif +0 -0
  160. data/vendor/assets/ckeditor/ckeditor/{_source/plugins/smiley/images/embaressed_smile.gif → plugins/smiley/images/embarrassed_smile.gif} +0 -0
  161. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/envelope.gif +0 -0
  162. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/heart.gif +0 -0
  163. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/kiss.gif +0 -0
  164. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/lightbulb.gif +0 -0
  165. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/omg_smile.gif +0 -0
  166. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/regular_smile.gif +0 -0
  167. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/sad_smile.gif +0 -0
  168. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/shades_smile.gif +0 -0
  169. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/teeth_smile.gif +0 -0
  170. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/thumbs_down.gif +0 -0
  171. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/thumbs_up.gif +0 -0
  172. data/vendor/assets/ckeditor/ckeditor/{_source/plugins/smiley/images/tounge_smile.gif → plugins/smiley/images/tongue_smile.gif} +0 -0
  173. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/tounge_smile.gif +0 -0
  174. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif +0 -0
  175. data/vendor/assets/ckeditor/ckeditor/plugins/smiley/images/wink_smile.gif +0 -0
  176. data/vendor/assets/ckeditor/ckeditor/{_source/plugins/specialchar → plugins/specialchar/dialogs}/lang/_translationstatus.txt +2 -1
  177. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ca.js +13 -0
  178. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/cs.js +13 -0
  179. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/cy.js +14 -0
  180. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/de.js +13 -0
  181. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/el.js +13 -0
  182. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/en.js +13 -0
  183. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/eo.js +12 -0
  184. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/et.js +13 -0
  185. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fa.js +13 -0
  186. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fi.js +13 -0
  187. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fr.js +11 -0
  188. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/he.js +13 -0
  189. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/hr.js +13 -0
  190. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/it.js +14 -0
  191. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ku.js +14 -0
  192. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/lv.js +13 -0
  193. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/nb.js +11 -0
  194. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/nl.js +13 -0
  195. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/no.js +11 -0
  196. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js +11 -0
  197. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sk.js +13 -0
  198. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sv.js +11 -0
  199. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/tr.js +12 -0
  200. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ug.js +13 -0
  201. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js +9 -0
  202. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/dialogs/specialchar.js +14 -7
  203. data/vendor/assets/ckeditor/ckeditor/plugins/table/dialogs/table.js +20 -9
  204. data/vendor/assets/ckeditor/ckeditor/plugins/tabletools/dialogs/tableCell.js +16 -8
  205. data/vendor/assets/ckeditor/ckeditor/plugins/templates/dialogs/templates.css +84 -0
  206. data/vendor/assets/ckeditor/ckeditor/plugins/templates/dialogs/templates.js +10 -7
  207. data/vendor/assets/ckeditor/ckeditor/plugins/templates/templates/default.js +6 -6
  208. data/vendor/assets/ckeditor/ckeditor/plugins/templates/templates/images/template1.gif +0 -0
  209. data/vendor/assets/ckeditor/ckeditor/plugins/templates/templates/images/template2.gif +0 -0
  210. data/vendor/assets/ckeditor/ckeditor/plugins/templates/templates/images/template3.gif +0 -0
  211. data/vendor/assets/ckeditor/ckeditor/plugins/wsc/LICENSE.md +28 -0
  212. data/vendor/assets/ckeditor/ckeditor/plugins/wsc/README.md +25 -0
  213. data/vendor/assets/ckeditor/ckeditor/plugins/wsc/dialogs/ciframe.html +0 -0
  214. data/vendor/assets/ckeditor/ckeditor/plugins/wsc/dialogs/tmpFrameset.html +0 -0
  215. data/vendor/assets/ckeditor/ckeditor/plugins/wsc/dialogs/wsc.css +77 -1
  216. data/vendor/assets/ckeditor/ckeditor/plugins/wsc/dialogs/wsc.js +11 -7
  217. data/vendor/assets/ckeditor/ckeditor/samples/ajax.html +82 -0
  218. data/vendor/assets/ckeditor/ckeditor/{_samples → samples}/api.html +93 -78
  219. data/vendor/assets/ckeditor/ckeditor/samples/appendto.html +57 -0
  220. data/vendor/assets/ckeditor/ckeditor/samples/assets/inlineall/logo.png +0 -0
  221. data/vendor/assets/ckeditor/ckeditor/{_samples/assets/output_xhtml.css → samples/assets/outputxhtml/outputxhtml.css} +1 -1
  222. data/vendor/assets/ckeditor/ckeditor/{_samples/assets/_posteddata.php → samples/assets/posteddata.php} +9 -9
  223. data/vendor/assets/ckeditor/ckeditor/samples/assets/sample.css +3 -0
  224. data/vendor/assets/ckeditor/ckeditor/samples/assets/sample.jpg +0 -0
  225. data/vendor/assets/ckeditor/ckeditor/samples/assets/uilanguages/languages.js +7 -0
  226. data/vendor/assets/ckeditor/ckeditor/samples/divreplace.html +141 -0
  227. data/vendor/assets/ckeditor/ckeditor/samples/index.html +122 -0
  228. data/vendor/assets/ckeditor/ckeditor/samples/inlineall.html +311 -0
  229. data/vendor/assets/ckeditor/ckeditor/samples/inlinebycode.html +122 -0
  230. data/vendor/assets/ckeditor/ckeditor/samples/plugins/dialog/assets/my_dialog.js +48 -0
  231. data/vendor/assets/ckeditor/ckeditor/samples/plugins/dialog/dialog.html +187 -0
  232. data/vendor/assets/ckeditor/ckeditor/samples/plugins/enterkey/enterkey.html +103 -0
  233. data/vendor/assets/ckeditor/ckeditor/{_samples/assets/output_for_flash.fla → samples/plugins/htmlwriter/assets/outputforflash/outputforflash.fla} +0 -0
  234. data/vendor/assets/ckeditor/ckeditor/{_samples/assets/output_for_flash.swf → samples/plugins/htmlwriter/assets/outputforflash/outputforflash.swf} +0 -0
  235. data/vendor/assets/ckeditor/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/swfobject.js +18 -0
  236. data/vendor/assets/ckeditor/ckeditor/samples/plugins/htmlwriter/outputforflash.html +280 -0
  237. data/vendor/assets/ckeditor/ckeditor/samples/plugins/htmlwriter/outputhtml.html +237 -0
  238. data/vendor/assets/ckeditor/ckeditor/samples/plugins/magicline/magicline.html +203 -0
  239. data/vendor/assets/ckeditor/ckeditor/{_samples/assets/parsesample.css → samples/plugins/stylesheetparser/assets/sample.css} +0 -0
  240. data/vendor/assets/ckeditor/ckeditor/samples/plugins/stylesheetparser/stylesheetparser.html +82 -0
  241. data/vendor/assets/ckeditor/ckeditor/samples/plugins/toolbar/toolbar.html +200 -0
  242. data/vendor/assets/ckeditor/ckeditor/samples/plugins/wysiwygarea/fullpage.html +71 -0
  243. data/vendor/assets/ckeditor/ckeditor/samples/readonly.html +73 -0
  244. data/vendor/assets/ckeditor/ckeditor/samples/replacebyclass.html +57 -0
  245. data/vendor/assets/ckeditor/ckeditor/samples/replacebycode.html +56 -0
  246. data/vendor/assets/ckeditor/ckeditor/samples/sample.css +333 -0
  247. data/vendor/assets/ckeditor/ckeditor/samples/sample.js +5 -0
  248. data/vendor/assets/ckeditor/ckeditor/{_samples → samples}/sample_posteddata.php +5 -10
  249. data/vendor/assets/ckeditor/ckeditor/samples/tabindex.html +75 -0
  250. data/vendor/assets/ckeditor/ckeditor/samples/uicolor.html +69 -0
  251. data/vendor/assets/ckeditor/ckeditor/samples/uilanguages.html +119 -0
  252. data/vendor/assets/ckeditor/ckeditor/samples/xhtmlstyle.html +219 -0
  253. data/vendor/assets/ckeditor/ckeditor/skins/moono/dialog.css +5 -0
  254. data/vendor/assets/ckeditor/ckeditor/skins/moono/dialog_ie.css +5 -0
  255. data/vendor/assets/ckeditor/ckeditor/skins/moono/dialog_ie7.css +5 -0
  256. data/vendor/assets/ckeditor/ckeditor/skins/moono/dialog_ie8.css +5 -0
  257. data/vendor/assets/ckeditor/ckeditor/skins/moono/dialog_iequirks.css +5 -0
  258. data/vendor/assets/ckeditor/ckeditor/skins/moono/dialog_opera.css +5 -0
  259. data/vendor/assets/ckeditor/ckeditor/skins/moono/editor.css +5 -0
  260. data/vendor/assets/ckeditor/ckeditor/skins/moono/editor_gecko.css +5 -0
  261. data/vendor/assets/ckeditor/ckeditor/skins/moono/editor_ie.css +5 -0
  262. data/vendor/assets/ckeditor/ckeditor/skins/moono/editor_ie7.css +5 -0
  263. data/vendor/assets/ckeditor/ckeditor/skins/moono/editor_ie8.css +5 -0
  264. data/vendor/assets/ckeditor/ckeditor/skins/moono/editor_iequirks.css +5 -0
  265. data/vendor/assets/ckeditor/ckeditor/skins/moono/icons.png +0 -0
  266. data/vendor/assets/ckeditor/ckeditor/skins/moono/images/arrow.png +0 -0
  267. data/vendor/assets/ckeditor/ckeditor/skins/moono/images/close.png +0 -0
  268. data/vendor/assets/ckeditor/ckeditor/skins/moono/images/mini.png +0 -0
  269. data/vendor/assets/ckeditor/ckeditor/skins/moono/readme.md +51 -0
  270. data/vendor/assets/ckeditor/ckeditor/styles.js +112 -0
  271. metadata +190 -795
  272. data/vendor/assets/ckeditor/ckeditor-contrib/plugins/MediaEmbed/dialogs/mediaembed.html +0 -14
  273. data/vendor/assets/ckeditor/ckeditor-contrib/plugins/MediaEmbed/images/icon.gif +0 -0
  274. data/vendor/assets/ckeditor/ckeditor-contrib/plugins/MediaEmbed/plugin.js +0 -61
  275. data/vendor/assets/ckeditor/ckeditor-contrib/plugins/audio/README +0 -0
  276. data/vendor/assets/ckeditor/ckeditor-contrib/plugins/audio/dialogs/audio.js +0 -265
  277. data/vendor/assets/ckeditor/ckeditor-contrib/plugins/audio/docs/install.html +0 -72
  278. data/vendor/assets/ckeditor/ckeditor-contrib/plugins/audio/docs/styles.css +0 -67
  279. data/vendor/assets/ckeditor/ckeditor-contrib/plugins/audio/images/icon.png +0 -0
  280. data/vendor/assets/ckeditor/ckeditor-contrib/plugins/audio/images/placeholder.png +0 -0
  281. data/vendor/assets/ckeditor/ckeditor-contrib/plugins/audio/plugin.js +0 -165
  282. data/vendor/assets/ckeditor/ckeditor/CHANGES.html +0 -1503
  283. data/vendor/assets/ckeditor/ckeditor/INSTALL.html +0 -92
  284. data/vendor/assets/ckeditor/ckeditor/_samples/adobeair/application.xml +0 -32
  285. data/vendor/assets/ckeditor/ckeditor/_samples/adobeair/run.bat +0 -9
  286. data/vendor/assets/ckeditor/ckeditor/_samples/adobeair/run.sh +0 -8
  287. data/vendor/assets/ckeditor/ckeditor/_samples/adobeair/sample.html +0 -45
  288. data/vendor/assets/ckeditor/ckeditor/_samples/ajax.html +0 -98
  289. data/vendor/assets/ckeditor/ckeditor/_samples/api_dialog.html +0 -198
  290. data/vendor/assets/ckeditor/ckeditor/_samples/api_dialog/my_dialog.js +0 -28
  291. data/vendor/assets/ckeditor/ckeditor/_samples/asp/advanced.asp +0 -105
  292. data/vendor/assets/ckeditor/ckeditor/_samples/asp/events.asp +0 -136
  293. data/vendor/assets/ckeditor/ckeditor/_samples/asp/index.html +0 -103
  294. data/vendor/assets/ckeditor/ckeditor/_samples/asp/replace.asp +0 -72
  295. data/vendor/assets/ckeditor/ckeditor/_samples/asp/replaceall.asp +0 -77
  296. data/vendor/assets/ckeditor/ckeditor/_samples/asp/sample_posteddata.asp +0 -46
  297. data/vendor/assets/ckeditor/ckeditor/_samples/asp/standalone.asp +0 -72
  298. data/vendor/assets/ckeditor/ckeditor/_samples/assets/swfobject.js +0 -18
  299. data/vendor/assets/ckeditor/ckeditor/_samples/autogrow.html +0 -108
  300. data/vendor/assets/ckeditor/ckeditor/_samples/bbcode.html +0 -125
  301. data/vendor/assets/ckeditor/ckeditor/_samples/devtools.html +0 -94
  302. data/vendor/assets/ckeditor/ckeditor/_samples/divreplace.html +0 -154
  303. data/vendor/assets/ckeditor/ckeditor/_samples/enterkey.html +0 -115
  304. data/vendor/assets/ckeditor/ckeditor/_samples/fullpage.html +0 -82
  305. data/vendor/assets/ckeditor/ckeditor/_samples/index.html +0 -116
  306. data/vendor/assets/ckeditor/ckeditor/_samples/jqueryadapter.html +0 -99
  307. data/vendor/assets/ckeditor/ckeditor/_samples/output_for_flash.html +0 -275
  308. data/vendor/assets/ckeditor/ckeditor/_samples/output_html.html +0 -285
  309. data/vendor/assets/ckeditor/ckeditor/_samples/output_xhtml.html +0 -181
  310. data/vendor/assets/ckeditor/ckeditor/_samples/php/advanced.php +0 -120
  311. data/vendor/assets/ckeditor/ckeditor/_samples/php/events.php +0 -153
  312. data/vendor/assets/ckeditor/ckeditor/_samples/php/index.html +0 -47
  313. data/vendor/assets/ckeditor/ckeditor/_samples/php/replace.php +0 -87
  314. data/vendor/assets/ckeditor/ckeditor/_samples/php/replaceall.php +0 -88
  315. data/vendor/assets/ckeditor/ckeditor/_samples/php/standalone.php +0 -83
  316. data/vendor/assets/ckeditor/ckeditor/_samples/placeholder.html +0 -81
  317. data/vendor/assets/ckeditor/ckeditor/_samples/readonly.html +0 -91
  318. data/vendor/assets/ckeditor/ckeditor/_samples/replacebyclass.html +0 -64
  319. data/vendor/assets/ckeditor/ckeditor/_samples/replacebycode.html +0 -97
  320. data/vendor/assets/ckeditor/ckeditor/_samples/sample.css +0 -163
  321. data/vendor/assets/ckeditor/ckeditor/_samples/sample.js +0 -65
  322. data/vendor/assets/ckeditor/ckeditor/_samples/sharedspaces.html +0 -153
  323. data/vendor/assets/ckeditor/ckeditor/_samples/skins.html +0 -110
  324. data/vendor/assets/ckeditor/ckeditor/_samples/stylesheetparser.html +0 -93
  325. data/vendor/assets/ckeditor/ckeditor/_samples/tableresize.html +0 -115
  326. data/vendor/assets/ckeditor/ckeditor/_samples/ui_color.html +0 -129
  327. data/vendor/assets/ckeditor/ckeditor/_samples/ui_languages.html +0 -134
  328. data/vendor/assets/ckeditor/ckeditor/_source/adapters/jquery.js +0 -306
  329. data/vendor/assets/ckeditor/ckeditor/_source/core/_bootstrap.js +0 -87
  330. data/vendor/assets/ckeditor/ckeditor/_source/core/ckeditor.js +0 -141
  331. data/vendor/assets/ckeditor/ckeditor/_source/core/ckeditor_base.js +0 -235
  332. data/vendor/assets/ckeditor/ckeditor/_source/core/ckeditor_basic.js +0 -238
  333. data/vendor/assets/ckeditor/ckeditor/_source/core/command.js +0 -225
  334. data/vendor/assets/ckeditor/ckeditor/_source/core/commanddefinition.js +0 -129
  335. data/vendor/assets/ckeditor/ckeditor/_source/core/config.js +0 -447
  336. data/vendor/assets/ckeditor/ckeditor/_source/core/dataprocessor.js +0 -65
  337. data/vendor/assets/ckeditor/ckeditor/_source/core/dom.js +0 -20
  338. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/comment.js +0 -44
  339. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/document.js +0 -251
  340. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/documentfragment.js +0 -49
  341. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/domobject.js +0 -258
  342. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/element.js +0 -1796
  343. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/elementpath.js +0 -117
  344. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/event.js +0 -145
  345. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/node.js +0 -691
  346. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/nodelist.js +0 -26
  347. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/range.js +0 -2068
  348. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/rangelist.js +0 -213
  349. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/text.js +0 -128
  350. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/walker.js +0 -496
  351. data/vendor/assets/ckeditor/ckeditor/_source/core/dom/window.js +0 -96
  352. data/vendor/assets/ckeditor/ckeditor/_source/core/dtd.js +0 -266
  353. data/vendor/assets/ckeditor/ckeditor/_source/core/editor.js +0 -1059
  354. data/vendor/assets/ckeditor/ckeditor/_source/core/editor_basic.js +0 -186
  355. data/vendor/assets/ckeditor/ckeditor/_source/core/env.js +0 -305
  356. data/vendor/assets/ckeditor/ckeditor/_source/core/event.js +0 -342
  357. data/vendor/assets/ckeditor/ckeditor/_source/core/eventInfo.js +0 -120
  358. data/vendor/assets/ckeditor/ckeditor/_source/core/focusmanager.js +0 -152
  359. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser.js +0 -224
  360. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/basicwriter.js +0 -145
  361. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/cdata.js +0 -43
  362. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/comment.js +0 -60
  363. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/element.js +0 -308
  364. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/filter.js +0 -288
  365. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/fragment.js +0 -537
  366. data/vendor/assets/ckeditor/ckeditor/_source/core/htmlparser/text.js +0 -53
  367. data/vendor/assets/ckeditor/ckeditor/_source/core/lang.js +0 -157
  368. data/vendor/assets/ckeditor/ckeditor/_source/core/loader.js +0 -240
  369. data/vendor/assets/ckeditor/ckeditor/_source/core/plugindefinition.js +0 -83
  370. data/vendor/assets/ckeditor/ckeditor/_source/core/plugins.js +0 -103
  371. data/vendor/assets/ckeditor/ckeditor/_source/core/resourcemanager.js +0 -238
  372. data/vendor/assets/ckeditor/ckeditor/_source/core/scriptloader.js +0 -180
  373. data/vendor/assets/ckeditor/ckeditor/_source/core/skins.js +0 -184
  374. data/vendor/assets/ckeditor/ckeditor/_source/core/themes.js +0 -19
  375. data/vendor/assets/ckeditor/ckeditor/_source/core/tools.js +0 -763
  376. data/vendor/assets/ckeditor/ckeditor/_source/core/ui.js +0 -128
  377. data/vendor/assets/ckeditor/ckeditor/_source/lang/_languages.js +0 -84
  378. data/vendor/assets/ckeditor/ckeditor/_source/lang/_translationstatus.txt +0 -63
  379. data/vendor/assets/ckeditor/ckeditor/_source/lang/af.js +0 -815
  380. data/vendor/assets/ckeditor/ckeditor/_source/lang/ar.js +0 -815
  381. data/vendor/assets/ckeditor/ckeditor/_source/lang/bg.js +0 -815
  382. data/vendor/assets/ckeditor/ckeditor/_source/lang/bn.js +0 -815
  383. data/vendor/assets/ckeditor/ckeditor/_source/lang/bs.js +0 -815
  384. data/vendor/assets/ckeditor/ckeditor/_source/lang/ca.js +0 -815
  385. data/vendor/assets/ckeditor/ckeditor/_source/lang/cs.js +0 -815
  386. data/vendor/assets/ckeditor/ckeditor/_source/lang/cy.js +0 -815
  387. data/vendor/assets/ckeditor/ckeditor/_source/lang/da.js +0 -815
  388. data/vendor/assets/ckeditor/ckeditor/_source/lang/de.js +0 -815
  389. data/vendor/assets/ckeditor/ckeditor/_source/lang/el.js +0 -815
  390. data/vendor/assets/ckeditor/ckeditor/_source/lang/en-au.js +0 -815
  391. data/vendor/assets/ckeditor/ckeditor/_source/lang/en-ca.js +0 -815
  392. data/vendor/assets/ckeditor/ckeditor/_source/lang/en-gb.js +0 -815
  393. data/vendor/assets/ckeditor/ckeditor/_source/lang/en.js +0 -815
  394. data/vendor/assets/ckeditor/ckeditor/_source/lang/eo.js +0 -815
  395. data/vendor/assets/ckeditor/ckeditor/_source/lang/es.js +0 -815
  396. data/vendor/assets/ckeditor/ckeditor/_source/lang/et.js +0 -815
  397. data/vendor/assets/ckeditor/ckeditor/_source/lang/eu.js +0 -815
  398. data/vendor/assets/ckeditor/ckeditor/_source/lang/fa.js +0 -815
  399. data/vendor/assets/ckeditor/ckeditor/_source/lang/fi.js +0 -815
  400. data/vendor/assets/ckeditor/ckeditor/_source/lang/fo.js +0 -815
  401. data/vendor/assets/ckeditor/ckeditor/_source/lang/fr-ca.js +0 -815
  402. data/vendor/assets/ckeditor/ckeditor/_source/lang/fr.js +0 -815
  403. data/vendor/assets/ckeditor/ckeditor/_source/lang/gl.js +0 -815
  404. data/vendor/assets/ckeditor/ckeditor/_source/lang/gu.js +0 -815
  405. data/vendor/assets/ckeditor/ckeditor/_source/lang/he.js +0 -815
  406. data/vendor/assets/ckeditor/ckeditor/_source/lang/hi.js +0 -815
  407. data/vendor/assets/ckeditor/ckeditor/_source/lang/hr.js +0 -815
  408. data/vendor/assets/ckeditor/ckeditor/_source/lang/hu.js +0 -815
  409. data/vendor/assets/ckeditor/ckeditor/_source/lang/is.js +0 -815
  410. data/vendor/assets/ckeditor/ckeditor/_source/lang/it.js +0 -815
  411. data/vendor/assets/ckeditor/ckeditor/_source/lang/ja.js +0 -815
  412. data/vendor/assets/ckeditor/ckeditor/_source/lang/ka.js +0 -815
  413. data/vendor/assets/ckeditor/ckeditor/_source/lang/km.js +0 -815
  414. data/vendor/assets/ckeditor/ckeditor/_source/lang/ko.js +0 -815
  415. data/vendor/assets/ckeditor/ckeditor/_source/lang/lt.js +0 -815
  416. data/vendor/assets/ckeditor/ckeditor/_source/lang/lv.js +0 -815
  417. data/vendor/assets/ckeditor/ckeditor/_source/lang/mk.js +0 -814
  418. data/vendor/assets/ckeditor/ckeditor/_source/lang/mn.js +0 -815
  419. data/vendor/assets/ckeditor/ckeditor/_source/lang/ms.js +0 -815
  420. data/vendor/assets/ckeditor/ckeditor/_source/lang/nb.js +0 -815
  421. data/vendor/assets/ckeditor/ckeditor/_source/lang/nl.js +0 -815
  422. data/vendor/assets/ckeditor/ckeditor/_source/lang/no.js +0 -815
  423. data/vendor/assets/ckeditor/ckeditor/_source/lang/pl.js +0 -815
  424. data/vendor/assets/ckeditor/ckeditor/_source/lang/pt-br.js +0 -814
  425. data/vendor/assets/ckeditor/ckeditor/_source/lang/pt.js +0 -815
  426. data/vendor/assets/ckeditor/ckeditor/_source/lang/ro.js +0 -815
  427. data/vendor/assets/ckeditor/ckeditor/_source/lang/ru.js +0 -815
  428. data/vendor/assets/ckeditor/ckeditor/_source/lang/sk.js +0 -815
  429. data/vendor/assets/ckeditor/ckeditor/_source/lang/sl.js +0 -815
  430. data/vendor/assets/ckeditor/ckeditor/_source/lang/sr-latn.js +0 -815
  431. data/vendor/assets/ckeditor/ckeditor/_source/lang/sr.js +0 -815
  432. data/vendor/assets/ckeditor/ckeditor/_source/lang/sv.js +0 -814
  433. data/vendor/assets/ckeditor/ckeditor/_source/lang/th.js +0 -815
  434. data/vendor/assets/ckeditor/ckeditor/_source/lang/tr.js +0 -814
  435. data/vendor/assets/ckeditor/ckeditor/_source/lang/ug.js +0 -814
  436. data/vendor/assets/ckeditor/ckeditor/_source/lang/uk.js +0 -815
  437. data/vendor/assets/ckeditor/ckeditor/_source/lang/vi.js +0 -815
  438. data/vendor/assets/ckeditor/ckeditor/_source/lang/zh-cn.js +0 -815
  439. data/vendor/assets/ckeditor/ckeditor/_source/lang/zh.js +0 -815
  440. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/dialogs/a11yhelp.js +0 -222
  441. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/cs.js +0 -89
  442. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/cy.js +0 -89
  443. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/da.js +0 -89
  444. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/de.js +0 -89
  445. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/el.js +0 -89
  446. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/en.js +0 -108
  447. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/eo.js +0 -89
  448. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/fa.js +0 -89
  449. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/fi.js +0 -89
  450. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/fr.js +0 -89
  451. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/gu.js +0 -89
  452. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/he.js +0 -89
  453. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/it.js +0 -89
  454. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/mk.js +0 -89
  455. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/nb.js +0 -89
  456. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/nl.js +0 -89
  457. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/no.js +0 -89
  458. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/tr.js +0 -89
  459. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/ug.js +0 -89
  460. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/vi.js +0 -89
  461. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/lang/zh-cn.js +0 -89
  462. data/vendor/assets/ckeditor/ckeditor/_source/plugins/a11yhelp/plugin.js +0 -47
  463. data/vendor/assets/ckeditor/ckeditor/_source/plugins/about/dialogs/about.js +0 -76
  464. data/vendor/assets/ckeditor/ckeditor/_source/plugins/about/dialogs/logo_ckeditor.png +0 -0
  465. data/vendor/assets/ckeditor/ckeditor/_source/plugins/about/plugin.js +0 -24
  466. data/vendor/assets/ckeditor/ckeditor/_source/plugins/adobeair/plugin.js +0 -228
  467. data/vendor/assets/ckeditor/ckeditor/_source/plugins/ajax/plugin.js +0 -152
  468. data/vendor/assets/ckeditor/ckeditor/_source/plugins/autogrow/plugin.js +0 -141
  469. data/vendor/assets/ckeditor/ckeditor/_source/plugins/basicstyles/plugin.js +0 -129
  470. data/vendor/assets/ckeditor/ckeditor/_source/plugins/bbcode/plugin.js +0 -931
  471. data/vendor/assets/ckeditor/ckeditor/_source/plugins/bidi/plugin.js +0 -334
  472. data/vendor/assets/ckeditor/ckeditor/_source/plugins/blockquote/plugin.js +0 -305
  473. data/vendor/assets/ckeditor/ckeditor/_source/plugins/button/plugin.js +0 -290
  474. data/vendor/assets/ckeditor/ckeditor/_source/plugins/clipboard/dialogs/paste.js +0 -223
  475. data/vendor/assets/ckeditor/ckeditor/_source/plugins/clipboard/plugin.js +0 -479
  476. data/vendor/assets/ckeditor/ckeditor/_source/plugins/colorbutton/plugin.js +0 -300
  477. data/vendor/assets/ckeditor/ckeditor/_source/plugins/colordialog/dialogs/colordialog.js +0 -387
  478. data/vendor/assets/ckeditor/ckeditor/_source/plugins/colordialog/plugin.js +0 -15
  479. data/vendor/assets/ckeditor/ckeditor/_source/plugins/contextmenu/plugin.js +0 -179
  480. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/_translationstatus.txt +0 -27
  481. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/bg.js +0 -16
  482. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/cs.js +0 -16
  483. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/cy.js +0 -16
  484. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/da.js +0 -16
  485. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/de.js +0 -16
  486. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/el.js +0 -16
  487. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/en.js +0 -16
  488. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/eo.js +0 -16
  489. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/et.js +0 -16
  490. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/fa.js +0 -16
  491. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/fi.js +0 -16
  492. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/fr.js +0 -16
  493. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/gu.js +0 -16
  494. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/he.js +0 -16
  495. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/hr.js +0 -16
  496. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/it.js +0 -16
  497. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/nb.js +0 -16
  498. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/nl.js +0 -16
  499. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/no.js +0 -16
  500. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/pl.js +0 -16
  501. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/tr.js +0 -16
  502. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/ug.js +0 -16
  503. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/uk.js +0 -16
  504. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/vi.js +0 -16
  505. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/lang/zh-cn.js +0 -16
  506. data/vendor/assets/ckeditor/ckeditor/_source/plugins/devtools/plugin.js +0 -173
  507. data/vendor/assets/ckeditor/ckeditor/_source/plugins/dialog/dialogDefinition.js +0 -1166
  508. data/vendor/assets/ckeditor/ckeditor/_source/plugins/dialog/plugin.js +0 -3319
  509. data/vendor/assets/ckeditor/ckeditor/_source/plugins/dialogadvtab/plugin.js +0 -208
  510. data/vendor/assets/ckeditor/ckeditor/_source/plugins/dialogui/plugin.js +0 -1549
  511. data/vendor/assets/ckeditor/ckeditor/_source/plugins/div/dialogs/div.js +0 -535
  512. data/vendor/assets/ckeditor/ckeditor/_source/plugins/div/plugin.js +0 -121
  513. data/vendor/assets/ckeditor/ckeditor/_source/plugins/docprops/dialogs/docprops.js +0 -674
  514. data/vendor/assets/ckeditor/ckeditor/_source/plugins/docprops/plugin.js +0 -22
  515. data/vendor/assets/ckeditor/ckeditor/_source/plugins/domiterator/plugin.js +0 -366
  516. data/vendor/assets/ckeditor/ckeditor/_source/plugins/editingblock/plugin.js +0 -278
  517. data/vendor/assets/ckeditor/ckeditor/_source/plugins/elementspath/plugin.js +0 -218
  518. data/vendor/assets/ckeditor/ckeditor/_source/plugins/enterkey/plugin.js +0 -433
  519. data/vendor/assets/ckeditor/ckeditor/_source/plugins/entities/plugin.js +0 -254
  520. data/vendor/assets/ckeditor/ckeditor/_source/plugins/fakeobjects/plugin.js +0 -175
  521. data/vendor/assets/ckeditor/ckeditor/_source/plugins/filebrowser/plugin.js +0 -533
  522. data/vendor/assets/ckeditor/ckeditor/_source/plugins/find/dialogs/find.js +0 -915
  523. data/vendor/assets/ckeditor/ckeditor/_source/plugins/find/plugin.js +0 -47
  524. data/vendor/assets/ckeditor/ckeditor/_source/plugins/flash/dialogs/flash.js +0 -674
  525. data/vendor/assets/ckeditor/ckeditor/_source/plugins/flash/images/placeholder.png +0 -0
  526. data/vendor/assets/ckeditor/ckeditor/_source/plugins/flash/plugin.js +0 -154
  527. data/vendor/assets/ckeditor/ckeditor/_source/plugins/floatpanel/plugin.js +0 -476
  528. data/vendor/assets/ckeditor/ckeditor/_source/plugins/font/plugin.js +0 -234
  529. data/vendor/assets/ckeditor/ckeditor/_source/plugins/format/plugin.js +0 -197
  530. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/button.js +0 -118
  531. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/checkbox.js +0 -153
  532. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/form.js +0 -177
  533. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/hiddenfield.js +0 -100
  534. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/radio.js +0 -135
  535. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/select.js +0 -558
  536. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/textarea.js +0 -135
  537. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/dialogs/textfield.js +0 -199
  538. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/images/hiddenfield.gif +0 -0
  539. data/vendor/assets/ckeditor/ckeditor/_source/plugins/forms/plugin.js +0 -288
  540. data/vendor/assets/ckeditor/ckeditor/_source/plugins/horizontalrule/plugin.js +0 -48
  541. data/vendor/assets/ckeditor/ckeditor/_source/plugins/htmldataprocessor/plugin.js +0 -600
  542. data/vendor/assets/ckeditor/ckeditor/_source/plugins/htmlwriter/plugin.js +0 -319
  543. data/vendor/assets/ckeditor/ckeditor/_source/plugins/iframe/dialogs/iframe.js +0 -229
  544. data/vendor/assets/ckeditor/ckeditor/_source/plugins/iframe/images/placeholder.png +0 -0
  545. data/vendor/assets/ckeditor/ckeditor/_source/plugins/iframe/plugin.js +0 -87
  546. data/vendor/assets/ckeditor/ckeditor/_source/plugins/iframedialog/plugin.js +0 -188
  547. data/vendor/assets/ckeditor/ckeditor/_source/plugins/image/dialogs/image.js +0 -1406
  548. data/vendor/assets/ckeditor/ckeditor/_source/plugins/image/plugin.js +0 -164
  549. data/vendor/assets/ckeditor/ckeditor/_source/plugins/indent/plugin.js +0 -480
  550. data/vendor/assets/ckeditor/ckeditor/_source/plugins/justify/plugin.js +0 -251
  551. data/vendor/assets/ckeditor/ckeditor/_source/plugins/keystrokes/plugin.js +0 -225
  552. data/vendor/assets/ckeditor/ckeditor/_source/plugins/link/dialogs/anchor.js +0 -144
  553. data/vendor/assets/ckeditor/ckeditor/_source/plugins/link/dialogs/link.js +0 -1427
  554. data/vendor/assets/ckeditor/ckeditor/_source/plugins/link/images/anchor.gif +0 -0
  555. data/vendor/assets/ckeditor/ckeditor/_source/plugins/link/plugin.js +0 -374
  556. data/vendor/assets/ckeditor/ckeditor/_source/plugins/list/plugin.js +0 -967
  557. data/vendor/assets/ckeditor/ckeditor/_source/plugins/listblock/plugin.js +0 -260
  558. data/vendor/assets/ckeditor/ckeditor/_source/plugins/liststyle/dialogs/liststyle.js +0 -225
  559. data/vendor/assets/ckeditor/ckeditor/_source/plugins/liststyle/plugin.js +0 -66
  560. data/vendor/assets/ckeditor/ckeditor/_source/plugins/maximize/plugin.js +0 -353
  561. data/vendor/assets/ckeditor/ckeditor/_source/plugins/menu/plugin.js +0 -542
  562. data/vendor/assets/ckeditor/ckeditor/_source/plugins/menubutton/plugin.js +0 -98
  563. data/vendor/assets/ckeditor/ckeditor/_source/plugins/newpage/plugin.js +0 -55
  564. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pagebreak/images/pagebreak.gif +0 -0
  565. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pagebreak/plugin.js +0 -164
  566. data/vendor/assets/ckeditor/ckeditor/_source/plugins/panel/plugin.js +0 -396
  567. data/vendor/assets/ckeditor/ckeditor/_source/plugins/panelbutton/plugin.js +0 -144
  568. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pastefromword/filter/default.js +0 -1367
  569. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pastefromword/plugin.js +0 -141
  570. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pastetext/dialogs/pastetext.js +0 -67
  571. data/vendor/assets/ckeditor/ckeditor/_source/plugins/pastetext/plugin.js +0 -98
  572. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/dialogs/placeholder.js +0 -71
  573. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/_translationstatus.txt +0 -26
  574. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/bg.js +0 -16
  575. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/cs.js +0 -16
  576. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/cy.js +0 -16
  577. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/da.js +0 -16
  578. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/de.js +0 -16
  579. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/el.js +0 -16
  580. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/en.js +0 -16
  581. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/eo.js +0 -16
  582. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/et.js +0 -16
  583. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/fa.js +0 -16
  584. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/fi.js +0 -16
  585. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/fr.js +0 -16
  586. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/he.js +0 -16
  587. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/hr.js +0 -16
  588. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/it.js +0 -16
  589. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/nb.js +0 -16
  590. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/nl.js +0 -16
  591. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/no.js +0 -16
  592. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/pl.js +0 -16
  593. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/tr.js +0 -16
  594. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/ug.js +0 -16
  595. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/uk.js +0 -16
  596. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/vi.js +0 -16
  597. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/lang/zh-cn.js +0 -16
  598. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/placeholder.gif +0 -0
  599. data/vendor/assets/ckeditor/ckeditor/_source/plugins/placeholder/plugin.js +0 -171
  600. data/vendor/assets/ckeditor/ckeditor/_source/plugins/popup/plugin.js +0 -69
  601. data/vendor/assets/ckeditor/ckeditor/_source/plugins/preview/plugin.js +0 -113
  602. data/vendor/assets/ckeditor/ckeditor/_source/plugins/print/plugin.js +0 -42
  603. data/vendor/assets/ckeditor/ckeditor/_source/plugins/removeformat/plugin.js +0 -185
  604. data/vendor/assets/ckeditor/ckeditor/_source/plugins/resize/plugin.js +0 -169
  605. data/vendor/assets/ckeditor/ckeditor/_source/plugins/richcombo/plugin.js +0 -381
  606. data/vendor/assets/ckeditor/ckeditor/_source/plugins/save/plugin.js +0 -56
  607. data/vendor/assets/ckeditor/ckeditor/_source/plugins/scayt/dialogs/options.js +0 -537
  608. data/vendor/assets/ckeditor/ckeditor/_source/plugins/scayt/dialogs/toolbar.css +0 -71
  609. data/vendor/assets/ckeditor/ckeditor/_source/plugins/scayt/plugin.js +0 -973
  610. data/vendor/assets/ckeditor/ckeditor/_source/plugins/selection/plugin.js +0 -1855
  611. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showblocks/images/block_address.png +0 -0
  612. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showblocks/images/block_blockquote.png +0 -0
  613. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showblocks/images/block_div.png +0 -0
  614. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showblocks/images/block_h1.png +0 -0
  615. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showblocks/images/block_h2.png +0 -0
  616. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showblocks/images/block_h3.png +0 -0
  617. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showblocks/images/block_h4.png +0 -0
  618. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showblocks/images/block_h5.png +0 -0
  619. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showblocks/images/block_h6.png +0 -0
  620. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showblocks/images/block_p.png +0 -0
  621. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showblocks/images/block_pre.png +0 -0
  622. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showblocks/plugin.js +0 -160
  623. data/vendor/assets/ckeditor/ckeditor/_source/plugins/showborders/plugin.js +0 -207
  624. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/dialogs/smiley.js +0 -224
  625. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/angel_smile.gif +0 -0
  626. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/angry_smile.gif +0 -0
  627. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/broken_heart.gif +0 -0
  628. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/confused_smile.gif +0 -0
  629. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/cry_smile.gif +0 -0
  630. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/devil_smile.gif +0 -0
  631. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/envelope.gif +0 -0
  632. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/heart.gif +0 -0
  633. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/kiss.gif +0 -0
  634. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/lightbulb.gif +0 -0
  635. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/omg_smile.gif +0 -0
  636. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/regular_smile.gif +0 -0
  637. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/sad_smile.gif +0 -0
  638. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/shades_smile.gif +0 -0
  639. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/teeth_smile.gif +0 -0
  640. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/thumbs_down.gif +0 -0
  641. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/thumbs_up.gif +0 -0
  642. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/whatchutalkingabout_smile.gif +0 -0
  643. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/images/wink_smile.gif +0 -0
  644. data/vendor/assets/ckeditor/ckeditor/_source/plugins/smiley/plugin.js +0 -94
  645. data/vendor/assets/ckeditor/ckeditor/_source/plugins/sourcearea/plugin.js +0 -209
  646. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/dialogs/specialchar.js +0 -350
  647. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/cs.js +0 -126
  648. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/cy.js +0 -126
  649. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/de.js +0 -126
  650. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/en.js +0 -126
  651. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/eo.js +0 -126
  652. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/et.js +0 -126
  653. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/fa.js +0 -126
  654. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/fi.js +0 -126
  655. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/fr.js +0 -126
  656. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/hr.js +0 -126
  657. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/it.js +0 -126
  658. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/nb.js +0 -126
  659. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/nl.js +0 -126
  660. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/no.js +0 -126
  661. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/tr.js +0 -126
  662. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/ug.js +0 -126
  663. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/lang/zh-cn.js +0 -126
  664. data/vendor/assets/ckeditor/ckeditor/_source/plugins/specialchar/plugin.js +0 -70
  665. data/vendor/assets/ckeditor/ckeditor/_source/plugins/styles/plugin.js +0 -1706
  666. data/vendor/assets/ckeditor/ckeditor/_source/plugins/styles/styles/default.js +0 -88
  667. data/vendor/assets/ckeditor/ckeditor/_source/plugins/stylescombo/plugin.js +0 -218
  668. data/vendor/assets/ckeditor/ckeditor/_source/plugins/stylesheetparser/plugin.js +0 -148
  669. data/vendor/assets/ckeditor/ckeditor/_source/plugins/tab/plugin.js +0 -367
  670. data/vendor/assets/ckeditor/ckeditor/_source/plugins/table/dialogs/table.js +0 -618
  671. data/vendor/assets/ckeditor/ckeditor/_source/plugins/table/plugin.js +0 -78
  672. data/vendor/assets/ckeditor/ckeditor/_source/plugins/tableresize/plugin.js +0 -443
  673. data/vendor/assets/ckeditor/ckeditor/_source/plugins/tabletools/dialogs/tableCell.js +0 -520
  674. data/vendor/assets/ckeditor/ckeditor/_source/plugins/tabletools/plugin.js +0 -1185
  675. data/vendor/assets/ckeditor/ckeditor/_source/plugins/templates/dialogs/templates.js +0 -234
  676. data/vendor/assets/ckeditor/ckeditor/_source/plugins/templates/plugin.js +0 -100
  677. data/vendor/assets/ckeditor/ckeditor/_source/plugins/templates/templates/default.js +0 -94
  678. data/vendor/assets/ckeditor/ckeditor/_source/plugins/templates/templates/images/template1.gif +0 -0
  679. data/vendor/assets/ckeditor/ckeditor/_source/plugins/templates/templates/images/template2.gif +0 -0
  680. data/vendor/assets/ckeditor/ckeditor/_source/plugins/templates/templates/images/template3.gif +0 -0
  681. data/vendor/assets/ckeditor/ckeditor/_source/plugins/toolbar/plugin.js +0 -545
  682. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/dialogs/uicolor.js +0 -205
  683. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/_translationstatus.txt +0 -27
  684. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/bg.js +0 -15
  685. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/cs.js +0 -15
  686. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/cy.js +0 -15
  687. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/da.js +0 -15
  688. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/de.js +0 -15
  689. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/el.js +0 -15
  690. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/en.js +0 -15
  691. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/eo.js +0 -15
  692. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/et.js +0 -15
  693. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/fa.js +0 -15
  694. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/fi.js +0 -15
  695. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/fr.js +0 -15
  696. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/he.js +0 -15
  697. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/hr.js +0 -15
  698. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/it.js +0 -15
  699. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/mk.js +0 -15
  700. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/nb.js +0 -15
  701. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/nl.js +0 -15
  702. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/no.js +0 -15
  703. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/pl.js +0 -15
  704. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/tr.js +0 -15
  705. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/ug.js +0 -15
  706. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/uk.js +0 -15
  707. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/vi.js +0 -15
  708. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/lang/zh-cn.js +0 -15
  709. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/plugin.js +0 -37
  710. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/uicolor.gif +0 -0
  711. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/yui/assets/hue_bg.png +0 -0
  712. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/yui/assets/hue_thumb.png +0 -0
  713. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/yui/assets/picker_mask.png +0 -0
  714. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/yui/assets/picker_thumb.png +0 -0
  715. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/yui/assets/yui.css +0 -15
  716. data/vendor/assets/ckeditor/ckeditor/_source/plugins/uicolor/yui/yui.js +0 -71
  717. data/vendor/assets/ckeditor/ckeditor/_source/plugins/undo/plugin.js +0 -593
  718. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wsc/dialogs/ciframe.html +0 -49
  719. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wsc/dialogs/tmpFrameset.html +0 -52
  720. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wsc/dialogs/wsc.css +0 -82
  721. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wsc/dialogs/wsc.js +0 -192
  722. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wsc/plugin.js +0 -33
  723. data/vendor/assets/ckeditor/ckeditor/_source/plugins/wysiwygarea/plugin.js +0 -1346
  724. data/vendor/assets/ckeditor/ckeditor/_source/plugins/xml/plugin.js +0 -170
  725. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/dialog.css +0 -989
  726. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/editor.css +0 -25
  727. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/elementspath.css +0 -73
  728. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/icons.css +0 -366
  729. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/icons.png +0 -0
  730. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/icons_rtl.png +0 -0
  731. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/images/dialog_sides.gif +0 -0
  732. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/images/dialog_sides.png +0 -0
  733. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/images/dialog_sides_rtl.png +0 -0
  734. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/images/mini.gif +0 -0
  735. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/images/sprites.png +0 -0
  736. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/images/sprites_ie6.png +0 -0
  737. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/images/toolbar_start.gif +0 -0
  738. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/mainui.css +0 -206
  739. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/menu.css +0 -232
  740. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/panel.css +0 -217
  741. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/presets.css +0 -49
  742. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/reset.css +0 -85
  743. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/richcombo.css +0 -287
  744. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/skin.js +0 -236
  745. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/templates.css +0 -88
  746. data/vendor/assets/ckeditor/ckeditor/_source/skins/kama/toolbar.css +0 -408
  747. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/dialog.css +0 -891
  748. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/editor.css +0 -25
  749. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/elementspath.css +0 -74
  750. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/icons.css +0 -363
  751. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/icons.png +0 -0
  752. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/icons_rtl.png +0 -0
  753. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/images/dialog_sides.gif +0 -0
  754. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/images/dialog_sides.png +0 -0
  755. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/images/dialog_sides_rtl.png +0 -0
  756. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/images/mini.gif +0 -0
  757. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/images/noimage.png +0 -0
  758. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/images/sprites.png +0 -0
  759. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/images/sprites_ie6.png +0 -0
  760. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/mainui.css +0 -153
  761. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/menu.css +0 -229
  762. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/panel.css +0 -212
  763. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/presets.css +0 -49
  764. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/reset.css +0 -85
  765. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/richcombo.css +0 -309
  766. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/skin.js +0 -74
  767. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/templates.css +0 -87
  768. data/vendor/assets/ckeditor/ckeditor/_source/skins/office2003/toolbar.css +0 -522
  769. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/dialog.css +0 -907
  770. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/editor.css +0 -25
  771. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/elementspath.css +0 -74
  772. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/icons.css +0 -363
  773. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/icons.png +0 -0
  774. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/icons_rtl.png +0 -0
  775. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/images/dialog_sides.gif +0 -0
  776. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/images/dialog_sides.png +0 -0
  777. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/images/dialog_sides_rtl.png +0 -0
  778. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/images/mini.gif +0 -0
  779. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/images/noimage.png +0 -0
  780. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/images/sprites.png +0 -0
  781. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/images/sprites_ie6.png +0 -0
  782. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/images/toolbar_start.gif +0 -0
  783. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/mainui.css +0 -162
  784. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/menu.css +0 -232
  785. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/panel.css +0 -212
  786. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/presets.css +0 -50
  787. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/reset.css +0 -85
  788. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/richcombo.css +0 -302
  789. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/skin.js +0 -70
  790. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/templates.css +0 -87
  791. data/vendor/assets/ckeditor/ckeditor/_source/skins/v2/toolbar.css +0 -465
  792. data/vendor/assets/ckeditor/ckeditor/_source/themes/default/theme.js +0 -407
  793. data/vendor/assets/ckeditor/ckeditor/adapters/jquery.js +0 -6
  794. data/vendor/assets/ckeditor/ckeditor/ckeditor.asp +0 -955
  795. data/vendor/assets/ckeditor/ckeditor/ckeditor.pack +0 -211
  796. data/vendor/assets/ckeditor/ckeditor/ckeditor.php +0 -29
  797. data/vendor/assets/ckeditor/ckeditor/ckeditor_basic.js +0 -8
  798. data/vendor/assets/ckeditor/ckeditor/ckeditor_basic_source.js +0 -20
  799. data/vendor/assets/ckeditor/ckeditor/ckeditor_php4.php +0 -566
  800. data/vendor/assets/ckeditor/ckeditor/ckeditor_php5.php +0 -556
  801. data/vendor/assets/ckeditor/ckeditor/ckeditor_source.js +0 -35
  802. data/vendor/assets/ckeditor/ckeditor/lang/_languages.js +0 -6
  803. data/vendor/assets/ckeditor/ckeditor/lang/_translationstatus.txt +0 -63
  804. data/vendor/assets/ckeditor/ckeditor/lang/af.js +0 -6
  805. data/vendor/assets/ckeditor/ckeditor/lang/ar.js +0 -6
  806. data/vendor/assets/ckeditor/ckeditor/lang/bg.js +0 -6
  807. data/vendor/assets/ckeditor/ckeditor/lang/bn.js +0 -6
  808. data/vendor/assets/ckeditor/ckeditor/lang/bs.js +0 -6
  809. data/vendor/assets/ckeditor/ckeditor/lang/ca.js +0 -6
  810. data/vendor/assets/ckeditor/ckeditor/lang/cs.js +0 -6
  811. data/vendor/assets/ckeditor/ckeditor/lang/cy.js +0 -6
  812. data/vendor/assets/ckeditor/ckeditor/lang/da.js +0 -6
  813. data/vendor/assets/ckeditor/ckeditor/lang/de.js +0 -6
  814. data/vendor/assets/ckeditor/ckeditor/lang/el.js +0 -6
  815. data/vendor/assets/ckeditor/ckeditor/lang/en-au.js +0 -6
  816. data/vendor/assets/ckeditor/ckeditor/lang/en-ca.js +0 -6
  817. data/vendor/assets/ckeditor/ckeditor/lang/en-gb.js +0 -6
  818. data/vendor/assets/ckeditor/ckeditor/lang/eo.js +0 -6
  819. data/vendor/assets/ckeditor/ckeditor/lang/es.js +0 -6
  820. data/vendor/assets/ckeditor/ckeditor/lang/et.js +0 -6
  821. data/vendor/assets/ckeditor/ckeditor/lang/eu.js +0 -6
  822. data/vendor/assets/ckeditor/ckeditor/lang/fa.js +0 -6
  823. data/vendor/assets/ckeditor/ckeditor/lang/fi.js +0 -6
  824. data/vendor/assets/ckeditor/ckeditor/lang/fo.js +0 -6
  825. data/vendor/assets/ckeditor/ckeditor/lang/fr-ca.js +0 -6
  826. data/vendor/assets/ckeditor/ckeditor/lang/fr.js +0 -6
  827. data/vendor/assets/ckeditor/ckeditor/lang/gl.js +0 -6
  828. data/vendor/assets/ckeditor/ckeditor/lang/gu.js +0 -6
  829. data/vendor/assets/ckeditor/ckeditor/lang/he.js +0 -6
  830. data/vendor/assets/ckeditor/ckeditor/lang/hi.js +0 -6
  831. data/vendor/assets/ckeditor/ckeditor/lang/hr.js +0 -6
  832. data/vendor/assets/ckeditor/ckeditor/lang/hu.js +0 -6
  833. data/vendor/assets/ckeditor/ckeditor/lang/is.js +0 -6
  834. data/vendor/assets/ckeditor/ckeditor/lang/it.js +0 -6
  835. data/vendor/assets/ckeditor/ckeditor/lang/ja.js +0 -6
  836. data/vendor/assets/ckeditor/ckeditor/lang/ka.js +0 -6
  837. data/vendor/assets/ckeditor/ckeditor/lang/km.js +0 -6
  838. data/vendor/assets/ckeditor/ckeditor/lang/ko.js +0 -6
  839. data/vendor/assets/ckeditor/ckeditor/lang/lt.js +0 -6
  840. data/vendor/assets/ckeditor/ckeditor/lang/lv.js +0 -6
  841. data/vendor/assets/ckeditor/ckeditor/lang/mk.js +0 -6
  842. data/vendor/assets/ckeditor/ckeditor/lang/mn.js +0 -6
  843. data/vendor/assets/ckeditor/ckeditor/lang/ms.js +0 -6
  844. data/vendor/assets/ckeditor/ckeditor/lang/nb.js +0 -6
  845. data/vendor/assets/ckeditor/ckeditor/lang/nl.js +0 -6
  846. data/vendor/assets/ckeditor/ckeditor/lang/no.js +0 -6
  847. data/vendor/assets/ckeditor/ckeditor/lang/pl.js +0 -6
  848. data/vendor/assets/ckeditor/ckeditor/lang/pt-br.js +0 -6
  849. data/vendor/assets/ckeditor/ckeditor/lang/pt.js +0 -6
  850. data/vendor/assets/ckeditor/ckeditor/lang/ro.js +0 -6
  851. data/vendor/assets/ckeditor/ckeditor/lang/ru.js +0 -6
  852. data/vendor/assets/ckeditor/ckeditor/lang/sk.js +0 -6
  853. data/vendor/assets/ckeditor/ckeditor/lang/sl.js +0 -6
  854. data/vendor/assets/ckeditor/ckeditor/lang/sr-latn.js +0 -6
  855. data/vendor/assets/ckeditor/ckeditor/lang/sr.js +0 -6
  856. data/vendor/assets/ckeditor/ckeditor/lang/sv.js +0 -6
  857. data/vendor/assets/ckeditor/ckeditor/lang/th.js +0 -6
  858. data/vendor/assets/ckeditor/ckeditor/lang/tr.js +0 -6
  859. data/vendor/assets/ckeditor/ckeditor/lang/ug.js +0 -6
  860. data/vendor/assets/ckeditor/ckeditor/lang/uk.js +0 -6
  861. data/vendor/assets/ckeditor/ckeditor/lang/vi.js +0 -6
  862. data/vendor/assets/ckeditor/ckeditor/lang/zh-cn.js +0 -6
  863. data/vendor/assets/ckeditor/ckeditor/lang/zh.js +0 -6
  864. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/_translationstatus.txt +0 -23
  865. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/cs.js +0 -6
  866. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/cy.js +0 -6
  867. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/da.js +0 -6
  868. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/de.js +0 -6
  869. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/el.js +0 -6
  870. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/en.js +0 -6
  871. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/eo.js +0 -6
  872. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/fa.js +0 -6
  873. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/fi.js +0 -6
  874. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/fr.js +0 -6
  875. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/gu.js +0 -6
  876. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/he.js +0 -6
  877. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/it.js +0 -6
  878. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/mk.js +0 -6
  879. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/nb.js +0 -6
  880. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/nl.js +0 -6
  881. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/no.js +0 -6
  882. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/tr.js +0 -6
  883. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/ug.js +0 -6
  884. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/vi.js +0 -6
  885. data/vendor/assets/ckeditor/ckeditor/plugins/a11yhelp/lang/zh-cn.js +0 -6
  886. data/vendor/assets/ckeditor/ckeditor/plugins/adobeair/plugin.js +0 -6
  887. data/vendor/assets/ckeditor/ckeditor/plugins/ajax/plugin.js +0 -6
  888. data/vendor/assets/ckeditor/ckeditor/plugins/autogrow/plugin.js +0 -6
  889. data/vendor/assets/ckeditor/ckeditor/plugins/bbcode/plugin.js +0 -9
  890. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/_translationstatus.txt +0 -27
  891. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/bg.js +0 -6
  892. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/cs.js +0 -6
  893. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/cy.js +0 -6
  894. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/da.js +0 -6
  895. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/de.js +0 -6
  896. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/el.js +0 -6
  897. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/en.js +0 -6
  898. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/eo.js +0 -6
  899. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/et.js +0 -6
  900. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/fa.js +0 -6
  901. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/fi.js +0 -6
  902. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/fr.js +0 -6
  903. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/gu.js +0 -6
  904. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/he.js +0 -6
  905. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/hr.js +0 -6
  906. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/it.js +0 -6
  907. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/nb.js +0 -6
  908. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/nl.js +0 -6
  909. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/no.js +0 -6
  910. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/pl.js +0 -6
  911. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/tr.js +0 -6
  912. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/ug.js +0 -6
  913. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/uk.js +0 -6
  914. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/vi.js +0 -6
  915. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/lang/zh-cn.js +0 -6
  916. data/vendor/assets/ckeditor/ckeditor/plugins/devtools/plugin.js +0 -6
  917. data/vendor/assets/ckeditor/ckeditor/plugins/docprops/dialogs/docprops.js +0 -10
  918. data/vendor/assets/ckeditor/ckeditor/plugins/docprops/plugin.js +0 -6
  919. data/vendor/assets/ckeditor/ckeditor/plugins/iframedialog/plugin.js +0 -6
  920. data/vendor/assets/ckeditor/ckeditor/plugins/link/images/anchor.gif +0 -0
  921. data/vendor/assets/ckeditor/ckeditor/plugins/pastetext/dialogs/pastetext.js +0 -6
  922. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/dialogs/placeholder.js +0 -6
  923. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/_translationstatus.txt +0 -26
  924. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/bg.js +0 -6
  925. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/cs.js +0 -6
  926. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/cy.js +0 -6
  927. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/da.js +0 -6
  928. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/de.js +0 -6
  929. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/el.js +0 -6
  930. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/en.js +0 -6
  931. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/eo.js +0 -6
  932. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/et.js +0 -6
  933. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/fa.js +0 -6
  934. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/fi.js +0 -6
  935. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/fr.js +0 -6
  936. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/he.js +0 -6
  937. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/hr.js +0 -6
  938. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/it.js +0 -6
  939. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/nb.js +0 -6
  940. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/nl.js +0 -6
  941. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/no.js +0 -6
  942. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/pl.js +0 -6
  943. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/tr.js +0 -6
  944. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/ug.js +0 -6
  945. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/uk.js +0 -6
  946. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/vi.js +0 -6
  947. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/lang/zh-cn.js +0 -6
  948. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/placeholder.gif +0 -0
  949. data/vendor/assets/ckeditor/ckeditor/plugins/placeholder/plugin.js +0 -6
  950. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/_translationstatus.txt +0 -19
  951. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/cs.js +0 -6
  952. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/cy.js +0 -6
  953. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/de.js +0 -6
  954. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/en.js +0 -6
  955. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/eo.js +0 -6
  956. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/et.js +0 -6
  957. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/fa.js +0 -6
  958. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/fi.js +0 -6
  959. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/fr.js +0 -6
  960. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/hr.js +0 -6
  961. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/it.js +0 -6
  962. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/nb.js +0 -6
  963. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/nl.js +0 -6
  964. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/no.js +0 -6
  965. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/tr.js +0 -6
  966. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/ug.js +0 -6
  967. data/vendor/assets/ckeditor/ckeditor/plugins/specialchar/lang/zh-cn.js +0 -6
  968. data/vendor/assets/ckeditor/ckeditor/plugins/styles/styles/default.js +0 -6
  969. data/vendor/assets/ckeditor/ckeditor/plugins/stylesheetparser/plugin.js +0 -6
  970. data/vendor/assets/ckeditor/ckeditor/plugins/tableresize/plugin.js +0 -7
  971. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/dialogs/uicolor.js +0 -7
  972. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/_translationstatus.txt +0 -27
  973. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/bg.js +0 -6
  974. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/cs.js +0 -6
  975. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/cy.js +0 -6
  976. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/da.js +0 -6
  977. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/de.js +0 -6
  978. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/el.js +0 -6
  979. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/en.js +0 -6
  980. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/eo.js +0 -6
  981. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/et.js +0 -6
  982. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/fa.js +0 -6
  983. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/fi.js +0 -6
  984. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/fr.js +0 -6
  985. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/he.js +0 -6
  986. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/hr.js +0 -6
  987. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/it.js +0 -6
  988. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/mk.js +0 -6
  989. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/nb.js +0 -6
  990. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/nl.js +0 -6
  991. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/no.js +0 -6
  992. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/pl.js +0 -6
  993. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/tr.js +0 -6
  994. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/ug.js +0 -6
  995. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/uk.js +0 -6
  996. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/vi.js +0 -6
  997. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/lang/zh-cn.js +0 -6
  998. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/plugin.js +0 -6
  999. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/uicolor.gif +0 -0
  1000. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/yui/assets/hue_bg.png +0 -0
  1001. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/yui/assets/hue_thumb.png +0 -0
  1002. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/yui/assets/picker_mask.png +0 -0
  1003. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/yui/assets/picker_thumb.png +0 -0
  1004. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/yui/assets/yui.css +0 -6
  1005. data/vendor/assets/ckeditor/ckeditor/plugins/uicolor/yui/yui.js +0 -76
  1006. data/vendor/assets/ckeditor/ckeditor/plugins/xml/plugin.js +0 -6
  1007. data/vendor/assets/ckeditor/ckeditor/skins/kama/dialog.css +0 -10
  1008. data/vendor/assets/ckeditor/ckeditor/skins/kama/editor.css +0 -13
  1009. data/vendor/assets/ckeditor/ckeditor/skins/kama/icons.png +0 -0
  1010. data/vendor/assets/ckeditor/ckeditor/skins/kama/icons_rtl.png +0 -0
  1011. data/vendor/assets/ckeditor/ckeditor/skins/kama/images/dialog_sides.gif +0 -0
  1012. data/vendor/assets/ckeditor/ckeditor/skins/kama/images/dialog_sides.png +0 -0
  1013. data/vendor/assets/ckeditor/ckeditor/skins/kama/images/dialog_sides_rtl.png +0 -0
  1014. data/vendor/assets/ckeditor/ckeditor/skins/kama/images/mini.gif +0 -0
  1015. data/vendor/assets/ckeditor/ckeditor/skins/kama/images/noimage.png +0 -0
  1016. data/vendor/assets/ckeditor/ckeditor/skins/kama/images/sprites.png +0 -0
  1017. data/vendor/assets/ckeditor/ckeditor/skins/kama/images/sprites_ie6.png +0 -0
  1018. data/vendor/assets/ckeditor/ckeditor/skins/kama/images/toolbar_start.gif +0 -0
  1019. data/vendor/assets/ckeditor/ckeditor/skins/kama/skin.js +0 -7
  1020. data/vendor/assets/ckeditor/ckeditor/skins/kama/templates.css +0 -6
  1021. data/vendor/assets/ckeditor/ckeditor/skins/office2003/dialog.css +0 -9
  1022. data/vendor/assets/ckeditor/ckeditor/skins/office2003/editor.css +0 -14
  1023. data/vendor/assets/ckeditor/ckeditor/skins/office2003/icons.png +0 -0
  1024. data/vendor/assets/ckeditor/ckeditor/skins/office2003/icons_rtl.png +0 -0
  1025. data/vendor/assets/ckeditor/ckeditor/skins/office2003/images/dialog_sides.gif +0 -0
  1026. data/vendor/assets/ckeditor/ckeditor/skins/office2003/images/dialog_sides.png +0 -0
  1027. data/vendor/assets/ckeditor/ckeditor/skins/office2003/images/dialog_sides_rtl.png +0 -0
  1028. data/vendor/assets/ckeditor/ckeditor/skins/office2003/images/mini.gif +0 -0
  1029. data/vendor/assets/ckeditor/ckeditor/skins/office2003/images/noimage.png +0 -0
  1030. data/vendor/assets/ckeditor/ckeditor/skins/office2003/images/sprites.png +0 -0
  1031. data/vendor/assets/ckeditor/ckeditor/skins/office2003/images/sprites_ie6.png +0 -0
  1032. data/vendor/assets/ckeditor/ckeditor/skins/office2003/skin.js +0 -6
  1033. data/vendor/assets/ckeditor/ckeditor/skins/office2003/templates.css +0 -6
  1034. data/vendor/assets/ckeditor/ckeditor/skins/v2/dialog.css +0 -9
  1035. data/vendor/assets/ckeditor/ckeditor/skins/v2/editor.css +0 -13
  1036. data/vendor/assets/ckeditor/ckeditor/skins/v2/icons.png +0 -0
  1037. data/vendor/assets/ckeditor/ckeditor/skins/v2/icons_rtl.png +0 -0
  1038. data/vendor/assets/ckeditor/ckeditor/skins/v2/images/dialog_sides.gif +0 -0
  1039. data/vendor/assets/ckeditor/ckeditor/skins/v2/images/dialog_sides.png +0 -0
  1040. data/vendor/assets/ckeditor/ckeditor/skins/v2/images/dialog_sides_rtl.png +0 -0
  1041. data/vendor/assets/ckeditor/ckeditor/skins/v2/images/mini.gif +0 -0
  1042. data/vendor/assets/ckeditor/ckeditor/skins/v2/images/noimage.png +0 -0
  1043. data/vendor/assets/ckeditor/ckeditor/skins/v2/images/sprites.png +0 -0
  1044. data/vendor/assets/ckeditor/ckeditor/skins/v2/images/sprites_ie6.png +0 -0
  1045. data/vendor/assets/ckeditor/ckeditor/skins/v2/images/toolbar_start.gif +0 -0
  1046. data/vendor/assets/ckeditor/ckeditor/skins/v2/skin.js +0 -6
  1047. data/vendor/assets/ckeditor/ckeditor/skins/v2/templates.css +0 -6
  1048. data/vendor/assets/ckeditor/ckeditor/themes/default/theme.js +0 -8
@@ -1,126 +0,0 @@
1
- /*
2
- Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved.
3
- For licensing, see LICENSE.html or http://ckeditor.com/license
4
- */
5
-
6
- CKEDITOR.plugins.setLang( 'specialchar', 'zh-cn',
7
- {
8
- euro: '欧元符号',
9
- lsquo: '左单引号',
10
- rsquo: '右单引号',
11
- ldquo: '左双引号',
12
- rdquo: '右双引号',
13
- ndash: '短划线',
14
- mdash: '破折号',
15
- iexcl: '竖翻叹号',
16
- cent: '分币标记',
17
- pound: '英镑标记',
18
- curren: '货币标记',
19
- yen: '日元标记',
20
- brvbar: '间断条',
21
- sect: '节标记',
22
- uml: '分音符',
23
- copy: '版权所有标记',
24
- ordf: '阴性顺序指示符',
25
- laquo: '左指双尖引号',
26
- not: '非标记',
27
- reg: '注册标记',
28
- macr: '长音符',
29
- deg: '度标记',
30
- sup2: '上标二',
31
- sup3: '上标三',
32
- acute: '锐音符',
33
- micro: '微符',
34
- para: '段落标记',
35
- middot: '中间点',
36
- cedil: '下加符',
37
- sup1: '上标一',
38
- ordm: '阳性顺序指示符',
39
- raquo: '右指双尖引号',
40
- frac14: '普通分数四分之一',
41
- frac12: '普通分数二分之一',
42
- frac34: '普通分数四分之三',
43
- iquest: '竖翻问号',
44
- Agrave: '带抑音符的拉丁文大写字母 A',
45
- Aacute: '带锐音符的拉丁文大写字母 A',
46
- Acirc: '带扬抑符的拉丁文大写字母 A',
47
- Atilde: '带颚化符的拉丁文大写字母 A',
48
- Auml: '带分音符的拉丁文大写字母 A',
49
- Aring: '带上圆圈的拉丁文大写字母 A',
50
- AElig: '拉丁文大写字母 Ae',
51
- Ccedil: '带下加符的拉丁文大写字母 C',
52
- Egrave: '带抑音符的拉丁文大写字母 E',
53
- Eacute: '带锐音符的拉丁文大写字母 E',
54
- Ecirc: '带扬抑符的拉丁文大写字母 E',
55
- Euml: '带分音符的拉丁文大写字母 E',
56
- Igrave: '带抑音符的拉丁文大写字母 I',
57
- Iacute: '带锐音符的拉丁文大写字母 I',
58
- Icirc: '带扬抑符的拉丁文大写字母 I',
59
- Iuml: '带分音符的拉丁文大写字母 I',
60
- ETH: '拉丁文大写字母 Eth',
61
- Ntilde: '带颚化符的拉丁文大写字母 N',
62
- Ograve: '带抑音符的拉丁文大写字母 O',
63
- Oacute: '带锐音符的拉丁文大写字母 O',
64
- Ocirc: '带扬抑符的拉丁文大写字母 O',
65
- Otilde: '带颚化符的拉丁文大写字母 O',
66
- Ouml: '带分音符的拉丁文大写字母 O',
67
- times: '乘号',
68
- Oslash: '带粗线的拉丁文大写字母 O',
69
- Ugrave: '带抑音符的拉丁文大写字母 U',
70
- Uacute: '带锐音符的拉丁文大写字母 U',
71
- Ucirc: '带扬抑符的拉丁文大写字母 U',
72
- Uuml: '带分音符的拉丁文大写字母 U',
73
- Yacute: '带抑音符的拉丁文大写字母 Y',
74
- THORN: '拉丁文大写字母 Thorn',
75
- szlig: '拉丁文小写字母清音 S',
76
- agrave: '带抑音符的拉丁文小写字母 A',
77
- aacute: '带锐音符的拉丁文小写字母 A',
78
- acirc: '带扬抑符的拉丁文小写字母 A',
79
- atilde: '带颚化符的拉丁文小写字母 A',
80
- auml: '带分音符的拉丁文小写字母 A',
81
- aring: '带上圆圈的拉丁文小写字母 A',
82
- aelig: '拉丁文小写字母 Ae',
83
- ccedil: '带下加符的拉丁文小写字母 C',
84
- egrave: '带抑音符的拉丁文小写字母 E',
85
- eacute: '带锐音符的拉丁文小写字母 E',
86
- ecirc: '带扬抑符的拉丁文小写字母 E',
87
- euml: '带分音符的拉丁文小写字母 E',
88
- igrave: '带抑音符的拉丁文小写字母 I',
89
- iacute: '带锐音符的拉丁文小写字母 I',
90
- icirc: '带扬抑符的拉丁文小写字母 I',
91
- iuml: '带分音符的拉丁文小写字母 I',
92
- eth: '拉丁文小写字母 Eth',
93
- ntilde: '带颚化符的拉丁文小写字母 N',
94
- ograve: '带抑音符的拉丁文小写字母 O',
95
- oacute: '带锐音符的拉丁文小写字母 O',
96
- ocirc: '带扬抑符的拉丁文小写字母 O',
97
- otilde: '带颚化符的拉丁文小写字母 O',
98
- ouml: '带分音符的拉丁文小写字母 O',
99
- divide: '除号',
100
- oslash: '带粗线的拉丁文小写字母 O',
101
- ugrave: '带抑音符的拉丁文小写字母 U',
102
- uacute: '带锐音符的拉丁文小写字母 U',
103
- ucirc: '带扬抑符的拉丁文小写字母 U',
104
- uuml: '带分音符的拉丁文小写字母 U',
105
- yacute: '带抑音符的拉丁文小写字母 Y',
106
- thorn: '拉丁文小写字母 Thorn',
107
- yuml: '带分音符的拉丁文小写字母 Y',
108
- OElig: '拉丁文大写连字 Oe',
109
- oelig: '拉丁文小写连字 Oe',
110
- '372': '带扬抑符的拉丁文大写字母 W',
111
- '374': '带扬抑符的拉丁文大写字母 Y',
112
- '373': '带扬抑符的拉丁文小写字母 W',
113
- '375': '带扬抑符的拉丁文小写字母 Y',
114
- sbquo: '单下 9 形引号',
115
- '8219': '单高横翻 9 形引号',
116
- bdquo: '双下 9 形引号',
117
- hellip: '水平省略号',
118
- trade: '商标标志',
119
- '9658': '实心右指指针',
120
- bull: '加重号',
121
- rarr: '向右箭头',
122
- rArr: '向右双线箭头',
123
- hArr: '左右双线箭头',
124
- diams: '实心方块纸牌',
125
- asymp: '约等于'
126
- });
@@ -1,70 +0,0 @@
1
- /*
2
- Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved.
3
- For licensing, see LICENSE.html or http://ckeditor.com/license
4
- */
5
-
6
- /**
7
- * @file Special Character plugin
8
- */
9
-
10
- CKEDITOR.plugins.add( 'specialchar',
11
- {
12
- // List of available localizations.
13
- availableLangs : { cs:1, cy:1, de:1, en:1, eo:1, et:1, fa:1, fi:1, fr:1, hr:1, it:1, nb:1, nl:1, no:1, tr:1, ug:1, 'zh-cn':1 },
14
-
15
- init : function( editor )
16
- {
17
- var pluginName = 'specialchar',
18
- plugin = this;
19
-
20
- // Register the dialog.
21
- CKEDITOR.dialog.add( pluginName, this.path + 'dialogs/specialchar.js' );
22
-
23
- editor.addCommand( pluginName,
24
- {
25
- exec : function()
26
- {
27
- var langCode = editor.langCode;
28
- langCode = plugin.availableLangs[ langCode ] ? langCode : 'en';
29
-
30
- CKEDITOR.scriptLoader.load(
31
- CKEDITOR.getUrl( plugin.path + 'lang/' + langCode + '.js' ),
32
- function()
33
- {
34
- CKEDITOR.tools.extend( editor.lang.specialChar, plugin.langEntries[ langCode ] );
35
- editor.openDialog( pluginName );
36
- });
37
- },
38
- modes : { wysiwyg:1 },
39
- canUndo : false
40
- });
41
-
42
- // Register the toolbar button.
43
- editor.ui.addButton( 'SpecialChar',
44
- {
45
- label : editor.lang.specialChar.toolbar,
46
- command : pluginName
47
- });
48
- }
49
- } );
50
-
51
- /**
52
- * The list of special characters visible in the Special Character dialog window.
53
- * @type Array
54
- * @example
55
- * config.specialChars = [ '"', '’', [ '&custom;', 'Custom label' ] ];
56
- * config.specialChars = config.specialChars.concat( [ '"', [ '’', 'Custom label' ] ] );
57
- */
58
- CKEDITOR.config.specialChars =
59
- [
60
- '!','"','#','$','%','&',"'",'(',')','*','+','-','.','/',
61
- '0','1','2','3','4','5','6','7','8','9',':',';',
62
- '<','=','>','?','@',
63
- 'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O',
64
- 'P','Q','R','S','T','U','V','W','X','Y','Z',
65
- '[',']','^','_','`',
66
- 'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p',
67
- 'q','r','s','t','u','v','w','x','y','z',
68
- '{','|','}','~',
69
- "€", "‘", "’", "“", "”", "–", "—", "¡", "¢", "£", "¤", "¥", "¦", "§", "¨", "©", "ª", "«", "¬", "®", "¯", "°", "²", "³", "´", "µ", "¶", "·", "¸", "¹", "º", "»", "¼", "½", "¾", "¿", "À", "Á", "Â", "Ã", "Ä", "Å", "Æ", "Ç", "È", "É", "Ê", "Ë", "Ì", "Í", "Î", "Ï", "Ð", "Ñ", "Ò", "Ó", "Ô", "Õ", "Ö", "×", "Ø", "Ù", "Ú", "Û", "Ü", "Ý", "Þ", "ß", "à", "á", "â", "ã", "ä", "å", "æ", "ç", "è", "é", "ê", "ë", "ì", "í", "î", "ï", "ð", "ñ", "ò", "ó", "ô", "õ", "ö", "÷", "ø", "ù", "ú", "û", "ü", "ý", "þ", "ÿ", "Œ", "œ", "Ŵ", "&#374", "&#373", "ŷ", "‚", "‛", "„", "…", "™", "►", "•", "→", "⇒", "⇔", "♦", "≈"
70
- ];
@@ -1,1706 +0,0 @@
1
- /*
2
- Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved.
3
- For licensing, see LICENSE.html or http://ckeditor.com/license
4
- */
5
-
6
- CKEDITOR.plugins.add( 'styles',
7
- {
8
- requires : [ 'selection' ],
9
- init : function( editor )
10
- {
11
- // This doesn't look like correct, but it's the safest way to proper
12
- // pass the disableReadonlyStyling configuration to the style system
13
- // without having to change any method signature in the API. (#6103)
14
- editor.on( 'contentDom', function()
15
- {
16
- editor.document.setCustomData( 'cke_includeReadonly', !editor.config.disableReadonlyStyling );
17
- });
18
- }
19
- });
20
-
21
- /**
22
- * Registers a function to be called whenever the selection position changes in the
23
- * editing area. The current state is passed to the function. The possible
24
- * states are {@link CKEDITOR.TRISTATE_ON} and {@link CKEDITOR.TRISTATE_OFF}.
25
- * @param {CKEDITOR.style} style The style to be watched.
26
- * @param {Function} callback The function to be called.
27
- * @example
28
- * // Create a style object for the <b> element.
29
- * var style = new CKEDITOR.style( { element : 'b' } );
30
- * var editor = CKEDITOR.instances.editor1;
31
- * editor.attachStyleStateChange( style, function( state )
32
- * {
33
- * if ( state == CKEDITOR.TRISTATE_ON )
34
- * alert( 'The current state for the B element is ON' );
35
- * else
36
- * alert( 'The current state for the B element is OFF' );
37
- * });
38
- */
39
- CKEDITOR.editor.prototype.attachStyleStateChange = function( style, callback )
40
- {
41
- // Try to get the list of attached callbacks.
42
- var styleStateChangeCallbacks = this._.styleStateChangeCallbacks;
43
-
44
- // If it doesn't exist, it means this is the first call. So, let's create
45
- // all the structure to manage the style checks and the callback calls.
46
- if ( !styleStateChangeCallbacks )
47
- {
48
- // Create the callbacks array.
49
- styleStateChangeCallbacks = this._.styleStateChangeCallbacks = [];
50
-
51
- // Attach to the selectionChange event, so we can check the styles at
52
- // that point.
53
- this.on( 'selectionChange', function( ev )
54
- {
55
- // Loop throw all registered callbacks.
56
- for ( var i = 0 ; i < styleStateChangeCallbacks.length ; i++ )
57
- {
58
- var callback = styleStateChangeCallbacks[ i ];
59
-
60
- // Check the current state for the style defined for that
61
- // callback.
62
- var currentState = callback.style.checkActive( ev.data.path ) ? CKEDITOR.TRISTATE_ON : CKEDITOR.TRISTATE_OFF;
63
-
64
- // Call the callback function, passing the current
65
- // state to it.
66
- callback.fn.call( this, currentState );
67
- }
68
- });
69
- }
70
-
71
- // Save the callback info, so it can be checked on the next occurrence of
72
- // selectionChange.
73
- styleStateChangeCallbacks.push( { style : style, fn : callback } );
74
- };
75
-
76
- CKEDITOR.STYLE_BLOCK = 1;
77
- CKEDITOR.STYLE_INLINE = 2;
78
- CKEDITOR.STYLE_OBJECT = 3;
79
-
80
- (function()
81
- {
82
- var blockElements = { address:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,p:1,pre:1,section:1,header:1,footer:1,nav:1,article:1,aside:1,figure:1,dialog:1,hgroup:1,time:1,meter:1,menu:1,command:1,keygen:1,output:1,progress:1,details:1,datagrid:1,datalist:1 },
83
- objectElements = { a:1,embed:1,hr:1,img:1,li:1,object:1,ol:1,table:1,td:1,tr:1,th:1,ul:1,dl:1,dt:1,dd:1,form:1,audio:1,video:1 };
84
-
85
- var semicolonFixRegex = /\s*(?:;\s*|$)/,
86
- varRegex = /#\((.+?)\)/g;
87
-
88
- var notBookmark = CKEDITOR.dom.walker.bookmark( 0, 1 ),
89
- nonWhitespaces = CKEDITOR.dom.walker.whitespaces( 1 );
90
-
91
- CKEDITOR.style = function( styleDefinition, variablesValues )
92
- {
93
- if ( variablesValues )
94
- {
95
- styleDefinition = CKEDITOR.tools.clone( styleDefinition );
96
-
97
- replaceVariables( styleDefinition.attributes, variablesValues );
98
- replaceVariables( styleDefinition.styles, variablesValues );
99
- }
100
-
101
- var element = this.element = styleDefinition.element ?
102
- ( typeof styleDefinition.element == 'string' ? styleDefinition.element.toLowerCase() : styleDefinition.element )
103
- : '*';
104
-
105
- this.type =
106
- blockElements[ element ] ?
107
- CKEDITOR.STYLE_BLOCK
108
- : objectElements[ element ] ?
109
- CKEDITOR.STYLE_OBJECT
110
- :
111
- CKEDITOR.STYLE_INLINE;
112
-
113
- // If the 'element' property is an object with a set of possible element, it will be applied like an object style: only to existing elements
114
- if ( typeof this.element == 'object' )
115
- this.type = CKEDITOR.STYLE_OBJECT;
116
-
117
- this._ =
118
- {
119
- definition : styleDefinition
120
- };
121
- };
122
-
123
- CKEDITOR.style.prototype =
124
- {
125
- apply : function( document )
126
- {
127
- applyStyle.call( this, document, false );
128
- },
129
-
130
- remove : function( document )
131
- {
132
- applyStyle.call( this, document, true );
133
- },
134
-
135
- applyToRange : function( range )
136
- {
137
- return ( this.applyToRange =
138
- this.type == CKEDITOR.STYLE_INLINE ?
139
- applyInlineStyle
140
- : this.type == CKEDITOR.STYLE_BLOCK ?
141
- applyBlockStyle
142
- : this.type == CKEDITOR.STYLE_OBJECT ?
143
- applyObjectStyle
144
- : null ).call( this, range );
145
- },
146
-
147
- removeFromRange : function( range )
148
- {
149
- return ( this.removeFromRange =
150
- this.type == CKEDITOR.STYLE_INLINE ?
151
- removeInlineStyle
152
- : this.type == CKEDITOR.STYLE_BLOCK ?
153
- removeBlockStyle
154
- : this.type == CKEDITOR.STYLE_OBJECT ?
155
- removeObjectStyle
156
- : null ).call( this, range );
157
- },
158
-
159
- applyToObject : function( element )
160
- {
161
- setupElement( element, this );
162
- },
163
-
164
- /**
165
- * Get the style state inside an element path. Returns "true" if the
166
- * element is active in the path.
167
- */
168
- checkActive : function( elementPath )
169
- {
170
- switch ( this.type )
171
- {
172
- case CKEDITOR.STYLE_BLOCK :
173
- return this.checkElementRemovable( elementPath.block || elementPath.blockLimit, true );
174
-
175
- case CKEDITOR.STYLE_OBJECT :
176
- case CKEDITOR.STYLE_INLINE :
177
-
178
- var elements = elementPath.elements;
179
-
180
- for ( var i = 0, element ; i < elements.length ; i++ )
181
- {
182
- element = elements[ i ];
183
-
184
- if ( this.type == CKEDITOR.STYLE_INLINE
185
- && ( element == elementPath.block || element == elementPath.blockLimit ) )
186
- continue;
187
-
188
- if( this.type == CKEDITOR.STYLE_OBJECT )
189
- {
190
- var name = element.getName();
191
- if ( !( typeof this.element == 'string' ? name == this.element : name in this.element ) )
192
- continue;
193
- }
194
-
195
- if ( this.checkElementRemovable( element, true ) )
196
- return true;
197
- }
198
- }
199
- return false;
200
- },
201
-
202
- /**
203
- * Whether this style can be applied at the element path.
204
- * @param elementPath
205
- */
206
- checkApplicable : function( elementPath )
207
- {
208
- switch ( this.type )
209
- {
210
- case CKEDITOR.STYLE_INLINE :
211
- case CKEDITOR.STYLE_BLOCK :
212
- break;
213
-
214
- case CKEDITOR.STYLE_OBJECT :
215
- return elementPath.lastElement.getAscendant( this.element, true );
216
- }
217
-
218
- return true;
219
- },
220
-
221
- // Checks if an element, or any of its attributes, is removable by the
222
- // current style definition.
223
- checkElementRemovable : function( element, fullMatch )
224
- {
225
- var def = this._.definition;
226
-
227
- if ( !element || !def.ignoreReadonly && element.isReadOnly() )
228
- return false;
229
-
230
- var attribs,
231
- name = element.getName();
232
-
233
- // If the element name is the same as the style name.
234
- if ( typeof this.element == 'string' ? name == this.element : name in this.element )
235
- {
236
- // If no attributes are defined in the element.
237
- if ( !fullMatch && !element.hasAttributes() )
238
- return true;
239
-
240
- attribs = getAttributesForComparison( def );
241
-
242
- if ( attribs._length )
243
- {
244
- for ( var attName in attribs )
245
- {
246
- if ( attName == '_length' )
247
- continue;
248
-
249
- var elementAttr = element.getAttribute( attName ) || '';
250
-
251
- // Special treatment for 'style' attribute is required.
252
- if ( attName == 'style' ?
253
- compareCssText( attribs[ attName ], normalizeCssText( elementAttr, false ) )
254
- : attribs[ attName ] == elementAttr )
255
- {
256
- if ( !fullMatch )
257
- return true;
258
- }
259
- else if ( fullMatch )
260
- return false;
261
- }
262
- if ( fullMatch )
263
- return true;
264
- }
265
- else
266
- return true;
267
- }
268
-
269
- // Check if the element can be somehow overriden.
270
- var override = getOverrides( this )[ element.getName() ] ;
271
- if ( override )
272
- {
273
- // If no attributes have been defined, remove the element.
274
- if ( !( attribs = override.attributes ) )
275
- return true;
276
-
277
- for ( var i = 0 ; i < attribs.length ; i++ )
278
- {
279
- attName = attribs[i][0];
280
- var actualAttrValue = element.getAttribute( attName );
281
- if ( actualAttrValue )
282
- {
283
- var attValue = attribs[i][1];
284
-
285
- // Remove the attribute if:
286
- // - The override definition value is null;
287
- // - The override definition value is a string that
288
- // matches the attribute value exactly.
289
- // - The override definition value is a regex that
290
- // has matches in the attribute value.
291
- if ( attValue === null ||
292
- ( typeof attValue == 'string' && actualAttrValue == attValue ) ||
293
- attValue.test( actualAttrValue ) )
294
- return true;
295
- }
296
- }
297
- }
298
- return false;
299
- },
300
-
301
- // Builds the preview HTML based on the styles definition.
302
- buildPreview : function( label )
303
- {
304
- var styleDefinition = this._.definition,
305
- html = [],
306
- elementName = styleDefinition.element;
307
-
308
- // Avoid <bdo> in the preview.
309
- if ( elementName == 'bdo' )
310
- elementName = 'span';
311
-
312
- html = [ '<', elementName ];
313
-
314
- // Assign all defined attributes.
315
- var attribs = styleDefinition.attributes;
316
- if ( attribs )
317
- {
318
- for ( var att in attribs )
319
- {
320
- html.push( ' ', att, '="', attribs[ att ], '"' );
321
- }
322
- }
323
-
324
- // Assign the style attribute.
325
- var cssStyle = CKEDITOR.style.getStyleText( styleDefinition );
326
- if ( cssStyle )
327
- html.push( ' style="', cssStyle, '"' );
328
-
329
- html.push( '>', ( label || styleDefinition.name ), '</', elementName, '>' );
330
-
331
- return html.join( '' );
332
- }
333
- };
334
-
335
- // Build the cssText based on the styles definition.
336
- CKEDITOR.style.getStyleText = function( styleDefinition )
337
- {
338
- // If we have already computed it, just return it.
339
- var stylesDef = styleDefinition._ST;
340
- if ( stylesDef )
341
- return stylesDef;
342
-
343
- stylesDef = styleDefinition.styles;
344
-
345
- // Builds the StyleText.
346
- var stylesText = ( styleDefinition.attributes && styleDefinition.attributes[ 'style' ] ) || '',
347
- specialStylesText = '';
348
-
349
- if ( stylesText.length )
350
- stylesText = stylesText.replace( semicolonFixRegex, ';' );
351
-
352
- for ( var style in stylesDef )
353
- {
354
- var styleVal = stylesDef[ style ],
355
- text = ( style + ':' + styleVal ).replace( semicolonFixRegex, ';' );
356
-
357
- // Some browsers don't support 'inherit' property value, leave them intact. (#5242)
358
- if ( styleVal == 'inherit' )
359
- specialStylesText += text;
360
- else
361
- stylesText += text;
362
- }
363
-
364
- // Browsers make some changes to the style when applying them. So, here
365
- // we normalize it to the browser format.
366
- if ( stylesText.length )
367
- stylesText = normalizeCssText( stylesText );
368
-
369
- stylesText += specialStylesText;
370
-
371
- // Return it, saving it to the next request.
372
- return ( styleDefinition._ST = stylesText );
373
- };
374
-
375
- // Gets the parent element which blocks the styling for an element. This
376
- // can be done through read-only elements (contenteditable=false) or
377
- // elements with the "data-nostyle" attribute.
378
- function getUnstylableParent( element )
379
- {
380
- var unstylable,
381
- editable;
382
-
383
- while ( ( element = element.getParent() ) )
384
- {
385
- if ( element.getName() == 'body' )
386
- break;
387
-
388
- if ( element.getAttribute( 'data-nostyle' ) )
389
- unstylable = element;
390
- else if ( !editable )
391
- {
392
- var contentEditable = element.getAttribute( 'contentEditable' );
393
-
394
- if ( contentEditable == 'false' )
395
- unstylable = element;
396
- else if ( contentEditable == 'true' )
397
- editable = 1;
398
- }
399
- }
400
-
401
- return unstylable;
402
- }
403
-
404
- function applyInlineStyle( range )
405
- {
406
- var document = range.document;
407
-
408
- if ( range.collapsed )
409
- {
410
- // Create the element to be inserted in the DOM.
411
- var collapsedElement = getElement( this, document );
412
-
413
- // Insert the empty element into the DOM at the range position.
414
- range.insertNode( collapsedElement );
415
-
416
- // Place the selection right inside the empty element.
417
- range.moveToPosition( collapsedElement, CKEDITOR.POSITION_BEFORE_END );
418
-
419
- return;
420
- }
421
-
422
- var elementName = this.element;
423
- var def = this._.definition;
424
- var isUnknownElement;
425
-
426
- // Indicates that fully selected read-only elements are to be included in the styling range.
427
- var ignoreReadonly = def.ignoreReadonly,
428
- includeReadonly = ignoreReadonly || def.includeReadonly;
429
-
430
- // If the read-only inclusion is not available in the definition, try
431
- // to get it from the document data.
432
- if ( includeReadonly == undefined )
433
- includeReadonly = document.getCustomData( 'cke_includeReadonly' );
434
-
435
- // Get the DTD definition for the element. Defaults to "span".
436
- var dtd = CKEDITOR.dtd[ elementName ] || ( isUnknownElement = true, CKEDITOR.dtd.span );
437
-
438
- // Expand the range.
439
- range.enlarge( CKEDITOR.ENLARGE_ELEMENT, 1 );
440
- range.trim();
441
-
442
- // Get the first node to be processed and the last, which concludes the
443
- // processing.
444
- var boundaryNodes = range.createBookmark(),
445
- firstNode = boundaryNodes.startNode,
446
- lastNode = boundaryNodes.endNode;
447
-
448
- var currentNode = firstNode;
449
-
450
- var styleRange;
451
-
452
- if ( !ignoreReadonly )
453
- {
454
- // Check if the boundaries are inside non stylable elements.
455
- var firstUnstylable = getUnstylableParent( firstNode ),
456
- lastUnstylable = getUnstylableParent( lastNode );
457
-
458
- // If the first element can't be styled, we'll start processing right
459
- // after its unstylable root.
460
- if ( firstUnstylable )
461
- currentNode = firstUnstylable.getNextSourceNode( true );
462
-
463
- // If the last element can't be styled, we'll stop processing on its
464
- // unstylable root.
465
- if ( lastUnstylable )
466
- lastNode = lastUnstylable;
467
- }
468
-
469
- // Do nothing if the current node now follows the last node to be processed.
470
- if ( currentNode.getPosition( lastNode ) == CKEDITOR.POSITION_FOLLOWING )
471
- currentNode = 0;
472
-
473
- while ( currentNode )
474
- {
475
- var applyStyle = false;
476
-
477
- if ( currentNode.equals( lastNode ) )
478
- {
479
- currentNode = null;
480
- applyStyle = true;
481
- }
482
- else
483
- {
484
- var nodeType = currentNode.type;
485
- var nodeName = nodeType == CKEDITOR.NODE_ELEMENT ? currentNode.getName() : null;
486
- var nodeIsReadonly = nodeName && ( currentNode.getAttribute( 'contentEditable' ) == 'false' );
487
- var nodeIsNoStyle = nodeName && currentNode.getAttribute( 'data-nostyle' );
488
-
489
- if ( nodeName && currentNode.data( 'cke-bookmark' ) )
490
- {
491
- currentNode = currentNode.getNextSourceNode( true );
492
- continue;
493
- }
494
-
495
- // Check if the current node can be a child of the style element.
496
- if ( !nodeName || ( dtd[ nodeName ]
497
- && !nodeIsNoStyle
498
- && ( !nodeIsReadonly || includeReadonly )
499
- && ( currentNode.getPosition( lastNode ) | CKEDITOR.POSITION_PRECEDING | CKEDITOR.POSITION_IDENTICAL | CKEDITOR.POSITION_IS_CONTAINED ) == ( CKEDITOR.POSITION_PRECEDING + CKEDITOR.POSITION_IDENTICAL + CKEDITOR.POSITION_IS_CONTAINED )
500
- && ( !def.childRule || def.childRule( currentNode ) ) ) )
501
- {
502
- var currentParent = currentNode.getParent();
503
-
504
- // Check if the style element can be a child of the current
505
- // node parent or if the element is not defined in the DTD.
506
- if ( currentParent
507
- && ( ( currentParent.getDtd() || CKEDITOR.dtd.span )[ elementName ] || isUnknownElement )
508
- && ( !def.parentRule || def.parentRule( currentParent ) ) )
509
- {
510
- // This node will be part of our range, so if it has not
511
- // been started, place its start right before the node.
512
- // In the case of an element node, it will be included
513
- // only if it is entirely inside the range.
514
- if ( !styleRange && ( !nodeName || !CKEDITOR.dtd.$removeEmpty[ nodeName ] || ( currentNode.getPosition( lastNode ) | CKEDITOR.POSITION_PRECEDING | CKEDITOR.POSITION_IDENTICAL | CKEDITOR.POSITION_IS_CONTAINED ) == ( CKEDITOR.POSITION_PRECEDING + CKEDITOR.POSITION_IDENTICAL + CKEDITOR.POSITION_IS_CONTAINED ) ) )
515
- {
516
- styleRange = new CKEDITOR.dom.range( document );
517
- styleRange.setStartBefore( currentNode );
518
- }
519
-
520
- // Non element nodes, readonly elements, or empty
521
- // elements can be added completely to the range.
522
- if ( nodeType == CKEDITOR.NODE_TEXT || nodeIsReadonly || ( nodeType == CKEDITOR.NODE_ELEMENT && !currentNode.getChildCount() ) )
523
- {
524
- var includedNode = currentNode;
525
- var parentNode;
526
-
527
- // This node is about to be included completelly, but,
528
- // if this is the last node in its parent, we must also
529
- // check if the parent itself can be added completelly
530
- // to the range, otherwise apply the style immediately.
531
- while ( ( applyStyle = !includedNode.getNext( notBookmark ) )
532
- && ( parentNode = includedNode.getParent(), dtd[ parentNode.getName() ] )
533
- && ( parentNode.getPosition( firstNode ) | CKEDITOR.POSITION_FOLLOWING | CKEDITOR.POSITION_IDENTICAL | CKEDITOR.POSITION_IS_CONTAINED ) == ( CKEDITOR.POSITION_FOLLOWING + CKEDITOR.POSITION_IDENTICAL + CKEDITOR.POSITION_IS_CONTAINED )
534
- && ( !def.childRule || def.childRule( parentNode ) ) )
535
- {
536
- includedNode = parentNode;
537
- }
538
-
539
- styleRange.setEndAfter( includedNode );
540
-
541
- }
542
- }
543
- else
544
- applyStyle = true;
545
- }
546
- else
547
- applyStyle = true;
548
-
549
- // Get the next node to be processed.
550
- currentNode = currentNode.getNextSourceNode( nodeIsNoStyle || nodeIsReadonly );
551
- }
552
-
553
- // Apply the style if we have something to which apply it.
554
- if ( applyStyle && styleRange && !styleRange.collapsed )
555
- {
556
- // Build the style element, based on the style object definition.
557
- var styleNode = getElement( this, document ),
558
- styleHasAttrs = styleNode.hasAttributes();
559
-
560
- // Get the element that holds the entire range.
561
- var parent = styleRange.getCommonAncestor();
562
-
563
- var removeList = {
564
- styles : {},
565
- attrs : {},
566
- // Styles cannot be removed.
567
- blockedStyles : {},
568
- // Attrs cannot be removed.
569
- blockedAttrs : {}
570
- };
571
-
572
- var attName, styleName, value;
573
-
574
- // Loop through the parents, removing the redundant attributes
575
- // from the element to be applied.
576
- while ( styleNode && parent )
577
- {
578
- if ( parent.getName() == elementName )
579
- {
580
- for ( attName in def.attributes )
581
- {
582
- if ( removeList.blockedAttrs[ attName ] || !( value = parent.getAttribute( styleName ) ) )
583
- continue;
584
-
585
- if ( styleNode.getAttribute( attName ) == value )
586
- removeList.attrs[ attName ] = 1;
587
- else
588
- removeList.blockedAttrs[ attName ] = 1;
589
- }
590
-
591
- for ( styleName in def.styles )
592
- {
593
- if ( removeList.blockedStyles[ styleName ] || !( value = parent.getStyle( styleName ) ) )
594
- continue;
595
-
596
- if ( styleNode.getStyle( styleName ) == value )
597
- removeList.styles[ styleName ] = 1;
598
- else
599
- removeList.blockedStyles[ styleName ] = 1;
600
- }
601
- }
602
-
603
- parent = parent.getParent();
604
- }
605
-
606
- for ( attName in removeList.attrs )
607
- styleNode.removeAttribute( attName );
608
-
609
- for ( styleName in removeList.styles )
610
- styleNode.removeStyle( styleName );
611
-
612
- if ( styleHasAttrs && !styleNode.hasAttributes() )
613
- styleNode = null;
614
-
615
- if ( styleNode )
616
- {
617
- // Move the contents of the range to the style element.
618
- styleRange.extractContents().appendTo( styleNode );
619
-
620
- // Here we do some cleanup, removing all duplicated
621
- // elements from the style element.
622
- removeFromInsideElement( this, styleNode );
623
-
624
- // Insert it into the range position (it is collapsed after
625
- // extractContents.
626
- styleRange.insertNode( styleNode );
627
-
628
- // Let's merge our new style with its neighbors, if possible.
629
- styleNode.mergeSiblings();
630
-
631
- // As the style system breaks text nodes constantly, let's normalize
632
- // things for performance.
633
- // With IE, some paragraphs get broken when calling normalize()
634
- // repeatedly. Also, for IE, we must normalize body, not documentElement.
635
- // IE is also known for having a "crash effect" with normalize().
636
- // We should try to normalize with IE too in some way, somewhere.
637
- if ( !CKEDITOR.env.ie )
638
- styleNode.$.normalize();
639
- }
640
- // Style already inherit from parents, left just to clear up any internal overrides. (#5931)
641
- else
642
- {
643
- styleNode = new CKEDITOR.dom.element( 'span' );
644
- styleRange.extractContents().appendTo( styleNode );
645
- styleRange.insertNode( styleNode );
646
- removeFromInsideElement( this, styleNode );
647
- styleNode.remove( true );
648
- }
649
-
650
- // Style applied, let's release the range, so it gets
651
- // re-initialization in the next loop.
652
- styleRange = null;
653
- }
654
- }
655
-
656
- // Remove the bookmark nodes.
657
- range.moveToBookmark( boundaryNodes );
658
-
659
- // Minimize the result range to exclude empty text nodes. (#5374)
660
- range.shrink( CKEDITOR.SHRINK_TEXT );
661
- }
662
-
663
- function removeInlineStyle( range )
664
- {
665
- /*
666
- * Make sure our range has included all "collpased" parent inline nodes so
667
- * that our operation logic can be simpler.
668
- */
669
- range.enlarge( CKEDITOR.ENLARGE_ELEMENT, 1 );
670
-
671
- var bookmark = range.createBookmark(),
672
- startNode = bookmark.startNode;
673
-
674
- if ( range.collapsed )
675
- {
676
-
677
- var startPath = new CKEDITOR.dom.elementPath( startNode.getParent() ),
678
- // The topmost element in elementspatch which we should jump out of.
679
- boundaryElement;
680
-
681
-
682
- for ( var i = 0, element ; i < startPath.elements.length
683
- && ( element = startPath.elements[i] ) ; i++ )
684
- {
685
- /*
686
- * 1. If it's collaped inside text nodes, try to remove the style from the whole element.
687
- *
688
- * 2. Otherwise if it's collapsed on element boundaries, moving the selection
689
- * outside the styles instead of removing the whole tag,
690
- * also make sure other inner styles were well preserverd.(#3309)
691
- */
692
- if ( element == startPath.block || element == startPath.blockLimit )
693
- break;
694
-
695
- if ( this.checkElementRemovable( element ) )
696
- {
697
- var isStart;
698
-
699
- if ( range.collapsed && (
700
- range.checkBoundaryOfElement( element, CKEDITOR.END ) ||
701
- ( isStart = range.checkBoundaryOfElement( element, CKEDITOR.START ) ) ) )
702
- {
703
- boundaryElement = element;
704
- boundaryElement.match = isStart ? 'start' : 'end';
705
- }
706
- else
707
- {
708
- /*
709
- * Before removing the style node, there may be a sibling to the style node
710
- * that's exactly the same to the one to be removed. To the user, it makes
711
- * no difference that they're separate entities in the DOM tree. So, merge
712
- * them before removal.
713
- */
714
- element.mergeSiblings();
715
- if ( element.getName() == this.element )
716
- removeFromElement( this, element );
717
- else
718
- removeOverrides( element, getOverrides( this )[ element.getName() ] );
719
- }
720
- }
721
- }
722
-
723
- // Re-create the style tree after/before the boundary element,
724
- // the replication start from bookmark start node to define the
725
- // new range.
726
- if ( boundaryElement )
727
- {
728
- var clonedElement = startNode;
729
- for ( i = 0 ;; i++ )
730
- {
731
- var newElement = startPath.elements[ i ];
732
- if ( newElement.equals( boundaryElement ) )
733
- break;
734
- // Avoid copying any matched element.
735
- else if ( newElement.match )
736
- continue;
737
- else
738
- newElement = newElement.clone();
739
- newElement.append( clonedElement );
740
- clonedElement = newElement;
741
- }
742
- clonedElement[ boundaryElement.match == 'start' ?
743
- 'insertBefore' : 'insertAfter' ]( boundaryElement );
744
- }
745
- }
746
- else
747
- {
748
- /*
749
- * Now our range isn't collapsed. Lets walk from the start node to the end
750
- * node via DFS and remove the styles one-by-one.
751
- */
752
- var endNode = bookmark.endNode,
753
- me = this;
754
-
755
- /*
756
- * Find out the style ancestor that needs to be broken down at startNode
757
- * and endNode.
758
- */
759
- function breakNodes()
760
- {
761
- var startPath = new CKEDITOR.dom.elementPath( startNode.getParent() ),
762
- endPath = new CKEDITOR.dom.elementPath( endNode.getParent() ),
763
- breakStart = null,
764
- breakEnd = null;
765
- for ( var i = 0 ; i < startPath.elements.length ; i++ )
766
- {
767
- var element = startPath.elements[ i ];
768
-
769
- if ( element == startPath.block || element == startPath.blockLimit )
770
- break;
771
-
772
- if ( me.checkElementRemovable( element ) )
773
- breakStart = element;
774
- }
775
- for ( i = 0 ; i < endPath.elements.length ; i++ )
776
- {
777
- element = endPath.elements[ i ];
778
-
779
- if ( element == endPath.block || element == endPath.blockLimit )
780
- break;
781
-
782
- if ( me.checkElementRemovable( element ) )
783
- breakEnd = element;
784
- }
785
-
786
- if ( breakEnd )
787
- endNode.breakParent( breakEnd );
788
- if ( breakStart )
789
- startNode.breakParent( breakStart );
790
- }
791
- breakNodes();
792
-
793
- // Now, do the DFS walk.
794
- var currentNode = startNode;
795
- while ( !currentNode.equals( endNode ) )
796
- {
797
- /*
798
- * Need to get the next node first because removeFromElement() can remove
799
- * the current node from DOM tree.
800
- */
801
- var nextNode = currentNode.getNextSourceNode();
802
- if ( currentNode.type == CKEDITOR.NODE_ELEMENT && this.checkElementRemovable( currentNode ) )
803
- {
804
- // Remove style from element or overriding element.
805
- if ( currentNode.getName() == this.element )
806
- removeFromElement( this, currentNode );
807
- else
808
- removeOverrides( currentNode, getOverrides( this )[ currentNode.getName() ] );
809
-
810
- /*
811
- * removeFromElement() may have merged the next node with something before
812
- * the startNode via mergeSiblings(). In that case, the nextNode would
813
- * contain startNode and we'll have to call breakNodes() again and also
814
- * reassign the nextNode to something after startNode.
815
- */
816
- if ( nextNode.type == CKEDITOR.NODE_ELEMENT && nextNode.contains( startNode ) )
817
- {
818
- breakNodes();
819
- nextNode = startNode.getNext();
820
- }
821
- }
822
- currentNode = nextNode;
823
- }
824
- }
825
-
826
- range.moveToBookmark( bookmark );
827
- }
828
-
829
- function applyObjectStyle( range )
830
- {
831
- var root = range.getCommonAncestor( true, true ),
832
- element = root.getAscendant( this.element, true );
833
- element && !element.isReadOnly() && setupElement( element, this );
834
- }
835
-
836
- function removeObjectStyle( range )
837
- {
838
- var root = range.getCommonAncestor( true, true ),
839
- element = root.getAscendant( this.element, true );
840
-
841
- if ( !element )
842
- return;
843
-
844
- var style = this,
845
- def = style._.definition,
846
- attributes = def.attributes;
847
-
848
- // Remove all defined attributes.
849
- if ( attributes )
850
- {
851
- for ( var att in attributes )
852
- {
853
- element.removeAttribute( att, attributes[ att ] );
854
- }
855
- }
856
-
857
- // Assign all defined styles.
858
- if ( def.styles )
859
- {
860
- for ( var i in def.styles )
861
- {
862
- if ( !def.styles.hasOwnProperty( i ) )
863
- continue;
864
-
865
- element.removeStyle( i );
866
- }
867
- }
868
- }
869
-
870
- function applyBlockStyle( range )
871
- {
872
- // Serializible bookmarks is needed here since
873
- // elements may be merged.
874
- var bookmark = range.createBookmark( true );
875
-
876
- var iterator = range.createIterator();
877
- iterator.enforceRealBlocks = true;
878
-
879
- // make recognize <br /> tag as a separator in ENTER_BR mode (#5121)
880
- if ( this._.enterMode )
881
- iterator.enlargeBr = ( this._.enterMode != CKEDITOR.ENTER_BR );
882
-
883
- var block;
884
- var doc = range.document;
885
- var previousPreBlock;
886
-
887
- while ( ( block = iterator.getNextParagraph() ) ) // Only one =
888
- {
889
- if ( !block.isReadOnly() )
890
- {
891
- var newBlock = getElement( this, doc, block );
892
- replaceBlock( block, newBlock );
893
- }
894
- }
895
-
896
- range.moveToBookmark( bookmark );
897
- }
898
-
899
- function removeBlockStyle( range )
900
- {
901
- // Serializible bookmarks is needed here since
902
- // elements may be merged.
903
- var bookmark = range.createBookmark( 1 );
904
-
905
- var iterator = range.createIterator();
906
- iterator.enforceRealBlocks = true;
907
- iterator.enlargeBr = this._.enterMode != CKEDITOR.ENTER_BR;
908
-
909
- var block;
910
- while ( ( block = iterator.getNextParagraph() ) )
911
- {
912
- if ( this.checkElementRemovable( block ) )
913
- {
914
- // <pre> get special treatment.
915
- if ( block.is( 'pre' ) )
916
- {
917
- var newBlock = this._.enterMode == CKEDITOR.ENTER_BR ?
918
- null : range.document.createElement(
919
- this._.enterMode == CKEDITOR.ENTER_P ? 'p' : 'div' );
920
-
921
- newBlock && block.copyAttributes( newBlock );
922
- replaceBlock( block, newBlock );
923
- }
924
- else
925
- removeFromElement( this, block, 1 );
926
- }
927
- }
928
-
929
- range.moveToBookmark( bookmark );
930
- }
931
-
932
- // Replace the original block with new one, with special treatment
933
- // for <pre> blocks to make sure content format is well preserved, and merging/splitting adjacent
934
- // when necessary.(#3188)
935
- function replaceBlock( block, newBlock )
936
- {
937
- // Block is to be removed, create a temp element to
938
- // save contents.
939
- var removeBlock = !newBlock;
940
- if ( removeBlock )
941
- {
942
- newBlock = block.getDocument().createElement( 'div' );
943
- block.copyAttributes( newBlock );
944
- }
945
-
946
- var newBlockIsPre = newBlock && newBlock.is( 'pre' );
947
- var blockIsPre = block.is( 'pre' );
948
-
949
- var isToPre = newBlockIsPre && !blockIsPre;
950
- var isFromPre = !newBlockIsPre && blockIsPre;
951
-
952
- if ( isToPre )
953
- newBlock = toPre( block, newBlock );
954
- else if ( isFromPre )
955
- // Split big <pre> into pieces before start to convert.
956
- newBlock = fromPres( removeBlock ?
957
- [ block.getHtml() ] : splitIntoPres( block ), newBlock );
958
- else
959
- block.moveChildren( newBlock );
960
-
961
- newBlock.replace( block );
962
-
963
- if ( newBlockIsPre )
964
- {
965
- // Merge previous <pre> blocks.
966
- mergePre( newBlock );
967
- }
968
- else if ( removeBlock )
969
- removeNoAttribsElement( newBlock );
970
- }
971
-
972
- /**
973
- * Merge a <pre> block with a previous sibling if available.
974
- */
975
- function mergePre( preBlock )
976
- {
977
- var previousBlock;
978
- if ( !( ( previousBlock = preBlock.getPrevious( nonWhitespaces ) )
979
- && previousBlock.is
980
- && previousBlock.is( 'pre') ) )
981
- return;
982
-
983
- // Merge the previous <pre> block contents into the current <pre>
984
- // block.
985
- //
986
- // Another thing to be careful here is that currentBlock might contain
987
- // a '\n' at the beginning, and previousBlock might contain a '\n'
988
- // towards the end. These new lines are not normally displayed but they
989
- // become visible after merging.
990
- var mergedHtml = replace( previousBlock.getHtml(), /\n$/, '' ) + '\n\n' +
991
- replace( preBlock.getHtml(), /^\n/, '' ) ;
992
-
993
- // Krugle: IE normalizes innerHTML from <pre>, breaking whitespaces.
994
- if ( CKEDITOR.env.ie )
995
- preBlock.$.outerHTML = '<pre>' + mergedHtml + '</pre>';
996
- else
997
- preBlock.setHtml( mergedHtml );
998
-
999
- previousBlock.remove();
1000
- }
1001
-
1002
- /**
1003
- * Split into multiple <pre> blocks separated by double line-break.
1004
- * @param preBlock
1005
- */
1006
- function splitIntoPres( preBlock )
1007
- {
1008
- // Exclude the ones at header OR at tail,
1009
- // and ignore bookmark content between them.
1010
- var duoBrRegex = /(\S\s*)\n(?:\s|(<span[^>]+data-cke-bookmark.*?\/span>))*\n(?!$)/gi,
1011
- blockName = preBlock.getName(),
1012
- splitedHtml = replace( preBlock.getOuterHtml(),
1013
- duoBrRegex,
1014
- function( match, charBefore, bookmark )
1015
- {
1016
- return charBefore + '</pre>' + bookmark + '<pre>';
1017
- } );
1018
-
1019
- var pres = [];
1020
- splitedHtml.replace( /<pre\b.*?>([\s\S]*?)<\/pre>/gi, function( match, preContent ){
1021
- pres.push( preContent );
1022
- } );
1023
- return pres;
1024
- }
1025
-
1026
- // Wrapper function of String::replace without considering of head/tail bookmarks nodes.
1027
- function replace( str, regexp, replacement )
1028
- {
1029
- var headBookmark = '',
1030
- tailBookmark = '';
1031
-
1032
- str = str.replace( /(^<span[^>]+data-cke-bookmark.*?\/span>)|(<span[^>]+data-cke-bookmark.*?\/span>$)/gi,
1033
- function( str, m1, m2 ){
1034
- m1 && ( headBookmark = m1 );
1035
- m2 && ( tailBookmark = m2 );
1036
- return '';
1037
- } );
1038
- return headBookmark + str.replace( regexp, replacement ) + tailBookmark;
1039
- }
1040
-
1041
- /**
1042
- * Converting a list of <pre> into blocks with format well preserved.
1043
- */
1044
- function fromPres( preHtmls, newBlock )
1045
- {
1046
- var docFrag;
1047
- if ( preHtmls.length > 1 )
1048
- docFrag = new CKEDITOR.dom.documentFragment( newBlock.getDocument() );
1049
-
1050
- for ( var i = 0 ; i < preHtmls.length ; i++ )
1051
- {
1052
- var blockHtml = preHtmls[ i ];
1053
-
1054
- // 1. Trim the first and last line-breaks immediately after and before <pre>,
1055
- // they're not visible.
1056
- blockHtml = blockHtml.replace( /(\r\n|\r)/g, '\n' ) ;
1057
- blockHtml = replace( blockHtml, /^[ \t]*\n/, '' ) ;
1058
- blockHtml = replace( blockHtml, /\n$/, '' ) ;
1059
- // 2. Convert spaces or tabs at the beginning or at the end to &nbsp;
1060
- blockHtml = replace( blockHtml, /^[ \t]+|[ \t]+$/g, function( match, offset, s )
1061
- {
1062
- if ( match.length == 1 ) // one space, preserve it
1063
- return '&nbsp;' ;
1064
- else if ( !offset ) // beginning of block
1065
- return CKEDITOR.tools.repeat( '&nbsp;', match.length - 1 ) + ' ';
1066
- else // end of block
1067
- return ' ' + CKEDITOR.tools.repeat( '&nbsp;', match.length - 1 );
1068
- } ) ;
1069
-
1070
- // 3. Convert \n to <BR>.
1071
- // 4. Convert contiguous (i.e. non-singular) spaces or tabs to &nbsp;
1072
- blockHtml = blockHtml.replace( /\n/g, '<br>' ) ;
1073
- blockHtml = blockHtml.replace( /[ \t]{2,}/g,
1074
- function ( match )
1075
- {
1076
- return CKEDITOR.tools.repeat( '&nbsp;', match.length - 1 ) + ' ' ;
1077
- } ) ;
1078
-
1079
- if ( docFrag )
1080
- {
1081
- var newBlockClone = newBlock.clone();
1082
- newBlockClone.setHtml( blockHtml );
1083
- docFrag.append( newBlockClone );
1084
- }
1085
- else
1086
- newBlock.setHtml( blockHtml );
1087
- }
1088
-
1089
- return docFrag || newBlock;
1090
- }
1091
-
1092
- /**
1093
- * Converting from a non-PRE block to a PRE block in formatting operations.
1094
- */
1095
- function toPre( block, newBlock )
1096
- {
1097
- var bogus = block.getBogus();
1098
- bogus && bogus.remove();
1099
-
1100
- // First trim the block content.
1101
- var preHtml = block.getHtml();
1102
-
1103
- // 1. Trim head/tail spaces, they're not visible.
1104
- preHtml = replace( preHtml, /(?:^[ \t\n\r]+)|(?:[ \t\n\r]+$)/g, '' );
1105
- // 2. Delete ANSI whitespaces immediately before and after <BR> because
1106
- // they are not visible.
1107
- preHtml = preHtml.replace( /[ \t\r\n]*(<br[^>]*>)[ \t\r\n]*/gi, '$1' );
1108
- // 3. Compress other ANSI whitespaces since they're only visible as one
1109
- // single space previously.
1110
- // 4. Convert &nbsp; to spaces since &nbsp; is no longer needed in <PRE>.
1111
- preHtml = preHtml.replace( /([ \t\n\r]+|&nbsp;)/g, ' ' );
1112
- // 5. Convert any <BR /> to \n. This must not be done earlier because
1113
- // the \n would then get compressed.
1114
- preHtml = preHtml.replace( /<br\b[^>]*>/gi, '\n' );
1115
-
1116
- // Krugle: IE normalizes innerHTML to <pre>, breaking whitespaces.
1117
- if ( CKEDITOR.env.ie )
1118
- {
1119
- var temp = block.getDocument().createElement( 'div' );
1120
- temp.append( newBlock );
1121
- newBlock.$.outerHTML = '<pre>' + preHtml + '</pre>';
1122
- newBlock.copyAttributes( temp.getFirst() );
1123
- newBlock = temp.getFirst().remove();
1124
- }
1125
- else
1126
- newBlock.setHtml( preHtml );
1127
-
1128
- return newBlock;
1129
- }
1130
-
1131
- // Removes a style from an element itself, don't care about its subtree.
1132
- function removeFromElement( style, element )
1133
- {
1134
- var def = style._.definition,
1135
- attributes = def.attributes,
1136
- styles = def.styles,
1137
- overrides = getOverrides( style )[ element.getName() ],
1138
- // If the style is only about the element itself, we have to remove the element.
1139
- removeEmpty = CKEDITOR.tools.isEmpty( attributes ) && CKEDITOR.tools.isEmpty( styles );
1140
-
1141
- // Remove definition attributes/style from the elemnt.
1142
- for ( var attName in attributes )
1143
- {
1144
- // The 'class' element value must match (#1318).
1145
- if ( ( attName == 'class' || style._.definition.fullMatch )
1146
- && element.getAttribute( attName ) != normalizeProperty( attName, attributes[ attName ] ) )
1147
- continue;
1148
- removeEmpty = element.hasAttribute( attName );
1149
- element.removeAttribute( attName );
1150
- }
1151
-
1152
- for ( var styleName in styles )
1153
- {
1154
- // Full match style insist on having fully equivalence. (#5018)
1155
- if ( style._.definition.fullMatch
1156
- && element.getStyle( styleName ) != normalizeProperty( styleName, styles[ styleName ], true ) )
1157
- continue;
1158
-
1159
- removeEmpty = removeEmpty || !!element.getStyle( styleName );
1160
- element.removeStyle( styleName );
1161
- }
1162
-
1163
- // Remove overrides, but don't remove the element if it's a block element
1164
- removeOverrides( element, overrides, blockElements[ element.getName() ] ) ;
1165
-
1166
- if ( removeEmpty )
1167
- {
1168
- !CKEDITOR.dtd.$block[ element.getName() ] || style._.enterMode == CKEDITOR.ENTER_BR && !element.hasAttributes() ?
1169
- removeNoAttribsElement( element ) :
1170
- element.renameNode( style._.enterMode == CKEDITOR.ENTER_P ? 'p' : 'div' );
1171
- }
1172
- }
1173
-
1174
- // Removes a style from inside an element.
1175
- function removeFromInsideElement( style, element )
1176
- {
1177
- var def = style._.definition,
1178
- attribs = def.attributes,
1179
- styles = def.styles,
1180
- overrides = getOverrides( style ),
1181
- innerElements = element.getElementsByTag( style.element );
1182
-
1183
- for ( var i = innerElements.count(); --i >= 0 ; )
1184
- removeFromElement( style, innerElements.getItem( i ) );
1185
-
1186
- // Now remove any other element with different name that is
1187
- // defined to be overriden.
1188
- for ( var overrideElement in overrides )
1189
- {
1190
- if ( overrideElement != style.element )
1191
- {
1192
- innerElements = element.getElementsByTag( overrideElement ) ;
1193
- for ( i = innerElements.count() - 1 ; i >= 0 ; i-- )
1194
- {
1195
- var innerElement = innerElements.getItem( i );
1196
- removeOverrides( innerElement, overrides[ overrideElement ] ) ;
1197
- }
1198
- }
1199
- }
1200
- }
1201
-
1202
- /**
1203
- * Remove overriding styles/attributes from the specific element.
1204
- * Note: Remove the element if no attributes remain.
1205
- * @param {Object} element
1206
- * @param {Object} overrides
1207
- * @param {Boolean} Don't remove the element
1208
- */
1209
- function removeOverrides( element, overrides, dontRemove )
1210
- {
1211
- var attributes = overrides && overrides.attributes ;
1212
-
1213
- if ( attributes )
1214
- {
1215
- for ( var i = 0 ; i < attributes.length ; i++ )
1216
- {
1217
- var attName = attributes[i][0], actualAttrValue ;
1218
-
1219
- if ( ( actualAttrValue = element.getAttribute( attName ) ) )
1220
- {
1221
- var attValue = attributes[i][1] ;
1222
-
1223
- // Remove the attribute if:
1224
- // - The override definition value is null ;
1225
- // - The override definition valie is a string that
1226
- // matches the attribute value exactly.
1227
- // - The override definition value is a regex that
1228
- // has matches in the attribute value.
1229
- if ( attValue === null ||
1230
- ( attValue.test && attValue.test( actualAttrValue ) ) ||
1231
- ( typeof attValue == 'string' && actualAttrValue == attValue ) )
1232
- element.removeAttribute( attName ) ;
1233
- }
1234
- }
1235
- }
1236
-
1237
- if ( !dontRemove )
1238
- removeNoAttribsElement( element );
1239
- }
1240
-
1241
- // If the element has no more attributes, remove it.
1242
- function removeNoAttribsElement( element )
1243
- {
1244
- // If no more attributes remained in the element, remove it,
1245
- // leaving its children.
1246
- if ( !element.hasAttributes() )
1247
- {
1248
- if ( CKEDITOR.dtd.$block[ element.getName() ] )
1249
- {
1250
- var previous = element.getPrevious( nonWhitespaces ),
1251
- next = element.getNext( nonWhitespaces );
1252
-
1253
- if ( previous && ( previous.type == CKEDITOR.NODE_TEXT || !previous.isBlockBoundary( { br : 1 } ) ) )
1254
- element.append( 'br', 1 );
1255
- if ( next && ( next.type == CKEDITOR.NODE_TEXT || !next.isBlockBoundary( { br : 1 } ) ) )
1256
- element.append( 'br' );
1257
-
1258
- element.remove( true );
1259
- }
1260
- else
1261
- {
1262
- // Removing elements may open points where merging is possible,
1263
- // so let's cache the first and last nodes for later checking.
1264
- var firstChild = element.getFirst();
1265
- var lastChild = element.getLast();
1266
-
1267
- element.remove( true );
1268
-
1269
- if ( firstChild )
1270
- {
1271
- // Check the cached nodes for merging.
1272
- firstChild.type == CKEDITOR.NODE_ELEMENT && firstChild.mergeSiblings();
1273
-
1274
- if ( lastChild && !firstChild.equals( lastChild )
1275
- && lastChild.type == CKEDITOR.NODE_ELEMENT )
1276
- lastChild.mergeSiblings();
1277
- }
1278
-
1279
- }
1280
- }
1281
- }
1282
-
1283
- function getElement( style, targetDocument, element )
1284
- {
1285
- var el,
1286
- def = style._.definition,
1287
- elementName = style.element;
1288
-
1289
- // The "*" element name will always be a span for this function.
1290
- if ( elementName == '*' )
1291
- elementName = 'span';
1292
-
1293
- // Create the element.
1294
- el = new CKEDITOR.dom.element( elementName, targetDocument );
1295
-
1296
- // #6226: attributes should be copied before the new ones are applied
1297
- if ( element )
1298
- element.copyAttributes( el );
1299
-
1300
- el = setupElement( el, style );
1301
-
1302
- // Avoid ID duplication.
1303
- if ( targetDocument.getCustomData( 'doc_processing_style' ) && el.hasAttribute( 'id' ) )
1304
- el.removeAttribute( 'id' );
1305
- else
1306
- targetDocument.setCustomData( 'doc_processing_style', 1 );
1307
-
1308
- return el;
1309
- }
1310
-
1311
- function setupElement( el, style )
1312
- {
1313
- var def = style._.definition,
1314
- attributes = def.attributes,
1315
- styles = CKEDITOR.style.getStyleText( def );
1316
-
1317
- // Assign all defined attributes.
1318
- if ( attributes )
1319
- {
1320
- for ( var att in attributes )
1321
- {
1322
- el.setAttribute( att, attributes[ att ] );
1323
- }
1324
- }
1325
-
1326
- // Assign all defined styles.
1327
- if( styles )
1328
- el.setAttribute( 'style', styles );
1329
-
1330
- return el;
1331
- }
1332
-
1333
- function replaceVariables( list, variablesValues )
1334
- {
1335
- for ( var item in list )
1336
- {
1337
- list[ item ] = list[ item ].replace( varRegex, function( match, varName )
1338
- {
1339
- return variablesValues[ varName ];
1340
- });
1341
- }
1342
- }
1343
-
1344
- // Returns an object that can be used for style matching comparison.
1345
- // Attributes names and values are all lowercased, and the styles get
1346
- // merged with the style attribute.
1347
- function getAttributesForComparison( styleDefinition )
1348
- {
1349
- // If we have already computed it, just return it.
1350
- var attribs = styleDefinition._AC;
1351
- if ( attribs )
1352
- return attribs;
1353
-
1354
- attribs = {};
1355
-
1356
- var length = 0;
1357
-
1358
- // Loop through all defined attributes.
1359
- var styleAttribs = styleDefinition.attributes;
1360
- if ( styleAttribs )
1361
- {
1362
- for ( var styleAtt in styleAttribs )
1363
- {
1364
- length++;
1365
- attribs[ styleAtt ] = styleAttribs[ styleAtt ];
1366
- }
1367
- }
1368
-
1369
- // Includes the style definitions.
1370
- var styleText = CKEDITOR.style.getStyleText( styleDefinition );
1371
- if ( styleText )
1372
- {
1373
- if ( !attribs[ 'style' ] )
1374
- length++;
1375
- attribs[ 'style' ] = styleText;
1376
- }
1377
-
1378
- // Appends the "length" information to the object.
1379
- attribs._length = length;
1380
-
1381
- // Return it, saving it to the next request.
1382
- return ( styleDefinition._AC = attribs );
1383
- }
1384
-
1385
- /**
1386
- * Get the the collection used to compare the elements and attributes,
1387
- * defined in this style overrides, with other element. All information in
1388
- * it is lowercased.
1389
- * @param {CKEDITOR.style} style
1390
- */
1391
- function getOverrides( style )
1392
- {
1393
- if ( style._.overrides )
1394
- return style._.overrides;
1395
-
1396
- var overrides = ( style._.overrides = {} ),
1397
- definition = style._.definition.overrides;
1398
-
1399
- if ( definition )
1400
- {
1401
- // The override description can be a string, object or array.
1402
- // Internally, well handle arrays only, so transform it if needed.
1403
- if ( !CKEDITOR.tools.isArray( definition ) )
1404
- definition = [ definition ];
1405
-
1406
- // Loop through all override definitions.
1407
- for ( var i = 0 ; i < definition.length ; i++ )
1408
- {
1409
- var override = definition[i];
1410
- var elementName;
1411
- var overrideEl;
1412
- var attrs;
1413
-
1414
- // If can be a string with the element name.
1415
- if ( typeof override == 'string' )
1416
- elementName = override.toLowerCase();
1417
- // Or an object.
1418
- else
1419
- {
1420
- elementName = override.element ? override.element.toLowerCase() : style.element;
1421
- attrs = override.attributes;
1422
- }
1423
-
1424
- // We can have more than one override definition for the same
1425
- // element name, so we attempt to simply append information to
1426
- // it if it already exists.
1427
- overrideEl = overrides[ elementName ] || ( overrides[ elementName ] = {} );
1428
-
1429
- if ( attrs )
1430
- {
1431
- // The returning attributes list is an array, because we
1432
- // could have different override definitions for the same
1433
- // attribute name.
1434
- var overrideAttrs = ( overrideEl.attributes = overrideEl.attributes || new Array() );
1435
- for ( var attName in attrs )
1436
- {
1437
- // Each item in the attributes array is also an array,
1438
- // where [0] is the attribute name and [1] is the
1439
- // override value.
1440
- overrideAttrs.push( [ attName.toLowerCase(), attrs[ attName ] ] );
1441
- }
1442
- }
1443
- }
1444
- }
1445
-
1446
- return overrides;
1447
- }
1448
-
1449
- // Make the comparison of attribute value easier by standardizing it.
1450
- function normalizeProperty( name, value, isStyle )
1451
- {
1452
- var temp = new CKEDITOR.dom.element( 'span' );
1453
- temp [ isStyle ? 'setStyle' : 'setAttribute' ]( name, value );
1454
- return temp[ isStyle ? 'getStyle' : 'getAttribute' ]( name );
1455
- }
1456
-
1457
- // Make the comparison of style text easier by standardizing it.
1458
- function normalizeCssText( unparsedCssText, nativeNormalize )
1459
- {
1460
- var styleText;
1461
- if ( nativeNormalize !== false )
1462
- {
1463
- // Injects the style in a temporary span object, so the browser parses it,
1464
- // retrieving its final format.
1465
- var temp = new CKEDITOR.dom.element( 'span' );
1466
- temp.setAttribute( 'style', unparsedCssText );
1467
- styleText = temp.getAttribute( 'style' ) || '';
1468
- }
1469
- else
1470
- styleText = unparsedCssText;
1471
-
1472
- // Normalize font-family property, ignore quotes and being case insensitive. (#7322)
1473
- // http://www.w3.org/TR/css3-fonts/#font-family-the-font-family-property
1474
- styleText = styleText.replace( /(font-family:)(.*?)(?=;|$)/, function ( match, prop, val )
1475
- {
1476
- var names = val.split( ',' );
1477
- for ( var i = 0; i < names.length; i++ )
1478
- names[ i ] = CKEDITOR.tools.trim( names[ i ].replace( /["']/g, '' ) );
1479
- return prop + names.join( ',' );
1480
- });
1481
-
1482
- // Shrinking white-spaces around colon and semi-colon (#4147).
1483
- // Compensate tail semi-colon.
1484
- return styleText.replace( /\s*([;:])\s*/, '$1' )
1485
- .replace( /([^\s;])$/, '$1;')
1486
- // Trimming spaces after comma(#4107),
1487
- // remove quotations(#6403),
1488
- // mostly for differences on "font-family".
1489
- .replace( /,\s+/g, ',' )
1490
- .replace( /\"/g,'' )
1491
- .toLowerCase();
1492
- }
1493
-
1494
- // Turn inline style text properties into one hash.
1495
- function parseStyleText( styleText )
1496
- {
1497
- var retval = {};
1498
- styleText
1499
- .replace( /&quot;/g, '"' )
1500
- .replace( /\s*([^ :;]+)\s*:\s*([^;]+)\s*(?=;|$)/g, function( match, name, value )
1501
- {
1502
- retval[ name ] = value;
1503
- } );
1504
- return retval;
1505
- }
1506
-
1507
- /**
1508
- * Compare two bunch of styles, with the speciality that value 'inherit'
1509
- * is treated as a wildcard which will match any value.
1510
- * @param {Object|String} source
1511
- * @param {Object|String} target
1512
- */
1513
- function compareCssText( source, target )
1514
- {
1515
- typeof source == 'string' && ( source = parseStyleText( source ) );
1516
- typeof target == 'string' && ( target = parseStyleText( target ) );
1517
- for( var name in source )
1518
- {
1519
- if ( !( name in target &&
1520
- ( target[ name ] == source[ name ]
1521
- || source[ name ] == 'inherit'
1522
- || target[ name ] == 'inherit' ) ) )
1523
- {
1524
- return false;
1525
- }
1526
- }
1527
- return true;
1528
- }
1529
-
1530
- function applyStyle( document, remove )
1531
- {
1532
- var selection = document.getSelection(),
1533
- // Bookmark the range so we can re-select it after processing.
1534
- bookmarks = selection.createBookmarks( 1 ),
1535
- ranges = selection.getRanges(),
1536
- func = remove ? this.removeFromRange : this.applyToRange,
1537
- range;
1538
-
1539
- var iterator = ranges.createIterator();
1540
- while ( ( range = iterator.getNextRange() ) )
1541
- func.call( this, range );
1542
-
1543
- if ( bookmarks.length == 1 && bookmarks[ 0 ].collapsed )
1544
- {
1545
- selection.selectRanges( ranges );
1546
- document.getById( bookmarks[ 0 ].startNode ).remove();
1547
- }
1548
- else
1549
- selection.selectBookmarks( bookmarks );
1550
-
1551
- document.removeCustomData( 'doc_processing_style' );
1552
- }
1553
- })();
1554
-
1555
- CKEDITOR.styleCommand = function( style )
1556
- {
1557
- this.style = style;
1558
- };
1559
-
1560
- CKEDITOR.styleCommand.prototype.exec = function( editor )
1561
- {
1562
- editor.focus();
1563
-
1564
- var doc = editor.document;
1565
-
1566
- if ( doc )
1567
- {
1568
- if ( this.state == CKEDITOR.TRISTATE_OFF )
1569
- this.style.apply( doc );
1570
- else if ( this.state == CKEDITOR.TRISTATE_ON )
1571
- this.style.remove( doc );
1572
- }
1573
-
1574
- return !!doc;
1575
- };
1576
-
1577
- /**
1578
- * Manages styles registration and loading. See also {@link CKEDITOR.config.stylesSet}.
1579
- * @namespace
1580
- * @augments CKEDITOR.resourceManager
1581
- * @constructor
1582
- * @since 3.2
1583
- * @example
1584
- * // The set of styles for the <b>Styles</b> combo
1585
- * CKEDITOR.stylesSet.add( 'default',
1586
- * [
1587
- * // Block Styles
1588
- * { name : 'Blue Title' , element : 'h3', styles : { 'color' : 'Blue' } },
1589
- * { name : 'Red Title' , element : 'h3', styles : { 'color' : 'Red' } },
1590
- *
1591
- * // Inline Styles
1592
- * { name : 'Marker: Yellow' , element : 'span', styles : { 'background-color' : 'Yellow' } },
1593
- * { name : 'Marker: Green' , element : 'span', styles : { 'background-color' : 'Lime' } },
1594
- *
1595
- * // Object Styles
1596
- * {
1597
- * name : 'Image on Left',
1598
- * element : 'img',
1599
- * attributes :
1600
- * {
1601
- * 'style' : 'padding: 5px; margin-right: 5px',
1602
- * 'border' : '2',
1603
- * 'align' : 'left'
1604
- * }
1605
- * }
1606
- * ]);
1607
- */
1608
- CKEDITOR.stylesSet = new CKEDITOR.resourceManager( '', 'stylesSet' );
1609
-
1610
- // Backward compatibility (#5025).
1611
- CKEDITOR.addStylesSet = CKEDITOR.tools.bind( CKEDITOR.stylesSet.add, CKEDITOR.stylesSet );
1612
- CKEDITOR.loadStylesSet = function( name, url, callback )
1613
- {
1614
- CKEDITOR.stylesSet.addExternal( name, url, '' );
1615
- CKEDITOR.stylesSet.load( name, callback );
1616
- };
1617
-
1618
-
1619
- /**
1620
- * Gets the current styleSet for this instance
1621
- * @param {Function} callback The function to be called with the styles data.
1622
- * @example
1623
- * editor.getStylesSet( function( stylesDefinitions ) {} );
1624
- */
1625
- CKEDITOR.editor.prototype.getStylesSet = function( callback )
1626
- {
1627
- if ( !this._.stylesDefinitions )
1628
- {
1629
- var editor = this,
1630
- // Respect the backwards compatible definition entry
1631
- configStyleSet = editor.config.stylesCombo_stylesSet || editor.config.stylesSet || 'default';
1632
-
1633
- // #5352 Allow to define the styles directly in the config object
1634
- if ( configStyleSet instanceof Array )
1635
- {
1636
- editor._.stylesDefinitions = configStyleSet;
1637
- callback( configStyleSet );
1638
- return;
1639
- }
1640
-
1641
- var partsStylesSet = configStyleSet.split( ':' ),
1642
- styleSetName = partsStylesSet[ 0 ],
1643
- externalPath = partsStylesSet[ 1 ],
1644
- pluginPath = CKEDITOR.plugins.registered.styles.path;
1645
-
1646
- CKEDITOR.stylesSet.addExternal( styleSetName,
1647
- externalPath ?
1648
- partsStylesSet.slice( 1 ).join( ':' ) :
1649
- pluginPath + 'styles/' + styleSetName + '.js', '' );
1650
-
1651
- CKEDITOR.stylesSet.load( styleSetName, function( stylesSet )
1652
- {
1653
- editor._.stylesDefinitions = stylesSet[ styleSetName ];
1654
- callback( editor._.stylesDefinitions );
1655
- } ) ;
1656
- }
1657
- else
1658
- callback( this._.stylesDefinitions );
1659
- };
1660
-
1661
- /**
1662
- * Indicates that fully selected read-only elements will be included when
1663
- * applying the style (for inline styles only).
1664
- * @name CKEDITOR.style.includeReadonly
1665
- * @type Boolean
1666
- * @default false
1667
- * @since 3.5
1668
- */
1669
-
1670
- /**
1671
- * Disables inline styling on read-only elements.
1672
- * @name CKEDITOR.config.disableReadonlyStyling
1673
- * @type Boolean
1674
- * @default false
1675
- * @since 3.5
1676
- */
1677
-
1678
- /**
1679
- * The "styles definition set" to use in the editor. They will be used in the
1680
- * styles combo and the Style selector of the div container. <br>
1681
- * The styles may be defined in the page containing the editor, or can be
1682
- * loaded on demand from an external file. In the second case, if this setting
1683
- * contains only a name, the styles definition file will be loaded from the
1684
- * "styles" folder inside the styles plugin folder.
1685
- * Otherwise, this setting has the "name:url" syntax, making it
1686
- * possible to set the URL from which loading the styles file.<br>
1687
- * Previously this setting was available as config.stylesCombo_stylesSet<br>
1688
- * @name CKEDITOR.config.stylesSet
1689
- * @type String|Array
1690
- * @default 'default'
1691
- * @since 3.3
1692
- * @example
1693
- * // Load from the styles' styles folder (mystyles.js file).
1694
- * config.stylesSet = 'mystyles';
1695
- * @example
1696
- * // Load from a relative URL.
1697
- * config.stylesSet = 'mystyles:/editorstyles/styles.js';
1698
- * @example
1699
- * // Load from a full URL.
1700
- * config.stylesSet = 'mystyles:http://www.example.com/editorstyles/styles.js';
1701
- * @example
1702
- * // Load from a list of definitions.
1703
- * config.stylesSet = [
1704
- * { name : 'Strong Emphasis', element : 'strong' },
1705
- * { name : 'Emphasis', element : 'em' }, ... ];
1706
- */