glebtv-ckeditor 4.2.1.5 → 4.3.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (437) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +37 -1
  3. data/README.md +286 -0
  4. data/Rakefile +76 -63
  5. data/app/assets/javascripts/ckeditor/application.js +1 -0
  6. data/app/assets/javascripts/ckeditor/config.js.erb +59 -20
  7. data/app/assets/javascripts/ckeditor/filebrowser/javascripts/{application.js → application.js.erb} +11 -2
  8. data/app/assets/javascripts/ckeditor/filebrowser/javascripts/jquery.endless-scroll.js +300 -0
  9. data/app/assets/javascripts/ckeditor/filebrowser/stylesheets/{uploader.css → uploader.css.erb} +6 -2
  10. data/app/assets/javascripts/ckeditor/init.js.erb +1 -6
  11. data/app/assets/javascripts/ckeditor/override.js.erb +22 -0
  12. data/app/assets/stylesheets/ckcontent.css +103 -0
  13. data/app/controllers/ckeditor/application_controller.rb +5 -4
  14. data/app/controllers/ckeditor/attachment_files_controller.rb +12 -10
  15. data/app/controllers/ckeditor/pictures_controller.rb +12 -10
  16. data/app/helpers/ckeditor/application_helper.rb +1 -1
  17. data/app/views/ckeditor/attachment_files/index.html.erb +11 -5
  18. data/app/views/ckeditor/pictures/index.html.erb +12 -6
  19. data/app/views/ckeditor/shared/_asset.html.erb +2 -2
  20. data/app/views/ckeditor/shared/_asset_tmpl.html.erb +3 -3
  21. data/app/views/layouts/ckeditor/application.html.erb +0 -1
  22. data/config/locales/cs.ckeditor.yml +1 -0
  23. data/config/locales/de.ckeditor.yml +9 -0
  24. data/config/locales/el-GR.cdkeditor.yml +9 -0
  25. data/config/locales/en.ckeditor.yml +1 -0
  26. data/config/locales/es.ckeditor.yml +1 -0
  27. data/config/locales/fr.ckeditor.yml +1 -0
  28. data/config/locales/hu.ckeditor.yml +9 -0
  29. data/config/locales/it.ckeditor.yml +1 -0
  30. data/config/locales/nl.ckeditor.yml +2 -1
  31. data/config/locales/pl.ckeditor.yml +1 -0
  32. data/config/locales/pt-BR.ckeditor.yml +2 -1
  33. data/config/locales/pt-PT.ckeditor.yml +9 -0
  34. data/config/locales/ru.ckeditor.yml +1 -0
  35. data/config/locales/sv-SE.ckeditor.yml +1 -0
  36. data/config/locales/uk.ckeditor.yml +1 -0
  37. data/config/locales/zh-CN.ckeditor.yml +1 -0
  38. data/lib/ckeditor.rb +63 -13
  39. data/lib/ckeditor/backend/carrierwave.rb +9 -9
  40. data/lib/ckeditor/backend/dragonfly.rb +2 -2
  41. data/lib/ckeditor/backend/paperclip.rb +4 -4
  42. data/lib/ckeditor/engine.rb +6 -6
  43. data/lib/ckeditor/helpers/controllers.rb +7 -7
  44. data/lib/ckeditor/helpers/form_builder.rb +1 -1
  45. data/lib/ckeditor/helpers/form_helper.rb +2 -21
  46. data/lib/ckeditor/helpers/view_helper.rb +2 -13
  47. data/lib/ckeditor/hooks/cancan.rb +2 -2
  48. data/lib/ckeditor/hooks/formtastic.rb +1 -1
  49. data/lib/ckeditor/hooks/pundit.rb +47 -0
  50. data/lib/ckeditor/http.rb +8 -7
  51. data/lib/ckeditor/orm/active_record.rb +3 -3
  52. data/lib/ckeditor/orm/base.rb +4 -6
  53. data/lib/ckeditor/orm/mongoid.rb +4 -4
  54. data/lib/ckeditor/paginatable.rb +56 -0
  55. data/lib/ckeditor/text_area.rb +52 -0
  56. data/lib/ckeditor/utils.rb +54 -36
  57. data/lib/ckeditor/version.rb +1 -4
  58. data/lib/generators/ckeditor/install_generator.rb +10 -10
  59. data/lib/generators/ckeditor/pundit_policy_generator.rb +22 -0
  60. data/lib/generators/ckeditor/templates/active_record/carrierwave/ckeditor/asset.rb +1 -1
  61. data/lib/generators/ckeditor/templates/active_record/carrierwave/migration.rb +4 -4
  62. data/lib/generators/ckeditor/templates/active_record/paperclip/ckeditor/attachment_file.rb +1 -1
  63. data/lib/generators/ckeditor/templates/active_record/paperclip/migration.rb +2 -2
  64. data/lib/generators/ckeditor/templates/base/carrierwave/uploaders/ckeditor_attachment_file_uploader.rb +1 -1
  65. data/lib/generators/ckeditor/templates/base/carrierwave/uploaders/ckeditor_picture_uploader.rb +1 -1
  66. data/lib/generators/ckeditor/templates/ckeditor.rb +21 -16
  67. data/lib/generators/ckeditor/templates/mongoid/carrierwave/ckeditor/asset.rb +1 -1
  68. data/lib/generators/ckeditor/templates/pundit_policy/attachment_file_policy.rb +20 -0
  69. data/lib/generators/ckeditor/templates/pundit_policy/picture_policy.rb +20 -0
  70. data/test/ckeditor_test.rb +54 -1
  71. data/test/controllers/attachment_files_controller_test.rb +15 -15
  72. data/test/controllers/pictures_controller_test.rb +15 -15
  73. data/test/dummy/app/views/posts/index.html.erb +1 -1
  74. data/test/dummy/config/routes.rb +1 -1
  75. data/test/dummy/log/test.log +301 -0
  76. data/test/dummy/tmp/cache/assets/test/sprockets/0ff571a66f03f4c98305b82fbc097934 +0 -0
  77. data/test/dummy/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  78. data/test/dummy/tmp/cache/assets/test/sprockets/1c2a2034cd1d6490a47e1f2b22a328f3 +0 -0
  79. data/test/dummy/tmp/cache/assets/test/sprockets/233a499dd1009ab5b2a8040346715629 +0 -0
  80. data/test/dummy/tmp/cache/assets/test/sprockets/2a79c1fcf4595c4bfb3a1e77a732b9e9 +0 -0
  81. data/test/dummy/tmp/cache/assets/test/sprockets/2bb1e656d1d1c20542dd47020608ce4b +0 -0
  82. data/test/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  83. data/test/dummy/tmp/cache/assets/test/sprockets/371bf96e99717688ed7313a0c53f4212 +0 -0
  84. data/test/dummy/tmp/cache/assets/test/sprockets/3c088129885aa2261da0ab21707aa851 +0 -0
  85. data/test/dummy/tmp/cache/assets/test/sprockets/5296ab0e7196335ed50f33e398de0470 +0 -0
  86. data/test/dummy/tmp/cache/assets/test/sprockets/62133d9323b94de8b0cd2a3e490e0374 +0 -0
  87. data/test/dummy/tmp/cache/assets/test/sprockets/6fc757c2c8329244ca95d6909865bbc2 +0 -0
  88. data/test/dummy/tmp/cache/assets/test/sprockets/70f2d021b0f59639252116032aa12a5d +0 -0
  89. data/test/dummy/tmp/cache/assets/test/sprockets/73eff3be45044b7438486d533547c02c +0 -0
  90. data/test/dummy/tmp/cache/assets/test/sprockets/7869bf4c6f26bcd697a78ffd20655de5 +0 -0
  91. data/test/dummy/tmp/cache/assets/test/sprockets/88d81ff5585179f4acb7ba76bdcb1244 +0 -0
  92. data/test/dummy/tmp/cache/assets/test/sprockets/990c65e42e2a681340e62644dd07782b +0 -0
  93. data/test/dummy/tmp/cache/assets/test/sprockets/aaf14684bcb6dafb17154d27c3d5a5de +0 -0
  94. data/test/dummy/tmp/cache/assets/test/sprockets/b2141ea733727ae31693b5129d431629 +0 -0
  95. data/test/dummy/tmp/cache/assets/test/sprockets/c1469bfe5d5645440961cc1e8fd48120 +0 -0
  96. data/test/dummy/tmp/cache/assets/test/sprockets/c479f0465142b7c9c5a9c58a256335d7 +0 -0
  97. data/test/dummy/tmp/cache/assets/test/sprockets/c73d53992216d52410b542dce76742ad +0 -0
  98. data/test/dummy/tmp/cache/assets/test/sprockets/c7476f60577593bf79ca5b6334b86903 +0 -0
  99. data/test/dummy/tmp/cache/assets/test/sprockets/cb4a5e7fc592c6023ed2acc5953b4685 +0 -0
  100. data/test/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  101. data/test/dummy/tmp/cache/assets/test/sprockets/d7e7d3b3729ff516f81682711ea8a53a +0 -0
  102. data/test/dummy/tmp/cache/assets/test/sprockets/d9b8613a01ff7c7d9fe1a6b7cd5497ff +0 -0
  103. data/test/dummy/tmp/cache/assets/test/sprockets/e4513c04c145290b038978a8f471d244 +0 -0
  104. data/test/dummy/tmp/cache/assets/test/sprockets/e65823156ac3891c4779224e828d4877 +0 -0
  105. data/test/dummy/tmp/cache/assets/test/sprockets/f20469686afebc55828d93a978e5ff20 +0 -0
  106. data/test/dummy/tmp/cache/assets/test/sprockets/f24d6c64fd96102c27c1f10e82ebf864 +0 -0
  107. data/test/dummy/tmp/cache/assets/test/sprockets/f33022711bcfc1cae3955a1de79fe280 +0 -0
  108. data/test/dummy/tmp/cache/assets/test/sprockets/f69b1a9a1323d97109283e5bd378c23d +0 -0
  109. data/test/functional/posts_controller_test.rb +4 -4
  110. data/test/generators/install_generator_test.rb +7 -7
  111. data/test/models/attachment_file_test.rb +2 -2
  112. data/test/models/picture_test.rb +2 -2
  113. data/test/models/utils_test.rb +4 -5
  114. data/test/support/helpers.rb +8 -8
  115. data/test/tmp/app/models/ckeditor/asset.rb +5 -0
  116. data/test/tmp/app/models/ckeditor/attachment_file.rb +12 -0
  117. data/test/tmp/app/models/ckeditor/picture.rb +13 -0
  118. data/test/tmp/config/initializers/ckeditor.rb +26 -0
  119. data/test/tmp/config/routes.rb +5 -0
  120. data/vendor/assets/javascripts/ckeditor/CHANGES.md +414 -0
  121. data/{app → vendor}/assets/javascripts/ckeditor/LICENSE.md +1 -1
  122. data/{app → vendor}/assets/javascripts/ckeditor/README.md +1 -1
  123. data/vendor/assets/javascripts/ckeditor/adapters/jquery.js +10 -0
  124. data/vendor/assets/javascripts/ckeditor/build-config.js +165 -0
  125. data/vendor/assets/javascripts/ckeditor/ckeditor.js +978 -0
  126. data/vendor/assets/javascripts/ckeditor/config.js +10 -0
  127. data/vendor/assets/javascripts/ckeditor/lang/en.js +5 -0
  128. data/vendor/assets/javascripts/ckeditor/lang/ru.js +5 -0
  129. data/{app → vendor}/assets/javascripts/ckeditor/plugins/CKCss/ckcss.png +0 -0
  130. data/{app → vendor}/assets/javascripts/ckeditor/plugins/CKCss/css/styles.css +0 -0
  131. data/{app → vendor}/assets/javascripts/ckeditor/plugins/CKCss/dialogs/ckcss.js +0 -0
  132. data/{app → vendor}/assets/javascripts/ckeditor/plugins/CKCss/lang/en.js +0 -0
  133. data/{app → vendor}/assets/javascripts/ckeditor/plugins/CKCss/lang/ru.js +0 -0
  134. data/{app → vendor}/assets/javascripts/ckeditor/plugins/CKCss/plugin.js +3 -3
  135. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +10 -0
  136. data/{app → vendor}/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/en.js +4 -2
  137. data/{app → vendor}/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js +4 -2
  138. data/{app → vendor}/assets/javascripts/ckeditor/plugins/about/dialogs/about.js +1 -1
  139. data/{app → vendor}/assets/javascripts/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png +0 -0
  140. data/{app → vendor}/assets/javascripts/ckeditor/plugins/about/dialogs/logo_ckeditor.png +0 -0
  141. data/{app → vendor}/assets/javascripts/ckeditor/plugins/clipboard/dialogs/paste.js +1 -1
  142. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/css/codemirror.min.css +1 -0
  143. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/icons/AutoComplete.png +0 -0
  144. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/icons/AutoFormat.png +0 -0
  145. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/icons/CommentSelectedRange.png +0 -0
  146. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/icons/SearchCode.png +0 -0
  147. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/icons/UncommentSelectedRange.png +0 -0
  148. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/js/beautify.min.js +0 -0
  149. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.addons.min.js +1 -0
  150. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.addons.search.min.js +1 -0
  151. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.min.js +1 -0
  152. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.htmlmixed.min.js +1 -0
  153. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.javascript.min.js +1 -0
  154. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.php.min.js +1 -0
  155. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/lang/en.js +0 -0
  156. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/lang/ru.js +3 -1
  157. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/plugin.js +335 -90
  158. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/3024-day.css +34 -0
  159. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/3024-night.css +34 -0
  160. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/ambiance-mobile.css +5 -5
  161. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/ambiance.css +75 -75
  162. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/base16-dark.css +34 -0
  163. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/base16-light.css +34 -0
  164. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/blackboard.css +28 -25
  165. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/cobalt.css +21 -18
  166. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/eclipse.css +23 -25
  167. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/elegant.css +13 -10
  168. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/erlang-dark.css +30 -21
  169. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/lesser-dark.css +47 -44
  170. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/mbo.css +37 -0
  171. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/midnight.css +43 -52
  172. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/monokai.css +29 -28
  173. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/neat.css +12 -9
  174. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/night.css +24 -21
  175. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/paraiso-dark.css +34 -0
  176. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/paraiso-light.css +34 -0
  177. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/rubyblue.css +23 -21
  178. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/solarized.css +180 -207
  179. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/the-matrix.css +26 -0
  180. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/tomorrow-night-eighties.css +34 -0
  181. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/twilight.css +28 -26
  182. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/vibrant-ink.css +30 -27
  183. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/xq-dark.css +49 -46
  184. data/{app → vendor}/assets/javascripts/ckeditor/plugins/codemirror/theme/xq-light.css +43 -43
  185. data/{app → vendor}/assets/javascripts/ckeditor/plugins/colordialog/dialogs/colordialog.js +1 -1
  186. data/{app → vendor}/assets/javascripts/ckeditor/plugins/dialog/dialogDefinition.js +1 -1
  187. data/{app → vendor}/assets/javascripts/ckeditor/plugins/div/dialogs/div.js +5 -5
  188. data/{app → vendor}/assets/javascripts/ckeditor/plugins/fakeobjects/images/spacer.gif +0 -0
  189. data/{app → vendor}/assets/javascripts/ckeditor/plugins/find/dialogs/find.js +1 -1
  190. data/{app → vendor}/assets/javascripts/ckeditor/plugins/flash/dialogs/flash.js +1 -1
  191. data/{app → vendor}/assets/javascripts/ckeditor/plugins/flash/images/placeholder.png +0 -0
  192. data/{app → vendor}/assets/javascripts/ckeditor/plugins/forms/dialogs/button.js +1 -1
  193. data/{app → vendor}/assets/javascripts/ckeditor/plugins/forms/dialogs/checkbox.js +1 -1
  194. data/{app → vendor}/assets/javascripts/ckeditor/plugins/forms/dialogs/form.js +2 -2
  195. data/{app → vendor}/assets/javascripts/ckeditor/plugins/forms/dialogs/hiddenfield.js +1 -1
  196. data/{app → vendor}/assets/javascripts/ckeditor/plugins/forms/dialogs/radio.js +1 -1
  197. data/{app → vendor}/assets/javascripts/ckeditor/plugins/forms/dialogs/select.js +1 -1
  198. data/{app → vendor}/assets/javascripts/ckeditor/plugins/forms/dialogs/textarea.js +1 -1
  199. data/{app → vendor}/assets/javascripts/ckeditor/plugins/forms/dialogs/textfield.js +1 -1
  200. data/{app → vendor}/assets/javascripts/ckeditor/plugins/forms/images/hiddenfield.gif +0 -0
  201. data/vendor/assets/javascripts/ckeditor/plugins/icons.png +0 -0
  202. data/{app/assets/javascripts/ckeditor/skins/moono → vendor/assets/javascripts/ckeditor/plugins}/icons_hidpi.png +0 -0
  203. data/{app → vendor}/assets/javascripts/ckeditor/plugins/iframe/dialogs/iframe.js +1 -1
  204. data/{app → vendor}/assets/javascripts/ckeditor/plugins/iframe/images/placeholder.png +0 -0
  205. data/{app → vendor}/assets/javascripts/ckeditor/plugins/iframedialog/plugin.js +13 -13
  206. data/vendor/assets/javascripts/ckeditor/plugins/image/dialogs/image.js +43 -0
  207. data/{app → vendor}/assets/javascripts/ckeditor/plugins/image/images/noimage.png +0 -0
  208. data/{app → vendor}/assets/javascripts/ckeditor/plugins/ipsum/icon.png +0 -0
  209. data/{app → vendor}/assets/javascripts/ckeditor/plugins/ipsum/plugin.js +0 -0
  210. data/{app → vendor}/assets/javascripts/ckeditor/plugins/link/dialogs/anchor.js +1 -1
  211. data/{app → vendor}/assets/javascripts/ckeditor/plugins/link/dialogs/link.js +8 -7
  212. data/{app → vendor}/assets/javascripts/ckeditor/plugins/link/images/anchor.png +0 -0
  213. data/{app → vendor}/assets/javascripts/ckeditor/plugins/link/images/hidpi/anchor.png +0 -0
  214. data/{app → vendor}/assets/javascripts/ckeditor/plugins/liststyle/dialogs/liststyle.js +1 -1
  215. data/{app → vendor}/assets/javascripts/ckeditor/plugins/magicline/images/hidpi/icon.png +0 -0
  216. data/{app → vendor}/assets/javascripts/ckeditor/plugins/magicline/images/icon.png +0 -0
  217. data/{app → vendor}/assets/javascripts/ckeditor/plugins/map/example_usage.js +0 -0
  218. data/{app → vendor}/assets/javascripts/ckeditor/plugins/map/map.gif +0 -0
  219. data/{app → vendor}/assets/javascripts/ckeditor/plugins/map/plugin.js +0 -0
  220. data/{app → vendor}/assets/javascripts/ckeditor/plugins/mediaembed/icons/hidpi/mediaembed.png +0 -0
  221. data/{app → vendor}/assets/javascripts/ckeditor/plugins/mediaembed/icons/mediaembed.png +0 -0
  222. data/{app → vendor}/assets/javascripts/ckeditor/plugins/mediaembed/plugin.js +0 -0
  223. data/{app → vendor}/assets/javascripts/ckeditor/plugins/pagebreak/images/pagebreak.gif +0 -0
  224. data/{app → vendor}/assets/javascripts/ckeditor/plugins/pastefromword/filter/default.js +1 -1
  225. data/{app → vendor}/assets/javascripts/ckeditor/plugins/preview/preview.html +0 -0
  226. data/{app → vendor}/assets/javascripts/ckeditor/plugins/scayt/LICENSE.md +0 -0
  227. data/{app → vendor}/assets/javascripts/ckeditor/plugins/scayt/README.md +0 -0
  228. data/vendor/assets/javascripts/ckeditor/plugins/scayt/dialogs/options.js +20 -0
  229. data/{app → vendor}/assets/javascripts/ckeditor/plugins/scayt/dialogs/toolbar.css +0 -0
  230. data/{app → vendor}/assets/javascripts/ckeditor/plugins/showblocks/images/block_address.png +0 -0
  231. data/{app → vendor}/assets/javascripts/ckeditor/plugins/showblocks/images/block_blockquote.png +0 -0
  232. data/{app → vendor}/assets/javascripts/ckeditor/plugins/showblocks/images/block_div.png +0 -0
  233. data/{app → vendor}/assets/javascripts/ckeditor/plugins/showblocks/images/block_h1.png +0 -0
  234. data/{app → vendor}/assets/javascripts/ckeditor/plugins/showblocks/images/block_h2.png +0 -0
  235. data/{app → vendor}/assets/javascripts/ckeditor/plugins/showblocks/images/block_h3.png +0 -0
  236. data/{app → vendor}/assets/javascripts/ckeditor/plugins/showblocks/images/block_h4.png +0 -0
  237. data/{app → vendor}/assets/javascripts/ckeditor/plugins/showblocks/images/block_h5.png +0 -0
  238. data/{app → vendor}/assets/javascripts/ckeditor/plugins/showblocks/images/block_h6.png +0 -0
  239. data/{app → vendor}/assets/javascripts/ckeditor/plugins/showblocks/images/block_p.png +0 -0
  240. data/{app → vendor}/assets/javascripts/ckeditor/plugins/showblocks/images/block_pre.png +0 -0
  241. data/{app → vendor}/assets/javascripts/ckeditor/plugins/smiley/dialogs/smiley.js +1 -1
  242. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/angel_smile.gif +0 -0
  243. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/angel_smile.png +0 -0
  244. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/angry_smile.gif +0 -0
  245. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/angry_smile.png +0 -0
  246. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/broken_heart.gif +0 -0
  247. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/broken_heart.png +0 -0
  248. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/confused_smile.gif +0 -0
  249. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/confused_smile.png +0 -0
  250. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/cry_smile.gif +0 -0
  251. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/cry_smile.png +0 -0
  252. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/devil_smile.gif +0 -0
  253. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/devil_smile.png +0 -0
  254. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/embaressed_smile.gif +0 -0
  255. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/embarrassed_smile.gif +0 -0
  256. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/embarrassed_smile.png +0 -0
  257. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/envelope.gif +0 -0
  258. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/envelope.png +0 -0
  259. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/heart.gif +0 -0
  260. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/heart.png +0 -0
  261. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/kiss.gif +0 -0
  262. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/kiss.png +0 -0
  263. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/lightbulb.gif +0 -0
  264. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/lightbulb.png +0 -0
  265. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/omg_smile.gif +0 -0
  266. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/omg_smile.png +0 -0
  267. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/regular_smile.gif +0 -0
  268. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/regular_smile.png +0 -0
  269. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/sad_smile.gif +0 -0
  270. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/sad_smile.png +0 -0
  271. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/shades_smile.gif +0 -0
  272. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/shades_smile.png +0 -0
  273. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/teeth_smile.gif +0 -0
  274. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/teeth_smile.png +0 -0
  275. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/thumbs_down.gif +0 -0
  276. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/thumbs_down.png +0 -0
  277. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/thumbs_up.gif +0 -0
  278. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/thumbs_up.png +0 -0
  279. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/tongue_smile.gif +0 -0
  280. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/tongue_smile.png +0 -0
  281. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/tounge_smile.gif +0 -0
  282. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif +0 -0
  283. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.png +0 -0
  284. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/wink_smile.gif +0 -0
  285. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/wink_smile.png +0 -0
  286. data/{app → vendor}/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/en.js +1 -1
  287. data/{app → vendor}/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ru.js +1 -1
  288. data/{app → vendor}/assets/javascripts/ckeditor/plugins/specialchar/dialogs/specialchar.js +1 -1
  289. data/{app → vendor}/assets/javascripts/ckeditor/plugins/stylesheetparser/plugin.js +6 -6
  290. data/{app → vendor}/assets/javascripts/ckeditor/plugins/table/dialogs/table.js +4 -4
  291. data/{app → vendor}/assets/javascripts/ckeditor/plugins/tabletools/dialogs/tableCell.js +1 -1
  292. data/{app → vendor}/assets/javascripts/ckeditor/plugins/templates/dialogs/templates.css +1 -1
  293. data/{app → vendor}/assets/javascripts/ckeditor/plugins/templates/dialogs/templates.js +1 -1
  294. data/{app → vendor}/assets/javascripts/ckeditor/plugins/templates/templates/default.js +2 -2
  295. data/{app → vendor}/assets/javascripts/ckeditor/plugins/templates/templates/images/template1.gif +0 -0
  296. data/{app → vendor}/assets/javascripts/ckeditor/plugins/templates/templates/images/template2.gif +0 -0
  297. data/{app → vendor}/assets/javascripts/ckeditor/plugins/templates/templates/images/template3.gif +0 -0
  298. data/{app → vendor}/assets/javascripts/ckeditor/plugins/wordcount/css/wordcount.css +0 -0
  299. data/{app → vendor}/assets/javascripts/ckeditor/plugins/wordcount/lang/en.js +0 -0
  300. data/vendor/assets/javascripts/ckeditor/plugins/wordcount/lang/ru.js +11 -0
  301. data/{app → vendor}/assets/javascripts/ckeditor/plugins/wordcount/plugin.js +72 -31
  302. data/{app → vendor}/assets/javascripts/ckeditor/plugins/wsc/LICENSE.md +0 -0
  303. data/{app → vendor}/assets/javascripts/ckeditor/plugins/wsc/README.md +0 -0
  304. data/{app → vendor}/assets/javascripts/ckeditor/plugins/wsc/dialogs/ciframe.html +0 -0
  305. data/{app → vendor}/assets/javascripts/ckeditor/plugins/wsc/dialogs/tmp.html +0 -0
  306. data/{app → vendor}/assets/javascripts/ckeditor/plugins/wsc/dialogs/tmpFrameset.html +0 -0
  307. data/{app → vendor}/assets/javascripts/ckeditor/plugins/wsc/dialogs/wsc.css +0 -0
  308. data/{app → vendor}/assets/javascripts/ckeditor/plugins/wsc/dialogs/wsc.js +31 -31
  309. data/{app → vendor}/assets/javascripts/ckeditor/plugins/wsc/dialogs/wsc_ie.js +0 -0
  310. data/vendor/assets/javascripts/ckeditor/plugins/youtube/images/icon.png +0 -0
  311. data/{app → vendor}/assets/javascripts/ckeditor/plugins/youtube/lang/en.js +1 -0
  312. data/{app → vendor}/assets/javascripts/ckeditor/plugins/youtube/lang/ru.js +1 -0
  313. data/{app → vendor}/assets/javascripts/ckeditor/plugins/youtube/plugin.js +56 -15
  314. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog.css.scss +768 -0
  315. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie.css.scss +809 -0
  316. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie7.css.scss +841 -0
  317. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie8.css.scss +822 -0
  318. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_iequirks.css.scss +813 -0
  319. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_opera.css.scss +781 -0
  320. data/vendor/assets/javascripts/ckeditor/skins/moono/editor.css.scss +2125 -0
  321. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_gecko.css.scss +2134 -0
  322. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie.css.scss +2183 -0
  323. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie7.css.scss +2351 -0
  324. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie8.css.scss +2195 -0
  325. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_iequirks.css.scss +2243 -0
  326. data/vendor/assets/javascripts/ckeditor/skins/moono/icons.png +0 -0
  327. data/{app/assets/javascripts/ckeditor/plugins → vendor/assets/javascripts/ckeditor/skins/moono}/icons_hidpi.png +0 -0
  328. data/{app → vendor}/assets/javascripts/ckeditor/skins/moono/images/arrow.png +0 -0
  329. data/{app → vendor}/assets/javascripts/ckeditor/skins/moono/images/close.png +0 -0
  330. data/{app → vendor}/assets/javascripts/ckeditor/skins/moono/images/hidpi/close.png +0 -0
  331. data/{app → vendor}/assets/javascripts/ckeditor/skins/moono/images/hidpi/lock-open.png +0 -0
  332. data/{app → vendor}/assets/javascripts/ckeditor/skins/moono/images/hidpi/lock.png +0 -0
  333. data/{app → vendor}/assets/javascripts/ckeditor/skins/moono/images/hidpi/refresh.png +0 -0
  334. data/{app → vendor}/assets/javascripts/ckeditor/skins/moono/images/lock-open.png +0 -0
  335. data/{app → vendor}/assets/javascripts/ckeditor/skins/moono/images/lock.png +0 -0
  336. data/{app → vendor}/assets/javascripts/ckeditor/skins/moono/images/refresh.png +0 -0
  337. data/{app → vendor}/assets/javascripts/ckeditor/skins/moono/readme.md +1 -1
  338. data/{app → vendor}/assets/javascripts/ckeditor/styles.js +2 -2
  339. metadata +445 -352
  340. data/README.rdoc +0 -12
  341. data/app/assets/javascripts/ckeditor/CHANGES.md +0 -233
  342. data/app/assets/javascripts/ckeditor/build-config.js +0 -103
  343. data/app/assets/javascripts/ckeditor/ckeditor.js +0 -929
  344. data/app/assets/javascripts/ckeditor/contents.css +0 -103
  345. data/app/assets/javascripts/ckeditor/lang/en.js +0 -5
  346. data/app/assets/javascripts/ckeditor/lang/ru.js +0 -5
  347. data/app/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +0 -10
  348. data/app/assets/javascripts/ckeditor/plugins/codemirror/css/codemirror.min.css +0 -1
  349. data/app/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.addons.min.js +0 -1
  350. data/app/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.min.js +0 -5637
  351. data/app/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.modes.min.js +0 -1
  352. data/app/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.search-addons.min.js +0 -1
  353. data/app/assets/javascripts/ckeditor/plugins/font/lang/en.js +0 -14
  354. data/app/assets/javascripts/ckeditor/plugins/font/lang/ru.js +0 -14
  355. data/app/assets/javascripts/ckeditor/plugins/font/plugin.js +0 -225
  356. data/app/assets/javascripts/ckeditor/plugins/highslide/dialogs/hs.js +0 -73
  357. data/app/assets/javascripts/ckeditor/plugins/highslide/icon.png +0 -0
  358. data/app/assets/javascripts/ckeditor/plugins/highslide/lang/en.js +0 -7
  359. data/app/assets/javascripts/ckeditor/plugins/highslide/lang/ru.js +0 -7
  360. data/app/assets/javascripts/ckeditor/plugins/highslide/plugin.js +0 -26
  361. data/app/assets/javascripts/ckeditor/plugins/highslide/readme.txt +0 -55
  362. data/app/assets/javascripts/ckeditor/plugins/htmlbuttons/docs/install.html +0 -93
  363. data/app/assets/javascripts/ckeditor/plugins/htmlbuttons/docs/styles.css +0 -59
  364. data/app/assets/javascripts/ckeditor/plugins/htmlbuttons/icon1.png +0 -0
  365. data/app/assets/javascripts/ckeditor/plugins/htmlbuttons/icon2.png +0 -0
  366. data/app/assets/javascripts/ckeditor/plugins/htmlbuttons/icon3.png +0 -0
  367. data/app/assets/javascripts/ckeditor/plugins/icons.png +0 -0
  368. data/app/assets/javascripts/ckeditor/plugins/iframe/icons/hidpi/iframe.png +0 -0
  369. data/app/assets/javascripts/ckeditor/plugins/iframe/icons/iframe.png +0 -0
  370. data/app/assets/javascripts/ckeditor/plugins/iframe/lang/en.js +0 -11
  371. data/app/assets/javascripts/ckeditor/plugins/iframe/lang/ru.js +0 -11
  372. data/app/assets/javascripts/ckeditor/plugins/iframe/plugin.js +0 -83
  373. data/app/assets/javascripts/ckeditor/plugins/image/dialogs/image.js +0 -43
  374. data/app/assets/javascripts/ckeditor/plugins/oembed/images/icon.png +0 -0
  375. data/app/assets/javascripts/ckeditor/plugins/oembed/images/placeholder.png +0 -0
  376. data/app/assets/javascripts/ckeditor/plugins/oembed/libs/jquery.oembed.js +0 -70
  377. data/app/assets/javascripts/ckeditor/plugins/oembed/libs/jquery.oembed.min.js +0 -71
  378. data/app/assets/javascripts/ckeditor/plugins/oembed/oembed/images/icon.png +0 -0
  379. data/app/assets/javascripts/ckeditor/plugins/oembed/oembed/images/placeholder.png +0 -0
  380. data/app/assets/javascripts/ckeditor/plugins/oembed/oembed/lang/en.js +0 -23
  381. data/app/assets/javascripts/ckeditor/plugins/oembed/oembed/lang/ru.js +0 -23
  382. data/app/assets/javascripts/ckeditor/plugins/oembed/oembed/libs/jquery.oembed.js +0 -971
  383. data/app/assets/javascripts/ckeditor/plugins/oembed/oembed/libs/jquery.oembed.min.js +0 -11
  384. data/app/assets/javascripts/ckeditor/plugins/oembed/oembed/plugin.js +0 -373
  385. data/app/assets/javascripts/ckeditor/plugins/scayt/dialogs/options.js +0 -20
  386. data/app/assets/javascripts/ckeditor/plugins/smiley/images/angel_smile.gif +0 -0
  387. data/app/assets/javascripts/ckeditor/plugins/smiley/images/angry_smile.gif +0 -0
  388. data/app/assets/javascripts/ckeditor/plugins/smiley/images/broken_heart.gif +0 -0
  389. data/app/assets/javascripts/ckeditor/plugins/smiley/images/confused_smile.gif +0 -0
  390. data/app/assets/javascripts/ckeditor/plugins/smiley/images/cry_smile.gif +0 -0
  391. data/app/assets/javascripts/ckeditor/plugins/smiley/images/devil_smile.gif +0 -0
  392. data/app/assets/javascripts/ckeditor/plugins/smiley/images/embaressed_smile.gif +0 -0
  393. data/app/assets/javascripts/ckeditor/plugins/smiley/images/embarrassed_smile.gif +0 -0
  394. data/app/assets/javascripts/ckeditor/plugins/smiley/images/envelope.gif +0 -0
  395. data/app/assets/javascripts/ckeditor/plugins/smiley/images/heart.gif +0 -0
  396. data/app/assets/javascripts/ckeditor/plugins/smiley/images/kiss.gif +0 -0
  397. data/app/assets/javascripts/ckeditor/plugins/smiley/images/lightbulb.gif +0 -0
  398. data/app/assets/javascripts/ckeditor/plugins/smiley/images/omg_smile.gif +0 -0
  399. data/app/assets/javascripts/ckeditor/plugins/smiley/images/regular_smile.gif +0 -0
  400. data/app/assets/javascripts/ckeditor/plugins/smiley/images/sad_smile.gif +0 -0
  401. data/app/assets/javascripts/ckeditor/plugins/smiley/images/shades_smile.gif +0 -0
  402. data/app/assets/javascripts/ckeditor/plugins/smiley/images/teeth_smile.gif +0 -0
  403. data/app/assets/javascripts/ckeditor/plugins/smiley/images/thumbs_down.gif +0 -0
  404. data/app/assets/javascripts/ckeditor/plugins/smiley/images/thumbs_up.gif +0 -0
  405. data/app/assets/javascripts/ckeditor/plugins/smiley/images/tongue_smile.gif +0 -0
  406. data/app/assets/javascripts/ckeditor/plugins/smiley/images/tounge_smile.gif +0 -0
  407. data/app/assets/javascripts/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif +0 -0
  408. data/app/assets/javascripts/ckeditor/plugins/smiley/images/wink_smile.gif +0 -0
  409. data/app/assets/javascripts/ckeditor/plugins/stylesheetparser/samples/assets/sample.css +0 -70
  410. data/app/assets/javascripts/ckeditor/plugins/stylesheetparser/samples/stylesheetparser.html +0 -82
  411. data/app/assets/javascripts/ckeditor/plugins/symbol/dialogs/lang/en.js +0 -181
  412. data/app/assets/javascripts/ckeditor/plugins/symbol/dialogs/symbol.js +0 -18
  413. data/app/assets/javascripts/ckeditor/plugins/symbol/icons/symbol.png +0 -0
  414. data/app/assets/javascripts/ckeditor/plugins/symbol/lang/en.js +0 -1
  415. data/app/assets/javascripts/ckeditor/plugins/symbol/plugin.js +0 -15
  416. data/app/assets/javascripts/ckeditor/plugins/uicolor/dialogs/uicolor.js +0 -9
  417. data/app/assets/javascripts/ckeditor/plugins/uicolor/yui/assets/hue_bg.png +0 -0
  418. data/app/assets/javascripts/ckeditor/plugins/uicolor/yui/assets/hue_thumb.png +0 -0
  419. data/app/assets/javascripts/ckeditor/plugins/uicolor/yui/assets/picker_mask.png +0 -0
  420. data/app/assets/javascripts/ckeditor/plugins/uicolor/yui/assets/picker_thumb.png +0 -0
  421. data/app/assets/javascripts/ckeditor/plugins/uicolor/yui/assets/yui.css +0 -15
  422. data/app/assets/javascripts/ckeditor/plugins/uicolor/yui/yui.js +0 -225
  423. data/app/assets/javascripts/ckeditor/plugins/youtube/images/icon.png +0 -0
  424. data/app/assets/javascripts/ckeditor/skins/moono/dialog.css +0 -5
  425. data/app/assets/javascripts/ckeditor/skins/moono/dialog_ie.css +0 -5
  426. data/app/assets/javascripts/ckeditor/skins/moono/dialog_ie7.css +0 -5
  427. data/app/assets/javascripts/ckeditor/skins/moono/dialog_ie8.css +0 -5
  428. data/app/assets/javascripts/ckeditor/skins/moono/dialog_iequirks.css +0 -5
  429. data/app/assets/javascripts/ckeditor/skins/moono/dialog_opera.css +0 -5
  430. data/app/assets/javascripts/ckeditor/skins/moono/editor.css +0 -5
  431. data/app/assets/javascripts/ckeditor/skins/moono/editor_gecko.css +0 -5
  432. data/app/assets/javascripts/ckeditor/skins/moono/editor_ie.css +0 -5
  433. data/app/assets/javascripts/ckeditor/skins/moono/editor_ie7.css +0 -5
  434. data/app/assets/javascripts/ckeditor/skins/moono/editor_ie8.css +0 -5
  435. data/app/assets/javascripts/ckeditor/skins/moono/editor_iequirks.css +0 -5
  436. data/app/assets/javascripts/ckeditor/skins/moono/icons.png +0 -0
  437. data/lib/ckeditor/tasks.rake +0 -11
@@ -1 +0,0 @@
1
- CodeMirror.defineMode("xml",function(config,parserConfig){function inText(stream,state){function chain(parser){return state.tokenize=parser,parser(stream,state)}var ch=stream.next(),isClose,c,ok;if(ch=="<"){if(stream.eat("!"))return stream.eat("[")?stream.match("CDATA[")?chain(inBlock("atom","]\]>")):null:stream.match("--")?chain(inBlock("comment","-->")):stream.match("DOCTYPE",!0,!0)?(stream.eatWhile(/[\w\._\-]/),chain(doctype(1))):null;if(stream.eat("?"))return stream.eatWhile(/[\w\._\-]/),state.tokenize=inBlock("meta","?>"),"meta";for(isClose=stream.eat("/"),tagName="";c=stream.eat(/[^\s\u00a0=<>\"\'\/?]/);)tagName+=c;return tagName?(type=isClose?"closeTag":"openTag",state.tokenize=inTag,"tag"):"error"}return ch=="&"?(ok=stream.eat("#")?stream.eat("x")?stream.eatWhile(/[a-fA-F\d]/)&&stream.eat(";"):stream.eatWhile(/[\d]/)&&stream.eat(";"):stream.eatWhile(/[\w\.\-:]/)&&stream.eat(";"),ok?"atom":"error"):(stream.eatWhile(/[^&<]/),null)}function inTag(stream,state){var ch=stream.next();return ch==">"||ch=="/"&&stream.eat(">")?(state.tokenize=inText,type=ch==">"?"endTag":"selfcloseTag","tag"):ch=="="?(type="equals",null):/[\'\"]/.test(ch)?(state.tokenize=inAttribute(ch),state.tokenize(stream,state)):(stream.eatWhile(/[^\s\u00a0=<>\"\']/),"word")}function inAttribute(quote){return function(stream,state){while(!stream.eol())if(stream.next()==quote){state.tokenize=inTag;break}return"string"}}function inBlock(style,terminator){return function(stream,state){while(!stream.eol()){if(stream.match(terminator)){state.tokenize=inText;break}stream.next()}return style}}function doctype(depth){return function(stream,state){for(var ch;(ch=stream.next())!=null;){if(ch=="<")return state.tokenize=doctype(depth+1),state.tokenize(stream,state);if(ch==">")if(depth==1){state.tokenize=inText;break}else return state.tokenize=doctype(depth-1),state.tokenize(stream,state)}return"meta"}}function pass(){for(var i=arguments.length-1;i>=0;i--)curState.cc.push(arguments[i])}function cont(){return pass.apply(null,arguments),!0}function pushContext(tagName,startOfLine){var noIndent=Kludges.doNotIndent.hasOwnProperty(tagName)||curState.context&&curState.context.noIndent;curState.context={prev:curState.context,tagName:tagName,indent:curState.indented,startOfLine:startOfLine,noIndent:noIndent}}function popContext(){curState.context&&(curState.context=curState.context.prev)}function element(type){if(type=="openTag")return curState.tagName=tagName,curState.tagStart=curStream.column(),cont(attributes,endtag(curState.startOfLine));if(type=="closeTag"){var err=!1;return curState.context?curState.context.tagName!=tagName&&(Kludges.implicitlyClosed.hasOwnProperty(curState.context.tagName.toLowerCase())&&popContext(),err=!curState.context||curState.context.tagName!=tagName):err=!0,err&&(setStyle="error"),cont(endclosetag(err))}return cont()}function endtag(startOfLine){return function(type){var tagName=curState.tagName;return(curState.tagName=curState.tagStart=null,type=="selfcloseTag"||type=="endTag"&&Kludges.autoSelfClosers.hasOwnProperty(tagName.toLowerCase()))?(maybePopContext(tagName.toLowerCase()),cont()):type=="endTag"?(maybePopContext(tagName.toLowerCase()),pushContext(tagName,startOfLine),cont()):cont()}}function endclosetag(err){return function(type){return(err&&(setStyle="error"),type=="endTag")?(popContext(),cont()):(setStyle="error",cont(arguments.callee))}}function maybePopContext(nextTagName){for(var parentTagName;;){if(!curState.context)return;if(parentTagName=curState.context.tagName.toLowerCase(),!Kludges.contextGrabbers.hasOwnProperty(parentTagName)||!Kludges.contextGrabbers[parentTagName].hasOwnProperty(nextTagName))return;popContext()}}function attributes(type){return type=="word"?(setStyle="attribute",cont(attribute,attributes)):type=="endTag"||type=="selfcloseTag"?pass():(setStyle="error",cont(attributes))}function attribute(type){return type=="equals"?cont(attvalue,attributes):(Kludges.allowMissing?type=="word"&&(setStyle="attribute"):setStyle="error",type=="endTag"||type=="selfcloseTag"?pass():cont())}function attvalue(type){return type=="string"?cont(attvaluemaybe):type=="word"&&Kludges.allowUnquoted?(setStyle="string",cont()):(setStyle="error",type=="endTag"||type=="selfCloseTag"?pass():cont())}function attvaluemaybe(type){return type=="string"?cont(attvaluemaybe):pass()}var indentUnit=config.indentUnit,multilineTagIndentFactor=parserConfig.multilineTagIndentFactor||1,Kludges=parserConfig.htmlMode?{autoSelfClosers:{area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},implicitlyClosed:{dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},contextGrabbers:{dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}},doNotIndent:{pre:!0},allowUnquoted:!0,allowMissing:!0}:{autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:!1,allowMissing:!1},alignCDATA=parserConfig.alignCDATA,tagName,type,curState,curStream,setStyle;return{startState:function(){return{tokenize:inText,cc:[],indented:0,startOfLine:!0,tagName:null,tagStart:null,context:null}},token:function(stream,state){var style,comb;if(!state.tagName&&stream.sol()&&(state.startOfLine=!0,state.indented=stream.indentation()),stream.eatSpace())return null;if(setStyle=type=tagName=null,style=state.tokenize(stream,state),state.type=type,(style||type)&&style!="comment")for(curState=state,curStream=stream;;)if(comb=state.cc.pop()||element,comb(type||style))break;return state.startOfLine=!1,setStyle||style},indent:function(state,textAfter,fullLine){var context=state.context;if(state.tokenize!=inTag&&state.tokenize!=inText||context&&context.noIndent)return fullLine?fullLine.match(/^(\s*)/)[0].length:0;if(state.tagName)return state.tagStart+indentUnit*multilineTagIndentFactor;if(alignCDATA&&/<!\[CDATA\[/.test(textAfter))return 0;for(context&&/^<\//.test(textAfter)&&(context=context.prev);context&&!context.startOfLine;)context=context.prev;return context?context.indent+indentUnit:0},electricChars:"/",blockCommentStart:"<!--",blockCommentEnd:"-->",configuration:parserConfig.htmlMode?"html":"xml"}}),CodeMirror.defineMIME("text/xml","xml"),CodeMirror.defineMIME("application/xml","xml"),CodeMirror.mimeModes.hasOwnProperty("text/html")||CodeMirror.defineMIME("text/html",{name:"xml",htmlMode:!0}),CodeMirror.defineMode("css",function(config){return CodeMirror.getMode(config,"text/css")}),CodeMirror.defineMode("css-base",function(config,parserConfig){"use strict";function ret(style,tp){return type=tp,style}function tokenBase(stream,state){var ch=stream.next(),result;if(hooks[ch]&&(result=hooks[ch](stream,state),result!==!1))return result;if(ch=="@")return stream.eatWhile(/[\w\\\-]/),ret("def",stream.current());if(ch=="=")ret(null,"compare");else{if((ch=="~"||ch=="|")&&stream.eat("="))return ret(null,"compare");if(ch=='"'||ch=="'")return state.tokenize=tokenString(ch),state.tokenize(stream,state);if(ch=="#")return stream.eatWhile(/[\w\\\-]/),ret("atom","hash");if(ch=="!")return stream.match(/^\s*\w*/),ret("keyword","important");if(/\d/.test(ch))return stream.eatWhile(/[\w.%]/),ret("number","unit");if(ch==="-"){if(/\d/.test(stream.peek()))return stream.eatWhile(/[\w.%]/),ret("number","unit");if(stream.match(/^[^-]+-/))return ret("meta","meta")}else return/[,+>*\/]/.test(ch)?ret(null,"select-op"):ch=="."&&stream.match(/^-?[_a-z][_a-z0-9-]*/i)?ret("qualifier","qualifier"):ch==":"?ret("operator",ch):/[;{}\[\]\(\)]/.test(ch)?ret(null,ch):ch=="u"&&stream.match("rl(")?(stream.backUp(1),state.tokenize=tokenParenthesized,ret("property","variable")):(stream.eatWhile(/[\w\\\-]/),ret("property","variable"))}}function tokenString(quote,nonInclusive){return function(stream,state){for(var escaped=!1,ch;(ch=stream.next())!=null;){if(ch==quote&&!escaped)break;escaped=!escaped&&ch=="\\"}return escaped||(nonInclusive&&stream.backUp(1),state.tokenize=tokenBase),ret("string","string")}}function tokenParenthesized(stream,state){return stream.next(),state.tokenize=stream.match(/\s*[\"\']/,!1)?tokenBase:tokenString(")",!0),ret(null,"(")}var indentUnit=config.indentUnit,hooks=parserConfig.hooks||{},atMediaTypes=parserConfig.atMediaTypes||{},atMediaFeatures=parserConfig.atMediaFeatures||{},propertyKeywords=parserConfig.propertyKeywords||{},colorKeywords=parserConfig.colorKeywords||{},valueKeywords=parserConfig.valueKeywords||{},allowNested=!!parserConfig.allowNested,type=null;return{startState:function(base){return{tokenize:tokenBase,baseIndent:base||0,stack:[]}},token:function(stream,state){var style,context,word,newContext,lastState;return(state.tokenize=state.tokenize||tokenBase,state.tokenize==tokenBase&&stream.eatSpace())?null:(style=state.tokenize(stream,state),style&&typeof style!="string"&&(style=ret(style[0],style[1])),context=state.stack[state.stack.length-1],style=="variable")?(type=="variable-definition"&&state.stack.push("propertyValue"),"variable-2"):(style=="property"?(word=stream.current().toLowerCase(),context=="propertyValue"?style=valueKeywords.hasOwnProperty(word)?"string-2":colorKeywords.hasOwnProperty(word)?"keyword":"variable-2":context=="rule"?propertyKeywords.hasOwnProperty(word)||(style+=" error"):context=="block"?style=propertyKeywords.hasOwnProperty(word)?"property":colorKeywords.hasOwnProperty(word)?"keyword":valueKeywords.hasOwnProperty(word)?"string-2":"tag":context&&context!="@media{"?context=="@media"?style=atMediaTypes[stream.current()]?"attribute":/^(only|not)$/.test(word)?"keyword":word=="and"?"error":atMediaFeatures.hasOwnProperty(word)?"error":"attribute error":context=="@mediaType"?style=atMediaTypes.hasOwnProperty(word)?"attribute":word=="and"?"operator":/^(only|not)$/.test(word)?"error":"error":context=="@mediaType("?propertyKeywords.hasOwnProperty(word)||(atMediaTypes.hasOwnProperty(word)?style="error":word=="and"?style="operator":/^(only|not)$/.test(word)?style="error":style+=" error"):style=context=="@import"?"tag":"error":style="tag"):style=="atom"?context&&context!="@media{"&&context!="block"?context=="propertyValue"?/^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/.test(stream.current())||(style+=" error"):style="error":style="builtin":context=="@media"&&type=="{"&&(style="error"),type=="{"?context=="@media"||context=="@mediaType"?(state.stack.pop(),state.stack[state.stack.length-1]="@media{"):(newContext=allowNested?"block":"rule",state.stack.push(newContext)):type=="}"?(lastState=state.stack[state.stack.length-1],lastState=="interpolation"&&(style="operator"),state.stack.pop(),context=="propertyValue"&&state.stack.pop()):type=="interpolation"?state.stack.push("interpolation"):type=="@media"?state.stack.push("@media"):type=="@import"?state.stack.push("@import"):context=="@media"&&/\b(keyword|attribute)\b/.test(style)?state.stack.push("@mediaType"):context=="@mediaType"&&stream.current()==","?state.stack.pop():context=="@mediaType"&&type=="("?state.stack.push("@mediaType("):context=="@mediaType("&&type==")"?state.stack.pop():(context=="rule"||context=="block")&&type==":"?state.stack.push("propertyValue"):context=="propertyValue"&&type==";"?state.stack.pop():context=="@import"&&type==";"&&state.stack.pop(),style)},indent:function(state,textAfter){var n=state.stack.length;return/^\}/.test(textAfter)&&(n-=state.stack[state.stack.length-1]=="propertyValue"?2:1),state.baseIndent+n*indentUnit},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/"}}),function(){function keySet(array){for(var keys={},i=0;i<array.length;++i)keys[array[i]]=!0;return keys}function tokenCComment(stream,state){for(var maybeEnd=!1,ch;(ch=stream.next())!=null;){if(maybeEnd&&ch=="/"){state.tokenize=null;break}maybeEnd=ch=="*"}return["comment","comment"]}var atMediaTypes=keySet(["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"]),atMediaFeatures=keySet(["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid"]),propertyKeywords=keySet(["align-content","align-items","align-self","alignment-adjust","alignment-baseline","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","baseline-shift","binding","bleed","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","font","font-feature-settings","font-family","font-kerning","font-language-override","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-weight","grid-cell","grid-column","grid-column-align","grid-column-sizing","grid-column-span","grid-columns","grid-flow","grid-row","grid-row-align","grid-row-sizing","grid-row-span","grid-rows","grid-template","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","justify-content","left","letter-spacing","line-break","line-height","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marker-offset","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","max-height","max-width","min-height","min-width","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","play-during","position","presentation-level","punctuation-trim","quotes","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotation","rotation-point","ruby-align","ruby-overhang","ruby-position","ruby-span","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-outline","text-shadow","text-space-collapse","text-transform","text-underline-position","text-wrap","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","word-break","word-spacing","word-wrap","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-profile","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","kerning","text-anchor","writing-mode"]),colorKeywords=keySet(["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"]),valueKeywords=keySet(["above","absolute","activeborder","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","auto","avoid","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break-all","break-word","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","compact","condensed","contain","content","content-box","context-menu","continuous","copy","cover","crop","cross","crosshair","currentcolor","cursive","dashed","decimal","decimal-leading-zero","default","default-button","destination-atop","destination-in","destination-out","destination-over","devanagari","disc","discard","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ew-resize","expanded","extra-condensed","extra-expanded","fantasy","fast","fill","fixed","flat","footnotes","forwards","from","geometricPrecision","georgian","graytext","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hebrew","help","hidden","hide","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-table","inset","inside","intrinsic","invert","italic","justify","kannada","katakana","katakana-iroha","khmer","landscape","lao","large","larger","left","level","lighter","line-through","linear","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","malayalam","match","media-controls-background","media-current-time-display","media-fullscreen-button","media-mute-button","media-play-button","media-return-to-realtime-button","media-rewind-button","media-seek-back-button","media-seek-forward-button","media-slider","media-sliderthumb","media-time-remaining-display","media-volume-slider","media-volume-slider-container","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menulist-text","menulist-textfield","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","nw-resize","nwse-resize","oblique","octal","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","overlay","overline","padding","padding-box","painted","paused","persian","plus-darker","plus-lighter","pointer","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radio","read-only","read-write","read-write-plaintext-only","relative","repeat","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","round","row-resize","rtl","run-in","running","s-resize","sans-serif","scroll","scrollbar","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","semi-condensed","semi-expanded","separate","serif","show","sidama","single","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","solid","somali","source-atop","source-in","source-out","source-over","space","square","square-button","start","static","status-bar","stretch","stroke","sub","subpixel-antialiased","super","sw-resize","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","transparent","ultra-condensed","ultra-expanded","underline","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","vertical","vertical-text","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","x-large","x-small","xor","xx-large","xx-small"]);CodeMirror.defineMIME("text/css",{atMediaTypes:atMediaTypes,atMediaFeatures:atMediaFeatures,propertyKeywords:propertyKeywords,colorKeywords:colorKeywords,valueKeywords:valueKeywords,hooks:{"<":function(stream,state){function tokenSGMLComment(stream,state){for(var dashes=0,ch;(ch=stream.next())!=null;){if(dashes>=2&&ch==">"){state.tokenize=null;break}dashes=ch=="-"?dashes+1:0}return["comment","comment"]}if(stream.eat("!"))return state.tokenize=tokenSGMLComment,tokenSGMLComment(stream,state)},"/":function(stream,state){return stream.eat("*")?(state.tokenize=tokenCComment,tokenCComment(stream,state)):!1}},name:"css-base"}),CodeMirror.defineMIME("text/x-scss",{atMediaTypes:atMediaTypes,atMediaFeatures:atMediaFeatures,propertyKeywords:propertyKeywords,colorKeywords:colorKeywords,valueKeywords:valueKeywords,allowNested:!0,hooks:{$:function(stream){return(stream.match(/^[\w-]+/),stream.peek()==":")?["variable","variable-definition"]:["variable","variable"]},"/":function(stream,state){return stream.eat("/")?(stream.skipToEnd(),["comment","comment"]):stream.eat("*")?(state.tokenize=tokenCComment,tokenCComment(stream,state)):["operator","operator"]},"#":function(stream){return stream.eat("{")?["operator","interpolation"]:(stream.eatWhile(/[\w\\\-]/),["atom","hash"])}},name:"css-base"})}(),CodeMirror.defineMode("htmlmixed",function(config,parserConfig){function html(stream,state){var tagName=state.htmlState.tagName,style=htmlMode.token(stream,state.htmlState),scriptType,i,tp;if(tagName=="script"&&/\btag\b/.test(style)&&stream.current()==">"){for(scriptType=stream.string.slice(Math.max(0,stream.pos-100),stream.pos).match(/\btype\s*=\s*("[^"]+"|'[^']+'|\S+)[^<]*$/i),scriptType=scriptType?scriptType[1]:"",scriptType&&/[\"\']/.test(scriptType.charAt(0))&&(scriptType=scriptType.slice(1,scriptType.length-1)),i=0;i<scriptTypes.length;++i)if(tp=scriptTypes[i],typeof tp.matches=="string"?scriptType==tp.matches:tp.matches.test(scriptType)){tp.mode&&(state.token=script,state.localMode=tp.mode,state.localState=tp.mode.startState&&tp.mode.startState(htmlMode.indent(state.htmlState,"")));break}}else tagName=="style"&&/\btag\b/.test(style)&&stream.current()==">"&&(state.token=css,state.localMode=cssMode,state.localState=cssMode.startState(htmlMode.indent(state.htmlState,"")));return style}function maybeBackup(stream,pat,style){var cur=stream.current(),close=cur.search(pat),m;return close>-1?stream.backUp(cur.length-close):(m=cur.match(/<\/?$/))&&(stream.backUp(cur.length),stream.match(pat,!1)||stream.match(cur[0])),style}function script(stream,state){return stream.match(/^<\/\s*script\s*>/i,!1)?(state.token=html,state.localState=state.localMode=null,html(stream,state)):maybeBackup(stream,/<\/\s*script\s*>/,state.localMode.token(stream,state.localState))}function css(stream,state){return stream.match(/^<\/\s*style\s*>/i,!1)?(state.token=html,state.localState=state.localMode=null,html(stream,state)):maybeBackup(stream,/<\/\s*style\s*>/,cssMode.token(stream,state.localState))}var htmlMode=CodeMirror.getMode(config,{name:"xml",htmlMode:!0}),cssMode=CodeMirror.getMode(config,"css"),scriptTypes=[],scriptTypesConf=parserConfig&&parserConfig.scriptTypes,i,conf;if(scriptTypes.push({matches:/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^$/i,mode:CodeMirror.getMode(config,"javascript")}),scriptTypesConf)for(i=0;i<scriptTypesConf.length;++i)conf=scriptTypesConf[i],scriptTypes.push({matches:conf.matches,mode:conf.mode&&CodeMirror.getMode(config,conf.mode)});return scriptTypes.push({matches:/./,mode:CodeMirror.getMode(config,"text/plain")}),{startState:function(){var state=htmlMode.startState();return{token:html,localMode:null,localState:null,htmlState:state}},copyState:function(state){if(state.localState)var local=CodeMirror.copyState(state.localMode,state.localState);return{token:state.token,localMode:state.localMode,localState:local,htmlState:CodeMirror.copyState(htmlMode,state.htmlState)}},token:function(stream,state){return state.token(stream,state)},indent:function(state,textAfter){return!state.localMode||/^\s*<\//.test(textAfter)?htmlMode.indent(state.htmlState,textAfter):state.localMode.indent?state.localMode.indent(state.localState,textAfter):CodeMirror.Pass},electricChars:"/{}:",innerMode:function(state){return{state:state.localState||state.htmlState,mode:state.localMode||htmlMode}}}},"xml","javascript","css"),CodeMirror.defineMIME("text/html","htmlmixed");
@@ -1 +0,0 @@
1
- (function(){function n(n,t,i){var u=n.getWrapperElement(),r;return r=u.appendChild(document.createElement("div")),r.className=i?"CodeMirror-dialog CodeMirror-dialog-bottom":"CodeMirror-dialog CodeMirror-dialog-top",r.innerHTML=t,r}CodeMirror.defineExtension("openDialog",function(t,i,r){function f(){s||(s=!0,e.parentNode.removeChild(e))}var e=n(this,t,r&&r.bottom),s=!1,h=this,u=e.getElementsByTagName("input")[0],o;if(u){CodeMirror.on(u,"keydown",function(n){r&&r.onKeyDown&&r.onKeyDown(n,u.value,f)||(n.keyCode==13||n.keyCode==27)&&(CodeMirror.e_stop(n),f(),h.focus(),n.keyCode==13&&i(u.value))});if(r&&r.onKeyUp)CodeMirror.on(u,"keyup",function(n){r.onKeyUp(n,u.value,f)});r&&r.value&&(u.value=r.value),u.focus();CodeMirror.on(u,"blur",f)}else if(o=e.getElementsByTagName("button")[0]){CodeMirror.on(o,"click",function(){f(),h.focus()});o.focus();CodeMirror.on(o,"blur",f)}return f}),CodeMirror.defineExtension("openConfirm",function(t,i,r){function l(){h||(h=!0,e.parentNode.removeChild(e),c.focus())}var e=n(this,t,r&&r.bottom),o=e.getElementsByTagName("button"),h=!1,c=this,s=1,u,f;for(o[0].focus(),u=0;u<o.length;++u){f=o[u],function(n){CodeMirror.on(f,"click",function(t){CodeMirror.e_preventDefault(t),l(),n&&n(c)})}(i[u]);CodeMirror.on(f,"blur",function(){--s,setTimeout(function(){s<=0&&l()},200)});CodeMirror.on(f,"focus",function(){++s})}})})(),function(){function s(n){return typeof n=="string"?{token:function(t){if(t.match(n))return"searching";t.next(),t.skipTo(n.charAt(0))||t.skipToEnd()}}:{token:function(t){if(t.match(n))return"searching";while(!t.eol())if(t.next(),t.match(n,!1))break}}}function h(){this.posFrom=this.posTo=this.query=null,this.overlay=null}function t(n){return n.state.search||(n.state.search=new h)}function n(n,t,i){return n.getSearchCursor(t,i,typeof t=="string"&&t==t.toLowerCase())}function i(n,t,i,r){n.openDialog?n.openDialog(t,r):r(prompt(i,""))}function c(n,t,i,r){n.openConfirm?n.openConfirm(t,r):confirm(i)&&r[0]()}function f(n){var t=n.match(/^\/(.*)\/([a-z]*)$/);return t?new RegExp(t[1],t[2].indexOf("i")==-1?"":"i"):n}function r(n,r){var u=t(n);if(u.query)return e(n,r);i(n,l,"Search for:",function(t){n.operation(function(){t&&!u.query&&(u.query=f(t),n.removeOverlay(u.overlay),u.overlay=s(t),n.addOverlay(u.overlay),u.posFrom=u.posTo=n.getCursor(),e(n,r))})})}function e(i,r){i.operation(function(){var f=t(i),u=n(i,f.query,r?f.posFrom:f.posTo);(u.find(r)||(u=n(i,f.query,r?CodeMirror.Pos(i.lastLine()):CodeMirror.Pos(i.firstLine(),0)),u.find(r)))&&(i.setSelection(u.from(),u.to()),f.posFrom=u.from(),f.posTo=u.to())})}function u(n){n.operation(function(){var i=t(n);i.query&&(i.query=null,n.removeOverlay(i.overlay))})}function o(t,r){i(t,a,"Replace:",function(e){e&&(e=f(e),i(t,v,"Replace with:",function(i){if(r)t.operation(function(){for(var u,r=n(t,e);r.findNext();)typeof e!="string"?(u=t.getRange(r.from(),r.to()).match(e),r.replace(i.replace(/\$(\d)/,function(n,t){return u[t]}))):r.replace(i)});else{u(t);var f=n(t,e,t.getCursor()),o=function(){var i=f.from(),r;((r=f.findNext())||(f=n(t,e),(r=f.findNext())&&(!i||f.from().line!=i.line||f.from().ch!=i.ch)))&&(t.setSelection(f.from(),f.to()),c(t,y,"Replace?",[function(){s(r)},o]))},s=function(n){f.replace(typeof e=="string"?i:i.replace(/\$(\d)/,function(t,i){return n[i]})),o()};o()}}))})}var l='Search: <input type="text" style="width: 10em"/> <span style="color: #888">(Use /re/ syntax for regexp search)<\/span>',a='Replace: <input type="text" style="width: 10em"/> <span style="color: #888">(Use /re/ syntax for regexp search)<\/span>',v='With: <input type="text" style="width: 10em"/>',y="Replace? <button>Yes<\/button> <button>No<\/button> <button>Stop<\/button>";CodeMirror.commands.find=function(n){u(n),r(n)},CodeMirror.commands.findNext=r,CodeMirror.commands.findPrev=function(n){r(n,!0)},CodeMirror.commands.clearSearch=u,CodeMirror.commands.replace=o,CodeMirror.commands.replaceAll=function(n){o(n,!0)}}(),function(){function t(t,i,r,u){if(this.atOccurrence=!1,this.doc=t,u==null&&typeof i=="string"&&(u=!1),r=r?t.clipPos(r):n(0,0),this.pos={from:r,to:r},typeof i!="string")i.global||(i=new RegExp(i.source,i.ignoreCase?"ig":"g")),this.matches=function(r,u){var o,h,f,s,c,e;if(r){for(i.lastIndex=0,o=t.getLine(u.line).slice(0,u.ch),h=0;;){if(i.lastIndex=h,c=i.exec(o),!c)break;if(f=c,s=f.index,h=f.index+(f[0].length||1),h==o.length)break}e=f&&f[0].length||0,e||(s==0&&o.length==0?f=undefined:s!=t.getLine(u.line).length&&e++)}else{i.lastIndex=u.ch;var o=t.getLine(u.line),f=i.exec(o),e=f&&f[0].length||0,s=f&&f.index;s+e==o.length||e||(e=1)}if(f&&e)return{from:n(u.line,s),to:n(u.line,s+e),match:f}};else{u&&(i=i.toLowerCase());var e=u?function(n){return n.toLowerCase()}:function(n){return n},f=i.split("\n");this.matches=f.length==1?i.length?function(r,u){var s=e(t.getLine(u.line)),o=i.length,f;if(r?u.ch>=o&&(f=s.lastIndexOf(i,u.ch-o))!=-1:(f=s.indexOf(i,u.ch))!=-1)return{from:n(u.line,f),to:n(u.line,f+o)}}:function(){}:function(i,r){var s=r.line,h=i?f.length-1:0,u=f[h],o=e(t.getLine(s)),c=i?o.indexOf(u)+u.length:o.lastIndexOf(u),l,a,v;if(!(i?c>=r.ch||c!=u.length:c<=r.ch||c!=o.length-u.length))for(;;){if(i?!s:s==t.lineCount()-1)return;if(o=e(t.getLine(s+=i?-1:1)),u=f[i?--h:++h],h>0&&h<f.length-1){if(o!=u)return;continue}return(l=i?o.lastIndexOf(u):o.indexOf(u)+u.length,i?l!=o.length-u.length:l!=u.length)?void 0:(a=n(r.line,c),v=n(s,l),{from:i?v:a,to:i?a:v})}}}}var n=CodeMirror.Pos;t.prototype={findNext:function(){return this.find(!1)},findPrevious:function(){return this.find(!0)},find:function(t){function f(t){var i=n(t,0);return u.pos={from:i,to:i},u.atOccurrence=!1,!1}for(var u=this,i=this.doc.clipPos(t?this.pos.from:this.pos.to),r;;){if(this.pos=this.matches(t,i))return this.pos.from&&this.pos.to||console.log(this.matches,this.pos),this.atOccurrence=!0,this.pos.match||!0;if(t){if(!i.line)return f(0);i=n(i.line-1,this.doc.getLine(i.line-1).length)}else{if(r=this.doc.lineCount(),i.line==r-1)return f(r);i=n(i.line+1,0)}}},from:function(){if(this.atOccurrence)return this.pos.from},to:function(){if(this.atOccurrence)return this.pos.to},replace:function(t){if(this.atOccurrence){var i=CodeMirror.splitLines(t);this.doc.replaceRange(i,this.pos.from,this.pos.to),this.pos.to=n(this.pos.from.line+i.length-1,i[i.length-1].length+(i.length==1?this.pos.from.ch:0))}}},CodeMirror.defineExtension("getSearchCursor",function(n,i,r){return new t(this.doc,n,i,r)}),CodeMirror.defineDocExtension("getSearchCursor",function(n,i,r){return new t(this,n,i,r)})}()
@@ -1,14 +0,0 @@
1
- /*
2
- Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved.
3
- For licensing, see LICENSE.md or http://ckeditor.com/license
4
- */
5
- CKEDITOR.plugins.setLang( 'font', 'en', {
6
- fontSize: {
7
- label: 'Size',
8
- voiceLabel: 'Font Size',
9
- panelTitle: 'Font Size'
10
- },
11
- label: 'Font',
12
- panelTitle: 'Font Name',
13
- voiceLabel: 'Font'
14
- });
@@ -1,14 +0,0 @@
1
- /*
2
- Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved.
3
- For licensing, see LICENSE.md or http://ckeditor.com/license
4
- */
5
- CKEDITOR.plugins.setLang( 'font', 'ru', {
6
- fontSize: {
7
- label: 'Размер',
8
- voiceLabel: 'Размер шрифта',
9
- panelTitle: 'Размер шрифта'
10
- },
11
- label: 'Шрифт',
12
- panelTitle: 'Шрифт',
13
- voiceLabel: 'Шрифт'
14
- });
@@ -1,225 +0,0 @@
1
- /**
2
- * @license Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved.
3
- * For licensing, see LICENSE.md or http://ckeditor.com/license
4
- */
5
-
6
- (function() {
7
- function addCombo( editor, comboName, styleType, lang, entries, defaultLabel, styleDefinition, order ) {
8
- var config = editor.config,
9
- style = new CKEDITOR.style( styleDefinition );
10
-
11
- // Gets the list of fonts from the settings.
12
- var names = entries.split( ';' ),
13
- values = [];
14
-
15
- // Create style objects for all fonts.
16
- var styles = {};
17
- for ( var i = 0; i < names.length; i++ ) {
18
- var parts = names[ i ];
19
-
20
- if ( parts ) {
21
- parts = parts.split( '/' );
22
-
23
- var vars = {},
24
- name = names[ i ] = parts[ 0 ];
25
-
26
- vars[ styleType ] = values[ i ] = parts[ 1 ] || name;
27
-
28
- styles[ name ] = new CKEDITOR.style( styleDefinition, vars );
29
- styles[ name ]._.definition.name = name;
30
- } else
31
- names.splice( i--, 1 );
32
- }
33
-
34
- editor.ui.addRichCombo( comboName, {
35
- label: lang.label,
36
- title: lang.panelTitle,
37
- toolbar: 'styles,' + order,
38
- allowedContent: style,
39
- requiredContent: style,
40
-
41
- panel: {
42
- css: [ CKEDITOR.skin.getPath( 'editor' ) ].concat( config.contentsCss ),
43
- multiSelect: false,
44
- attributes: { 'aria-label': lang.panelTitle }
45
- },
46
-
47
- init: function() {
48
- this.startGroup( lang.panelTitle );
49
-
50
- for ( var i = 0; i < names.length; i++ ) {
51
- var name = names[ i ];
52
-
53
- // Add the tag entry to the panel list.
54
- this.add( name, styles[ name ].buildPreview(), name );
55
- }
56
- },
57
-
58
- onClick: function( value ) {
59
- editor.focus();
60
- editor.fire( 'saveSnapshot' );
61
-
62
- var style = styles[ value ];
63
-
64
- editor[ this.getValue() == value ? 'removeStyle' : 'applyStyle' ]( style );
65
- editor.fire( 'saveSnapshot' );
66
- },
67
-
68
- onRender: function() {
69
- editor.on( 'selectionChange', function( ev ) {
70
- var currentValue = this.getValue();
71
-
72
- var elementPath = ev.data.path,
73
- elements = elementPath.elements;
74
-
75
- // For each element into the elements path.
76
- for ( var i = 0, element; i < elements.length; i++ ) {
77
- element = elements[ i ];
78
-
79
- // Check if the element is removable by any of
80
- // the styles.
81
- for ( var value in styles ) {
82
- if ( styles[ value ].checkElementMatch( element, true ) ) {
83
- if ( value != currentValue )
84
- this.setValue( value );
85
- return;
86
- }
87
- }
88
- }
89
-
90
- // If no styles match, just empty it.
91
- this.setValue( '', defaultLabel );
92
- }, this );
93
- }
94
- });
95
- }
96
-
97
- CKEDITOR.plugins.add( 'font', {
98
- requires: 'richcombo',
99
- lang: 'af,ar,bg,bn,bs,ca,cs,cy,da,de,el,en,en-au,en-ca,en-gb,eo,es,et,eu,fa,fi,fo,fr,fr-ca,gl,gu,he,hi,hr,hu,id,is,it,ja,ka,km,ko,ku,lt,lv,mk,mn,ms,nb,nl,no,pl,pt,pt-br,ro,ru,si,sk,sl,sq,sr,sr-latn,sv,th,tr,ug,uk,vi,zh,zh-cn', // %REMOVE_LINE_CORE%
100
- init: function( editor ) {
101
- var config = editor.config;
102
-
103
- addCombo( editor, 'Font', 'family', editor.lang.font, config.font_names, config.font_defaultLabel, config.font_style, 30 );
104
- addCombo( editor, 'FontSize', 'size', editor.lang.font.fontSize, config.fontSize_sizes, config.fontSize_defaultLabel, config.fontSize_style, 40 );
105
- }
106
- });
107
- })();
108
-
109
- /**
110
- * The list of fonts names to be displayed in the Font combo in the toolbar.
111
- * Entries are separated by semi-colons (`';'`), while it's possible to have more
112
- * than one font for each entry, in the HTML way (separated by comma).
113
- *
114
- * A display name may be optionally defined by prefixing the entries with the
115
- * name and the slash character. For example, `'Arial/Arial, Helvetica, sans-serif'`
116
- * will be displayed as `'Arial'` in the list, but will be outputted as
117
- * `'Arial, Helvetica, sans-serif'`.
118
- *
119
- * config.font_names =
120
- * 'Arial/Arial, Helvetica, sans-serif;' +
121
- * 'Times New Roman/Times New Roman, Times, serif;' +
122
- * 'Verdana';
123
- *
124
- * config.font_names = 'Arial;Times New Roman;Verdana';
125
- *
126
- * @cfg {String} [font_names=see source]
127
- * @member CKEDITOR.config
128
- */
129
- CKEDITOR.config.font_names = 'Arial/Arial, Helvetica, sans-serif;' +
130
- 'Comic Sans MS/Comic Sans MS, cursive;' +
131
- 'Courier New/Courier New, Courier, monospace;' +
132
- 'Georgia/Georgia, serif;' +
133
- 'Lucida Sans Unicode/Lucida Sans Unicode, Lucida Grande, sans-serif;' +
134
- 'Tahoma/Tahoma, Geneva, sans-serif;' +
135
- 'Times New Roman/Times New Roman, Times, serif;' +
136
- 'Trebuchet MS/Trebuchet MS, Helvetica, sans-serif;' +
137
- 'Verdana/Verdana, Geneva, sans-serif';
138
-
139
- /**
140
- * The text to be displayed in the Font combo is none of the available values
141
- * matches the current cursor position or text selection.
142
- *
143
- * // If the default site font is Arial, we may making it more explicit to the end user.
144
- * config.font_defaultLabel = 'Arial';
145
- *
146
- * @cfg {String} [font_defaultLabel='']
147
- * @member CKEDITOR.config
148
- */
149
- CKEDITOR.config.font_defaultLabel = '';
150
-
151
- /**
152
- * The style definition to be used to apply the font in the text.
153
- *
154
- * // This is actually the default value for it.
155
- * config.font_style = {
156
- * element: 'span',
157
- * styles: { 'font-family': '#(family)' },
158
- * overrides: [ { element: 'font', attributes: { 'face': null } } ]
159
- * };
160
- *
161
- * @cfg {Object} [font_style=see example]
162
- * @member CKEDITOR.config
163
- */
164
- CKEDITOR.config.font_style = {
165
- element: 'span',
166
- styles: { 'font-family': '#(family)' },
167
- overrides: [ {
168
- element: 'font', attributes: { 'face': null }
169
- }]
170
- };
171
-
172
- /**
173
- * The list of fonts size to be displayed in the Font Size combo in the
174
- * toolbar. Entries are separated by semi-colons (`';'`).
175
- *
176
- * Any kind of "CSS like" size can be used, like `'12px'`, `'2.3em'`, `'130%'`,
177
- * `'larger'` or `'x-small'`.
178
- *
179
- * A display name may be optionally defined by prefixing the entries with the
180
- * name and the slash character. For example, `'Bigger Font/14px'` will be
181
- * displayed as `'Bigger Font'` in the list, but will be outputted as `'14px'`.
182
- *
183
- * config.fontSize_sizes = '16/16px;24/24px;48/48px;';
184
- *
185
- * config.fontSize_sizes = '12px;2.3em;130%;larger;x-small';
186
- *
187
- * config.fontSize_sizes = '12 Pixels/12px;Big/2.3em;30 Percent More/130%;Bigger/larger;Very Small/x-small';
188
- *
189
- * @cfg {String} [fontSize_sizes=see source]
190
- * @member CKEDITOR.config
191
- */
192
- CKEDITOR.config.fontSize_sizes = '8/8px;9/9px;10/10px;11/11px;12/12px;14/14px;16/16px;18/18px;20/20px;22/22px;24/24px;26/26px;28/28px;36/36px;48/48px;72/72px';
193
-
194
- /**
195
- * The text to be displayed in the Font Size combo is none of the available
196
- * values matches the current cursor position or text selection.
197
- *
198
- * // If the default site font size is 12px, we may making it more explicit to the end user.
199
- * config.fontSize_defaultLabel = '12px';
200
- *
201
- * @cfg {String} [fontSize_defaultLabel='']
202
- * @member CKEDITOR.config
203
- */
204
- CKEDITOR.config.fontSize_defaultLabel = '';
205
-
206
- /**
207
- * The style definition to be used to apply the font size in the text.
208
- *
209
- * // This is actually the default value for it.
210
- * config.fontSize_style = {
211
- * element: 'span',
212
- * styles: { 'font-size': '#(size)' },
213
- * overrides: [ { element :'font', attributes: { 'size': null } } ]
214
- * };
215
- *
216
- * @cfg {Object} [fontSize_style=see example]
217
- * @member CKEDITOR.config
218
- */
219
- CKEDITOR.config.fontSize_style = {
220
- element: 'span',
221
- styles: { 'font-size': '#(size)' },
222
- overrides: [ {
223
- element: 'font', attributes: { 'size': null }
224
- }]
225
- };
@@ -1,73 +0,0 @@
1
- /*********************************************************************************************************/
2
- /**
3
- * highslide plugin for CKEditor 3.x (Author: Lajox ; Email: lajox@19www.com)
4
- * CKEditor 3.x Highslide JS plugin
5
- * version: 1.0
6
- * Released: On 2009-12-11
7
- * Download: http://code.google.com/p/lajox
8
- */
9
- /*********************************************************************************************************/
10
-
11
- CKEDITOR.dialog.add("highslide", function (e) {
12
-
13
- return {
14
- title:e.lang.highslide.title,
15
- resizable:CKEDITOR.DIALOG_RESIZE_BOTH,
16
- minWidth:300,
17
- minHeight:100,
18
- onShow:function () {
19
- },
20
- onLoad:function () {
21
- dialog = this;
22
- this.setupContent();
23
- },
24
- onOk:function () {
25
- },
26
- contents:[
27
- { id:"info",
28
- name:'info',
29
- label:e.lang.highslide.commonTab,
30
- elements:[
31
- {
32
- type:'html',
33
- html:'<span>' + CKEDITOR.tools.htmlEncode(e.lang.highslide.SetHsJsInfo) + '</span>'
34
- },
35
- {
36
- type:'button',
37
- id:'SetHsJsBtn',
38
- label:e.lang.highslide.SetHsJsInfoBtn,
39
- onClick:function () {
40
- makeHS();
41
- }
42
- },
43
- {
44
- type:'html',
45
- html:'<span id=msgok style="display:none;">' + e.lang.highslide.SetHsJsOK + '</span>'
46
- }
47
- ]
48
- }
49
- ],
50
- buttons:[CKEDITOR.dialog.cancelButton]
51
- };
52
-
53
- function makeHS() {
54
- str = e.getData();
55
- str = str.replace(/^|(<a\b[^>]*>)?\s*(<img\b[^/>]*(?:src=("[^"]*"|'[^']*'|\S+))[^>]*>)\s*(?:<\/a>)?/ig, function () {
56
- var $ = arguments;
57
- if ($[0].length) {
58
- return [
59
- '<a href=' + $[3] + ' class="highslide" onclick="return hs.expand(this)">'
60
- , '<img src=' + $[3] + ' class="hs_img" alt="Highslide JS" title="Нажмите чтобы увеличить"></a>'
61
- // , '<div class="highslide-heading">&nbsp;</div>'
62
- ].join("\r\n");
63
- } else {
64
- return '';
65
- }
66
- });
67
-
68
- e.setData(str);
69
-
70
- CKEDITOR.document.getById('msgok').setStyle('display', 'block');
71
- }
72
- });
73
-
@@ -1,7 +0,0 @@
1
- CKEDITOR.plugins.setLang("highslide","en",{
2
- title:"Highslide JS",
3
- commonTab:"Info",
4
- SetHsJsInfo:"Apply all the pictures Highslide JS Effects",
5
- SetHsJsInfoBtn:"Make Highslide JS Effects",
6
- SetHsJsOK: "Highslide added OK"
7
- });
@@ -1,7 +0,0 @@
1
- CKEDITOR.plugins.setLang("highslide", "ru",{
2
- title: "Highslide JS",
3
- commonTab: "Инфо",
4
- SetHsJsInfo: "Добавить Highslide ко всем картинкам",
5
- SetHsJsInfoBtn: "Добавить",
6
- SetHsJsOK: "Highslide добавлен"
7
- });
@@ -1,26 +0,0 @@
1
- /*********************************************************************************************************/
2
- /**
3
- * highslide plugin for CKEditor 3.x (Author: Lajox ; Email: lajox@19www.com)
4
- * CKEditor 3.x Highslide JS plugin
5
- * version: 1.0
6
- * Released: On 2009-12-11
7
- * Download: http://code.google.com/p/lajox
8
- */
9
- /*********************************************************************************************************/
10
-
11
- CKEDITOR.plugins.add('highslide', {
12
- requires: ['dialog'],
13
- lang: ['en', 'ru'],
14
- init: function (editor) {
15
- var b = "highslide";
16
- var c = editor.addCommand(b, new CKEDITOR.dialogCommand(b));
17
- c.modes = {wysiwyg: 1, source: 0};
18
- c.canUndo = false;
19
- editor.ui.addButton("highslide", {
20
- label: editor.lang.highslide.title,
21
- command: b,
22
- icon: this.path + "icon.png"
23
- });
24
- CKEDITOR.dialog.add(b, this.path + "dialogs/hs.js")
25
- }
26
- });
@@ -1,55 +0,0 @@
1
- /*********************************************************************************************************/
2
- /**
3
- * highslide plugin for CKEditor 3.x (Author: Lajox ; Email: lajox@19www.com)
4
- * CKEditor 3.x Highslide JS plugin
5
- * version: 1.0
6
- * Released: On 2009-12-11
7
- * Download: http://code.google.com/p/lajox
8
- */
9
- /*********************************************************************************************************/
10
-
11
- /**************************************************************************************************************
12
- highslide plugin for CKEditor 3.x
13
-
14
- --CKEditor 3.x Highslide JS plugin ( No border and a floating caption )
15
-
16
- Plugin Description: CKEditor 3.x Highslide JS plugin 1.0 ( No border and a floating caption )
17
-
18
- related:
19
- Highslide 4.1.8 ( http://highslide.com )
20
- CKEditor 3.x
21
-
22
- ***************************************************************************************************************/
23
-
24
- /**************Help Begin***************/
25
-
26
- 1. Upload highslide folder to ckeditor/plugins/
27
-
28
- 2. Configured in the ckeditor/config.js :
29
- Add to config.toolbar a value 'highslide'
30
- e.g.
31
-
32
- config.toolbar =
33
- [
34
- [ 'Source', '-', 'Bold', 'Italic', 'highslide' ]
35
- ];
36
-
37
-
38
- 3. Again Configured in the ckeditor/config.js ,
39
- Expand the extra plugin 'highslide' such as:
40
-
41
- config.extraPlugins='myplugin1,myplugin2,highslide';
42
-
43
-
44
- 4. Modify highslide/js/main.js Content:
45
- Just the line:
46
- hs.graphicsDir = '/editor/custom/ckeditor/plugins/highslide/js/graphics/';
47
-
48
-
49
- 5. Modify the default language in highslide/plugin.js
50
- Just the line:
51
- lang : ['en'],
52
-
53
- /**************Help End***************/
54
-
55
-
@@ -1,93 +0,0 @@
1
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
2
- "http://www.w3.org/TR/html4/loose.dtd">
3
- <html lang="en">
4
- <head>
5
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
6
- <title>HTML Buttons plugin</title>
7
- <link href="styles.css" rel="stylesheet" type="text/css">
8
- </head>
9
-
10
- <body>
11
- <h1>HTML Buttons Plugin for CKEditor</h1>
12
-
13
- <h2>Introduction</h2>
14
- <p>This is plugin helps creating custom buttons to insert a block of desired HTML in <a href="http://www.ckeditor.com">CKEditor</a>.</p>
15
- <p>Sample icons from <a href='http://tango.freedesktop.org'>Tango!</a></p>
16
-
17
- <h3 id="contact">Author:</h3>
18
- <p><a href="mailto:amla70@gmail.com">Alfonso Mart&iacute;nez de Lizarrondo</a></p>
19
- <h3>Sponsored by:</h3>
20
- <h3>Version history: </h3>
21
- <ol>
22
- <li>1.0: 23-May-2012. First version.</li>
23
- </ol>
24
-
25
- <h2>Installation</h2>
26
- <h3>1. Copying the files</h3>
27
- <p>Extract the contents of the zip in you plugins directory, so it ends up like
28
- this<br>
29
- <!--<img src="installation.png" alt="Screenshot of installation" width="311" height="346" longdesc="#install">-->
30
- </p>
31
- <pre id="--install">
32
- ckeditor\
33
- ...
34
- images\
35
- lang\
36
- plugins\
37
- ...
38
- htmlbuttons\
39
- plugin.js
40
- docs\
41
- install.html
42
- ...
43
- skins\
44
- themes\
45
- </pre>
46
- <h3>2. Adding it to CKEditor</h3>
47
- <p>Now add the plugin in your <em>config.js</em> or custom js configuration
48
- file:
49
- <code>config.extraPlugins='htmlbuttons'; </code>
50
- </p>
51
-
52
- <h3>3. Define your buttons</h3>
53
- <p>You must add to your config a new entry defining the buttons that you want to use. For example:</p>
54
- <pre>
55
- config.htmlbuttons = [
56
- {
57
- name:'button1',
58
- icon:'icon1.png',
59
- html:'&lt;a href="http://www.google.com">Search something&lt;/a>',
60
- title:'A link to Google'
61
- },
62
- {
63
- name:'button2',
64
- icon:'icon2.png',
65
- html:'&lt;table>&lt;tr>&lt;td>&nbsp;&lt;/td>&lt;td>&nbsp;&lt;/td>&lt;/tr>&lt;tr>&lt;td>&nbsp;&lt;/td>&lt;td>&nbsp;&lt;/td>&lt;/tr>&lt;/table>',
66
- title:'A simple table'
67
- },
68
- {
69
- name:'button3',
70
- icon:'icon3.png',
71
- html:'&lt;ol>&lt;li>Item 1 &lt;ol>&lt;li>Sub item 1&lt;/li>&lt;li>Sub item 2&lt;/li>&lt;/ol>&lt;/li>&lt;/ol>',
72
- title:'A nested list'
73
- }
74
- ];
75
- </pre>
76
-
77
- <h3>4. Add them to your toolbar</h3>
78
- <p>In your toolbar configuration, add a new button for each item in the place where you want the list to show up.</p>
79
- <p>Example</p>
80
- <pre>config.toolbar_Basic = [["Bold","Italic","-","NumberedList","BulletedList","-","Link","Unlink","-","Maximize", "About", '-', 'button1', 'button2', 'button3']];
81
- </pre>
82
-
83
- <h3>5. Use them</h3>
84
- <p>Now empty the cache of your browser and reload the editor, the new buttons should show up and you can insert the HTML that you have configured with each button</p>
85
- <!--
86
- <h2>Final notes</h2>
87
- -->
88
-
89
- <h2>Disclaimers</h2>
90
- <p>CKEditor is &copy; CKSource.com</p>
91
- <p>Sample icons from <a href='http://tango.freedesktop.org'>Tango!</a></p>
92
- </body>
93
- </html>