typo 5.0.2 → 5.0.3.98

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1342) hide show
  1. data/CHANGES-5.0.4 +33 -0
  2. data/MAINTAINERS +4 -8
  3. data/README +10 -8
  4. data/{README.SIDEBARS → SIDEBARS} +0 -0
  5. data/app/apis/blogger_service.rb +2 -3
  6. data/app/apis/meta_weblog_service.rb +6 -7
  7. data/app/apis/movable_type_service.rb +6 -6
  8. data/app/controllers/accounts_controller.rb +9 -9
  9. data/app/controllers/admin/base_controller.rb +3 -22
  10. data/app/controllers/admin/blacklist_controller.rb +4 -4
  11. data/app/controllers/admin/cache_controller.rb +0 -9
  12. data/app/controllers/admin/categories_controller.rb +4 -8
  13. data/app/controllers/admin/comments_controller.rb +4 -4
  14. data/app/controllers/admin/content_controller.rb +44 -44
  15. data/app/controllers/admin/dashboard_controller.rb +8 -0
  16. data/app/controllers/admin/feedback_controller.rb +1 -2
  17. data/app/controllers/admin/pages_controller.rb +49 -24
  18. data/app/controllers/admin/resources_controller.rb +5 -5
  19. data/app/controllers/admin/settings_controller.rb +7 -0
  20. data/app/controllers/admin/sidebar_controller.rb +5 -8
  21. data/app/controllers/admin/tags_controller.rb +43 -0
  22. data/app/controllers/admin/themes_controller.rb +1 -0
  23. data/app/controllers/admin/trackbacks_controller.rb +4 -13
  24. data/app/controllers/admin/users_controller.rb +7 -13
  25. data/app/controllers/application.rb +2 -24
  26. data/app/controllers/articles_controller.rb +28 -23
  27. data/app/controllers/comments_controller.rb +4 -6
  28. data/app/controllers/content_controller.rb +1 -4
  29. data/app/controllers/feedback_controller.rb +12 -2
  30. data/app/controllers/grouping_controller.rb +7 -1
  31. data/app/controllers/redirect_controller.rb +6 -0
  32. data/app/controllers/theme_controller.rb +2 -3
  33. data/app/controllers/trackbacks_controller.rb +4 -6
  34. data/app/controllers/xml_controller.rb +1 -1
  35. data/app/helpers/admin/base_helper.rb +58 -9
  36. data/app/helpers/admin/content_helper.rb +7 -0
  37. data/app/helpers/admin/pages_helper.rb +21 -0
  38. data/app/helpers/admin/settings_helper.rb +1 -1
  39. data/app/helpers/application_helper.rb +11 -9
  40. data/app/helpers/content_helper.rb +5 -14
  41. data/app/helpers/sidebar_helper.rb +1 -1
  42. data/app/models/article.rb +81 -68
  43. data/app/models/blog.rb +14 -44
  44. data/app/models/blog_sweeper.rb +30 -10
  45. data/app/models/category.rb +1 -1
  46. data/app/models/comment.rb +0 -7
  47. data/app/models/content.rb +40 -18
  48. data/app/models/feedback.rb +8 -0
  49. data/app/models/notification_mailer.rb +8 -1
  50. data/app/models/page.rb +5 -0
  51. data/app/models/page_cache.rb +22 -7
  52. data/app/models/profile.rb +10 -0
  53. data/app/models/right.rb +4 -0
  54. data/app/models/sidebar.rb +10 -3
  55. data/app/models/tag.rb +20 -8
  56. data/app/models/trackback.rb +1 -1
  57. data/app/models/url_policy.rb +179 -0
  58. data/app/models/user.rb +30 -0
  59. data/app/views/accounts/login.html.erb +1 -1
  60. data/app/views/accounts/logout.html.erb +1 -1
  61. data/app/views/accounts/signup.html.erb +1 -1
  62. data/app/views/admin/blacklist/_blacklist_patterns.html.erb +2 -2
  63. data/app/views/admin/blacklist/_form.html.erb +13 -14
  64. data/app/views/admin/blacklist/_quick_post.html.erb +4 -13
  65. data/app/views/admin/blacklist/edit.html.erb +8 -11
  66. data/app/views/admin/blacklist/index.html.erb +10 -0
  67. data/app/views/admin/categories/_categories.html.erb +8 -8
  68. data/app/views/admin/categories/_form.html.erb +8 -3
  69. data/app/views/admin/categories/_quick_post.html.erb +1 -1
  70. data/app/views/admin/categories/edit.html.erb +3 -7
  71. data/app/views/admin/categories/index.html.erb +15 -0
  72. data/app/views/admin/comments/_form.html.erb +19 -18
  73. data/app/views/admin/comments/edit.html.erb +3 -7
  74. data/app/views/admin/comments/index.html.erb +30 -0
  75. data/app/views/admin/comments/show.html.erb +24 -8
  76. data/app/views/admin/content/_articles.html.erb +31 -10
  77. data/app/views/admin/content/_attachment.html.erb +18 -2
  78. data/app/views/admin/content/_form.html.erb +76 -86
  79. data/app/views/admin/content/_pages.html.erb +3 -3
  80. data/app/views/admin/content/edit.html.erb +2 -9
  81. data/app/views/admin/content/index.html.erb +17 -0
  82. data/app/views/admin/content/new.html.erb +1 -4
  83. data/app/views/admin/content/show.html.erb +2 -23
  84. data/app/views/admin/dashboard/_comments.html.erb +17 -0
  85. data/app/views/admin/dashboard/_overview.html.erb +4 -0
  86. data/app/views/admin/dashboard/_popular.html.erb +12 -0
  87. data/app/views/admin/dashboard/_posts.html.erb +15 -0
  88. data/app/views/admin/dashboard/_sysinfo.html.erb +13 -0
  89. data/app/views/admin/dashboard/_welcome.html.erb +3 -0
  90. data/app/views/admin/dashboard/index.html.erb +13 -57
  91. data/app/views/admin/feedback/index.html.erb +41 -0
  92. data/app/views/admin/pages/_form.html.erb +31 -35
  93. data/app/views/admin/pages/_pages.html.erb +48 -23
  94. data/app/views/admin/pages/edit.html.erb +3 -8
  95. data/app/views/admin/pages/index.html.erb +6 -0
  96. data/app/views/admin/pages/new.html.erb +2 -5
  97. data/app/views/admin/pages/show.html.erb +2 -12
  98. data/app/views/admin/resources/_resources.html.erb +6 -5
  99. data/app/views/admin/resources/index.html.erb +12 -0
  100. data/app/views/admin/settings/feedback.html.erb +1 -19
  101. data/app/views/admin/settings/index.html.erb +3 -23
  102. data/app/views/admin/settings/podcast.html.erb +1 -10
  103. data/app/views/admin/settings/read.html.erb +1 -10
  104. data/app/views/admin/settings/spam.html.erb +1 -10
  105. data/app/views/admin/settings/write.html.erb +2 -14
  106. data/app/views/admin/shared/_edit.html.erb +1 -4
  107. data/app/views/admin/sidebar/index.html.erb +11 -8
  108. data/app/views/admin/tags/_form.html.erb +4 -0
  109. data/app/views/admin/tags/_tags.html.erb +19 -0
  110. data/app/views/admin/tags/destroy.html.erb +11 -0
  111. data/app/views/admin/tags/edit.html.erb +13 -0
  112. data/app/views/admin/tags/index.html.erb +12 -0
  113. data/app/views/admin/textfilters/edit.html.erb +3 -5
  114. data/app/views/admin/textfilters/index.html.erb +12 -0
  115. data/app/views/admin/textfilters/macro_help.html.erb +1 -1
  116. data/app/views/admin/textfilters/new.html.erb +2 -8
  117. data/app/views/admin/textfilters/show.html.erb +1 -6
  118. data/app/views/admin/textfilters/show_help.html.erb +1 -5
  119. data/app/views/admin/themes/index.html.erb +19 -15
  120. data/app/views/admin/trackbacks/edit.html.erb +1 -4
  121. data/app/views/admin/trackbacks/index.html.erb +22 -0
  122. data/app/views/admin/users/_form.html.erb +0 -10
  123. data/app/views/admin/users/edit.html.erb +3 -6
  124. data/app/views/admin/users/index.html.erb +29 -0
  125. data/app/views/admin/users/new.html.erb +1 -4
  126. data/app/views/articles/_atom_feed.atom.builder +1 -1
  127. data/app/views/articles/archives.html.erb +2 -2
  128. data/app/views/articles/groupings.html.erb +1 -1
  129. data/app/views/layouts/administration.html.erb +44 -51
  130. data/app/views/notification_mailer/_mail_footer.html.erb +1 -1
  131. data/app/views/notification_mailer/article.html.erb +1 -1
  132. data/app/views/notification_mailer/comment.html.erb +1 -1
  133. data/app/views/notification_mailer/notif_user.html.erb +12 -0
  134. data/app/views/xml/_googlesitemap_item_category.googlesitemap.builder +1 -1
  135. data/config/environment.rb +0 -1
  136. data/config/environments/development.rb +5 -0
  137. data/config/initializers/access_rules.rb +110 -0
  138. data/config/initializers/active_record_hacks.rb +17 -0
  139. data/config/initializers/benchmark_hacks.rb +9 -0
  140. data/config/routes.rb +36 -15
  141. data/db/converters/README +2 -2
  142. data/db/migrate/004_add_sidebars.rb +8 -9
  143. data/db/migrate/067_remove_blog_ids.rb +22 -0
  144. data/db/migrate/068_fix_grants.rb +113 -0
  145. data/db/migrate/069_add_modules_to_profile.rb +18 -0
  146. data/db/schema.mysql-v3.sql +3 -217
  147. data/db/schema.mysql.sql +3 -217
  148. data/db/schema.postgresql.sql +3 -217
  149. data/db/schema.rb +32 -29
  150. data/db/schema.sqlite.sql +3 -217
  151. data/db/schema.sqlserver.sql +3 -231
  152. data/db/schema_version +1 -1
  153. data/lang/de_DE.rb +6 -9
  154. data/lang/en_US.rb +3 -0
  155. data/lang/es_MX.rb +556 -0
  156. data/lang/fr_FR.rb +171 -45
  157. data/lang/it_IT.rb +566 -0
  158. data/lang/ja_JP.rb +553 -0
  159. data/lang/pl_PL.rb +553 -0
  160. data/lang/ro_RO.rb +6 -10
  161. data/lib/sidebars/plugin.rb +1 -3
  162. data/lib/stateful.rb +6 -2
  163. data/lib/tasks/release.rake +3 -8
  164. data/lib/typo_version.rb +1 -1
  165. data/public/.DS_Store +0 -0
  166. data/public/.htaccess +1 -1
  167. data/public/images/admin/arrow_comment_group.gif +0 -0
  168. data/public/images/admin/typologo.gif +0 -0
  169. data/public/javascripts/controls.js +484 -354
  170. data/public/javascripts/dragdrop.js +88 -58
  171. data/public/javascripts/effects.js +396 -364
  172. data/public/javascripts/fckcustom.js +27 -0
  173. data/public/javascripts/fckeditor/editor/_source/classes/fckcontextmenu.js +209 -0
  174. data/public/javascripts/fckeditor/editor/_source/classes/fckdataprocessor.js +119 -0
  175. data/public/javascripts/fckeditor/editor/_source/classes/fckdocumentfragment_gecko.js +46 -0
  176. data/public/javascripts/fckeditor/editor/_source/classes/fckdocumentfragment_ie.js +58 -0
  177. data/public/javascripts/fckeditor/editor/_source/classes/fckdomrange.js +808 -0
  178. data/public/javascripts/fckeditor/editor/_source/classes/fckdomrange_gecko.js +103 -0
  179. data/public/javascripts/fckeditor/editor/_source/classes/fckdomrange_ie.js +198 -0
  180. data/public/javascripts/fckeditor/editor/_source/classes/fckdomrangeiterator.js +306 -0
  181. data/public/javascripts/fckeditor/editor/_source/classes/fckeditingarea.js +344 -0
  182. data/public/javascripts/fckeditor/editor/_source/classes/fckelementpath.js +70 -0
  183. data/public/javascripts/fckeditor/editor/_source/classes/fckenterkey.js +629 -0
  184. data/public/javascripts/fckeditor/editor/_source/classes/fckevents.js +66 -0
  185. data/public/javascripts/fckeditor/editor/_source/classes/fckicon.js +103 -0
  186. data/public/javascripts/fckeditor/editor/_source/classes/fckiecleanup.js +68 -0
  187. data/public/javascripts/fckeditor/editor/_source/classes/fckimagepreloader.js +64 -0
  188. data/public/javascripts/fckeditor/editor/_source/classes/fckkeystrokehandler.js +141 -0
  189. data/public/javascripts/fckeditor/editor/_source/classes/fckmenublock.js +150 -0
  190. data/public/javascripts/fckeditor/editor/_source/classes/fckmenublockpanel.js +54 -0
  191. data/public/javascripts/fckeditor/editor/_source/classes/fckmenuitem.js +160 -0
  192. data/public/javascripts/fckeditor/editor/_source/classes/fckpanel.js +338 -0
  193. data/public/javascripts/fckeditor/editor/_source/classes/fckplugin.js +56 -0
  194. data/public/javascripts/fckeditor/editor/_source/classes/fckspecialcombo.js +377 -0
  195. data/public/javascripts/fckeditor/editor/_source/classes/fckstyle.js +1280 -0
  196. data/public/javascripts/fckeditor/editor/_source/classes/fcktoolbar.js +103 -0
  197. data/public/javascripts/fckeditor/editor/_source/classes/fcktoolbarbreak_gecko.js +36 -0
  198. data/public/javascripts/fckeditor/editor/_source/classes/fcktoolbarbreak_ie.js +38 -0
  199. data/public/javascripts/fckeditor/editor/_source/classes/fcktoolbarbutton.js +76 -0
  200. data/public/javascripts/fckeditor/editor/_source/classes/fcktoolbarbuttonui.js +194 -0
  201. data/public/javascripts/fckeditor/editor/_source/classes/fcktoolbarfontformatcombo.js +139 -0
  202. data/public/javascripts/fckeditor/editor/_source/classes/fcktoolbarfontscombo.js +98 -0
  203. data/public/javascripts/fckeditor/editor/_source/classes/fcktoolbarfontsizecombo.js +76 -0
  204. data/public/javascripts/fckeditor/editor/_source/classes/fcktoolbarpanelbutton.js +92 -0
  205. data/public/javascripts/fckeditor/editor/_source/classes/fcktoolbarspecialcombo.js +143 -0
  206. data/public/javascripts/fckeditor/editor/_source/classes/fcktoolbarstylecombo.js +200 -0
  207. data/public/javascripts/fckeditor/editor/_source/classes/fckw3crange.js +447 -0
  208. data/public/javascripts/fckeditor/editor/_source/classes/fckxml.js +108 -0
  209. data/public/javascripts/fckeditor/editor/_source/classes/fckxml_gecko.js +87 -0
  210. data/public/javascripts/fckeditor/editor/_source/classes/fckxml_ie.js +88 -0
  211. data/public/javascripts/fckeditor/editor/_source/commandclasses/fck_othercommands.js +462 -0
  212. data/public/javascripts/fckeditor/editor/_source/commandclasses/fckblockquotecommand.js +194 -0
  213. data/public/javascripts/fckeditor/editor/_source/commandclasses/fckcorestylecommand.js +59 -0
  214. data/public/javascripts/fckeditor/editor/_source/commandclasses/fckfitwindow.js +180 -0
  215. data/public/javascripts/fckeditor/editor/_source/commandclasses/fckindentcommands.js +280 -0
  216. data/public/javascripts/fckeditor/editor/_source/commandclasses/fckjustifycommands.js +173 -0
  217. data/public/javascripts/fckeditor/editor/_source/commandclasses/fcklistcommands.js +382 -0
  218. data/public/javascripts/fckeditor/editor/_source/commandclasses/fcknamedcommand.js +37 -0
  219. data/public/javascripts/fckeditor/editor/_source/commandclasses/fckpasteplaintextcommand.js +38 -0
  220. data/public/javascripts/fckeditor/editor/_source/commandclasses/fckpastewordcommand.js +40 -0
  221. data/public/javascripts/fckeditor/editor/_source/commandclasses/fckremoveformatcommand.js +45 -0
  222. data/public/javascripts/fckeditor/editor/_source/commandclasses/fckshowblocks.js +76 -0
  223. data/public/javascripts/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_gecko.js +39 -0
  224. data/public/javascripts/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_ie.js +67 -0
  225. data/public/javascripts/fckeditor/editor/_source/commandclasses/fckstylecommand.js +60 -0
  226. data/public/javascripts/fckeditor/editor/_source/commandclasses/fcktablecommand.js +106 -0
  227. data/public/javascripts/fckeditor/editor/_source/commandclasses/fcktextcolorcommand.js +183 -0
  228. data/public/javascripts/fckeditor/editor/_source/fckconstants.js +56 -0
  229. data/public/javascripts/fckeditor/editor/_source/fckeditorapi.js +168 -0
  230. data/public/javascripts/fckeditor/editor/_source/fckjscoreextensions.js +166 -0
  231. data/public/javascripts/fckeditor/editor/_source/fckscriptloader.js +122 -0
  232. data/public/javascripts/fckeditor/editor/_source/internals/fck.js +1065 -0
  233. data/public/javascripts/fckeditor/editor/_source/internals/fck_contextmenu.js +325 -0
  234. data/public/javascripts/fckeditor/editor/_source/internals/fck_gecko.js +458 -0
  235. data/public/javascripts/fckeditor/editor/_source/internals/fck_ie.js +420 -0
  236. data/public/javascripts/fckeditor/editor/_source/internals/fckbrowserinfo.js +59 -0
  237. data/public/javascripts/fckeditor/editor/_source/internals/fckcodeformatter.js +100 -0
  238. data/public/javascripts/fckeditor/editor/_source/internals/fckcommands.js +167 -0
  239. data/public/javascripts/fckeditor/editor/_source/internals/fckconfig.js +239 -0
  240. data/public/javascripts/fckeditor/editor/_source/internals/fckdebug.js +56 -0
  241. data/public/javascripts/fckeditor/editor/_source/internals/fckdialog.js +38 -0
  242. data/public/javascripts/fckeditor/editor/_source/internals/fckdialog_gecko.js +103 -0
  243. data/public/javascripts/fckeditor/editor/_source/internals/fckdialog_ie.js +48 -0
  244. data/public/javascripts/fckeditor/editor/_source/internals/fckdocumentprocessor.js +225 -0
  245. data/public/javascripts/fckeditor/editor/_source/internals/fckdomtools.js +884 -0
  246. data/public/javascripts/fckeditor/editor/_source/internals/fcklanguagemanager.js +162 -0
  247. data/public/javascripts/fckeditor/editor/_source/internals/fcklisthandler.js +152 -0
  248. data/public/javascripts/fckeditor/editor/_source/internals/fcklistslib.js +60 -0
  249. data/public/javascripts/fckeditor/editor/_source/internals/fckplugins.js +46 -0
  250. data/public/javascripts/fckeditor/editor/_source/internals/fckregexlib.js +96 -0
  251. data/public/javascripts/fckeditor/editor/_source/internals/fckselection.js +42 -0
  252. data/public/javascripts/fckeditor/editor/_source/internals/fckselection_gecko.js +211 -0
  253. data/public/javascripts/fckeditor/editor/_source/internals/fckselection_ie.js +201 -0
  254. data/public/javascripts/fckeditor/editor/_source/internals/fckstyles.js +372 -0
  255. data/public/javascripts/fckeditor/editor/_source/internals/fcktablehandler.js +858 -0
  256. data/public/javascripts/fckeditor/editor/_source/internals/fcktablehandler_gecko.js +56 -0
  257. data/public/javascripts/fckeditor/editor/_source/internals/fcktablehandler_ie.js +64 -0
  258. data/public/javascripts/fckeditor/editor/_source/internals/fcktoolbaritems.js +123 -0
  259. data/public/javascripts/fckeditor/editor/_source/internals/fcktoolbarset.js +373 -0
  260. data/public/javascripts/fckeditor/editor/_source/internals/fcktools.js +581 -0
  261. data/public/javascripts/fckeditor/editor/_source/internals/fcktools_gecko.js +270 -0
  262. data/public/javascripts/fckeditor/editor/_source/internals/fcktools_ie.js +227 -0
  263. data/public/javascripts/fckeditor/editor/_source/internals/fckundo.js +220 -0
  264. data/public/javascripts/fckeditor/editor/_source/internals/fckurlparams.js +39 -0
  265. data/public/javascripts/fckeditor/editor/_source/internals/fckxhtml.js +460 -0
  266. data/public/javascripts/fckeditor/editor/_source/internals/fckxhtml_gecko.js +105 -0
  267. data/public/javascripts/fckeditor/editor/_source/internals/fckxhtml_ie.js +208 -0
  268. data/public/javascripts/fckeditor/editor/_source/internals/fckxhtmlentities.js +354 -0
  269. data/public/javascripts/fckeditor/editor/css/behaviors/disablehandles.htc +15 -0
  270. data/public/javascripts/fckeditor/editor/css/behaviors/showtableborders.htc +36 -0
  271. data/public/javascripts/fckeditor/editor/css/fck_editorarea.css +91 -0
  272. data/public/javascripts/fckeditor/editor/css/fck_internal.css +182 -0
  273. data/public/javascripts/fckeditor/editor/css/fck_showtableborders_gecko.css +42 -0
  274. data/public/javascripts/fckeditor/editor/css/images/block_address.png +0 -0
  275. data/public/javascripts/fckeditor/editor/css/images/block_blockquote.png +0 -0
  276. data/public/javascripts/fckeditor/editor/css/images/block_div.png +0 -0
  277. data/public/javascripts/fckeditor/editor/css/images/block_h1.png +0 -0
  278. data/public/javascripts/fckeditor/editor/css/images/block_h2.png +0 -0
  279. data/public/javascripts/fckeditor/editor/css/images/block_h3.png +0 -0
  280. data/public/javascripts/fckeditor/editor/css/images/block_h4.png +0 -0
  281. data/public/javascripts/fckeditor/editor/css/images/block_h5.png +0 -0
  282. data/public/javascripts/fckeditor/editor/css/images/block_h6.png +0 -0
  283. data/public/javascripts/fckeditor/editor/css/images/block_p.png +0 -0
  284. data/public/javascripts/fckeditor/editor/css/images/block_pre.png +0 -0
  285. data/public/javascripts/fckeditor/editor/css/images/fck_anchor.gif +0 -0
  286. data/public/javascripts/fckeditor/editor/css/images/fck_flashlogo.gif +0 -0
  287. data/public/javascripts/fckeditor/editor/css/images/fck_hiddenfield.gif +0 -0
  288. data/public/javascripts/fckeditor/editor/css/images/fck_pagebreak.gif +0 -0
  289. data/public/javascripts/fckeditor/editor/dialog/common/fck_dialog_common.css +78 -0
  290. data/public/javascripts/fckeditor/editor/dialog/common/fck_dialog_common.js +165 -0
  291. data/public/javascripts/fckeditor/editor/dialog/common/images/locked.gif +0 -0
  292. data/public/javascripts/fckeditor/editor/dialog/common/images/reset.gif +0 -0
  293. data/public/javascripts/fckeditor/editor/dialog/common/images/unlocked.gif +0 -0
  294. data/public/javascripts/fckeditor/editor/dialog/fck_about.html +155 -0
  295. data/public/javascripts/fckeditor/editor/dialog/fck_about/logo_fckeditor.gif +0 -0
  296. data/public/javascripts/fckeditor/editor/dialog/fck_about/logo_fredck.gif +0 -0
  297. data/public/javascripts/fckeditor/editor/dialog/fck_anchor.html +207 -0
  298. data/public/javascripts/fckeditor/editor/dialog/fck_button.html +109 -0
  299. data/public/javascripts/fckeditor/editor/dialog/fck_checkbox.html +109 -0
  300. data/public/javascripts/fckeditor/editor/dialog/fck_colorselector.html +171 -0
  301. data/public/javascripts/fckeditor/editor/dialog/fck_docprops.html +600 -0
  302. data/public/javascripts/fckeditor/editor/dialog/fck_docprops/fck_document_preview.html +113 -0
  303. data/public/javascripts/fckeditor/editor/dialog/fck_find.html +173 -0
  304. data/public/javascripts/fckeditor/editor/dialog/fck_flash.html +146 -0
  305. data/public/javascripts/fckeditor/editor/dialog/fck_flash/fck_flash.js +285 -0
  306. data/public/javascripts/fckeditor/editor/dialog/fck_flash/fck_flash_preview.html +46 -0
  307. data/public/javascripts/fckeditor/editor/dialog/fck_form.html +106 -0
  308. data/public/javascripts/fckeditor/editor/dialog/fck_hiddenfield.html +118 -0
  309. data/public/javascripts/fckeditor/editor/dialog/fck_image.html +252 -0
  310. data/public/javascripts/fckeditor/editor/dialog/fck_image/fck_image.js +492 -0
  311. data/public/javascripts/fckeditor/editor/dialog/fck_image/fck_image_preview.html +66 -0
  312. data/public/javascripts/fckeditor/editor/dialog/fck_link.html +293 -0
  313. data/public/javascripts/fckeditor/editor/dialog/fck_link/fck_link.js +715 -0
  314. data/public/javascripts/fckeditor/editor/dialog/fck_listprop.html +116 -0
  315. data/public/javascripts/fckeditor/editor/dialog/fck_paste.html +340 -0
  316. data/public/javascripts/fckeditor/editor/dialog/fck_radiobutton.html +109 -0
  317. data/public/javascripts/fckeditor/editor/dialog/fck_replace.html +452 -0
  318. data/public/javascripts/fckeditor/editor/dialog/fck_select.html +177 -0
  319. data/public/javascripts/fckeditor/editor/dialog/fck_select/fck_select.js +194 -0
  320. data/public/javascripts/fckeditor/editor/dialog/fck_smiley.html +106 -0
  321. data/public/javascripts/fckeditor/editor/dialog/fck_source.html +65 -0
  322. data/public/javascripts/fckeditor/editor/dialog/fck_specialchar.html +118 -0
  323. data/public/javascripts/fckeditor/editor/dialog/fck_spellerpages.html +64 -0
  324. data/{spec/fixtures/notifications.yml → public/javascripts/fckeditor/editor/dialog/fck_spellerpages/spellerpages/blank.html} +0 -0
  325. data/public/javascripts/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controlWindow.js +87 -0
  326. data/public/javascripts/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controls.html +153 -0
  327. data/public/javascripts/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.cfm +146 -0
  328. data/public/javascripts/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.php +196 -0
  329. data/public/javascripts/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.pl +180 -0
  330. data/public/javascripts/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellChecker.js +462 -0
  331. data/public/javascripts/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellchecker.html +71 -0
  332. data/public/javascripts/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellerStyle.css +49 -0
  333. data/public/javascripts/fckeditor/editor/dialog/fck_spellerpages/spellerpages/wordWindow.js +272 -0
  334. data/public/javascripts/fckeditor/editor/dialog/fck_table.html +293 -0
  335. data/public/javascripts/fckeditor/editor/dialog/fck_tablecell.html +255 -0
  336. data/public/javascripts/fckeditor/editor/dialog/fck_template.html +242 -0
  337. data/public/javascripts/fckeditor/editor/dialog/fck_template/images/template1.gif +0 -0
  338. data/public/javascripts/fckeditor/editor/dialog/fck_template/images/template2.gif +0 -0
  339. data/public/javascripts/fckeditor/editor/dialog/fck_template/images/template3.gif +0 -0
  340. data/public/javascripts/fckeditor/editor/dialog/fck_textarea.html +95 -0
  341. data/public/javascripts/fckeditor/editor/dialog/fck_textfield.html +140 -0
  342. data/public/javascripts/fckeditor/editor/dtd/fck_dtd_test.html +43 -0
  343. data/public/javascripts/fckeditor/editor/dtd/fck_xhtml10strict.js +116 -0
  344. data/public/javascripts/fckeditor/editor/dtd/fck_xhtml10transitional.js +140 -0
  345. data/public/javascripts/fckeditor/editor/fckdebug.html +153 -0
  346. data/public/javascripts/fckeditor/editor/fckdialog.html +336 -0
  347. data/public/javascripts/fckeditor/editor/fckeditor.html +228 -0
  348. data/public/javascripts/fckeditor/editor/fckeditor.original.html +331 -0
  349. data/public/javascripts/fckeditor/editor/filemanager/browser/default/browser.css +89 -0
  350. data/public/javascripts/fckeditor/editor/filemanager/browser/default/browser.html +163 -0
  351. data/public/javascripts/fckeditor/editor/filemanager/browser/default/frmactualfolder.html +67 -0
  352. data/public/javascripts/fckeditor/editor/filemanager/browser/default/frmcreatefolder.html +113 -0
  353. data/public/javascripts/fckeditor/editor/filemanager/browser/default/frmfolders.html +196 -0
  354. data/public/javascripts/fckeditor/editor/filemanager/browser/default/frmresourceslist.html +167 -0
  355. data/public/javascripts/fckeditor/editor/filemanager/browser/default/frmresourcetype.html +65 -0
  356. data/public/javascripts/fckeditor/editor/filemanager/browser/default/frmupload.html +114 -0
  357. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/ButtonArrow.gif +0 -0
  358. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/Folder.gif +0 -0
  359. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/Folder32.gif +0 -0
  360. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/FolderOpened.gif +0 -0
  361. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/FolderOpened32.gif +0 -0
  362. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/FolderUp.gif +0 -0
  363. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/ai.gif +0 -0
  364. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/avi.gif +0 -0
  365. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/bmp.gif +0 -0
  366. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/cs.gif +0 -0
  367. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/default.icon.gif +0 -0
  368. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/dll.gif +0 -0
  369. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/doc.gif +0 -0
  370. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/exe.gif +0 -0
  371. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/fla.gif +0 -0
  372. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/gif.gif +0 -0
  373. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/htm.gif +0 -0
  374. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/html.gif +0 -0
  375. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/jpg.gif +0 -0
  376. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/js.gif +0 -0
  377. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/mdb.gif +0 -0
  378. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/mp3.gif +0 -0
  379. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/pdf.gif +0 -0
  380. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/png.gif +0 -0
  381. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/ppt.gif +0 -0
  382. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/rdp.gif +0 -0
  383. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/swf.gif +0 -0
  384. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/swt.gif +0 -0
  385. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/txt.gif +0 -0
  386. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/vsd.gif +0 -0
  387. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/xls.gif +0 -0
  388. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/xml.gif +0 -0
  389. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/32/zip.gif +0 -0
  390. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/ai.gif +0 -0
  391. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/avi.gif +0 -0
  392. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/bmp.gif +0 -0
  393. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/cs.gif +0 -0
  394. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/default.icon.gif +0 -0
  395. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/dll.gif +0 -0
  396. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/doc.gif +0 -0
  397. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/exe.gif +0 -0
  398. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/fla.gif +0 -0
  399. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/gif.gif +0 -0
  400. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/htm.gif +0 -0
  401. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/html.gif +0 -0
  402. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/jpg.gif +0 -0
  403. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/js.gif +0 -0
  404. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/mdb.gif +0 -0
  405. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/mp3.gif +0 -0
  406. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/pdf.gif +0 -0
  407. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/png.gif +0 -0
  408. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/ppt.gif +0 -0
  409. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/rdp.gif +0 -0
  410. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/swf.gif +0 -0
  411. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/swt.gif +0 -0
  412. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/txt.gif +0 -0
  413. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/vsd.gif +0 -0
  414. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/xls.gif +0 -0
  415. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/xml.gif +0 -0
  416. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/icons/zip.gif +0 -0
  417. data/public/javascripts/fckeditor/editor/filemanager/browser/default/images/spacer.gif +0 -0
  418. data/public/javascripts/fckeditor/editor/filemanager/browser/default/js/common.js +55 -0
  419. data/public/javascripts/fckeditor/editor/filemanager/browser/default/js/fckxml.js +129 -0
  420. data/public/javascripts/fckeditor/editor/filemanager/connectors/asp/basexml.asp +62 -0
  421. data/public/javascripts/fckeditor/editor/filemanager/connectors/asp/class_upload.asp +353 -0
  422. data/public/javascripts/fckeditor/editor/filemanager/connectors/asp/commands.asp +198 -0
  423. data/public/javascripts/fckeditor/editor/filemanager/connectors/asp/config.asp +128 -0
  424. data/public/javascripts/fckeditor/editor/filemanager/connectors/asp/connector.asp +88 -0
  425. data/public/javascripts/fckeditor/editor/filemanager/connectors/asp/io.asp +222 -0
  426. data/public/javascripts/fckeditor/editor/filemanager/connectors/asp/upload.asp +61 -0
  427. data/public/javascripts/fckeditor/editor/filemanager/connectors/asp/util.asp +55 -0
  428. data/public/javascripts/fckeditor/editor/filemanager/connectors/aspx/connector.aspx +30 -0
  429. data/public/javascripts/fckeditor/editor/filemanager/connectors/aspx/upload.aspx +30 -0
  430. data/public/javascripts/fckeditor/editor/filemanager/connectors/cfm/ImageObject.cfc +273 -0
  431. data/public/javascripts/fckeditor/editor/filemanager/connectors/cfm/cf5_connector.cfm +315 -0
  432. data/public/javascripts/fckeditor/editor/filemanager/connectors/cfm/cf5_upload.cfm +296 -0
  433. data/public/javascripts/fckeditor/editor/filemanager/connectors/cfm/cf_basexml.cfm +68 -0
  434. data/public/javascripts/fckeditor/editor/filemanager/connectors/cfm/cf_commands.cfm +225 -0
  435. data/public/javascripts/fckeditor/editor/filemanager/connectors/cfm/cf_connector.cfm +89 -0
  436. data/public/javascripts/fckeditor/editor/filemanager/connectors/cfm/cf_io.cfm +288 -0
  437. data/public/javascripts/fckeditor/editor/filemanager/connectors/cfm/cf_upload.cfm +68 -0
  438. data/public/javascripts/fckeditor/editor/filemanager/connectors/cfm/cf_util.cfm +132 -0
  439. data/public/javascripts/fckeditor/editor/filemanager/connectors/cfm/config.cfm +183 -0
  440. data/public/javascripts/fckeditor/editor/filemanager/connectors/cfm/connector.cfm +31 -0
  441. data/public/javascripts/fckeditor/editor/filemanager/connectors/cfm/image.cfc +1325 -0
  442. data/public/javascripts/fckeditor/editor/filemanager/connectors/cfm/upload.cfm +31 -0
  443. data/public/javascripts/fckeditor/editor/filemanager/connectors/lasso/config.lasso +65 -0
  444. data/public/javascripts/fckeditor/editor/filemanager/connectors/lasso/connector.lasso +257 -0
  445. data/public/javascripts/fckeditor/editor/filemanager/connectors/lasso/upload.lasso +157 -0
  446. data/public/javascripts/fckeditor/editor/filemanager/connectors/perl/basexml.pl +63 -0
  447. data/public/javascripts/fckeditor/editor/filemanager/connectors/perl/commands.pl +168 -0
  448. data/public/javascripts/fckeditor/editor/filemanager/connectors/perl/connector.cgi +137 -0
  449. data/public/javascripts/fckeditor/editor/filemanager/connectors/perl/io.pl +131 -0
  450. data/public/javascripts/fckeditor/editor/filemanager/connectors/perl/upload.cgi +118 -0
  451. data/public/javascripts/fckeditor/editor/filemanager/connectors/perl/upload_fck.pl +667 -0
  452. data/public/javascripts/fckeditor/editor/filemanager/connectors/perl/util.pl +68 -0
  453. data/public/javascripts/fckeditor/editor/filemanager/connectors/php/basexml.php +93 -0
  454. data/public/javascripts/fckeditor/editor/filemanager/connectors/php/commands.php +245 -0
  455. data/public/javascripts/fckeditor/editor/filemanager/connectors/php/config.php +140 -0
  456. data/public/javascripts/fckeditor/editor/filemanager/connectors/php/connector.php +87 -0
  457. data/public/javascripts/fckeditor/editor/filemanager/connectors/php/io.php +272 -0
  458. data/public/javascripts/fckeditor/editor/filemanager/connectors/php/phpcompat.php +17 -0
  459. data/public/javascripts/fckeditor/editor/filemanager/connectors/php/upload.php +59 -0
  460. data/public/javascripts/fckeditor/editor/filemanager/connectors/php/util.php +185 -0
  461. data/public/javascripts/fckeditor/editor/filemanager/connectors/py/config.py +135 -0
  462. data/public/javascripts/fckeditor/editor/filemanager/connectors/py/connector.py +118 -0
  463. data/public/javascripts/fckeditor/editor/filemanager/connectors/py/fckcommands.py +181 -0
  464. data/public/javascripts/fckeditor/editor/filemanager/connectors/py/fckconnector.py +90 -0
  465. data/public/javascripts/fckeditor/editor/filemanager/connectors/py/fckoutput.py +111 -0
  466. data/public/javascripts/fckeditor/editor/filemanager/connectors/py/fckutil.py +127 -0
  467. data/public/javascripts/fckeditor/editor/filemanager/connectors/py/htaccess.txt +23 -0
  468. data/public/javascripts/fckeditor/editor/filemanager/connectors/py/upload.py +88 -0
  469. data/public/javascripts/fckeditor/editor/filemanager/connectors/py/wsgi.py +58 -0
  470. data/public/javascripts/fckeditor/editor/filemanager/connectors/py/zope.py +189 -0
  471. data/public/javascripts/fckeditor/editor/filemanager/connectors/test.html +177 -0
  472. data/public/javascripts/fckeditor/editor/filemanager/connectors/uploadtest.html +149 -0
  473. data/public/javascripts/fckeditor/editor/images/anchor.gif +0 -0
  474. data/public/javascripts/fckeditor/editor/images/arrow_ltr.gif +0 -0
  475. data/public/javascripts/fckeditor/editor/images/arrow_rtl.gif +0 -0
  476. data/public/javascripts/fckeditor/editor/images/smiley/msn/angel_smile.gif +0 -0
  477. data/public/javascripts/fckeditor/editor/images/smiley/msn/angry_smile.gif +0 -0
  478. data/public/javascripts/fckeditor/editor/images/smiley/msn/broken_heart.gif +0 -0
  479. data/public/javascripts/fckeditor/editor/images/smiley/msn/cake.gif +0 -0
  480. data/public/javascripts/fckeditor/editor/images/smiley/msn/confused_smile.gif +0 -0
  481. data/public/javascripts/fckeditor/editor/images/smiley/msn/cry_smile.gif +0 -0
  482. data/public/javascripts/fckeditor/editor/images/smiley/msn/devil_smile.gif +0 -0
  483. data/public/javascripts/fckeditor/editor/images/smiley/msn/embaressed_smile.gif +0 -0
  484. data/public/javascripts/fckeditor/editor/images/smiley/msn/envelope.gif +0 -0
  485. data/public/javascripts/fckeditor/editor/images/smiley/msn/heart.gif +0 -0
  486. data/public/javascripts/fckeditor/editor/images/smiley/msn/kiss.gif +0 -0
  487. data/public/javascripts/fckeditor/editor/images/smiley/msn/lightbulb.gif +0 -0
  488. data/public/javascripts/fckeditor/editor/images/smiley/msn/omg_smile.gif +0 -0
  489. data/public/javascripts/fckeditor/editor/images/smiley/msn/regular_smile.gif +0 -0
  490. data/public/javascripts/fckeditor/editor/images/smiley/msn/sad_smile.gif +0 -0
  491. data/public/javascripts/fckeditor/editor/images/smiley/msn/shades_smile.gif +0 -0
  492. data/public/javascripts/fckeditor/editor/images/smiley/msn/teeth_smile.gif +0 -0
  493. data/public/javascripts/fckeditor/editor/images/smiley/msn/thumbs_down.gif +0 -0
  494. data/public/javascripts/fckeditor/editor/images/smiley/msn/thumbs_up.gif +0 -0
  495. data/public/javascripts/fckeditor/editor/images/smiley/msn/tounge_smile.gif +0 -0
  496. data/public/javascripts/fckeditor/editor/images/smiley/msn/whatchutalkingabout_smile.gif +0 -0
  497. data/public/javascripts/fckeditor/editor/images/smiley/msn/wink_smile.gif +0 -0
  498. data/{test/mocks/themes/standard_issue → public/javascripts/fckeditor/editor}/images/spacer.gif +0 -0
  499. data/public/javascripts/fckeditor/editor/js/fckeditorcode_gecko.js +108 -0
  500. data/public/javascripts/fckeditor/editor/js/fckeditorcode_ie.js +109 -0
  501. data/public/javascripts/fckeditor/editor/lang/_translationstatus.txt +76 -0
  502. data/public/javascripts/fckeditor/editor/lang/af.js +516 -0
  503. data/public/javascripts/fckeditor/editor/lang/ar.js +516 -0
  504. data/public/javascripts/fckeditor/editor/lang/bg.js +516 -0
  505. data/public/javascripts/fckeditor/editor/lang/bn.js +516 -0
  506. data/public/javascripts/fckeditor/editor/lang/bs.js +516 -0
  507. data/public/javascripts/fckeditor/editor/lang/ca.js +516 -0
  508. data/public/javascripts/fckeditor/editor/lang/cs.js +516 -0
  509. data/public/javascripts/fckeditor/editor/lang/da.js +516 -0
  510. data/public/javascripts/fckeditor/editor/lang/de.js +516 -0
  511. data/public/javascripts/fckeditor/editor/lang/el.js +516 -0
  512. data/public/javascripts/fckeditor/editor/lang/en-au.js +516 -0
  513. data/public/javascripts/fckeditor/editor/lang/en-ca.js +516 -0
  514. data/public/javascripts/fckeditor/editor/lang/en-uk.js +516 -0
  515. data/public/javascripts/fckeditor/editor/lang/en.js +516 -0
  516. data/public/javascripts/fckeditor/editor/lang/eo.js +516 -0
  517. data/public/javascripts/fckeditor/editor/lang/es.js +516 -0
  518. data/public/javascripts/fckeditor/editor/lang/et.js +516 -0
  519. data/public/javascripts/fckeditor/editor/lang/eu.js +517 -0
  520. data/public/javascripts/fckeditor/editor/lang/fa.js +516 -0
  521. data/public/javascripts/fckeditor/editor/lang/fi.js +516 -0
  522. data/public/javascripts/fckeditor/editor/lang/fo.js +516 -0
  523. data/public/javascripts/fckeditor/editor/lang/fr.js +516 -0
  524. data/public/javascripts/fckeditor/editor/lang/gl.js +516 -0
  525. data/public/javascripts/fckeditor/editor/lang/he.js +516 -0
  526. data/public/javascripts/fckeditor/editor/lang/hi.js +516 -0
  527. data/public/javascripts/fckeditor/editor/lang/hr.js +516 -0
  528. data/public/javascripts/fckeditor/editor/lang/hu.js +516 -0
  529. data/public/javascripts/fckeditor/editor/lang/it.js +516 -0
  530. data/public/javascripts/fckeditor/editor/lang/ja.js +516 -0
  531. data/public/javascripts/fckeditor/editor/lang/km.js +516 -0
  532. data/public/javascripts/fckeditor/editor/lang/ko.js +516 -0
  533. data/public/javascripts/fckeditor/editor/lang/lt.js +516 -0
  534. data/public/javascripts/fckeditor/editor/lang/lv.js +516 -0
  535. data/public/javascripts/fckeditor/editor/lang/mn.js +516 -0
  536. data/public/javascripts/fckeditor/editor/lang/ms.js +516 -0
  537. data/public/javascripts/fckeditor/editor/lang/nb.js +516 -0
  538. data/public/javascripts/fckeditor/editor/lang/nl.js +516 -0
  539. data/public/javascripts/fckeditor/editor/lang/no.js +516 -0
  540. data/public/javascripts/fckeditor/editor/lang/pl.js +516 -0
  541. data/public/javascripts/fckeditor/editor/lang/pt-br.js +516 -0
  542. data/public/javascripts/fckeditor/editor/lang/pt.js +516 -0
  543. data/public/javascripts/fckeditor/editor/lang/ro.js +516 -0
  544. data/public/javascripts/fckeditor/editor/lang/ru.js +516 -0
  545. data/public/javascripts/fckeditor/editor/lang/sk.js +516 -0
  546. data/public/javascripts/fckeditor/editor/lang/sl.js +516 -0
  547. data/public/javascripts/fckeditor/editor/lang/sr-latn.js +516 -0
  548. data/public/javascripts/fckeditor/editor/lang/sr.js +516 -0
  549. data/public/javascripts/fckeditor/editor/lang/sv.js +516 -0
  550. data/public/javascripts/fckeditor/editor/lang/th.js +516 -0
  551. data/public/javascripts/fckeditor/editor/lang/tr.js +516 -0
  552. data/public/javascripts/fckeditor/editor/lang/uk.js +516 -0
  553. data/public/javascripts/fckeditor/editor/lang/vi.js +516 -0
  554. data/public/javascripts/fckeditor/editor/lang/zh-cn.js +516 -0
  555. data/public/javascripts/fckeditor/editor/lang/zh.js +516 -0
  556. data/public/javascripts/fckeditor/editor/plugins/autogrow/fckplugin.js +92 -0
  557. data/public/javascripts/fckeditor/editor/plugins/bbcode/_sample/sample.config.js +26 -0
  558. data/public/javascripts/fckeditor/editor/plugins/bbcode/_sample/sample.html +67 -0
  559. data/public/javascripts/fckeditor/editor/plugins/bbcode/fckplugin.js +123 -0
  560. data/public/javascripts/fckeditor/editor/plugins/dragresizetable/fckplugin.js +503 -0
  561. data/public/javascripts/fckeditor/editor/plugins/placeholder/fck_placeholder.html +100 -0
  562. data/public/javascripts/fckeditor/editor/plugins/placeholder/fckplugin.js +187 -0
  563. data/public/javascripts/fckeditor/editor/plugins/placeholder/lang/de.js +27 -0
  564. data/public/javascripts/fckeditor/editor/plugins/placeholder/lang/en.js +27 -0
  565. data/public/javascripts/fckeditor/editor/plugins/placeholder/lang/fr.js +27 -0
  566. data/public/javascripts/fckeditor/editor/plugins/placeholder/lang/it.js +27 -0
  567. data/public/javascripts/fckeditor/editor/plugins/placeholder/lang/pl.js +27 -0
  568. data/public/javascripts/fckeditor/editor/plugins/placeholder/placeholder.gif +0 -0
  569. data/public/javascripts/fckeditor/editor/plugins/simplecommands/fckplugin.js +29 -0
  570. data/public/javascripts/fckeditor/editor/plugins/tablecommands/fckplugin.js +33 -0
  571. data/public/javascripts/fckeditor/editor/skins/_fckviewstrips.html +121 -0
  572. data/public/javascripts/fckeditor/editor/skins/default/fck_dialog.css +139 -0
  573. data/public/javascripts/fckeditor/editor/skins/default/fck_editor.css +464 -0
  574. data/public/javascripts/fckeditor/editor/skins/default/fck_strip.gif +0 -0
  575. data/public/javascripts/fckeditor/editor/skins/default/images/toolbar.arrowright.gif +0 -0
  576. data/public/javascripts/fckeditor/editor/skins/default/images/toolbar.buttonarrow.gif +0 -0
  577. data/public/javascripts/fckeditor/editor/skins/default/images/toolbar.collapse.gif +0 -0
  578. data/{themes/standard_issue/images/spacer.gif → public/javascripts/fckeditor/editor/skins/default/images/toolbar.end.gif} +0 -0
  579. data/public/javascripts/fckeditor/editor/skins/default/images/toolbar.expand.gif +0 -0
  580. data/public/javascripts/fckeditor/editor/skins/default/images/toolbar.separator.gif +0 -0
  581. data/public/javascripts/fckeditor/editor/skins/default/images/toolbar.start.gif +0 -0
  582. data/public/javascripts/fckeditor/editor/skins/office2003/fck_dialog.css +140 -0
  583. data/public/javascripts/fckeditor/editor/skins/office2003/fck_editor.css +476 -0
  584. data/public/javascripts/fckeditor/editor/skins/office2003/fck_strip.gif +0 -0
  585. data/public/javascripts/fckeditor/editor/skins/office2003/images/toolbar.arrowright.gif +0 -0
  586. data/public/javascripts/fckeditor/editor/skins/office2003/images/toolbar.bg.gif +0 -0
  587. data/public/javascripts/fckeditor/editor/skins/office2003/images/toolbar.buttonarrow.gif +0 -0
  588. data/public/javascripts/fckeditor/editor/skins/office2003/images/toolbar.collapse.gif +0 -0
  589. data/public/javascripts/fckeditor/editor/skins/office2003/images/toolbar.end.gif +0 -0
  590. data/public/javascripts/fckeditor/editor/skins/office2003/images/toolbar.expand.gif +0 -0
  591. data/public/javascripts/fckeditor/editor/skins/office2003/images/toolbar.separator.gif +0 -0
  592. data/public/javascripts/fckeditor/editor/skins/office2003/images/toolbar.start.gif +0 -0
  593. data/public/javascripts/fckeditor/editor/skins/silver/fck_dialog.css +143 -0
  594. data/public/javascripts/fckeditor/editor/skins/silver/fck_editor.css +473 -0
  595. data/public/javascripts/fckeditor/editor/skins/silver/fck_strip.gif +0 -0
  596. data/public/javascripts/fckeditor/editor/skins/silver/images/toolbar.arrowright.gif +0 -0
  597. data/public/javascripts/fckeditor/editor/skins/silver/images/toolbar.buttonarrow.gif +0 -0
  598. data/public/javascripts/fckeditor/editor/skins/silver/images/toolbar.buttonbg.gif +0 -0
  599. data/public/javascripts/fckeditor/editor/skins/silver/images/toolbar.collapse.gif +0 -0
  600. data/public/javascripts/fckeditor/editor/skins/silver/images/toolbar.end.gif +0 -0
  601. data/public/javascripts/fckeditor/editor/skins/silver/images/toolbar.expand.gif +0 -0
  602. data/public/javascripts/fckeditor/editor/skins/silver/images/toolbar.separator.gif +0 -0
  603. data/public/javascripts/fckeditor/editor/skins/silver/images/toolbar.start.gif +0 -0
  604. data/public/javascripts/fckeditor/fckconfig.js +306 -0
  605. data/public/javascripts/fckeditor/fckeditor.afp +161 -0
  606. data/public/javascripts/fckeditor/fckeditor.asp +235 -0
  607. data/public/javascripts/fckeditor/fckeditor.cfc +273 -0
  608. data/public/javascripts/fckeditor/fckeditor.cfm +210 -0
  609. data/public/javascripts/fckeditor/fckeditor.js +212 -0
  610. data/public/javascripts/fckeditor/fckeditor.lasso +112 -0
  611. data/public/javascripts/fckeditor/fckeditor.py +162 -0
  612. data/public/javascripts/fckeditor/fckpackager.xml +262 -0
  613. data/public/javascripts/fckeditor/fckstyles.xml +114 -0
  614. data/public/javascripts/fckeditor/fcktemplates.xml +103 -0
  615. data/public/javascripts/fckeditor/license.txt +1247 -0
  616. data/public/javascripts/lang/default.js +21 -0
  617. data/public/javascripts/lang/fr_FR.js +21 -0
  618. data/public/javascripts/lightbox.js +169 -315
  619. data/public/javascripts/prototype.js +2817 -1107
  620. data/public/javascripts/typo.js +51 -11
  621. data/public/stylesheets/administration.css +170 -94
  622. data/public/stylesheets/lightbox.css +59 -19
  623. data/public/stylesheets/typo_code.css +62 -0
  624. data/public/stylesheets/user-styles.css +16 -0
  625. data/spec/controllers/accounts_controller_spec.rb +2 -7
  626. data/spec/controllers/admin/article_preview_spec.rb +20 -0
  627. data/spec/controllers/admin/blacklist_controller_spec.rb +59 -0
  628. data/spec/controllers/admin/categories_controller_spec.rb +97 -0
  629. data/spec/controllers/admin/comments_controller_spec.rb +74 -0
  630. data/spec/controllers/admin/content_controller_spec.rb +212 -0
  631. data/spec/controllers/admin/feedback_controller_spec.rb +45 -0
  632. data/spec/controllers/admin/pages_controller_spec.rb +83 -0
  633. data/spec/controllers/admin/profiles_controller_spec.rb +13 -0
  634. data/spec/controllers/admin/resources_controller_spec.rb +46 -0
  635. data/spec/controllers/admin/settings_controller_spec.rb +22 -0
  636. data/spec/controllers/admin/textfilters_controller_spec.rb +24 -0
  637. data/spec/controllers/admin/themes_controller_spec.rb +30 -0
  638. data/spec/controllers/admin/trackbacks_controller_spec.rb +57 -0
  639. data/spec/controllers/admin/users_controller_spec.rb +65 -0
  640. data/spec/controllers/articles_controller_spec.rb +4 -8
  641. data/spec/controllers/authors_controller_spec.rb +2 -2
  642. data/spec/controllers/backend_controller_spec.rb +318 -0
  643. data/spec/controllers/categories_controller_spec.rb +2 -2
  644. data/spec/controllers/comments_controller_spec.rb +8 -20
  645. data/spec/controllers/redirect_controller_spec.rb +35 -0
  646. data/spec/controllers/tags_controller_spec.rb +2 -2
  647. data/spec/controllers/textfilter_controller_spec.rb +264 -0
  648. data/spec/controllers/theme_controller_spec.rb +43 -0
  649. data/spec/controllers/xml_controller_spec.rb +232 -0
  650. data/spec/models/article_closing_spec.rb +38 -0
  651. data/spec/models/article_spec.rb +285 -9
  652. data/spec/models/blacklist_pattern_spec.rb +12 -0
  653. data/spec/models/blog_spec.rb +10 -4
  654. data/spec/models/cache_support_spec.rb +0 -4
  655. data/spec/models/category_spec.rb +1 -5
  656. data/spec/models/comment_spec.rb +186 -0
  657. data/spec/models/configuration_spec.rb +7 -9
  658. data/spec/models/content_state/feedback_states_spec.rb +64 -0
  659. data/spec/models/notification_spec.rb +8 -0
  660. data/spec/models/page_spec.rb +2 -10
  661. data/spec/models/ping_pinger_spec.rb +33 -0
  662. data/spec/models/ping_spec.rb +2 -9
  663. data/spec/models/resource_spec.rb +0 -2
  664. data/spec/models/route_cache_spec.rb +11 -0
  665. data/spec/models/sidebar_spec.rb +7 -0
  666. data/spec/models/tag_spec.rb +19 -8
  667. data/spec/models/theme_spec.rb +6 -7
  668. data/spec/models/trackback_spec.rb +1 -1
  669. data/spec/models/trigger_spec.rb +0 -2
  670. data/spec/models/typo_deprecated_spec.rb +18 -0
  671. data/spec/models/url_policy_spec.rb +65 -0
  672. data/spec/models/user_spec.rb +9 -4
  673. data/spec/spec.opts +2 -5
  674. data/spec/spec_helper.rb +5 -2
  675. data/spec/views/comments/html_sanitization_spec.rb +0 -14
  676. data/test/fixtures/blacklist_patterns.yml +1 -3
  677. data/test/fixtures/blogs.yml +2 -44
  678. data/test/fixtures/categories.yml +0 -6
  679. data/test/fixtures/categorizations.yml +17 -17
  680. data/test/fixtures/contents.yml +15 -53
  681. data/test/fixtures/feedback.yml +11 -31
  682. data/test/fixtures/profiles.yml +9 -0
  683. data/test/fixtures/redirects.yml +0 -3
  684. data/test/fixtures/resources.yml +3 -6
  685. data/test/fixtures/sidebars.yml +0 -2
  686. data/test/fixtures/tags.yml +3 -6
  687. data/test/fixtures/text_filters.yml +1 -6
  688. data/test/fixtures/users.yml +0 -10
  689. data/test/mocks/themes/typographic/.DS_Store +0 -0
  690. data/test/mocks/themes/typographic/about.markdown +7 -0
  691. data/test/mocks/themes/typographic/images/Thumbs.db +0 -0
  692. data/test/mocks/themes/typographic/images/accept.png +0 -0
  693. data/test/mocks/themes/typographic/images/accept50.png +0 -0
  694. data/test/mocks/themes/typographic/images/bg_body.jpg +0 -0
  695. data/test/mocks/themes/typographic/images/bg_white.png +0 -0
  696. data/test/mocks/themes/typographic/images/bg_wrapper.jpg +0 -0
  697. data/test/mocks/themes/typographic/images/bullet_bottom.png +0 -0
  698. data/test/mocks/themes/typographic/images/bullet_right.png +0 -0
  699. data/test/mocks/themes/typographic/images/email_open.png +0 -0
  700. data/test/mocks/themes/typographic/images/email_open50.png +0 -0
  701. data/test/mocks/themes/typographic/images/meta.png +0 -0
  702. data/test/mocks/themes/typographic/images/page_edit.png +0 -0
  703. data/test/mocks/themes/typographic/images/page_edit50.png +0 -0
  704. data/test/mocks/themes/typographic/images/tag.png +0 -0
  705. data/test/mocks/themes/typographic/images/user.png +0 -0
  706. data/test/mocks/themes/typographic/images/user50.png +0 -0
  707. data/test/mocks/themes/typographic/images/world_link.png +0 -0
  708. data/test/mocks/themes/typographic/images/world_link50.png +0 -0
  709. data/test/mocks/themes/typographic/layouts/default.html.erb +42 -0
  710. data/test/mocks/themes/typographic/preview.png +0 -0
  711. data/test/mocks/themes/typographic/stylesheets/colors.css +51 -0
  712. data/test/mocks/themes/typographic/stylesheets/layout.css +346 -0
  713. data/test/mocks/themes/typographic/stylesheets/reset.css +5 -0
  714. data/test/mocks/themes/typographic/stylesheets/style.css +36 -0
  715. data/test/mocks/themes/typographic/views/articles/_article.html.erb +41 -0
  716. data/test/mocks/themes/typographic/views/articles/_comment.html.erb +14 -0
  717. data/test/mocks/themes/typographic/views/articles/_comment_form.html.erb +48 -0
  718. data/test/mocks/themes/typographic/views/articles/_comment_list.html.erb +7 -0
  719. data/test/mocks/themes/typographic/views/articles/_trackback.html.erb +9 -0
  720. data/test/mocks/themes/typographic/views/articles/comment_preview.html.erb +10 -0
  721. data/test/mocks/themes/typographic/views/articles/index.html.erb +5 -0
  722. data/test/mocks/themes/typographic/views/articles/read.html.erb +42 -0
  723. data/test/mocks/themes/typographic/views/shared/_search.html.erb +17 -0
  724. data/test/mocks/themes/typographic/views/theme/static_view_test.html.erb +1 -0
  725. data/test/test_helper.rb +4 -0
  726. data/themes/scribbish/layouts/default.html.erb +4 -2
  727. data/themes/scribbish/stylesheets/content.css +1 -0
  728. data/themes/scribbish/views/articles/_article.html.erb +6 -6
  729. data/themes/scribbish/views/articles/_comment.html.erb +1 -1
  730. data/themes/scribbish/views/articles/_comment_form.html.erb +10 -10
  731. data/themes/scribbish/views/articles/_comment_list.html.erb +1 -1
  732. data/themes/scribbish/views/articles/_trackback.html.erb +1 -1
  733. data/themes/scribbish/views/articles/comment_preview.html.erb +1 -1
  734. data/themes/scribbish/views/articles/index.html.erb +1 -1
  735. data/themes/scribbish/views/articles/read.html.erb +4 -4
  736. data/themes/scribbish/views/shared/_search.html.erb +1 -1
  737. data/themes/typographic/.DS_Store +0 -0
  738. data/themes/typographic/about.markdown +7 -0
  739. data/themes/typographic/images/accept.png +0 -0
  740. data/themes/typographic/images/accept50.png +0 -0
  741. data/themes/typographic/images/bg_body.jpg +0 -0
  742. data/themes/typographic/images/bg_white.png +0 -0
  743. data/themes/typographic/images/bg_wrapper.jpg +0 -0
  744. data/themes/typographic/images/bullet_bottom.png +0 -0
  745. data/themes/typographic/images/bullet_right.png +0 -0
  746. data/themes/typographic/images/email_open.png +0 -0
  747. data/themes/typographic/images/email_open50.png +0 -0
  748. data/themes/typographic/images/meta.png +0 -0
  749. data/themes/typographic/images/page_edit.png +0 -0
  750. data/themes/typographic/images/page_edit50.png +0 -0
  751. data/themes/typographic/images/tag.png +0 -0
  752. data/themes/typographic/images/user.png +0 -0
  753. data/themes/typographic/images/user50.png +0 -0
  754. data/themes/typographic/images/world_link.png +0 -0
  755. data/themes/typographic/images/world_link50.png +0 -0
  756. data/themes/typographic/layouts/default.html.erb +42 -0
  757. data/themes/typographic/preview.png +0 -0
  758. data/themes/typographic/stylesheets/colors.css +51 -0
  759. data/themes/typographic/stylesheets/layout.css +346 -0
  760. data/themes/typographic/stylesheets/reset.css +5 -0
  761. data/themes/typographic/stylesheets/style.css +36 -0
  762. data/themes/typographic/views/articles/_article.html.erb +41 -0
  763. data/themes/typographic/views/articles/_comment.html.erb +14 -0
  764. data/themes/typographic/views/articles/_comment_form.html.erb +48 -0
  765. data/themes/typographic/views/articles/_comment_list.html.erb +7 -0
  766. data/themes/typographic/views/articles/_trackback.html.erb +9 -0
  767. data/themes/typographic/views/articles/comment_preview.html.erb +10 -0
  768. data/themes/typographic/views/articles/index.html.erb +5 -0
  769. data/themes/typographic/views/articles/read.html.erb +42 -0
  770. data/themes/typographic/views/shared/_search.html.erb +17 -0
  771. data/themes/typographic/views/theme/static_view_test.html.erb +1 -0
  772. data/themes/typographic2/.DS_Store +0 -0
  773. data/themes/typographic2/about.markdown +7 -0
  774. data/themes/typographic2/images/Thumbs.db +0 -0
  775. data/themes/typographic2/images/accept.png +0 -0
  776. data/themes/typographic2/images/accept50.png +0 -0
  777. data/themes/typographic2/images/bg_body.jpg +0 -0
  778. data/themes/typographic2/images/bg_white.png +0 -0
  779. data/themes/typographic2/images/bg_wrapper.jpg +0 -0
  780. data/themes/typographic2/images/bullet_bottom.png +0 -0
  781. data/themes/typographic2/images/bullet_right.png +0 -0
  782. data/themes/typographic2/images/email_open.png +0 -0
  783. data/themes/typographic2/images/email_open50.png +0 -0
  784. data/themes/typographic2/images/meta.png +0 -0
  785. data/themes/typographic2/images/page_edit.png +0 -0
  786. data/themes/typographic2/images/page_edit50.png +0 -0
  787. data/themes/typographic2/images/tag.png +0 -0
  788. data/themes/typographic2/images/user.png +0 -0
  789. data/themes/typographic2/images/user50.png +0 -0
  790. data/themes/typographic2/images/world_link.png +0 -0
  791. data/themes/typographic2/images/world_link50.png +0 -0
  792. data/themes/typographic2/layouts/default.html.erb +42 -0
  793. data/themes/typographic2/preview.png +0 -0
  794. data/themes/typographic2/stylesheets/colors.css +51 -0
  795. data/themes/typographic2/stylesheets/layout.css +346 -0
  796. data/themes/typographic2/stylesheets/reset.css +5 -0
  797. data/themes/typographic2/stylesheets/style.css +36 -0
  798. data/themes/typographic2/views/articles/_article.html.erb +41 -0
  799. data/themes/typographic2/views/articles/_comment.html.erb +14 -0
  800. data/themes/typographic2/views/articles/_comment_form.html.erb +48 -0
  801. data/themes/typographic2/views/articles/_comment_list.html.erb +7 -0
  802. data/themes/typographic2/views/articles/_trackback.html.erb +9 -0
  803. data/themes/typographic2/views/articles/comment_preview.html.erb +10 -0
  804. data/themes/typographic2/views/articles/index.html.erb +5 -0
  805. data/themes/typographic2/views/articles/read.html.erb +42 -0
  806. data/themes/typographic2/views/shared/_search.html.erb +17 -0
  807. data/themes/{standard_issue → typographic2}/views/theme/static_view_test.html.erb +0 -0
  808. data/vendor/plugins/archives_sidebar/lib/archives_sidebar.rb +1 -1
  809. data/vendor/plugins/auto_complete/README +23 -0
  810. data/vendor/plugins/auto_complete/Rakefile +22 -0
  811. data/vendor/plugins/auto_complete/init.rb +2 -0
  812. data/vendor/plugins/auto_complete/lib/auto_complete.rb +47 -0
  813. data/vendor/plugins/auto_complete/lib/auto_complete_macros_helper.rb +143 -0
  814. data/vendor/plugins/auto_complete/test/auto_complete_test.rb +67 -0
  815. data/vendor/plugins/datestamped_resources/lib/datestamped_resources.rb +2 -1
  816. data/vendor/plugins/fckeditor/CHANGELOG +3 -0
  817. data/vendor/plugins/fckeditor/README +125 -0
  818. data/vendor/plugins/fckeditor/Rakefile +72 -0
  819. data/vendor/plugins/fckeditor/app/controllers/fckeditor_controller.rb +158 -0
  820. data/vendor/plugins/fckeditor/app/helpers/fckeditor_helper.rb +4 -0
  821. data/vendor/plugins/fckeditor/app/views/fckeditor/spell_check.rhtml +52 -0
  822. data/vendor/plugins/fckeditor/init.rb +35 -0
  823. data/vendor/plugins/fckeditor/install.rb +12 -0
  824. data/vendor/plugins/fckeditor/lib/fckeditor.rb +101 -0
  825. data/vendor/plugins/fckeditor/lib/fckeditor_file_utils.rb +81 -0
  826. data/vendor/plugins/fckeditor/lib/fckeditor_spell_check.rb +43 -0
  827. data/vendor/plugins/fckeditor/lib/fckeditor_version.rb +9 -0
  828. data/vendor/plugins/fckeditor/tasks/fckeditor_tasks.rake +97 -0
  829. data/vendor/plugins/rspec/.autotest +3 -0
  830. data/vendor/plugins/rspec/CHANGES +33 -1
  831. data/vendor/plugins/rspec/README +2 -3
  832. data/vendor/plugins/rspec/Rakefile +7 -5
  833. data/vendor/plugins/rspec/bin/spec +1 -0
  834. data/vendor/plugins/rspec/examples/pure/helper_method_example.rb +9 -6
  835. data/vendor/plugins/rspec/failing_examples/README.txt +7 -0
  836. data/vendor/plugins/rspec/failing_examples/failing_autogenerated_docstrings_example.rb +19 -0
  837. data/vendor/plugins/rspec/lib/autotest/rspec.rb +36 -56
  838. data/vendor/plugins/rspec/lib/spec.rb +0 -7
  839. data/vendor/plugins/rspec/lib/spec/example/example_group_methods.rb +10 -4
  840. data/vendor/plugins/rspec/lib/spec/example/example_methods.rb +13 -8
  841. data/vendor/plugins/rspec/lib/spec/interop/test.rb +3 -1
  842. data/vendor/plugins/rspec/lib/spec/interop/test/unit/ui/console/testrunner.rb +1 -0
  843. data/vendor/plugins/rspec/lib/spec/matchers.rb +1 -7
  844. data/vendor/plugins/rspec/lib/spec/matchers/be.rb +3 -2
  845. data/vendor/plugins/rspec/lib/spec/matchers/have.rb +3 -0
  846. data/vendor/plugins/rspec/lib/spec/matchers/raise_error.rb +19 -15
  847. data/vendor/plugins/rspec/lib/spec/mocks/message_expectation.rb +10 -3
  848. data/vendor/plugins/rspec/lib/spec/runner.rb +14 -0
  849. data/vendor/plugins/rspec/lib/spec/runner/formatter/story/html_formatter.rb +6 -2
  850. data/vendor/plugins/rspec/lib/spec/runner/formatter/story/plain_text_formatter.rb +15 -7
  851. data/vendor/plugins/rspec/lib/spec/runner/option_parser.rb +5 -33
  852. data/vendor/plugins/rspec/lib/spec/runner/options.rb +51 -18
  853. data/vendor/plugins/rspec/lib/spec/runner/spec_parser.rb +49 -31
  854. data/vendor/plugins/rspec/lib/spec/story/extensions.rb +2 -0
  855. data/vendor/plugins/rspec/lib/spec/story/extensions/regexp.rb +9 -0
  856. data/vendor/plugins/rspec/lib/spec/story/extensions/string.rb +9 -0
  857. data/vendor/plugins/rspec/lib/spec/story/runner.rb +0 -2
  858. data/vendor/plugins/rspec/lib/spec/story/runner/story_parser.rb +8 -8
  859. data/vendor/plugins/rspec/lib/spec/story/runner/story_runner.rb +2 -1
  860. data/vendor/plugins/rspec/lib/spec/story/step.rb +18 -8
  861. data/vendor/plugins/rspec/lib/spec/story/world.rb +1 -0
  862. data/vendor/plugins/rspec/lib/spec/version.rb +22 -22
  863. data/vendor/plugins/rspec/pre_commit/lib/pre_commit.rb +4 -0
  864. data/vendor/plugins/rspec/pre_commit/lib/pre_commit/core.rb +50 -0
  865. data/vendor/plugins/rspec/pre_commit/lib/pre_commit/pre_commit.rb +54 -0
  866. data/vendor/plugins/rspec/pre_commit/lib/pre_commit/rspec.rb +111 -0
  867. data/vendor/plugins/rspec/pre_commit/lib/pre_commit/rspec_on_rails.rb +313 -0
  868. data/vendor/plugins/rspec/pre_commit/spec/pre_commit/pre_commit_spec.rb +15 -0
  869. data/vendor/plugins/rspec/pre_commit/spec/pre_commit/rspec_on_rails_spec.rb +36 -0
  870. data/vendor/plugins/rspec/pre_commit/spec/spec_helper.rb +3 -0
  871. data/vendor/plugins/rspec/pre_commit/spec/spec_suite.rb +11 -0
  872. data/vendor/plugins/rspec/report.html +4358 -0
  873. data/vendor/plugins/rspec/spec/README.jruby +1 -0
  874. data/vendor/plugins/rspec/spec/autotest/rspec_spec.rb +15 -84
  875. data/vendor/plugins/rspec/spec/autotest_helper.rb +2 -1
  876. data/vendor/plugins/rspec/spec/autotest_matchers.rb +47 -0
  877. data/vendor/plugins/rspec/spec/rspec_suite.rb +1 -1
  878. data/vendor/plugins/rspec/{spec.opts → spec/spec.opts} +0 -0
  879. data/vendor/plugins/rspec/spec/spec/example/example_group_methods_spec.rb +11 -2
  880. data/vendor/plugins/rspec/spec/spec/example/example_methods_spec.rb +70 -41
  881. data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/spec_that_fails.rb +10 -0
  882. data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/spec_that_passes.rb +10 -0
  883. data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/spec_with_errors.rb +10 -0
  884. data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/test_case_that_fails.rb +10 -0
  885. data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/test_case_that_passes.rb +10 -0
  886. data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/test_case_with_errors.rb +10 -0
  887. data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/testsuite_adapter_spec_with_test_unit.rb +38 -0
  888. data/vendor/plugins/rspec/spec/spec/interop/test/unit/spec_spec.rb +45 -0
  889. data/vendor/plugins/rspec/spec/spec/interop/test/unit/test_unit_spec_helper.rb +1 -1
  890. data/vendor/plugins/rspec/spec/spec/interop/test/unit/testcase_spec.rb +40 -5
  891. data/vendor/plugins/rspec/spec/spec/interop/test/unit/testsuite_adapter_spec.rb +2 -2
  892. data/vendor/plugins/rspec/spec/spec/matchers/have_spec.rb +19 -0
  893. data/vendor/plugins/rspec/spec/spec/matchers/match_spec.rb +3 -3
  894. data/vendor/plugins/rspec/spec/spec/matchers/raise_error_spec.rb +7 -1
  895. data/vendor/plugins/rspec/spec/spec/mocks/bug_report_10263.rb +1 -1
  896. data/vendor/plugins/rspec/spec/spec/runner/command_line_spec.rb +3 -2
  897. data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.6-jruby.html +381 -0
  898. data/vendor/plugins/rspec/spec/spec/runner/formatter/story/html_formatter_spec.rb +5 -0
  899. data/vendor/plugins/rspec/spec/spec/runner/formatter/story/plain_text_formatter_spec.rb +97 -51
  900. data/vendor/plugins/rspec/spec/spec/runner/option_parser_spec.rb +50 -49
  901. data/vendor/plugins/rspec/spec/spec/runner/options_spec.rb +72 -2
  902. data/vendor/plugins/rspec/spec/spec/runner/resources/a_bar.rb +0 -0
  903. data/vendor/plugins/rspec/spec/spec/runner/resources/a_foo.rb +0 -0
  904. data/vendor/plugins/rspec/spec/spec/runner/resources/a_spec.rb +1 -0
  905. data/vendor/plugins/rspec/spec/spec/runner/spec_parser/spec_parser_fixture.rb +70 -0
  906. data/vendor/plugins/rspec/spec/spec/runner/spec_parser_spec.rb +31 -76
  907. data/vendor/plugins/rspec/spec/spec/spec_classes.rb +7 -0
  908. data/vendor/plugins/rspec/spec/spec/story/runner/story_runner_spec.rb +37 -0
  909. data/vendor/plugins/rspec/spec/spec/story/step_spec.rb +53 -0
  910. data/vendor/plugins/rspec/spec/spec/story/world_spec.rb +7 -0
  911. data/vendor/plugins/rspec/stories/example_groups/autogenerated_docstrings +27 -8
  912. data/vendor/plugins/rspec/stories/example_groups/output +5 -0
  913. data/vendor/plugins/rspec/stories/interop/test_case_with_should_methods +1 -1
  914. data/vendor/plugins/rspec/stories/resources/stories/failing_story.rb +15 -0
  915. data/vendor/plugins/rspec_on_rails/generators/rspec/templates/spec.opts +0 -1
  916. data/vendor/plugins/rspec_on_rails/generators/rspec_controller/rspec_controller_generator.rb +1 -2
  917. data/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/rspec_scaffold_generator.rb +1 -3
  918. data/vendor/plugins/rspec_on_rails/lib/autotest/discover.rb +1 -0
  919. data/vendor/plugins/rspec_on_rails/lib/autotest/rails_rspec.rb +47 -47
  920. data/vendor/plugins/rspec_on_rails/lib/spec/rails/example/controller_example_group.rb +14 -4
  921. data/vendor/plugins/rspec_on_rails/lib/spec/rails/example/functional_example_group.rb +4 -4
  922. data/vendor/plugins/rspec_on_rails/lib/spec/rails/example/helper_example_group.rb +0 -1
  923. data/vendor/plugins/rspec_on_rails/lib/spec/rails/example/rails_example_group.rb +8 -0
  924. data/vendor/plugins/rspec_on_rails/lib/spec/rails/example/view_example_group.rb +4 -5
  925. data/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/have_text.rb +2 -2
  926. data/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/render_template.rb +4 -0
  927. data/vendor/plugins/rspec_on_rails/lib/spec/rails/version.rb +23 -23
  928. data/vendor/plugins/rspec_on_rails/spec/rails/autotest/mappings_spec.rb +14 -17
  929. data/vendor/plugins/rspec_on_rails/spec/rails/example/controller_spec_spec.rb +13 -0
  930. data/vendor/plugins/rspec_on_rails/spec/rails/example/view_spec_spec.rb +15 -1
  931. data/vendor/plugins/rspec_on_rails/spec/rails/extensions/action_view_base_spec.rb +37 -26
  932. data/vendor/plugins/rspec_on_rails/spec/rails/matchers/have_text_spec.rb +62 -0
  933. data/vendor/plugins/rspec_on_rails/spec/rails/matchers/render_spec.rb +73 -36
  934. data/vendor/plugins/rspec_on_rails/spec_resources/controllers/controller_spec_controller.rb +9 -1
  935. data/vendor/plugins/rspec_on_rails/spec_resources/controllers/render_spec_controller.rb +4 -0
  936. data/vendor/plugins/rspec_on_rails/stories/all.rb +4 -0
  937. data/vendor/plugins/rspec_on_rails/tasks/rspec.rake +10 -8
  938. data/vendor/plugins/static_sidebar/lib/static_sidebar.rb +4 -8
  939. data/vendor/plugins/typo_converter/README +71 -0
  940. data/vendor/plugins/typo_converter/Rakefile +22 -0
  941. data/vendor/plugins/typo_converter/init.rb +8 -0
  942. data/vendor/plugins/typo_converter/lib/converters/base.rb +249 -0
  943. data/vendor/plugins/typo_converter/lib/converters/dotclear.rb +98 -0
  944. data/vendor/plugins/typo_converter/lib/converters/dotclear/category.rb +7 -0
  945. data/vendor/plugins/typo_converter/lib/converters/dotclear/comment.rb +8 -0
  946. data/vendor/plugins/typo_converter/lib/converters/dotclear/post.rb +9 -0
  947. data/vendor/plugins/typo_converter/lib/converters/dotclear/user.rb +8 -0
  948. data/vendor/plugins/typo_converter/lib/converters/dotclear_2.rb +122 -0
  949. data/vendor/plugins/typo_converter/lib/converters/dotclear_2/category.rb +11 -0
  950. data/vendor/plugins/typo_converter/lib/converters/dotclear_2/comment.rb +13 -0
  951. data/vendor/plugins/typo_converter/lib/converters/dotclear_2/post.rb +15 -0
  952. data/vendor/plugins/typo_converter/lib/converters/dotclear_2/tag.rb +13 -0
  953. data/vendor/plugins/typo_converter/lib/converters/dotclear_2/user.rb +13 -0
  954. data/vendor/plugins/typo_converter/lib/converters/wp25.rb +128 -0
  955. data/vendor/plugins/typo_converter/lib/converters/wp25/comment.rb +12 -0
  956. data/vendor/plugins/typo_converter/lib/converters/wp25/post.rb +37 -0
  957. data/vendor/plugins/typo_converter/lib/converters/wp25/term.rb +11 -0
  958. data/vendor/plugins/typo_converter/lib/converters/wp25/term_relationship.rb +13 -0
  959. data/vendor/plugins/typo_converter/lib/converters/wp25/term_taxonomy.rb +19 -0
  960. data/vendor/plugins/typo_converter/lib/converters/wp25/user.rb +12 -0
  961. data/vendor/plugins/typo_converter/tasks/typo_converters_tasks.rake +4 -0
  962. data/vendor/plugins/typo_login_system/init.rb +2 -0
  963. data/vendor/plugins/typo_login_system/lib/access_control.rb +159 -0
  964. data/vendor/plugins/typo_login_system/lib/login_system.rb +90 -0
  965. data/vendor/plugins/xml_sidebar/lib/xml_sidebar.rb +1 -1
  966. metadata +823 -527
  967. data/CHANGES-5.0 +0 -82
  968. data/TODO.MULTIUSERS +0 -45
  969. data/app/views/admin/advanced/index.html.erb +0 -20
  970. data/app/views/admin/blacklist/list.html.erb +0 -13
  971. data/app/views/admin/cache/list.html.erb +0 -8
  972. data/app/views/admin/categories/list.html.erb +0 -18
  973. data/app/views/admin/categories/show.html.erb +0 -37
  974. data/app/views/admin/comments/comments.html.erb +0 -4
  975. data/app/views/admin/comments/list.html.erb +0 -37
  976. data/app/views/admin/comments/new.html.erb +0 -19
  977. data/app/views/admin/content/_show_categories.html.erb +0 -9
  978. data/app/views/admin/content/list.html.erb +0 -21
  979. data/app/views/admin/content/preview.html.erb +0 -10
  980. data/app/views/admin/feedback/list.html.erb +0 -48
  981. data/app/views/admin/pages/list.html.erb +0 -12
  982. data/app/views/admin/pages/preview.html.erb +0 -1
  983. data/app/views/admin/resources/list.html.erb +0 -17
  984. data/app/views/admin/textfilters/list.html.erb +0 -16
  985. data/app/views/admin/trackbacks/list.html.erb +0 -31
  986. data/app/views/admin/trackbacks/new.html.erb +0 -15
  987. data/app/views/admin/users/list.html.erb +0 -32
  988. data/app/views/admin/users/show.html.erb +0 -23
  989. data/app/views/layouts/minimal.html.erb +0 -145
  990. data/db/converters/wordpress.rb +0 -187
  991. data/db/converters/wordpress2.rb +0 -291
  992. data/lib/jabber_notify.rb +0 -37
  993. data/lib/login_system.rb +0 -85
  994. data/lib/tasks/rcov.rake +0 -38
  995. data/public/images/admin/bgdivider.gif +0 -0
  996. data/public/images/admin/bgoff2.png +0 -0
  997. data/public/images/admin/bgon.png +0 -0
  998. data/public/images/admin/foot.jpg +0 -0
  999. data/public/images/admin/table-header-last.png +0 -0
  1000. data/public/images/admin/table-header.png +0 -0
  1001. data/public/images/admin/top.gif +0 -0
  1002. data/public/images/admin/typo.gif +0 -0
  1003. data/public/images/admin/typologo.png +0 -0
  1004. data/public/images/bracket.gif +0 -0
  1005. data/public/images/header.jpg +0 -0
  1006. data/public/images/loading.gif +0 -0
  1007. data/public/javascripts/tiny_mce/langs/en.js +0 -154
  1008. data/public/javascripts/tiny_mce/license.txt +0 -504
  1009. data/public/javascripts/tiny_mce/plugins/advimage/css/advimage.css +0 -13
  1010. data/public/javascripts/tiny_mce/plugins/advimage/editor_plugin.js +0 -1
  1011. data/public/javascripts/tiny_mce/plugins/advimage/editor_plugin_src.js +0 -49
  1012. data/public/javascripts/tiny_mce/plugins/advimage/image.htm +0 -237
  1013. data/public/javascripts/tiny_mce/plugins/advimage/img/sample.gif +0 -0
  1014. data/public/javascripts/tiny_mce/plugins/advimage/js/image.js +0 -403
  1015. data/public/javascripts/tiny_mce/plugins/advimage/langs/en_dlg.js +0 -43
  1016. data/public/javascripts/tiny_mce/plugins/advlink/css/advlink.css +0 -8
  1017. data/public/javascripts/tiny_mce/plugins/advlink/editor_plugin.js +0 -1
  1018. data/public/javascripts/tiny_mce/plugins/advlink/editor_plugin_src.js +0 -58
  1019. data/public/javascripts/tiny_mce/plugins/advlink/js/advlink.js +0 -551
  1020. data/public/javascripts/tiny_mce/plugins/advlink/langs/en_dlg.js +0 -52
  1021. data/public/javascripts/tiny_mce/plugins/advlink/link.htm +0 -339
  1022. data/public/javascripts/tiny_mce/plugins/autosave/editor_plugin.js +0 -1
  1023. data/public/javascripts/tiny_mce/plugins/autosave/editor_plugin_src.js +0 -51
  1024. data/public/javascripts/tiny_mce/plugins/contextmenu/editor_plugin.js +0 -1
  1025. data/public/javascripts/tiny_mce/plugins/contextmenu/editor_plugin_src.js +0 -84
  1026. data/public/javascripts/tiny_mce/plugins/emotions/editor_plugin.js +0 -1
  1027. data/public/javascripts/tiny_mce/plugins/emotions/editor_plugin_src.js +0 -40
  1028. data/public/javascripts/tiny_mce/plugins/emotions/emotions.htm +0 -41
  1029. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-cool.gif +0 -0
  1030. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-cry.gif +0 -0
  1031. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-embarassed.gif +0 -0
  1032. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-foot-in-mouth.gif +0 -0
  1033. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-frown.gif +0 -0
  1034. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-innocent.gif +0 -0
  1035. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-kiss.gif +0 -0
  1036. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-laughing.gif +0 -0
  1037. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-money-mouth.gif +0 -0
  1038. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-sealed.gif +0 -0
  1039. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-smile.gif +0 -0
  1040. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-surprised.gif +0 -0
  1041. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif +0 -0
  1042. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-undecided.gif +0 -0
  1043. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-wink.gif +0 -0
  1044. data/public/javascripts/tiny_mce/plugins/emotions/img/smiley-yell.gif +0 -0
  1045. data/public/javascripts/tiny_mce/plugins/emotions/js/emotions.js +0 -22
  1046. data/public/javascripts/tiny_mce/plugins/emotions/langs/en_dlg.js +0 -20
  1047. data/public/javascripts/tiny_mce/plugins/media/css/content.css +0 -6
  1048. data/public/javascripts/tiny_mce/plugins/media/css/media.css +0 -68
  1049. data/public/javascripts/tiny_mce/plugins/media/editor_plugin.js +0 -1
  1050. data/public/javascripts/tiny_mce/plugins/media/editor_plugin_src.js +0 -323
  1051. data/public/javascripts/tiny_mce/plugins/media/img/flash.gif +0 -0
  1052. data/public/javascripts/tiny_mce/plugins/media/img/flv_player.swf +0 -0
  1053. data/public/javascripts/tiny_mce/plugins/media/img/quicktime.gif +0 -0
  1054. data/public/javascripts/tiny_mce/plugins/media/img/realmedia.gif +0 -0
  1055. data/public/javascripts/tiny_mce/plugins/media/img/shockwave.gif +0 -0
  1056. data/public/javascripts/tiny_mce/plugins/media/img/trans.gif +0 -0
  1057. data/public/javascripts/tiny_mce/plugins/media/img/windowsmedia.gif +0 -0
  1058. data/public/javascripts/tiny_mce/plugins/media/js/embed.js +0 -73
  1059. data/public/javascripts/tiny_mce/plugins/media/js/media.js +0 -616
  1060. data/public/javascripts/tiny_mce/plugins/media/langs/en_dlg.js +0 -103
  1061. data/public/javascripts/tiny_mce/plugins/media/media.htm +0 -823
  1062. data/public/javascripts/tiny_mce/plugins/nonbreaking/editor_plugin.js +0 -1
  1063. data/public/javascripts/tiny_mce/plugins/nonbreaking/editor_plugin_src.js +0 -50
  1064. data/public/javascripts/tiny_mce/plugins/paste/blank.htm +0 -22
  1065. data/public/javascripts/tiny_mce/plugins/paste/css/blank.css +0 -14
  1066. data/public/javascripts/tiny_mce/plugins/paste/css/pasteword.css +0 -3
  1067. data/public/javascripts/tiny_mce/plugins/paste/editor_plugin.js +0 -1
  1068. data/public/javascripts/tiny_mce/plugins/paste/editor_plugin_src.js +0 -382
  1069. data/public/javascripts/tiny_mce/plugins/paste/js/pastetext.js +0 -42
  1070. data/public/javascripts/tiny_mce/plugins/paste/js/pasteword.js +0 -56
  1071. data/public/javascripts/tiny_mce/plugins/paste/langs/en_dlg.js +0 -5
  1072. data/public/javascripts/tiny_mce/plugins/paste/pastetext.htm +0 -34
  1073. data/public/javascripts/tiny_mce/plugins/paste/pasteword.htm +0 -29
  1074. data/public/javascripts/tiny_mce/plugins/safari/blank.htm +0 -1
  1075. data/public/javascripts/tiny_mce/plugins/safari/editor_plugin.js +0 -1
  1076. data/public/javascripts/tiny_mce/plugins/safari/editor_plugin_src.js +0 -401
  1077. data/public/javascripts/tiny_mce/plugins/save/editor_plugin.js +0 -1
  1078. data/public/javascripts/tiny_mce/plugins/save/editor_plugin_src.js +0 -103
  1079. data/public/javascripts/tiny_mce/themes/advanced/about.htm +0 -56
  1080. data/public/javascripts/tiny_mce/themes/advanced/anchor.htm +0 -32
  1081. data/public/javascripts/tiny_mce/themes/advanced/charmap.htm +0 -53
  1082. data/public/javascripts/tiny_mce/themes/advanced/color_picker.htm +0 -74
  1083. data/public/javascripts/tiny_mce/themes/advanced/editor_template.js +0 -1
  1084. data/public/javascripts/tiny_mce/themes/advanced/editor_template_src.js +0 -990
  1085. data/public/javascripts/tiny_mce/themes/advanced/image.htm +0 -86
  1086. data/public/javascripts/tiny_mce/themes/advanced/img/colorpicker.jpg +0 -0
  1087. data/public/javascripts/tiny_mce/themes/advanced/img/icons.gif +0 -0
  1088. data/public/javascripts/tiny_mce/themes/advanced/js/about.js +0 -76
  1089. data/public/javascripts/tiny_mce/themes/advanced/js/anchor.js +0 -30
  1090. data/public/javascripts/tiny_mce/themes/advanced/js/charmap.js +0 -327
  1091. data/public/javascripts/tiny_mce/themes/advanced/js/color_picker.js +0 -245
  1092. data/public/javascripts/tiny_mce/themes/advanced/js/image.js +0 -232
  1093. data/public/javascripts/tiny_mce/themes/advanced/js/link.js +0 -110
  1094. data/public/javascripts/tiny_mce/themes/advanced/js/source_editor.js +0 -62
  1095. data/public/javascripts/tiny_mce/themes/advanced/langs/en.js +0 -62
  1096. data/public/javascripts/tiny_mce/themes/advanced/langs/en_dlg.js +0 -51
  1097. data/public/javascripts/tiny_mce/themes/advanced/link.htm +0 -64
  1098. data/public/javascripts/tiny_mce/themes/advanced/skins/default/content.css +0 -18
  1099. data/public/javascripts/tiny_mce/themes/advanced/skins/default/dialog.css +0 -111
  1100. data/public/javascripts/tiny_mce/themes/advanced/skins/default/img/buttons.png +0 -0
  1101. data/public/javascripts/tiny_mce/themes/advanced/skins/default/img/items.gif +0 -0
  1102. data/public/javascripts/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif +0 -0
  1103. data/public/javascripts/tiny_mce/themes/advanced/skins/default/img/menu_check.gif +0 -0
  1104. data/public/javascripts/tiny_mce/themes/advanced/skins/default/img/progress.gif +0 -0
  1105. data/public/javascripts/tiny_mce/themes/advanced/skins/default/img/tabs.gif +0 -0
  1106. data/public/javascripts/tiny_mce/themes/advanced/skins/default/ui.css +0 -193
  1107. data/public/javascripts/tiny_mce/themes/advanced/skins/o2k7/content.css +0 -18
  1108. data/public/javascripts/tiny_mce/themes/advanced/skins/o2k7/dialog.css +0 -111
  1109. data/public/javascripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png +0 -0
  1110. data/public/javascripts/tiny_mce/themes/advanced/skins/o2k7/ui.css +0 -193
  1111. data/public/javascripts/tiny_mce/themes/advanced/source_editor.htm +0 -32
  1112. data/public/javascripts/tiny_mce/themes/simple/editor_template.js +0 -1
  1113. data/public/javascripts/tiny_mce/themes/simple/editor_template_src.js +0 -85
  1114. data/public/javascripts/tiny_mce/themes/simple/img/icons.gif +0 -0
  1115. data/public/javascripts/tiny_mce/themes/simple/langs/en.js +0 -11
  1116. data/public/javascripts/tiny_mce/themes/simple/skins/default/content.css +0 -25
  1117. data/public/javascripts/tiny_mce/themes/simple/skins/default/ui.css +0 -32
  1118. data/public/javascripts/tiny_mce/themes/simple/skins/o2k7/content.css +0 -17
  1119. data/public/javascripts/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png +0 -0
  1120. data/public/javascripts/tiny_mce/themes/simple/skins/o2k7/ui.css +0 -35
  1121. data/public/javascripts/tiny_mce/tiny_mce.js +0 -1
  1122. data/public/javascripts/tiny_mce/tiny_mce_popup.js +0 -221
  1123. data/public/javascripts/tiny_mce/tiny_mce_src.js +0 -8803
  1124. data/public/javascripts/tiny_mce/utils/editable_selects.js +0 -61
  1125. data/public/javascripts/tiny_mce/utils/form_utils.js +0 -193
  1126. data/public/javascripts/tiny_mce/utils/mclayer.js +0 -210
  1127. data/public/javascripts/tiny_mce/utils/mctabs.js +0 -74
  1128. data/public/javascripts/tiny_mce/utils/validate.js +0 -219
  1129. data/public/stylesheets/minimal.css +0 -143
  1130. data/spec/fixtures/blacklist_patterns.yml +0 -10
  1131. data/spec/fixtures/blogs.yml +0 -77
  1132. data/spec/fixtures/categories.yml +0 -35
  1133. data/spec/fixtures/categorizations.yml +0 -31
  1134. data/spec/fixtures/contents.yml +0 -205
  1135. data/spec/fixtures/feedback.yml +0 -159
  1136. data/spec/fixtures/page_caches.yml +0 -7
  1137. data/spec/fixtures/profiles.yml +0 -11
  1138. data/spec/fixtures/redirects.yml +0 -13
  1139. data/spec/fixtures/resources.yml +0 -24
  1140. data/spec/fixtures/sidebars.yml +0 -12
  1141. data/spec/fixtures/tags.yml +0 -10
  1142. data/spec/fixtures/text_filters.yml +0 -42
  1143. data/spec/fixtures/triggers.yml +0 -1
  1144. data/spec/fixtures/users.yml +0 -56
  1145. data/spec/helpers/comments_helper_spec.rb +0 -11
  1146. data/test/fixtures/articles_tags.yml +0 -19
  1147. data/test/functional/accounts_controller_test.rb +0 -78
  1148. data/test/functional/admin/article_preview_test.rb +0 -82
  1149. data/test/functional/admin/blacklist_controller_test.rb +0 -63
  1150. data/test/functional/admin/categories_controller_test.rb +0 -106
  1151. data/test/functional/admin/comments_controller_test.rb +0 -78
  1152. data/test/functional/admin/content_controller_test.rb +0 -232
  1153. data/test/functional/admin/feedback_controller_test.rb +0 -59
  1154. data/test/functional/admin/pages_controller_test.rb +0 -88
  1155. data/test/functional/admin/profiles_controller_test.rb +0 -18
  1156. data/test/functional/admin/resources_controller_test.rb +0 -49
  1157. data/test/functional/admin/settings_controller_test.rb +0 -26
  1158. data/test/functional/admin/textfilters_controller_test.rb +0 -29
  1159. data/test/functional/admin/themes_controller_test.rb +0 -34
  1160. data/test/functional/admin/trackbacks_controller_test.rb +0 -76
  1161. data/test/functional/admin/users_controller_test.rb +0 -78
  1162. data/test/functional/articles_controller_test.rb +0 -263
  1163. data/test/functional/backend_controller_test.rb +0 -287
  1164. data/test/functional/redirect_controller_test.rb +0 -40
  1165. data/test/functional/textfilter_controller_test.rb +0 -273
  1166. data/test/functional/theme_controller_test.rb +0 -45
  1167. data/test/functional/xml_controller_test.rb +0 -235
  1168. data/test/mocks/themes/standard_issue/about.markdown +0 -5
  1169. data/test/mocks/themes/standard_issue/images/img01.gif +0 -0
  1170. data/test/mocks/themes/standard_issue/images/img02.gif +0 -0
  1171. data/test/mocks/themes/standard_issue/images/img03.gif +0 -0
  1172. data/test/mocks/themes/standard_issue/images/img04.jpg +0 -0
  1173. data/test/mocks/themes/standard_issue/images/img05.gif +0 -0
  1174. data/test/mocks/themes/standard_issue/images/img06.gif +0 -0
  1175. data/test/mocks/themes/standard_issue/images/img07.gif +0 -0
  1176. data/test/mocks/themes/standard_issue/images/img08.gif +0 -0
  1177. data/test/mocks/themes/standard_issue/images/img09.gif +0 -0
  1178. data/test/mocks/themes/standard_issue/images/img10.gif +0 -0
  1179. data/test/mocks/themes/standard_issue/images/spinner.gif +0 -0
  1180. data/test/mocks/themes/standard_issue/layouts/default.html.erb +0 -61
  1181. data/test/mocks/themes/standard_issue/preview.png +0 -0
  1182. data/test/mocks/themes/standard_issue/stylesheets/application.css +0 -461
  1183. data/test/mocks/themes/standard_issue/views/articles/_article.html.erb +0 -32
  1184. data/test/mocks/themes/standard_issue/views/articles/_comment.html.erb +0 -12
  1185. data/test/mocks/themes/standard_issue/views/articles/_comment_form.html.erb +0 -48
  1186. data/test/mocks/themes/standard_issue/views/articles/_comment_list.html.erb +0 -7
  1187. data/test/mocks/themes/standard_issue/views/articles/_trackback.html.erb +0 -9
  1188. data/test/mocks/themes/standard_issue/views/articles/comment_preview.html.erb +0 -10
  1189. data/test/mocks/themes/standard_issue/views/articles/index.html.erb +0 -5
  1190. data/test/mocks/themes/standard_issue/views/articles/read.html.erb +0 -42
  1191. data/test/mocks/themes/standard_issue/views/shared/_search.html.erb +0 -17
  1192. data/test/mocks/themes/standard_issue/views/theme/static_view_test.rhtml +0 -1
  1193. data/test/unit/amazon_sidebar_test.rb +0 -36
  1194. data/test/unit/article_closing_test.rb +0 -40
  1195. data/test/unit/article_test.rb +0 -304
  1196. data/test/unit/assumptions_tests.rb +0 -54
  1197. data/test/unit/blacklist_pattern_test.rb +0 -14
  1198. data/test/unit/blog_test.rb +0 -52
  1199. data/test/unit/cache_support_test.rb +0 -62
  1200. data/test/unit/category_test.rb +0 -42
  1201. data/test/unit/comment_test.rb +0 -188
  1202. data/test/unit/configuration_test.rb +0 -21
  1203. data/test/unit/content_state/feedback_states_test.rb +0 -67
  1204. data/test/unit/metafragment_test.rb +0 -63
  1205. data/test/unit/notification_mailer_test.rb +0 -55
  1206. data/test/unit/notification_test.rb +0 -10
  1207. data/test/unit/page_test.rb +0 -45
  1208. data/test/unit/ping_pinger_test.rb +0 -30
  1209. data/test/unit/ping_test.rb +0 -127
  1210. data/test/unit/redirect_test.rb +0 -19
  1211. data/test/unit/resource_test.rb +0 -71
  1212. data/test/unit/route_cache_test.rb +0 -11
  1213. data/test/unit/sidebar_test.rb +0 -9
  1214. data/test/unit/static_sidebar_test.rb +0 -19
  1215. data/test/unit/tag_test.rb +0 -71
  1216. data/test/unit/text_filter_test.rb +0 -126
  1217. data/test/unit/theme_test.rb +0 -44
  1218. data/test/unit/trackback_test.rb +0 -22
  1219. data/test/unit/trigger_test.rb +0 -40
  1220. data/test/unit/typo_deprecated_test.rb +0 -22
  1221. data/test/unit/user_test.rb +0 -111
  1222. data/themes/dirtylicious/about.markdown +0 -3
  1223. data/themes/dirtylicious/images/body.jpg +0 -0
  1224. data/themes/dirtylicious/images/container.jpg +0 -0
  1225. data/themes/dirtylicious/images/gravatar.gif +0 -0
  1226. data/themes/dirtylicious/images/header.jpg +0 -0
  1227. data/themes/dirtylicious/images/li.gif +0 -0
  1228. data/themes/dirtylicious/images/main.gif +0 -0
  1229. data/themes/dirtylicious/images/nav.gif +0 -0
  1230. data/themes/dirtylicious/images/quote.gif +0 -0
  1231. data/themes/dirtylicious/images/spinner.gif +0 -0
  1232. data/themes/dirtylicious/layouts/default.html.erb +0 -60
  1233. data/themes/dirtylicious/preview.png +0 -0
  1234. data/themes/dirtylicious/stylesheets/application.css +0 -327
  1235. data/themes/dirtylicious/views/articles/_article.html.erb +0 -33
  1236. data/themes/dirtylicious/views/articles/_comment.html.erb +0 -14
  1237. data/themes/dirtylicious/views/articles/_comment_form.html.erb +0 -37
  1238. data/themes/dirtylicious/views/articles/_comment_list.html.erb +0 -7
  1239. data/themes/dirtylicious/views/articles/_trackback.html.erb +0 -9
  1240. data/themes/dirtylicious/views/articles/comment_preview.html.erb +0 -10
  1241. data/themes/dirtylicious/views/articles/index.html.erb +0 -5
  1242. data/themes/dirtylicious/views/articles/read.html.erb +0 -42
  1243. data/themes/dirtylicious/views/shared/_search.html.erb +0 -16
  1244. data/themes/standard_issue/about.markdown +0 -5
  1245. data/themes/standard_issue/images/img01.gif +0 -0
  1246. data/themes/standard_issue/images/img02.gif +0 -0
  1247. data/themes/standard_issue/images/img03.gif +0 -0
  1248. data/themes/standard_issue/images/img04.jpg +0 -0
  1249. data/themes/standard_issue/images/img05.gif +0 -0
  1250. data/themes/standard_issue/images/img06.gif +0 -0
  1251. data/themes/standard_issue/images/img07.gif +0 -0
  1252. data/themes/standard_issue/images/img08.gif +0 -0
  1253. data/themes/standard_issue/images/img09.gif +0 -0
  1254. data/themes/standard_issue/images/img10.gif +0 -0
  1255. data/themes/standard_issue/images/spinner.gif +0 -0
  1256. data/themes/standard_issue/layouts/default.html.erb +0 -59
  1257. data/themes/standard_issue/preview.png +0 -0
  1258. data/themes/standard_issue/stylesheets/application.css +0 -461
  1259. data/themes/standard_issue/views/articles/_article.html.erb +0 -32
  1260. data/themes/standard_issue/views/articles/_comment.html.erb +0 -12
  1261. data/themes/standard_issue/views/articles/_comment_form.html.erb +0 -48
  1262. data/themes/standard_issue/views/articles/_comment_list.html.erb +0 -7
  1263. data/themes/standard_issue/views/articles/_trackback.html.erb +0 -9
  1264. data/themes/standard_issue/views/articles/comment_preview.html.erb +0 -10
  1265. data/themes/standard_issue/views/articles/index.html.erb +0 -5
  1266. data/themes/standard_issue/views/articles/read.html.erb +0 -42
  1267. data/themes/standard_issue/views/shared/_search.html.erb +0 -17
  1268. data/vendor/jabber4r/CHANGES +0 -8
  1269. data/vendor/jabber4r/LICENSE.txt +0 -12
  1270. data/vendor/jabber4r/README +0 -180
  1271. data/vendor/jabber4r/Rakefile.rb +0 -143
  1272. data/vendor/jabber4r/lib/jabber4r/jabber4r.rb +0 -22
  1273. data/vendor/jabber4r/lib/jabber4r/jid.rb +0 -93
  1274. data/vendor/jabber4r/lib/jabber4r/protocol.rb +0 -1384
  1275. data/vendor/jabber4r/lib/jabber4r/rexml_1.8_patch.rb +0 -16
  1276. data/vendor/jabber4r/lib/jabber4r/roster.rb +0 -322
  1277. data/vendor/jabber4r/lib/jabber4r/session.rb +0 -615
  1278. data/vendor/jabber4r/lib/jabber4r/vcard.rb +0 -42
  1279. data/vendor/plugins/haml/MIT-LICENSE +0 -20
  1280. data/vendor/plugins/haml/REFERENCE +0 -662
  1281. data/vendor/plugins/haml/Rakefile +0 -171
  1282. data/vendor/plugins/haml/VERSION +0 -1
  1283. data/vendor/plugins/haml/bin/haml +0 -18
  1284. data/vendor/plugins/haml/init.rb +0 -3
  1285. data/vendor/plugins/haml/lib/haml/buffer.rb +0 -224
  1286. data/vendor/plugins/haml/lib/haml/engine.rb +0 -557
  1287. data/vendor/plugins/haml/lib/haml/helpers.rb +0 -220
  1288. data/vendor/plugins/haml/lib/haml/helpers/action_view_mods.rb +0 -54
  1289. data/vendor/plugins/haml/lib/haml/template.rb +0 -138
  1290. data/vendor/plugins/haml/test/benchmark.rb +0 -62
  1291. data/vendor/plugins/haml/test/engine_test.rb +0 -93
  1292. data/vendor/plugins/haml/test/helper_test.rb +0 -105
  1293. data/vendor/plugins/haml/test/mocks/article.rb +0 -6
  1294. data/vendor/plugins/haml/test/profile.rb +0 -45
  1295. data/vendor/plugins/haml/test/results/content_for_layout.xhtml +0 -16
  1296. data/vendor/plugins/haml/test/results/eval_suppressed.xhtml +0 -2
  1297. data/vendor/plugins/haml/test/results/helpers.xhtml +0 -50
  1298. data/vendor/plugins/haml/test/results/helpful.xhtml +0 -5
  1299. data/vendor/plugins/haml/test/results/just_stuff.xhtml +0 -38
  1300. data/vendor/plugins/haml/test/results/list.xhtml +0 -12
  1301. data/vendor/plugins/haml/test/results/original_engine.xhtml +0 -24
  1302. data/vendor/plugins/haml/test/results/partials.xhtml +0 -20
  1303. data/vendor/plugins/haml/test/results/silent_script.xhtml +0 -74
  1304. data/vendor/plugins/haml/test/results/standard.xhtml +0 -42
  1305. data/vendor/plugins/haml/test/results/tag_parsing.xhtml +0 -28
  1306. data/vendor/plugins/haml/test/results/very_basic.xhtml +0 -7
  1307. data/vendor/plugins/haml/test/results/whitespace_handling.xhtml +0 -51
  1308. data/vendor/plugins/haml/test/rhtml/standard.rhtml +0 -51
  1309. data/vendor/plugins/haml/test/runner.rb +0 -15
  1310. data/vendor/plugins/haml/test/template_test.rb +0 -137
  1311. data/vendor/plugins/haml/test/templates/_partial.haml +0 -7
  1312. data/vendor/plugins/haml/test/templates/_text_area.haml +0 -3
  1313. data/vendor/plugins/haml/test/templates/content_for_layout.haml +0 -10
  1314. data/vendor/plugins/haml/test/templates/eval_suppressed.haml +0 -5
  1315. data/vendor/plugins/haml/test/templates/helpers.haml +0 -39
  1316. data/vendor/plugins/haml/test/templates/helpful.haml +0 -6
  1317. data/vendor/plugins/haml/test/templates/just_stuff.haml +0 -34
  1318. data/vendor/plugins/haml/test/templates/list.haml +0 -12
  1319. data/vendor/plugins/haml/test/templates/original_engine.haml +0 -17
  1320. data/vendor/plugins/haml/test/templates/partialize.haml +0 -1
  1321. data/vendor/plugins/haml/test/templates/partials.haml +0 -12
  1322. data/vendor/plugins/haml/test/templates/silent_script.haml +0 -40
  1323. data/vendor/plugins/haml/test/templates/standard.haml +0 -40
  1324. data/vendor/plugins/haml/test/templates/tag_parsing.haml +0 -24
  1325. data/vendor/plugins/haml/test/templates/very_basic.haml +0 -4
  1326. data/vendor/plugins/haml/test/templates/whitespace_handling.haml +0 -66
  1327. data/vendor/plugins/rspec/spec/spec/interop/test/unit/testcase_spec_with_test_unit.rb +0 -20
  1328. data/vendor/plugins/rspec/spec/spec/interop/test/unit/testsuite_adapter_spec_with_test_unit.rb +0 -34
  1329. data/vendor/plugins/rspec_on_rails/generators/helpers/rails_identifier.rb +0 -16
  1330. data/vendor/plugins/tiny_mce/README +0 -10
  1331. data/vendor/plugins/tiny_mce/Rakefile +0 -22
  1332. data/vendor/plugins/tiny_mce/TODO +0 -2
  1333. data/vendor/plugins/tiny_mce/changelog +0 -1017
  1334. data/vendor/plugins/tiny_mce/init.rb +0 -3
  1335. data/vendor/plugins/tiny_mce/install.rb +0 -1
  1336. data/vendor/plugins/tiny_mce/lib/tiny_mce.rb +0 -36
  1337. data/vendor/plugins/tiny_mce/lib/tiny_mce_helper.rb +0 -48
  1338. data/vendor/plugins/tiny_mce/tasks/tiny_mce.rake +0 -40
  1339. data/vendor/plugins/tiny_mce/test/helper_testcase.rb +0 -38
  1340. data/vendor/plugins/tiny_mce/test/tiny_mce_helper_test.rb +0 -67
  1341. data/vendor/plugins/tiny_mce/test/tiny_mce_test.rb +0 -85
  1342. data/vendor/plugins/tiny_mce/tiny_mce_options.yml +0 -121
@@ -1,32 +0,0 @@
1
- <html xmlns="http://www.w3.org/1999/xhtml">
2
- <head>
3
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
4
- <title>{#advanced_dlg.code_title}</title>
5
- <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
6
- <script type="text/javascript" src="js/source_editor.js"></script>
7
- <base target="_self" />
8
- </head>
9
- <body onresize="resizeInputs();" style="display:none; overflow:hidden;">
10
- <form name="source" onsubmit="saveContent();" action="#">
11
- <div style="float: left" class="title">{#advanced_dlg.code_title}</div>
12
-
13
- <div id="wrapline" style="float: right">
14
- <input type="checkbox" name="wraped" id="wraped" onclick="toggleWordWrap(this);" class="wordWrapCode" /><label for="wraped">{#advanced_dlg.code_wordwrap}</label>
15
- </div>
16
-
17
- <br style="clear: both" />
18
-
19
- <textarea name="htmlSource" id="htmlSource" rows="15" cols="100" style="width: 100%; height: 100%; font-family: 'Courier New',Courier,monospace; font-size: 12px;" dir="ltr" wrap="off"></textarea>
20
-
21
- <div class="mceActionPanel">
22
- <div style="float: left">
23
- <input type="button" name="insert" value="{#update}" onclick="saveContent();" id="insert" />
24
- </div>
25
-
26
- <div style="float: right">
27
- <input type="button" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" id="cancel" />
28
- </div>
29
- </div>
30
- </form>
31
- </body>
32
- </html>
@@ -1 +0,0 @@
1
- (function(){var DOM=tinymce.DOM;tinymce.ThemeManager.requireLangPack('simple');tinymce.create('tinymce.themes.SimpleTheme',{init:function(ed,url){var t=this,states=['Bold','Italic','Underline','Strikethrough','InsertUnorderedList','InsertOrderedList'],s=ed.settings;t.editor=ed;ed.onInit.add(function(){ed.onNodeChange.add(function(ed,cm){tinymce.each(states,function(c){cm.get(c.toLowerCase()).setActive(ed.queryCommandState(c));});});ed.dom.loadCSS(url+"/skins/"+s.skin+"/content.css");});DOM.loadCSS(url+"/skins/"+s.skin+"/ui.css");},renderUI:function(o){var t=this,n=o.targetNode,ic,tb,ed=t.editor,cf=ed.controlManager,sc;n=DOM.insertAfter(DOM.create('div',{id:ed.id+'_container','class':'mceEditor '+ed.settings.skin+'Skin'}),n);n=sc=DOM.add(n,'table',{cellPadding:0,cellSpacing:0,'class':'mceLayout'});n=tb=DOM.add(n,'tbody');n=DOM.add(tb,'tr');n=ic=DOM.add(DOM.add(n,'td'),'div',{'class':'mceIframeContainer'});n=DOM.add(DOM.add(tb,'tr',{'class':'last'}),'td',{'class':'mceToolbar last',align:'center'});tb=t.toolbar=cf.createToolbar("tools1");tb.add(cf.createButton('bold',{title:'simple.bold_desc',cmd:'Bold'}));tb.add(cf.createButton('italic',{title:'simple.italic_desc',cmd:'Italic'}));tb.add(cf.createButton('underline',{title:'simple.underline_desc',cmd:'Underline'}));tb.add(cf.createButton('strikethrough',{title:'simple.striketrough_desc',cmd:'Strikethrough'}));tb.add(cf.createSeparator());tb.add(cf.createButton('undo',{title:'simple.undo_desc',cmd:'Undo'}));tb.add(cf.createButton('redo',{title:'simple.redo_desc',cmd:'Redo'}));tb.add(cf.createSeparator());tb.add(cf.createButton('cleanup',{title:'simple.cleanup_desc',cmd:'mceCleanup'}));tb.add(cf.createSeparator());tb.add(cf.createButton('insertunorderedlist',{title:'simple.bullist_desc',cmd:'InsertUnorderedList'}));tb.add(cf.createButton('insertorderedlist',{title:'simple.numlist_desc',cmd:'InsertOrderedList'}));tb.renderTo(n);return{iframeContainer:ic,editorContainer:ed.id+'_container',sizeContainer:sc,deltaHeight:-20};},getInfo:function(){return{longname:'Simple theme',author:'Moxiecode Systems AB',authorurl:'http://tinymce.moxiecode.com',version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.ThemeManager.add('simple',tinymce.themes.SimpleTheme);})();
@@ -1,85 +0,0 @@
1
- /**
2
- * $Id: editor_template_src.js 382 2007-11-13 14:48:38Z spocke $
3
- *
4
- * This file is meant to showcase how to create a simple theme. The advanced
5
- * theme is more suitable for production use.
6
- *
7
- * @author Moxiecode
8
- * @copyright Copyright � 2004-2007, Moxiecode Systems AB, All rights reserved.
9
- */
10
-
11
- (function() {
12
- var DOM = tinymce.DOM;
13
-
14
- // Tell it to load theme specific language pack(s)
15
- tinymce.ThemeManager.requireLangPack('simple');
16
-
17
- tinymce.create('tinymce.themes.SimpleTheme', {
18
- init : function(ed, url) {
19
- var t = this, states = ['Bold', 'Italic', 'Underline', 'Strikethrough', 'InsertUnorderedList', 'InsertOrderedList'], s = ed.settings;
20
-
21
- t.editor = ed;
22
-
23
- ed.onInit.add(function() {
24
- ed.onNodeChange.add(function(ed, cm) {
25
- tinymce.each(states, function(c) {
26
- cm.get(c.toLowerCase()).setActive(ed.queryCommandState(c));
27
- });
28
- });
29
-
30
- ed.dom.loadCSS(url + "/skins/" + s.skin + "/content.css");
31
- });
32
-
33
- DOM.loadCSS(url + "/skins/" + s.skin + "/ui.css");
34
- },
35
-
36
- renderUI : function(o) {
37
- var t = this, n = o.targetNode, ic, tb, ed = t.editor, cf = ed.controlManager, sc;
38
-
39
- n = DOM.insertAfter(DOM.create('div', {id : ed.id + '_container', 'class' : 'mceEditor ' + ed.settings.skin + 'Skin'}), n);
40
- n = sc = DOM.add(n, 'table', {cellPadding : 0, cellSpacing : 0, 'class' : 'mceLayout'});
41
- n = tb = DOM.add(n, 'tbody');
42
-
43
- // Create iframe container
44
- n = DOM.add(tb, 'tr');
45
- n = ic = DOM.add(DOM.add(n, 'td'), 'div', {'class' : 'mceIframeContainer'});
46
-
47
- // Create toolbar container
48
- n = DOM.add(DOM.add(tb, 'tr', {'class' : 'last'}), 'td', {'class' : 'mceToolbar last', align : 'center'});
49
-
50
- // Create toolbar
51
- tb = t.toolbar = cf.createToolbar("tools1");
52
- tb.add(cf.createButton('bold', {title : 'simple.bold_desc', cmd : 'Bold'}));
53
- tb.add(cf.createButton('italic', {title : 'simple.italic_desc', cmd : 'Italic'}));
54
- tb.add(cf.createButton('underline', {title : 'simple.underline_desc', cmd : 'Underline'}));
55
- tb.add(cf.createButton('strikethrough', {title : 'simple.striketrough_desc', cmd : 'Strikethrough'}));
56
- tb.add(cf.createSeparator());
57
- tb.add(cf.createButton('undo', {title : 'simple.undo_desc', cmd : 'Undo'}));
58
- tb.add(cf.createButton('redo', {title : 'simple.redo_desc', cmd : 'Redo'}));
59
- tb.add(cf.createSeparator());
60
- tb.add(cf.createButton('cleanup', {title : 'simple.cleanup_desc', cmd : 'mceCleanup'}));
61
- tb.add(cf.createSeparator());
62
- tb.add(cf.createButton('insertunorderedlist', {title : 'simple.bullist_desc', cmd : 'InsertUnorderedList'}));
63
- tb.add(cf.createButton('insertorderedlist', {title : 'simple.numlist_desc', cmd : 'InsertOrderedList'}));
64
- tb.renderTo(n);
65
-
66
- return {
67
- iframeContainer : ic,
68
- editorContainer : ed.id + '_container',
69
- sizeContainer : sc,
70
- deltaHeight : -20
71
- };
72
- },
73
-
74
- getInfo : function() {
75
- return {
76
- longname : 'Simple theme',
77
- author : 'Moxiecode Systems AB',
78
- authorurl : 'http://tinymce.moxiecode.com',
79
- version : tinymce.majorVersion + "." + tinymce.minorVersion
80
- }
81
- }
82
- });
83
-
84
- tinymce.ThemeManager.add('simple', tinymce.themes.SimpleTheme);
85
- })();
@@ -1,11 +0,0 @@
1
- tinyMCE.addI18n('en.simple',{
2
- bold_desc:"Bold (Ctrl+B)",
3
- italic_desc:"Italic (Ctrl+I)",
4
- underline_desc:"Underline (Ctrl+U)",
5
- striketrough_desc:"Strikethrough",
6
- bullist_desc:"Unordered list",
7
- numlist_desc:"Ordered list",
8
- undo_desc:"Undo (Ctrl+Z)",
9
- redo_desc:"Redo (Ctrl+Y)",
10
- cleanup_desc:"Cleanup messy code"
11
- });
@@ -1,25 +0,0 @@
1
- body, td, pre {
2
- font-family: Verdana, Arial, Helvetica, sans-serif;
3
- font-size: 10px;
4
- }
5
-
6
- body {
7
- background-color: #FFFFFF;
8
- }
9
-
10
- .mceVisualAid {
11
- border: 1px dashed #BBBBBB;
12
- }
13
-
14
- /* MSIE specific */
15
-
16
- * html body {
17
- scrollbar-3dlight-color: #F0F0EE;
18
- scrollbar-arrow-color: #676662;
19
- scrollbar-base-color: #F0F0EE;
20
- scrollbar-darkshadow-color: #DDDDDD;
21
- scrollbar-face-color: #E0E0DD;
22
- scrollbar-highlight-color: #F0F0EE;
23
- scrollbar-shadow-color: #F0F0EE;
24
- scrollbar-track-color: #F5F5F5;
25
- }
@@ -1,32 +0,0 @@
1
- /* Reset */
2
- .defaultSkin table, .defaultSkin tbody, .defaultSkin a, .defaultSkin img, .defaultSkin tr, .defaultSkin div, .defaultSkin td, .defaultSkin iframe, .defaultSkin span, .defaultSkin * {border:0; margin:0; padding:0; background:transparent; white-space:nowrap; text-decoration:none; font-weight:normal; cursor:default; color:#000}
3
-
4
- /* Containers */
5
- .defaultSkin {position:relative}
6
- .defaultSkin table.mceLayout {background:#F0F0EE; border:1px solid #CCC;}
7
- .defaultSkin iframe {display:block; background:#FFF; border-bottom:1px solid #CCC;}
8
- .defaultSkin .mceToolbar {height:24px;}
9
-
10
- /* Layout */
11
- .defaultSkin span.icon, .defaultSkin img.icon {display:block; width:20px; height:20px}
12
- .defaultSkin .icon {background:url(../../img/icons.gif) no-repeat 20px 20px}
13
-
14
- /* Button */
15
- .defaultSkin .mceButton {display:block; border:1px solid #F0F0EE; width:20px; height:20px}
16
- .defaultSkin a.mceButtonEnabled:hover {border:1px solid #0A246A; background-color:#B2BBD0}
17
- .defaultSkin a.mceButtonActive {border:1px solid #0A246A; background-color:#C2CBE0}
18
- .defaultSkin .mceButtonDisabled span {opacity:0.3; filter:alpha(opacity=30)}
19
-
20
- /* Separator */
21
- .defaultSkin .mceSeparator {display:block; background:url(../../img/icons.gif) -180px 0; width:2px; height:20px; margin:0 2px 0 4px}
22
-
23
- /* Theme */
24
- .defaultSkin span.bold {background-position:0 0}
25
- .defaultSkin span.italic {background-position:-60px 0}
26
- .defaultSkin span.underline {background-position:-140px 0}
27
- .defaultSkin span.strikethrough {background-position:-120px 0}
28
- .defaultSkin span.undo {background-position:-160px 0}
29
- .defaultSkin span.redo {background-position:-100px 0}
30
- .defaultSkin span.cleanup {background-position:-40px 0}
31
- .defaultSkin span.insertunorderedlist {background-position:-20px 0}
32
- .defaultSkin span.insertorderedlist {background-position:-80px 0}
@@ -1,17 +0,0 @@
1
- body, td, pre {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;}
2
-
3
- body {background: #FFF;}
4
- .mceVisualAid {border: 1px dashed #BBB;}
5
-
6
- /* IE */
7
-
8
- * html body {
9
- scrollbar-3dlight-color: #F0F0EE;
10
- scrollbar-arrow-color: #676662;
11
- scrollbar-base-color: #F0F0EE;
12
- scrollbar-darkshadow-color: #DDDDDD;
13
- scrollbar-face-color: #E0E0DD;
14
- scrollbar-highlight-color: #F0F0EE;
15
- scrollbar-shadow-color: #F0F0EE;
16
- scrollbar-track-color: #F5F5F5;
17
- }
@@ -1,35 +0,0 @@
1
- /* Reset */
2
- .o2k7Skin table, .o2k7Skin tbody, .o2k7Skin a, .o2k7Skin img, .o2k7Skin tr, .o2k7Skin div, .o2k7Skin td, .o2k7Skin iframe, .o2k7Skin span, .o2k7Skin * {border:0; margin:0; padding:0; background:transparent; white-space:nowrap; text-decoration:none; font-weight:normal; cursor:default; color:#000}
3
-
4
- /* Containers */
5
- .o2k7Skin {position:relative}
6
- .o2k7Skin table.mceLayout {background:#E5EFFD; border:1px solid #ABC6DD;}
7
- .o2k7Skin iframe {display:block; background:#FFF; border-bottom:1px solid #ABC6DD;}
8
- .o2k7Skin .mceToolbar {height:26px;}
9
-
10
- /* Layout */
11
- .o2k7Skin .mceToolbar .mceToolbarStart span {display:block; background:url(img/button_bg.png) -22px 0; width:1px; height:22px; }
12
- .o2k7Skin .mceToolbar .mceToolbarEnd span {display:block; background:url(img/button_bg.png) -22px 0; width:1px; height:22px}
13
- .o2k7Skin span.icon, .o2k7Skin img.icon {display:block; width:20px; height:20px}
14
- .o2k7Skin .icon {background:url(../../img/icons.gif) no-repeat 20px 20px}
15
-
16
- /* Button */
17
- .o2k7Skin .mceButton {display:block; background:url(img/button_bg.png); width:22px; height:22px}
18
- .o2k7Skin a.mceButton span, .o2k7Skin a.mceButton img {margin:1px 0 0 1px}
19
- .o2k7Skin a.mceButtonEnabled:hover {background-color:#B2BBD0; background-position:0 -22px}
20
- .o2k7Skin a.mceButtonActive {background-position:0 -44px}
21
- .o2k7Skin .mceButtonDisabled span {opacity:0.3; filter:alpha(opacity=30)}
22
-
23
- /* Separator */
24
- .o2k7Skin .mceSeparator {display:block; background:url(img/button_bg.png) -22px 0; width:5px; height:22px}
25
-
26
- /* Theme */
27
- .o2k7Skin span.bold {background-position:0 0}
28
- .o2k7Skin span.italic {background-position:-60px 0}
29
- .o2k7Skin span.underline {background-position:-140px 0}
30
- .o2k7Skin span.strikethrough {background-position:-120px 0}
31
- .o2k7Skin span.undo {background-position:-160px 0}
32
- .o2k7Skin span.redo {background-position:-100px 0}
33
- .o2k7Skin span.cleanup {background-position:-40px 0}
34
- .o2k7Skin span.insertunorderedlist {background-position:-20px 0}
35
- .o2k7Skin span.insertorderedlist {background-position:-80px 0}
@@ -1 +0,0 @@
1
- var tinymce={majorVersion:'3',minorVersion:'0b3',releaseDate:'2007-12-14',_init:function(){var t=this,ua=navigator.userAgent,i,nl,n,base;t.isOpera=window.opera&&opera.buildNumber;t.isWebKit=/WebKit/.test(ua);t.isOldWebKit=t.isWebKit&&!window.getSelection().getRangeAt;t.isIE=!t.isWebKit&&!t.isOpera&&(/MSIE/gi).test(ua)&&(/Explorer/gi).test(navigator.appName);t.isIE6=t.isIE&&/MSIE [56]/.test(ua);t.isGecko=!t.isWebKit&&/Gecko/.test(ua);t.isMac=ua.indexOf('Mac')!=-1;if(window.tinyMCEPreInit){t.suffix=tinyMCEPreInit.suffix;t.baseURL=tinyMCEPreInit.base;return;}t.suffix='';nl=document.getElementsByTagName('base');for(i=0;i<nl.length;i++){if(nl[i].href)base=nl[i].href;}function getBase(n){if(n.src&&/tiny_mce(|_dev|_src|_gzip|_jquery|_prototype).js/.test(n.src)){if(/_(src|dev)\.js/g.test(n.src))t.suffix='_src';t.baseURL=n.src.substring(0,n.src.lastIndexOf('/'));if(base&&t.baseURL.indexOf('://')==-1)t.baseURL=base+t.baseURL;return t.baseURL;}return null;};nl=document.getElementsByTagName('script');for(i=0;i<nl.length;i++){if(getBase(nl[i]))return;}n=document.getElementsByTagName('head')[0];if(n){nl=n.getElementsByTagName('script');for(i=0;i<nl.length;i++){if(getBase(nl[i]))return;}}return;},is:function(o,t){var n=typeof(o);if(!t)return n!='undefined';if(t=='array'&&(o instanceof Array))return true;return n==t;},each:function(o,cb,s){var n,l;if(!o)return 0;s=s||o;if(typeof(o.length)!='undefined'){for(n=0,l=o.length;n<l;n++){if(cb.call(s,o[n],n,o)===false)return 0;}}else{for(n in o){if(o.hasOwnProperty(n)){if(cb.call(s,o[n],n,o)===false)return 0;}}}return 1;},map:function(a,f){var o=[];tinymce.each(a,function(v){o.push(f(v));});return o;},grep:function(a,f){var o=[];tinymce.each(a,function(v){if(!f||f(v))o.push(v);});return o;},inArray:function(a,v){var i,l;if(a){for(i=0,l=a.length;i<l;i++){if(a[i]===v)return i;}}return-1;},extend:function(o,e){var i,a=arguments;for(i=1;i<a.length;i++){e=a[i];tinymce.each(e,function(v,n){if(typeof(v)!=='undefined')o[n]=v;});}return o;},trim:function(s){return(s?''+s:'').replace(/^\s*|\s*$/g,'');},create:function(s,p){var t=this,sp,ns,cn,scn,c,de=0;s=/^((static) )?([\w.]+)(:([\w.]+))?/.exec(s);cn=s[3].match(/(^|\.)(\w+)$/i)[2];ns=t.createNS(s[3].replace(/\.\w+$/,''));if(ns[cn])return;if(s[2]=='static'){ns[cn]=p;if(this.onCreate)this.onCreate(s[2],s[3],ns[cn]);return;}if(!p[cn]){p[cn]=function(){};de=1;}ns[cn]=p[cn];t.extend(ns[cn].prototype,p);if(s[5]){sp=t.resolve(s[5]).prototype;scn=s[5].match(/\.(\w+)$/i)[1];c=ns[cn];if(de){ns[cn]=function(){return sp[scn].apply(this,arguments);};}else{ns[cn]=function(){this.parent=sp[scn];return c.apply(this,arguments);};}ns[cn].prototype[cn]=ns[cn];t.each(sp,function(f,n){if(n!=scn)ns[cn].prototype[n]=sp[n];});t.each(p,function(f,n){if(sp[n]){ns[cn].prototype[n]=function(){this.parent=sp[n];return f.apply(this,arguments);};}else{if(n!=cn)ns[cn].prototype[n]=f;}});}t.each(p['static'],function(f,n){ns[cn][n]=f;});if(this.onCreate)this.onCreate(s[2],s[3],ns[cn].prototype);},walk:function(o,f,n,s){s=s||this;if(o){if(n)o=o[n];tinymce.each(o,function(o,i){if(f.call(s,o,i,n)===false)return false;tinymce.walk(o,f,n,s);});}},createNS:function(n,o){var i,v;o=o||window;n=n.split('.');for(i=0;i<n.length;i++){v=n[i];if(!o[v])o[v]={};o=o[v];}return o;},resolve:function(n,o){var i,l;o=o||window;n=n.split('.');for(i=0,l=n.length;i<l;i++){o=o[n[i]];if(!o)break;}return o;},addUnload:function(f,s){var t=this,w=window,unload;f={func:f,scope:s||this};if(!t.unloads){unload=function(){var li=t.unloads,o,n;for(n in li){o=li[n];if(o&&o.func)o.func.call(o.scope);}if(w.detachEvent)w.detachEvent('onunload',unload);else if(w.removeEventListener)w.removeEventListener('unload',unload,false);o=li=w=unload=null;if(window.CollectGarbage)window.CollectGarbage();};if(w.attachEvent)w.attachEvent('onunload',unload);else if(w.addEventListener)w.addEventListener('unload',unload,false);t.unloads=[f];}else t.unloads.push(f);return f;},removeUnload:function(f){var u=this.unloads,r=null;tinymce.each(u,function(o,i){if(o&&o.func==f){u.splice(i,1);r=f;return false;}});return r;}};window.tinymce=tinymce;tinymce._init();tinymce.create('tinymce.util.Dispatcher',{scope:null,listeners:null,Dispatcher:function(s){this.scope=s||this;this.listeners=[];},add:function(cb,s){this.listeners.push({cb:cb,scope:s||this.scope});return cb;},addToTop:function(cb,s){this.listeners.unshift({cb:cb,scope:s||this.scope});return cb;},remove:function(cb){var l=this.listeners,o=null;tinymce.each(l,function(c,i){if(cb==c.cb){o=cb;l.splice(i,1);return false;}});return o;},dispatch:function(){var s,a=arguments;tinymce.each(this.listeners,function(c){return s=c.cb.apply(c.scope,a);});return s;}});(function(){var each=tinymce.each;tinymce.create('tinymce.util.URI',{URI:function(u,s){var t=this,o,a,b;s=t.settings=s||{};if(/^(mailto|news|javascript|about):/i.test(u)||/^\s*#/.test(u)){t.source=u;return;}if(u.indexOf('/')===0&&u.indexOf('//')!==0)u=(s.base_uri?s.base_uri.protocol||'http':'http')+'://mce_host'+u;if(u.indexOf('://')===-1&&u.indexOf('//')!==0)u=(s.base_uri.protocol||'http')+'://mce_host'+t.toAbsPath(s.base_uri.path,u);u=/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/.exec(u);each(["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],function(v,i){t[v]=u[i];});if(b=s.base_uri){if(!t.protocol)t.protocol=b.protocol;if(!t.userInfo)t.userInfo=b.userInfo;if(!t.port&&t.host=='mce_host')t.port=b.port;if(!t.host||t.host=='mce_host')t.host=b.host;t.source='';}},setPath:function(p){var t=this;p=/^(.*?)\/?(\w+)?$/.exec(p);t.path=p[0];t.directory=p[1];t.file=p[2];t.source='';t.getURI();},toRelative:function(u){var t=this,o;u=new tinymce.util.URI(u,{base_uri:t});if((u.host!='mce_host'&&t.host!=u.host&&u.host)||t.port!=u.port||t.protocol!=u.protocol)return u.getURI();o=t.toRelPath(t.path,u.path);if(u.query)o+='?'+u.query;if(u.anchor)o+='#'+u.anchor;return o;},toAbsolute:function(u,nh){var u=new tinymce.util.URI(u,{base_uri:this});return u.getURI(this.host==u.host?nh:0);},toRelPath:function(base,path){var items,bp=0,out='',i;base=base.substring(0,base.lastIndexOf('/'));base=base.split('/');items=path.split('/');if(base.length>=items.length){for(i=0;i<base.length;i++){if(i>=items.length||base[i]!=items[i]){bp=i+1;break;}}}if(base.length<items.length){for(i=0;i<items.length;i++){if(i>=base.length||base[i]!=items[i]){bp=i+1;break;}}}if(bp==1)return path;for(i=0;i<base.length-(bp-1);i++)out+="../";for(i=bp-1;i<items.length;i++){if(i!=bp-1)out+="/"+items[i];else out+=items[i];}return out;},toAbsPath:function(base,path){var i,nb=0,o=[];base=base.split('/');path=path.split('/');each(base,function(k){if(k)o.push(k);});base=o;for(i=path.length-1,o=[];i>=0;i--){if(path[i].length==0||path[i]==".")continue;if(path[i]=='..'){nb++;continue;}if(nb>0){nb--;continue;}o.push(path[i]);}i=base.length-nb;if(i<=0)return'/'+o.reverse().join('/');return'/'+base.slice(0,i).join('/')+'/'+o.reverse().join('/');},getURI:function(nh){var s,t=this;if(!t.source||nh){s='';if(!nh){if(t.protocol)s+=t.protocol+'://';if(t.userInfo)s+=t.userInfo+'@';if(t.host)s+=t.host;if(t.port)s+=':'+t.port;}if(t.path)s+=t.path;if(t.query)s+='?'+t.query;if(t.anchor)s+='#'+t.anchor;t.source=s;}return t.source;}});})();(function(){var each=tinymce.each;tinymce.create('static tinymce.util.Cookie',{getHash:function(n){var v=this.get(n),h;if(v){each(v.split('&'),function(v){v=v.split('=');h=h||{};h[unescape(v[0])]=unescape(v[1]);});}return h;},setHash:function(n,v,e,p,d,s){var o='';each(v,function(v,k){o+=(!o?'':'&')+escape(k)+'='+escape(v);});this.set(n,o,e,p,d,s);},get:function(n){var c=document.cookie,e,p=n+"=",b=c.indexOf("; "+p);if(b==-1){b=c.indexOf(p);if(b!=0)return null;}else b+=2;e=c.indexOf(";",b);if(e==-1)e=c.length;return unescape(c.substring(b+p.length,e));},set:function(n,v,e,p,d,s){document.cookie=n+"="+escape(v)+((e)?"; expires="+e.toGMTString():"")+((p)?"; path="+escape(p):"")+((d)?"; domain="+d:"")+((s)?"; secure":"");},remove:function(n,p){var d=new Date();d.setTime(d.getTime()-1000);this.set(n,'',d,p,d);}});})();tinymce.create('static tinymce.util.JSON',{serialize:function(o){var i,v,s=tinymce.util.JSON.serialize,t;if(o==null)return'null';t=typeof o;if(t=='string'){v='\bb\tt\nn\ff\rr\""\'\'\\\\';return'"'+o.replace(/([\u0080-\uFFFF\x00-\x1f\"\'])/g,function(a,b){i=v.indexOf(b);if(i+1)return'\\'+v.charAt(i+1);a=b.charCodeAt().toString(16);return'\\u'+'0000'.substring(a.length)+a;})+'"';}if(t=='object'){if(o instanceof Array){for(i=0,v='[';i<o.length;i++)v+=(i>0?',':'')+s(o[i]);return v+']';}v='{';for(i in o)v+=typeof o[i]!='function'?(v.length>1?',"':'"')+i+'":'+s(o[i]):'';return v+'}';}return''+o;},parse:function(s){try{return eval('('+s+')');}catch(ex){}}});tinymce.create('static tinymce.util.XHR',{send:function(o){var x,t,w=window,c=0;o.scope=o.scope||this;o.success_scope=o.success_scope||o.scope;o.error_scope=o.error_scope||o.scope;o.async=o.async===false?false:true;o.data=o.data||'';function get(s){x=0;try{x=new ActiveXObject(s);}catch(ex){}return x;};x=w.XMLHttpRequest?new XMLHttpRequest():get('Microsoft.XMLHTTP')||get('Msxml2.XMLHTTP');if(x){if(x.overrideMimeType)x.overrideMimeType(o.content_type);x.open(o.type||(o.data?'POST':'GET'),o.url,o.async);if(o.content_type)x.setRequestHeader('Content-Type',o.content_type);x.send(o.data);t=w.setInterval(function(){if(x.readyState==4||c++>10000){w.clearInterval(t);if(o.success&&c<10000&&x.status==200)o.success.call(o.success_scope,''+x.responseText,x,o);else if(o.error)o.error.call(o.error_scope,c>10000?'TIMED_OUT':'GENERAL',x,o);x=null;}},10);}}});(function(){var extend=tinymce.extend,JSON=tinymce.util.JSON,XHR=tinymce.util.XHR;tinymce.create('tinymce.util.JSONRequest',{JSONRequest:function(s){this.settings=extend({},s);this.count=0;},send:function(o){var ecb=o.error,scb=o.success;o=extend(this.settings,o);o.success=function(c,x){c=JSON.parse(c);if(typeof(c)=='undefined'){c={error:'JSON Parse error.'};}if(c.error)ecb.call(o.error_scope||o.scope,c.error,x);else scb.call(o.success_scope||o.scope,c.result);};o.error=function(ty,x){ecb.call(o.error_scope||o.scope,ty,x);};o.data=JSON.serialize({id:o.id||'c'+(this.count++),method:o.method,params:o.params});XHR.send(o);},'static':{sendRPC:function(o){return new tinymce.util.JSONRequest().send(o);}}});}());(function(){var each=tinymce.each,is=tinymce.is;var isWebKit=tinymce.isWebKit,isIE=tinymce.isIE;tinymce.create('tinymce.dom.DOMUtils',{doc:null,root:null,files:null,listeners:{},pixelStyles:/^(top|left|bottom|right|width|height|borderWidth)$/,cache:{},idPattern:/^#[\w]+$/,elmPattern:/^[\w_*]+$/,elmClassPattern:/^([\w_]*)\.([\w_]+)$/,DOMUtils:function(d,s){var t=this;t.doc=d;t.files={};t.cssFlicker=false;t.counter=0;t.boxModel=!tinymce.isIE||d.compatMode=="CSS1Compat";this.settings=s=tinymce.extend({keep_values:false,hex_colors:1},s);if(tinymce.isIE6){try{d.execCommand('BackgroundImageCache',false,true);}catch(e){t.cssFlicker=true;}}tinymce.addUnload(function(){t.doc=t.root=null;});},getRoot:function(){var t=this,s=t.settings;return(s&&t.get(s.root_element))||t.doc.body;},getViewPort:function(w){var d,b;w=!w?window:w;d=w.document;b=this.boxModel?d.documentElement:d.body;return{x:w.pageXOffset||b.scrollLeft,y:w.pageYOffset||b.scrollTop,w:w.innerWidth||b.clientWidth,h:w.innerHeight||b.clientHeight};},getRect:function(e){var p,t=this;e=t.get(e);p=t.getPos(e);return{x:p.x,y:p.y,w:parseInt(t.getStyle(e,'width'))||e.offsetWidth||e.clientWidth,h:parseInt(t.getStyle(e,'height'))||e.offsetHeight||e.clientHeight};},getParent:function(n,f,r){var na;n=this.get(n);if(this.settings.strict_root)r=r||this.getRoot();if(is(f,'string')){na=f.toUpperCase();f=function(n){var s=false;if(n.nodeType==1&&na==='*'){s=true;return false;}each(na.split(','),function(v){if(n.nodeType==1&&n.nodeName==v){s=true;return false;}});return s;};}while(n){if(n==r)return null;if(f(n))return n;n=n.parentNode;}return null;},get:function(e){if(typeof(e)=='string')return this.doc.getElementById(e);return e;},select:function(pa,s){var t=this,cs,c,pl,o=[],x,i,l,n;s=t.get(s)||t.doc;if(t.elmPattern.test(pa)){x=s.getElementsByTagName(pa);for(i=0,l=x.length;i<l;i++)o.push(x[i]);return o;}if(t.elmClassPattern.test(pa)){pl=t.elmClassPattern.exec(pa);x=s.getElementsByTagName(pl[1]||'*');c=' '+pl[2]+' ';for(i=0,l=x.length;i<l;i++){n=x[i];if(n.className&&(' '+n.className+' ').indexOf(c)!==-1)o.push(n);}return o;}function collect(n){if(!n.mce_save){n.mce_save=1;o.push(n);}};function collectIE(n){if(!n.getAttribute('mce_save')){n.setAttribute('mce_save','1');o.push(n);}};function find(n,f,r){var i,l,nl=r.getElementsByTagName(n);for(i=0,l=nl.length;i<l;i++)f(nl[i]);};each(pa.split(','),function(v,i){v=tinymce.trim(v);if(t.elmPattern.test(v)){each(s.getElementsByTagName(v),function(n){collect(n);});return;}if(t.elmClassPattern.test(v)){x=t.elmClassPattern.exec(v);each(s.getElementsByTagName(x[1]),function(n){if(t.hasClass(n,x[2]))collect(n);});return;}if(!(cs=t.cache[pa])){cs='x=(function(cf, s) {';pl=v.split(' ');each(pl,function(v){var p=/^([\w\\*]+)?(?:#([\w\\]+))?(?:\.([\w\\\.]+))?(?:\[\@([\w\\]+)([\^\$\*!]?=)([\w\\]+)\])?(?:\:([\w\\]+))?/i.exec(v);p[1]=p[1]||'*';cs+='find("'+p[1]+'", function(n) {';if(p[2])cs+='if (n.id !== "'+p[2]+'") return;';if(p[3]){cs+='var c = " " + n.className + " ";';cs+='if (';c='';each(p[3].split('.'),function(v){if(v)c+=(c?'||':'')+'c.indexOf(" '+v+' ") === -1';});cs+=c+') return;';}});cs+='cf(n);';for(i=pl.length-1;i>=0;i--)cs+='}, '+(i?'n':'s')+');';cs+='})';t.cache[pa]=cs=eval(cs);}cs(isIE?collectIE:collect,s);});each(o,function(n){if(isIE)n.removeAttribute('mce_save');else delete n.mce_save;});return o;},add:function(p,n,a,h,c){var t=this;return this.run(p,function(p){var e,k;e=is(n,'string')?t.doc.createElement(n):n;if(a){for(k in a){if(a.hasOwnProperty(k)&&!is(a[k],'object'))t.setAttrib(e,k,''+a[k]);}if(a.style&&!is(a.style,'string')){each(a.style,function(v,n){t.setStyle(e,n,v);});}}if(h){if(h.nodeType)e.appendChild(h);else e.innerHTML=h;}return!c?p.appendChild(e):e;});},create:function(n,a,h){return this.add(this.doc.createElement(n),n,a,h,1);},createHTML:function(n,a,h){var o='',t=this,k;o+='<'+n;for(k in a){if(a.hasOwnProperty(k))o+=' '+k+'="'+t.encode(a[k])+'"';}if(tinymce.is(h))return o+'>'+h+'</'+n+'>';return o+' />';},remove:function(n,k){return this.run(n,function(n){var p;p=n.parentNode;if(!p)return null;if(k){each(n.childNodes,function(c){p.insertBefore(c.cloneNode(true),n);});}return p.removeChild(n);});},setStyle:function(n,na,v){return this.run(n,function(e){var s,i;s=e.style;na=na.replace(/-(\D)/g,function(a,b){return b.toUpperCase();});if(this.pixelStyles.test(na)&&(tinymce.is(v,'number')||/^[\-0-9\.]+$/.test(v)))v+='px';switch(na){case'opacity':if(isIE){s.filter=v===''?'':"alpha(opacity="+(v*100)+")";if(!n.currentStyle||!n.currentStyle.hasLayout)s.display='inline-block';}s['-moz-opacity']=s['-khtml-opacity']=v;break;case'float':isIE?s.styleFloat=v:s.cssFloat=v;break;}s[na]=v;});},getStyle:function(n,na,c){n=this.get(n);if(!n)return false;if(this.doc.defaultView&&c){na=na.replace(/[A-Z]/g,function(a){return'-'+a;});try{return this.doc.defaultView.getComputedStyle(n,null).getPropertyValue(na);}catch(ex){return null;}}na=na.replace(/-(\D)/g,function(a,b){return b.toUpperCase();});if(na=='float')na=isIE?'styleFloat':'cssFloat';if(n.currentStyle&&c)return n.currentStyle[na];return n.style[na];},setStyles:function(e,o){var t=this;each(o,function(v,n){t.setStyle(e,n,v);});},setAttrib:function(e,n,v){var t=this;return this.run(e,function(e){var s=t.settings;switch(n){case"style":if(s.keep_values){if(v)e.setAttribute('mce_style',v,2);else e.removeAttribute('mce_style',2);}e.style.cssText=v;break;case"class":e.className=v;break;case"src":case"href":if(s.keep_values){if(s.url_converter)v=s.url_converter.call(s.url_converter_scope||t,v,n,e);t.setAttrib(e,'mce_'+n,v,2);}break;}if(is(v)&&v!==null&&v.length!==0)e.setAttribute(n,''+v,2);else e.removeAttribute(n,2);});},setAttribs:function(e,o){var t=this;return this.run(e,function(e){each(o,function(v,n){t.setAttrib(e,n,v);});});},getAttrib:function(e,n,dv){var v,t=this;e=t.get(e);if(!e)return false;if(!is(dv))dv="";if(/^(src|href|style)$/.test(n)){v=t.getAttrib(e,"mce_"+n);if(v)return v;}v=e.getAttribute(n,2);if(!v){switch(n){case'class':v=e.className;break;default:v=e.attributes[n];v=v&&is(v.nodeValue)?v.nodeValue:v;}}switch(n){case'style':v=v||e.style.cssText;if(v){v=t.serializeStyle(t.parseStyle(v));if(t.settings.keep_values)e.setAttribute('mce_style',v);}break;}if(isWebKit&&n=="class"&&v)v=v.replace(/(apple|webkit)\-[a-z\-]+/gi,'');if(isIE){switch(n){case'rowspan':case'colspan':if(v===1)v='';break;case'size':if(v==='+0')v='';break;case'hspace':if(v===-1)v='';break;case'tabindex':if(v===32768)v='';break;default:if(n.indexOf('on')===0&&v)v=(''+v).replace(/^function\s+anonymous\(\)\s+\{\s+(.*)\s+\}$/,'$1');}}return(v&&v!='')?''+v:dv;},getPos:function(n){var t=this,x=0,y=0,e,d=t.doc;n=t.get(n);if(n&&isIE){n=n.getBoundingClientRect();e=t.boxModel?d.documentElement:d.body;x=t.getStyle(t.select('html')[0],'borderWidth');x=(x=='medium'||t.boxModel&&!t.isIE6)&&2||x;n.top+=window.self!=window.top?2:0;return{x:n.left+e.scrollLeft-x,y:n.top+e.scrollTop-x};}while(n){x+=n.offsetLeft||0;y+=n.offsetTop||0;x-=n.scrollLeft||0;y-=n.scrollTop||0;n=n.offsetParent;}return{x:x,y:y};},parseStyle:function(st){var t=this,s=t.settings,o={};if(!st)return o;function compress(p,s,ot){var t,r,b,l;t=o[p+'-top'+s];if(!t)return;r=o[p+'-right'+s];if(t!=r)return;b=o[p+'-bottom'+s];if(r!=b)return;l=o[p+'-left'+s];if(b!=l)return;o[ot]=l;delete o[p+'-top'+s];delete o[p+'-right'+s];delete o[p+'-bottom'+s];delete o[p+'-left'+s];};function compress2(ta,a,b,c){var t;t=o[a];if(!t)return;t=o[b];if(!t)return;t=o[c];if(!t)return;o[ta]=o[a]+' '+o[b]+' '+o[c];delete o[a];delete o[b];delete o[c];};each(st.split(';'),function(v){var sv,ur=[];if(v){v=v.replace(/url\([^\)]+\)/g,function(v){ur.push(v);return'url('+ur.length+')';});v=v.split(':');sv=tinymce.trim(v[1]);sv=sv.replace(/url\(([^\)]+)\)/g,function(a,b){return ur[parseInt(b)-1];});sv=sv.replace(/rgb\([^\)]+\)/g,function(v){return t.toHex(v);});if(s.url_converter){sv=sv.replace(/url\([\'\"]?([^\)\'\"]+)[\'\"]?\)/g,function(x,c){return'url('+t.encode(s.url_converter.call(s.url_converter_scope||t,t.decode(c),'style',null))+')';});}o[tinymce.trim(v[0]).toLowerCase()]=sv;}});compress("border","","border");compress("border","-width","border-width");compress("border","-color","border-color");compress("border","-style","border-style");compress("padding","","padding");compress("margin","","margin");compress2('border','border-width','border-style','border-color');return o;},serializeStyle:function(o){var s='';each(o,function(v,k){if(k&&v){switch(k){case'color':case'background-color':v=v.toLowerCase();break;}s+=(s?' ':'')+k+': '+v+';';}});return s;},loadCSS:function(u){var t=this,d=this.doc;if(!u)u='';each(u.split(','),function(u){if(t.files[u])return;t.files[u]=true;if(!d.createStyleSheet)t.add(t.select('head')[0],'link',{rel:'stylesheet',href:u});else d.createStyleSheet(u);});},addClass:function(e,c){return this.run(e,function(e){var o;if(!c)return 0;if(this.hasClass(e,c))return e.className;o=this.removeClass(e,c);return e.className=(o!=''?(o+' '):'')+c;});},removeClass:function(e,c){var t=this,re;return t.run(e,function(e){var v;if(t.hasClass(e,c)){if(!re)re=new RegExp("(^|\\s+)"+c+"(\\s+|$)","g");v=e.className.replace(re,' ');return e.className=tinymce.trim(v!=' '?v:'');}return e.className;});},hasClass:function(n,c){n=this.get(n);if(!n||!c)return false;return(' '+n.className+' ').indexOf(' '+c+' ')!==-1;},show:function(e){return this.setStyle(e,'display','block');},hide:function(e){return this.setStyle(e,'display','none');},isHidden:function(e){e=this.get(e);return e.style.display=='none'||this.getStyle(e,'display')=='none';},uniqueId:function(p){return(!p?'mce_':p)+(this.counter++);},setHTML:function(e,h){var t=this;return this.run(e,function(e){h=t.processHTML(h);if(isIE){e.innerHTML='<br />'+h;e.removeChild(e.firstChild);}else e.innerHTML=h;return h;});},processHTML:function(h){var t=this,s=t.settings;if(tinymce.isGecko){h=h.replace(/<(\/?)strong>|<strong( [^>]+)>/gi,'<$1b$2>');h=h.replace(/<(\/?)em>|<em( [^>]+)>/gi,'<$1i$2>');}if(s.keep_values){h=h.replace(/<([\w:]+) [^>]*(src|href|style)[^>]*>/gi,function(a,n){function handle(m,b,c){var u=c;if(a.indexOf('mce_'+b)!=-1)return m;if(b=='style'){if(s.hex_colors){u=u.replace(/rgb\([^\)]+\)/g,function(v){return t.toHex(v);});}if(s.url_converter){u=u.replace(/url\([\'\"]?([^\)\'\"]+)\)/g,function(x,c){return'url('+t.encode(s.url_converter.call(s.url_converter_scope||t,t.decode(c),b,n))+')';});}}else{if(s.url_converter)u=t.encode(s.url_converter.call(s.url_converter_scope||t,t.decode(c),b,n));}return' '+b+'="'+c+'" mce_'+b+'="'+u+'"';};a=a.replace(/ (src|href|style)=[\"]([^\"]+)[\"]/gi,handle);a=a.replace(/ (src|href|style)=[\']([^\']+)[\']/gi,handle);return a.replace(/ (src|href|style)=([^\s\"\'>]+)/gi,handle);});}return h;},getOuterHTML:function(e){var d;e=this.get(e);if(!e)return null;if(isIE)return e.outerHTML;d=(e.ownerDocument||this.doc).createElement("body");d.appendChild(e.cloneNode(true));return d.innerHTML;},setOuterHTML:function(e,h,d){var t=this;return this.run(e,function(e){var n,tp;e=t.get(e);d=d||e.ownerDocument||t.doc;if(isIE&&e.nodeType==1)e.outerHTML=h;else{tp=d.createElement("body");tp.innerHTML=h;n=tp.lastChild;while(n){t.insertAfter(n.cloneNode(true),e);n=n.previousSibling;}t.remove(e);}});},decode:function(s){var e=document.createElement("div");e.innerHTML=s;return!e.firstChild?s:e.firstChild.nodeValue;},encode:function(s){return s?(''+s).replace(/[<>&\"]/g,function(c,b){switch(c){case'&':return'&amp;';case'"':return'&quot;';case'<':return'&lt;';case'>':return'&gt;';}return c;}):s;},insertAfter:function(n,r){var t=this;r=t.get(r);return this.run(n,function(n){var p,ns;p=r.parentNode;ns=r.nextSibling;if(ns)p.insertBefore(n,ns);else p.appendChild(n);return n;});},isBlock:function(n){if(n.nodeType&&n.nodeType!==1)return false;n=n.nodeName||n;return/^(H[1-6]|HR|P|DIV|ADDRESS|PRE|FORM|TABLE|LI|OL|UL|TD|CAPTION|BLOCKQUOTE|CENTER|DL|DT|DD|DIR|FIELDSET|FORM|NOSCRIPT|NOFRAMES|MENU|ISINDEX|SAMP)$/.test(n);},replace:function(n,o,k){if(is(o,'array'))n=n.cloneNode(true);return this.run(o,function(o){if(k){each(o.childNodes,function(c){n.appendChild(c.cloneNode(true));});}return o.parentNode.replaceChild(n,o);});},toHex:function(s){var c=/^\s*rgb\s*?\(\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?\)\s*$/i.exec(s);function hex(s){s=parseInt(s).toString(16);return s.length>1?s:'0'+s;};if(c){s='#'+hex(c[1])+hex(c[2])+hex(c[3]);return s;}return s;},getClasses:function(){var t=this,cl=[],i,lo={},f=t.settings.class_filter;if(t.classes)return t.classes;function addClasses(s){each(s.imports,function(r){addClasses(r);});each(s.cssRules||s.rules,function(r){switch(r.type||1){case 1:if(r.selectorText){each(r.selectorText.split(','),function(v){v=v.replace(/^\s*|\s*$|^\s\./g,"");if(f&&!(v=f(v)))return;if(/^\.mce/.test(v)||!/^\.[\w\-]+$/.test(v))return;v=v.substring(1);if(!lo[v]){cl.push({'class':v});lo[v]=1;}});}break;case 3:addClasses(r.styleSheet);break;}});};try{each(t.doc.styleSheets,addClasses);}catch(ex){}if(cl.length>0)t.classes=cl;return cl;},run:function(e,f,s){var t=this,o;if(typeof(e)==='string')e=t.doc.getElementById(e);if(!e)return false;s=s||this;if(!e.nodeType&&(e.length||e.length===0)){o=[];each(e,function(e,i){if(e){if(typeof(e)=='string')e=t.doc.getElementById(e);o.push(f.call(s,e,i));}});return o;}return f.call(s,e);}});tinymce.DOM=new tinymce.dom.DOMUtils(document);})();(function(){var each=tinymce.each,DOM=tinymce.DOM,isIE=tinymce.isIE,isWebKit=tinymce.isWebKit,Event;tinymce.create('static tinymce.dom.Event',{inits:[],events:[],add:function(o,n,f,s){var cb,t=this,el=t.events,r;if(o&&o instanceof Array){r=[];each(o,function(o){o=DOM.get(o);r.push(t.add(o,n,f,s));});return r;}o=DOM.get(o);if(!o)return;cb=function(e){e=e||window.event;if(e&&!e.target&&isIE)e.target=e.srcElement;if(!s)return f(e);return f.call(s,e);};if(n=='unload'){tinymce.unloads.unshift({func:cb});return cb;}if(n=='init'){if(t.domLoaded)cb();else t.inits.push(cb);return cb;}el.push({obj:o,name:n,func:f,cfunc:cb,scope:s});t._add(o,n,cb);return f;},remove:function(o,n,f){var t=this,a=t.events,s=false,r;if(o&&o instanceof Array){r=[];each(o,function(o){o=DOM.get(o);r.push(t.remove(o,n,f));});return r;}o=DOM.get(o);each(a,function(e,i){if(e.obj==o&&e.name==n&&(!f||(e.func==f||e.cfunc==f))){a.splice(i,1);t._remove(o,n,e.cfunc);s=true;return false;}});return s;},cancel:function(e){if(!e)return false;this.stop(e);return this.prevent(e);},stop:function(e){if(e.stopPropagation)e.stopPropagation();else e.cancelBubble=true;return false;},prevent:function(e){if(e.preventDefault)e.preventDefault();else e.returnValue=false;return false;},_unload:function(){var t=Event;each(t.events,function(e,i){t._remove(e.obj,e.name,e.cfunc);e.obj=e.cfunc=null;});t.events=[];t=null;},_add:function(o,n,f){if(o.attachEvent)o.attachEvent('on'+n,f);else if(o.addEventListener)o.addEventListener(n,f,false);else o['on'+n]=f;},_remove:function(o,n,f){if(o.detachEvent)o.detachEvent('on'+n,f);else if(o.removeEventListener)o.removeEventListener(n,f,false);else o['on'+n]=null;},_pageInit:function(){var e=Event;e._remove(window,'DOMContentLoaded',e._pageInit);e.domLoaded=true;each(e.inits,function(c){c();});e.inits=[];},_wait:function(){var t;if(window.tinyMCE_GZ&&tinyMCE_GZ.loaded)return;if(isIE&&document.location.protocol!='https:'){document.write('<script id=__ie_onload defer src=\'javascript:""\';><\/script>');DOM.get("__ie_onload").onreadystatechange=function(){if(this.readyState=="complete"){Event._pageInit();DOM.get("__ie_onload").onreadystatechange=null;}};}else{Event._add(window,'DOMContentLoaded',Event._pageInit,Event);if(isIE||isWebKit){t=setInterval(function(){if(/loaded|complete/.test(document.readyState)){clearInterval(t);Event._pageInit();}},10);}}}});Event=tinymce.dom.Event;Event._wait();tinymce.addUnload(Event._unload);})();(function(){var each=tinymce.each;tinymce.create('tinymce.dom.Element',{Element:function(id,s){var t=this,dom,el;s=s||{};t.id=id;t.dom=dom=s.dom||tinymce.DOM;t.settings=s;if(!tinymce.isIE)el=t.dom.get(t.id);each(['getPos','getRect','getParent','add','setStyle','getStyle','setStyles','setAttrib','setAttribs','getAttrib','addClass','removeClass','hasClass','getOuterHTML','setOuterHTML','remove','show','hide','isHidden','setHTML','get'],function(k){t[k]=function(){var a=arguments,o;if(tinymce.isOpera){a=[id];each(arguments,function(v){a.push(v);});}else Array.prototype.unshift.call(a,el||id);o=dom[k].apply(dom,a);t.update(k);return o;};});},on:function(n,f,s){return tinymce.dom.Event.add(this.id,n,f,s);},getXY:function(){return{x:parseInt(this.getStyle('left')),y:parseInt(this.getStyle('top'))};},getSize:function(){var n=this.dom.get(this.id);return{w:parseInt(this.getStyle('width')||n.clientWidth),h:parseInt(this.getStyle('height')||n.clientHeight)};},moveTo:function(x,y){this.setStyles({left:x,top:y});},moveBy:function(x,y){var p=this.getXY();this.moveTo(p.x+x,p.y+y);},resizeTo:function(w,h){this.setStyles({width:w,height:h});},resizeBy:function(w,h){var s=this.getSize();this.resizeTo(s.w+w,s.h+h);},update:function(k){var t=this,b,dom=t.dom;if(tinymce.isIE6&&t.settings.blocker){k=k||'';if(k.indexOf('get')===0||k.indexOf('has')===0||k.indexOf('is')===0)return;if(k=='remove'){dom.remove(t.blocker);return;}if(!t.blocker){t.blocker=dom.uniqueId();b=dom.add(t.settings.container||dom.getRoot(),'iframe',{id:t.blocker,style:'position:absolute;',frameBorder:0,src:'javascript:""'});dom.setStyle(b,'opacity',0);}else b=dom.get(t.blocker);dom.setStyle(b,'left',t.getStyle('left',1));dom.setStyle(b,'top',t.getStyle('top',1));dom.setStyle(b,'width',t.getStyle('width',1));dom.setStyle(b,'height',t.getStyle('height',1));dom.setStyle(b,'display',t.getStyle('display',1));dom.setStyle(b,'zIndex',parseInt(t.getStyle('zIndex',1)||0)-1);}}});})();(function(){var is=tinymce.is,isIE=tinymce.isIE,each=tinymce.each;tinymce.create('tinymce.dom.Selection',{Selection:function(dom,win,serializer){var t=this;t.dom=dom;t.win=win;t.serializer=serializer;tinymce.addUnload(function(){t.win=null;});},getContent:function(s){var t=this,r=t.getRng(),e=t.dom.create("body"),se=t.getSel(),wb,wa,n;s=s||{};wb=wa='';s.get=true;s.format=s.format||'html';if(s.format=='text')return t.isCollapsed()?'':(r.text||(se.toString?se.toString():''));if(r.cloneContents){n=r.cloneContents();if(n)e.appendChild(n);}else if(is(r.item)||is(r.htmlText))e.innerHTML=r.item?r.item(0).outerHTML:r.htmlText;else e.innerHTML=r.toString();if(/^\s/.test(e.innerHTML))wb=' ';if(/\s+$/.test(e.innerHTML))wa=' ';return t.isCollapsed()?'':wb+t.serializer.serialize(e,s)+wa;},setContent:function(h,s){var t=this,r=t.getRng(),d;s=s||{format:'html'};s.set=true;h=t.dom.processHTML(h);if(r.insertNode){d=t.win.document;if(d.queryCommandEnabled('InsertHTML'))return d.execCommand('InsertHTML',false,h);r.deleteContents();r.insertNode(t.getRng().createContextualFragment(h));}else{if(r.item)r.item(0).outerHTML=h;else r.pasteHTML(h);}},getStart:function(){var t=this,r=t.getRng(),e;if(isIE){if(r.item)return r.item(0);r=r.duplicate();r.collapse(1);e=r.parentElement();if(e.nodeName=='BODY')return e.firstChild;return e;}else{e=r.startContainer;if(e.nodeName=='BODY')return e.firstChild;return t.dom.getParent(e,function(n){return n.nodeType==1;});}},getEnd:function(){var t=this,r=t.getRng(),e;if(isIE){if(r.item)return r.item(0);r=r.duplicate();r.collapse(0);e=r.parentElement();if(e.nodeName=='BODY')return e.lastChild;return e;}else{e=r.endContainer;if(e.nodeName=='BODY')return e.lastChild;return t.dom.getParent(e,function(n){return n.nodeType==1;});}},getBookmark:function(si){var t=this,r=t.getRng(),tr,sx,sy,vp=t.dom.getViewPort(t.win),e,sp,bp,le,c=-0xFFFFFF,s,ro=t.dom.getRoot();sx=vp.x;sy=vp.y;if(si=='simple')return{rng:r,scrollX:sx,scrollY:sy};if(isIE){if(r.item){e=r.item(0);each(t.dom.select(e.nodeName),function(n,i){if(e==n){sp=i;return false;}});return{tag:e.nodeName,index:sp,scrollX:sx,scrollY:sy};}tr=t.dom.doc.body.createTextRange();tr.moveToElementText(ro);tr.collapse(true);bp=Math.abs(tr.move('character',c));tr=r.duplicate();tr.collapse(true);sp=Math.abs(tr.move('character',c));tr=r.duplicate();tr.collapse(false);le=Math.abs(tr.move('character',c))-sp;return{start:sp-bp,length:le,scrollX:sx,scrollY:sy};}e=t.getNode();s=t.getSel();if(!s)return null;if(e&&e.nodeName=='IMG'){return{scrollX:sx,scrollY:sy};}function getPos(r,sn,en){var w=document.createTreeWalker(r,NodeFilter.SHOW_TEXT,null,false),n,p=0,d={};while((n=w.nextNode())!=null){if(n==sn)d.start=p;if(n==en){d.end=p;return d;}p+=n.nodeValue?n.nodeValue.length:0;}return null;};if(s.anchorNode==s.focusNode&&s.anchorOffset==s.focusOffset){e=getPos(ro,s.anchorNode,s.focusNode);if(!e)return{scrollX:sx,scrollY:sy};return{start:e.start+s.anchorOffset,end:e.end+s.focusOffset,scrollX:sx,scrollY:sy};}else{e=getPos(ro,r.startContainer,r.endContainer);if(!e)return{scrollX:sx,scrollY:sy};return{start:e.start+r.startOffset,end:e.end+r.endOffset,scrollX:sx,scrollY:sy};}},moveToBookmark:function(b){var t=this,r=t.getRng(),s=t.getSel(),ro=t.dom.getRoot(),sd;function getPos(r,sp,ep){var w=document.createTreeWalker(r,NodeFilter.SHOW_TEXT,null,false),n,p=0,d={};while((n=w.nextNode())!=null){p+=n.nodeValue?n.nodeValue.length:0;if(p>=sp&&!d.startNode){d.startNode=n;d.startOffset=sp-(p-n.nodeValue.length);}if(p>=ep){d.endNode=n;d.endOffset=ep-(p-n.nodeValue.length);return d;}}return null;};if(!b)return false;t.win.scrollTo(b.scrollX,b.scrollY);if(isIE){if(r=b.rng){try{r.select();}catch(ex){}return true;}t.win.focus();if(b.tag){r=ro.createControlRange();each(t.dom.select(b.tag),function(n,i){if(i==b.index)r.addElement(n);});}else{try{if(b.start<0)return true;r=s.createRange();r.moveToElementText(ro);r.collapse(true);r.moveStart('character',b.start);r.moveEnd('character',b.length);}catch(ex2){return true;}}r.select();return true;}if(!s)return false;if(b.rng){s.removeAllRanges();s.addRange(b.rng);}else{if(is(b.start)&&is(b.end)){try{sd=getPos(ro,b.start,b.end);if(sd){r=t.dom.doc.createRange();r.setStart(sd.startNode,sd.startOffset);r.setEnd(sd.endNode,sd.endOffset);s.removeAllRanges();s.addRange(r);}if(!tinymce.isOpera)t.win.focus();}catch(ex){}}}},select:function(n,c){var t=this,r=t.getRng(),s=t.getSel(),b,fn,ln,d=t.win.document;function first(n){return n?d.createTreeWalker(n,NodeFilter.SHOW_TEXT,null,false).nextNode():null;};function last(n){var c,o,w;if(!n)return null;w=d.createTreeWalker(n,NodeFilter.SHOW_TEXT,null,false);while(c=w.nextNode())o=c;return o;};if(isIE){try{b=d.body;if(/^(IMG|TABLE)$/.test(n.nodeName)){r=b.createControlRange();r.addElement(n);}else{r=b.createTextRange();r.moveToElementText(n);}r.select();}catch(ex){}}else{if(c){fn=first(n);ln=last(n);if(fn&&ln){r=d.createRange();r.setStart(fn,0);r.setEnd(ln,ln.nodeValue.length);}else r.selectNode(n);}else r.selectNode(n);t.setRng(r);}return n;},isCollapsed:function(){var t=this,r=t.getRng();if(!r||r.item)return false;return r.boundingWidth==0||t.getSel().isCollapsed;},collapse:function(b){var t=this,r=t.getRng(),n;if(r.item){n=r.item(0);r=this.win.document.body.createTextRange();r.moveToElementText(n);}r.collapse(!!b);t.setRng(r);},getSel:function(){var t=this,w=this.win;return w.getSelection?w.getSelection():w.document.selection;},getRng:function(){var t=this,s=t.getSel(),r;if(!s)return null;try{r=s.rangeCount>0?s.getRangeAt(0):(s.createRange?s.createRange():t.win.document.createRange());}catch(ex){r=this.win.document.body.createTextRange();}return r;},setRng:function(r){var s;if(!isIE){s=this.getSel();s.removeAllRanges();s.addRange(r);}else r.select();},setNode:function(n){var t=this;t.setContent(t.dom.getOuterHTML(n));return n;},getNode:function(){var t=this,r=t.getRng(),s=t.getSel(),e;if(!isIE){if(!r)return t.dom.getRoot();e=r.commonAncestorContainer;if(!r.collapsed){if(r.startContainer==r.endContainer||(tinymce.isWebKit&&r.startContainer==r.endContainer.parentNode)){if(r.startOffset-r.endOffset<2||tinymce.isWebKit){if(r.startContainer.hasChildNodes())e=r.startContainer.childNodes[r.startOffset];}}}return t.dom.getParent(e,function(n){return n.nodeType==1;});}return r.item?r.item(0):r.parentElement();}});})();(function(){tinymce.create('tinymce.dom.XMLWriter',{node:null,XMLWriter:function(s){function getXML(){var i=document.implementation;if(!i||!i.createDocument){try{return new ActiveXObject('MSXML2.DOMDocument');}catch(ex){}try{return new ActiveXObject('Microsoft.XmlDom');}catch(ex){}}else return i.createDocument('','',null);};this.doc=getXML();this.reset();},reset:function(){var t=this,d=t.doc;if(d.firstChild)d.removeChild(d.firstChild);t.node=d.appendChild(d.createElement("html"));},writeStartElement:function(n){var t=this;t.node=t.node.appendChild(t.doc.createElement(n));},writeAttribute:function(n,v){if(tinymce.isOpera)v=v.replace(/>/g,'|>');this.node.setAttribute(n,v);},writeEndElement:function(){this.node=this.node.parentNode;},writeFullEndElement:function(){var t=this,n=t.node;n.appendChild(t.doc.createTextNode(""));t.node=n.parentNode;},writeText:function(v){if(tinymce.isOpera)v=v.replace(/>/g,'|>');this.node.appendChild(this.doc.createTextNode(v));},writeCDATA:function(v){this.node.appendChild(this.doc.createCDATA(v));},writeComment:function(v){this.node.appendChild(this.doc.createComment(v));},getContent:function(){var h;h=this.doc.xml||new XMLSerializer().serializeToString(this.doc);h=h.replace(/<\?[^?]+\?>|<html>|<\/html>|<html\/>/g,'');h=h.replace(/ ?\/>/g,' />');if(tinymce.isOpera)h=h.replace(/\|>/g,'&gt;');return h;}});})();(function(){var extend=tinymce.extend,each=tinymce.each,Dispatcher=tinymce.util.Dispatcher,isIE=tinymce.isIE;function getIEAtts(n){var o=[];if(n.nodeName=='OBJECT')return n.attributes;n.cloneNode(false).outerHTML.replace(/([a-z0-9\-_]+)=/gi,function(a,b){o.push({specified:1,nodeName:b});});return o;};function wildcardToRE(s){return s.replace(/([?+*])/g,'.$1');};tinymce.create('tinymce.dom.Serializer',{Serializer:function(s){var t=this;t.key=0;t.onPreProcess=new Dispatcher(t);t.onPostProcess=new Dispatcher(t);t.writer=new tinymce.dom.XMLWriter();t.settings=s=extend({dom:tinymce.DOM,valid_nodes:0,node_filter:0,attr_filter:0,invalid_attrs:/^(mce_|_moz_$)/,closed:/(br|hr|input|meta|img|link|param)/,entity_encoding:'named',entities:'160,nbsp,161,iexcl,162,cent,163,pound,164,curren,165,yen,166,brvbar,167,sect,168,uml,169,copy,170,ordf,171,laquo,172,not,173,shy,174,reg,175,macr,176,deg,177,plusmn,178,sup2,179,sup3,180,acute,181,micro,182,para,183,middot,184,cedil,185,sup1,186,ordm,187,raquo,188,frac14,189,frac12,190,frac34,191,iquest,192,Agrave,193,Aacute,194,Acirc,195,Atilde,196,Auml,197,Aring,198,AElig,199,Ccedil,200,Egrave,201,Eacute,202,Ecirc,203,Euml,204,Igrave,205,Iacute,206,Icirc,207,Iuml,208,ETH,209,Ntilde,210,Ograve,211,Oacute,212,Ocirc,213,Otilde,214,Ouml,215,times,216,Oslash,217,Ugrave,218,Uacute,219,Ucirc,220,Uuml,221,Yacute,222,THORN,223,szlig,224,agrave,225,aacute,226,acirc,227,atilde,228,auml,229,aring,230,aelig,231,ccedil,232,egrave,233,eacute,234,ecirc,235,euml,236,igrave,237,iacute,238,icirc,239,iuml,240,eth,241,ntilde,242,ograve,243,oacute,244,ocirc,245,otilde,246,ouml,247,divide,248,oslash,249,ugrave,250,uacute,251,ucirc,252,uuml,253,yacute,254,thorn,255,yuml,402,fnof,913,Alpha,914,Beta,915,Gamma,916,Delta,917,Epsilon,918,Zeta,919,Eta,920,Theta,921,Iota,922,Kappa,923,Lambda,924,Mu,925,Nu,926,Xi,927,Omicron,928,Pi,929,Rho,931,Sigma,932,Tau,933,Upsilon,934,Phi,935,Chi,936,Psi,937,Omega,945,alpha,946,beta,947,gamma,948,delta,949,epsilon,950,zeta,951,eta,952,theta,953,iota,954,kappa,955,lambda,956,mu,957,nu,958,xi,959,omicron,960,pi,961,rho,962,sigmaf,963,sigma,964,tau,965,upsilon,966,phi,967,chi,968,psi,969,omega,977,thetasym,978,upsih,982,piv,8226,bull,8230,hellip,8242,prime,8243,Prime,8254,oline,8260,frasl,8472,weierp,8465,image,8476,real,8482,trade,8501,alefsym,8592,larr,8593,uarr,8594,rarr,8595,darr,8596,harr,8629,crarr,8656,lArr,8657,uArr,8658,rArr,8659,dArr,8660,hArr,8704,forall,8706,part,8707,exist,8709,empty,8711,nabla,8712,isin,8713,notin,8715,ni,8719,prod,8721,sum,8722,minus,8727,lowast,8730,radic,8733,prop,8734,infin,8736,ang,8743,and,8744,or,8745,cap,8746,cup,8747,int,8756,there4,8764,sim,8773,cong,8776,asymp,8800,ne,8801,equiv,8804,le,8805,ge,8834,sub,8835,sup,8836,nsub,8838,sube,8839,supe,8853,oplus,8855,otimes,8869,perp,8901,sdot,8968,lceil,8969,rceil,8970,lfloor,8971,rfloor,9001,lang,9002,rang,9674,loz,9824,spades,9827,clubs,9829,hearts,9830,diams,338,OElig,339,oelig,352,Scaron,353,scaron,376,Yuml,710,circ,732,tilde,8194,ensp,8195,emsp,8201,thinsp,8204,zwnj,8205,zwj,8206,lrm,8207,rlm,8211,ndash,8212,mdash,8216,lsquo,8217,rsquo,8218,sbquo,8220,ldquo,8221,rdquo,8222,bdquo,8224,dagger,8225,Dagger,8240,permil,8249,lsaquo,8250,rsaquo,8364,euro',valid_elements:'*[*]',extended_valid_elements:0,valid_child_elements:0,invalid_elements:0,fix_table_elements:0,fix_list_elements:true,fix_content_duplication:true,convert_fonts_to_spans:false,font_size_classes:0,font_size_style_values:0,apply_source_formatting:0,indent_mode:'simple',indent_char:'\t',indent_levels:1,remove_linebreaks:1},s);t.dom=s.dom;if(s.fix_list_elements){t.onPreProcess.add(function(se,o){var nl,x,a=['ol','ul'],i,n,p,r=/^(OL|UL)$/,np;function prevNode(e,n){var a=n.split(','),i;while((e=e.previousSibling)!=null){for(i=0;i<a.length;i++){if(e.nodeName==a[i])return e;}}return null;};for(x=0;x<a.length;x++){nl=t.dom.select(a[x],o.node);for(i=0;i<nl.length;i++){n=nl[i];p=n.parentNode;if(r.test(p.nodeName)){np=prevNode(n,'LI');if(!np){np=t.dom.create('li');np.innerHTML='&nbsp;';np.appendChild(n);p.insertBefore(np,p.firstChild);}else np.appendChild(n);}}}});}if(s.fix_table_elements){t.onPreProcess.add(function(se,o){var ta=[],d=t.dom.doc;each(t.dom.select('table',o.node),function(e){var pa=t.dom.getParent(e,'H1,H2,H3,H4,H5,H6,P'),p=[],i,h;if(pa){t.dom.getParent(e,function(n){if(n!=e)p.push(n.nodeName);});h='';for(i=0;i<p.length;i++)h+='</'+p[i]+'>';h+=t.dom.getOuterHTML(e);for(i=p.length-1;i>=0;i--)h+='<'+p[i]+'>';ta.push(h);e.parentNode.replaceChild(d.createComment('mcetable:'+(ta.length-1)),e);}});t.dom.setHTML(o.node,o.node.innerHTML.replace(/<!--mcetable:([0-9]+)-->/g,function(a,b){return ta[parseInt(b)];}));});}},encode:function(o){var t=this,s=t.settings,l;if(s.entity_encoding.indexOf('named')!=-1){t.setEntities(s.entities);l=t.entityLookup;if(o.format=='html'){o.content=o.content.replace(t.entitiesRE,function(a){var v;if(v=l[a])a='&'+v+';';return a;});}}if(s.entity_encoding.indexOf('numeric')!=-1){if(o.format=='html'){o.content=o.content.replace(/[\u007E-\uFFFF]/g,function(a){return'&#'+a.charCodeAt(0)+';';});}}},setEntities:function(s){var a,i,l={},re='',v;if(this.entityLookup)return;a=s.split(',');for(i=0;i<a.length;i+=2){v=a[i];if(v==34||v==38||v==60||v==62)continue;l[String.fromCharCode(a[i])]=a[i+1];v=parseInt(a[i]).toString(16);re+='\\u'+'0000'.substring(v.length)+v;}this.entitiesRE=new RegExp('['+re+']','g');this.entityLookup=l;},setValidChildRules:function(s){this.childRules=null;this.addValidChildRules(s);},addValidChildRules:function(s){var t=this,inst,intr,bloc;if(!s)return;inst='A|BR|SPAN|BDO|MAP|OBJECT|IMG|TT|I|B|BIG|SMALL|EM|STRONG|DFN|CODE|Q|SAMP|KBD|VAR|CITE|ABBR|ACRONYM|SUB|SUP|#text|#comment';intr='A|BR|SPAN|BDO|OBJECT|APPLET|IMG|MAP|IFRAME|TT|I|B|U|S|STRIKE|BIG|SMALL|FONT|BASEFONT|EM|STRONG|DFN|CODE|Q|SAMP|KBD|VAR|CITE|ABBR|ACRONYM|SUB|SUP|INPUT|SELECT|TEXTAREA|LABEL|BUTTON|#text|#comment';bloc='H[1-6]|P|DIV|ADDRESS|PRE|FORM|TABLE|LI|OL|UL|TD|CAPTION|BLOCKQUOTE|CENTER|DL|DT|DD|DIR|FIELDSET|FORM|NOSCRIPT|NOFRAMES|MENU|ISINDEX|SAMP';each(s.split(','),function(s){var p=s.split(/\[|\]/),re;s='';each(p[1].split('|'),function(v){if(s)s+='|';switch(v){case'%itrans':v=intr;break;case'%itrans_na':v=intr.substring(2);break;case'%istrict':v=inst;break;case'%istrict_na':v=inst.substring(2);break;case'%btrans':v=bloc;break;case'%bstrict':v=bloc;break;}s+=v;});re=new RegExp('^('+s.toLowerCase()+')$','i');each(p[0].split('/'),function(s){t.childRules=t.childRules||{};t.childRules[s]=re;});});s='';each(t.childRules,function(v,k){if(s)s+='|';s+=k;});t.parentElementsRE=new RegExp('^('+s.toLowerCase()+')$','i');},setRules:function(s){var t=this;t._setup();t.rules={};t.wildRules=[];t.validElements={};return t.addRules(s);},addRules:function(s){var t=this,dr;if(!s)return;t._setup();each(s.split(','),function(s){var p=s.split(/\[|\]/),tn=p[0].split('/'),ra,at,wat,va=[];if(dr)at=tinymce.extend([],dr.attribs);if(p.length>1){each(p[1].split('|'),function(s){var ar={},i;at=at||[];s=s.replace(/::/g,'~');s=/^([!\-])?([\w*.?~]+|)([=:<])?(.+)?$/.exec(s);s[2]=s[2].replace(/~/g,':');if(s[1]=='!'){ra=ra||[];ra.push(s[2]);}if(s[1]=='-'){for(i=0;i<at.length;i++){if(at[i].name==s[2]){at.splice(i,1);return;}}}switch(s[3]){case'=':ar.defaultVal=s[4]||'';break;case':':ar.forcedVal=s[4];break;case'<':ar.validVals=s[4].split('?');break;}if(/[*.?]/.test(s[2])){wat=wat||[];ar.nameRE=new RegExp('^'+wildcardToRE(s[2])+'$');wat.push(ar);}else{ar.name=s[2];at.push(ar);}va.push(s[2]);});}each(tn,function(s,i){var pr=s.charAt(0),x=1,ru={};if(dr){if(dr.noEmpty)ru.noEmpty=dr.noEmpty;if(dr.fullEnd)ru.fullEnd=dr.fullEnd;if(dr.padd)ru.padd=dr.padd;}switch(pr){case'-':ru.noEmpty=true;break;case'+':ru.fullEnd=true;break;case'#':ru.padd=true;break;default:x=0;}tn[i]=s=s.substring(x);t.validElements[s]=1;if(/[*.?]/.test(tn[0])){ru.nameRE=new RegExp('^'+wildcardToRE(tn[0])+'$');t.wildRules=t.wildRules||{};t.wildRules.push(ru);}else{ru.name=tn[0];if(tn[0]=='@')dr=ru;t.rules[s]=ru;}ru.attribs=at;if(ra)ru.requiredAttribs=ra;if(wat){s='';each(va,function(v){if(s)s+='|';s+='('+wildcardToRE(v)+')';});ru.validAttribsRE=new RegExp('^'+s.toLowerCase()+'$');ru.wildAttribs=wat;}});});s='';each(t.validElements,function(v,k){if(s)s+='|';if(k!='@')s+=k;});t.validElementsRE=new RegExp('^('+wildcardToRE(s.toLowerCase())+')$');},findRule:function(n){var t=this,rl=t.rules,i,r;t._setup();r=rl[n];if(r)return r;rl=t.wildRules;for(i=0;i<rl.length;i++){if(rl[i].nameRE.test(n))return rl[i];}return null;},findAttribRule:function(ru,n){var i,wa=ru.wildAttribs;for(i=0;i<wa.length;i++){if(wa[i].nameRE.test(n))return wa[i];}return null;},serialize:function(n,o){var h,t=this;t._setup();o=o||{};o.format=o.format||'html';t.processObj=o;n=n.cloneNode(true);t.key=''+(parseInt(t.key)+1);if(!o.no_events){o.node=n;t.onPreProcess.dispatch(t,o);}t.writer.reset();t._serializeNode(n,o.getInner);o.content=t.writer.getContent();if(!o.no_events)t.onPostProcess.dispatch(t,o);t.encode(o);t.indent(o);t._postProcess(o);o.node=null;return tinymce.trim(o.content);},indent:function(o){var t=this,s=t.settings,h=o.content,sc=[],p;if(o.format=='html'){p=t._protect({content:h,patterns:[/<script[^>]*>(.*?)<\/script>/g,/<style[^>]*>(.*?)<\/style>/g,/<pre[^>]*>(.*?)<\/pre>/g]});h=p.content;if(s.remove_linebreaks){h=h.replace(/(<[^>]+>)\s+/g,'$1 ');h=h.replace(/\s+(<\/[^>]+>)/g,' $1');h=h.replace(/<(p|h[1-6]|hr|div|table|tbody|tr|td|body|head|html|title|meta|style|pre|script|link|object) ([^>]+)>\s+/g,'<$1 $2>');h=h.replace(/<(p|h[1-6]|hr|div|table|tbody|tr|td|body|head|html|title|meta|style|pre|script|link|object)>\s+/g,'<$1>');h=h.replace(/\s+<\/(p|h[1-6]|hr|div|table|tbody|tr|td|body|head|html|title|meta|style|pre|script|link|object)>/g,'</$1>');}if(s.apply_source_formatting&&s.indent_mode=='simple'){h=h.replace(/<(\/?)(ul|hr|table|meta|link|tbody|tr|object|body|head|html)(|[^>]+)>\s*/g,'\n<$1$2$3>\n');h=h.replace(/<(p|h[1-6]|div|title|style|pre|script|td|li)(|[^>]+)>/g,'\n<$1$2>');h=h.replace(/<\/(p|h[1-6]|div|title|style|pre|script|td|li)>/g,'</$1>\n');h=h.replace(/\n\n/g,'\n');}h=t._unprotect(h,p);}o.content=h;},_serializeNode:function(n,inn){var t=this,s=t.settings,w=t.writer,hc,el,cn,i,l,a,at,no,v,nn,ru,ar,iv;if(!s.node_filter||s.node_filter(n)){switch(n.nodeType){case 1:if(n.hasAttribute?n.hasAttribute('mce_bogus'):n.getAttribute('mce_bogus'))return;iv=false;hc=n.hasChildNodes();nn=n.getAttribute('mce_name')||n.nodeName.toLowerCase();if(isIE){if(n.scopeName!=='HTML')nn=n.scopeName+':'+nn;}if(nn.indexOf('mce:')===0)nn=nn.substring(4);if(!t.validElementsRE.test(nn)||(t.invalidElementsRE&&t.invalidElementsRE.test(nn))||inn){iv=true;break;}if(isIE){if(s.fix_content_duplication){if(n.mce_serialized==t.key)return;n.mce_serialized=t.key;}if(nn.charAt(0)=='/')nn=nn.substring(1);}if(t.childRules){if(t.parentElementsRE.test(t.elementName)){if(!t.childRules[t.elementName].test(nn)){iv=true;break;}}t.elementName=nn;}ru=t.findRule(nn);nn=ru.name||nn;if((!hc&&ru.noEmpty)||(isIE&&!nn)){iv=true;break;}if(ru.requiredAttribs){a=ru.requiredAttribs;for(i=a.length-1;i>=0;i--){if(this.dom.getAttrib(n,a[i])!=='')break;}if(i==-1){iv=true;break;}}w.writeStartElement(nn);if(ru.attribs){for(i=0,at=ru.attribs,l=at.length;i<l;i++){a=at[i];v=t._getAttrib(n,a);if(v!==null)w.writeAttribute(a.name,v);}}if(ru.validAttribsRE){at=isIE?getIEAtts(n):n.attributes;for(i=at.length-1;i>-1;i--){no=at[i];if(no.specified){a=no.nodeName.toLowerCase();if(s.invalid_attrs.test(a)||!ru.validAttribsRE.test(a))continue;ar=t.findAttribRule(ru,a);v=t._getAttrib(n,ar,a);if(v!==null)w.writeAttribute(a,v);}}}if(!hc&&ru.padd)w.writeText('\u00a0');break;case 3:if(t.childRules&&t.parentElementsRE.test(t.elementName)){if(!t.childRules[t.elementName].test(n.nodeName))return;}return w.writeText(n.nodeValue);case 4:return w.writeCDATA(n.nodeValue);case 8:return w.writeComment(n.nodeValue);}}else if(n.nodeType==1)hc=n.hasChildNodes();if(hc){cn=n.firstChild;while(cn){t._serializeNode(cn);t.elementName=nn;cn=cn.nextSibling;}}if(!iv){if(hc||!s.closed.test(nn))w.writeFullEndElement();else w.writeEndElement();}},_protect:function(o){o.items=o.items||[];function enc(s){return s.replace(/[\r\n]/g,function(c){if(c==='\n')return'\\n';return'\\r';});};function dec(s){return s.replace(/\\[rn]/g,function(c){if(c==='\\n')return'\n';return'\r';});};each(o.patterns,function(p){o.content=dec(enc(o.content).replace(p,function(a){o.items.push(dec(a));return'<!--mce:'+(o.items.length-1)+'-->';}));});return o;},_unprotect:function(h,o){h=h.replace(/\<!--mce:([0-9]+)--\>/g,function(a,b){return o.items[parseInt(b)];});o.items=[];return h;},_postProcess:function(o){var s=this.settings,h;if(o.format=='html'){h=o.content;if(o.set)h=h.replace(/<p>\s+(&nbsp;|&#160;|\u00a0|<br \/>)\s+<\/p>/g,'<p><br /></p>');else h=h.replace(/<p>\s+(&nbsp;|&#160;|\u00a0|<br \/>)\s+<\/p>/g,'<p>$1</p>');o.content=h;}},_setup:function(){var t=this,s=this.settings;if(t.done)return;t.done=1;t.setRules(s.valid_elements);t.addRules(s.extended_valid_elements);t.addValidChildRules(s.valid_child_elements);if(s.invalid_elements)t.invalidElementsRE=new RegExp('^('+wildcardToRE(s.invalid_elements.replace(',','|').toLowerCase())+')$');if(s.attrib_value_filter)t.attribValueFilter=s.attribValueFilter;},_getAttrib:function(n,a,na){var i,v;na=na||a.name;if(a.forcedVal&&(v=a.forcedVal)){if(v==='{$uid}')return this.dom.uniqueId();return v;}v=this.dom.getAttrib(n,na);switch(na){case'rowspan':case'colspan':if(v=='1')v='';break;}if(this.attribValueFilter)v=this.attribValueFilter(na,v,n);if(a.validVals){for(i=a.validVals.length-1;i>=0;i--){if(v==a.validVals[i])break;}if(i==-1)return null;}if(v===''&&typeof(a.defaultVal)!='undefined'){v=a.defaultVal;if(v==='{$uid}')return this.dom.uniqueId();return v;}else{if(na=='class'&&this.processObj.get)v=v.replace(/\bmceItem\w+\b/g,'');}if(v==='')return null;return v;}});})();(function(){var each=tinymce.each;tinymce.create('tinymce.dom.ScriptLoader',{ScriptLoader:function(s){this.settings=s||{};this.queue=[];this.lookup={};},markDone:function(u){this.lookup[u]={state:2,url:u};},add:function(u,cb,s,pr){var t=this,lo=t.lookup,o;if(o=lo[u]){if(cb&&o.state==2)cb.call(s||this);return o;}o={state:0,url:u,func:cb,scope:s||this};if(pr)t.queue.unshift(o);else t.queue.push(o);lo[u]=o;return o;},load:function(u,cb,s){var o;if(!tinymce.is(u,'string')){o=[];each(u,function(u){o.push({state:0,url:u});});this.loadScripts(o,cb,s);}else this.loadScripts([{state:0,url:u}],cb,s);},loadQueue:function(cb,s){var t=this;if(!t.queueLoading){t.queueLoading=1;t.queueCallbacks=[];t.loadScripts(t.queue,function(){t.queueLoading=0;if(cb)cb.call(s||t);each(t.queueCallbacks,function(o){o.func.call(o.scope);});});}else if(cb)t.queueCallbacks.push({func:cb,scope:s||t});},eval:function(co){var w=window;if(!w.execScript){try{eval.call(w,co);}catch(ex){eval(co,w);}}else w.execScript(co);},loadScripts:function(sc,cb,s){var t=this,lo=t.lookup;function done(o){o.state=2;if(o.func)o.func.call(o.scope||t);};function allDone(){var l;l=sc.length;each(sc,function(o){o=lo[o.url];if(o.state===2){done(o);l--;}else load(o);});if(l===0&&cb){cb.call(s||t);cb=0;}};function load(o){if(o.state>0)return;o.state=1;tinymce.util.XHR.send({url:o.url,error:t.settings.error,success:function(co){t.eval(co);done(o);allDone();}});};each(sc,function(o){var u=o.url;if(!lo[u]){lo[u]=o;t.queue.push(o);}else o=lo[u];if(o.state>0)return;if(!tinymce.dom.Event.domLoaded&&!t.settings.strict_mode){var ix,ol='';if(cb||o.func){o.state=1;ix=tinymce.dom.ScriptLoader._addOnLoad(function(){done(o);allDone();});if(tinymce.isIE)ol=' onreadystatechange="';else ol=' onload="';ol+='tinymce.dom.ScriptLoader._onLoad(this,\''+u+'\','+ix+');"';}document.write('<script type="text/javascript" src="'+u+'"'+ol+'></script>');if(!o.func)done(o);}else load(o);});allDone();},'static':{_addOnLoad:function(f){var t=this;t._funcs=t._funcs||[];t._funcs.push(f);return t._funcs.length-1;},_onLoad:function(e,u,ix){if(!tinymce.isIE||e.readyState=='complete')this._funcs[ix].call(this);}}});tinymce.ScriptLoader=new tinymce.dom.ScriptLoader();})();(function(){var DOM=tinymce.DOM,is=tinymce.is;tinymce.create('tinymce.ui.Control',{Control:function(id,s){this.id=id;this.settings=s=s||{};this.rendered=false;this.onRender=new tinymce.util.Dispatcher(this);this.classPrefix='';this.scope=s.scope||this;this.disabled=0;this.active=0;},setDisabled:function(s){var e;if(s!=this.disabled){e=DOM.get(this.id);if(e&&this.settings.unavailable_prefix){if(s){this.prevTitle=e.title;e.title=this.settings.unavailable_prefix+": "+e.title;}else e.title=this.prevTitle;}this.setState('Disabled',s);this.setState('Enabled',!s);this.disabled=s;}},isDisabled:function(){return this.disabled;},setActive:function(s){if(s!=this.active){this.setState('Active',s);this.active=s;}},isActive:function(){return this.active;},setState:function(c,s){var n=DOM.get(this.id);c=this.classPrefix+c;if(s)DOM.addClass(n,c);else DOM.removeClass(n,c);},isRendered:function(){return this.rendered;},renderHTML:function(){},renderTo:function(n){n.innerHTML=this.renderHTML();},postRender:function(){var t=this,b;if(is(t.disabled)){b=t.disabled;t.disabled=-1;t.setDisabled(b);}if(is(t.active)){b=t.active;t.active=-1;t.setActive(b);}},destroy:function(){DOM.remove(this.id);}});})();tinymce.create('tinymce.ui.Container:tinymce.ui.Control',{Container:function(id,s){this.parent(id,s);this.controls=[];this.lookup={};},add:function(c){this.lookup[c.id]=c;this.controls.push(c);return c;},get:function(n){return this.lookup[n];}});tinymce.create('tinymce.ui.Separator:tinymce.ui.Control',{renderHTML:function(){return tinymce.DOM.createHTML('span',{'class':'mceSeparator'});}});(function(){var is=tinymce.is,DOM=tinymce.DOM,each=tinymce.each,walk=tinymce.walk;tinymce.create('tinymce.ui.MenuItem:tinymce.ui.Control',{MenuItem:function(id,s){this.parent(id,s);this.classPrefix='mceMenuItem';},setSelected:function(s){this.setState('Selected',s);this.selected=s;},isSelected:function(){return this.selected;},postRender:function(){var t=this;t.parent();if(is(t.selected))t.setSelected(t.selected);}});})();(function(){var is=tinymce.is,DOM=tinymce.DOM,each=tinymce.each,walk=tinymce.walk;tinymce.create('tinymce.ui.Menu:tinymce.ui.MenuItem',{Menu:function(id,s){var t=this;t.parent(id,s);t.items={};t.collapsed=false;t.menuCount=0;t.onAddItem=new tinymce.util.Dispatcher(this);},expand:function(d){var t=this;if(d){walk(t,function(o){if(o.expand)o.expand();},'items',t);}t.collapsed=false;},collapse:function(d){var t=this;if(d){walk(t,function(o){if(o.collapse)o.collapse();},'items',t);}t.collapsed=true;},isCollapsed:function(){return this.collapsed;},add:function(o){if(!o.settings)o=new tinymce.ui.MenuItem(o.id||DOM.uniqueId(),o);this.onAddItem.dispatch(this,o);return this.items[o.id]=o;},addSeparator:function(){return this.add({separator:true});},addMenu:function(o){if(!o.collapse)o=this.createMenu(o);this.menuCount++;return this.add(o);},hasMenus:function(){return this.menuCount!==0;},remove:function(o){delete this.items[o.id];},removeAll:function(){var t=this;walk(t,function(o){if(o.removeAll)o.removeAll();o.destroy();},'items',t);t.items={};},createMenu:function(o){var m=new tinymce.ui.Menu(o.id||DOM.uniqueId(),o);m.onAddItem.add(this.onAddItem.dispatch,this.onAddItem);return m;}});})();(function(){var is=tinymce.is,DOM=tinymce.DOM,each=tinymce.each,Event=tinymce.dom.Event,Element=tinymce.dom.Element;tinymce.create('tinymce.ui.DropMenu:tinymce.ui.Menu',{DropMenu:function(id,s){s=s||{};s.container=s.container||document.body;s.offset_x=s.offset_x||0;s.offset_y=s.offset_y||0;s.vp_offset_x=s.vp_offset_x||0;s.vp_offset_y=s.vp_offset_y||0;this.parent(id,s);this.onHideMenu=new tinymce.util.Dispatcher(this);this.classPrefix='mceMenu';},createMenu:function(s){var t=this,cs=t.settings,m;s.container=s.container||cs.container;s.parent=t;s.constrain=s.constrain||cs.constrain;s['class']=s['class']||cs['class'];s.vp_offset_x=s.vp_offset_x||cs.vp_offset_x;s.vp_offset_y=s.vp_offset_y||cs.vp_offset_y;m=new tinymce.ui.DropMenu(s.id||DOM.uniqueId(),s);m.onAddItem.add(t.onAddItem.dispatch,t.onAddItem);return m;},update:function(){var t=this,s=t.settings,tb=DOM.get('menu_'+t.id+'_tbl'),co=DOM.get('menu_'+t.id+'_co'),tw,th;tw=s.max_width?Math.min(tb.clientWidth,s.max_width):tb.clientWidth;th=s.max_height?Math.min(tb.clientHeight,s.max_height):tb.clientHeight;if(!DOM.boxModel)t.element.setStyles({width:tw+2,height:th+2});else t.element.setStyles({width:tw,height:th});if(s.max_width)DOM.setStyle(co,'width',tw);if(s.max_height){DOM.setStyle(co,'height',th);if(tb.clientHeight<s.max_height)DOM.setStyle(co,'overflow','hidden');}},showMenu:function(x,y,px){var t=this,s=t.settings,co,vp=DOM.getViewPort(),w,h,mx,my,ot=2,dm,tb;t.collapse(1);if(t.isMenuVisible)return;if(!t.rendered){co=DOM.add(t.settings.container,t.renderNode());each(t.items,function(o){o.postRender();});t.element=new Element('menu_'+t.id,{blocker:1,container:s.container});}else co=DOM.get('menu_'+t.id);DOM.setStyles(co,{left:-0xFFFF,top:-0xFFFF});DOM.show(co);t.update();x+=s.offset_x||0;y+=s.offset_y||0;vp.w-=4;vp.h-=4;if(s.constrain){w=co.clientWidth-ot;h=co.clientHeight-ot;mx=vp.x+vp.w;my=vp.y+vp.h;if((x+s.vp_offset_x+w)>mx)x=px?px-w:Math.max(0,(mx-s.vp_offset_x)-w);if((y+s.vp_offset_y+h)>my)y=Math.max(0,(my-s.vp_offset_y)-h);}DOM.setStyles(co,{left:x,top:y});t.element.update();t.isMenuVisible=1;t.mouseClickFunc=Event.add(co,'click',function(e){var m;e=e.target;if(e&&(e=DOM.getParent(e,'TR'))){m=t.items[e.id];if(m.isDisabled())return;if(m.settings.onclick)m.settings.onclick(e);dm=t;while(dm){if(dm.hideMenu)dm.hideMenu();dm=dm.settings.parent;}return Event.cancel(e);}});if(t.hasMenus()){t.mouseOverFunc=Event.add(co,'mouseover',function(e){var m,r,mi;e=e.target;if(e&&(e=DOM.getParent(e,'TR'))){m=t.items[e.id];if(t.lastMenu)t.lastMenu.collapse(1);if(m.isDisabled())return;if(e&&DOM.hasClass(e,'mceMenuItemSub')){r=DOM.getRect(e);m.showMenu((r.x+r.w-ot),r.y-ot,r.x);t.lastMenu=m;DOM.addClass(DOM.get(m.id).firstChild,'mceMenuItemActive');}}});}},hideMenu:function(){var t=this,co=DOM.get('menu_'+t.id),e;if(!t.isMenuVisible)return;Event.remove(co,'mouseover',t.mouseOverFunc);Event.remove(co,'click',t.mouseClickFunc);DOM.hide(co);t.isMenuVisible=0;if(t.element)t.element.hide();if(e=DOM.get(t.id))DOM.removeClass(e.firstChild,'mceMenuItemActive');t.onHideMenu.dispatch(t);},add:function(o){var t=this,co;o=t.parent(o);if(t.isRendered&&(co=DOM.get('menu_'+t.id)))t._add(DOM.select('tbody',co)[0],o);return o;},collapse:function(d){this.parent(d);this.hideMenu();},remove:function(o){DOM.remove(o.id);return this.parent(o);},destroy:function(){var t=this,co=DOM.get('menu_'+t.id);Event.remove(co,'mouseover',t.mouseOverFunc);Event.remove(co,'click',t.mouseClickFunc);if(t.element)t.element.remove();DOM.remove(co);},renderNode:function(){var t=this,s=t.settings,n,tb,co,w;w=DOM.create('div',{id:'menu_'+t.id,'class':s['class'],'style':'position:absolute;left:0;top:0;z-index:150'});co=DOM.add(w,'div',{id:'menu_'+t.id+'_co','class':'mceMenu'+(s['class']?' '+s['class']:'')});t.element=new Element('menu_'+t.id,{blocker:1,container:s.container});if(s.menu_line)DOM.add(co,'span',{'class':'mceMenuLine'});n=DOM.add(co,'table',{id:'menu_'+t.id+'_tbl',border:0,cellPadding:0,cellSpacing:0});tb=DOM.add(n,'tbody');each(t.items,function(o){t._add(tb,o);});t.rendered=true;return w;},_add:function(tb,o){var n,s=o.settings,a,ro,it;if(s.separator){ro=DOM.add(tb,'tr',{id:o.id,'class':'mceMenuItemSeparator'});DOM.add(ro,'td',{'class':'mceMenuItemSeparator'});if(n=ro.previousSibling)DOM.addClass(n,'last');return;}n=ro=DOM.add(tb,'tr',{id:o.id,'class':'mceMenuItem mceMenuItemEnabled'});n=it=DOM.add(n,'td');n=a=DOM.add(n,'a',{href:'javascript:;',onclick:"return false;",onmousedown:'return false;'});DOM.addClass(it,s['class']);DOM.add(n,'span',{'class':'icon'+(s.icon?' '+s.icon:'')});n=DOM.add(n,s.element||'span',{'class':'text',title:o.settings.title},o.settings.title);if(o.settings.style)DOM.setAttrib(n,'style',o.settings.style);if(tb.childNodes.length==1)DOM.addClass(ro,'first');if((n=ro.previousSibling)&&DOM.hasClass(n,'mceMenuItemSeparator'))DOM.addClass(ro,'first');if(o.collapse)DOM.addClass(ro,'mceMenuItemSub');if(n=ro.previousSibling)DOM.removeClass(n,'last');DOM.addClass(ro,'last');}});})();(function(){var DOM=tinymce.DOM;tinymce.create('tinymce.ui.Button:tinymce.ui.Control',{Button:function(id,s){this.parent(id,s);this.classPrefix='mceButton';},renderHTML:function(){var s=this.settings,h='<a id="'+this.id+'" href="javascript:;" class="mceButton mceButtonEnabled '+s['class']+'" onmousedown="return false;" onclick="return false;" title="'+DOM.encode(s.title)+'">';if(s.image)h+='<img class="icon" src="'+s.image+'" /></a>';else h+='<span class="icon '+s['class']+'"></span></a>';return h;},postRender:function(){var t=this,s=t.settings;tinymce.dom.Event.add(t.id,'click',function(e){if(!t.isDisabled())return s.onclick.call(s.scope,e);});}});})();(function(){var DOM=tinymce.DOM,Event=tinymce.dom.Event,each=tinymce.each,Dispatcher=tinymce.util.Dispatcher;tinymce.create('tinymce.ui.ListBox:tinymce.ui.Control',{ListBox:function(id,s){var t=this;t.parent(id,s);t.items=[];t.onChange=new Dispatcher(t);t.onPostRender=new Dispatcher(t);t.onAdd=new Dispatcher(t);t.onRenderMenu=new tinymce.util.Dispatcher(this);t.classPrefix='mceListBox';},select:function(v){var t=this,e,fv;if(v!=t.selectedValue){e=DOM.get(t.id+'_text');t.selectedValue=v;each(t.items,function(o){if(o.value==v){DOM.setHTML(e,DOM.encode(o.title));fv=1;return false;}});if(!fv){DOM.setHTML(e,DOM.encode(t.settings.title));DOM.addClass(e,'title');e=0;return;}else DOM.removeClass(e,'title');}e=0;},add:function(n,v,o){var t=this;o=o||{};o=tinymce.extend(o,{title:n,value:v});t.items.push(o);t.onAdd.dispatch(t,o);},getLength:function(){return this.items.length;},renderHTML:function(){var h='',t=this,s=t.settings;h='<table id="'+t.id+'" cellpadding="0" cellspacing="0" class="mceListBox mceListBoxEnabled'+(s['class']?(' '+s['class']):'')+'"><tbody><tr>';h+='<td>'+DOM.createHTML('a',{id:t.id+'_text',href:'javascript:;','class':'text',onclick:"return false;",onmousedown:'return false;'},DOM.encode(t.settings.title))+'</td>';h+='<td>'+DOM.createHTML('a',{id:t.id+'_open',href:'javascript:;','class':'open',onclick:"return false;",onmousedown:'return false;'},'<span></span>')+'</td>';h+='</tr></tbody></table>';return h;},showMenu:function(){var t=this,p1,p2,e=DOM.get(this.id),m;if(t.isDisabled()||t.items.length==0)return;if(!t.isMenuRendered){t.renderMenu();t.isMenuRendered=true;}p1=DOM.getPos(this.settings.menu_container);p2=DOM.getPos(e);m=t.menu;m.settings.offset_x=p2.x;m.settings.offset_y=p2.y;if(t.oldID)m.items[t.oldID].setSelected(0);each(t.items,function(o){if(o.value===t.selectedValue){m.items[o.id].setSelected(1);t.oldID=o.id;}});m.showMenu(0,e.clientHeight);Event.add(document,'mousedown',t.hideMenu,t);DOM.addClass(t.id,'mceListBoxSelected');},hideMenu:function(e){var t=this;if(!e||!DOM.getParent(e.target,function(n){return DOM.hasClass(n,'mceMenu');})){DOM.removeClass(t.id,'mceListBoxSelected');Event.remove(document,'mousedown',t.hideMenu,t);if(t.menu)t.menu.hideMenu();}},renderMenu:function(){var t=this,m;m=t.settings.control_manager.createDropMenu(t.id+'_menu',{menu_line:1,'class':'mceListBoxMenu noIcons',max_width:150,max_height:150});m.onHideMenu.add(t.hideMenu,t);m.add({title:t.settings.title,'class':'mceMenuItemTitle'}).setDisabled(1);each(t.items,function(o){o.id=DOM.uniqueId();o.onclick=function(){if(t.settings.onselect(o.value)!==false)t.select(o.value);};m.add(o);});t.onRenderMenu.dispatch(t,m);t.menu=m;},postRender:function(){var t=this;Event.add(t.id,'click',t.showMenu,t);if(tinymce.isIE6||!DOM.boxModel){Event.add(t.id,'mouseover',function(){if(!DOM.hasClass(t.id,'mceListBoxDisabled'))DOM.addClass(t.id,'mceListBoxHover');});Event.add(t.id,'mouseout',function(){if(!DOM.hasClass(t.id,'mceListBoxDisabled'))DOM.removeClass(t.id,'mceListBoxHover');});}t.onPostRender.dispatch(t,DOM.get(t.id));}});})();(function(){var DOM=tinymce.DOM,Event=tinymce.dom.Event,each=tinymce.each,Dispatcher=tinymce.util.Dispatcher;tinymce.create('tinymce.ui.NativeListBox:tinymce.ui.ListBox',{NativeListBox:function(id,s){this.parent(id,s);this.classPrefix='mceNativeListBox';},setDisabled:function(s){DOM.get(this.id).disabled=s;},isDisabled:function(){return DOM.get(this.id).disabled;},select:function(v){var e=DOM.get(this.id),ol=e.options;v=''+(v||'');e.selectedIndex=0;each(ol,function(o,i){if(o.value==v){e.selectedIndex=i;return false;}});},add:function(n,v,a){var o,t=this;a=a||{};a.value=v;if(t.isRendered())DOM.add(DOM.get(this.id),'option',a,n);o={title:n,value:v,attribs:a};t.items.push(o);t.onAdd.dispatch(t,o);},getLength:function(){return DOM.get(this.id).options.length-1;},renderHTML:function(){var h,t=this;h=DOM.createHTML('option',{value:''},'-- '+t.settings.title+' --');each(t.items,function(it){h+=DOM.createHTML('option',{value:it.value},it.title);});h=DOM.createHTML('select',{id:t.id,'class':'mceNativeListBox'},h);return h;},postRender:function(){var t=this,ch;t.rendered=true;function onChange(e){var v=e.target.options[e.target.selectedIndex].value;t.onChange.dispatch(t,v);if(t.settings.onselect)t.settings.onselect(v);};Event.add(t.id,'change',onChange);Event.add(t.id,'keydown',function(e){var bf;Event.remove(t.id,'change',ch);bf=Event.add(t.id,'blur',function(){Event.add(t.id,'change',onChange);Event.remove(t.id,'blur',bf);});if(e.keyCode==13||e.keyCode==32){onChange(e);return Event.cancel(e);}});t.onPostRender.dispatch(t,DOM.get(t.id));}});})();(function(){var DOM=tinymce.DOM,Event=tinymce.dom.Event,each=tinymce.each;tinymce.create('tinymce.ui.SplitButton:tinymce.ui.Button',{SplitButton:function(id,s){this.parent(id,s);this.classPrefix='mceSplitButton';this.onRenderMenu=new tinymce.util.Dispatcher(this);s.menu_container=s.menu_container||document.body;},showMenu:function(){var t=this,p1,p2,e=DOM.get(t.id),m;if(t.isDisabled())return;if(!t.isMenuRendered){t.renderMenu();t.isMenuRendered=true;}p1=DOM.getPos(t.settings.menu_container);p2=DOM.getPos(e);m=t.menu;m.settings.offset_x=p2.x;m.settings.offset_y=p2.y;m.settings.vp_offset_x=p2.x;m.settings.vp_offset_y=p2.y;m.showMenu(0,e.clientHeight);Event.add(document,'mousedown',t.hideMenu,t);DOM.addClass(t.id,'mceSplitButtonSelected');},renderMenu:function(){var t=this,m;m=t.settings.control_manager.createDropMenu(t.id+'_menu',{menu_line:1,'class':'mceSplitButtonMenu'});m.onHideMenu.add(t.hideMenu,t);t.onRenderMenu.dispatch(t,m);t.menu=m;},hideMenu:function(e){var t=this;if(!e||!DOM.getParent(e.target,function(n){return DOM.hasClass(n,'mceMenu');})){DOM.removeClass(t.id,'mceSplitButtonSelected');Event.remove(document,'mousedown',t.hideMenu,t);if(t.menu)t.menu.hideMenu();}},renderHTML:function(){var h,t=this,s=t.settings,h1;h='<tbody><tr>';if(s.image)h1=DOM.createHTML('img ',{src:s.image,'class':'action '+s['class']});else h1=DOM.createHTML('span',{'class':'action '+s['class']});h+='<td>'+DOM.createHTML('a',{id:t.id+'_action',href:'javascript:;','class':'action '+s['class'],onclick:"return false;",onmousedown:'return false;',title:s.title},h1)+'</td>';h1=DOM.createHTML('span',{'class':'open '+s['class']});h+='<td>'+DOM.createHTML('a',{id:t.id+'_open',href:'javascript:;','class':'open '+s['class'],onclick:"return false;",onmousedown:'return false;',title:s.title},h1)+'</td>';h+='</tr></tbody>';return DOM.createHTML('table',{id:t.id,'class':'mceSplitButton mceSplitButtonEnabled '+s['class'],cellpadding:'0',cellspacing:'0',onmousedown:'return false;',title:s.title},h);},postRender:function(){var t=this,s=t.settings;if(s.onclick){Event.add(t.id+'_action','click',function(){if(!t.isDisabled())s.onclick(t.value);});}Event.add(t.id+'_open','click',t.showMenu,t);if(tinymce.isIE6||!DOM.boxModel){Event.add(t.id,'mouseover',function(){if(!DOM.hasClass(t.id,'mceSplitButtonDisabled'))DOM.addClass(t.id,'mceSplitButtonHover');});Event.add(t.id,'mouseout',function(){if(!DOM.hasClass(t.id,'mceSplitButtonDisabled'))DOM.removeClass(t.id,'mceSplitButtonHover');});}}});})();(function(){var DOM=tinymce.DOM,Event=tinymce.dom.Event,is=tinymce.is,each=tinymce.each;tinymce.create('tinymce.ui.ColorSplitButton:tinymce.ui.SplitButton',{ColorSplitButton:function(id,s){var t=this;t.parent(id,s);t.settings=s=tinymce.extend({colors:'000000,993300,333300,003300,003366,000080,333399,333333,800000,FF6600,808000,008000,008080,0000FF,666699,808080,FF0000,FF9900,99CC00,339966,33CCCC,3366FF,800080,999999,FF00FF,FFCC00,FFFF00,00FF00,00FFFF,00CCFF,993366,C0C0C0,FF99CC,FFCC99,FFFF99,CCFFCC,CCFFFF,99CCFF,CC99FF,FFFFFF',grid_width:8,default_color:'#888888'},t.settings);t.value=s.default_color;},showMenu:function(){var t=this,r,p,e;if(t.isDisabled())return;if(!t.isMenuRendered){t.renderMenu();t.isMenuRendered=true;}e=DOM.get(t.id);DOM.show(t.id+'_menu');DOM.addClass(e,'mceSplitButtonSelected');p2=DOM.getPos(e);DOM.setStyles(t.id+'_menu',{left:p2.x,top:p2.y+e.clientHeight,zIndex:150});e=0;Event.add(document,'mousedown',t.hideMenu,t);},hideMenu:function(e){var t=this;if(!e||!DOM.getParent(e.target,function(n){return DOM.hasClass(n,'mceSplitButtonMenu');})){DOM.removeClass(t.id,'mceSplitButtonSelected');Event.remove(document,'mousedown',t.hideMenu,t);DOM.hide(t.id+'_menu');}},renderMenu:function(){var t=this,m,i=0,s=t.settings,n,tb,tr,w;w=DOM.add(s.menu_container,'div',{id:t.id+'_menu','class':s['menu_class']+' '+s['class'],style:'position:absolute;left:0;top:-1000px;'});m=DOM.add(w,'div',{'class':s['class']+' mceSplitButtonMenu'});DOM.add(m,'span',{'class':'mceMenuLine'});n=DOM.add(m,'table',{'class':'mceColorSplitMenu'});tb=DOM.add(n,'tbody');i=0;each(is(s.colors,'array')?s.colors:s.colors.split(','),function(c){c=c.replace(/^#/,'');if(!i--){tr=DOM.add(tb,'tr');i=s.grid_width-1;}n=DOM.add(tr,'td');n=DOM.add(n,'a',{href:'javascript:;',style:{backgroundColor:'#'+c}});Event.add(n,'mousedown',function(){t.setColor('#'+c);});});if(s.more_colors_func){n=DOM.add(tb,'tr');n=DOM.add(n,'td',{colSpan:s.grid_width,'class':'morecolors'});n=DOM.add(n,'a',{href:'javascript:;',onclick:'return false;','class':'morecolors'},s.more_colors_title);Event.add(n,'click',function(e){s.more_colors_func.call(s.more_colors_scope||this);return Event.cancel(e);});}DOM.addClass(m,'mceColorSplitMenu');return w;},setColor:function(c){var t=this,p,s=this.settings,co=s.menu_container,po,cp,id=t.id+'_preview';if(!(p=DOM.get(id))){DOM.setStyle(t.id+'_action','position','relative');p=DOM.add(t.id+'_action','div',{id:id,'class':'mceColorPreview'});}p.style.backgroundColor=c;t.value=c;t.hideMenu();s.onselect(c);}});})();tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container',{renderHTML:function(){var h='',c='mceToolbarEnd',co,dom=tinymce.DOM;h+=dom.createHTML('td',{'class':'mceToolbarStart'},dom.createHTML('span',null,'<!-- IE -->'));tinymce.each(this.controls,function(c){h+='<td>'+c.renderHTML()+'</td>';});co=this.controls[this.controls.length-1].constructor;if(co===tinymce.ui.Button)c+=' mceToolbarEndButton';else if(co===tinymce.ui.SplitButton)c+=' mceToolbarEndSplitButton';else if(co===tinymce.ui.ListBox)c+=' mceToolbarEndListBox';h+=dom.createHTML('td',{'class':c},dom.createHTML('span',null,'<!-- IE -->'));return dom.createHTML('table',{'class':'mceToolbar',cellpadding:'0',cellspacing:'0',align:this.settings.align},'<tbody><tr>'+h+'</tr></tbody>');}});(function(){var Dispatcher=tinymce.util.Dispatcher,each=tinymce.each;tinymce.create('tinymce.AddOnManager',{items:[],urls:{},lookup:{},onAdd:new Dispatcher(this),get:function(n){return this.lookup[n];},requireLangPack:function(n){var u,s;if(tinymce.EditorManager.settings){u=this.urls[n]+'/langs/'+tinymce.EditorManager.settings.language+'.js';s=tinymce.EditorManager.settings;if(s){if(!tinymce.dom.Event.domLoaded&&!s.strict_mode)tinymce.ScriptLoader.load(u);else tinymce.ScriptLoader.add(u);}}},add:function(id,o){this.items.push(o);this.lookup[id]=o;this.onAdd.dispatch(this,id,o);return o;},load:function(n,u,cb,s){if(u.indexOf('/')!=0&&u.indexOf('://')==-1)u=tinymce.baseURL+'/'+u;this.urls[n]=u.substring(0,u.lastIndexOf('/'));tinymce.ScriptLoader.add(u,cb,s);}});tinymce.PluginManager=new tinymce.AddOnManager();tinymce.ThemeManager=new tinymce.AddOnManager();}());(function(){var each=tinymce.each,extend=tinymce.extend,DOM=tinymce.DOM,Event=tinymce.dom.Event,ThemeManager=tinymce.ThemeManager,PluginManager=tinymce.PluginManager;tinymce.create('static tinymce.EditorManager',{editors:{},i18n:{},activeEditor:null,init:function(s){var t=this,pl,sl=tinymce.ScriptLoader;function execCallback(se,n,s){var f=se[n];if(!f)return;if(tinymce.is(f,'string')){s=f.replace(/\.\w+$/,'');s=s?tinymce.resolve(s):0;f=tinymce.resolve(f);}return f.apply(s||this,Array.prototype.slice.call(arguments,2));};s=extend({theme:"simple",language:"en"},s);t.settings=s;if(!Event.domLoaded&&!s.strict_loading_mode){if(s.language)sl.add(tinymce.baseURL+'/langs/'+s.language+'.js');if(s.theme&&s.theme.charAt(0)!='-')ThemeManager.load(s.theme,'themes/'+s.theme+'/editor_template'+tinymce.suffix+'.js');if(s.plugins){pl=s.plugins.split(',');if(tinymce.inArray(pl,'compat2x')!=-1)PluginManager.load('compat2x','plugins/compat2x/editor_plugin'+tinymce.suffix+'.js');each(pl,function(v){if(v&&v.charAt(0)!='-'){if(!tinymce.isWebKit&&v=='safari')return;PluginManager.load(v,'plugins/'+v+'/editor_plugin'+tinymce.suffix+'.js');}});}sl.loadQueue();}Event.add(document,'init',function(){var l,co;execCallback(s,'onpageload');if(s.browsers){l=false;each(s.browsers.split(','),function(v){switch(v){case'ie':case'msie':if(tinymce.isIE)l=true;break;case'gecko':if(tinymce.isGecko)l=true;break;case'safari':case'webkit':if(tinymce.isWebKit)l=true;break;case'opera':if(tinymce.isOpera)l=true;break;}});if(!l)return;}switch(s.mode){case"exact":l=s.elements||'';each(l.split(','),function(v){new tinymce.Editor(v,s).render();});break;case"textareas":function hasClass(n,c){return new RegExp('\\b'+c+'\\b','g').test(n.className);};each(DOM.select('textarea'),function(v){if(s.editor_deselector&&hasClass(v,s.editor_deselector))return;if(!s.editor_selector||hasClass(v,s.editor_selector))new tinymce.Editor(v.id=(v.id||v.name||(v.id=DOM.uniqueId())),s).render();});break;}if(s.oninit){l=co=0;each(t.editors,function(ed){co++;if(!ed.initialized){ed.onInit.add(function(){l++;if(l==co)execCallback(s,'oninit');});}else l++;if(l==co)execCallback(s,'oninit');});}});},get:function(id){return this.editors[id];},getInstanceById:function(id){return this.get(id);},add:function(e){this.editors[e.id]=e;this._setActive(e);return e;},remove:function(e){var t=this;if(!t.editors[e.id])return null;delete t.editors[e.id];if(t.activeEditor==e){each(t.editors,function(e){t._setActive(e);return false;});}e._destroy();return e;},execCommand:function(c,u,v){var t=this,ed=t.get(v);switch(c){case"mceFocus":ed.focus();return true;case"mceAddEditor":case"mceAddControl":new tinymce.Editor(v,t.settings).render();return true;case"mceAddFrameControl":return true;case"mceRemoveEditor":case"mceRemoveControl":ed.remove();return true;case'mceToggleEditor':if(!ed){t.execCommand('mceAddControl',0,v);return true;}if(ed.isHidden())ed.show();else ed.hide();return true;}if(t.activeEditor)return t.activeEditor.execCommand(c,u,v);return false;},execInstanceCommand:function(id,c,u,v){var ed=this.get(id);if(ed)return ed.execCommand(c,u,v);return false;},triggerSave:function(){each(this.editors,function(e){e.save();});},addI18n:function(p,o){var lo,i18n=this.i18n;if(!tinymce.is(p,'string')){each(p,function(o,lc){each(o,function(o,g){each(o,function(o,k){if(g==='common')i18n[lc+'.'+k]=o;else i18n[lc+'.'+g+'.'+k]=o;});});});}else{each(o,function(o,k){i18n[p+'.'+k]=o;});}},_setActive:function(e){this.selectedInstance=this.activeEditor=e;}});tinymce.documentBaseURL=document.location.href.replace(/[\?#].*$/,'').replace(/[\/\\][\w.]+$/,'');if(!/[\/\\]$/.test(tinymce.documentBaseURL))tinymce.documentBaseURL+='/';tinymce.baseURL=new tinymce.util.URI(tinymce.documentBaseURL).toAbsolute(tinymce.baseURL);tinymce.EditorManager.baseURI=new tinymce.util.URI(tinymce.baseURL);})();var tinyMCE=window.tinyMCE=tinymce.EditorManager;(function(){var DOM=tinymce.DOM,Event=tinymce.dom.Event,extend=tinymce.extend,Dispatcher=tinymce.util.Dispatcher;var each=tinymce.each,isGecko=tinymce.isGecko,isIE=tinymce.isIE,isWebKit=tinymce.isWebKit;var is=tinymce.is,ThemeManager=tinymce.ThemeManager,PluginManager=tinymce.PluginManager,EditorManager=tinymce.EditorManager;var inArray=tinymce.inArray,grep=tinymce.grep;tinymce.create('tinymce.Editor',{Editor:function(id,s){var t=this;t.id=t.editorId=id;t.execCommands={};t.queryStateCommands={};t.queryValueCommands={};t.plugins={};each(['onPreInit','onBeforeRenderUI','onPostRender','onInit','onRemove','onActivate','onDeactivate','onClick','onEvent','onMouseUp','onMouseDown','onDblClick','onKeyDown','onKeyUp','onKeyPress','onContextMenu','onSubmit','onReset','onPaste','onPreProcess','onPostProcess','onBeforeSetContent','onBeforeGetContent','onSetContent','onGetContent','onLoadContent','onSaveContent','onNodeChange','onChange','onBeforeExecCommand','onExecCommand','onUndo','onRedo','onVisualAid','onSetProgressState'],function(e){t[e]=new Dispatcher(t);});t.settings=s=extend({id:id,language:'en',docs_language:'en',theme:'simple',skin:'default',delta_width:0,delta_height:0,popup_css:'',plugins:'',document_base_url:tinymce.documentBaseURL,add_form_submit_trigger:1,submit_patch:1,add_unload_trigger:1,convert_urls:1,relative_urls:1,remove_script_host:1,table_inline_editing:0,object_resizing:1,cleanup:1,accessibility_focus:1,custom_shortcuts:1,custom_undo_redo_keyboard_shortcuts:1,custom_undo_redo_restore_selection:1,custom_undo_redo:1,doctype:'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">',visual_table_class:'mceItemTable',visual:1,inline_styles:true,convert_fonts_to_spans:true,font_size_style_values:'xx-small,x-small,small,medium,large,x-large,xx-large',apply_source_formatting:1,directionality:'ltr',forced_root_block:'p',valid_elements:'@[id|class|style|title|dir<ltr?rtl|lang|xml::lang|onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup],a[rel|rev|charset|hreflang|tabindex|accesskey|type|name|href|target|title|class|onfocus|onblur],strong/b,em/i,strike,u,#p[align],-ol[type|compact],-ul[type|compact],-li,br,img[longdesc|usemap|src|border|alt=|title|hspace|vspace|width|height|align],-sub,-sup,-blockquote,-table[border=0|cellspacing|cellpadding|width|frame|rules|height|align|summary|bgcolor|background|bordercolor],-tr[rowspan|width|height|align|valign|bgcolor|background|bordercolor],tbody,thead,tfoot,#td[colspan|rowspan|width|height|align|valign|bgcolor|background|bordercolor|scope],#th[colspan|rowspan|width|height|align|valign|scope],caption,-div,-span,-pre,address,-h1,-h2,-h3,-h4,-h5,-h6,hr[size|noshade],-font[face|size|color],dd,dl,dt,cite,abbr,acronym,del[datetime|cite],ins[datetime|cite],object[classid|width|height|codebase|*],param[name|value|_value],embed[type|width|height|src|*]',hidden_input:1,padd_empty_editor:1,render_ui:1,init_theme:1},s);t.documentBaseURI=new tinymce.util.URI(s.document_base_url||tinymce.documentBaseURL,{base_uri:tinyMCE.baseURI});t.baseURI=EditorManager.baseURI;t.execCallback('setup',t);},render:function(){var t=this,s=t.settings,id=t.id,sl=tinymce.ScriptLoader;if(!/TEXTAREA|INPUT/i.test(t.getElement().nodeName)&&s.hidden_input&&DOM.getParent(id,'form'))DOM.insertAfter(DOM.create('input',{type:'hidden',name:id}),id);if(s.strict_loading_mode)sl.settings.strict_mode=s.strict_loading_mode;t.windowManager=new tinymce.WindowManager(t);if(s.encoding=='xml'){t.onGetContent.add(function(ed,o){if(o.get)o.content=DOM.encode(o.content);});}if(s.add_form_submit_trigger){t.onSubmit.add(function(){if(t.initialized){t.save();t.isNotDirty=1;}});}Event.add(document,'unload',function(){if(t.initialized&&!t.destroyed&&s.add_unload_trigger)t.save({format:'raw',no_events:true});});tinymce.addUnload(t._destroy,t);if(s.submit_patch){t.onBeforeRenderUI.add(function(){var n=t.getElement().form;if(!n)return;if(n._mceOldSubmit)return;if(!n.submit.nodeType){t.formElement=n;n._mceOldSubmit=n.submit;n.submit=function(){EditorManager.triggerSave();t.isNotDirty=1;return this._mceOldSubmit(this);};}n=null;});}function loadScripts(){sl.add(tinymce.baseURL+'/langs/'+s.language+'.js');if(s.theme.charAt(0)!='-')ThemeManager.load(s.theme,'themes/'+s.theme+'/editor_template'+tinymce.suffix+'.js');each(s.plugins.split(','),function(p){if(p&&p.charAt(0)!='-'){if(!isWebKit&&p=='safari')return;PluginManager.load(p,'plugins/'+p+'/editor_plugin'+tinymce.suffix+'.js');}});sl.loadQueue(function(){if(s.ask){function ask(){t.windowManager.confirm(t.getLang('edit_confirm'),function(s){if(s)t.init();else Event.remove(t.id,'focus',ask);});};Event.add(t.id,'focus',ask);return;}t.init();});};if(s.plugins.indexOf('compat2x')!=-1){PluginManager.load('compat2x','plugins/compat2x/editor_plugin'+tinymce.suffix+'.js');sl.loadQueue(loadScripts);}else loadScripts();},init:function(){var n,t=this,s=t.settings,w,h,e=t.getElement(),o,ti;EditorManager.add(t);s.theme=s.theme.replace(/-/,'');o=ThemeManager.get(s.theme);t.theme=new o();if(t.theme.init&&s.init_theme)t.theme.init(t,ThemeManager.urls[s.theme]||tinymce.documentBaseURL.replace(/\/$/,''));each(s.plugins.replace(/\-/g,'').split(','),function(p){var c=PluginManager.get(p),u=PluginManager.urls[p]||tinymce.documentBaseURL.replace(/\/$/,''),po;if(c){po=new c(t,u);t.plugins[p]=po;if(po.init)po.init(t,u);}});s.popup_css=t.baseURI.toAbsolute(s.popup_css||"themes/"+s.theme+"/skins/"+s.skin+"/dialog.css");if(s.popup_css_add)s.popup_css+=','+s.popup_css_add;t.controlManager=new tinymce.ControlManager(t);t.undoManager=new tinymce.UndoManager(t);t.undoManager.onAdd.add(function(um,l){return t.onChange.dispatch(t,l,um);});t.undoManager.onUndo.add(function(um,l){return t.onUndo.dispatch(t,l,um);});t.undoManager.onRedo.add(function(um,l){return t.onRedo.dispatch(t,l,um);});if(s.custom_undo_redo){t.onExecCommand.add(function(ed,cmd){if(cmd!='Undo'&&cmd!='Redo'&&cmd!='mceRepaint')t.undoManager.add();});}t.onExecCommand.add(function(ed,c){if(!/^(FontName|FontSize)$/.test(c))t.nodeChanged();});if(isGecko){function repaint(){t.execCommand('mceRepaint');};t.onUndo.add(repaint);t.onRedo.add(repaint);t.onSetContent.add(repaint);}t.onBeforeRenderUI.dispatch(t,t.controlManager);if(s.render_ui){w=s.width||e.style.width||e.clientWidth;h=s.height||e.style.height||e.clientHeight;t.orgDisplay=e.style.display;if((''+w).indexOf('%')==-1)w=Math.max(parseInt(w)+(o.deltaWidth||0),100);if((''+h).indexOf('%')==-1)h=Math.max(parseInt(h)+(o.deltaHeight||0),100);o=t.theme.renderUI({targetNode:e,width:w,height:h,deltaWidth:s.delta_width,deltaHeight:s.delta_height});}DOM.setStyles(o.sizeContainer||o.editorContainer,{width:w,height:h});function createIfr(){h=(o.iframeHeight||h)+((h+'').indexOf('%')==-1?(o.deltaHeight||0):'');if(h<100)h=100;n=DOM.add(o.iframeContainer,'iframe',{id:s.id+"_ifr",src:'javascript:""',frameBorder:'0',style:{width:'100%',height:h}});t.contentAreaContainer=o.iframeContainer;DOM.get(o.editorContainer).style.display=t.orgDisplay;DOM.get(s.id).style.display='none';if(tinymce.isOldWebKit){Event.add(n,'load',t.setupIframe,t);n.src=tinymce.baseURL+'/plugins/safari/blank.htm';}else{t.setupIframe();e=n=o=null;}};if(isGecko){function check(){var hi;DOM.getParent(t.id,function(e){if(DOM.getStyle(e,'display',true)=='none'){hi=1;return true;}});return hi;};if(check()){ti=window.setInterval(function(){if(!check()){createIfr();window.clearInterval(ti);}},300);return;}}createIfr();},setupIframe:function(){var t=this,s=t.settings,e=DOM.get(s.id),d=t.getDoc();if(!isIE)d.designMode='On';d.open();d.write(s.doctype+'<html><head xmlns="http://www.w3.org/1999/xhtml"><base href="'+t.documentBaseURI.getURI()+'" /><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /></head><body id="tinymce" class="mceContentBody"></body></html>');d.close();if(isIE)t.getBody().contentEditable=true;t.dom=new tinymce.DOM.DOMUtils(t.getDoc(),{keep_values:true,url_converter:t.convertURL,url_converter_scope:t,hex_colors:s.force_hex_style_colors,class_filter:s.class_filter});t.serializer=new tinymce.dom.Serializer({entity_encoding:s.entity_encoding,entities:s.entities,valid_elements:s.verify_html===false?'*[*]':s.valid_elements,extended_valid_elements:s.extended_valid_elements,valid_child_elements:s.valid_child_elements,invalid_elements:s.invalid_elements,fix_table_elements:s.fix_table_elements,fix_list_elements:s.fix_list_elements,fix_content_duplication:s.fix_content_duplication,convert_fonts_to_spans:s.convert_fonts_to_spans,font_size_classes:s.font_size_classes,font_size_style_values:s.font_size_style_values,apply_source_formatting:s.apply_source_formatting,remove_linebreaks:s.remove_linebreaks,dom:t.dom});t.selection=new tinymce.dom.Selection(t.dom,t.getWin(),t.serializer);t.forceBlocks=new tinymce.ForceBlocks(t,{forced_root_block:s.forced_root_block});t.editorCommands=new tinymce.EditorCommands(t);t.serializer.onPreProcess.add(function(se,o){return t.onPreProcess.dispatch(t,o,se);});t.serializer.onPostProcess.add(function(se,o){return t.onPostProcess.dispatch(t,o,se);});t.onPreInit.dispatch(t);if(!s.gecko_spellcheck)t.getBody().spellcheck=0;t._addEvents();t.controlManager.onPostRender.dispatch(t,t.controlManager);t.onPostRender.dispatch(t);if(s.directionality)t.getBody().dir=s.directionality;if(s.nowrap)t.getBody().style.whiteSpace="nowrap";if(s.auto_resize)t.onNodeChange.add(t.resizeToContent,t);if(s.handle_node_change_callback){t.onNodeChange.add(function(ed,cm,n){t.execCallback('handle_node_change_callback',t.id,n,-1,-1,true,t.selection.isCollapsed());});}if(s.save_callback){t.onSaveContent.add(function(ed,o){var h=t.execCallback('save_callback',t.id,o.content,t.getBody());if(h)o.content=h;});}if(s.onchange_callback){t.onChange.add(function(ed,l){t.execCallback('onchange_callback',t,l);});}if(s.convert_newlines_to_brs){t.onBeforeSetContent.add(function(ed,o){if(o.initial)o.content=o.content.replace(/\r?\n/g,'<br />');});}if(s.preformatted){t.onPostProcess.add(function(ed,o){o.content=o.content.replace(/^\s*<pre.*?>/,'');o.content=o.content.replace(/<\/pre>\s*$/,'');if(o.set)o.content='<pre class="mceItemHidden">'+o.content+'</pre>';});}if(s.verify_css_classes){t.serializer.attribValueFilter=function(n,v){var s,cl;if(n=='class'){if(!t.classesRE){cl=t.dom.getClasses();if(cl.length>0){s='';each(cl,function(o){s+=(s?'|':'')+o['class'];});t.classesRE=new RegExp('('+s+')','gi');}}return!t.classesRE||/(\bmceItem\w+\b|\bmceTemp\w+\b)/g.test(v)||t.classesRE.test(v)?v:'';}return v;};}if(s.convert_fonts_to_spans)t._convertFonts();if(s.inline_styles)t._convertInlineElements();if(s.cleanup_callback){t.onSetContent.add(function(ed,o){if(o.initial){t.setContent(t.execCallback('cleanup_callback','insert_to_editor',o.content,o),{format:'raw',no_events:true});t.execCallback('cleanup_callback','insert_to_editor_dom',t.getDoc(),o);}});t.onPreProcess.add(function(ed,o){if(o.set)t.execCallback('cleanup_callback','insert_to_editor_dom',o.node,o);if(o.get)t.execCallback('cleanup_callback','get_from_editor_dom',o.node,o);});t.onPostProcess.add(function(ed,o){if(o.set)o.content=t.execCallback('cleanup_callback','insert_to_editor',o.content,o);if(o.get)o.content=t.execCallback('cleanup_callback','get_from_editor',o.content,o);});}if(s.save_callback){t.onGetContent.add(function(ed,o){if(o.save)o.content=t.execCallback('save_callback',t.id,o.content,t.getBody());});}if(s.handle_event_callback){t.onEvent.add(function(ed,e,o){if(t.execCallback('handle_event_callback',e,ed,o)===false)Event.cancel(e);});}t.onSetContent.add(function(){t.addVisual(t.getBody());});if(s.padd_empty_editor){t.onPostProcess.add(function(ed,o){o.content=o.content.replace(/^<p>(&nsbp;|#160;|\s)<\/p>$/,'');});}t.load({initial:true,format:(s.cleanup_on_startup?'html':'raw')});t.startContent=t.getContent({format:'raw'});t.undoManager.add({initial:true});t.initialized=true;t.onInit.dispatch(t);t.execCallback('setupcontent_callback',t.id,t.getBody(),t.getDoc());t.execCallback('init_instance_callback',t);t.focus(true);t.nodeChanged({initial:1});if(s.content_css){tinymce.each(s.content_css.split(','),function(u){t.dom.loadCSS(t.documentBaseURI.toAbsolute(u));});}if(s.auto_focus){setTimeout(function(){var ed=EditorManager.get(s.auto_focus);ed.selection.select(ed.getBody(),1);ed.selection.collapse(1);ed.getWin().focus();},100);}e=null;},focus:function(sf){var oed,t=this;if(!sf){t.getWin().focus();}if(EditorManager.activeEditor!=t){if((oed=EditorManager.activeEditor)!=null)oed.onDeactivate.dispatch(oed,t);t.onActivate.dispatch(t,oed);}EditorManager._setActive(t);},execCallback:function(n){var t=this,f=t.settings[n],s;if(!f)return;if(t.callbackLookup&&(s=t.callbackLookup[n])){f=s.func;s=s.scope;}if(is(f,'string')){s=f.replace(/\.\w+$/,'');s=s?tinymce.resolve(s):0;f=tinymce.resolve(f);t.callbackLookup=t.callbackLookup||{};t.callbackLookup[n]={func:f,scope:s};}return f.apply(s||t,Array.prototype.slice.call(arguments,1));},translate:function(s){var c=this.settings.language,i18n=EditorManager.i18n;if(!s)return'';return i18n[c+'.'+s]||s.replace(/{\#([^}]+)\}/g,function(a,b){return i18n[c+'.'+b]||'{#'+b+'}';});},getLang:function(n,dv){return EditorManager.i18n[this.settings.language+'.'+n]||(is(dv)?dv:'{#'+n+'}');},getParam:function(n,dv){return is(this.settings[n])?this.settings[n]:dv;},nodeChanged:function(o){var t=this,s=t.selection,n=s.getNode()||this.getBody();this.onNodeChange.dispatch(t,o?o.controlManager||t.controlManager:t.controlManager,isIE&&n.ownerDocument!=t.getDoc()?this.getBody():n,s.isCollapsed(),o);},addButton:function(n,s){var t=this;t.buttons=t.buttons||{};t.buttons[n]=s;},addCommand:function(n,f,s){this.execCommands[n]={func:f,scope:s||this};},addQueryStateHandler:function(n,f,s){this.queryStateCommands[n]={func:f,scope:s||this};},addQueryValueHandler:function(n,f,s){this.queryValueCommands[n]={func:f,scope:s||this};},addShortcut:function(pa,desc,cmd_func,sc){var t=this,c;if(!t.settings.custom_shortcuts)return false;t.shortcuts=t.shortcuts||{};if(is(cmd_func,'string')){c=cmd_func;cmd_func=function(){t.execCommand(c,false,null);};}if(is(cmd_func,'object')){c=cmd_func;cmd_func=function(){t.execCommand(c[0],c[1],c[2]);};}each(pa.split(','),function(pa){var o={func:cmd_func,scope:sc||this,desc:desc,alt:false,ctrl:false,shift:false};each(pa.split('+'),function(v){switch(v){case'alt':case'ctrl':case'shift':o[v]=true;break;default:o.charCode=v.charCodeAt(0);o.keyCode=v.toUpperCase().charCodeAt(0);}});t.shortcuts[(o.ctrl?'ctrl':'')+','+(o.alt?'alt':'')+','+(o.shift?'shift':'')+','+o.keyCode]=o;});return true;},execCommand:function(cmd,ui,val){var t=this,s=0,o;if(!/^(mceAddUndoLevel|mceEndUndoLevel|mceBeginUndoLevel|mceRepaint)$/.test(cmd))t.focus();o={};t.onBeforeExecCommand.dispatch(t,cmd,ui,val,o);if(o.terminate)return false;if(t.execCallback('execcommand_callback',null,t.id,t.selection.getNode(),cmd,ui,val)){t.onExecCommand.dispatch(t,cmd,ui,val);return true;}if(o=t.execCommands[cmd]){s=o.func.call(o.scope,ui,val);t.onExecCommand.dispatch(t,cmd,ui,val);return s;}each(t.plugins,function(p){if(p.execCommand&&p.execCommand(cmd,ui,val)){t.onExecCommand.dispatch(t,cmd,ui,val);s=1;return false;}});if(s)return true;if(t.theme.execCommand&&t.theme.execCommand(cmd,ui,val)){t.onExecCommand.dispatch(t,cmd,ui,val);return true;}if(t.editorCommands.execCommand(cmd,ui,val)){t.onExecCommand.dispatch(t,cmd,ui,val);return true;}t.getDoc().execCommand(cmd,ui,val);t.onExecCommand.dispatch(t,cmd,ui,val);},queryCommandState:function(c){var t=this,o;if(o=t.queryStateCommands[c])return o.func.call(o.scope);o=t.editorCommands.queryCommandState(c);if(o!==-1)return o;return this.getDoc().queryCommandState(c);},queryCommandValue:function(c){var t=this,o;if(o=t.queryValueCommands[c])return o.func.call(o.scope);o=t.editorCommands.queryCommandValue(c);if(is(o))return o;return this.getDoc().queryCommandValue(c);},show:function(){var t=this;DOM.show(t.getContainer());DOM.hide(t.id);t.load();},hide:function(){var t=this,s=t.settings;if(isIE)t.execCommand('SelectAll');DOM.hide(t.getContainer());DOM.setStyle(s.id,'display',t.orgDisplay);t.save();},isHidden:function(){return!DOM.isHidden(this.id);},setProgressState:function(b,ti,o){this.onSetProgressState.dispatch(this,b,ti,o);return b;},remove:function(){var t=this;t.removed=1;t.hide();DOM.remove(t.getContainer());t.execCallback('remove_instance_callback',t);t.onRemove.dispatch(t);EditorManager.remove(t);},resizeToContent:function(){var t=this;DOM.setStyle(t.id+"_ifr",'height',t.getBody().scrollHeight);},load:function(o){var t=this,e=t.getElement(),h;o=o||{};o.load=true;h=t.setContent(is(e.value)?e.value:e.innerHTML,o);o.element=e;if(!o.no_events)t.onLoadContent.dispatch(t,o);o.element=e=null;return h;},save:function(o){var t=this,e=t.getElement(),h,f;o=o||{};o.save=true;o.element=e;h=o.content=t.getContent(o);if(!o.no_events)t.onSaveContent.dispatch(t,o);h=o.content;if(!/TEXTAREA|INPUT/i.test(e.nodeName)){e.innerHTML=h;if(f=DOM.getParent(t.id,'form')){each(f.elements,function(e){if(e.name==t.id){e.value=h;return false;}});}}else e.value=h;o.element=e=null;return h;},setContent:function(h,o){var t=this;o=o||{};o.format=o.format||'html';o.set=true;o.content=h;if(!o.no_events)t.onBeforeSetContent.dispatch(t,o);if(!tinymce.isIE&&(h.length===0||/^\s+$/.test(h))){o.content=t.dom.setHTML(t.getBody(),'<br mce_bogus="1" />');o.format='raw';}o.content=t.dom.setHTML(t.getBody(),o.content);if(o.format!='raw'&&t.settings.cleanup){o.getInner=true;o.content=t.dom.setHTML(t.getBody(),t.serializer.serialize(t.getBody(),o));}if(!o.no_events)t.onSetContent.dispatch(t,o);return o.content;},getContent:function(o){var t=this,h;o=o||{};o.format=o.format||'html';o.get=true;if(!o.no_events)t.onBeforeGetContent.dispatch(t,o);if(o.format!='raw'&&t.settings.cleanup){o.getInner=true;h=t.serializer.serialize(t.getBody(),o);}else h=t.getBody().innerHTML;h=h.replace(/^\s*|\s*$/g,'');o={content:h};t.onGetContent.dispatch(t,o);return o.content;},isDirty:function(){var t=this;return tinymce.trim(t.startContent)!=tinymce.trim(t.getContent({format:'raw',no_events:1}))&&!t.isNotDirty;},getContainer:function(){var t=this;if(!t.container)t.container=DOM.get(t.id+"_parent");return t.container;},getContentAreaContainer:function(){return this.contentAreaContainer;},getElement:function(){return DOM.get(this.settings.content_element||this.id);},getWin:function(){var t=this;if(!t.contentWindow)t.contentWindow=DOM.get(t.id+"_ifr").contentWindow;return t.contentWindow;},getDoc:function(){var t=this;if(!t.contentDocument)t.contentDocument=this.getWin().document;return t.contentDocument;},getBody:function(){return this.bodyElement||this.getDoc().body;},convertURL:function(u,n,e){var t=this,s=t.settings;if(s.urlconverter_callback)return t.execCallback('urlconverter_callback',u,e,true,n);if(!s.convert_urls||(e&&e.nodeName=='LINK'))return u;if(s.relative_urls)return t.documentBaseURI.toRelative(u);u=t.documentBaseURI.toAbsolute(u,s.remove_script_host);return u;},addVisual:function(e){var t=this,s=t.settings;e=e||t.getBody();if(!is(t.hasVisual))t.hasVisual=s.visual;each(t.dom.select('table,a',e),function(e){var v;switch(e.nodeName){case'TABLE':v=t.dom.getAttrib(e,'border');if(!v||v=='0'){if(t.hasVisual)t.dom.addClass(e,s.visual_table_class);else t.dom.removeClass(e,s.visual_table_class);}return;case'A':v=t.dom.getAttrib(e,'name');if(v){if(t.hasVisual)t.dom.addClass(e,'mceItemAnchor');else t.dom.removeClass(e,'mceItemAnchor');}return;}});t.onVisualAid.dispatch(t,e,t.hasVisual);},_addEvents:function(){var t=this,i,s=t.settings,lo={mouseup:'onMouseUp',mousedown:'onMouseDown',click:'onClick',keyup:'onKeyUp',keydown:'onKeyDown',keypress:'onKeyPress',submit:'onSubmit',reset:'onReset',contextmenu:'onContextMenu',dblclick:'onDblClick',paste:'onPaste'};function eventHandler(e,o){var ty=e.type;if(t.onEvent.dispatch(t,e,o)!==false){t[lo[e.fakeType||e.type]].dispatch(t,e,o);}};each(lo,function(v,k){switch(k){case'contextmenu':if(tinymce.isOpera){Event.add(t.getDoc(),'mousedown',function(e){if(e.ctrlKey){e.fakeType='contextmenu';eventHandler(e);}});}else Event.add(t.getDoc(),k,eventHandler);break;case'paste':Event.add(t.getBody(),k,function(e){var tx,h,el,r;if(e.clipboardData)tx=e.clipboardData.getData('text/plain');else if(tinymce.isIE)tx=t.getWin().clipboardData.getData('Text');eventHandler(e,{text:tx,html:h});});break;case'submit':case'reset':Event.add(t.getElement().form||DOM.getParent(t.id,'form'),k,eventHandler);break;default:Event.add(s.content_editable?t.getBody():t.getDoc(),k,eventHandler);}});Event.add(s.content_editable?t.getBody():(isGecko?t.getDoc():t.getWin()),'focus',function(e){t.focus(true);});if(tinymce.isGecko){Event.add(t.getDoc(),'DOMNodeInserted',function(e){var v;e=e.target;if(e.nodeType===1&&e.nodeName==='IMG'&&(v=e.getAttribute('mce_src')))e.src=t.documentBaseURI.toAbsolute(v);});}if(isGecko){function setOpts(){var t=this,d=t.getDoc(),s=t.settings;if(isGecko){try{d.execCommand("styleWithCSS",0,false);}catch(ex){d.execCommand("useCSS",0,true);}if(!s.table_inline_editing)try{d.execCommand('enableInlineTableEditing',false,false);}catch(ex){}if(!s.object_resizing)try{d.execCommand('enableObjectResizing',false,false);}catch(ex){}}};t.onBeforeExecCommand.add(setOpts);t.onMouseDown.add(setOpts);}t.onMouseUp.add(t.nodeChanged);t.onClick.add(t.nodeChanged);t.onKeyUp.add(function(ed,e){if((e.keyCode>=33&&e.keyCode<=36)||(e.keyCode>=37&&e.keyCode<=40)||e.keyCode==13||e.keyCode==45||e.keyCode==46||e.keyCode==8||e.ctrlKey)t.nodeChanged();});t.onReset.add(function(){t.setContent(t.startContent,{format:'raw'});});if(t.getParam('tab_focus')){function tabCancel(ed,e){if(e.keyCode===9)return Event.cancel(e);};function tabHandler(ed,e){var v,f,el;if(e.keyCode===9){v=ed.getParam('tab_focus');if(v==':next'){f=DOM.getParent(ed.id,'form');if(f){each(f.elements,function(e,i){if(e.id==ed.id)el=f.elements[i+1];});}}else el=DOM.get(v);if(el){window.setTimeout(function(){window.focus();el.focus();},10);return Event.cancel(e);}}};t.onKeyUp.add(tabCancel);if(isGecko){t.onKeyPress.add(tabHandler);t.onKeyDown.add(tabCancel);}else t.onKeyDown.add(tabHandler);}if(s.custom_shortcuts){if(s.custom_undo_redo_keyboard_shortcuts){t.addShortcut('ctrl+z',t.getLang('undo_desc'),'Undo');t.addShortcut('ctrl+y',t.getLang('redo_desc'),'Redo');}if(isGecko){t.addShortcut('ctrl+b',t.getLang('bold_desc'),'Bold');t.addShortcut('ctrl+i',t.getLang('italic_desc'),'Italic');t.addShortcut('ctrl+u',t.getLang('underline_desc'),'Underline');}for(i=1;i<=6;i++)t.addShortcut('ctrl+'+i,'',['FormatBlock',false,'<h'+i+'>']);t.addShortcut('ctrl+7','',['FormatBlock',false,'<p>']);t.addShortcut('ctrl+8','',['FormatBlock',false,'<div>']);t.addShortcut('ctrl+9','',['FormatBlock',false,'<address>']);function find(e){var v=null;if(!e.altKey&&!e.ctrlKey&&!e.metaKey)return v;each(t.shortcuts,function(o){if(o.ctrl!=e.ctrlKey&&(!tinymce.isMac||o.ctrl==e.metaKey))return;if(o.alt!=e.altKey)return;if(o.shift!=e.shiftKey)return;if(e.keyCode==o.keyCode||(e.charCode&&e.charCode==o.charCode)){v=o;return false;}});return v;};t.onKeyUp.add(function(ed,e){var o=find(e);if(o)return Event.cancel(e);});t.onKeyPress.add(function(ed,e){var o=find(e);if(o)return Event.cancel(e);});t.onKeyDown.add(function(ed,e){var o=find(e);if(o){o.func.call(o.scope);return Event.cancel(e);}});}if(tinymce.isIE){Event.add(t.getDoc(),'controlselect',function(e){var re=t.resizeInfo,cb;e=e.target;if(re)Event.remove(re.node,re.ev,re.cb);if(!t.dom.hasClass(e,'mceItemNoResize')){ev='resizeend';cb=Event.add(e,ev,function(e){var v;e=e.target;if(v=t.dom.getStyle(e,'width')){t.dom.setAttrib(e,'width',v.replace(/[^0-9%]+/g,''));t.dom.setStyle(e,'width','');}if(v=t.dom.getStyle(e,'height')){t.dom.setAttrib(e,'height',v.replace(/[^0-9%]+/g,''));t.dom.setStyle(e,'height','');}});}else{ev='resizestart';cb=Event.add(e,'resizestart',Event.cancel,Event);}re=t.resizeInfo={node:e,ev:ev,cb:cb};});t.onKeyDown.add(function(ed,e){switch(e.keyCode){case 8:if(t.selection.getRng().item){t.selection.getRng().item(0).removeNode();return Event.cancel(e);}}});}if(s.custom_undo_redo){function addUndo(){t.undoManager.typing=0;t.undoManager.add();};if(tinymce.isIE){Event.add(t.getWin(),'blur',function(e){var n;if(t.selection){n=t.selection.getNode();if(!t.removed&&n.ownerDocument&&n.ownerDocument!=t.getDoc())addUndo();}});}else{Event.add(t.getDoc(),'blur',function(){if(!t.removed)addUndo();});}t.onMouseDown.add(addUndo);t.onKeyUp.add(function(ed,e){if((e.keyCode>=33&&e.keyCode<=36)||(e.keyCode>=37&&e.keyCode<=40)||e.keyCode==13||e.keyCode==45||e.ctrlKey){t.undoManager.typing=0;t.undoManager.add();}});t.onKeyDown.add(function(ed,e){if((e.keyCode>=33&&e.keyCode<=36)||(e.keyCode>=37&&e.keyCode<=40)||e.keyCode==13||e.keyCode==45){if(t.undoManager.typing){t.undoManager.add();t.undoManager.typing=0;}return;}if(!t.undoManager.typing){t.undoManager.add();t.undoManager.typing=1;}});}},_destroy:function(){var t=this;if(t.formElement){t.formElement.submit=t.formElement._mceOldSubmit;t.formElement._mceOldSubmit=null;}t.contentAreaContainer=t.formElement=t.container=t.contentDocument=t.contentWindow=null;if(t.selection)t.selection=t.selection.win=t.selection.dom=t.selection.dom.doc=null;t.destroyed=1;},_convertInlineElements:function(){var t=this,s=t.settings,dom=t.dom;t.onPreProcess.add(function(ed,o){if(!s.inline_styles)return;if(o.get){each(t.dom.select('table,u,strike',o.node),function(n){switch(n.nodeName){case'TABLE':if(v=dom.getAttrib(n,'height')){dom.setStyle(n,'height',v);dom.setAttrib(n,'height','');}break;case'U':dom.replace(dom.create('span',{style:'text-decoration: underline;'}),n,1);break;case'STRIKE':dom.replace(dom.create('span',{style:'text-decoration: line-through;'}),n,1);break;}});}else if(o.set){each(t.dom.select('table,span',o.node),function(n){if(n.nodeName=='TABLE'){if(v=dom.getStyle(n,'height'))dom.setAttrib(n,'height',v.replace(/[^0-9%]+/g,''));}else{if(n.style.textDecoration=='underline')dom.replace(dom.create('u'),n,1);else if(n.style.textDecoration=='strikethrough')dom.replace(dom.create('strike'),n,1);}});}});},_convertFonts:function(){var t=this,s=t.settings,dom=t.dom,sl,cl,fz,fzn,v,i;fz=[8,10,12,14,18,24,36];fzn=['xx-small','x-small','small','medium','large','x-large','xx-large'];if(sl=s.font_size_style_values)sl=sl.split(',');if(cl=s.font_size_classes)cl=cl.split(',');t.onPreProcess.add(function(ed,o){if(!s.inline_styles)return;if(o.set){if(tinymce.isWebKit)return;each(t.dom.select('span',o.node),function(n){var f=dom.create('font',{color:dom.toHex(dom.getStyle(n,'color')),face:dom.getStyle(n,'fontFamily')});if(sl){i=inArray(sl,dom.getStyle(n,'fontSize'));if(i!=-1)dom.setAttrib(f,'size',''+(i+1||1));}else if(cl){i=inArray(cl,dom.getAttrib(n,'class'));v=dom.getStyle(n,'fontSize');if(i==-1&&v.indexOf('pt')>0)i=inArray(fz,parseInt(v));if(i==-1)i=inArray(fzn,v);if(i!=-1)dom.setAttrib(f,'size',''+(i+1||1));}if(f.color||f.face||f.size)dom.replace(f,n,1);});}else if(o.get){each(t.dom.select('font',o.node),function(n){var sp=dom.create('span',{style:{fontFamily:dom.getAttrib(n,'face'),color:dom.getAttrib(n,'color'),backgroundColor:n.style.backgroundColor}});if(n.size){if(sl)dom.setStyle(sp,'fontSize',sl[parseInt(n.size)-1]);else dom.setAttrib(sp,'class',cl[parseInt(n.size)-1]);}dom.replace(sp,n,1);});}});}});})();(function(){var each=tinymce.each,isIE=tinymce.isIE,isGecko=tinymce.isGecko,isOpera=tinymce.isOpera,isWebKit=tinymce.isWebKit;tinymce.create('tinymce.EditorCommands',{EditorCommands:function(ed){this.editor=ed;},execCommand:function(cmd,ui,val){var t=this,ed=t.editor,f;switch(cmd){case'Cut':case'Copy':case'Paste':try{ed.getDoc().execCommand(cmd,ui,val);}catch(ex){if(isGecko){ed.windowManager.confirm(ed.getLang('clipboard_msg'),function(s){if(s)window.open('http://www.mozilla.org/editor/midasdemo/securityprefs.html','mceExternal');});}else ed.windowManager.alert(ed.getLang('clipboard_no_support'));}return true;case'mceResetDesignMode':case'mceBeginUndoLevel':return true;case'unlink':t.UnLink();return true;case'JustifyLeft':case'JustifyCenter':case'JustifyRight':case'JustifyFull':t.mceJustify(cmd,cmd.substring(7).toLowerCase());return true;case'mceEndUndoLevel':case'mceAddUndoLevel':ed.undoManager.add();return true;default:f=this[cmd];if(f){f.call(this,ui,val);return true;}}return false;},Indent:function(){var ed=this.editor,d=ed.dom,s=ed.selection,e;if(ed.settings.inline_styles&&(!this.queryStateInsertUnorderedList()&&!this.queryStateInsertOrderedList())){each(this._getSelectedBlocks(),function(e){d.setStyle(e,'paddingLeft',(parseInt(e.style.paddingLeft||0)+30)+'px');});return;}ed.getDoc().execCommand('Indent',false,null);if(isIE){d.getParent(s.getNode(),function(n){if(n.nodeName=='BLOCKQUOTE'){n.dir=n.style.cssText='';}});}},Outdent:function(){var ed=this.editor,d=ed.dom,s=ed.selection,e,v;if(ed.settings.inline_styles&&(!this.queryStateInsertUnorderedList()&&!this.queryStateInsertOrderedList())){each(this._getSelectedBlocks(),function(e){v=Math.max(0,parseInt(e.style.paddingLeft||0)-30);d.setStyle(e,'paddingLeft',v?v+'px':'');});return;}ed.getDoc().execCommand('Outdent',false,null);},mceSetAttribute:function(u,v){var ed=this.editor,d=ed.dom,e;if(e=d.getParent(ed.selection.getNode(),d.isBlock))d.setAttrib(e,v.name,v.value);},mceSetContent:function(u,v){this.editor.setContent(v);},mceToggleVisualAid:function(){var ed=this.editor;ed.hasVisual=!ed.hasVisual;ed.addVisual();},mceReplaceContent:function(u,v){var s=this.editor.selection;s.setContent(v.replace(/\{\$selection\}/g,s.getContent({format:'text'})));},mceInsertLink:function(u,v){var ed=this.editor,e=ed.dom.getParent(ed.selection.getNode(),'A');if(tinymce.is(v,'string'))v={href:v};function set(e){each(v,function(v,k){ed.dom.setAttrib(e,k,v);});};if(!e){ed.execCommand('CreateLink',false,'javascript:mctmp(0);');each(ed.dom.select('a'),function(e){if(e.href=='javascript:mctmp(0);')set(e);});}else{if(v.href)set(e);else ed.dom.remove(e,1);}},UnLink:function(){var ed=this.editor,s=ed.selection;if(s.isCollapsed())s.select(s.getNode());ed.getDoc().execCommand('unlink',false,null);s.collapse(0);},FontName:function(u,v){var t=this,ed=t.editor,s=ed.selection,e;if(!v){if(s.isCollapsed())s.select(s.getNode());t.RemoveFormat();}else ed.getDoc().execCommand('FontName',false,v);},queryCommandValue:function(c){var f=this['queryValue'+c];if(f)return f.call(this,c);return false;},queryCommandState:function(cmd){var f;switch(cmd){case'JustifyLeft':case'JustifyCenter':case'JustifyRight':case'JustifyFull':return this.queryStateJustify(cmd,cmd.substring(7).toLowerCase());default:if(f=this['queryState'+cmd])return f.call(this,cmd);}return-1;},queryValueFontSize:function(){var ed=this.editor,v=0,p;if(isOpera||isWebKit){if(p=ed.dom.getParent(ed.selection.getNode(),'FONT'))v=p.size;return v;}return ed.getDoc().queryCommandValue('FontSize');},queryValueFontName:function(){var ed=this.editor,v=0,p;if(p=ed.dom.getParent(ed.selection.getNode(),'FONT'))v=p.face;if(!v)v=ed.getDoc().queryCommandValue('FontName');return v;},mceJustify:function(c,v){var ed=this.editor,se=ed.selection,n=se.getNode(),nn=n.nodeName,bl,nb,dom=ed.dom,rm;if(ed.settings.inline_styles&&this.queryStateJustify(c,v))rm=1;bl=dom.getParent(n,ed.dom.isBlock);if(nn=='IMG'){if(v=='full')return;if(rm){dom.setStyle(n,'float','');this.mceRepaint();return;}if(v=='center'){if(!bl||bl.childNodes.length>1){nb=dom.create('p');nb.appendChild(n.cloneNode(false));if(bl)dom.insertAfter(nb,bl);else dom.insertAfter(nb,n);dom.remove(n);n=nb.firstChild;bl=nb;}dom.setStyle(bl,'textAlign',v);dom.setStyle(n,'float','');}else dom.setStyle(n,'float',v);this.mceRepaint();return;}if(ed.settings.inline_styles&&ed.settings.forced_root_block){if(rm)v='';each(this._getSelectedBlocks(dom.getParent(se.getStart(),dom.isBlock),dom.getParent(se.getEnd(),dom.isBlock)),function(e){dom.setAttrib(e,'align','');dom.setStyle(e,'textAlign',v=='full'?'justify':v);});return;}else if(!rm)ed.getDoc().execCommand(c,false,null);if(ed.settings.inline_styles){if(rm){dom.getParent(ed.selection.getNode(),function(n){if(n.style&&n.style.textAlign)dom.setStyle(n,'textAlign','');});return;}each(dom.select('*'),function(n){var v=n.align;if(v){if(v=='full')v='justify';dom.setStyle(n,'textAlign',v);dom.setAttrib(n,'align','');}});}},mceSetCSSClass:function(u,v){this.mceSetStyleInfo(0,{command:'setattrib',name:'class',value:v});},getSelectedElement:function(){var t=this,ed=t.editor,dom=ed.dom,se=ed.selection,r=se.getRng(),r1,r2,sc,ec,so,eo,e,sp,ep,re;if(se.isCollapsed()||r.item)return se.getNode();re=ed.settings.merge_styles_invalid_parents;if(tinymce.is(re,'string'))re=new RegExp(re,'i');if(isIE){r1=r.duplicate();r1.collapse(true);sc=r1.parentElement();r2=r.duplicate();r2.collapse(false);ec=r2.parentElement();if(sc!=ec){r1.move('character',1);sc=r1.parentElement();}if(sc==ec){r1=r.duplicate();r1.moveToElementText(sc);if(r1.compareEndPoints('StartToStart',r)==0&&r1.compareEndPoints('EndToEnd',r)==0)return re&&re.test(sc.nodeName)?null:sc;}}else{function getParent(n){return dom.getParent(n,function(n){return n.nodeType==1;});};sc=r.startContainer;ec=r.endContainer;so=r.startOffset;eo=r.endOffset;if(!r.collapsed){if(sc==ec){if(so-eo<2){if(sc.hasChildNodes()){sp=sc.childNodes[so];return re&&re.test(sp.nodeName)?null:sp;}}}}if(sc.nodeType!=3||ec.nodeType!=3)return null;if(so==0){sp=getParent(sc);if(sp&&sp.firstChild!=sc)sp=null;}if(so==sc.nodeValue.length){e=sc.nextSibling;if(e&&e.nodeType==1)sp=sc.nextSibling;}if(eo==0){e=ec.previousSibling;if(e&&e.nodeType==1)ep=e;}if(eo==ec.nodeValue.length){ep=getParent(ec);if(ep&&ep.lastChild!=ec)ep=null;}if(sp==ep)return re&&sp&&re.test(sp.nodeName)?null:sp;}return null;},InsertHorizontalRule:function(){if(isGecko||isIE)this.editor.selection.setContent('<hr />');else this.editor.getDoc().execCommand('InsertHorizontalRule',false,'');},RemoveFormat:function(){var t=this,ed=t.editor,s=ed.selection,b;if(isWebKit)s.setContent(s.getContent({format:'raw'}).replace(/(<(span|b|i|strong|em|strike) [^>]+>|<(span|b|i|strong|em|strike)>|<\/(span|b|i|strong|em|strike)>|)/g,''),{format:'raw'});else ed.getDoc().execCommand('RemoveFormat',false,null);t.mceSetStyleInfo(0,{command:'removeformat'});ed.addVisual();},mceSetStyleInfo:function(u,v){var t=this,ed=t.editor,d=ed.getDoc(),dom=ed.dom,e,b,s=ed.selection,nn=v.wrapper||'span',b=s.getBookmark(),re;function set(n,e){if(n.nodeType==1){switch(v.command){case'setattrib':return dom.setAttrib(n,v.name,v.value);case'setstyle':return dom.setStyle(n,v.name,v.value);case'removeformat':return dom.setAttrib(n,'class','');}}};re=ed.settings.merge_styles_invalid_parents;if(tinymce.is(re,'string'))re=new RegExp(re,'i');if(e=t.getSelectedElement())set(e,1);else{d.execCommand('FontName',false,'__');each(isWebKit?dom.select('span'):dom.select('font'),function(n){var sp,e;if(dom.getAttrib(n,'face')=='__'||n.style.fontFamily==='__'){sp=dom.create(nn,{mce_new:'1'});set(sp);each(n.childNodes,function(n){sp.appendChild(n.cloneNode(true));});dom.replace(sp,n);}});}each(dom.select(nn).reverse(),function(n){var p=n.parentNode;dom.setAttrib(n,'mce_new','');if(!dom.getAttrib(n,'mce_new')){p=dom.getParent(n,function(n){return n.nodeType==1&&dom.getAttrib(n,'mce_new');});if(p)dom.remove(n,1);}});each(dom.select(nn).reverse(),function(n){var p=n.parentNode;if(!p)return;if(p.nodeName==nn.toUpperCase()&&p.childNodes.length==1)return dom.remove(p,1);if(n.nodeType==1&&(!re||!re.test(p.nodeName))&&p.childNodes.length==1){set(p);dom.setAttrib(n,'class','');}});each(dom.select(nn).reverse(),function(n){if(!dom.getAttrib(n,'class')&&!dom.getAttrib(n,'style'))return dom.remove(n,1);});s.moveToBookmark(b);},queryStateJustify:function(c,v){var ed=this.editor,n=ed.selection.getNode(),dom=ed.dom;if(n&&n.nodeName=='IMG')return dom.getStyle(n,'float')==v;n=dom.getParent(ed.selection.getStart(),function(n){return n.nodeType==1&&n.style.textAlign;});if(v=='full')v='justify';if(ed.settings.inline_styles)return(n&&n.style.textAlign==v);return ed.getDoc().queryCommandState(c);},HiliteColor:function(ui,val){var t=this,ed=t.editor,d=ed.getDoc();function set(s){if(!isGecko)return;try{d.execCommand("styleWithCSS",0,s);}catch(ex){d.execCommand("useCSS",0,!s);}};if(isGecko||isOpera){set(true);d.execCommand('hilitecolor',false,val);set(false);}else d.execCommand('BackColor',false,val);},Undo:function(){var ed=this.editor;if(ed.settings.custom_undo_redo){ed.undoManager.undo();ed.nodeChanged();}else ed.getDoc().execCommand('Undo',false,null);},Redo:function(){var ed=this.editor;if(ed.settings.custom_undo_redo){ed.undoManager.redo();ed.nodeChanged();}else ed.getDoc().execCommand('Redo',false,null);},FormatBlock:function(ui,val){var t=this,ed=t.editor;val=ed.settings.forced_root_block?(val||'<p>'):val;t.mceRemoveNode();if(val.indexOf('<')==-1)val='<'+val+'>';if(tinymce.isGecko)val=val.replace(/<(div|blockquote|code|dt|dd|dl|samp)>/gi,'$1');ed.getDoc().execCommand('FormatBlock',false,val);},mceCleanup:function(){var ed=this.editor,s=ed.selection,b=s.getBookmark();ed.setContent(ed.getContent());s.moveToBookmark(b);},mceRemoveNode:function(ui,val){var ed=this.editor,s=ed.selection,b,n=val||s.getNode();if(n==ed.getBody())return;b=s.getBookmark();ed.dom.remove(n,1);s.moveToBookmark(b);ed.nodeChanged();},mceSelectNodeDepth:function(ui,val){var ed=this.editor,s=ed.selection,c=0;ed.dom.getParent(s.getNode(),function(n){if(n.nodeType==1&&c++==val){s.select(n);ed.nodeChanged();return false;}},ed.getBody());},mceSelectNode:function(u,v){this.editor.selection.select(v);},mceInsertContent:function(ui,val){this.editor.selection.setContent(val);},mceInsertRawHTML:function(ui,val){var ed=this.editor;ed.execCommand('mceInsertContent',false,'tiny_mce_marker');ed.setContent(ed.getContent().replace(/tiny_mce_marker/g,val));},mceRepaint:function(){var s,b,e=this.editor;if(tinymce.isGecko){try{s=e.selection;b=s.getBookmark(true);s.getSel().selectAllChildren(e.getBody());s.collapse(true);s.moveToBookmark(b);}catch(ex){}}},queryStateUnderline:function(){var ed=this.editor,n;if(n&&n.nodeName=='A')return false;return ed.getDoc().queryCommandState('Underline');},queryStateOutdent:function(){var ed=this.editor,n;if(ed.settings.inline_styles){if((n=ed.dom.getParent(ed.selection.getStart(),ed.dom.isBlock))&&parseInt(n.style.paddingLeft)>0)return true;if((n=ed.dom.getParent(ed.selection.getEnd(),ed.dom.isBlock))&&parseInt(n.style.paddingLeft)>0)return true;}else return!!ed.dom.getParent(ed.selection.getNode(),'BLOCKQUOTE');return this.queryStateInsertUnorderedList()||this.queryStateInsertOrderedList();},queryStateInsertUnorderedList:function(){return this.editor.dom.getParent(this.editor.selection.getNode(),'UL');},queryStateInsertOrderedList:function(){return this.editor.dom.getParent(this.editor.selection.getNode(),'OL');},queryStatemceBlockQuote:function(){return!!this.editor.dom.getParent(this.editor.selection.getStart(),function(n){return n.nodeName==='BLOCKQUOTE';});},mceBlockQuote:function(){var t=this,s=t.editor.selection,b=s.getBookmark(),bq,dom=t.editor.dom;function findBQ(e){return dom.getParent(e,function(n){return n.nodeName==='BLOCKQUOTE';});};if(findBQ(s.getStart())){each(t._getSelectedBlocks(findBQ(s.getStart()),findBQ(s.getEnd())),function(e){if(e.nodeName=='BLOCKQUOTE')dom.remove(e,1);});t.editor.selection.moveToBookmark(b);return;}each(t._getSelectedBlocks(findBQ(s.getStart()),findBQ(s.getEnd())),function(e){var n;if(e.nodeName=='BLOCKQUOTE'&&!bq){bq=e;return;}if(!bq){bq=dom.create('blockquote');e.parentNode.insertBefore(bq,e);}if(e.nodeName=='BLOCKQUOTE'&&bq){n=e.firstChild;while(n){bq.appendChild(n.cloneNode(true));n=n.nextSibling;}dom.remove(e);return;}bq.appendChild(dom.remove(e));});t.editor.selection.moveToBookmark(b);},_getSelectedBlocks:function(st,en){var ed=this.editor,dom=ed.dom,s=ed.selection,sb,eb,n,bl=[];sb=dom.getParent(st||s.getStart(),dom.isBlock);eb=dom.getParent(en||s.getEnd(),dom.isBlock);if(sb)bl.push(sb);if(sb&&eb&&sb!=eb){n=sb;while((n=n.nextSibling)&&n!=eb){if(dom.isBlock(n))bl.push(n);}}if(eb&&sb!=eb)bl.push(eb);return bl;}});})();tinymce.create('tinymce.UndoManager',{index:0,data:null,typing:0,UndoManager:function(ed){var t=this,Dispatcher=tinymce.util.Dispatcher;t.editor=ed;t.data=[];t.onAdd=new Dispatcher(this);t.onUndo=new Dispatcher(this);t.onRedo=new Dispatcher(this);},add:function(l){var t=this,i,ed=t.editor,b,s=ed.settings;l=l||{};l.content=l.content||ed.getContent({format:'raw',no_events:1});l.content=l.content.replace(/^\s*|\s*$/g,'');if(!l.initial&&l.content==t.data[t.index>0?t.index-1:0].content)return null;if(s.custom_undo_redo_levels){if(t.data.length>s.custom_undo_redo_levels){for(i=0;i<t.data.length-1;i++)t.data[i]=t.data[i+1];t.data.length--;t.index=t.data.length;}}if(s.custom_undo_redo_restore_selection)l.bookmark=b=l.bookmark||ed.selection.getBookmark();if(t.index<t.data.length&&t.data[t.index].initial)t.index++;t.data.length=t.index+1;t.data[t.index++]=l;if(l.initial)t.index=0;if(t.data.length==2&&t.data[0].initial)t.data[0].bookmark=b;t.onAdd.dispatch(t,l);return l;},undo:function(){var t=this,ed=t.editor,l=l,i;if(t.typing){t.add();t.typing=0;}if(t.index>0){if(t.index==t.data.length&&t.index>1){i=t.index;t.typing=0;if(!t.add())t.index=i;--t.index;}l=t.data[--t.index];ed.setContent(l.content,{format:'raw'});ed.selection.moveToBookmark(l.bookmark);t.onUndo.dispatch(t,l);}return l;},redo:function(){var t=this,ed=t.editor,l=null;if(t.index<t.data.length-1){l=t.data[++t.index];ed.setContent(l.content,{format:'raw'});ed.selection.moveToBookmark(l.bookmark);t.onRedo.dispatch(t,l);}return l;},clear:function(){var t=this;t.data=[];t.index=0;t.typing=0;t.add({initial:true});},hasUndo:function(){return this.index!=0||this.typing;},hasRedo:function(){return this.index<this.data.length-1;}});(function(){var Event,isIE,isGecko,isOpera,each,extend;Event=tinymce.dom.Event;isIE=tinymce.isIE;isGecko=tinymce.isGecko;isOpera=tinymce.isOpera;each=tinymce.each;extend=tinymce.extend;tinymce.create('tinymce.ForceBlocks',{ForceBlocks:function(ed){var t=this,s;t.editor=ed;t.dom=ed.dom;t.settings=s=extend({element:'P',forced_root_block:'p',force_p_newlines:true},ed.settings);ed.onPreInit.add(t.setup,t);if(!isIE){ed.onSetContent.add(function(ed,o){o.content=o.content.replace(/<p>[\s\u00a0]+<\/p>/g,'<p><br /></p>');});}ed.onPostProcess.add(function(ed,o){o.content=o.content.replace(/<p><\/p>/g,'<p>\u00a0</p>');o.content=o.content.replace(/<p>\s*<br \/>\s*<\/p>/g,'<p>\u00a0</p>');o.content=o.content.replace(/\s*<br \/>\s*<\/p>/g,'</p>');});if(s.forced_root_block){ed.onInit.add(t.forceRoots,t);ed.onSetContent.add(t.forceRoots,t);ed.onBeforeGetContent.add(t.forceRoots,t);}},setup:function(){var t=this,ed=t.editor,s=t.settings;if(s.forced_root_block){ed.onKeyUp.add(t.forceRoots,t);ed.onPreProcess.add(t.forceRoots,t);}if(s.force_br_newlines){ed.onKeyPress.add(function(ed,e){var n,s=ed.selection;if(e.keyCode==13){s.setContent('<br id="__" /> ',{format:'raw'});n=ed.dom.get('__');n.removeAttribute('id');s.select(n);s.collapse();return Event.cancel(e);}});return;}if(!isIE&&s.force_p_newlines){ed.onPreProcess.add(function(ed,o){each(ed.dom.select('br',o.node),function(n){var p=n.parentNode;if(p&&p.nodeName=='p'&&(p.childNodes.length==1||p.lastChild==n))p.replaceChild(ed.getDoc().createTextNode('\u00a0'),n);});});ed.onKeyPress.add(function(ed,e){if(e.keyCode==13&&!e.shiftKey){if(!t.insertPara(e))Event.cancel(e);}});if(isGecko){ed.onKeyDown.add(function(ed,e){if((e.keyCode==8||e.keyCode==46)&&!e.shiftKey)t.backspaceDelete(e,e.keyCode==8);});}}},find:function(n,t,s){var ed=this.editor,w=ed.getDoc().createTreeWalker(n,4,null,false),c=-1;while(n=w.nextNode()){c++;if(t==0&&n==s)return c;if(t==1&&c==s)return n;}return-1;},forceRoots:function(){var t=this,ed=t.editor,b=ed.getBody(),d=ed.getDoc(),se=ed.selection,s=se.getSel(),r=se.getRng(),si=-2,ei,so,eo,tr,c=-0xFFFFFF;var nx,bl,bp,sp,le,nl=b.childNodes,i;for(i=nl.length-1;i>=0;i--){nx=nl[i];if(nx.nodeType==3||!t.dom.isBlock(nx)){if(!bl){if(nx.nodeType!=3||/[^\s]/g.test(nx.nodeValue)){if(si==-2&&r){if(!isIE){so=r.startOffset;eo=r.endOffset;si=t.find(b,0,r.startContainer);ei=t.find(b,0,r.endContainer);}else{tr=d.body.createTextRange();tr.moveToElementText(b);tr.collapse(1);bp=tr.move('character',c)*-1;tr=r.duplicate();tr.collapse(1);sp=tr.move('character',c)*-1;tr=r.duplicate();tr.collapse(0);le=(tr.move('character',c)*-1)-sp;si=sp-bp;ei=le;}}bl=ed.dom.create(t.settings.forced_root_block);bl.appendChild(nx.cloneNode(1));b.replaceChild(bl,nx);}}else{if(bl.hasChildNodes())bl.insertBefore(nx,bl.firstChild);else bl.appendChild(nx);}}else bl=null;}if(si!=-2){if(!isIE){bl=d.getElementsByTagName(t.settings.element)[0];r=d.createRange();if(si!=-1)r.setStart(t.find(b,1,si),so);else r.setStart(bl,0);if(ei!=-1)r.setEnd(t.find(b,1,ei),eo);else r.setEnd(bl,0);s.removeAllRanges();s.addRange(r);}else{try{r=s.createRange();r.moveToElementText(b);r.collapse(1);r.moveStart('character',si);r.moveEnd('character',ei);r.select();}catch(ex){}}}},getParentBlock:function(n){var d=this.dom;return d.getParent(n,d.isBlock);},insertPara:function(e){var t=this,ed=t.editor,d=ed.getDoc(),se=t.settings,s=ed.selection.getSel(),r=s.getRangeAt(0),b=d.body;var rb,ra,dir,sn,so,en,eo,sb,eb,bn,bef,aft,sc,ec,n;function isEmpty(n){n=n.innerHTML;n=n.replace(/<img|hr|table/g,'d');n=n.replace(/<[^>]+>/g,'');return n.replace(/[ \t\r\n]+/g,'')=='';};if(se.forced_root_block&&isOpera)return true;rb=d.createRange();rb.setStart(s.anchorNode,s.anchorOffset);rb.collapse(true);ra=d.createRange();ra.setStart(s.focusNode,s.focusOffset);ra.collapse(true);dir=rb.compareBoundaryPoints(rb.START_TO_END,ra)<0;sn=dir?s.anchorNode:s.focusNode;so=dir?s.anchorOffset:s.focusOffset;en=dir?s.focusNode:s.anchorNode;eo=dir?s.focusOffset:s.anchorOffset;if(sn==b&&en==b&&b.firstChild&&ed.dom.isBlock(b.firstChild)){sn=en=sn.firstChild;so=eo=0;rb=d.createRange();rb.setStart(sn,0);ra=d.createRange();ra.setStart(en,0);}sn=sn.nodeName=="BODY"?sn.firstChild:sn;en=en.nodeName=="BODY"?en.firstChild:en;sb=t.getParentBlock(sn);eb=t.getParentBlock(en);bn=sb?sb.nodeName:se.element;if(t.dom.getParent(sb,function(n){return/OL|UL|PRE/.test(n.nodeName);}))return true;if(sb&&(sb.nodeName=='CAPTION'||/absolute|relative|static/gi.test(sb.style.position))){bn=se.element;sb=null;}if(eb&&(eb.nodeName=='CAPTION'||/absolute|relative|static/gi.test(eb.style.position))){bn=se.element;eb=null;}if(/(TD|TABLE|TH|CAPTION)/.test(bn)||(sb&&bn=="DIV"&&/left|right/gi.test(sb.style.cssFloat))){bn=se.element;sb=eb=null;}bef=(sb&&sb.nodeName==bn)?sb.cloneNode(0):ed.dom.create(bn);aft=(eb&&eb.nodeName==bn)?eb.cloneNode(0):ed.dom.create(bn);aft.removeAttribute('id');if(/^(H[1-6])$/.test(bn)&&sn.nodeValue&&so==sn.nodeValue.length)aft=ed.dom.create(se.element);n=sc=sn;do{if(n==b||n.nodeType==9||t.dom.isBlock(n)||/(TD|TABLE|TH|CAPTION)/.test(n.nodeName))break;sc=n;}while((n=n.previousSibling?n.previousSibling:n.parentNode));n=ec=en;do{if(n==b||n.nodeType==9||t.dom.isBlock(n)||/(TD|TABLE|TH|CAPTION)/.test(n.nodeName))break;ec=n;}while((n=n.nextSibling?n.nextSibling:n.parentNode));if(sc.nodeName==bn)rb.setStart(sc,0);else rb.setStartBefore(sc);rb.setEnd(sn,so);bef.appendChild(rb.cloneContents()||d.createTextNode(''));try{ra.setEndAfter(ec);}catch(ex){}ra.setStart(en,eo);aft.appendChild(ra.cloneContents()||d.createTextNode(''));r=d.createRange();if(!sc.previousSibling&&sc.parentNode.nodeName==bn){r.setStartBefore(sc.parentNode);}else{if(rb.startContainer.nodeName==bn&&rb.startOffset==0)r.setStartBefore(rb.startContainer);else r.setStart(rb.startContainer,rb.startOffset);}if(!ec.nextSibling&&ec.parentNode.nodeName==bn)r.setEndAfter(ec.parentNode);else r.setEnd(ra.endContainer,ra.endOffset);r.deleteContents();if(bef.firstChild&&bef.firstChild.nodeName==bn)bef.innerHTML=bef.firstChild.innerHTML;if(aft.firstChild&&aft.firstChild.nodeName==bn)aft.innerHTML=aft.firstChild.innerHTML;if(isEmpty(bef))bef.innerHTML='<br />';if(isEmpty(aft))aft.innerHTML=isOpera?' <br />':'<br />';if(isOpera){r.insertNode(bef);r.insertNode(aft);}else{r.insertNode(aft);r.insertNode(bef);}aft.normalize();bef.normalize();r=d.createRange();r.selectNodeContents(aft);r.collapse(1);s.removeAllRanges();s.addRange(r);aft.scrollIntoView(0);return false;},backspaceDelete:function(e,bs){var t=this,ed=t.editor,b=ed.getBody(),n,se=ed.selection,r=se.getRng(),sc=r.startContainer,n;if(sc&&ed.dom.isBlock(sc)&&bs){if(sc.childNodes.length==1&&sc.firstChild.nodeName=='BR'){n=sc.previousSibling;if(n){ed.dom.remove(sc);se.select(n,1);se.collapse(0);return Event.cancel(e);}}}function handler(e){e=e.target;if(e&&e.parentNode&&e.nodeName=='BR'&&t.getParentBlock(e)){ed.dom.remove(e);Event.remove(b,'DOMNodeInserted',handler);}};Event._add(b,'DOMNodeInserted',handler);window.setTimeout(function(){Event._remove(b,'DOMNodeInserted',handler);},1);}});})();(function(){var DOM=tinymce.DOM,Event=tinymce.dom.Event,each=tinymce.each,extend=tinymce.extend;tinymce.create('tinymce.ControlManager',{ControlManager:function(ed,s){var t=this,i;s=s||{};t.editor=ed;t.controls={};t.onAdd=new tinymce.util.Dispatcher(t);t.onPostRender=new tinymce.util.Dispatcher(t);t.prefix=s.prefix||ed.id+'_';t.onPostRender.add(function(){each(t.controls,function(c){c.postRender();});});},get:function(id){return this.controls[this.prefix+id]||this.controls[id];},setActive:function(id,s){var c=null;if(c=this.get(id))c.setActive(s);return c;},setDisabled:function(id,s){var c=null;if(c=this.get(id))c.setDisabled(s);return c;},add:function(c){var t=this;if(c){t.controls[c.id]=c;t.onAdd.dispatch(c,t);}return c;},createControl:function(n){var c,t=this,ed=t.editor;each(ed.plugins,function(p){if(p.createControl){c=p.createControl(n,t);if(c)return false;}});switch(n){case"|":case"separator":return t.createSeparator();}if(!c&&ed.buttons&&(c=ed.buttons[n]))return t.createButton(n,c);return t.add(c);},createDropMenu:function(id,s){var t=this,ed=t.editor,c;s=extend({'class':'mceDropDown'},s);s['class']=s['class']+' '+ed.getParam('skin')+'Skin';id=t.prefix+id;c=t.controls[id]=new tinymce.ui.DropMenu(id,s);c.onAddItem.add(function(c,o){var s=o.settings;s.title=ed.getLang(s.title,s.title);if(!s.onclick){s.onclick=function(v){ed.execCommand(s.cmd,s.ui||false,v||s.value);};}});ed.onRemove.add(function(){c.destroy();});return t.add(c);},createListBox:function(id,s){var t=this,ed=t.editor,cmd,c;if(t.get(id))return null;s.title=ed.translate(s.title);s.scope=s.scope||ed;if(!s.onselect){s.onselect=function(v){ed.execCommand(s.cmd,s.ui||false,v||s.value);};}s=extend({title:s.title,'class':id,scope:s.scope,control_manager:t},s);id=t.prefix+id;if(ed.settings.use_native_selects)c=new tinymce.ui.NativeListBox(id,s);else c=new tinymce.ui.ListBox(id,s);t.controls[id]=c;if(tinymce.isWebKit){c.onPostRender.add(function(c,n){Event.add(n,'mousedown',function(){ed.bookmark=ed.selection.getBookmark('simple');});Event.add(n,'focus',function(){ed.selection.moveToBookmark(ed.bookmark);ed.bookmark=null;});});}if(c.hideMenu)ed.onMouseDown.add(c.hideMenu,c);return t.add(c);},createButton:function(id,s){var t=this,ed=t.editor,o;if(t.get(id))return null;s.title=ed.translate(s.title);s.scope=s.scope||ed;if(!s.onclick){s.onclick=function(){ed.execCommand(s.cmd,s.ui||false,s.value);};}s=extend({title:s.title,'class':id,unavailable_prefix:ed.getLang('unavailable',''),scope:s.scope},s);id=t.prefix+id;return t.add(new tinymce.ui.Button(id,s));},createSplitButton:function(id,s){var t=this,ed=t.editor,cmd,c;if(t.get(id))return null;s.title=ed.translate(s.title);s.scope=s.scope||ed;if(!s.onclick){s.onclick=function(v){ed.execCommand(s.cmd,s.ui||false,v||s.value);};}if(!s.onselect){s.onselect=function(v){ed.execCommand(s.cmd,s.ui||false,v||s.value);};}s=extend({title:s.title,'class':id,scope:s.scope,control_manager:t},s);id=t.prefix+id;c=t.add(new tinymce.ui.SplitButton(id,s));ed.onMouseDown.add(c.hideMenu,c);return c;},createColorSplitButton:function(id,s){var t=this,ed=t.editor,cmd,c;if(t.get(id))return null;s.title=ed.translate(s.title);s.scope=s.scope||ed;if(!s.onclick){s.onclick=function(v){ed.execCommand(s.cmd,s.ui||false,v||s.value);};}if(!s.onselect){s.onselect=function(v){ed.execCommand(s.cmd,s.ui||false,v||s.value);};}s=extend({title:s.title,'class':id,'menu_class':ed.getParam('skin')+'Skin',scope:s.scope,more_colors_title:ed.getLang('more_colors')},s);id=t.prefix+id;c=new tinymce.ui.ColorSplitButton(id,s);ed.onMouseDown.add(c.hideMenu,c);return t.add(c);},createToolbar:function(id,s){var c=new tinymce.ui.Toolbar(id,s);if(this.get(id))return null;return this.add(c);},createSeparator:function(){return new tinymce.ui.Separator();}});})();(function(){var Dispatcher=tinymce.util.Dispatcher,each=tinymce.each,isIE=tinymce.isIE,isOpera=tinymce.isOpera;tinymce.create('tinymce.WindowManager',{WindowManager:function(ed){var t=this;t.editor=ed;t.onOpen=new Dispatcher(t);t.onClose=new Dispatcher(t);t.params={};t.features={};},open:function(s,p){var t=this,f='',x,y,mo=t.editor.settings.dialog_type=='modal',w,sw,sh,vp=tinymce.DOM.getViewPort();s=s||{};p=p||{};sw=isOpera?vp.w:screen.width;sh=isOpera?vp.h:screen.height;s.name=s.name||'mc_'+new Date().getTime();s.width=parseInt(s.width||320);s.height=parseInt(s.height||240);s.resizable=true;s.left=s.left||parseInt(sw/ 2.0) - (s.width /2.0);s.top=s.top||parseInt(sh/ 2.0) - (s.height /2.0);p.inline=false;p.mce_width=s.width;p.mce_height=s.height;if(mo){if(isIE){s.center=true;s.help=false;s.dialogWidth=s.width+'px';s.dialogHeight=s.height+'px';s.scroll=s.scrollbars||false;}else s.modal=s.alwaysRaised=s.dialog=s.centerscreen=s.dependent=true;}each(s,function(v,k){if(tinymce.is(v,'boolean'))v=v?'yes':'no';if(!/^(name|url)$/.test(k)){if(isIE&&mo)f+=(f?';':'')+k+':'+v;else f+=(f?',':'')+k+'='+v;}});t.features=s;t.params=p;t.onOpen.dispatch(t,s,p);try{if(isIE&&mo){w=1;window.showModalDialog(s.url||s.file,window,f);}else w=window.open(s.url||s.file,s.name,f);}catch(ex){}if(!w)alert(t.editor.getLang('popup_blocked'));},close:function(w){w.close();this.onClose.dispatch(this);},createInstance:function(cl){var a=arguments,i,f=tinymce.resolve(cl),s='';for(i=1;i<a.length;i++)s+=(i>1?',':'')+'a['+i+']';return eval('(new f('+s+'))');},confirm:function(t,cb,s){cb.call(s||this,confirm(this._decode(this.editor.getLang(t,t))));},alert:function(t,cb,s){alert(this._decode(t));if(cb)cb.call(s||this);},_decode:function(s){return tinymce.DOM.decode(s).replace(/\\n/g,'\n');}});}());
@@ -1,221 +0,0 @@
1
- // Some global instances
2
- var tinymce = null, tinyMCEPopup, tinyMCE;
3
-
4
- tinyMCEPopup = {
5
- init : function() {
6
- var t = this, w = t.getWin(), ti;
7
-
8
- // Find API
9
- tinymce = w.tinymce;
10
- tinyMCE = w.tinyMCE;
11
- t.editor = tinymce.EditorManager.activeEditor;
12
- t.params = t.editor.windowManager.params;
13
-
14
- // Setup local DOM
15
- t.dom = t.editor.windowManager.createInstance('tinymce.dom.DOMUtils', document);
16
- t.dom.loadCSS(t.editor.settings.popup_css);
17
-
18
- // Setup on init listeners
19
- t.listeners = [];
20
- t.onInit = {
21
- add : function(f, s) {
22
- t.listeners.push({func : f, scope : s});
23
- }
24
- };
25
-
26
- t.isWindow = !t.getWindowArg('mce_inline');
27
- t.id = t.getWindowArg('mce_window_id');
28
- t.editor.windowManager.onOpen.dispatch(t.editor.windowManager, window);
29
- },
30
-
31
- getWin : function() {
32
- return window.dialogArguments || opener || parent || top;
33
- },
34
-
35
- getWindowArg : function(n, dv) {
36
- var v = this.params[n];
37
-
38
- return tinymce.is(v) ? v : dv;
39
- },
40
-
41
- getParam : function(n, dv) {
42
- return this.editor.getParam(n, dv);
43
- },
44
-
45
- getLang : function(n, dv) {
46
- return this.editor.getLang(n, dv);
47
- },
48
-
49
- execCommand : function(cmd, ui, val) {
50
- this.restoreSelection();
51
- return this.editor.execCommand(cmd, ui, val);
52
- },
53
-
54
- resizeToInnerSize : function() {
55
- var t = this, n, b = document.body, vp = t.dom.getViewPort(window), dw, dh;
56
-
57
- dw = t.getWindowArg('mce_width') - vp.w;
58
- dh = t.getWindowArg('mce_height') - vp.h;
59
-
60
- if (t.isWindow)
61
- window.resizeBy(dw, dh);
62
- else
63
- t.editor.windowManager.resizeBy(dw, dh, t.id);
64
- },
65
-
66
- executeOnLoad : function(s) {
67
- this.onInit.add(function() {
68
- eval(s);
69
- });
70
- },
71
-
72
- storeSelection : function() {
73
- this.editor.windowManager.bookmark = tinyMCEPopup.editor.selection.getBookmark('simple');
74
- },
75
-
76
- restoreSelection : function() {
77
- var t = tinyMCEPopup;
78
-
79
- if (!t.isWindow && tinymce.isIE)
80
- t.editor.selection.moveToBookmark(t.editor.windowManager.bookmark);
81
- },
82
-
83
- requireLangPack : function() {
84
- var u = this.getWindowArg('plugin_url') || this.getWindowArg('theme_url');
85
-
86
- if (u)
87
- document.write('<script type="text/javascript" src="' + u + '/langs/' + this.editor.settings.language + '_dlg.js' + '"></script>');
88
- },
89
-
90
- pickColor : function(e, element_id) {
91
- this.execCommand('mceColorPicker', true, {
92
- color : document.getElementById(element_id).value,
93
- func : function(c) {
94
- document.getElementById(element_id).value = c;
95
-
96
- if (tinymce.is(document.getElementById(element_id).onchange, 'function'))
97
- document.getElementById(element_id).onchange();
98
- }
99
- });
100
- },
101
-
102
- openBrowser : function(element_id, type, option) {
103
- tinyMCEPopup.restoreSelection();
104
- this.editor.execCallback('file_browser_callback', element_id, document.getElementById(element_id).value, type, window);
105
- },
106
-
107
- close : function() {
108
- var t = this;
109
-
110
- t.dom = t.dom.doc = null; // Cleanup
111
- t.editor.windowManager.close(window, t.id);
112
- },
113
-
114
- // Internal functions
115
-
116
- _restoreSelection : function() {
117
- var e = window.event.srcElement;
118
-
119
- if (e.nodeName == 'INPUT' && (e.type == 'submit' || e.type == 'button'))
120
- tinyMCEPopup.restoreSelection();
121
- },
122
-
123
- /* _restoreSelection : function() {
124
- var e = window.event.srcElement;
125
-
126
- // If user focus a non text input or textarea
127
- if ((e.nodeName != 'INPUT' && e.nodeName != 'TEXTAREA') || e.type != 'text')
128
- tinyMCEPopup.restoreSelection();
129
- },*/
130
-
131
- _onDOMLoaded : function() {
132
- var t = this, ti = document.title, bm, h;
133
-
134
- // Translate page
135
- h = document.body.innerHTML;
136
-
137
- // Replace a=x with a="x" in IE
138
- if (tinymce.isIE)
139
- h = h.replace(/ (value|title|alt)=([^\s>]+)/gi, ' $1="$2"');
140
-
141
- document.body.innerHTML = t.editor.translate(h);
142
- document.title = ti = t.editor.translate(ti);
143
- document.body.style.display = '';
144
-
145
- // Restore selection in IE when focus is placed on a non textarea or input element of the type text
146
- if (tinymce.isIE)
147
- document.attachEvent('onmouseup', tinyMCEPopup._restoreSelection);
148
-
149
- t.restoreSelection();
150
-
151
- // Call onInit
152
- tinymce.each(t.listeners, function(o) {
153
- o.func.call(o.scope, t.editor);
154
- });
155
-
156
- t.resizeToInnerSize();
157
-
158
- if (t.isWindow)
159
- window.focus();
160
- else
161
- t.editor.windowManager.setTitle(ti, t.id);
162
-
163
- if (!tinymce.isIE && !t.isWindow) {
164
- tinymce.dom.Event._add(document, 'focus', function() {
165
- t.editor.windowManager.focus(t.id)
166
- });
167
- }
168
-
169
- // Patch for accessibility
170
- tinymce.each(t.dom.select('select'), function(e) {
171
- e.onkeydown = tinyMCEPopup._accessHandler;
172
- });
173
-
174
- // Move focus to window
175
- window.focus();
176
- },
177
-
178
- _accessHandler : function(e) {
179
- var e = e || window.event;
180
-
181
- if (e.keyCode == 13 || e.keyCode == 32) {
182
- e = e.target || e.srcElement;
183
-
184
- if (e.onchange)
185
- e.onchange();
186
-
187
- return tinymce.dom.Event.cancel(e);
188
- }
189
- },
190
-
191
- _wait : function() {
192
- var t = this, ti;
193
-
194
- if (tinymce.isIE && document.location.protocol != 'https:') {
195
- // Fake DOMContentLoaded on IE
196
- document.write('<script id=__ie_onload defer src=\'javascript:""\';><\/script>');
197
- document.getElementById("__ie_onload").onreadystatechange = function() {
198
- if (this.readyState == "complete") {
199
- t._onDOMLoaded();
200
- document.getElementById("__ie_onload").onreadystatechange = null; // Prevent leak
201
- }
202
- };
203
- } else {
204
- if (tinymce.isIE || tinymce.isWebKit) {
205
- ti = setInterval(function() {
206
- if (/loaded|complete/.test(document.readyState)) {
207
- clearInterval(ti);
208
- t._onDOMLoaded();
209
- }
210
- }, 10);
211
- } else {
212
- window.addEventListener('DOMContentLoaded', function() {
213
- t._onDOMLoaded();
214
- }, false);
215
- }
216
- }
217
- }
218
- };
219
-
220
- tinyMCEPopup.init();
221
- tinyMCEPopup._wait(); // Wait for DOM Content Loaded