browsercms 3.0.6 → 3.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (995) hide show
  1. data/app/controllers/cms/application_controller.rb +2 -12
  2. data/app/controllers/cms/content_block_controller.rb +1 -1
  3. data/app/controllers/cms/content_controller.rb +3 -83
  4. data/app/controllers/cms/dashboard_controller.rb +1 -1
  5. data/app/controllers/cms/pages_controller.rb +2 -0
  6. data/app/controllers/tests/pretend_controller.rb +32 -0
  7. data/app/helpers/application_helper.rb +2 -0
  8. data/app/helpers/cms/application_helper.rb +0 -32
  9. data/app/helpers/cms/form_builder.rb +131 -54
  10. data/app/helpers/cms/menu_helper.rb +13 -2
  11. data/app/helpers/cms/page_helper.rb +26 -2
  12. data/app/helpers/cms/rendering_helper.rb +42 -0
  13. data/app/models/forgot_password_mailer.rb +12 -0
  14. data/app/models/guest_user.rb +11 -3
  15. data/app/models/page.rb +1 -1
  16. data/app/models/page_template.rb +1 -18
  17. data/app/models/portlet.rb +10 -1
  18. data/app/models/section.rb +41 -33
  19. data/app/models/task.rb +32 -26
  20. data/app/models/templates.rb +31 -0
  21. data/app/models/user.rb +27 -9
  22. data/app/portlets/forgot_password_portlet.rb +29 -0
  23. data/app/portlets/reset_password_portlet.rb +28 -0
  24. data/app/views/cms/blocks/_toolbar_for_member.html.erb +1 -1
  25. data/app/views/cms/blocks/edit.html.erb +5 -0
  26. data/app/views/cms/blocks/show.html.erb +3 -0
  27. data/app/views/cms/dynamic_views/index.html.erb +3 -2
  28. data/app/views/cms/forgot_password_mailer/reset_password.text.html.erb +3 -0
  29. data/app/views/cms/forgot_password_mailer/reset_password.text.plain.erb +3 -0
  30. data/app/views/cms/form_builder/_cms_check_box.html.erb +7 -0
  31. data/app/views/cms/form_builder/_cms_drop_down.html.erb +0 -7
  32. data/app/views/cms/form_builder/_cms_fancy_drop_down.html.erb +9 -0
  33. data/app/views/cms/form_builder/_cms_file_field.html.erb +11 -7
  34. data/app/views/cms/form_builder/_cms_instructions.html.erb +4 -0
  35. data/app/views/cms/form_builder/_cms_template_editor.html.erb +8 -0
  36. data/app/views/cms/groups/_permissions.html.erb +1 -1
  37. data/app/views/cms/page_routes/index.html.erb +2 -2
  38. data/app/views/cms/page_routes/show.html.erb +2 -2
  39. data/app/views/cms/redirects/index.html.erb +1 -1
  40. data/app/views/layouts/cms/_footer.erb +1 -1
  41. data/app/views/layouts/cms/_head.html.erb +1 -1
  42. data/app/views/layouts/cms/content_library.html.erb +7 -7
  43. data/app/views/layouts/cms/thickbox.html.erb +2 -2
  44. data/app/views/portlets/forgot_password/_form.html.erb +6 -0
  45. data/app/views/portlets/forgot_password/render.html.erb +14 -0
  46. data/app/views/portlets/reset_password/_form.html.erb +3 -0
  47. data/app/views/portlets/reset_password/render.html.erb +24 -0
  48. data/app/views/tests/pretend/open_with_layout.html.erb +5 -0
  49. data/bin/bcms +6 -0
  50. data/bin/browsercms +73 -0
  51. data/browsercms.gemspec +493 -379
  52. data/db/demo/page_templates/sub_page.html.erb +1 -1
  53. data/db/migrate/20081114172307_load_seed_data.rb +0 -29
  54. data/db/migrate/20091109175123_browsercms_3_0_5.rb +9 -0
  55. data/doc/app/classes/AbstractFileBlock.html +32 -6
  56. data/doc/app/classes/ActiveRecord/ConnectionAdapters/SchemaStatements.html +136 -85
  57. data/doc/app/classes/ActiveSupport/Cache/FileStore.html +6 -6
  58. data/doc/app/classes/ActsAsList.html +6 -6
  59. data/doc/app/classes/ActsAsList/ClassMethods.html +8 -8
  60. data/doc/app/classes/ActsAsList/InstanceMethods.html +143 -119
  61. data/doc/app/classes/ApplicationHelper.html +4 -0
  62. data/doc/app/classes/Attachment.html +134 -134
  63. data/doc/app/classes/Category.html +24 -24
  64. data/doc/app/classes/CategoryType.html +18 -18
  65. data/doc/app/classes/Cms.html +227 -94
  66. data/doc/app/classes/Cms/Acts.html +5 -0
  67. data/doc/app/classes/Cms/Acts/ContentBlock.html +6 -6
  68. data/doc/app/classes/Cms/Acts/ContentBlock/MacroMethods.html +6 -6
  69. data/doc/app/classes/Cms/Acts/ContentBlock/MacroMethods/InstanceMethods.html +6 -6
  70. data/doc/app/classes/Cms/Acts/ContentPage.html +187 -0
  71. data/doc/app/classes/Cms/Acts/ContentPage/ClassMethods.html +188 -0
  72. data/doc/app/classes/Cms/ApplicationController.html +69 -118
  73. data/doc/app/classes/Cms/ApplicationHelper.html +277 -393
  74. data/doc/app/classes/Cms/AttachmentsController.html +6 -6
  75. data/doc/app/classes/Cms/Authentication/Controller.html +226 -228
  76. data/doc/app/classes/Cms/Authentication/Model.html +6 -6
  77. data/doc/app/classes/Cms/Authentication/Model/ClassMethods.html +30 -30
  78. data/doc/app/classes/Cms/Authentication/Model/InstanceMethods.html +66 -66
  79. data/doc/app/classes/Cms/Behaviors/Archiving.html +6 -6
  80. data/doc/app/classes/Cms/Behaviors/Archiving/InstanceMethods.html +24 -24
  81. data/doc/app/classes/Cms/Behaviors/Archiving/MacroMethods.html +12 -12
  82. data/doc/app/classes/Cms/Behaviors/Attaching.html +6 -6
  83. data/doc/app/classes/Cms/Behaviors/Attaching/InstanceMethods.html +123 -123
  84. data/doc/app/classes/Cms/Behaviors/Attaching/MacroMethods.html +12 -12
  85. data/doc/app/classes/Cms/Behaviors/Categorizing.html +6 -6
  86. data/doc/app/classes/Cms/Behaviors/Categorizing/InstanceMethods.html +6 -6
  87. data/doc/app/classes/Cms/Behaviors/Categorizing/MacroMethods.html +12 -12
  88. data/doc/app/classes/Cms/Behaviors/ClassMethods.html +60 -60
  89. data/doc/app/classes/Cms/Behaviors/Connecting.html +6 -6
  90. data/doc/app/classes/Cms/Behaviors/Connecting/ClassMethods.html +18 -18
  91. data/doc/app/classes/Cms/Behaviors/Connecting/InstanceMethods.html +42 -42
  92. data/doc/app/classes/Cms/Behaviors/Connecting/MacroMethods.html +12 -12
  93. data/doc/app/classes/Cms/Behaviors/DynamicAttributes.html +6 -6
  94. data/doc/app/classes/Cms/Behaviors/DynamicAttributes/InstanceMethods.html +14 -14
  95. data/doc/app/classes/Cms/Behaviors/DynamicAttributes/MacroMethods.html +12 -12
  96. data/doc/app/classes/Cms/Behaviors/FlushCacheOnChange.html +12 -12
  97. data/doc/app/classes/Cms/Behaviors/FlushCacheOnChange/InstanceMethods.html +6 -6
  98. data/doc/app/classes/Cms/Behaviors/FlushCacheOnChange/MacroMethods.html +12 -12
  99. data/doc/app/classes/Cms/Behaviors/Hiding.html +6 -6
  100. data/doc/app/classes/Cms/Behaviors/Hiding/InstanceMethods.html +24 -24
  101. data/doc/app/classes/Cms/Behaviors/Hiding/MacroMethods.html +12 -12
  102. data/doc/app/classes/Cms/Behaviors/InstanceMethods.html +127 -74
  103. data/doc/app/classes/Cms/Behaviors/Pagination.html +6 -6
  104. data/doc/app/classes/Cms/Behaviors/Pagination/ClassMethods.html +12 -12
  105. data/doc/app/classes/Cms/Behaviors/Pagination/Collection.html +55 -55
  106. data/doc/app/classes/Cms/Behaviors/Pagination/InvalidPage.html +6 -6
  107. data/doc/app/classes/Cms/Behaviors/Publishing.html +12 -12
  108. data/doc/app/classes/Cms/Behaviors/Publishing/InstanceMethods.html +119 -119
  109. data/doc/app/classes/Cms/Behaviors/Publishing/MacroMethods.html +25 -14
  110. data/doc/app/classes/Cms/Behaviors/Rendering.html +10 -13
  111. data/doc/app/classes/Cms/Behaviors/Rendering/MacroMethods.html +33 -33
  112. data/doc/app/classes/Cms/Behaviors/Searching.html +6 -6
  113. data/doc/app/classes/Cms/Behaviors/Searching/ClassMethods.html +12 -12
  114. data/doc/app/classes/Cms/Behaviors/Searching/MacroMethods.html +12 -12
  115. data/doc/app/classes/Cms/Behaviors/SoftDeleting.html +6 -6
  116. data/doc/app/classes/Cms/Behaviors/SoftDeleting/ClassMethods.html +24 -24
  117. data/doc/app/classes/Cms/Behaviors/SoftDeleting/InstanceMethods.html +30 -30
  118. data/doc/app/classes/Cms/Behaviors/SoftDeleting/MacroMethods.html +12 -12
  119. data/doc/app/classes/Cms/Behaviors/Taggable.html +6 -6
  120. data/doc/app/classes/Cms/Behaviors/Taggable/ClassMethods.html +12 -12
  121. data/doc/app/classes/Cms/Behaviors/Taggable/InstanceMethods.html +34 -33
  122. data/doc/app/classes/Cms/Behaviors/Taggable/MacroMethods.html +12 -12
  123. data/doc/app/classes/Cms/Behaviors/Userstamping.html +6 -6
  124. data/doc/app/classes/Cms/Behaviors/Userstamping/InstanceMethods.html +6 -6
  125. data/doc/app/classes/Cms/Behaviors/Userstamping/MacroMethods.html +12 -12
  126. data/doc/app/classes/Cms/Behaviors/Versioning.html +6 -6
  127. data/doc/app/classes/Cms/Behaviors/Versioning/ClassMethods.html +30 -30
  128. data/doc/app/classes/Cms/Behaviors/Versioning/InstanceMethods.html +322 -294
  129. data/doc/app/classes/Cms/Behaviors/Versioning/MacroMethods.html +31 -31
  130. data/doc/app/classes/Cms/CacheController.html +12 -12
  131. data/doc/app/classes/Cms/Caching.html +12 -12
  132. data/doc/app/classes/Cms/CategoriesController.html +35 -0
  133. data/doc/app/classes/Cms/CategoryTypesController.html +6 -6
  134. data/doc/app/classes/Cms/ConnectorsController.html +19 -19
  135. data/doc/app/classes/Cms/ContentBlockController.html +486 -440
  136. data/doc/app/classes/Cms/ContentController.html +48 -121
  137. data/doc/app/classes/Cms/ContentRenderingSupport.html +222 -0
  138. data/doc/app/classes/Cms/ContentTypesController.html +6 -6
  139. data/doc/app/classes/Cms/DashboardController.html +12 -11
  140. data/doc/app/classes/Cms/DataLoader.html +12 -12
  141. data/doc/app/classes/Cms/DomainSupport.html +166 -0
  142. data/doc/app/classes/Cms/DynamicViewsController.html +54 -54
  143. data/doc/app/classes/Cms/EmailMessagesController.html +12 -12
  144. data/doc/app/classes/Cms/ErrorHandling.html +50 -23
  145. data/doc/app/classes/Cms/Errors/AccessDenied.html +10 -10
  146. data/doc/app/classes/Cms/Extensions/ActionView/Base.html +6 -6
  147. data/doc/app/classes/Cms/Extensions/ActiveRecord/Base.html +6 -6
  148. data/doc/app/classes/Cms/Extensions/ActiveRecord/Errors.html +6 -6
  149. data/doc/app/classes/Cms/Extensions/Hash.html +12 -12
  150. data/doc/app/classes/Cms/Extensions/Integer.html +6 -6
  151. data/doc/app/classes/Cms/Extensions/NilClass.html +24 -24
  152. data/doc/app/classes/Cms/Extensions/String.html +24 -24
  153. data/doc/app/classes/Cms/FormBuilder.html +258 -90
  154. data/doc/app/classes/Cms/FormTagHelper.html +30 -30
  155. data/doc/app/classes/Cms/GroupsController.html +24 -24
  156. data/doc/app/classes/Cms/HomeController.html +6 -6
  157. data/doc/app/classes/Cms/LinksController.html +64 -62
  158. data/doc/app/classes/Cms/MenuHelper.html +210 -165
  159. data/doc/app/classes/Cms/PageHelper.html +178 -91
  160. data/doc/app/classes/Cms/PageRouteOptionsController.html +54 -54
  161. data/doc/app/classes/Cms/PageRoutesController.html +36 -36
  162. data/doc/app/classes/Cms/PagesController.html +111 -109
  163. data/doc/app/classes/Cms/PathHelper.html +36 -36
  164. data/doc/app/classes/Cms/PortletController.html +6 -6
  165. data/doc/app/classes/Cms/PortletsController.html +43 -43
  166. data/doc/app/classes/Cms/RedirectsController.html +12 -12
  167. data/doc/app/classes/Cms/RenderingHelper.html +214 -0
  168. data/doc/app/classes/Cms/ResourceController.html +114 -114
  169. data/doc/app/classes/Cms/Routes.html +151 -143
  170. data/doc/app/classes/Cms/RoutesController.html +6 -6
  171. data/doc/app/classes/Cms/SectionNodesController.html +36 -36
  172. data/doc/app/classes/Cms/SectionNodesHelper.html +6 -6
  173. data/doc/app/classes/Cms/SectionsController.html +212 -188
  174. data/doc/app/classes/Cms/SessionsController.html +68 -39
  175. data/doc/app/classes/Cms/TagsController.html +30 -6
  176. data/doc/app/classes/Cms/TasksController.html +18 -18
  177. data/doc/app/classes/Cms/TemplateSupport.html +185 -0
  178. data/doc/app/classes/Cms/ToolbarController.html +6 -6
  179. data/doc/app/classes/Cms/UsersController.html +129 -153
  180. data/doc/app/classes/CommandLine.html +226 -0
  181. data/doc/app/classes/Connector.html +75 -71
  182. data/doc/app/classes/ContentType.html +72 -72
  183. data/doc/app/classes/DynamicPortlet.html +6 -6
  184. data/doc/app/classes/DynamicView.html +130 -133
  185. data/doc/app/classes/EmailMessage.html +24 -24
  186. data/doc/app/classes/EmailMessageMailer.html +6 -6
  187. data/doc/app/classes/EmailPagePortlet.html +12 -12
  188. data/doc/app/classes/FileBlock.html +18 -18
  189. data/doc/app/classes/ForgotPasswordMailer.html +151 -0
  190. data/doc/app/classes/ForgotPasswordPortlet.html +162 -0
  191. data/doc/app/classes/Group.html +72 -20
  192. data/doc/app/classes/GuestUser.html +138 -93
  193. data/doc/app/classes/HtmlBlock.html +12 -12
  194. data/doc/app/classes/ImageBlock.html +18 -18
  195. data/doc/app/classes/InitialData.html +6 -6
  196. data/doc/app/classes/Link.html +30 -30
  197. data/doc/app/classes/LoginPortlet.html +6 -6
  198. data/doc/app/classes/Page.html +185 -185
  199. data/doc/app/classes/PagePartial.html +18 -18
  200. data/doc/app/classes/PageRoute.html +48 -48
  201. data/doc/app/classes/PageTemplate.html +60 -78
  202. data/doc/app/classes/Portlet.html +339 -267
  203. data/doc/app/classes/ResetPasswordPortlet.html +169 -0
  204. data/doc/app/classes/Section.html +257 -200
  205. data/doc/app/classes/SectionNode.html +60 -60
  206. data/doc/app/classes/Sequence.html +6 -6
  207. data/doc/app/classes/Site.html +30 -30
  208. data/doc/app/classes/Tag.html +31 -31
  209. data/doc/app/classes/TagCloudPortlet.html +12 -12
  210. data/doc/app/classes/Tagging.html +6 -6
  211. data/doc/app/classes/Task.html +37 -37
  212. data/doc/app/classes/Templates.html +151 -0
  213. data/doc/app/classes/Tests.html +107 -0
  214. data/doc/app/classes/Tests/PretendController.html +275 -0
  215. data/doc/app/classes/User.html +344 -205
  216. data/doc/app/created.rid +1 -1
  217. data/doc/app/files/app/controllers/cms/application_controller_rb.html +1 -1
  218. data/doc/app/files/app/controllers/cms/categories_controller_rb.html +1 -1
  219. data/doc/app/files/app/controllers/cms/connectors_controller_rb.html +1 -1
  220. data/doc/app/files/app/controllers/cms/content_block_controller_rb.html +1 -1
  221. data/doc/app/files/app/controllers/cms/content_controller_rb.html +1 -1
  222. data/doc/app/files/app/controllers/cms/dashboard_controller_rb.html +1 -1
  223. data/doc/app/files/app/controllers/cms/error_handling_rb.html +1 -1
  224. data/doc/app/files/app/controllers/cms/links_controller_rb.html +1 -1
  225. data/doc/app/files/app/controllers/cms/pages_controller_rb.html +1 -1
  226. data/doc/app/files/app/controllers/cms/portlets_controller_rb.html +1 -1
  227. data/doc/app/files/app/controllers/cms/section_nodes_controller_rb.html +1 -1
  228. data/doc/app/files/app/controllers/cms/sections_controller_rb.html +1 -1
  229. data/doc/app/files/app/controllers/cms/sessions_controller_rb.html +1 -1
  230. data/doc/app/files/app/controllers/cms/tags_controller_rb.html +1 -1
  231. data/doc/app/files/app/controllers/cms/users_controller_rb.html +1 -1
  232. data/doc/app/files/app/controllers/tests/pretend_controller_rb.html +112 -0
  233. data/doc/app/files/app/helpers/application_helper_rb.html +5 -1
  234. data/doc/app/files/app/helpers/cms/application_helper_rb.html +1 -1
  235. data/doc/app/files/app/helpers/cms/form_builder_rb.html +8 -1
  236. data/doc/app/files/app/helpers/cms/menu_helper_rb.html +1 -1
  237. data/doc/app/files/app/helpers/cms/page_helper_rb.html +1 -1
  238. data/doc/app/files/app/helpers/cms/rendering_helper_rb.html +111 -0
  239. data/doc/app/files/app/helpers/cms/template_support_rb.html +108 -0
  240. data/doc/app/files/app/models/abstract_file_block_rb.html +1 -1
  241. data/doc/app/files/app/models/attachment_rb.html +2 -2
  242. data/doc/app/files/app/models/connector_rb.html +1 -1
  243. data/doc/app/files/app/models/content_type_rb.html +1 -1
  244. data/doc/app/files/app/models/dynamic_view_rb.html +1 -1
  245. data/doc/app/files/app/models/forgot_password_mailer_rb.html +101 -0
  246. data/doc/app/files/app/models/group_rb.html +10 -1
  247. data/doc/app/files/app/models/guest_user_rb.html +14 -1
  248. data/doc/app/files/app/models/link_rb.html +1 -1
  249. data/doc/app/files/app/models/page_rb.html +1 -1
  250. data/doc/app/files/app/models/page_template_rb.html +1 -1
  251. data/doc/app/files/app/models/portlet_rb.html +1 -1
  252. data/doc/app/files/app/models/section_rb.html +1 -1
  253. data/doc/app/files/app/models/tag_rb.html +1 -1
  254. data/doc/app/files/app/models/task_rb.html +1 -1
  255. data/doc/app/files/app/models/templates_rb.html +108 -0
  256. data/doc/app/files/app/models/user_rb.html +1 -1
  257. data/doc/app/files/app/portlets/forgot_password_portlet_rb.html +108 -0
  258. data/doc/app/files/app/portlets/reset_password_portlet_rb.html +101 -0
  259. data/doc/app/files/doc/README_FOR_APP.html +7 -6
  260. data/doc/app/files/lib/acts_as_list_rb.html +1 -1
  261. data/doc/app/files/lib/browsercms_rb.html +1 -1
  262. data/doc/app/files/lib/cms/acts/content_block_rb.html +1 -1
  263. data/doc/app/files/lib/cms/acts/content_page_rb.html +125 -0
  264. data/doc/app/files/lib/cms/authentication/controller_rb.html +61 -1
  265. data/doc/app/files/lib/cms/behaviors/attaching_rb.html +1 -1
  266. data/doc/app/files/lib/cms/behaviors/publishing_rb.html +1 -1
  267. data/doc/app/files/lib/cms/behaviors/rendering_rb.html +1 -1
  268. data/doc/app/files/lib/cms/behaviors/taggable_rb.html +1 -1
  269. data/doc/app/files/lib/cms/behaviors/versioning_rb.html +1 -1
  270. data/doc/app/files/lib/cms/content_rendering_support_rb.html +108 -0
  271. data/doc/app/files/lib/cms/domain_support_rb.html +108 -0
  272. data/doc/app/files/lib/cms/extensions/active_record/connection_adapters/abstract/schema_statements_rb.html +1 -1
  273. data/doc/app/files/lib/cms/init_rb.html +8 -1
  274. data/doc/app/files/lib/cms/routes_rb.html +1 -1
  275. data/doc/app/files/lib/cms/version_rb.html +107 -0
  276. data/doc/app/files/lib/command_line_rb.html +101 -0
  277. data/doc/app/fr_class_index.html +13 -0
  278. data/doc/app/fr_file_index.html +12 -0
  279. data/doc/app/fr_method_index.html +761 -712
  280. data/doc/guides/html/authentication.html +201 -0
  281. data/doc/guides/html/build_it_yourself.html +21 -18
  282. data/doc/guides/html/building_modules.html +107 -51
  283. data/doc/guides/html/building_templates.html +507 -0
  284. data/doc/guides/html/content_blocks.html +477 -0
  285. data/doc/guides/html/customizing_browsercms.html +173 -0
  286. data/doc/guides/html/deployment_guide.html +31 -5
  287. data/doc/guides/html/getting_started.html +62 -27
  288. data/doc/guides/html/images/content_blocks/add_field_to_form.png +0 -0
  289. data/doc/guides/html/images/content_blocks/add_second_block.png +0 -0
  290. data/doc/guides/html/images/nfl_sitemap.png +0 -0
  291. data/doc/guides/html/index.html +31 -22
  292. data/doc/guides/html/installing_modules.html +25 -17
  293. data/doc/guides/html/portlets.html +238 -0
  294. data/doc/guides/html/user_guide.html +11 -2
  295. data/doc/guides/html/{designer_guide.html → writing_guides.html} +21 -20
  296. data/lib/cms/acts/content_page.rb +69 -0
  297. data/lib/cms/authentication/controller.rb +1 -1
  298. data/lib/cms/behaviors/rendering.rb +9 -2
  299. data/lib/cms/behaviors/versioning.rb +1 -1
  300. data/lib/cms/content_rendering_support.rb +96 -0
  301. data/lib/cms/domain_support.rb +20 -0
  302. data/lib/cms/init.rb +22 -5
  303. data/lib/cms/version.rb +6 -0
  304. data/lib/command_line.rb +39 -0
  305. data/lib/tasks/cms.rake +4 -2
  306. data/public/bcms/ckeditor/ckeditor.js +108 -0
  307. data/public/bcms/ckeditor/config.js +18 -0
  308. data/public/bcms/ckeditor/core/_bootstrap.js +64 -0
  309. data/public/bcms/ckeditor/core/ajax.js +143 -0
  310. data/public/bcms/ckeditor/core/ckeditor.js +96 -0
  311. data/public/bcms/ckeditor/core/ckeditor_base.js +190 -0
  312. data/public/bcms/ckeditor/core/ckeditor_basic.js +241 -0
  313. data/public/bcms/ckeditor/core/command.js +70 -0
  314. data/public/bcms/ckeditor/core/commanddefinition.js +72 -0
  315. data/public/bcms/ckeditor/core/config.js +287 -0
  316. data/public/bcms/ckeditor/core/dom.js +21 -0
  317. data/public/bcms/ckeditor/core/dom/document.js +210 -0
  318. data/public/bcms/ckeditor/core/dom/documentfragment.js +49 -0
  319. data/public/bcms/ckeditor/core/dom/domobject.js +204 -0
  320. data/public/bcms/ckeditor/core/dom/element.js +1384 -0
  321. data/public/bcms/ckeditor/core/dom/elementpath.js +104 -0
  322. data/public/bcms/ckeditor/core/dom/event.js +137 -0
  323. data/public/bcms/ckeditor/core/dom/node.js +649 -0
  324. data/public/bcms/ckeditor/core/dom/nodelist.js +23 -0
  325. data/public/bcms/ckeditor/core/dom/range.js +1668 -0
  326. data/public/bcms/ckeditor/core/dom/text.js +123 -0
  327. data/public/bcms/ckeditor/core/dom/walker.js +411 -0
  328. data/public/bcms/ckeditor/core/dom/window.js +96 -0
  329. data/public/bcms/ckeditor/core/dtd.js +200 -0
  330. data/public/bcms/ckeditor/core/editor.js +650 -0
  331. data/public/bcms/ckeditor/core/editor_basic.js +178 -0
  332. data/public/bcms/ckeditor/core/env.js +219 -0
  333. data/public/bcms/ckeditor/core/event.js +335 -0
  334. data/public/bcms/ckeditor/core/eventInfo.js +120 -0
  335. data/public/bcms/ckeditor/core/focusmanager.js +123 -0
  336. data/public/bcms/ckeditor/core/htmlparser.js +212 -0
  337. data/public/bcms/ckeditor/core/htmlparser/basicwriter.js +140 -0
  338. data/public/bcms/ckeditor/core/htmlparser/cdata.js +44 -0
  339. data/public/bcms/ckeditor/core/htmlparser/comment.js +59 -0
  340. data/public/bcms/ckeditor/core/htmlparser/element.js +196 -0
  341. data/public/bcms/ckeditor/core/htmlparser/filter.js +233 -0
  342. data/public/bcms/ckeditor/core/htmlparser/fragment.js +434 -0
  343. data/public/bcms/ckeditor/core/htmlparser/text.js +55 -0
  344. data/public/bcms/ckeditor/core/imagecacher.js +58 -0
  345. data/public/bcms/ckeditor/core/lang.js +147 -0
  346. data/public/bcms/ckeditor/core/loader.js +238 -0
  347. data/public/bcms/ckeditor/core/plugindefinition.js +66 -0
  348. data/public/bcms/ckeditor/core/plugins.js +82 -0
  349. data/public/bcms/ckeditor/core/resourcemanager.js +233 -0
  350. data/public/bcms/ckeditor/core/scriptloader.js +194 -0
  351. data/public/bcms/ckeditor/core/skins.js +185 -0
  352. data/public/bcms/ckeditor/core/test.js +184 -0
  353. data/public/bcms/ckeditor/core/themes.js +18 -0
  354. data/public/bcms/ckeditor/core/tools.js +531 -0
  355. data/public/bcms/ckeditor/core/ui.js +106 -0
  356. data/public/bcms/ckeditor/core/xml.js +165 -0
  357. data/public/bcms/ckeditor/editor.js +51 -0
  358. data/public/bcms/ckeditor/lang/_languages.js +82 -0
  359. data/public/bcms/ckeditor/lang/_translationstatus.txt +59 -0
  360. data/public/bcms/ckeditor/lang/af.js +674 -0
  361. data/public/bcms/ckeditor/lang/ar.js +674 -0
  362. data/public/bcms/ckeditor/lang/bg.js +674 -0
  363. data/public/bcms/ckeditor/lang/bn.js +674 -0
  364. data/public/bcms/ckeditor/lang/bs.js +674 -0
  365. data/public/bcms/ckeditor/lang/ca.js +674 -0
  366. data/public/bcms/ckeditor/lang/cs.js +674 -0
  367. data/public/bcms/ckeditor/lang/da.js +674 -0
  368. data/public/bcms/ckeditor/lang/de.js +674 -0
  369. data/public/bcms/ckeditor/lang/el.js +674 -0
  370. data/public/bcms/ckeditor/lang/en-au.js +674 -0
  371. data/public/bcms/ckeditor/lang/en-ca.js +674 -0
  372. data/public/bcms/ckeditor/lang/en-uk.js +674 -0
  373. data/public/bcms/ckeditor/lang/en.js +674 -0
  374. data/public/bcms/ckeditor/lang/eo.js +674 -0
  375. data/public/bcms/ckeditor/lang/es.js +674 -0
  376. data/public/bcms/ckeditor/lang/et.js +674 -0
  377. data/public/bcms/ckeditor/lang/eu.js +674 -0
  378. data/public/bcms/ckeditor/lang/fa.js +674 -0
  379. data/public/bcms/ckeditor/lang/fi.js +674 -0
  380. data/public/bcms/ckeditor/lang/fo.js +674 -0
  381. data/public/bcms/ckeditor/lang/fr-ca.js +674 -0
  382. data/public/bcms/ckeditor/lang/fr.js +674 -0
  383. data/public/bcms/ckeditor/lang/gl.js +674 -0
  384. data/public/bcms/ckeditor/lang/gu.js +674 -0
  385. data/public/bcms/ckeditor/lang/he.js +674 -0
  386. data/public/bcms/ckeditor/lang/hi.js +674 -0
  387. data/public/bcms/ckeditor/lang/hr.js +674 -0
  388. data/public/bcms/ckeditor/lang/hu.js +674 -0
  389. data/public/bcms/ckeditor/lang/is.js +674 -0
  390. data/public/bcms/ckeditor/lang/it.js +674 -0
  391. data/public/bcms/ckeditor/lang/ja.js +674 -0
  392. data/public/bcms/ckeditor/lang/km.js +674 -0
  393. data/public/bcms/ckeditor/lang/ko.js +674 -0
  394. data/public/bcms/ckeditor/lang/lt.js +674 -0
  395. data/public/bcms/ckeditor/lang/lv.js +674 -0
  396. data/public/bcms/ckeditor/lang/mn.js +674 -0
  397. data/public/bcms/ckeditor/lang/ms.js +674 -0
  398. data/public/bcms/ckeditor/lang/nb.js +674 -0
  399. data/public/bcms/ckeditor/lang/nl.js +674 -0
  400. data/public/bcms/ckeditor/lang/no.js +674 -0
  401. data/public/bcms/ckeditor/lang/pl.js +674 -0
  402. data/public/bcms/ckeditor/lang/pt-br.js +674 -0
  403. data/public/bcms/ckeditor/lang/pt.js +674 -0
  404. data/public/bcms/ckeditor/lang/ro.js +674 -0
  405. data/public/bcms/ckeditor/lang/ru.js +674 -0
  406. data/public/bcms/ckeditor/lang/sk.js +674 -0
  407. data/public/bcms/ckeditor/lang/sl.js +674 -0
  408. data/public/bcms/ckeditor/lang/sr-latn.js +674 -0
  409. data/public/bcms/ckeditor/lang/sr.js +674 -0
  410. data/public/bcms/ckeditor/lang/sv.js +674 -0
  411. data/public/bcms/ckeditor/lang/th.js +674 -0
  412. data/public/bcms/ckeditor/lang/tr.js +674 -0
  413. data/public/bcms/ckeditor/lang/uk.js +674 -0
  414. data/public/bcms/ckeditor/lang/vi.js +674 -0
  415. data/public/bcms/ckeditor/lang/zh-cn.js +674 -0
  416. data/public/bcms/ckeditor/lang/zh.js +674 -0
  417. data/public/bcms/ckeditor/plugins/about/dialogs/about.js +73 -0
  418. data/public/bcms/ckeditor/plugins/about/dialogs/logo_ckeditor.png +0 -0
  419. data/public/bcms/ckeditor/plugins/about/plugin.js +22 -0
  420. data/public/bcms/ckeditor/plugins/basicstyles/plugin.js +50 -0
  421. data/public/bcms/ckeditor/plugins/blockquote/plugin.js +301 -0
  422. data/public/bcms/ckeditor/plugins/button/plugin.js +264 -0
  423. data/public/bcms/ckeditor/plugins/clipboard/dialogs/paste.js +167 -0
  424. data/public/bcms/ckeditor/plugins/clipboard/plugin.js +208 -0
  425. data/public/bcms/ckeditor/plugins/colorbutton/plugin.js +202 -0
  426. data/public/bcms/ckeditor/plugins/contextmenu/plugin.js +178 -0
  427. data/public/bcms/ckeditor/plugins/dialog/dialogDefinition.js +315 -0
  428. data/public/bcms/ckeditor/plugins/dialog/plugin.js +2742 -0
  429. data/public/bcms/ckeditor/plugins/dialogui/plugin.js +1319 -0
  430. data/public/bcms/ckeditor/plugins/domiterator/plugin.js +354 -0
  431. data/public/bcms/ckeditor/plugins/editingblock/plugin.js +236 -0
  432. data/public/bcms/ckeditor/plugins/elementspath/plugin.js +182 -0
  433. data/public/bcms/ckeditor/plugins/enterkey/plugin.js +324 -0
  434. data/public/bcms/ckeditor/plugins/entities/plugin.js +200 -0
  435. data/public/bcms/ckeditor/plugins/fakeobjects/plugin.js +111 -0
  436. data/public/bcms/ckeditor/plugins/filebrowser/plugin.js +383 -0
  437. data/public/bcms/ckeditor/plugins/find/dialogs/find.js +843 -0
  438. data/public/bcms/ckeditor/plugins/find/plugin.js +46 -0
  439. data/public/bcms/ckeditor/plugins/flash/dialogs/flash.js +682 -0
  440. data/public/bcms/ckeditor/plugins/flash/images/placeholder.png +0 -0
  441. data/public/bcms/ckeditor/plugins/flash/plugin.js +165 -0
  442. data/public/bcms/ckeditor/plugins/floatpanel/plugin.js +325 -0
  443. data/public/bcms/ckeditor/plugins/font/plugin.js +227 -0
  444. data/public/bcms/ckeditor/plugins/format/plugin.js +191 -0
  445. data/public/bcms/ckeditor/plugins/forms/dialogs/button.js +135 -0
  446. data/public/bcms/ckeditor/plugins/forms/dialogs/checkbox.js +138 -0
  447. data/public/bcms/ckeditor/plugins/forms/dialogs/form.js +177 -0
  448. data/public/bcms/ckeditor/plugins/forms/dialogs/hiddenfield.js +91 -0
  449. data/public/bcms/ckeditor/plugins/forms/dialogs/radio.js +135 -0
  450. data/public/bcms/ckeditor/plugins/forms/dialogs/select.js +541 -0
  451. data/public/bcms/ckeditor/plugins/forms/dialogs/textarea.js +114 -0
  452. data/public/bcms/ckeditor/plugins/forms/dialogs/textfield.js +193 -0
  453. data/public/bcms/ckeditor/plugins/forms/plugin.js +193 -0
  454. data/public/bcms/ckeditor/plugins/horizontalrule/plugin.js +35 -0
  455. data/public/bcms/ckeditor/plugins/htmldataprocessor/plugin.js +373 -0
  456. data/public/bcms/ckeditor/plugins/htmlwriter/plugin.js +289 -0
  457. data/public/bcms/ckeditor/plugins/iframedialog/plugin.js +136 -0
  458. data/public/bcms/ckeditor/plugins/image/dialogs/image.js +1225 -0
  459. data/public/bcms/ckeditor/plugins/image/plugin.js +64 -0
  460. data/public/bcms/ckeditor/plugins/indent/plugin.js +323 -0
  461. data/public/bcms/ckeditor/plugins/justify/plugin.js +164 -0
  462. data/public/bcms/ckeditor/plugins/keystrokes/plugin.js +217 -0
  463. data/public/bcms/ckeditor/plugins/link/dialogs/anchor.js +98 -0
  464. data/public/bcms/ckeditor/plugins/link/dialogs/link.js +1217 -0
  465. data/public/{fckeditor/editor → bcms/ckeditor/plugins/link}/images/anchor.gif +0 -0
  466. data/public/bcms/ckeditor/plugins/link/plugin.js +188 -0
  467. data/public/bcms/ckeditor/plugins/list/plugin.js +570 -0
  468. data/public/bcms/ckeditor/plugins/listblock/plugin.js +231 -0
  469. data/public/bcms/ckeditor/plugins/maximize/plugin.js +267 -0
  470. data/public/bcms/ckeditor/plugins/menu/plugin.js +377 -0
  471. data/public/bcms/ckeditor/plugins/menubutton/plugin.js +93 -0
  472. data/public/bcms/ckeditor/plugins/newpage/plugin.js +65 -0
  473. data/public/{fckeditor/editor/css/images/fck_pagebreak.gif → bcms/ckeditor/plugins/pagebreak/images/pagebreak.gif} +0 -0
  474. data/public/bcms/ckeditor/plugins/pagebreak/plugin.js +96 -0
  475. data/public/bcms/ckeditor/plugins/panel/plugin.js +330 -0
  476. data/public/bcms/ckeditor/plugins/panelbutton/plugin.js +140 -0
  477. data/public/bcms/ckeditor/plugins/pastefromword/dialogs/pastefromword.js +307 -0
  478. data/public/bcms/ckeditor/plugins/pastefromword/plugin.js +54 -0
  479. data/public/bcms/ckeditor/plugins/pastetext/dialogs/pastetext.js +65 -0
  480. data/public/bcms/ckeditor/plugins/pastetext/plugin.js +142 -0
  481. data/public/bcms/ckeditor/plugins/popup/plugin.js +62 -0
  482. data/public/bcms/ckeditor/plugins/preview/plugin.js +97 -0
  483. data/public/bcms/ckeditor/plugins/print/plugin.js +41 -0
  484. data/public/bcms/ckeditor/plugins/removeformat/plugin.js +132 -0
  485. data/public/bcms/ckeditor/plugins/resize/plugin.js +115 -0
  486. data/public/bcms/ckeditor/plugins/richcombo/plugin.js +357 -0
  487. data/public/bcms/ckeditor/plugins/save/plugin.js +55 -0
  488. data/public/bcms/ckeditor/plugins/scayt/dialogs/options.js +494 -0
  489. data/public/bcms/ckeditor/plugins/scayt/dialogs/toolbar.css +71 -0
  490. data/public/bcms/ckeditor/plugins/scayt/plugin.js +511 -0
  491. data/public/bcms/ckeditor/plugins/selection/plugin.js +1072 -0
  492. data/public/{fckeditor/editor/css → bcms/ckeditor/plugins/showblocks}/images/block_address.png +0 -0
  493. data/public/{fckeditor/editor/css → bcms/ckeditor/plugins/showblocks}/images/block_blockquote.png +0 -0
  494. data/public/{fckeditor/editor/css → bcms/ckeditor/plugins/showblocks}/images/block_div.png +0 -0
  495. data/public/{fckeditor/editor/css → bcms/ckeditor/plugins/showblocks}/images/block_h1.png +0 -0
  496. data/public/{fckeditor/editor/css → bcms/ckeditor/plugins/showblocks}/images/block_h2.png +0 -0
  497. data/public/{fckeditor/editor/css → bcms/ckeditor/plugins/showblocks}/images/block_h3.png +0 -0
  498. data/public/{fckeditor/editor/css → bcms/ckeditor/plugins/showblocks}/images/block_h4.png +0 -0
  499. data/public/{fckeditor/editor/css → bcms/ckeditor/plugins/showblocks}/images/block_h5.png +0 -0
  500. data/public/{fckeditor/editor/css → bcms/ckeditor/plugins/showblocks}/images/block_h6.png +0 -0
  501. data/public/{fckeditor/editor/css → bcms/ckeditor/plugins/showblocks}/images/block_p.png +0 -0
  502. data/public/{fckeditor/editor/css → bcms/ckeditor/plugins/showblocks}/images/block_pre.png +0 -0
  503. data/public/bcms/ckeditor/plugins/showblocks/plugin.js +153 -0
  504. data/public/bcms/ckeditor/plugins/smiley/dialogs/smiley.js +219 -0
  505. data/public/bcms/ckeditor/plugins/smiley/images/angel_smile.gif +0 -0
  506. data/public/bcms/ckeditor/plugins/smiley/images/angry_smile.gif +0 -0
  507. data/public/bcms/ckeditor/plugins/smiley/images/broken_heart.gif +0 -0
  508. data/public/bcms/ckeditor/plugins/smiley/images/confused_smile.gif +0 -0
  509. data/public/bcms/ckeditor/plugins/smiley/images/cry_smile.gif +0 -0
  510. data/public/bcms/ckeditor/plugins/smiley/images/devil_smile.gif +0 -0
  511. data/public/bcms/ckeditor/plugins/smiley/images/embaressed_smile.gif +0 -0
  512. data/public/bcms/ckeditor/plugins/smiley/images/envelope.gif +0 -0
  513. data/public/bcms/ckeditor/plugins/smiley/images/heart.gif +0 -0
  514. data/public/bcms/ckeditor/plugins/smiley/images/kiss.gif +0 -0
  515. data/public/bcms/ckeditor/plugins/smiley/images/lightbulb.gif +0 -0
  516. data/public/bcms/ckeditor/plugins/smiley/images/omg_smile.gif +0 -0
  517. data/public/bcms/ckeditor/plugins/smiley/images/regular_smile.gif +0 -0
  518. data/public/bcms/ckeditor/plugins/smiley/images/sad_smile.gif +0 -0
  519. data/public/bcms/ckeditor/plugins/smiley/images/shades_smile.gif +0 -0
  520. data/public/bcms/ckeditor/plugins/smiley/images/teeth_smile.gif +0 -0
  521. data/public/bcms/ckeditor/plugins/smiley/images/thumbs_down.gif +0 -0
  522. data/public/bcms/ckeditor/plugins/smiley/images/thumbs_up.gif +0 -0
  523. data/public/bcms/ckeditor/plugins/smiley/images/tounge_smile.gif +0 -0
  524. data/public/bcms/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif +0 -0
  525. data/public/bcms/ckeditor/plugins/smiley/images/wink_smile.gif +0 -0
  526. data/public/bcms/ckeditor/plugins/smiley/plugin.js +74 -0
  527. data/public/bcms/ckeditor/plugins/sourcearea/plugin.js +185 -0
  528. data/public/bcms/ckeditor/plugins/specialchar/dialogs/specialchar.js +362 -0
  529. data/public/bcms/ckeditor/plugins/specialchar/plugin.js +29 -0
  530. data/public/bcms/ckeditor/plugins/styles/plugin.js +1242 -0
  531. data/public/bcms/ckeditor/plugins/stylescombo/plugin.js +295 -0
  532. data/public/bcms/ckeditor/plugins/stylescombo/styles/default.js +85 -0
  533. data/public/bcms/ckeditor/plugins/tab/plugin.js +266 -0
  534. data/public/bcms/ckeditor/plugins/table/dialogs/table.js +550 -0
  535. data/public/bcms/ckeditor/plugins/table/plugin.js +70 -0
  536. data/public/bcms/ckeditor/plugins/tabletools/dialogs/tableCell.js +328 -0
  537. data/public/bcms/ckeditor/plugins/tabletools/plugin.js +701 -0
  538. data/public/bcms/ckeditor/plugins/templates/dialogs/templates.js +170 -0
  539. data/public/bcms/ckeditor/plugins/templates/plugin.js +99 -0
  540. data/public/bcms/ckeditor/plugins/templates/templates/default.js +94 -0
  541. data/public/{fckeditor/editor/dialog/fck_template → bcms/ckeditor/plugins/templates/templates}/images/template1.gif +0 -0
  542. data/public/{fckeditor/editor/dialog/fck_template → bcms/ckeditor/plugins/templates/templates}/images/template2.gif +0 -0
  543. data/public/{fckeditor/editor/dialog/fck_template → bcms/ckeditor/plugins/templates/templates}/images/template3.gif +0 -0
  544. data/public/bcms/ckeditor/plugins/toolbar/plugin.js +412 -0
  545. data/public/bcms/ckeditor/plugins/uicolor/dialogs/uicolor.js +203 -0
  546. data/public/bcms/ckeditor/plugins/uicolor/lang/en.js +15 -0
  547. data/public/bcms/ckeditor/plugins/uicolor/plugin.js +35 -0
  548. data/public/bcms/ckeditor/plugins/uicolor/uicolor.gif +0 -0
  549. data/public/bcms/ckeditor/plugins/uicolor/yui/assets/hue_bg.png +0 -0
  550. data/public/bcms/ckeditor/plugins/uicolor/yui/assets/hue_thumb.png +0 -0
  551. data/public/bcms/ckeditor/plugins/uicolor/yui/assets/picker_mask.png +0 -0
  552. data/public/bcms/ckeditor/plugins/uicolor/yui/assets/picker_thumb.png +0 -0
  553. data/public/bcms/ckeditor/plugins/uicolor/yui/assets/yui.css +15 -0
  554. data/public/bcms/ckeditor/plugins/uicolor/yui/yui.js +71 -0
  555. data/public/bcms/ckeditor/plugins/undo/plugin.js +490 -0
  556. data/public/bcms/ckeditor/plugins/wsc/dialogs/ciframe.html +49 -0
  557. data/public/bcms/ckeditor/plugins/wsc/dialogs/tmpFrameset.html +52 -0
  558. data/public/bcms/ckeditor/plugins/wsc/dialogs/wsc.css +83 -0
  559. data/public/bcms/ckeditor/plugins/wsc/dialogs/wsc.js +169 -0
  560. data/public/bcms/ckeditor/plugins/wsc/plugin.js +32 -0
  561. data/public/bcms/ckeditor/plugins/wysiwygarea/plugin.js +636 -0
  562. data/public/bcms/ckeditor/skins/kama/dialog.css +742 -0
  563. data/public/bcms/ckeditor/skins/kama/editor.css +21 -0
  564. data/public/bcms/ckeditor/skins/kama/elementspath.css +68 -0
  565. data/public/bcms/ckeditor/skins/kama/icons.css +309 -0
  566. data/public/bcms/ckeditor/skins/kama/icons.png +0 -0
  567. data/public/{fckeditor/editor/skins/default/images/dialog.sides.gif → bcms/ckeditor/skins/kama/images/dialog_sides.gif} +0 -0
  568. data/public/{fckeditor/editor/skins/default/images/dialog.sides.png → bcms/ckeditor/skins/kama/images/dialog_sides.png} +0 -0
  569. data/public/{fckeditor/editor/skins/default/images/dialog.sides.rtl.png → bcms/ckeditor/skins/kama/images/dialog_sides_rtl.png} +0 -0
  570. data/public/bcms/ckeditor/skins/kama/images/mini.gif +0 -0
  571. data/public/bcms/ckeditor/skins/kama/images/noimage.png +0 -0
  572. data/public/bcms/ckeditor/skins/kama/images/sprites.png +0 -0
  573. data/public/bcms/ckeditor/skins/kama/images/sprites_ie6.png +0 -0
  574. data/public/{fckeditor/editor/skins/default/images/toolbar.start.gif → bcms/ckeditor/skins/kama/images/toolbar_start.gif} +0 -0
  575. data/public/bcms/ckeditor/skins/kama/mainui.css +139 -0
  576. data/public/bcms/ckeditor/skins/kama/menu.css +179 -0
  577. data/public/bcms/ckeditor/skins/kama/panel.css +203 -0
  578. data/public/bcms/ckeditor/skins/kama/presets.css +49 -0
  579. data/public/bcms/ckeditor/skins/kama/reset.css +78 -0
  580. data/public/bcms/ckeditor/skins/kama/richcombo.css +260 -0
  581. data/public/bcms/ckeditor/skins/kama/skin.js +291 -0
  582. data/public/bcms/ckeditor/skins/kama/templates.css +71 -0
  583. data/public/bcms/ckeditor/skins/kama/toolbar.css +384 -0
  584. data/public/bcms/ckeditor/skins/office2003/dialog.css +643 -0
  585. data/public/bcms/ckeditor/skins/office2003/editor.css +21 -0
  586. data/public/bcms/ckeditor/skins/office2003/elementspath.css +68 -0
  587. data/public/bcms/ckeditor/skins/office2003/icons.css +309 -0
  588. data/public/bcms/ckeditor/skins/office2003/icons.png +0 -0
  589. data/public/bcms/ckeditor/skins/office2003/images/dialog_sides.gif +0 -0
  590. data/public/bcms/ckeditor/skins/office2003/images/dialog_sides.png +0 -0
  591. data/public/bcms/ckeditor/skins/office2003/images/dialog_sides_rtl.png +0 -0
  592. data/public/bcms/ckeditor/skins/office2003/images/mini.gif +0 -0
  593. data/public/bcms/ckeditor/skins/office2003/images/noimage.png +0 -0
  594. data/public/bcms/ckeditor/skins/office2003/images/sprites.png +0 -0
  595. data/public/bcms/ckeditor/skins/office2003/images/sprites_ie6.png +0 -0
  596. data/public/bcms/ckeditor/skins/office2003/mainui.css +97 -0
  597. data/public/bcms/ckeditor/skins/office2003/menu.css +175 -0
  598. data/public/bcms/ckeditor/skins/office2003/panel.css +198 -0
  599. data/public/bcms/ckeditor/skins/office2003/presets.css +49 -0
  600. data/public/bcms/ckeditor/skins/office2003/reset.css +78 -0
  601. data/public/bcms/ckeditor/skins/office2003/richcombo.css +279 -0
  602. data/public/bcms/ckeditor/skins/office2003/skin.js +77 -0
  603. data/public/bcms/ckeditor/skins/office2003/templates.css +71 -0
  604. data/public/bcms/ckeditor/skins/office2003/toolbar.css +442 -0
  605. data/public/bcms/ckeditor/skins/v2/dialog.css +653 -0
  606. data/public/bcms/ckeditor/skins/v2/editor.css +21 -0
  607. data/public/bcms/ckeditor/skins/v2/elementspath.css +68 -0
  608. data/public/bcms/ckeditor/skins/v2/icons.css +309 -0
  609. data/public/bcms/ckeditor/skins/v2/icons.png +0 -0
  610. data/public/bcms/ckeditor/skins/v2/images/dialog_sides.gif +0 -0
  611. data/public/bcms/ckeditor/skins/v2/images/dialog_sides.png +0 -0
  612. data/public/bcms/ckeditor/skins/v2/images/dialog_sides_rtl.png +0 -0
  613. data/public/bcms/ckeditor/skins/v2/images/mini.gif +0 -0
  614. data/public/bcms/ckeditor/skins/v2/images/noimage.png +0 -0
  615. data/public/bcms/ckeditor/skins/v2/images/sprites.png +0 -0
  616. data/public/bcms/ckeditor/skins/v2/images/sprites_ie6.png +0 -0
  617. data/public/{fckeditor/editor/skins/silver/images/toolbar.start.gif → bcms/ckeditor/skins/v2/images/toolbar_start.gif} +0 -0
  618. data/public/bcms/ckeditor/skins/v2/mainui.css +112 -0
  619. data/public/bcms/ckeditor/skins/v2/menu.css +178 -0
  620. data/public/bcms/ckeditor/skins/v2/panel.css +198 -0
  621. data/public/bcms/ckeditor/skins/v2/presets.css +50 -0
  622. data/public/bcms/ckeditor/skins/v2/reset.css +78 -0
  623. data/public/bcms/ckeditor/skins/v2/richcombo.css +275 -0
  624. data/public/bcms/ckeditor/skins/v2/skin.js +73 -0
  625. data/public/bcms/ckeditor/skins/v2/templates.css +71 -0
  626. data/public/bcms/ckeditor/skins/v2/toolbar.css +399 -0
  627. data/public/bcms/ckeditor/tests/_assets/sample.css +4 -0
  628. data/public/bcms/ckeditor/tests/_assets/sample.js +1 -0
  629. data/public/bcms/ckeditor/tests/_assets/sample.txt +1 -0
  630. data/public/bcms/ckeditor/tests/_assets/sample.xml +5 -0
  631. data/public/bcms/ckeditor/tests/_assets/sample_xml.txt +5 -0
  632. data/public/bcms/ckeditor/tests/core/_editor/custom_config_1.js +10 -0
  633. data/public/bcms/ckeditor/tests/core/_editor/custom_config_2.js +9 -0
  634. data/public/bcms/ckeditor/tests/core/ajax.html +163 -0
  635. data/public/bcms/ckeditor/tests/core/bootstrap.html +66 -0
  636. data/public/bcms/ckeditor/tests/core/ckeditor.html +160 -0
  637. data/public/bcms/ckeditor/tests/core/dom/document.html +126 -0
  638. data/public/bcms/ckeditor/tests/core/dom/documentfragment.html +292 -0
  639. data/public/bcms/ckeditor/tests/core/dom/element.html +637 -0
  640. data/public/bcms/ckeditor/tests/core/dom/node.html +164 -0
  641. data/public/bcms/ckeditor/tests/core/dom/range.html +2411 -0
  642. data/public/bcms/ckeditor/tests/core/dom/text.html +128 -0
  643. data/public/bcms/ckeditor/tests/core/dom/walker.html +340 -0
  644. data/public/bcms/ckeditor/tests/core/dom/window.html +53 -0
  645. data/public/bcms/ckeditor/tests/core/editor.html +123 -0
  646. data/public/bcms/ckeditor/tests/core/env.html +52 -0
  647. data/public/bcms/ckeditor/tests/core/event.html +487 -0
  648. data/public/bcms/ckeditor/tests/core/htmlparser/fragment.html +188 -0
  649. data/public/bcms/ckeditor/tests/core/htmlparser/htmlparser.html +91 -0
  650. data/public/bcms/ckeditor/tests/core/plugins.html +45 -0
  651. data/public/bcms/ckeditor/tests/core/plugins/myplugins/sample/my_plugin.js +3 -0
  652. data/public/bcms/ckeditor/tests/core/scriptloader.html +52 -0
  653. data/public/bcms/ckeditor/tests/core/tools.html +170 -0
  654. data/public/bcms/ckeditor/tests/core/xml.html +150 -0
  655. data/public/bcms/ckeditor/tests/plugins/domiterator/domiterator.html +236 -0
  656. data/public/bcms/ckeditor/tests/plugins/htmldataprocessor/htmldataprocessor.html +386 -0
  657. data/public/bcms/ckeditor/tests/plugins/link/link.html +123 -0
  658. data/public/bcms/ckeditor/tests/plugins/list/list.html +217 -0
  659. data/public/bcms/ckeditor/tests/plugins/selection/selection.html +49 -0
  660. data/public/bcms/ckeditor/tests/plugins/styles/styles.html +596 -0
  661. data/public/bcms/ckeditor/tests/test.css +81 -0
  662. data/public/bcms/ckeditor/tests/test.js +93 -0
  663. data/public/bcms/ckeditor/tests/testall.html +114 -0
  664. data/public/bcms/ckeditor/tests/yuitest.js +75 -0
  665. data/public/bcms/ckeditor/themes/default/theme.js +232 -0
  666. data/public/stylesheets/cms/application.css +2 -2
  667. data/public/stylesheets/cms/form_layout.css +2 -6
  668. data/rails_generators/content_block/templates/migration.rb +1 -1
  669. data/rails_generators/portlet/USAGE +3 -1
  670. data/rails_generators/portlet/portlet_generator.rb +4 -0
  671. data/rails_generators/portlet/templates/_form.html.erb +1 -2
  672. data/rails_generators/portlet/templates/portlet.rb +4 -1
  673. data/rails_generators/portlet/templates/portlet_helper.rb +5 -0
  674. data/rails_generators/template/USAGE +10 -0
  675. data/rails_generators/template/template_generator.rb +18 -0
  676. data/rails_generators/template/templates/template.erb +3 -0
  677. data/templates/blank.rb +11 -1
  678. data/templates/demo.rb +11 -1
  679. data/templates/module.rb +15 -4
  680. data/test/functional/cms/dashboard_controller_test.rb +1 -2
  681. data/test/functional/tests/pretend_controller_test.rb +54 -0
  682. data/test/integration/cms/ckeditor_test.rb +27 -0
  683. data/test/integration/cms/password_management_test.rb +56 -0
  684. data/test/test_helper.rb +14 -0
  685. data/test/unit/helpers/form_builder_test.rb +21 -2
  686. data/test/unit/helpers/menu_helper_test.rb +164 -142
  687. data/test/unit/helpers/page_helper_test.rb +11 -3
  688. data/test/unit/lib/acts_as_content_page_test.rb +72 -0
  689. data/test/unit/lib/cms/authentication/controller_test.rb +20 -0
  690. data/test/unit/lib/cms_domain_support_test.rb +43 -0
  691. data/test/unit/lib/command_line_test.rb +70 -0
  692. data/test/unit/lib/content_rendering_support_test.rb +40 -0
  693. data/test/unit/models/content_type_test.rb +19 -7
  694. data/test/unit/models/page_template_test.rb +4 -1
  695. data/test/unit/models/portlet_test.rb +49 -1
  696. data/test/unit/models/sections_test.rb +41 -2
  697. data/test/unit/models/task_test.rb +37 -22
  698. data/test/unit/models/user_test.rb +158 -55
  699. metadata +490 -378
  700. data/doc/guides/html/developer_guide.html +0 -308
  701. data/public/fckeditor/editor/css/behaviors/disablehandles.htc +0 -15
  702. data/public/fckeditor/editor/css/behaviors/showtableborders.htc +0 -36
  703. data/public/fckeditor/editor/css/fck_editorarea.css +0 -110
  704. data/public/fckeditor/editor/css/fck_internal.css +0 -199
  705. data/public/fckeditor/editor/css/fck_showtableborders_gecko.css +0 -49
  706. data/public/fckeditor/editor/css/images/fck_anchor.gif +0 -0
  707. data/public/fckeditor/editor/css/images/fck_flashlogo.gif +0 -0
  708. data/public/fckeditor/editor/css/images/fck_hiddenfield.gif +0 -0
  709. data/public/fckeditor/editor/css/images/fck_plugin.gif +0 -0
  710. data/public/fckeditor/editor/dialog/common/fck_dialog_common.css +0 -85
  711. data/public/fckeditor/editor/dialog/common/fck_dialog_common.js +0 -311
  712. data/public/fckeditor/editor/dialog/common/images/locked.gif +0 -0
  713. data/public/fckeditor/editor/dialog/common/images/reset.gif +0 -0
  714. data/public/fckeditor/editor/dialog/common/images/unlocked.gif +0 -0
  715. data/public/fckeditor/editor/dialog/fck_about.html +0 -161
  716. data/public/fckeditor/editor/dialog/fck_about/logo_fckeditor.gif +0 -0
  717. data/public/fckeditor/editor/dialog/fck_about/logo_fredck.gif +0 -0
  718. data/public/fckeditor/editor/dialog/fck_about/sponsors/spellchecker_net.gif +0 -0
  719. data/public/fckeditor/editor/dialog/fck_anchor.html +0 -220
  720. data/public/fckeditor/editor/dialog/fck_button.html +0 -104
  721. data/public/fckeditor/editor/dialog/fck_checkbox.html +0 -104
  722. data/public/fckeditor/editor/dialog/fck_colorselector.html +0 -172
  723. data/public/fckeditor/editor/dialog/fck_div.html +0 -364
  724. data/public/fckeditor/editor/dialog/fck_docprops.html +0 -600
  725. data/public/fckeditor/editor/dialog/fck_docprops/fck_document_preview.html +0 -113
  726. data/public/fckeditor/editor/dialog/fck_flash.html +0 -152
  727. data/public/fckeditor/editor/dialog/fck_flash/fck_flash.js +0 -300
  728. data/public/fckeditor/editor/dialog/fck_flash/fck_flash_preview.html +0 -50
  729. data/public/fckeditor/editor/dialog/fck_form.html +0 -109
  730. data/public/fckeditor/editor/dialog/fck_hiddenfield.html +0 -115
  731. data/public/fckeditor/editor/dialog/fck_image.html +0 -258
  732. data/public/fckeditor/editor/dialog/fck_image/fck_image.js +0 -512
  733. data/public/fckeditor/editor/dialog/fck_image/fck_image_preview.html +0 -72
  734. data/public/fckeditor/editor/dialog/fck_link.html +0 -295
  735. data/public/fckeditor/editor/dialog/fck_link/fck_link.js +0 -893
  736. data/public/fckeditor/editor/dialog/fck_listprop.html +0 -120
  737. data/public/fckeditor/editor/dialog/fck_paste.html +0 -346
  738. data/public/fckeditor/editor/dialog/fck_radiobutton.html +0 -104
  739. data/public/fckeditor/editor/dialog/fck_replace.html +0 -648
  740. data/public/fckeditor/editor/dialog/fck_select.html +0 -180
  741. data/public/fckeditor/editor/dialog/fck_select/fck_select.js +0 -194
  742. data/public/fckeditor/editor/dialog/fck_smiley.html +0 -111
  743. data/public/fckeditor/editor/dialog/fck_source.html +0 -68
  744. data/public/fckeditor/editor/dialog/fck_specialchar.html +0 -121
  745. data/public/fckeditor/editor/dialog/fck_spellerpages.html +0 -70
  746. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/blank.html +0 -0
  747. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controlWindow.js +0 -87
  748. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controls.html +0 -153
  749. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.cfm +0 -148
  750. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.php +0 -199
  751. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.pl +0 -181
  752. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellChecker.js +0 -461
  753. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellchecker.html +0 -71
  754. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellerStyle.css +0 -49
  755. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/wordWindow.js +0 -272
  756. data/public/fckeditor/editor/dialog/fck_table.html +0 -298
  757. data/public/fckeditor/editor/dialog/fck_tablecell.html +0 -257
  758. data/public/fckeditor/editor/dialog/fck_template.html +0 -242
  759. data/public/fckeditor/editor/dialog/fck_textarea.html +0 -94
  760. data/public/fckeditor/editor/dialog/fck_textfield.html +0 -136
  761. data/public/fckeditor/editor/dtd/fck_dtd_test.html +0 -41
  762. data/public/fckeditor/editor/dtd/fck_xhtml10strict.js +0 -116
  763. data/public/fckeditor/editor/dtd/fck_xhtml10transitional.js +0 -140
  764. data/public/fckeditor/editor/fckdebug.html +0 -153
  765. data/public/fckeditor/editor/fckdialog.html +0 -812
  766. data/public/fckeditor/editor/fckeditor.html +0 -317
  767. data/public/fckeditor/editor/fckeditor.original.html +0 -424
  768. data/public/fckeditor/editor/filemanager/browser/default/browser.css +0 -87
  769. data/public/fckeditor/editor/filemanager/browser/default/browser.html +0 -200
  770. data/public/fckeditor/editor/filemanager/browser/default/frmactualfolder.html +0 -95
  771. data/public/fckeditor/editor/filemanager/browser/default/frmcreatefolder.html +0 -114
  772. data/public/fckeditor/editor/filemanager/browser/default/frmfolders.html +0 -198
  773. data/public/fckeditor/editor/filemanager/browser/default/frmresourceslist.html +0 -169
  774. data/public/fckeditor/editor/filemanager/browser/default/frmresourcetype.html +0 -68
  775. data/public/fckeditor/editor/filemanager/browser/default/frmupload.html +0 -115
  776. data/public/fckeditor/editor/filemanager/browser/default/images/ButtonArrow.gif +0 -0
  777. data/public/fckeditor/editor/filemanager/browser/default/images/Folder.gif +0 -0
  778. data/public/fckeditor/editor/filemanager/browser/default/images/Folder32.gif +0 -0
  779. data/public/fckeditor/editor/filemanager/browser/default/images/FolderOpened.gif +0 -0
  780. data/public/fckeditor/editor/filemanager/browser/default/images/FolderOpened32.gif +0 -0
  781. data/public/fckeditor/editor/filemanager/browser/default/images/FolderUp.gif +0 -0
  782. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/ai.gif +0 -0
  783. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/avi.gif +0 -0
  784. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/bmp.gif +0 -0
  785. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/cs.gif +0 -0
  786. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/default.icon.gif +0 -0
  787. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/dll.gif +0 -0
  788. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/doc.gif +0 -0
  789. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/exe.gif +0 -0
  790. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/fla.gif +0 -0
  791. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/gif.gif +0 -0
  792. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/htm.gif +0 -0
  793. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/html.gif +0 -0
  794. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/jpg.gif +0 -0
  795. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/js.gif +0 -0
  796. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/mdb.gif +0 -0
  797. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/mp3.gif +0 -0
  798. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/pdf.gif +0 -0
  799. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/png.gif +0 -0
  800. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/ppt.gif +0 -0
  801. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/rdp.gif +0 -0
  802. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/swf.gif +0 -0
  803. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/swt.gif +0 -0
  804. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/txt.gif +0 -0
  805. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/vsd.gif +0 -0
  806. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/xls.gif +0 -0
  807. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/xml.gif +0 -0
  808. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/zip.gif +0 -0
  809. data/public/fckeditor/editor/filemanager/browser/default/images/icons/ai.gif +0 -0
  810. data/public/fckeditor/editor/filemanager/browser/default/images/icons/avi.gif +0 -0
  811. data/public/fckeditor/editor/filemanager/browser/default/images/icons/bmp.gif +0 -0
  812. data/public/fckeditor/editor/filemanager/browser/default/images/icons/cs.gif +0 -0
  813. data/public/fckeditor/editor/filemanager/browser/default/images/icons/default.icon.gif +0 -0
  814. data/public/fckeditor/editor/filemanager/browser/default/images/icons/dll.gif +0 -0
  815. data/public/fckeditor/editor/filemanager/browser/default/images/icons/doc.gif +0 -0
  816. data/public/fckeditor/editor/filemanager/browser/default/images/icons/exe.gif +0 -0
  817. data/public/fckeditor/editor/filemanager/browser/default/images/icons/fla.gif +0 -0
  818. data/public/fckeditor/editor/filemanager/browser/default/images/icons/gif.gif +0 -0
  819. data/public/fckeditor/editor/filemanager/browser/default/images/icons/htm.gif +0 -0
  820. data/public/fckeditor/editor/filemanager/browser/default/images/icons/html.gif +0 -0
  821. data/public/fckeditor/editor/filemanager/browser/default/images/icons/jpg.gif +0 -0
  822. data/public/fckeditor/editor/filemanager/browser/default/images/icons/js.gif +0 -0
  823. data/public/fckeditor/editor/filemanager/browser/default/images/icons/mdb.gif +0 -0
  824. data/public/fckeditor/editor/filemanager/browser/default/images/icons/mp3.gif +0 -0
  825. data/public/fckeditor/editor/filemanager/browser/default/images/icons/pdf.gif +0 -0
  826. data/public/fckeditor/editor/filemanager/browser/default/images/icons/png.gif +0 -0
  827. data/public/fckeditor/editor/filemanager/browser/default/images/icons/ppt.gif +0 -0
  828. data/public/fckeditor/editor/filemanager/browser/default/images/icons/rdp.gif +0 -0
  829. data/public/fckeditor/editor/filemanager/browser/default/images/icons/swf.gif +0 -0
  830. data/public/fckeditor/editor/filemanager/browser/default/images/icons/swt.gif +0 -0
  831. data/public/fckeditor/editor/filemanager/browser/default/images/icons/txt.gif +0 -0
  832. data/public/fckeditor/editor/filemanager/browser/default/images/icons/vsd.gif +0 -0
  833. data/public/fckeditor/editor/filemanager/browser/default/images/icons/xls.gif +0 -0
  834. data/public/fckeditor/editor/filemanager/browser/default/images/icons/xml.gif +0 -0
  835. data/public/fckeditor/editor/filemanager/browser/default/images/icons/zip.gif +0 -0
  836. data/public/fckeditor/editor/filemanager/browser/default/images/spacer.gif +0 -0
  837. data/public/fckeditor/editor/filemanager/browser/default/js/common.js +0 -88
  838. data/public/fckeditor/editor/filemanager/browser/default/js/fckxml.js +0 -147
  839. data/public/fckeditor/editor/images/arrow_ltr.gif +0 -0
  840. data/public/fckeditor/editor/images/arrow_rtl.gif +0 -0
  841. data/public/fckeditor/editor/images/smiley/msn/angel_smile.gif +0 -0
  842. data/public/fckeditor/editor/images/smiley/msn/angry_smile.gif +0 -0
  843. data/public/fckeditor/editor/images/smiley/msn/broken_heart.gif +0 -0
  844. data/public/fckeditor/editor/images/smiley/msn/cake.gif +0 -0
  845. data/public/fckeditor/editor/images/smiley/msn/confused_smile.gif +0 -0
  846. data/public/fckeditor/editor/images/smiley/msn/cry_smile.gif +0 -0
  847. data/public/fckeditor/editor/images/smiley/msn/devil_smile.gif +0 -0
  848. data/public/fckeditor/editor/images/smiley/msn/embaressed_smile.gif +0 -0
  849. data/public/fckeditor/editor/images/smiley/msn/envelope.gif +0 -0
  850. data/public/fckeditor/editor/images/smiley/msn/heart.gif +0 -0
  851. data/public/fckeditor/editor/images/smiley/msn/kiss.gif +0 -0
  852. data/public/fckeditor/editor/images/smiley/msn/lightbulb.gif +0 -0
  853. data/public/fckeditor/editor/images/smiley/msn/omg_smile.gif +0 -0
  854. data/public/fckeditor/editor/images/smiley/msn/regular_smile.gif +0 -0
  855. data/public/fckeditor/editor/images/smiley/msn/sad_smile.gif +0 -0
  856. data/public/fckeditor/editor/images/smiley/msn/shades_smile.gif +0 -0
  857. data/public/fckeditor/editor/images/smiley/msn/teeth_smile.gif +0 -0
  858. data/public/fckeditor/editor/images/smiley/msn/thumbs_down.gif +0 -0
  859. data/public/fckeditor/editor/images/smiley/msn/thumbs_up.gif +0 -0
  860. data/public/fckeditor/editor/images/smiley/msn/tounge_smile.gif +0 -0
  861. data/public/fckeditor/editor/images/smiley/msn/whatchutalkingabout_smile.gif +0 -0
  862. data/public/fckeditor/editor/images/smiley/msn/wink_smile.gif +0 -0
  863. data/public/fckeditor/editor/images/spacer.gif +0 -0
  864. data/public/fckeditor/editor/js/fckadobeair.js +0 -176
  865. data/public/fckeditor/editor/js/fckeditorcode_gecko.js +0 -108
  866. data/public/fckeditor/editor/js/fckeditorcode_ie.js +0 -109
  867. data/public/fckeditor/editor/lang/_translationstatus.txt +0 -78
  868. data/public/fckeditor/editor/lang/af.js +0 -526
  869. data/public/fckeditor/editor/lang/ar.js +0 -526
  870. data/public/fckeditor/editor/lang/bg.js +0 -526
  871. data/public/fckeditor/editor/lang/bn.js +0 -526
  872. data/public/fckeditor/editor/lang/bs.js +0 -526
  873. data/public/fckeditor/editor/lang/ca.js +0 -526
  874. data/public/fckeditor/editor/lang/cs.js +0 -526
  875. data/public/fckeditor/editor/lang/da.js +0 -526
  876. data/public/fckeditor/editor/lang/de.js +0 -526
  877. data/public/fckeditor/editor/lang/el.js +0 -526
  878. data/public/fckeditor/editor/lang/en-au.js +0 -526
  879. data/public/fckeditor/editor/lang/en-ca.js +0 -526
  880. data/public/fckeditor/editor/lang/en-uk.js +0 -526
  881. data/public/fckeditor/editor/lang/en.js +0 -526
  882. data/public/fckeditor/editor/lang/eo.js +0 -526
  883. data/public/fckeditor/editor/lang/es.js +0 -526
  884. data/public/fckeditor/editor/lang/et.js +0 -526
  885. data/public/fckeditor/editor/lang/eu.js +0 -527
  886. data/public/fckeditor/editor/lang/fa.js +0 -526
  887. data/public/fckeditor/editor/lang/fi.js +0 -526
  888. data/public/fckeditor/editor/lang/fo.js +0 -526
  889. data/public/fckeditor/editor/lang/fr-ca.js +0 -526
  890. data/public/fckeditor/editor/lang/fr.js +0 -526
  891. data/public/fckeditor/editor/lang/gl.js +0 -526
  892. data/public/fckeditor/editor/lang/gu.js +0 -526
  893. data/public/fckeditor/editor/lang/he.js +0 -526
  894. data/public/fckeditor/editor/lang/hi.js +0 -526
  895. data/public/fckeditor/editor/lang/hr.js +0 -526
  896. data/public/fckeditor/editor/lang/hu.js +0 -526
  897. data/public/fckeditor/editor/lang/it.js +0 -526
  898. data/public/fckeditor/editor/lang/ja.js +0 -526
  899. data/public/fckeditor/editor/lang/km.js +0 -526
  900. data/public/fckeditor/editor/lang/ko.js +0 -526
  901. data/public/fckeditor/editor/lang/lt.js +0 -526
  902. data/public/fckeditor/editor/lang/lv.js +0 -526
  903. data/public/fckeditor/editor/lang/mn.js +0 -526
  904. data/public/fckeditor/editor/lang/ms.js +0 -526
  905. data/public/fckeditor/editor/lang/nb.js +0 -526
  906. data/public/fckeditor/editor/lang/nl.js +0 -526
  907. data/public/fckeditor/editor/lang/no.js +0 -526
  908. data/public/fckeditor/editor/lang/pl.js +0 -526
  909. data/public/fckeditor/editor/lang/pt-br.js +0 -526
  910. data/public/fckeditor/editor/lang/pt.js +0 -526
  911. data/public/fckeditor/editor/lang/ro.js +0 -526
  912. data/public/fckeditor/editor/lang/ru.js +0 -526
  913. data/public/fckeditor/editor/lang/sk.js +0 -526
  914. data/public/fckeditor/editor/lang/sl.js +0 -526
  915. data/public/fckeditor/editor/lang/sr-latn.js +0 -526
  916. data/public/fckeditor/editor/lang/sr.js +0 -526
  917. data/public/fckeditor/editor/lang/sv.js +0 -526
  918. data/public/fckeditor/editor/lang/th.js +0 -526
  919. data/public/fckeditor/editor/lang/tr.js +0 -526
  920. data/public/fckeditor/editor/lang/uk.js +0 -526
  921. data/public/fckeditor/editor/lang/vi.js +0 -526
  922. data/public/fckeditor/editor/lang/zh-cn.js +0 -526
  923. data/public/fckeditor/editor/lang/zh.js +0 -526
  924. data/public/fckeditor/editor/plugins/autogrow/fckplugin.js +0 -99
  925. data/public/fckeditor/editor/plugins/bbcode/_sample/sample.config.js +0 -26
  926. data/public/fckeditor/editor/plugins/bbcode/_sample/sample.html +0 -67
  927. data/public/fckeditor/editor/plugins/bbcode/fckplugin.js +0 -123
  928. data/public/fckeditor/editor/plugins/dragresizetable/fckplugin.js +0 -524
  929. data/public/fckeditor/editor/plugins/placeholder/fck_placeholder.html +0 -105
  930. data/public/fckeditor/editor/plugins/placeholder/fckplugin.js +0 -187
  931. data/public/fckeditor/editor/plugins/placeholder/lang/de.js +0 -27
  932. data/public/fckeditor/editor/plugins/placeholder/lang/en.js +0 -27
  933. data/public/fckeditor/editor/plugins/placeholder/lang/es.js +0 -27
  934. data/public/fckeditor/editor/plugins/placeholder/lang/fr.js +0 -27
  935. data/public/fckeditor/editor/plugins/placeholder/lang/it.js +0 -27
  936. data/public/fckeditor/editor/plugins/placeholder/lang/pl.js +0 -27
  937. data/public/fckeditor/editor/plugins/placeholder/placeholder.gif +0 -0
  938. data/public/fckeditor/editor/plugins/simplecommands/fckplugin.js +0 -29
  939. data/public/fckeditor/editor/plugins/tablecommands/fckplugin.js +0 -33
  940. data/public/fckeditor/editor/skins/_fckviewstrips.html +0 -121
  941. data/public/fckeditor/editor/skins/default/fck_dialog.css +0 -402
  942. data/public/fckeditor/editor/skins/default/fck_dialog_ie6.js +0 -110
  943. data/public/fckeditor/editor/skins/default/fck_editor.css +0 -464
  944. data/public/fckeditor/editor/skins/default/fck_strip.gif +0 -0
  945. data/public/fckeditor/editor/skins/default/images/sprites.gif +0 -0
  946. data/public/fckeditor/editor/skins/default/images/sprites.png +0 -0
  947. data/public/fckeditor/editor/skins/default/images/toolbar.arrowright.gif +0 -0
  948. data/public/fckeditor/editor/skins/default/images/toolbar.buttonarrow.gif +0 -0
  949. data/public/fckeditor/editor/skins/default/images/toolbar.collapse.gif +0 -0
  950. data/public/fckeditor/editor/skins/default/images/toolbar.end.gif +0 -0
  951. data/public/fckeditor/editor/skins/default/images/toolbar.expand.gif +0 -0
  952. data/public/fckeditor/editor/skins/default/images/toolbar.separator.gif +0 -0
  953. data/public/fckeditor/editor/skins/office2003/fck_dialog.css +0 -402
  954. data/public/fckeditor/editor/skins/office2003/fck_dialog_ie6.js +0 -110
  955. data/public/fckeditor/editor/skins/office2003/fck_editor.css +0 -476
  956. data/public/fckeditor/editor/skins/office2003/fck_strip.gif +0 -0
  957. data/public/fckeditor/editor/skins/office2003/images/dialog.sides.gif +0 -0
  958. data/public/fckeditor/editor/skins/office2003/images/dialog.sides.png +0 -0
  959. data/public/fckeditor/editor/skins/office2003/images/dialog.sides.rtl.png +0 -0
  960. data/public/fckeditor/editor/skins/office2003/images/sprites.gif +0 -0
  961. data/public/fckeditor/editor/skins/office2003/images/sprites.png +0 -0
  962. data/public/fckeditor/editor/skins/office2003/images/toolbar.arrowright.gif +0 -0
  963. data/public/fckeditor/editor/skins/office2003/images/toolbar.bg.gif +0 -0
  964. data/public/fckeditor/editor/skins/office2003/images/toolbar.buttonarrow.gif +0 -0
  965. data/public/fckeditor/editor/skins/office2003/images/toolbar.collapse.gif +0 -0
  966. data/public/fckeditor/editor/skins/office2003/images/toolbar.end.gif +0 -0
  967. data/public/fckeditor/editor/skins/office2003/images/toolbar.expand.gif +0 -0
  968. data/public/fckeditor/editor/skins/office2003/images/toolbar.separator.gif +0 -0
  969. data/public/fckeditor/editor/skins/office2003/images/toolbar.start.gif +0 -0
  970. data/public/fckeditor/editor/skins/silver/fck_dialog.css +0 -402
  971. data/public/fckeditor/editor/skins/silver/fck_dialog_ie6.js +0 -110
  972. data/public/fckeditor/editor/skins/silver/fck_editor.css +0 -473
  973. data/public/fckeditor/editor/skins/silver/fck_strip.gif +0 -0
  974. data/public/fckeditor/editor/skins/silver/images/dialog.sides.gif +0 -0
  975. data/public/fckeditor/editor/skins/silver/images/dialog.sides.png +0 -0
  976. data/public/fckeditor/editor/skins/silver/images/dialog.sides.rtl.png +0 -0
  977. data/public/fckeditor/editor/skins/silver/images/sprites.gif +0 -0
  978. data/public/fckeditor/editor/skins/silver/images/sprites.png +0 -0
  979. data/public/fckeditor/editor/skins/silver/images/toolbar.arrowright.gif +0 -0
  980. data/public/fckeditor/editor/skins/silver/images/toolbar.buttonarrow.gif +0 -0
  981. data/public/fckeditor/editor/skins/silver/images/toolbar.buttonbg.gif +0 -0
  982. data/public/fckeditor/editor/skins/silver/images/toolbar.collapse.gif +0 -0
  983. data/public/fckeditor/editor/skins/silver/images/toolbar.end.gif +0 -0
  984. data/public/fckeditor/editor/skins/silver/images/toolbar.expand.gif +0 -0
  985. data/public/fckeditor/editor/skins/silver/images/toolbar.separator.gif +0 -0
  986. data/public/fckeditor/fckconfig.js +0 -364
  987. data/public/fckeditor/fckdebug.html +0 -153
  988. data/public/fckeditor/fckdialog.html +0 -812
  989. data/public/fckeditor/fckeditor.html +0 -317
  990. data/public/fckeditor/fckeditor.js +0 -328
  991. data/public/fckeditor/fckeditor.original.html +0 -424
  992. data/public/fckeditor/fckpackager.xml +0 -262
  993. data/public/fckeditor/fckstyles.xml +0 -111
  994. data/public/fckeditor/fcktemplates.xml +0 -103
  995. data/public/javascripts/cms/editor.js +0 -56
@@ -1,72 +0,0 @@
1
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2
- <!--
3
- * FCKeditor - The text editor for Internet - http://www.fckeditor.net
4
- * Copyright (C) 2003-2008 Frederico Caldeira Knabben
5
- *
6
- * == BEGIN LICENSE ==
7
- *
8
- * Licensed under the terms of any of the following licenses at your
9
- * choice:
10
- *
11
- * - GNU General Public License Version 2 or later (the "GPL")
12
- * http://www.gnu.org/licenses/gpl.html
13
- *
14
- * - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
15
- * http://www.gnu.org/licenses/lgpl.html
16
- *
17
- * - Mozilla Public License Version 1.1 or later (the "MPL")
18
- * http://www.mozilla.org/MPL/MPL-1.1.html
19
- *
20
- * == END LICENSE ==
21
- *
22
- * Preview page for the Image dialog window.
23
- *
24
- * Curiosity: http://en.wikipedia.org/wiki/Lorem_ipsum
25
- -->
26
- <html xmlns="http://www.w3.org/1999/xhtml">
27
- <head>
28
- <title></title>
29
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
- <meta name="robots" content="noindex, nofollow" />
31
- <script src="../common/fck_dialog_common.js" type="text/javascript"></script>
32
- <script type="text/javascript">
33
-
34
- var FCKTools = window.parent.FCKTools ;
35
- var FCKConfig = window.parent.FCKConfig ;
36
-
37
- // Set the preview CSS
38
- document.write( FCKTools.GetStyleHtml( FCKConfig.EditorAreaCSS ) ) ;
39
- document.write( FCKTools.GetStyleHtml( FCKConfig.EditorAreaStyles ) ) ;
40
-
41
- if ( window.parent.FCKConfig.BaseHref.length > 0 )
42
- document.write( '<base href="' + window.parent.FCKConfig.BaseHref + '">' ) ;
43
-
44
- window.onload = function()
45
- {
46
- window.parent.SetPreviewElements(
47
- document.getElementById( 'imgPreview' ),
48
- document.getElementById( 'lnkPreview' ) ) ;
49
- }
50
-
51
- </script>
52
- </head>
53
- <body>
54
- <div>
55
- <a id="lnkPreview" onclick="return false;" style="cursor: default">
56
- <img id="imgPreview" onload="window.parent.UpdateOriginal();"
57
- style="display: none" alt="" /></a>Lorem ipsum dolor sit amet, consectetuer adipiscing
58
- elit. Maecenas feugiat consequat diam. Maecenas metus. Vivamus diam purus, cursus
59
- a, commodo non, facilisis vitae, nulla. Aenean dictum lacinia tortor. Nunc iaculis,
60
- nibh non iaculis aliquam, orci felis euismod neque, sed ornare massa mauris sed
61
- velit. Nulla pretium mi et risus. Fusce mi pede, tempor id, cursus ac, ullamcorper
62
- nec, enim. Sed tortor. Curabitur molestie. Duis velit augue, condimentum at, ultrices
63
- a, luctus ut, orci. Donec pellentesque egestas eros. Integer cursus, augue in cursus
64
- faucibus, eros pede bibendum sem, in tempus tellus justo quis ligula. Etiam eget
65
- tortor. Vestibulum rutrum, est ut placerat elementum, lectus nisl aliquam velit,
66
- tempor aliquam eros nunc nonummy metus. In eros metus, gravida a, gravida sed, lobortis
67
- id, turpis. Ut ultrices, ipsum at venenatis fringilla, sem nulla lacinia tellus,
68
- eget aliquet turpis mauris non enim. Nam turpis. Suspendisse lacinia. Curabitur
69
- ac tortor ut ipsum egestas elementum. Nunc imperdiet gravida mauris.
70
- </div>
71
- </body>
72
- </html>
@@ -1,295 +0,0 @@
1
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2
- <!--
3
- * FCKeditor - The text editor for Internet - http://www.fckeditor.net
4
- * Copyright (C) 2003-2008 Frederico Caldeira Knabben
5
- *
6
- * == BEGIN LICENSE ==
7
- *
8
- * Licensed under the terms of any of the following licenses at your
9
- * choice:
10
- *
11
- * - GNU General Public License Version 2 or later (the "GPL")
12
- * http://www.gnu.org/licenses/gpl.html
13
- *
14
- * - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
15
- * http://www.gnu.org/licenses/lgpl.html
16
- *
17
- * - Mozilla Public License Version 1.1 or later (the "MPL")
18
- * http://www.mozilla.org/MPL/MPL-1.1.html
19
- *
20
- * == END LICENSE ==
21
- *
22
- * Link dialog window.
23
- -->
24
- <html>
25
- <head>
26
- <title>Link Properties</title>
27
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
28
- <meta name="robots" content="noindex, nofollow" />
29
- <script src="common/fck_dialog_common.js" type="text/javascript"></script>
30
- <script src="fck_link/fck_link.js" type="text/javascript"></script>
31
- </head>
32
- <body scroll="no" style="OVERFLOW: hidden">
33
- <div id="divInfo" style="DISPLAY: none">
34
- <span fckLang="DlgLnkType">Link Type</span><br />
35
- <select id="cmbLinkType" onchange="SetLinkType(this.value);">
36
- <option value="url" fckLang="DlgLnkTypeURL" selected="selected">URL</option>
37
- <option value="anchor" fckLang="DlgLnkTypeAnchor">Anchor in this page</option>
38
- <option value="email" fckLang="DlgLnkTypeEMail">E-Mail</option>
39
- </select>
40
- <br />
41
- <br />
42
- <div id="divLinkTypeUrl">
43
- <table cellspacing="0" cellpadding="0" width="100%" border="0" dir="ltr">
44
- <tr>
45
- <td nowrap="nowrap">
46
- <span fckLang="DlgLnkProto">Protocol</span><br />
47
- <select id="cmbLinkProtocol">
48
- <option value="http://" selected="selected">http://</option>
49
- <option value="https://">https://</option>
50
- <option value="ftp://">ftp://</option>
51
- <option value="news://">news://</option>
52
- <option value="" fckLang="DlgLnkProtoOther">&lt;other&gt;</option>
53
- </select>
54
- </td>
55
- <td nowrap="nowrap">&nbsp;</td>
56
- <td nowrap="nowrap" width="100%">
57
- <span fckLang="DlgLnkURL">URL</span><br />
58
- <input id="txtUrl" style="WIDTH: 100%" type="text" onkeyup="OnUrlChange();" onchange="OnUrlChange();" />
59
- </td>
60
- </tr>
61
- </table>
62
- <br />
63
- <div id="divBrowseServer">
64
- <input type="button" value="Browse Server" fckLang="DlgBtnBrowseServer" onclick="BrowseServer();" />
65
- </div>
66
- </div>
67
- <div id="divLinkTypeAnchor" style="DISPLAY: none" align="center">
68
- <div id="divSelAnchor" style="DISPLAY: none">
69
- <table cellspacing="0" cellpadding="0" border="0" width="70%">
70
- <tr>
71
- <td colspan="3">
72
- <span fckLang="DlgLnkAnchorSel">Select an Anchor</span>
73
- </td>
74
- </tr>
75
- <tr>
76
- <td width="50%">
77
- <span fckLang="DlgLnkAnchorByName">By Anchor Name</span><br />
78
- <select id="cmbAnchorName" onchange="GetE('cmbAnchorId').value='';" style="WIDTH: 100%">
79
- <option value="" selected="selected"></option>
80
- </select>
81
- </td>
82
- <td>&nbsp;&nbsp;&nbsp;</td>
83
- <td width="50%">
84
- <span fckLang="DlgLnkAnchorById">By Element Id</span><br />
85
- <select id="cmbAnchorId" onchange="GetE('cmbAnchorName').value='';" style="WIDTH: 100%">
86
- <option value="" selected="selected"></option>
87
- </select>
88
- </td>
89
- </tr>
90
- </table>
91
- </div>
92
- <div id="divNoAnchor" style="DISPLAY: none">
93
- <span fckLang="DlgLnkNoAnchors">&lt;No anchors available in the document&gt;</span>
94
- </div>
95
- </div>
96
- <div id="divLinkTypeEMail" style="DISPLAY: none">
97
- <span fckLang="DlgLnkEMail">E-Mail Address</span><br />
98
- <input id="txtEMailAddress" style="WIDTH: 100%" type="text" /><br />
99
- <span fckLang="DlgLnkEMailSubject">Message Subject</span><br />
100
- <input id="txtEMailSubject" style="WIDTH: 100%" type="text" /><br />
101
- <span fckLang="DlgLnkEMailBody">Message Body</span><br />
102
- <textarea id="txtEMailBody" style="WIDTH: 100%" rows="3" cols="20"></textarea>
103
- </div>
104
- </div>
105
- <div id="divUpload" style="DISPLAY: none">
106
- <form id="frmUpload" method="post" target="UploadWindow" enctype="multipart/form-data" action="" onsubmit="return CheckUpload();">
107
- <span fckLang="DlgLnkUpload">Upload</span><br />
108
- <input id="txtUploadFile" style="WIDTH: 100%" type="file" size="40" name="NewFile" /><br />
109
- <br />
110
- <input id="btnUpload" type="submit" value="Send it to the Server" fckLang="DlgLnkBtnUpload" />
111
- <script type="text/javascript">
112
- document.write( '<iframe name="UploadWindow" style="display: none" src="' + FCKTools.GetVoidUrl() + '"><\/iframe>' ) ;
113
- </script>
114
- </form>
115
- </div>
116
- <div id="divTarget" style="DISPLAY: none">
117
- <table cellspacing="0" cellpadding="0" width="100%" border="0">
118
- <tr>
119
- <td nowrap="nowrap">
120
- <span fckLang="DlgLnkTarget">Target</span><br />
121
- <select id="cmbTarget" onchange="SetTarget(this.value);">
122
- <option value="" fckLang="DlgGenNotSet" selected="selected">&lt;not set&gt;</option>
123
- <option value="frame" fckLang="DlgLnkTargetFrame">&lt;frame&gt;</option>
124
- <option value="popup" fckLang="DlgLnkTargetPopup">&lt;popup window&gt;</option>
125
- <option value="_blank" fckLang="DlgLnkTargetBlank">New Window (_blank)</option>
126
- <option value="_top" fckLang="DlgLnkTargetTop">Topmost Window (_top)</option>
127
- <option value="_self" fckLang="DlgLnkTargetSelf">Same Window (_self)</option>
128
- <option value="_parent" fckLang="DlgLnkTargetParent">Parent Window (_parent)</option>
129
- </select>
130
- </td>
131
- <td>&nbsp;</td>
132
- <td id="tdTargetFrame" nowrap="nowrap" width="100%">
133
- <span fckLang="DlgLnkTargetFrameName">Target Frame Name</span><br />
134
- <input id="txtTargetFrame" style="WIDTH: 100%" type="text" onkeyup="OnTargetNameChange();"
135
- onchange="OnTargetNameChange();" />
136
- </td>
137
- <td id="tdPopupName" style="DISPLAY: none" nowrap="nowrap" width="100%">
138
- <span fckLang="DlgLnkPopWinName">Popup Window Name</span><br />
139
- <input id="txtPopupName" style="WIDTH: 100%" type="text" />
140
- </td>
141
- </tr>
142
- </table>
143
- <br />
144
- <table id="tablePopupFeatures" style="DISPLAY: none" cellspacing="0" cellpadding="0" align="center"
145
- border="0">
146
- <tr>
147
- <td>
148
- <span fckLang="DlgLnkPopWinFeat">Popup Window Features</span><br />
149
- <table cellspacing="0" cellpadding="0" border="0">
150
- <tr>
151
- <td valign="top" nowrap="nowrap" width="50%">
152
- <input id="chkPopupResizable" name="chkFeature" value="resizable" type="checkbox" /><label for="chkPopupResizable" fckLang="DlgLnkPopResize">Resizable</label><br />
153
- <input id="chkPopupLocationBar" name="chkFeature" value="location" type="checkbox" /><label for="chkPopupLocationBar" fckLang="DlgLnkPopLocation">Location
154
- Bar</label><br />
155
- <input id="chkPopupManuBar" name="chkFeature" value="menubar" type="checkbox" /><label for="chkPopupManuBar" fckLang="DlgLnkPopMenu">Menu
156
- Bar</label><br />
157
- <input id="chkPopupScrollBars" name="chkFeature" value="scrollbars" type="checkbox" /><label for="chkPopupScrollBars" fckLang="DlgLnkPopScroll">Scroll
158
- Bars</label>
159
- </td>
160
- <td></td>
161
- <td valign="top" nowrap="nowrap" width="50%">
162
- <input id="chkPopupStatusBar" name="chkFeature" value="status" type="checkbox" /><label for="chkPopupStatusBar" fckLang="DlgLnkPopStatus">Status
163
- Bar</label><br />
164
- <input id="chkPopupToolbar" name="chkFeature" value="toolbar" type="checkbox" /><label for="chkPopupToolbar" fckLang="DlgLnkPopToolbar">Toolbar</label><br />
165
- <input id="chkPopupFullScreen" name="chkFeature" value="fullscreen" type="checkbox" /><label for="chkPopupFullScreen" fckLang="DlgLnkPopFullScrn">Full
166
- Screen (IE)</label><br />
167
- <input id="chkPopupDependent" name="chkFeature" value="dependent" type="checkbox" /><label for="chkPopupDependent" fckLang="DlgLnkPopDependent">Dependent
168
- (Netscape)</label>
169
- </td>
170
- </tr>
171
- <tr>
172
- <td valign="top" nowrap="nowrap" width="50%">&nbsp;</td>
173
- <td></td>
174
- <td valign="top" nowrap="nowrap" width="50%"></td>
175
- </tr>
176
- <tr>
177
- <td valign="top">
178
- <table cellspacing="0" cellpadding="0" border="0">
179
- <tr>
180
- <td nowrap="nowrap"><span fckLang="DlgLnkPopWidth">Width</span></td>
181
- <td>&nbsp;<input id="txtPopupWidth" type="text" maxlength="4" size="4" /></td>
182
- </tr>
183
- <tr>
184
- <td nowrap="nowrap"><span fckLang="DlgLnkPopHeight">Height</span></td>
185
- <td>&nbsp;<input id="txtPopupHeight" type="text" maxlength="4" size="4" /></td>
186
- </tr>
187
- </table>
188
- </td>
189
- <td>&nbsp;&nbsp;</td>
190
- <td valign="top">
191
- <table cellspacing="0" cellpadding="0" border="0">
192
- <tr>
193
- <td nowrap="nowrap"><span fckLang="DlgLnkPopLeft">Left Position</span></td>
194
- <td>&nbsp;<input id="txtPopupLeft" type="text" maxlength="4" size="4" /></td>
195
- </tr>
196
- <tr>
197
- <td nowrap="nowrap"><span fckLang="DlgLnkPopTop">Top Position</span></td>
198
- <td>&nbsp;<input id="txtPopupTop" type="text" maxlength="4" size="4" /></td>
199
- </tr>
200
- </table>
201
- </td>
202
- </tr>
203
- </table>
204
- </td>
205
- </tr>
206
- </table>
207
- </div>
208
- <div id="divAttribs" style="DISPLAY: none">
209
- <table cellspacing="0" cellpadding="0" width="100%" align="center" border="0">
210
- <tr>
211
- <td valign="top" width="50%">
212
- <span fckLang="DlgGenId">Id</span><br />
213
- <input id="txtAttId" style="WIDTH: 100%" type="text" />
214
- </td>
215
- <td width="1"></td>
216
- <td valign="top">
217
- <table cellspacing="0" cellpadding="0" width="100%" align="center" border="0">
218
- <tr>
219
- <td width="60%">
220
- <span fckLang="DlgGenLangDir">Language Direction</span><br />
221
- <select id="cmbAttLangDir" style="WIDTH: 100%">
222
- <option value="" fckLang="DlgGenNotSet" selected>&lt;not set&gt;</option>
223
- <option value="ltr" fckLang="DlgGenLangDirLtr">Left to Right (LTR)</option>
224
- <option value="rtl" fckLang="DlgGenLangDirRtl">Right to Left (RTL)</option>
225
- </select>
226
- </td>
227
- <td width="1%">&nbsp;&nbsp;&nbsp;</td>
228
- <td nowrap="nowrap"><span fckLang="DlgGenAccessKey">Access Key</span><br />
229
- <input id="txtAttAccessKey" style="WIDTH: 100%" type="text" maxlength="1" size="1" />
230
- </td>
231
- </tr>
232
- </table>
233
- </td>
234
- </tr>
235
- <tr>
236
- <td valign="top" width="50%">
237
- <span fckLang="DlgGenName">Name</span><br />
238
- <input id="txtAttName" style="WIDTH: 100%" type="text" />
239
- </td>
240
- <td width="1"></td>
241
- <td valign="top">
242
- <table cellspacing="0" cellpadding="0" width="100%" align="center" border="0">
243
- <tr>
244
- <td width="60%">
245
- <span fckLang="DlgGenLangCode">Language Code</span><br />
246
- <input id="txtAttLangCode" style="WIDTH: 100%" type="text" />
247
- </td>
248
- <td width="1%">&nbsp;&nbsp;&nbsp;</td>
249
- <td nowrap="nowrap">
250
- <span fckLang="DlgGenTabIndex">Tab Index</span><br />
251
- <input id="txtAttTabIndex" style="WIDTH: 100%" type="text" maxlength="5" size="5" />
252
- </td>
253
- </tr>
254
- </table>
255
- </td>
256
- </tr>
257
- <tr>
258
- <td valign="top" width="50%">&nbsp;</td>
259
- <td width="1"></td>
260
- <td valign="top"></td>
261
- </tr>
262
- <tr>
263
- <td valign="top" width="50%">
264
- <span fckLang="DlgGenTitle">Advisory Title</span><br />
265
- <input id="txtAttTitle" style="WIDTH: 100%" type="text" />
266
- </td>
267
- <td width="1">&nbsp;&nbsp;&nbsp;</td>
268
- <td valign="top">
269
- <span fckLang="DlgGenContType">Advisory Content Type</span><br />
270
- <input id="txtAttContentType" style="WIDTH: 100%" type="text" />
271
- </td>
272
- </tr>
273
- <tr>
274
- <td valign="top">
275
- <span fckLang="DlgGenClass">Stylesheet Classes</span><br />
276
- <input id="txtAttClasses" style="WIDTH: 100%" type="text" />
277
- </td>
278
- <td></td>
279
- <td valign="top">
280
- <span fckLang="DlgGenLinkCharset">Linked Resource Charset</span><br />
281
- <input id="txtAttCharSet" style="WIDTH: 100%" type="text" />
282
- </td>
283
- </tr>
284
- </table>
285
- <table cellspacing="0" cellpadding="0" width="100%" align="center" border="0">
286
- <tr>
287
- <td>
288
- <span fckLang="DlgGenStyle">Style</span><br />
289
- <input id="txtAttStyle" style="WIDTH: 100%" type="text" />
290
- </td>
291
- </tr>
292
- </table>
293
- </div>
294
- </body>
295
- </html>
@@ -1,893 +0,0 @@
1
- /*
2
- * FCKeditor - The text editor for Internet - http://www.fckeditor.net
3
- * Copyright (C) 2003-2008 Frederico Caldeira Knabben
4
- *
5
- * == BEGIN LICENSE ==
6
- *
7
- * Licensed under the terms of any of the following licenses at your
8
- * choice:
9
- *
10
- * - GNU General Public License Version 2 or later (the "GPL")
11
- * http://www.gnu.org/licenses/gpl.html
12
- *
13
- * - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
14
- * http://www.gnu.org/licenses/lgpl.html
15
- *
16
- * - Mozilla Public License Version 1.1 or later (the "MPL")
17
- * http://www.mozilla.org/MPL/MPL-1.1.html
18
- *
19
- * == END LICENSE ==
20
- *
21
- * Scripts related to the Link dialog window (see fck_link.html).
22
- */
23
-
24
- var dialog = window.parent ;
25
- var oEditor = dialog.InnerDialogLoaded() ;
26
-
27
- var FCK = oEditor.FCK ;
28
- var FCKLang = oEditor.FCKLang ;
29
- var FCKConfig = oEditor.FCKConfig ;
30
- var FCKRegexLib = oEditor.FCKRegexLib ;
31
- var FCKTools = oEditor.FCKTools ;
32
-
33
- //#### Dialog Tabs
34
-
35
- // Set the dialog tabs.
36
- dialog.AddTab( 'Info', FCKLang.DlgLnkInfoTab ) ;
37
-
38
- if ( !FCKConfig.LinkDlgHideTarget )
39
- dialog.AddTab( 'Target', FCKLang.DlgLnkTargetTab, true ) ;
40
-
41
- if ( FCKConfig.LinkUpload )
42
- dialog.AddTab( 'Upload', FCKLang.DlgLnkUpload, true ) ;
43
-
44
- if ( !FCKConfig.LinkDlgHideAdvanced )
45
- dialog.AddTab( 'Advanced', FCKLang.DlgAdvancedTag ) ;
46
-
47
- // Function called when a dialog tag is selected.
48
- function OnDialogTabChange( tabCode )
49
- {
50
- ShowE('divInfo' , ( tabCode == 'Info' ) ) ;
51
- ShowE('divTarget' , ( tabCode == 'Target' ) ) ;
52
- ShowE('divUpload' , ( tabCode == 'Upload' ) ) ;
53
- ShowE('divAttribs' , ( tabCode == 'Advanced' ) ) ;
54
-
55
- dialog.SetAutoSize( true ) ;
56
- }
57
-
58
- //#### Regular Expressions library.
59
- var oRegex = new Object() ;
60
-
61
- oRegex.UriProtocol = /^(((http|https|ftp|news):\/\/)|mailto:)/gi ;
62
-
63
- oRegex.UrlOnChangeProtocol = /^(http|https|ftp|news):\/\/(?=.)/gi ;
64
-
65
- oRegex.UrlOnChangeTestOther = /^((javascript:)|[#\/\.])/gi ;
66
-
67
- oRegex.ReserveTarget = /^_(blank|self|top|parent)$/i ;
68
-
69
- oRegex.PopupUri = /^javascript:void\(\s*window.open\(\s*'([^']+)'\s*,\s*(?:'([^']*)'|null)\s*,\s*'([^']*)'\s*\)\s*\)\s*$/ ;
70
-
71
- // Accessible popups
72
- oRegex.OnClickPopup = /^\s*on[cC]lick="\s*window.open\(\s*this\.href\s*,\s*(?:'([^']*)'|null)\s*,\s*'([^']*)'\s*\)\s*;\s*return\s*false;*\s*"$/ ;
73
-
74
- oRegex.PopupFeatures = /(?:^|,)([^=]+)=(\d+|yes|no)/gi ;
75
-
76
- //#### Parser Functions
77
-
78
- var oParser = new Object() ;
79
-
80
- // This method simply returns the two inputs in numerical order. You can even
81
- // provide strings, as the method would parseInt() the values.
82
- oParser.SortNumerical = function(a, b)
83
- {
84
- return parseInt( a, 10 ) - parseInt( b, 10 ) ;
85
- }
86
-
87
- oParser.ParseEMailParams = function(sParams)
88
- {
89
- // Initialize the oEMailParams object.
90
- var oEMailParams = new Object() ;
91
- oEMailParams.Subject = '' ;
92
- oEMailParams.Body = '' ;
93
-
94
- var aMatch = sParams.match( /(^|^\?|&)subject=([^&]+)/i ) ;
95
- if ( aMatch ) oEMailParams.Subject = decodeURIComponent( aMatch[2] ) ;
96
-
97
- aMatch = sParams.match( /(^|^\?|&)body=([^&]+)/i ) ;
98
- if ( aMatch ) oEMailParams.Body = decodeURIComponent( aMatch[2] ) ;
99
-
100
- return oEMailParams ;
101
- }
102
-
103
- // This method returns either an object containing the email info, or FALSE
104
- // if the parameter is not an email link.
105
- oParser.ParseEMailUri = function( sUrl )
106
- {
107
- // Initializes the EMailInfo object.
108
- var oEMailInfo = new Object() ;
109
- oEMailInfo.Address = '' ;
110
- oEMailInfo.Subject = '' ;
111
- oEMailInfo.Body = '' ;
112
-
113
- var aLinkInfo = sUrl.match( /^(\w+):(.*)$/ ) ;
114
- if ( aLinkInfo && aLinkInfo[1] == 'mailto' )
115
- {
116
- // This seems to be an unprotected email link.
117
- var aParts = aLinkInfo[2].match( /^([^\?]+)\??(.+)?/ ) ;
118
- if ( aParts )
119
- {
120
- // Set the e-mail address.
121
- oEMailInfo.Address = aParts[1] ;
122
-
123
- // Look for the optional e-mail parameters.
124
- if ( aParts[2] )
125
- {
126
- var oEMailParams = oParser.ParseEMailParams( aParts[2] ) ;
127
- oEMailInfo.Subject = oEMailParams.Subject ;
128
- oEMailInfo.Body = oEMailParams.Body ;
129
- }
130
- }
131
- return oEMailInfo ;
132
- }
133
- else if ( aLinkInfo && aLinkInfo[1] == 'javascript' )
134
- {
135
- // This may be a protected email.
136
-
137
- // Try to match the url against the EMailProtectionFunction.
138
- var func = FCKConfig.EMailProtectionFunction ;
139
- if ( func != null )
140
- {
141
- try
142
- {
143
- // Escape special chars.
144
- func = func.replace( /([\/^$*+.?()\[\]])/g, '\\$1' ) ;
145
-
146
- // Define the possible keys.
147
- var keys = new Array('NAME', 'DOMAIN', 'SUBJECT', 'BODY') ;
148
-
149
- // Get the order of the keys (hold them in the array <pos>) and
150
- // the function replaced by regular expression patterns.
151
- var sFunc = func ;
152
- var pos = new Array() ;
153
- for ( var i = 0 ; i < keys.length ; i ++ )
154
- {
155
- var rexp = new RegExp( keys[i] ) ;
156
- var p = func.search( rexp ) ;
157
- if ( p >= 0 )
158
- {
159
- sFunc = sFunc.replace( rexp, '\'([^\']*)\'' ) ;
160
- pos[pos.length] = p + ':' + keys[i] ;
161
- }
162
- }
163
-
164
- // Sort the available keys.
165
- pos.sort( oParser.SortNumerical ) ;
166
-
167
- // Replace the excaped single quotes in the url, such they do
168
- // not affect the regexp afterwards.
169
- aLinkInfo[2] = aLinkInfo[2].replace( /\\'/g, '###SINGLE_QUOTE###' ) ;
170
-
171
- // Create the regexp and execute it.
172
- var rFunc = new RegExp( '^' + sFunc + '$' ) ;
173
- var aMatch = rFunc.exec( aLinkInfo[2] ) ;
174
- if ( aMatch )
175
- {
176
- var aInfo = new Array();
177
- for ( var i = 1 ; i < aMatch.length ; i ++ )
178
- {
179
- var k = pos[i-1].match(/^\d+:(.+)$/) ;
180
- aInfo[k[1]] = aMatch[i].replace(/###SINGLE_QUOTE###/g, '\'') ;
181
- }
182
-
183
- // Fill the EMailInfo object that will be returned
184
- oEMailInfo.Address = aInfo['NAME'] + '@' + aInfo['DOMAIN'] ;
185
- oEMailInfo.Subject = decodeURIComponent( aInfo['SUBJECT'] ) ;
186
- oEMailInfo.Body = decodeURIComponent( aInfo['BODY'] ) ;
187
-
188
- return oEMailInfo ;
189
- }
190
- }
191
- catch (e)
192
- {
193
- }
194
- }
195
-
196
- // Try to match the email against the encode protection.
197
- var aMatch = aLinkInfo[2].match( /^location\.href='mailto:'\+(String\.fromCharCode\([\d,]+\))\+'(.*)'$/ ) ;
198
- if ( aMatch )
199
- {
200
- // The link is encoded
201
- oEMailInfo.Address = eval( aMatch[1] ) ;
202
- if ( aMatch[2] )
203
- {
204
- var oEMailParams = oParser.ParseEMailParams( aMatch[2] ) ;
205
- oEMailInfo.Subject = oEMailParams.Subject ;
206
- oEMailInfo.Body = oEMailParams.Body ;
207
- }
208
- return oEMailInfo ;
209
- }
210
- }
211
- return false;
212
- }
213
-
214
- oParser.CreateEMailUri = function( address, subject, body )
215
- {
216
- // Switch for the EMailProtection setting.
217
- switch ( FCKConfig.EMailProtection )
218
- {
219
- case 'function' :
220
- var func = FCKConfig.EMailProtectionFunction ;
221
- if ( func == null )
222
- {
223
- if ( FCKConfig.Debug )
224
- {
225
- alert('EMailProtection alert!\nNo function defined. Please set "FCKConfig.EMailProtectionFunction"') ;
226
- }
227
- return '';
228
- }
229
-
230
- // Split the email address into name and domain parts.
231
- var aAddressParts = address.split( '@', 2 ) ;
232
- if ( aAddressParts[1] == undefined )
233
- {
234
- aAddressParts[1] = '' ;
235
- }
236
-
237
- // Replace the keys by their values (embedded in single quotes).
238
- func = func.replace(/NAME/g, "'" + aAddressParts[0].replace(/'/g, '\\\'') + "'") ;
239
- func = func.replace(/DOMAIN/g, "'" + aAddressParts[1].replace(/'/g, '\\\'') + "'") ;
240
- func = func.replace(/SUBJECT/g, "'" + encodeURIComponent( subject ).replace(/'/g, '\\\'') + "'") ;
241
- func = func.replace(/BODY/g, "'" + encodeURIComponent( body ).replace(/'/g, '\\\'') + "'") ;
242
-
243
- return 'javascript:' + func ;
244
-
245
- case 'encode' :
246
- var aParams = [] ;
247
- var aAddressCode = [] ;
248
-
249
- if ( subject.length > 0 )
250
- aParams.push( 'subject='+ encodeURIComponent( subject ) ) ;
251
- if ( body.length > 0 )
252
- aParams.push( 'body=' + encodeURIComponent( body ) ) ;
253
- for ( var i = 0 ; i < address.length ; i++ )
254
- aAddressCode.push( address.charCodeAt( i ) ) ;
255
-
256
- return 'javascript:location.href=\'mailto:\'+String.fromCharCode(' + aAddressCode.join( ',' ) + ')+\'?' + aParams.join( '&' ) + '\'' ;
257
- }
258
-
259
- // EMailProtection 'none'
260
-
261
- var sBaseUri = 'mailto:' + address ;
262
-
263
- var sParams = '' ;
264
-
265
- if ( subject.length > 0 )
266
- sParams = '?subject=' + encodeURIComponent( subject ) ;
267
-
268
- if ( body.length > 0 )
269
- {
270
- sParams += ( sParams.length == 0 ? '?' : '&' ) ;
271
- sParams += 'body=' + encodeURIComponent( body ) ;
272
- }
273
-
274
- return sBaseUri + sParams ;
275
- }
276
-
277
- //#### Initialization Code
278
-
279
- // oLink: The actual selected link in the editor.
280
- var oLink = dialog.Selection.GetSelection().MoveToAncestorNode( 'A' ) ;
281
- if ( oLink )
282
- FCK.Selection.SelectNode( oLink ) ;
283
-
284
- window.onload = function()
285
- {
286
- // Translate the dialog box texts.
287
- oEditor.FCKLanguageManager.TranslatePage(document) ;
288
-
289
- // Fill the Anchor Names and Ids combos.
290
- LoadAnchorNamesAndIds() ;
291
-
292
- // Load the selected link information (if any).
293
- LoadSelection() ;
294
-
295
- // Update the dialog box.
296
- SetLinkType( GetE('cmbLinkType').value ) ;
297
-
298
- // Show/Hide the "Browse Server" button.
299
- GetE('divBrowseServer').style.display = FCKConfig.LinkBrowser ? '' : 'none' ;
300
-
301
- // Show the initial dialog content.
302
- GetE('divInfo').style.display = '' ;
303
-
304
- // Set the actual uploader URL.
305
- if ( FCKConfig.LinkUpload )
306
- GetE('frmUpload').action = FCKConfig.LinkUploadURL ;
307
-
308
- // Set the default target (from configuration).
309
- SetDefaultTarget() ;
310
-
311
- // Activate the "OK" button.
312
- dialog.SetOkButton( true ) ;
313
-
314
- // Select the first field.
315
- switch( GetE('cmbLinkType').value )
316
- {
317
- case 'url' :
318
- SelectField( 'txtUrl' ) ;
319
- break ;
320
- case 'email' :
321
- SelectField( 'txtEMailAddress' ) ;
322
- break ;
323
- case 'anchor' :
324
- if ( GetE('divSelAnchor').style.display != 'none' )
325
- SelectField( 'cmbAnchorName' ) ;
326
- else
327
- SelectField( 'cmbLinkType' ) ;
328
- }
329
- }
330
-
331
- var bHasAnchors ;
332
-
333
- function LoadAnchorNamesAndIds()
334
- {
335
- // Since version 2.0, the anchors are replaced in the DOM by IMGs so the user see the icon
336
- // to edit them. So, we must look for that images now.
337
- var aAnchors = new Array() ;
338
- var i ;
339
- var oImages = oEditor.FCK.EditorDocument.getElementsByTagName( 'IMG' ) ;
340
- for( i = 0 ; i < oImages.length ; i++ )
341
- {
342
- if ( oImages[i].getAttribute('_fckanchor') )
343
- aAnchors[ aAnchors.length ] = oEditor.FCK.GetRealElement( oImages[i] ) ;
344
- }
345
-
346
- // Add also real anchors
347
- var oLinks = oEditor.FCK.EditorDocument.getElementsByTagName( 'A' ) ;
348
- for( i = 0 ; i < oLinks.length ; i++ )
349
- {
350
- if ( oLinks[i].name && ( oLinks[i].name.length > 0 ) )
351
- aAnchors[ aAnchors.length ] = oLinks[i] ;
352
- }
353
-
354
- var aIds = FCKTools.GetAllChildrenIds( oEditor.FCK.EditorDocument.body ) ;
355
-
356
- bHasAnchors = ( aAnchors.length > 0 || aIds.length > 0 ) ;
357
-
358
- for ( i = 0 ; i < aAnchors.length ; i++ )
359
- {
360
- var sName = aAnchors[i].name ;
361
- if ( sName && sName.length > 0 )
362
- FCKTools.AddSelectOption( GetE('cmbAnchorName'), sName, sName ) ;
363
- }
364
-
365
- for ( i = 0 ; i < aIds.length ; i++ )
366
- {
367
- FCKTools.AddSelectOption( GetE('cmbAnchorId'), aIds[i], aIds[i] ) ;
368
- }
369
-
370
- ShowE( 'divSelAnchor' , bHasAnchors ) ;
371
- ShowE( 'divNoAnchor' , !bHasAnchors ) ;
372
- }
373
-
374
- function LoadSelection()
375
- {
376
- if ( !oLink ) return ;
377
-
378
- var sType = 'url' ;
379
-
380
- // Get the actual Link href.
381
- var sHRef = oLink.getAttribute( '_fcksavedurl' ) ;
382
- if ( sHRef == null )
383
- sHRef = oLink.getAttribute( 'href' , 2 ) || '' ;
384
-
385
- // Look for a popup javascript link.
386
- var oPopupMatch = oRegex.PopupUri.exec( sHRef ) ;
387
- if( oPopupMatch )
388
- {
389
- GetE('cmbTarget').value = 'popup' ;
390
- sHRef = oPopupMatch[1] ;
391
- FillPopupFields( oPopupMatch[2], oPopupMatch[3] ) ;
392
- SetTarget( 'popup' ) ;
393
- }
394
-
395
- // Accessible popups, the popup data is in the onclick attribute
396
- if ( !oPopupMatch )
397
- {
398
- var onclick = oLink.getAttribute( 'onclick_fckprotectedatt' ) ;
399
- if ( onclick )
400
- {
401
- // Decode the protected string
402
- onclick = decodeURIComponent( onclick ) ;
403
-
404
- oPopupMatch = oRegex.OnClickPopup.exec( onclick ) ;
405
- if( oPopupMatch )
406
- {
407
- GetE( 'cmbTarget' ).value = 'popup' ;
408
- FillPopupFields( oPopupMatch[1], oPopupMatch[2] ) ;
409
- SetTarget( 'popup' ) ;
410
- }
411
- }
412
- }
413
-
414
- // Search for the protocol.
415
- var sProtocol = oRegex.UriProtocol.exec( sHRef ) ;
416
-
417
- // Search for a protected email link.
418
- var oEMailInfo = oParser.ParseEMailUri( sHRef );
419
-
420
- if ( oEMailInfo )
421
- {
422
- sType = 'email' ;
423
-
424
- GetE('txtEMailAddress').value = oEMailInfo.Address ;
425
- GetE('txtEMailSubject').value = oEMailInfo.Subject ;
426
- GetE('txtEMailBody').value = oEMailInfo.Body ;
427
- }
428
- else if ( sProtocol )
429
- {
430
- sProtocol = sProtocol[0].toLowerCase() ;
431
- GetE('cmbLinkProtocol').value = sProtocol ;
432
-
433
- // Remove the protocol and get the remaining URL.
434
- var sUrl = sHRef.replace( oRegex.UriProtocol, '' ) ;
435
- sType = 'url' ;
436
- GetE('txtUrl').value = sUrl ;
437
- }
438
- else if ( sHRef.substr(0,1) == '#' && sHRef.length > 1 ) // It is an anchor link.
439
- {
440
- sType = 'anchor' ;
441
- GetE('cmbAnchorName').value = GetE('cmbAnchorId').value = sHRef.substr(1) ;
442
- }
443
- else // It is another type of link.
444
- {
445
- sType = 'url' ;
446
-
447
- GetE('cmbLinkProtocol').value = '' ;
448
- GetE('txtUrl').value = sHRef ;
449
- }
450
-
451
- if ( !oPopupMatch )
452
- {
453
- // Get the target.
454
- var sTarget = oLink.target ;
455
-
456
- if ( sTarget && sTarget.length > 0 )
457
- {
458
- if ( oRegex.ReserveTarget.test( sTarget ) )
459
- {
460
- sTarget = sTarget.toLowerCase() ;
461
- GetE('cmbTarget').value = sTarget ;
462
- }
463
- else
464
- GetE('cmbTarget').value = 'frame' ;
465
- GetE('txtTargetFrame').value = sTarget ;
466
- }
467
- }
468
-
469
- // Get Advances Attributes
470
- GetE('txtAttId').value = oLink.id ;
471
- GetE('txtAttName').value = oLink.name ;
472
- GetE('cmbAttLangDir').value = oLink.dir ;
473
- GetE('txtAttLangCode').value = oLink.lang ;
474
- GetE('txtAttAccessKey').value = oLink.accessKey ;
475
- GetE('txtAttTabIndex').value = oLink.tabIndex <= 0 ? '' : oLink.tabIndex ;
476
- GetE('txtAttTitle').value = oLink.title ;
477
- GetE('txtAttContentType').value = oLink.type ;
478
- GetE('txtAttCharSet').value = oLink.charset ;
479
-
480
- var sClass ;
481
- if ( oEditor.FCKBrowserInfo.IsIE )
482
- {
483
- sClass = oLink.getAttribute('className',2) || '' ;
484
- // Clean up temporary classes for internal use:
485
- sClass = sClass.replace( FCKRegexLib.FCK_Class, '' ) ;
486
-
487
- GetE('txtAttStyle').value = oLink.style.cssText ;
488
- }
489
- else
490
- {
491
- sClass = oLink.getAttribute('class',2) || '' ;
492
- GetE('txtAttStyle').value = oLink.getAttribute('style',2) || '' ;
493
- }
494
- GetE('txtAttClasses').value = sClass ;
495
-
496
- // Update the Link type combo.
497
- GetE('cmbLinkType').value = sType ;
498
- }
499
-
500
- //#### Link type selection.
501
- function SetLinkType( linkType )
502
- {
503
- ShowE('divLinkTypeUrl' , (linkType == 'url') ) ;
504
- ShowE('divLinkTypeAnchor' , (linkType == 'anchor') ) ;
505
- ShowE('divLinkTypeEMail' , (linkType == 'email') ) ;
506
-
507
- if ( !FCKConfig.LinkDlgHideTarget )
508
- dialog.SetTabVisibility( 'Target' , (linkType == 'url') ) ;
509
-
510
- if ( FCKConfig.LinkUpload )
511
- dialog.SetTabVisibility( 'Upload' , (linkType == 'url') ) ;
512
-
513
- if ( !FCKConfig.LinkDlgHideAdvanced )
514
- dialog.SetTabVisibility( 'Advanced' , (linkType != 'anchor' || bHasAnchors) ) ;
515
-
516
- if ( linkType == 'email' )
517
- dialog.SetAutoSize( true ) ;
518
- }
519
-
520
- //#### Target type selection.
521
- function SetTarget( targetType )
522
- {
523
- GetE('tdTargetFrame').style.display = ( targetType == 'popup' ? 'none' : '' ) ;
524
- GetE('tdPopupName').style.display =
525
- GetE('tablePopupFeatures').style.display = ( targetType == 'popup' ? '' : 'none' ) ;
526
-
527
- switch ( targetType )
528
- {
529
- case "_blank" :
530
- case "_self" :
531
- case "_parent" :
532
- case "_top" :
533
- GetE('txtTargetFrame').value = targetType ;
534
- break ;
535
- case "" :
536
- GetE('txtTargetFrame').value = '' ;
537
- break ;
538
- }
539
-
540
- if ( targetType == 'popup' )
541
- dialog.SetAutoSize( true ) ;
542
- }
543
-
544
- //#### Called while the user types the URL.
545
- function OnUrlChange()
546
- {
547
- var sUrl = GetE('txtUrl').value ;
548
- var sProtocol = oRegex.UrlOnChangeProtocol.exec( sUrl ) ;
549
-
550
- if ( sProtocol )
551
- {
552
- sUrl = sUrl.substr( sProtocol[0].length ) ;
553
- GetE('txtUrl').value = sUrl ;
554
- GetE('cmbLinkProtocol').value = sProtocol[0].toLowerCase() ;
555
- }
556
- else if ( oRegex.UrlOnChangeTestOther.test( sUrl ) )
557
- {
558
- GetE('cmbLinkProtocol').value = '' ;
559
- }
560
- }
561
-
562
- //#### Called while the user types the target name.
563
- function OnTargetNameChange()
564
- {
565
- var sFrame = GetE('txtTargetFrame').value ;
566
-
567
- if ( sFrame.length == 0 )
568
- GetE('cmbTarget').value = '' ;
569
- else if ( oRegex.ReserveTarget.test( sFrame ) )
570
- GetE('cmbTarget').value = sFrame.toLowerCase() ;
571
- else
572
- GetE('cmbTarget').value = 'frame' ;
573
- }
574
-
575
- // Accessible popups
576
- function BuildOnClickPopup()
577
- {
578
- var sWindowName = "'" + GetE('txtPopupName').value.replace(/\W/gi, "") + "'" ;
579
-
580
- var sFeatures = '' ;
581
- var aChkFeatures = document.getElementsByName( 'chkFeature' ) ;
582
- for ( var i = 0 ; i < aChkFeatures.length ; i++ )
583
- {
584
- if ( i > 0 ) sFeatures += ',' ;
585
- sFeatures += aChkFeatures[i].value + '=' + ( aChkFeatures[i].checked ? 'yes' : 'no' ) ;
586
- }
587
-
588
- if ( GetE('txtPopupWidth').value.length > 0 ) sFeatures += ',width=' + GetE('txtPopupWidth').value ;
589
- if ( GetE('txtPopupHeight').value.length > 0 ) sFeatures += ',height=' + GetE('txtPopupHeight').value ;
590
- if ( GetE('txtPopupLeft').value.length > 0 ) sFeatures += ',left=' + GetE('txtPopupLeft').value ;
591
- if ( GetE('txtPopupTop').value.length > 0 ) sFeatures += ',top=' + GetE('txtPopupTop').value ;
592
-
593
- if ( sFeatures != '' )
594
- sFeatures = sFeatures + ",status" ;
595
-
596
- return ( "window.open(this.href," + sWindowName + ",'" + sFeatures + "'); return false" ) ;
597
- }
598
-
599
- //#### Fills all Popup related fields.
600
- function FillPopupFields( windowName, features )
601
- {
602
- if ( windowName )
603
- GetE('txtPopupName').value = windowName ;
604
-
605
- var oFeatures = new Object() ;
606
- var oFeaturesMatch ;
607
- while( ( oFeaturesMatch = oRegex.PopupFeatures.exec( features ) ) != null )
608
- {
609
- var sValue = oFeaturesMatch[2] ;
610
- if ( sValue == ( 'yes' || '1' ) )
611
- oFeatures[ oFeaturesMatch[1] ] = true ;
612
- else if ( ! isNaN( sValue ) && sValue != 0 )
613
- oFeatures[ oFeaturesMatch[1] ] = sValue ;
614
- }
615
-
616
- // Update all features check boxes.
617
- var aChkFeatures = document.getElementsByName('chkFeature') ;
618
- for ( var i = 0 ; i < aChkFeatures.length ; i++ )
619
- {
620
- if ( oFeatures[ aChkFeatures[i].value ] )
621
- aChkFeatures[i].checked = true ;
622
- }
623
-
624
- // Update position and size text boxes.
625
- if ( oFeatures['width'] ) GetE('txtPopupWidth').value = oFeatures['width'] ;
626
- if ( oFeatures['height'] ) GetE('txtPopupHeight').value = oFeatures['height'] ;
627
- if ( oFeatures['left'] ) GetE('txtPopupLeft').value = oFeatures['left'] ;
628
- if ( oFeatures['top'] ) GetE('txtPopupTop').value = oFeatures['top'] ;
629
- }
630
-
631
- //#### The OK button was hit.
632
- function Ok()
633
- {
634
- var sUri, sInnerHtml ;
635
- oEditor.FCKUndo.SaveUndoStep() ;
636
-
637
- switch ( GetE('cmbLinkType').value )
638
- {
639
- case 'url' :
640
- sUri = GetE('txtUrl').value ;
641
-
642
- if ( sUri.length == 0 )
643
- {
644
- alert( FCKLang.DlnLnkMsgNoUrl ) ;
645
- return false ;
646
- }
647
-
648
- sUri = GetE('cmbLinkProtocol').value + sUri ;
649
-
650
- break ;
651
-
652
- case 'email' :
653
- sUri = GetE('txtEMailAddress').value ;
654
-
655
- if ( sUri.length == 0 )
656
- {
657
- alert( FCKLang.DlnLnkMsgNoEMail ) ;
658
- return false ;
659
- }
660
-
661
- sUri = oParser.CreateEMailUri(
662
- sUri,
663
- GetE('txtEMailSubject').value,
664
- GetE('txtEMailBody').value ) ;
665
- break ;
666
-
667
- case 'anchor' :
668
- var sAnchor = GetE('cmbAnchorName').value ;
669
- if ( sAnchor.length == 0 ) sAnchor = GetE('cmbAnchorId').value ;
670
-
671
- if ( sAnchor.length == 0 )
672
- {
673
- alert( FCKLang.DlnLnkMsgNoAnchor ) ;
674
- return false ;
675
- }
676
-
677
- sUri = '#' + sAnchor ;
678
- break ;
679
- }
680
-
681
- // If no link is selected, create a new one (it may result in more than one link creation - #220).
682
- var aLinks = oLink ? [ oLink ] : oEditor.FCK.CreateLink( sUri, true ) ;
683
-
684
- // If no selection, no links are created, so use the uri as the link text (by dom, 2006-05-26)
685
- var aHasSelection = ( aLinks.length > 0 ) ;
686
- if ( !aHasSelection )
687
- {
688
- sInnerHtml = sUri;
689
-
690
- // Built a better text for empty links.
691
- switch ( GetE('cmbLinkType').value )
692
- {
693
- // anchor: use old behavior --> return true
694
- case 'anchor':
695
- sInnerHtml = sInnerHtml.replace( /^#/, '' ) ;
696
- break ;
697
-
698
- // url: try to get path
699
- case 'url':
700
- var oLinkPathRegEx = new RegExp("//?([^?\"']+)([?].*)?$") ;
701
- var asLinkPath = oLinkPathRegEx.exec( sUri ) ;
702
- if (asLinkPath != null)
703
- sInnerHtml = asLinkPath[1]; // use matched path
704
- break ;
705
-
706
- // mailto: try to get email address
707
- case 'email':
708
- sInnerHtml = GetE('txtEMailAddress').value ;
709
- break ;
710
- }
711
-
712
- // Create a new (empty) anchor.
713
- aLinks = [ oEditor.FCK.InsertElement( 'a' ) ] ;
714
- }
715
-
716
- for ( var i = 0 ; i < aLinks.length ; i++ )
717
- {
718
- oLink = aLinks[i] ;
719
-
720
- if ( aHasSelection )
721
- sInnerHtml = oLink.innerHTML ; // Save the innerHTML (IE changes it if it is like an URL).
722
-
723
- oLink.href = sUri ;
724
- SetAttribute( oLink, '_fcksavedurl', sUri ) ;
725
-
726
- var onclick;
727
- // Accessible popups
728
- if( GetE('cmbTarget').value == 'popup' )
729
- {
730
- onclick = BuildOnClickPopup() ;
731
- // Encode the attribute
732
- onclick = encodeURIComponent( " onclick=\"" + onclick + "\"" ) ;
733
- SetAttribute( oLink, 'onclick_fckprotectedatt', onclick ) ;
734
- }
735
- else
736
- {
737
- // Check if the previous onclick was for a popup:
738
- // In that case remove the onclick handler.
739
- onclick = oLink.getAttribute( 'onclick_fckprotectedatt' ) ;
740
- if ( onclick )
741
- {
742
- // Decode the protected string
743
- onclick = decodeURIComponent( onclick ) ;
744
-
745
- if( oRegex.OnClickPopup.test( onclick ) )
746
- SetAttribute( oLink, 'onclick_fckprotectedatt', '' ) ;
747
- }
748
- }
749
-
750
- oLink.innerHTML = sInnerHtml ; // Set (or restore) the innerHTML
751
-
752
- // Target
753
- if( GetE('cmbTarget').value != 'popup' )
754
- SetAttribute( oLink, 'target', GetE('txtTargetFrame').value ) ;
755
- else
756
- SetAttribute( oLink, 'target', null ) ;
757
-
758
- // Let's set the "id" only for the first link to avoid duplication.
759
- if ( i == 0 )
760
- SetAttribute( oLink, 'id', GetE('txtAttId').value ) ;
761
-
762
- // Advances Attributes
763
- SetAttribute( oLink, 'name' , GetE('txtAttName').value ) ;
764
- SetAttribute( oLink, 'dir' , GetE('cmbAttLangDir').value ) ;
765
- SetAttribute( oLink, 'lang' , GetE('txtAttLangCode').value ) ;
766
- SetAttribute( oLink, 'accesskey', GetE('txtAttAccessKey').value ) ;
767
- SetAttribute( oLink, 'tabindex' , ( GetE('txtAttTabIndex').value > 0 ? GetE('txtAttTabIndex').value : null ) ) ;
768
- SetAttribute( oLink, 'title' , GetE('txtAttTitle').value ) ;
769
- SetAttribute( oLink, 'type' , GetE('txtAttContentType').value ) ;
770
- SetAttribute( oLink, 'charset' , GetE('txtAttCharSet').value ) ;
771
-
772
- if ( oEditor.FCKBrowserInfo.IsIE )
773
- {
774
- var sClass = GetE('txtAttClasses').value ;
775
- // If it's also an anchor add an internal class
776
- if ( GetE('txtAttName').value.length != 0 )
777
- sClass += ' FCK__AnchorC' ;
778
- SetAttribute( oLink, 'className', sClass ) ;
779
-
780
- oLink.style.cssText = GetE('txtAttStyle').value ;
781
- }
782
- else
783
- {
784
- SetAttribute( oLink, 'class', GetE('txtAttClasses').value ) ;
785
- SetAttribute( oLink, 'style', GetE('txtAttStyle').value ) ;
786
- }
787
- }
788
-
789
- // Select the (first) link.
790
- oEditor.FCKSelection.SelectNode( aLinks[0] );
791
-
792
- return true ;
793
- }
794
-
795
- function BrowseServer()
796
- {
797
- OpenFileBrowser( FCKConfig.LinkBrowserURL, FCKConfig.LinkBrowserWindowWidth, FCKConfig.LinkBrowserWindowHeight ) ;
798
- }
799
-
800
- function SetUrl( url )
801
- {
802
- GetE('txtUrl').value = url ;
803
- OnUrlChange() ;
804
- dialog.SetSelectedTab( 'Info' ) ;
805
- }
806
-
807
- function OnUploadCompleted( errorNumber, fileUrl, fileName, customMsg )
808
- {
809
- // Remove animation
810
- window.parent.Throbber.Hide() ;
811
- GetE( 'divUpload' ).style.display = '' ;
812
-
813
- switch ( errorNumber )
814
- {
815
- case 0 : // No errors
816
- alert( 'Your file has been successfully uploaded' ) ;
817
- break ;
818
- case 1 : // Custom error
819
- alert( customMsg ) ;
820
- return ;
821
- case 101 : // Custom warning
822
- alert( customMsg ) ;
823
- break ;
824
- case 201 :
825
- alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ;
826
- break ;
827
- case 202 :
828
- alert( 'Invalid file type' ) ;
829
- return ;
830
- case 203 :
831
- alert( "Security error. You probably don't have enough permissions to upload. Please check your server." ) ;
832
- return ;
833
- case 500 :
834
- alert( 'The connector is disabled' ) ;
835
- break ;
836
- default :
837
- alert( 'Error on file upload. Error number: ' + errorNumber ) ;
838
- return ;
839
- }
840
-
841
- SetUrl( fileUrl ) ;
842
- GetE('frmUpload').reset() ;
843
- }
844
-
845
- var oUploadAllowedExtRegex = new RegExp( FCKConfig.LinkUploadAllowedExtensions, 'i' ) ;
846
- var oUploadDeniedExtRegex = new RegExp( FCKConfig.LinkUploadDeniedExtensions, 'i' ) ;
847
-
848
- function CheckUpload()
849
- {
850
- var sFile = GetE('txtUploadFile').value ;
851
-
852
- if ( sFile.length == 0 )
853
- {
854
- alert( 'Please select a file to upload' ) ;
855
- return false ;
856
- }
857
-
858
- if ( ( FCKConfig.LinkUploadAllowedExtensions.length > 0 && !oUploadAllowedExtRegex.test( sFile ) ) ||
859
- ( FCKConfig.LinkUploadDeniedExtensions.length > 0 && oUploadDeniedExtRegex.test( sFile ) ) )
860
- {
861
- OnUploadCompleted( 202 ) ;
862
- return false ;
863
- }
864
-
865
- // Show animation
866
- window.parent.Throbber.Show( 100 ) ;
867
- GetE( 'divUpload' ).style.display = 'none' ;
868
-
869
- return true ;
870
- }
871
-
872
- function SetDefaultTarget()
873
- {
874
- var target = FCKConfig.DefaultLinkTarget || '' ;
875
-
876
- if ( oLink || target.length == 0 )
877
- return ;
878
-
879
- switch ( target )
880
- {
881
- case '_blank' :
882
- case '_self' :
883
- case '_parent' :
884
- case '_top' :
885
- GetE('cmbTarget').value = target ;
886
- break ;
887
- default :
888
- GetE('cmbTarget').value = 'frame' ;
889
- break ;
890
- }
891
-
892
- GetE('txtTargetFrame').value = target ;
893
- }