browsercms 3.1.5 → 3.3.0.beta

Sign up to get free protection for your applications and to get access to all the features.
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,4 +1,4 @@
1
1
  <div id="footer">
2
2
  <p>&copy; 1998-<%= Time.now.year %> <a href="#">BrowserMedia</a>. All Rights Reserved</p>
3
- <p>Browser CMS v<%= Cms.version %> Rails <%= RAILS_GEM_VERSION %> Env <%= Rails.env %></p>
3
+ <p>Browser CMS v<%= Cms.version %> | Rails <%= Rails.version %> | Env <%= Rails.env %></p>
4
4
  </div>
@@ -4,17 +4,13 @@
4
4
  <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
5
5
  <title><%= @page_title %></title>
6
6
  <%= stylesheet_link_tag 'cms/application', 'cms/date_picker', 'cms/sitemap', 'cms/taglist' %>
7
- <%= javascript_include_tag 'jquery', 'jquery-ui', 'jquery.dimensions' %>
8
- <%= javascript_include_tag 'jquery.cookie.js', 'jquery.selectbox-0.5.js' %>
9
- <%= javascript_include_tag 'jquery.taglist', '/cms/tags' %>
10
- <%= javascript_include_tag Cms.wysiwig_js %>
11
- <%= javascript_include_tag 'cms/application' %>
7
+ <%= javascript_include_tag :bcms_core %>
12
8
  <script type="text/javascript">
13
9
  jQuery(function($){
14
10
  <% if protect_against_forgery? %>
15
11
  $.cms.authenticity_token = '<%= form_authenticity_token %>'
16
12
  <% end %>
17
- $('input.date_picker').datepicker({ changeFirstDay: false })
13
+ $('input.date_picker').datepicker({ changeFirstDay: false, changeMonth:true, changeYear:true, closeText:'', showButtonPanel: true, dateFormat: '<%= Cms::DatePicker.jquery_format %>' })
18
14
  })
19
15
  </script>
20
16
  <%= yield :html_head %>
@@ -1,51 +1,51 @@
1
- <% content_for :html_head do %>
2
- <%= stylesheet_link_tag("cms/administration.css") %>
3
- <%= stylesheet_link_tag("cms/content_library.css") %>
1
+ <%= content_for :html_head do %>
2
+ <%= stylesheet_link_tag("cms/administration.css") %>
3
+ <%= stylesheet_link_tag("cms/content_library.css") %>
4
4
  <% end %>
5
5
  <%= render :partial => 'layouts/cms/head' %>
6
6
  <body>
7
- <div id="wrapper">
8
- <%= render_cms_toolbar(:administration) %>
9
- <div id="main">
10
-
7
+ <div id="wrapper">
8
+ <%= render_cms_toolbar(:administration) %>
9
+ <div id="main">
10
+
11
11
  <% if current_user.able_to?(:administrate) %>
12
- <div class="top_cap_menu"></div>
12
+ <div class="top_cap_menu"></div>
13
13
  <div id="menu">
14
- <%= render :partial => 'cms/shared/admin_sidebar' %>
14
+ <%= render :partial => 'cms/shared/admin_sidebar' %>
15
15
  </div>
16
16
  <div id="contentwrap">
17
17
  <% else %>
18
- <div class="top_cap"></div>
19
- <div id="contentwrapbig">
18
+ <div class="top_cap"></div>
19
+ <div id="contentwrapbig">
20
+ <% end %>
21
+
22
+ <div id="functions">
23
+ <h1><%= @toolbar_title %></h1>
24
+ <%= yield :functions %>
25
+
26
+ </div>
27
+ <br clear="all"/>
28
+
29
+ <%= able_to?(:administrate) do %>
30
+ <div class="top_cap_content"></div>
20
31
  <% end %>
21
-
22
- <div id="functions">
23
- <h1><%= @toolbar_title %></h1>
24
- <%= yield :functions %>
25
32
 
26
- </div>
27
- <br clear="all" />
28
-
29
- <% able_to?(:administrate) do %>
30
- <div class="top_cap_content"></div>
31
- <% end %>
32
-
33
- <div id="content">
34
- <div class="pad">
35
- <%= yield %>
36
- </div>
33
+ <div id="content">
34
+ <div class="pad">
35
+ <%= yield %>
37
36
  </div>
38
37
  </div>
39
- <br clear="all" />
40
-
38
+ </div>
39
+ <br clear="all"/>
40
+
41
41
  <% if current_user.able_to?(:administrate) %>
42
- <div class="bottom_cap_content"></div>
42
+ <div class="bottom_cap_content"></div>
43
43
  <% else %>
44
- <div class="bottom_cap"></div>
44
+ <div class="bottom_cap"></div>
45
45
  <% end %>
46
-
46
+
47
47
  <%= render :partial => 'layouts/cms/footer' %>
48
+ </div>
48
49
  </div>
49
- </div>
50
50
  </body>
51
51
  </html>
@@ -1,5 +1,5 @@
1
- <% content_for :html_head do %>
2
- <% javascript_tag do %>
1
+ <%= content_for :html_head do %>
2
+ <%= javascript_tag do %>
3
3
  <% if %w[FileBlock ImageBlock].include?(content_type.name) && request.user_agent !~ /MSIE 6/ %>
4
4
  jQuery(function($) {
5
5
  $('#section_id').selectbox({width: '129px'});
@@ -25,7 +25,7 @@
25
25
  <div class="first">
26
26
  <h3>Search</h3>
27
27
  <div class="searchbox">
28
- <% form_tag cms_index_path_for(content_type), :method => :get do -%>
28
+ <%= form_tag cms_index_path_for(content_type), :method => :get do -%>
29
29
  <div id="search_term_container">
30
30
  <%= text_field_tag "search[term]", (params[:search] ? params[:search][:term] : nil) %>
31
31
  </div>
@@ -53,14 +53,14 @@
53
53
  <h3>Content Types</h3>
54
54
  <ul>
55
55
  <% ContentTypeGroup.all(:order => "content_type_groups.id").each do |group| %>
56
- <li<%= ' class="open"' if (group == content_type.content_type_group) %>>
56
+ <li<%= ' class="open"'.html_safe if (group == content_type.content_type_group) %>>
57
57
  <% if group.content_types.blank? %>
58
58
  <%= link_to h(group.name), "#" %>
59
59
  <% else %>
60
60
  <%= link_to h(group.name), cms_index_path_for(group.content_types.first) %>
61
61
  <ul>
62
62
  <% group.content_types.find(:all, :order => 'priority, name').each do |type| %>
63
- <li<%= ' class="on"' if content_type.is_child_of?(type) %>><%= link_to h(type.display_name), cms_index_path_for(type) %></li>
63
+ <li<%= ' class="on"'.html_safe if content_type.is_child_of?(type) %>><%= link_to h(type.display_name), cms_index_path_for(type) %></li>
64
64
  <% end -%>
65
65
  </ul>
66
66
  <% end -%>
@@ -5,7 +5,7 @@
5
5
  <title><%= @page_title %></title>
6
6
  <%= stylesheet_link_tag 'cms/application' %>
7
7
  <%= stylesheet_link_tag 'cms/page_toolbar' %>
8
- <%= javascript_include_tag 'jquery', 'jquery.selectbox-0.5' %>
8
+ <%= javascript_include_tag 'jquery', 'jquery.selectbox-0.5.js' %>
9
9
  <%= javascript_include_tag 'cms/application' %>
10
10
  <% if protect_against_forgery? %><script type="text/javascript">
11
11
  jQuery(function($){
@@ -1,7 +1,7 @@
1
1
  <div class="email-page-portlet">
2
- <% form_for @email_message, :url => cms_handler_path(@portlet, "deliver") do |f| %>
2
+ <%= form_for @email_message, :url => cms_handler_path(@portlet, "deliver") do |f| %>
3
3
  <%= hidden_field_tag :email_page_portlet_url, @email_page_portlet_url %>
4
- <%= f.error_messages %>
4
+ <%= f.cms_error_messages %>
5
5
  <p>
6
6
  <%= f.label :recipients %>
7
7
  <%= f.text_field :recipients %>
@@ -7,7 +7,7 @@
7
7
  <% end -%>
8
8
  <% end -%>
9
9
 
10
- <% form_tag do %>
10
+ <%= form_tag '' do %>
11
11
  <label for="email">Your account email address:</label>
12
12
  <%= text_field_tag "email" %><br>
13
13
  <%= submit_tag "Request reset password token"%>
@@ -1,10 +1,12 @@
1
1
  <div class="login-portlet">
2
2
  <% if logged_in? %>
3
3
  <p>Welcome, <%= current_user.login %></p>
4
- <p><%= link_to "Logout", cms_logout_path %></p>
4
+ <p><%= link_to "Logout", '' %></p>
5
+ <p><%#= link_to "Logout", cms_logout_path %></p>
5
6
  <% else %>
6
7
  <div class="error"><%= flash[:login_error] %></div>
7
- <% form_tag cms_login_path do %>
8
+ <%= form_tag '' do %>
9
+ <%#= form_tag cms_login_path do %>
8
10
  <%= hidden_field_tag :success_url, @success_url %>
9
11
  <%= hidden_field_tag :failure_url, @failure_url %>
10
12
  <p>
@@ -9,7 +9,7 @@
9
9
  <% end -%>
10
10
  <% end -%>
11
11
 
12
- <% form_tag do %>
12
+ <%= form_tag '' do %>
13
13
  <% if params[:token] -%>
14
14
  <%= hidden_field_tag "token", params[:token] %>
15
15
  <% end -%>
@@ -2,4 +2,4 @@
2
2
  uses BrowserCMS as gem.
3
3
  %>
4
4
  <% @page_title = 'Open With Layout' %>
5
- <% content_for :main do %>hello<% end %>
5
+ <%= content_for :main do %>hello<% end %>
data/bin/bcms CHANGED
File without changes
data/bin/bcms-upgrade ADDED
@@ -0,0 +1,232 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rubygems'
4
+ require 'thor'
5
+ require 'term/ansicolor'
6
+ require 'rails/generators/actions'
7
+ require 'active_support/core_ext/string/inflections'
8
+
9
+ class String
10
+ include Term::ANSIColor
11
+ end
12
+
13
+ class App < Thor
14
+ include Thor::Actions
15
+ include Rails::Generators::Actions
16
+
17
+ source_root(File.join(__FILE__, '../../lib/generators/cms/upgrade_module/templates'))
18
+
19
+ desc "check", "Checks the existing module to determine what needs to done."
20
+
21
+ def check
22
+ puts "The following issues are preventing a BrowserCMS/Rails 3 upgrade.\n".red.bold
23
+
24
+ # check for Jeweler usage
25
+ if File.exists?("Rakefile")
26
+ contents = ""
27
+ File.open("Rakefile", "rb") { |f| contents = f.read }
28
+
29
+ using_jeweler = contents.include?('jeweler')
30
+ if using_jeweler
31
+ migrate_jeweler
32
+ end
33
+ end
34
+
35
+ # Check for routes usage
36
+ if File.exists?("lib/#{name_of_module}/routes.rb")
37
+ contents = ""
38
+ File.open("lib/#{name_of_module}/routes.rb", "rb") { |f| contents = f.read }
39
+
40
+ using_rails2_routes = contents.include?('cms.')
41
+ if using_rails2_routes
42
+ migrate_routes
43
+ end
44
+ end
45
+
46
+ instructions = <<TEXT
47
+ Once there are no remaining changes have been made:
48
+ 1. Check in into source control
49
+ 2. Run bcms-upgrade rails cleanup bcms
50
+ TEXT
51
+ puts instructions
52
+ end
53
+
54
+ desc 'v3_3_0', "Upgrades BrowserCMS files from 3.1.x to 3.3.0 (Back up first)"
55
+ def v3_3_0
56
+ upgrade_to_3_3_0
57
+ end
58
+
59
+ desc 'module', "Upgrade a module from Rails 2 to Rails 3. (Backup before running this)"
60
+ def module
61
+ new_rails
62
+ cleanup_rails2_files
63
+ cleanup_rails_3
64
+ cleanup_module
65
+ upgrade_to_3_3_0
66
+ generate_bcms_module
67
+ next_steps
68
+ end
69
+
70
+ desc 'next_steps', "Reprints instructions on final steps (Use after 'upgrade')"
71
+ def next_steps
72
+ header = <<TEXT
73
+ Next Steps:
74
+ ============
75
+ TEXT
76
+ puts header.red
77
+
78
+ instructions = <<TEXT
79
+ This module has been upgraded to BrowserCMS 3.3 and Rails 3! Now just do the following to test:
80
+
81
+ 1. Verify the Gemfile is correct (it may be using MySQL and/or Jeweler, which your project won't need)
82
+ 2. There are several other files you should review that were likely overwritten by rails.
83
+ a. README - [Revert | Delete] Either revert this, or delete it. (If you had a README.markdown for instance)
84
+ b. test/test_helper [Merge | Keep] If you added anything custom to your test_helper, merge the changes into the new file.
85
+ c. config/routes.rb - Any non-standard routes in this file should probably be in your lib/#{name_of_module}/routes.rb so they get packaged with the gem
86
+ 3. rake db:drop db:create db:migrate db:seed - Rebuilds the database
87
+ 4. rake test - Check that your tests still pass
88
+ a. You may get test failure if your tests that don't use 'require 'test_helper' may need it. Just replace existing requires.
89
+ 5. rails server - Start the app and test
90
+ 6. Make sure the gemspec includes the correct files (lib/tasks/build_gem.rake should not be included)
91
+ 7. If you have migrations that need to be in the gem, edit lib/generators/#{name_of_module}/install/install_generators.
92
+ 8. Portlets/blocks may need to update their render.html.erb to include .html_safe for any content being output as HTML.
93
+ 9. Release the gem (rake release)
94
+
95
+ TEXT
96
+ puts instructions
97
+ end
98
+
99
+ private
100
+
101
+ def new_rails
102
+ puts "Overwriting with Rails 3 code."
103
+ run "rails new . -f"
104
+ end
105
+
106
+ # Removes any files which are Rails 2 specific
107
+ def cleanup_rails2_files
108
+ %w{about console dbconsole destroy generate performance plugin runner server}.each do |script_name|
109
+ remove_file "script/#{script_name}"
110
+ end
111
+ remove_file "config/initializers/new_rails_defaults.rb"
112
+
113
+ end
114
+
115
+ # Clean up or revert all files associated with Rails 3 that should be rolled back or removed.
116
+ def cleanup_rails_3
117
+ remove_file "public/index.html"
118
+ end
119
+
120
+ def cleanup_module
121
+ remove_file "rails/init.rb"
122
+ remove_file "rails"
123
+ remove_file "db/migrate/20080815014337_browsercms_3_0_0.rb"
124
+ remove_file "db/migrate/20081114172307_load_seed_data.rb"
125
+ remove_file "db/migrate/20091109175123_browsercms_3_0_5.rb"
126
+ remove_file "app/views/layouts/application.html.erb"
127
+ remove_file "config/initializers/init_module.rb"
128
+
129
+ puts "Reverting some files using git.".red
130
+ git :checkout => '.gitignore'
131
+ git :checkout => 'doc/README_FOR_APP'
132
+ git :checkout => 'config/database.yml'
133
+ end
134
+
135
+ def upgrade_to_3_3_0
136
+ # Remove public files where are now served from CMS core.
137
+ remove_file 'public/bcms/ckeditor'
138
+ remove_file 'public/images/cms'
139
+ remove_file 'public/javascripts/cms'
140
+ remove_file 'public/stylesheets/cms'
141
+ %w{jquery jquery.-ui jquery.contextMenu jquery.cookie jquery.dimensions jquery.selectbox-0.5 jquery.taglist jquery.thickbox}.each do |js|
142
+ remove_file "public/javascripts/#{js}.js"
143
+ end
144
+
145
+ copy_file '20100705083859_browsercms_3_3_0.rb', 'db/migrate/20100705083859_browsercms_3_3_0.rb'
146
+ end
147
+
148
+ def generate_bcms_module
149
+ gem 'browsercms'
150
+ gem 'mysql'
151
+ gem 'jeweler', :group=>:development
152
+
153
+ # Allows gem to be loaded as a engine for testing.
154
+ append_to_file 'Gemfile', 'gemspec'
155
+
156
+
157
+ template 'engine.erb', "lib/#{name_of_module}/engine.rb"
158
+ prepend_to_file "lib/#{name_of_module}.rb" do
159
+ "require '#{name_of_module}/engine'\n"
160
+ end
161
+ route "routes_for_browser_cms"
162
+ route "routes_for_#{name_of_module}"
163
+
164
+ template 'install.erb', "lib/generators/#{name_of_module}/install/install_generator.rb"
165
+ template 'USAGE.erb', "lib/generators/#{name_of_module}/install/USAGE"
166
+ empty_directory "lib/generators/#{name_of_module}/install/templates"
167
+
168
+
169
+ run "rails g browser_cms:cms -f"
170
+ run 'rails g cms:template default'
171
+
172
+
173
+ end
174
+
175
+
176
+ def migrate_jeweler
177
+
178
+ instructions = <<TEXT
179
+ Move Jeweler Code
180
+ ============
181
+ 1. Copy any Jeweler related files from your Rakefile into lib/tasks/build_gem.rake.
182
+ 2. Run rake -T and make sure all Jeweler tasks are still there.
183
+
184
+ Alternatively, you may use bundler to handle the packaging.
185
+ TEXT
186
+ alert("Using Jeweler", instructions, "https://github.com/browsermedia/browsercms/wiki/Upgrading-Jeweler-with-Rails-3", ["Rakefile"])
187
+ copy_file 'build_gem.rake', 'lib/tasks/build_gem.rake'
188
+
189
+ end
190
+
191
+
192
+ def migrate_routes
193
+ instructions = <<TEXT
194
+ Edit lib/#{name_of_module}/routes.rb
195
+ =====
196
+ # Make it Rails 3 style
197
+ module Cms::Routes
198
+ def routes_for_#{name_of_module}
199
+ namespace(:cms) do
200
+ content_blocks :name_of_blocks
201
+ end
202
+ end
203
+ end
204
+ TEXT
205
+ alert("Obsolete Routing API", instructions, 'https://github.com/browsermedia/browsercms/wiki/Upgrading-Routes-to-Rails-3', ["lib/#{name_of_module}/routes.rb"])
206
+
207
+ end
208
+
209
+ def name_of_module
210
+ File.basename(Dir.pwd)
211
+ end
212
+
213
+ def gem_name
214
+ name_of_module.camelize
215
+ end
216
+
217
+ # Borrowed from https://github.com/jm/rails-upgrade/blob/master/lib/rails-upgrade/upgraders/check.rb
218
+ def alert(title, text, more_info_url, culprits)
219
+ puts title.red.bold
220
+ puts text.white
221
+ puts "More information: ".white.bold + more_info_url.blue
222
+ puts
223
+ puts "The culprits: ".white
224
+ culprits.each do |c|
225
+ puts "\t- #{c}".yellow
226
+ end
227
+ ensure
228
+ puts "".reset
229
+ end
230
+ end
231
+
232
+ App.start
data/bin/browsercms CHANGED
@@ -60,14 +60,14 @@ end
60
60
  # Replace short hand versions of the templates with the absolute path on the local machine.
61
61
  CommandLine.set_template(ARGV)
62
62
  command = (RUBY_PLATFORM =~ /mswin32/ ? "cmd /c " : "")
63
- command += "rails #{ARGV.join(" ")}"
63
+ command += "rails new #{ARGV.join(" ")}"
64
64
  success = system(command)
65
65
 
66
66
  project_name = ARGV[0]
67
67
  if (success)
68
68
  puts "\nCreated new BrowserCMS project '#{project_name}'."
69
69
  puts " To get started, type 'cd #{project_name}'"
70
- puts " then 'ruby script/server' and open your browser to 'http://localhost:3000'."
70
+ puts " then 'rails server' and open your browser to 'http://localhost:3000'."
71
71
  else
72
72
  puts "\n Unable to create BrowserCMS project '#{project_name}'."
73
73
  end