browsercms 3.1.5 → 3.3.0.beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (425) hide show
  1. data/app/controllers/cms/base_controller.rb +3 -3
  2. data/app/controllers/cms/content_block_controller.rb +2 -2
  3. data/app/controllers/cms/content_controller.rb +5 -4
  4. data/app/controllers/cms/error_handling.rb +1 -1
  5. data/app/controllers/cms/routes_controller.rb +4 -5
  6. data/app/controllers/cms/section_nodes_controller.rb +1 -6
  7. data/app/controllers/cms/sections_controller.rb +2 -3
  8. data/app/controllers/cms/tasks_controller.rb +3 -0
  9. data/app/controllers/cms/users_controller.rb +1 -1
  10. data/app/helpers/cms/application_helper.rb +137 -34
  11. data/app/helpers/cms/form_builder.rb +33 -21
  12. data/app/helpers/cms/page_helper.rb +43 -10
  13. data/app/helpers/cms/path_helper.rb +1 -1
  14. data/app/helpers/cms/rendering_helper.rb +3 -4
  15. data/app/helpers/cms/section_nodes_helper.rb +5 -43
  16. data/app/models/abstract_file_block.rb +1 -16
  17. data/app/models/attachment.rb +57 -22
  18. data/app/models/category.rb +4 -4
  19. data/app/models/category_type.rb +2 -2
  20. data/app/models/cms/view_context.rb +46 -0
  21. data/app/models/connector.rb +7 -6
  22. data/app/models/content_type.rb +3 -3
  23. data/app/models/dynamic_view.rb +1 -1
  24. data/app/models/email_message.rb +2 -2
  25. data/app/models/file_block.rb +12 -0
  26. data/app/models/group.rb +4 -4
  27. data/app/models/group_type.rb +4 -4
  28. data/app/models/html_block.rb +1 -1
  29. data/app/models/image_block.rb +12 -0
  30. data/app/models/link.rb +22 -5
  31. data/app/models/page.rb +87 -46
  32. data/app/models/page_route.rb +61 -6
  33. data/app/models/permission.rb +1 -1
  34. data/app/models/portlet.rb +14 -4
  35. data/app/models/section.rb +48 -86
  36. data/app/models/section_node.rb +25 -40
  37. data/app/models/site.rb +1 -1
  38. data/app/models/tag.rb +1 -1
  39. data/app/models/task.rb +8 -7
  40. data/app/models/user.rb +2 -7
  41. data/app/portlets/forgot_password_portlet.rb +6 -2
  42. data/app/portlets/reset_password_portlet.rb +1 -1
  43. data/app/views/cms/blocks/_toolbar.html.erb +1 -1
  44. data/app/views/cms/blocks/_toolbar_for_collection.html.erb +3 -6
  45. data/app/views/cms/blocks/_toolbar_for_member.html.erb +3 -5
  46. data/app/views/cms/blocks/edit.html.erb +4 -4
  47. data/app/views/cms/blocks/index.html.erb +7 -7
  48. data/app/views/cms/blocks/new.html.erb +4 -4
  49. data/app/views/cms/blocks/show.html.erb +2 -2
  50. data/app/views/cms/blocks/usages.html.erb +2 -2
  51. data/app/views/cms/blocks/versions.html.erb +4 -4
  52. data/app/views/cms/cache/show.html.erb +2 -2
  53. data/app/views/cms/categories/_form.html.erb +2 -2
  54. data/app/views/cms/connectors/new.html.erb +6 -8
  55. data/app/views/cms/content/no_page.html.erb +1 -1
  56. data/app/views/cms/content/show.html.erb +2 -7
  57. data/app/views/cms/dashboard/_page_drafts.html.erb +1 -1
  58. data/app/views/cms/dashboard/_tasks.html.erb +1 -1
  59. data/app/views/cms/dashboard/index.html.erb +1 -1
  60. data/app/views/cms/dynamic_views/_form.html.erb +2 -2
  61. data/app/views/cms/dynamic_views/index.html.erb +7 -10
  62. data/app/views/cms/email_messages/show.html.erb +2 -2
  63. data/app/views/cms/file_blocks/_form.html.erb +4 -4
  64. data/app/views/cms/form_builder/_cms_fancy_drop_down.html.erb +2 -2
  65. data/app/views/cms/form_builder/_cms_file_field.html.erb +2 -2
  66. data/app/views/cms/form_builder/_cms_tag_list.html.erb +2 -2
  67. data/app/views/cms/form_builder/_cms_text_editor.html.erb +2 -2
  68. data/app/views/cms/groups/_form.html.erb +5 -5
  69. data/app/views/cms/groups/_permissions.html.erb +4 -4
  70. data/app/views/cms/groups/_sections.html.erb +1 -2
  71. data/app/views/cms/groups/index.html.erb +1 -1
  72. data/app/views/cms/html_blocks/render.html.erb +1 -1
  73. data/app/views/cms/image_blocks/_form.html.erb +4 -5
  74. data/app/views/cms/links/_form.html.erb +1 -1
  75. data/app/views/cms/links/edit.html.erb +2 -2
  76. data/app/views/cms/links/new.html.erb +2 -2
  77. data/app/views/cms/page_routes/_form.html.erb +2 -2
  78. data/app/views/cms/page_routes/index.html.erb +6 -9
  79. data/app/views/cms/page_routes/show.html.erb +5 -8
  80. data/app/views/cms/pages/_edit_connector.html.erb +1 -1
  81. data/app/views/cms/pages/_form.html.erb +3 -3
  82. data/app/views/cms/pages/edit.html.erb +2 -2
  83. data/app/views/cms/pages/new.html.erb +7 -7
  84. data/app/views/cms/pages/versions.html.erb +4 -4
  85. data/app/views/cms/redirects/_form.html.erb +2 -2
  86. data/app/views/cms/redirects/index.html.erb +8 -7
  87. data/app/views/cms/routes/index.html.erb +2 -2
  88. data/app/views/cms/section_nodes/_link.html.erb +3 -6
  89. data/app/views/cms/section_nodes/_node.html.erb +4 -13
  90. data/app/views/cms/section_nodes/_page.html.erb +7 -13
  91. data/app/views/cms/section_nodes/_section.html.erb +8 -24
  92. data/app/views/cms/section_nodes/_section_node.html.erb +10 -0
  93. data/app/views/cms/section_nodes/index.html.erb +18 -30
  94. data/app/views/cms/sections/_form.html.erb +4 -6
  95. data/app/views/cms/sections/edit.html.erb +2 -2
  96. data/app/views/cms/sections/index.html.erb +3 -3
  97. data/app/views/cms/sections/new.html.erb +3 -3
  98. data/app/views/cms/sessions/new.html.erb +3 -3
  99. data/app/views/cms/shared/_pagination.html.erb +1 -1
  100. data/app/views/cms/shared/error.html.erb +1 -1
  101. data/app/views/cms/tags/render.html.erb +2 -2
  102. data/app/views/cms/tasks/new.html.erb +4 -4
  103. data/app/views/cms/users/_form.html.erb +3 -3
  104. data/app/views/cms/users/_toolbar.html.erb +3 -3
  105. data/app/views/cms/users/change_password.html.erb +5 -5
  106. data/app/views/cms/users/edit.html.erb +2 -2
  107. data/app/views/cms/users/index.html.erb +4 -4
  108. data/app/views/cms/users/new.html.erb +2 -2
  109. data/app/views/cms/users/show.html.erb +16 -16
  110. data/app/views/layouts/_cms_toolbar.html.erb +5 -5
  111. data/app/views/layouts/_page_toolbar.html.erb +11 -11
  112. data/app/views/layouts/cms/_footer.erb +1 -1
  113. data/app/views/layouts/cms/_head.html.erb +2 -6
  114. data/app/views/layouts/cms/administration.html.erb +32 -32
  115. data/app/views/layouts/cms/content_library.html.erb +5 -5
  116. data/app/views/layouts/cms/toolbar.html.erb +1 -1
  117. data/app/views/portlets/email_page/render.html.erb +2 -2
  118. data/app/views/portlets/forgot_password/render.html.erb +1 -1
  119. data/app/views/portlets/login/render.html.erb +4 -2
  120. data/app/views/portlets/reset_password/render.html.erb +1 -1
  121. data/app/views/tests/pretend/open_with_layout.html.erb +1 -1
  122. data/bin/bcms +0 -0
  123. data/bin/bcms-upgrade +232 -0
  124. data/bin/browsercms +2 -2
  125. data/browsercms.gemspec +16 -14
  126. data/db/migrate/20100705083859_browsercms_3_3_0.rb +56 -0
  127. data/db/seeds.rb +58 -0
  128. data/doc/guides/html/authentication.html +448 -192
  129. data/doc/guides/html/build_it_yourself.html +454 -175
  130. data/doc/guides/html/building_modules.html +451 -220
  131. data/doc/guides/html/building_templates.html +448 -498
  132. data/doc/guides/html/content_blocks.html +450 -470
  133. data/doc/guides/html/customizing_browsercms.html +453 -169
  134. data/doc/guides/html/deployment_guide.html +443 -82
  135. data/doc/guides/html/files/bcmsorg.js +28 -0
  136. data/doc/guides/html/files/clearfix.css +8 -0
  137. data/doc/guides/html/files/cufon.js +7 -0
  138. data/doc/guides/html/files/global.css +190 -0
  139. data/doc/guides/html/files/helvetica.js +91 -0
  140. data/doc/guides/html/files/jquery.js +11 -0
  141. data/doc/guides/html/getting_started.html +454 -213
  142. data/doc/guides/html/index.html +454 -174
  143. data/doc/guides/html/installing_modules.html +454 -186
  144. data/doc/guides/html/portlets.html +451 -232
  145. data/doc/guides/html/user_guide.html +452 -270
  146. data/doc/guides/html/writing_guides.html +454 -161
  147. data/lib/acts_as_list.rb +1 -1
  148. data/lib/browsercms.rb +10 -6
  149. data/lib/cms/acts.rb +7 -0
  150. data/lib/cms/authentication.rb +4 -0
  151. data/lib/cms/authentication/controller.rb +1 -1
  152. data/lib/cms/behaviors.rb +1 -1
  153. data/lib/cms/behaviors/archiving.rb +2 -2
  154. data/lib/cms/behaviors/attaching.rb +28 -43
  155. data/lib/cms/behaviors/categorizing.rb +1 -1
  156. data/lib/cms/behaviors/connecting.rb +27 -12
  157. data/lib/cms/behaviors/dynamic_attributes.rb +8 -5
  158. data/lib/cms/behaviors/hiding.rb +2 -2
  159. data/lib/cms/behaviors/publishing.rb +32 -22
  160. data/lib/cms/behaviors/rendering.rb +41 -18
  161. data/lib/cms/behaviors/searching.rb +1 -1
  162. data/lib/cms/behaviors/soft_deleting.rb +58 -29
  163. data/lib/cms/behaviors/taggable.rb +1 -1
  164. data/lib/cms/behaviors/userstamping.rb +5 -4
  165. data/lib/cms/behaviors/versioning.rb +192 -111
  166. data/lib/cms/content_rendering_support.rb +3 -3
  167. data/lib/cms/date_picker.rb +23 -0
  168. data/lib/cms/engine.rb +46 -0
  169. data/lib/cms/extensions.rb +1 -1
  170. data/lib/cms/extensions/active_record/errors.rb +2 -2
  171. data/lib/cms/extensions/hash.rb +4 -2
  172. data/lib/cms/extensions/string.rb +7 -2
  173. data/lib/cms/init.rb +32 -21
  174. data/lib/cms/module.rb +22 -0
  175. data/lib/cms/module_installation.rb +38 -0
  176. data/lib/cms/routes.rb +127 -115
  177. data/lib/cms/version.rb +2 -2
  178. data/lib/generators/browser_cms.rb +12 -0
  179. data/lib/generators/browser_cms/cms/USAGE +2 -0
  180. data/lib/generators/browser_cms/cms/cms_generator.rb +36 -0
  181. data/{rails_generators/browser_cms → lib/generators/browser_cms/cms}/templates/README +0 -0
  182. data/{rails_generators/browser_cms_demo_site → lib/generators/browser_cms/demo_site}/USAGE +0 -0
  183. data/lib/generators/browser_cms/demo_site/demo_site_generator.rb +138 -0
  184. data/lib/generators/browser_cms/demo_site/templates/demo_site.rake +11 -0
  185. data/{rails_generators/browser_cms_demo_site/templates/migration.rb → lib/generators/browser_cms/demo_site/templates/migration.erb} +2 -8
  186. data/lib/generators/cms/content_block/USAGE +22 -0
  187. data/lib/generators/cms/content_block/content_block_generator.rb +55 -0
  188. data/{rails_generators → lib/generators/cms}/content_block/templates/_form.html.erb +0 -0
  189. data/{rails_generators → lib/generators/cms}/content_block/templates/content_block.rb +0 -0
  190. data/{rails_generators → lib/generators/cms}/content_block/templates/controller.rb +0 -0
  191. data/{rails_generators → lib/generators/cms}/content_block/templates/functional_test.erb +0 -0
  192. data/{rails_generators/content_block/templates/migration.rb → lib/generators/cms/content_block/templates/migration.erb} +1 -1
  193. data/{rails_generators → lib/generators/cms}/content_block/templates/render.html.erb +0 -0
  194. data/{rails_generators → lib/generators/cms}/content_block/templates/unit_test.erb +0 -0
  195. data/lib/generators/cms/install/USAGE +8 -0
  196. data/lib/generators/cms/install/install_generator.rb +20 -0
  197. data/{rails_generators → lib/generators/cms}/portlet/USAGE +3 -16
  198. data/lib/generators/cms/portlet/portlet_generator.rb +38 -0
  199. data/{rails_generators → lib/generators/cms}/portlet/templates/_form.html.erb +0 -0
  200. data/{rails_generators → lib/generators/cms}/portlet/templates/portlet.rb +0 -0
  201. data/{rails_generators → lib/generators/cms}/portlet/templates/portlet_helper.rb +0 -0
  202. data/{rails_generators → lib/generators/cms}/portlet/templates/render.html.erb +0 -0
  203. data/{rails_generators → lib/generators/cms}/portlet/templates/unit_test.erb +0 -0
  204. data/{rails_generators → lib/generators/cms}/template/USAGE +1 -1
  205. data/lib/generators/cms/template/template_generator.rb +18 -0
  206. data/lib/generators/cms/template/templates/template.erb +2 -0
  207. data/lib/generators/cms/upgrade_module/README.txt +3 -0
  208. data/lib/generators/cms/upgrade_module/templates/20100705083859_browsercms_3_3_0.rb +56 -0
  209. data/lib/generators/cms/upgrade_module/templates/README +1 -0
  210. data/lib/generators/cms/upgrade_module/templates/USAGE.erb +10 -0
  211. data/lib/generators/cms/upgrade_module/templates/build_gem.rake +5 -0
  212. data/lib/generators/cms/upgrade_module/templates/engine.erb +7 -0
  213. data/lib/generators/cms/upgrade_module/templates/gemspec.erb +25 -0
  214. data/lib/generators/cms/upgrade_module/templates/gitignore.erb +11 -0
  215. data/lib/generators/cms/upgrade_module/templates/install.erb +9 -0
  216. data/lib/generators/cms/upgrade_module/templates/module_file.erb +3 -0
  217. data/lib/generators/cms/upgrade_module/templates/routes.erb +7 -0
  218. data/lib/generators/cms/upgrade_module/upgrade_module_generator.rb +61 -0
  219. data/lib/tasks/build_gem.rake +1 -0
  220. data/lib/tasks/cms.rake +34 -6
  221. data/lib/tasks/cucumber.rake +53 -0
  222. data/lib/tasks/db.rake +2 -2
  223. data/public/javascripts/cms/application.js +144 -135
  224. data/public/javascripts/cms/sitemap.js +383 -357
  225. data/public/javascripts/jquery-ui.js +782 -591
  226. data/public/javascripts/jquery.cookie.js +38 -43
  227. data/public/javascripts/jquery.js +13 -8
  228. data/public/javascripts/jquery.taglist.js +7 -0
  229. data/public/stylesheets/cms/date_picker.css +49 -40
  230. data/rails/init.rb +2 -3
  231. data/templates/blank.rb +13 -7
  232. data/templates/demo.rb +15 -7
  233. data/templates/module.rb +12 -75
  234. metadata +87 -407
  235. data/app/helpers/cms/content_block_helper.rb +0 -27
  236. data/app/views/layouts/cms/thickbox.html.erb +0 -24
  237. data/db/migrate/20120117144039_browsercms315.rb +0 -94
  238. data/db/migrate/20121114172307_load_seeds.rb +0 -70
  239. data/lib/cms/addressable.rb +0 -83
  240. data/lib/cms/error_pages.rb +0 -8
  241. data/public/images/cms/thickbox/loadingAnimation.gif +0 -0
  242. data/public/images/cms/thickbox/macFFBgHack.png +0 -0
  243. data/public/javascripts/jquery.contextMenu.js +0 -211
  244. data/public/javascripts/jquery.dimensions.js +0 -119
  245. data/public/javascripts/jquery.thickbox.js +0 -10
  246. data/public/stylesheets/cms/jquery.contextMenu.css +0 -61
  247. data/public/stylesheets/cms/thickbox.css +0 -163
  248. data/rails_generators/browser_cms/USAGE +0 -2
  249. data/rails_generators/browser_cms/browser_cms_generator.rb +0 -35
  250. data/rails_generators/browser_cms_demo_site/browser_cms_demo_site_generator.rb +0 -63
  251. data/rails_generators/content_block/USAGE +0 -32
  252. data/rails_generators/content_block/content_block_generator.rb +0 -69
  253. data/rails_generators/portlet/portlet_generator.rb +0 -35
  254. data/rails_generators/template/template_generator.rb +0 -18
  255. data/rails_generators/template/templates/template.erb +0 -3
  256. data/test/custom_assertions.rb +0 -74
  257. data/test/factories.rb +0 -111
  258. data/test/factories/sitemap_factories.rb +0 -28
  259. data/test/fixtures/connectors.yml +0 -97
  260. data/test/fixtures/content_type_groups.yml +0 -13
  261. data/test/fixtures/content_types.yml +0 -50
  262. data/test/fixtures/dynamic_view_versions.yml +0 -26
  263. data/test/fixtures/dynamic_views.yml +0 -26
  264. data/test/fixtures/group_permissions.yml +0 -16
  265. data/test/fixtures/group_sections.yml +0 -31
  266. data/test/fixtures/group_type_permissions.yml +0 -11
  267. data/test/fixtures/group_types.yml +0 -25
  268. data/test/fixtures/groups.yml +0 -25
  269. data/test/fixtures/html_block_versions.yml +0 -67
  270. data/test/fixtures/html_blocks.yml +0 -63
  271. data/test/fixtures/page_versions.yml +0 -265
  272. data/test/fixtures/pages.yml +0 -85
  273. data/test/fixtures/permissions.yml +0 -28
  274. data/test/fixtures/section_nodes.yml +0 -46
  275. data/test/fixtures/sections.yml +0 -19
  276. data/test/fixtures/sites.yml +0 -9
  277. data/test/fixtures/user_group_memberships.yml +0 -11
  278. data/test/fixtures/users.yml +0 -15
  279. data/test/functional/cms/cache_controller_test.rb +0 -14
  280. data/test/functional/cms/categories_controller_test.rb +0 -25
  281. data/test/functional/cms/connectors_controller_test.rb +0 -60
  282. data/test/functional/cms/content_block_controller_test.rb +0 -120
  283. data/test/functional/cms/content_controller_test.rb +0 -439
  284. data/test/functional/cms/content_types_controller_test.rb +0 -18
  285. data/test/functional/cms/dashboard_controller_test.rb +0 -16
  286. data/test/functional/cms/dynamic_views_controller_test.rb +0 -52
  287. data/test/functional/cms/file_blocks_controller_test.rb +0 -52
  288. data/test/functional/cms/groups_controller_test.rb +0 -50
  289. data/test/functional/cms/home_controller_test.rb +0 -156
  290. data/test/functional/cms/html_blocks_controller_test.rb +0 -164
  291. data/test/functional/cms/image_blocks_controller_test.rb +0 -82
  292. data/test/functional/cms/links_controller_test.rb +0 -148
  293. data/test/functional/cms/pages_controller_test.rb +0 -227
  294. data/test/functional/cms/portlets_controller_test.rb +0 -67
  295. data/test/functional/cms/section_nodes_controller_test.rb +0 -112
  296. data/test/functional/cms/sections_controller_test.rb +0 -227
  297. data/test/functional/cms/sessions_controller_test.rb +0 -76
  298. data/test/functional/cms/toolbar_controller_test.rb +0 -64
  299. data/test/functional/cms/users_controller_test.rb +0 -231
  300. data/test/functional/tests/pretend_controller_test.rb +0 -57
  301. data/test/integration/cms/ckeditor_test.rb +0 -30
  302. data/test/integration/cms/password_management_test.rb +0 -56
  303. data/test/integration/login_test.rb +0 -14
  304. data/test/integration/sitemap_performance_test.rb +0 -26
  305. data/test/selenium-core/Blank.html +0 -7
  306. data/test/selenium-core/InjectedRemoteRunner.html +0 -8
  307. data/test/selenium-core/RemoteRunner.html +0 -110
  308. data/test/selenium-core/SeleniumLog.html +0 -109
  309. data/test/selenium-core/TestPrompt.html +0 -145
  310. data/test/selenium-core/TestRunner-splash.html +0 -55
  311. data/test/selenium-core/TestRunner.hta +0 -176
  312. data/test/selenium-core/TestRunner.html +0 -176
  313. data/test/selenium-core/domviewer/butmin.gif +0 -0
  314. data/test/selenium-core/domviewer/butplus.gif +0 -0
  315. data/test/selenium-core/domviewer/domviewer.css +0 -298
  316. data/test/selenium-core/domviewer/domviewer.html +0 -16
  317. data/test/selenium-core/domviewer/selenium-domviewer.js +0 -205
  318. data/test/selenium-core/icons/all.png +0 -0
  319. data/test/selenium-core/icons/continue.png +0 -0
  320. data/test/selenium-core/icons/continue_disabled.png +0 -0
  321. data/test/selenium-core/icons/pause.png +0 -0
  322. data/test/selenium-core/icons/pause_disabled.png +0 -0
  323. data/test/selenium-core/icons/selected.png +0 -0
  324. data/test/selenium-core/icons/step.png +0 -0
  325. data/test/selenium-core/icons/step_disabled.png +0 -0
  326. data/test/selenium-core/iedoc-core.xml +0 -1515
  327. data/test/selenium-core/iedoc.xml +0 -1469
  328. data/test/selenium-core/lib/cssQuery/cssQuery-p.js +0 -6
  329. data/test/selenium-core/lib/cssQuery/src/cssQuery-level2.js +0 -142
  330. data/test/selenium-core/lib/cssQuery/src/cssQuery-level3.js +0 -150
  331. data/test/selenium-core/lib/cssQuery/src/cssQuery-standard.js +0 -53
  332. data/test/selenium-core/lib/cssQuery/src/cssQuery.js +0 -356
  333. data/test/selenium-core/lib/prototype.js +0 -2006
  334. data/test/selenium-core/lib/scriptaculous/builder.js +0 -101
  335. data/test/selenium-core/lib/scriptaculous/controls.js +0 -815
  336. data/test/selenium-core/lib/scriptaculous/dragdrop.js +0 -915
  337. data/test/selenium-core/lib/scriptaculous/effects.js +0 -958
  338. data/test/selenium-core/lib/scriptaculous/scriptaculous.js +0 -47
  339. data/test/selenium-core/lib/scriptaculous/slider.js +0 -283
  340. data/test/selenium-core/lib/scriptaculous/unittest.js +0 -383
  341. data/test/selenium-core/scripts/find_matching_child.js +0 -69
  342. data/test/selenium-core/scripts/htmlutils.js +0 -894
  343. data/test/selenium-core/scripts/injection.html +0 -72
  344. data/test/selenium-core/scripts/js2html.js +0 -70
  345. data/test/selenium-core/scripts/narcissus-defs.js +0 -175
  346. data/test/selenium-core/scripts/narcissus-exec.js +0 -1054
  347. data/test/selenium-core/scripts/narcissus-parse.js +0 -1003
  348. data/test/selenium-core/scripts/se2html.js +0 -63
  349. data/test/selenium-core/scripts/selenium-api.js +0 -2409
  350. data/test/selenium-core/scripts/selenium-browserbot.js +0 -2203
  351. data/test/selenium-core/scripts/selenium-browserdetect.js +0 -150
  352. data/test/selenium-core/scripts/selenium-commandhandlers.js +0 -377
  353. data/test/selenium-core/scripts/selenium-executionloop.js +0 -175
  354. data/test/selenium-core/scripts/selenium-logging.js +0 -147
  355. data/test/selenium-core/scripts/selenium-remoterunner.js +0 -571
  356. data/test/selenium-core/scripts/selenium-testrunner.js +0 -1333
  357. data/test/selenium-core/scripts/selenium-version.js +0 -5
  358. data/test/selenium-core/scripts/user-extensions.js +0 -3
  359. data/test/selenium-core/scripts/user-extensions.js.sample +0 -75
  360. data/test/selenium-core/scripts/xmlextras.js +0 -153
  361. data/test/selenium-core/selenium-logo.png +0 -0
  362. data/test/selenium-core/selenium-test.css +0 -43
  363. data/test/selenium-core/selenium.css +0 -299
  364. data/test/selenium-core/xpath/dom.js +0 -428
  365. data/test/selenium-core/xpath/misc.js +0 -252
  366. data/test/selenium-core/xpath/xpath.js +0 -2223
  367. data/test/selenium/_login_as_cmsadmin.rsel +0 -4
  368. data/test/selenium/dashboard.rsel +0 -5
  369. data/test/selenium/html_blocks.rsel +0 -4
  370. data/test/selenium/login/failed_login.rsel +0 -8
  371. data/test/selenium/login/successful_login.rsel +0 -9
  372. data/test/selenium/page_templates.rsel +0 -12
  373. data/test/selenium/pages/edit_properties.rsel +0 -5
  374. data/test/selenium/site/view_home_page.rsel +0 -4
  375. data/test/selenium/sitemap/move_page.rsel +0 -9
  376. data/test/selenium/sitemap/open_section.rsel +0 -6
  377. data/test/selenium/sitemap/select_page.rsel +0 -12
  378. data/test/selenium/sitemap/select_section.rsel +0 -17
  379. data/test/test_helper.rb +0 -193
  380. data/test/test_logging.rb +0 -67
  381. data/test/unit/behaviors/attaching_test.rb +0 -357
  382. data/test/unit/behaviors/connectable_test.rb +0 -29
  383. data/test/unit/behaviors/dynamic_attributes_test.rb +0 -38
  384. data/test/unit/behaviors/publishable_test.rb +0 -84
  385. data/test/unit/behaviors/searching_test.rb +0 -102
  386. data/test/unit/behaviors/taggable_test.rb +0 -109
  387. data/test/unit/behaviors/versioning_test.rb +0 -36
  388. data/test/unit/extensions/active_record/base_test.rb +0 -10
  389. data/test/unit/extensions/hash_test.rb +0 -17
  390. data/test/unit/extensions/integer_test.rb +0 -10
  391. data/test/unit/helpers/application_helper_test.rb +0 -77
  392. data/test/unit/helpers/form_builder_test.rb +0 -36
  393. data/test/unit/helpers/menu_helper_test.rb +0 -242
  394. data/test/unit/helpers/page_helper_test.rb +0 -67
  395. data/test/unit/helpers/path_helper_test.rb +0 -57
  396. data/test/unit/lib/acts_as_content_page_test.rb +0 -72
  397. data/test/unit/lib/cms/authentication/controller_test.rb +0 -20
  398. data/test/unit/lib/cms/sitemap_test.rb +0 -206
  399. data/test/unit/lib/cms_domain_support_test.rb +0 -43
  400. data/test/unit/lib/command_line_test.rb +0 -70
  401. data/test/unit/lib/content_block_test.rb +0 -203
  402. data/test/unit/lib/content_rendering_support_test.rb +0 -40
  403. data/test/unit/lib/generators_test.rb +0 -40
  404. data/test/unit/lib/routes_test.rb +0 -57
  405. data/test/unit/models/attachment_test.rb +0 -116
  406. data/test/unit/models/category_test.rb +0 -40
  407. data/test/unit/models/category_type_test.rb +0 -8
  408. data/test/unit/models/connector_test.rb +0 -152
  409. data/test/unit/models/content_type_test.rb +0 -56
  410. data/test/unit/models/email_page_portlet_test.rb +0 -14
  411. data/test/unit/models/file_block_test.rb +0 -230
  412. data/test/unit/models/group_test.rb +0 -13
  413. data/test/unit/models/html_block_test.rb +0 -102
  414. data/test/unit/models/link_test.rb +0 -52
  415. data/test/unit/models/page_partial_test.rb +0 -29
  416. data/test/unit/models/page_route_test.rb +0 -29
  417. data/test/unit/models/page_template_test.rb +0 -40
  418. data/test/unit/models/page_test.rb +0 -792
  419. data/test/unit/models/permission_test.rb +0 -10
  420. data/test/unit/models/portlet_test.rb +0 -69
  421. data/test/unit/models/sections_test.rb +0 -264
  422. data/test/unit/models/site_test.rb +0 -50
  423. data/test/unit/models/task_test.rb +0 -141
  424. data/test/unit/models/user_test.rb +0 -352
  425. data/test/unit/schema_statements_test.rb +0 -41
@@ -1,64 +0,0 @@
1
- require File.join(File.dirname(__FILE__), '/../../test_helper')
2
-
3
- class Cms::ToolbarControllerTest < ActionController::TestCase
4
- include Cms::ControllerTestHelper
5
-
6
- def setup
7
- login_as_cms_admin
8
- end
9
-
10
- def test_index_for_published_page
11
- create_page
12
- @page.publish!
13
- reset(:page)
14
-
15
- get :index, :page_id => @page.id, :page_version => @page.version, :mode => "edit"
16
-
17
- assert_response :success
18
- #log @response.body
19
- assert_select "#page_status", "published"
20
- assert_select "#section_link" do
21
- assert_select "a[href=?]", "/cms/sections?page_id=#{@page.id}"
22
- assert_select "a", @page.section.name
23
- end
24
- assert_select ".buttons .disabled span", "Publish"
25
-
26
- assert_select ".buttons .disabled span", :text => "Edit Properties", :count => 0
27
- assert_select "#edit_properties_button[href=?]", edit_cms_page_path(@page)
28
-
29
- assert_select "#visual_editor_state", "ON"
30
- assert_select "#visual_editor_action", "TURN OFF"
31
- end
32
-
33
- def test_index_for_draft_page
34
- create_page
35
-
36
- get :index, :page_id => @page.id, :page_version => @page.version, :mode => "edit"
37
-
38
- assert_response :success
39
- #log @response.body
40
- assert_select "#page_status", "draft"
41
- assert_select "#section_link" do
42
- assert_select "a[href=?]", "/cms/sections?page_id=#{@page.id}"
43
- assert_select "a", @page.section.name
44
- end
45
-
46
- assert_select ".buttons .disabled span", :text => "Publish", :count => 0
47
- assert_select "#publish_button[href=?]", publish_cms_page_path(@page)
48
-
49
- assert_select ".buttons .disabled span", :text => "Edit Properties", :count => 0
50
- assert_select "#edit_properties_button[href=?]", edit_cms_page_path(@page)
51
-
52
- assert_select ".buttons span", :text => "Revert to this Version", :count => 0
53
- assert_select "#delete_button", 1
54
-
55
- assert_select "#visual_editor_state", "ON"
56
- assert_select "#visual_editor_action", "TURN OFF"
57
- end
58
-
59
- protected
60
- def create_page
61
- @page = Factory(:page, :section => root_section, :name => "Test", :path => "test")
62
- end
63
-
64
- end
@@ -1,231 +0,0 @@
1
- require File.join(File.dirname(__FILE__), '/../../test_helper')
2
-
3
- class Cms::UsersControllerTest < ActionController::TestCase
4
- include Cms::ControllerTestHelper
5
-
6
- def setup
7
- login_as_cms_admin
8
- @user = User.first
9
- end
10
-
11
- def test_index
12
- get :index
13
- assert_response :success
14
- assert_select "a", "#{@user.email}"
15
- end
16
-
17
- def test_index_by_email_key_word
18
- create_key_word_test_users
19
- get :index, :key_word => "somekid"
20
-
21
- assert_response :success
22
- assert_select "a", {:count => 1, :text => @user_with_email.email}
23
- assert_select "a", {:count => 0, :text => @user_with_name.email}
24
- assert_select "a", {:count => 0, :text => @user_with_login.email}
25
- assert_select "a", {:count => 0, :text => @user.email}
26
- end
27
-
28
- def test_index_by_login_key_word
29
- create_key_word_test_users
30
- get :index, :key_word => "mylogin"
31
-
32
- assert_response :success
33
- assert_select "a", {:count => 0, :text => @user_with_email.email}
34
- assert_select "a", {:count => 0, :text => @user_with_name.email}
35
- assert_select "a", {:count => 1, :text => @user_with_login.email}
36
- assert_select "a", {:count => 0, :text => @user.email}
37
- end
38
-
39
- def test_index_by_first_name_key_word
40
- create_key_word_test_users
41
- get :index, :key_word => "stan"
42
-
43
- assert_response :success
44
- assert_select "a", {:count => 0, :text => @user_with_email.email}
45
- assert_select "a", {:count => 1, :text => @user_with_name.email}
46
- assert_select "a", {:count => 0, :text => @user_with_login.email}
47
- assert_select "a", {:count => 0, :text => @user.email}
48
- end
49
-
50
- def test_index_by_last_name_key_word
51
- create_key_word_test_users
52
- get :index, :key_word => "marsh"
53
-
54
- assert_response :success
55
- assert_select "a", {:count => 0, :text => @user_with_email.email}
56
- assert_select "a", {:count => 1, :text => @user_with_name.email}
57
- assert_select "a", {:count => 0, :text => @user_with_login.email}
58
- assert_select "a", {:count => 0, :text => @user.email}
59
- end
60
-
61
- def test_index_with_disabled_users
62
- @disabled_user = Factory(:user)
63
- @disabled_user.disable!
64
-
65
- get :index
66
- assert_response :success
67
- assert_select "a", {:count => 0, :text => @disabled_user.email}
68
- end
69
-
70
- def test_index_with_show_expired
71
- @disabled_user = Factory(:user)
72
- @disabled_user.disable!
73
-
74
- get :index, :show_expired => "true"
75
- assert_response :success
76
- assert_select "a", {:count => 1, :text => @disabled_user.email}
77
- end
78
-
79
- def test_index_with_groups
80
- @not_found = Factory(:user)
81
- @in_group = Factory(:group)
82
- @not_in_group = Factory(:group)
83
- @user.groups << @in_group
84
-
85
- get :index, :group_id => @in_group.id
86
-
87
- assert_response :success
88
- assert_select "a", {:count => 1, :text => @user.email}
89
- assert_select "a", {:count => 0, :text => @not_found.email}
90
- end
91
-
92
- def test_new
93
- @group = Factory(:group)
94
-
95
- get :new
96
-
97
- assert_response :success
98
-
99
- assert_select "input#user_login"
100
- assert_select "input#user_first_name"
101
- assert_select "input#user_last_name"
102
- assert_select "input#user_email"
103
- assert_select "input#user_password"
104
- assert_select "input#user_expires_at"
105
- assert_select "input#user_password_confirmation"
106
- assert_select "input[type=?][value=?]", "checkbox", @group.id
107
- end
108
-
109
- def test_create
110
- user_count = User.count
111
- @group = Factory(:group)
112
- user_params = Factory.attributes_for(:user, :password=>"123456", :password_confirmation=>"123456")
113
-
114
- post :create, :user => user_params, :group_ids => [@group.id]
115
- user = User.find_by_login(user_params[:login])
116
-
117
- assert_redirected_to cms_users_path
118
- assert_incremented user_count, User.count
119
- assert_equal "User '#{user.login}' was created", flash[:notice]
120
- assert_equal [@group], user.groups
121
- end
122
-
123
- def test_edit
124
- get :edit, :id => @user.id
125
- assert_response :success
126
-
127
- assert_select "input#user_login[value=?]", @user.login
128
- assert_select "input#user_first_name[value=?]", @user.first_name
129
- assert_select "input#user_last_name[value=?]", @user.last_name
130
- assert_select "input#user_email[value=?]", @user.email
131
- assert_select "input#user_expires_at"
132
- end
133
-
134
- def test_show
135
- get :show, :id => @user.id
136
- assert_response :success
137
- end
138
-
139
- def test_update
140
- put :update, :id => @user.id, :user => { :first_name => "First"}
141
- reset(:user)
142
-
143
- assert_redirected_to cms_users_path
144
- assert_equal "First", @user.first_name
145
- assert_equal "User '#{@user.login}' was updated", flash[:notice]
146
- end
147
-
148
- def test_change_password
149
- get :change_password, :id => @user.id
150
-
151
- assert_response :success
152
- assert_select "input#user_password"
153
- assert_select "input#user_password_confirmation"
154
- end
155
-
156
- def test_update_password_failure
157
- put :update_password, :id => @user.id,
158
- :user => {:password => "will_fail_validation", :password_confirmation => "something_else"}
159
-
160
- assert_response :success
161
- assert_select "h1", "Set New Password"
162
- assert_select "div#errorExplanation"
163
- end
164
-
165
- def test_update_password_success
166
- put :update_password, :id => @user.id,
167
- :user => {:password => "something_else", :password_confirmation => "something_else"}
168
-
169
- assert_redirected_to cms_users_path
170
- end
171
-
172
- def test_add_to_groups
173
- @group_ids = [Factory(:group).id, Factory(:group).id]
174
- put :update, :id => @user.id, :group_ids => @group_ids
175
- reset(:user)
176
-
177
- assert_redirected_to cms_users_path
178
- assert_equal 2, @user.groups.count
179
- end
180
-
181
- protected
182
- def create_key_word_test_users
183
- @user_with_email = Factory(:user, :email => "somekid@southpark.com")
184
- @user_with_name = Factory(:user, :first_name => "Stan", :last_name => "Marsh")
185
- @user_with_login = Factory(:user, :login => "mylogin")
186
- end
187
-
188
- end
189
-
190
- class Cms::UsersControllerNonAdminTest < ActionController::TestCase
191
- tests Cms::UsersController
192
- include Cms::ControllerTestHelper
193
-
194
- def setup
195
- @user = Factory.build(:user)
196
- @user.groups = [groups(:group_3)]
197
- @user.save!
198
- login_as(@user)
199
- end
200
-
201
- def test_show_self
202
- get :show, :id => @user.id
203
- assert_response :success
204
- end
205
-
206
- def test_show_other
207
- get :show, :id => Factory(:user).id
208
- assert @response.body.include?("Access Denied")
209
- end
210
-
211
- def test_change_password_self
212
- get :change_password, :id => @user.id
213
- assert_response :success
214
- end
215
-
216
- def test_change_password_other
217
- get :change_password, :id => Factory(:user).id
218
- assert @response.body.include?("Access Denied")
219
- end
220
-
221
- def test_update_password_self
222
- put :update_password, :id => @user.id,
223
- :user => {:password => "something_else", :password_confirmation => "something_else"}
224
- assert_redirected_to cms_user_path(@user)
225
- end
226
-
227
- def test_update_password_other
228
- put :update_password, :id => Factory(:user).id
229
- assert @response.body.include?("Access Denied")
230
- end
231
- end
@@ -1,57 +0,0 @@
1
- require 'test_helper'
2
-
3
- class Tests::PretendControllerTest < ActionController::TestCase
4
- include Cms::ControllerTestHelper
5
-
6
- def setup
7
- remove_all_sitemap_fixtures_to_avoid_bugs
8
- given_a_site_exists
9
- end
10
-
11
- test "open" do
12
- get :open
13
- assert_response :success
14
- assert_select 'h1', "Open Page"
15
- end
16
-
17
- test "restricted members section should give standard CMS error page when not logged in" do
18
- restricted_section = Factory(:section, :path=>"/members")
19
-
20
- get :restricted
21
- assert_response 403
22
- assert_select 'title', "Access Denied"
23
- end
24
-
25
- test "restricted page should be visible to cmsadmins" do
26
- restricted_section = Factory(:section, :path=>"/members")
27
- login_as_cms_admin
28
-
29
- get :restricted
30
- assert_response :success
31
- assert_select "h1", Tests::PretendController::RESTRICTED_H1
32
- end
33
-
34
-
35
- # Matches content_controller_test
36
- test "not-found when not logged in" do
37
- get :not_found
38
- assert_response :missing
39
- assert_select "title", "Not Found"
40
- end
41
-
42
- # See content_controller_tests for similar behavio
43
- test "Throwing NotFound while logged in as admin will render error rather than 404 page." do
44
- login_as_cms_admin
45
-
46
- get :not_found
47
-
48
- assert_response :error, "Unlike ContentController Acts::ContentPage will have an error rather than 404 page."
49
- assert_select "title", "Error: ActiveRecord::RecordNotFound"
50
- end
51
-
52
- test "error" do
53
- get :error
54
- assert_response :error
55
- assert_select "title", "Server Error"
56
- end
57
- end
@@ -1,30 +0,0 @@
1
- require File.join(File.dirname(__FILE__) + '/../../test_helper')
2
-
3
- class CkeditorTest < ActionController::IntegrationTest
4
- include Cms::IntegrationTestHelper
5
-
6
- def setup
7
- login_as_cms_admin
8
- end
9
-
10
- # These tests are broken as of 3.1.x and are fixed in later updates. So skip running them for now.
11
- def skip_test_ckeditor_select
12
- get new_cms_html_block_url
13
- assert_response :success
14
-
15
- assert_tag :tag => "select",
16
- :attributes => { :id => "dhtml_selector",
17
- :onchange => "toggleEditor('html_block_content', this)"},
18
- :child => { :tag => "option", :content => "Rich Text" }
19
- end
20
-
21
- # These tests are broken as of 3.1.x and are fixed in later updates. So skip running them for now.
22
- def skip_test_ckeditor_js_added
23
- get new_cms_html_block_url
24
- assert_response :success
25
-
26
- assert_tag :tag => "script",
27
- :attributes => { :src => /^\/bcms\/ckeditor\/ckeditor.js.*/}
28
- end
29
-
30
- end
@@ -1,56 +0,0 @@
1
- require File.join(File.dirname(__FILE__) + '/../../test_helper')
2
-
3
- class PasswordManagementTest < ActionController::IntegrationTest
4
-
5
- def setup
6
- @group = Factory(:group, :name => "Member")
7
-
8
- @section = Factory(:section, :parent => root_section, :name => "Passwords", :path => "/passwords", :allow_groups=>:all)
9
- @section.save
10
-
11
- @user = Factory(:user, :email => "dexter@miamidade.gov")
12
- @user.groups << @group
13
- @user.save!
14
-
15
- @forgot_password_page = Factory(:page, :section => @section, :name => "Forgot password", :path => "/passwords")
16
- @reset_password_page = Factory(:page, :section => @section, :name => "Reset password", :path => "/passwords/reset")
17
-
18
- @forgot_password_portlet = ForgotPasswordPortlet.create!(:name => "Forgot Password",
19
- :template => ForgotPasswordPortlet.default_template,
20
- :connect_to_page_id => @forgot_password_page.id,
21
- :connect_to_container => "main",
22
- :publish_on_save => true)
23
-
24
- @reset_password_portlet = ResetPasswordPortlet.create!(:name => "Reset Password",
25
- :template => ResetPasswordPortlet.default_template,
26
- :connect_to_page_id => @reset_password_page.id,
27
- :connect_to_container => "main",
28
- :publish_on_save => true)
29
-
30
- @forgot_password_page.publish!
31
- @reset_password_page.publish!
32
- ActionMailer::Base.deliveries = []
33
- end
34
-
35
- def test_forgot_password
36
- get "/passwords"
37
- assert_response :success
38
-
39
- post "/passwords", :email => User.last.email
40
- assert_response :success
41
- assert flash[:forgot_password][:notice]
42
- assert ActionMailer::Base.deliveries.empty?
43
- end
44
-
45
- def test_reset_password
46
- test_forgot_password
47
- token = User.last.reset_token
48
- get "/passwords/reset?token=#{token}"
49
- assert_response :success
50
-
51
- post "/passwords/reset", :token => token
52
- assert_response :success
53
- assert flash[:reset_password][:notice]
54
- end
55
-
56
- end
@@ -1,14 +0,0 @@
1
- require File.join(File.dirname(__FILE__) + '/../test_helper')
2
-
3
- class LoginTest < ActionController::IntegrationTest
4
- fixtures :all
5
-
6
- def test_login
7
- # get "/cms/login", {}, {"User-Agent" => "Test"}
8
- # assert_response :success
9
- #
10
- # post_via_redirect "/cms/login", {:login => "cmsadmin", :password => "cmsadmin"}, {"User-Agent" => "Test"}
11
- # assert_equal '/cms', path
12
- # assert_equal 'Logged in successfully', flash[:notice]
13
- end
14
- end