browsercms 3.0.6 → 3.1.0

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 (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
@@ -0,0 +1,275 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
+ <head>
8
+ <title>Class: Tests::PretendController</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
10
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
12
+ <script type="text/javascript">
13
+ // <![CDATA[
14
+
15
+ function popupCode( url ) {
16
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
+ }
18
+
19
+ function toggleCode( id ) {
20
+ if ( document.getElementById )
21
+ elem = document.getElementById( id );
22
+ else if ( document.all )
23
+ elem = eval( "document.all." + id );
24
+ else
25
+ return false;
26
+
27
+ elemStyle = elem.style;
28
+
29
+ if ( elemStyle.display != "block" ) {
30
+ elemStyle.display = "block"
31
+ } else {
32
+ elemStyle.display = "none"
33
+ }
34
+
35
+ return true;
36
+ }
37
+
38
+ // Make codeblocks hidden by default
39
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
+
41
+ // ]]>
42
+ </script>
43
+
44
+ </head>
45
+ <body>
46
+
47
+
48
+
49
+ <div id="classHeader">
50
+ <table class="header-table">
51
+ <tr class="top-aligned-row">
52
+ <td><strong>Class</strong></td>
53
+ <td class="class-name-in-header">Tests::PretendController</td>
54
+ </tr>
55
+ <tr class="top-aligned-row">
56
+ <td><strong>In:</strong></td>
57
+ <td>
58
+ <a href="../../files/app/controllers/tests/pretend_controller_rb.html">
59
+ app/controllers/tests/pretend_controller.rb
60
+ </a>
61
+ <br />
62
+ </td>
63
+ </tr>
64
+
65
+ <tr class="top-aligned-row">
66
+ <td><strong>Parent:</strong></td>
67
+ <td>
68
+ <a href="../ApplicationController.html">
69
+ ApplicationController
70
+ </a>
71
+ </td>
72
+ </tr>
73
+ </table>
74
+ </div>
75
+ <!-- banner header -->
76
+
77
+ <div id="bodyContent">
78
+
79
+
80
+
81
+ <div id="contextContent">
82
+
83
+ <div id="description">
84
+ <p>
85
+ This class exists to provide a test for including page behavior in
86
+ controllers. I didn&#8216;t know of a way to add functional tests for
87
+ controllers/routes that aren&#8216;t in the apps directory.
88
+ </p>
89
+ <p>
90
+ This should be moved to the test directory if possible.
91
+ </p>
92
+
93
+ </div>
94
+
95
+
96
+ </div>
97
+
98
+ <div id="method-list">
99
+ <h3 class="section-bar">Methods</h3>
100
+
101
+ <div class="name-list">
102
+ <a href="#M000255">error</a>&nbsp;&nbsp;
103
+ <a href="#M000256">not_found</a>&nbsp;&nbsp;
104
+ <a href="#M000254">open</a>&nbsp;&nbsp;
105
+ <a href="#M000257">open_with_layout</a>&nbsp;&nbsp;
106
+ <a href="#M000253">restricted</a>&nbsp;&nbsp;
107
+ </div>
108
+ </div>
109
+
110
+ </div>
111
+
112
+
113
+ <!-- if includes -->
114
+ <div id="includes">
115
+ <h3 class="section-bar">Included Modules</h3>
116
+
117
+ <div id="includes-list">
118
+ <span class="include-name"><a href="../Cms/Acts/ContentPage.html">Cms::Acts::ContentPage</a></span>
119
+ </div>
120
+ </div>
121
+
122
+ <div id="section">
123
+
124
+
125
+ <div id="constants-list">
126
+ <h3 class="section-bar">Constants</h3>
127
+
128
+ <div class="name-list">
129
+ <table summary="Constants">
130
+ <tr class="top-aligned-row context-row">
131
+ <td class="context-item-name">RESTRICTED_H1</td>
132
+ <td>=</td>
133
+ <td class="context-item-value">&quot;Restricted&quot;</td>
134
+ </tr>
135
+ </table>
136
+ </div>
137
+ </div>
138
+
139
+
140
+
141
+
142
+
143
+
144
+ <!-- if method_list -->
145
+ <div id="methods">
146
+ <h3 class="section-bar">Public Instance methods</h3>
147
+
148
+ <div id="method-M000255" class="method-detail">
149
+ <a name="M000255"></a>
150
+
151
+ <div class="method-heading">
152
+ <a href="#M000255" class="method-signature">
153
+ <span class="method-name">error</span><span class="method-args">()</span>
154
+ </a>
155
+ </div>
156
+
157
+ <div class="method-description">
158
+ <p><a class="source-toggle" href="#"
159
+ onclick="toggleCode('M000255-source');return false;">[Source]</a></p>
160
+ <div class="method-source-code" id="M000255-source">
161
+ <pre>
162
+ <span class="ruby-comment cmt"># File app/controllers/tests/pretend_controller.rb, line 21</span>
163
+ 21: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">error</span>
164
+ 22: <span class="ruby-identifier">raise</span> <span class="ruby-constant">StandardError</span>
165
+ 23: <span class="ruby-keyword kw">end</span>
166
+ </pre>
167
+ </div>
168
+ </div>
169
+ </div>
170
+
171
+ <div id="method-M000256" class="method-detail">
172
+ <a name="M000256"></a>
173
+
174
+ <div class="method-heading">
175
+ <a href="#M000256" class="method-signature">
176
+ <span class="method-name">not_found</span><span class="method-args">()</span>
177
+ </a>
178
+ </div>
179
+
180
+ <div class="method-description">
181
+ <p><a class="source-toggle" href="#"
182
+ onclick="toggleCode('M000256-source');return false;">[Source]</a></p>
183
+ <div class="method-source-code" id="M000256-source">
184
+ <pre>
185
+ <span class="ruby-comment cmt"># File app/controllers/tests/pretend_controller.rb, line 25</span>
186
+ 25: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">not_found</span>
187
+ 26: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ActiveRecord</span><span class="ruby-operator">::</span><span class="ruby-constant">RecordNotFound</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">&quot;This thing was missing!&quot;</span>)
188
+ 27: <span class="ruby-keyword kw">end</span>
189
+ </pre>
190
+ </div>
191
+ </div>
192
+ </div>
193
+
194
+ <div id="method-M000254" class="method-detail">
195
+ <a name="M000254"></a>
196
+
197
+ <div class="method-heading">
198
+ <a href="#M000254" class="method-signature">
199
+ <span class="method-name">open</span><span class="method-args">()</span>
200
+ </a>
201
+ </div>
202
+
203
+ <div class="method-description">
204
+ <p><a class="source-toggle" href="#"
205
+ onclick="toggleCode('M000254-source');return false;">[Source]</a></p>
206
+ <div class="method-source-code" id="M000254-source">
207
+ <pre>
208
+ <span class="ruby-comment cmt"># File app/controllers/tests/pretend_controller.rb, line 17</span>
209
+ 17: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">open</span>
210
+ 18: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:text</span> =<span class="ruby-operator">&gt;</span><span class="ruby-value str">&quot;&lt;h1&gt;Open Page&lt;/h1&gt; You can see this public page.&quot;</span>
211
+ 19: <span class="ruby-keyword kw">end</span>
212
+ </pre>
213
+ </div>
214
+ </div>
215
+ </div>
216
+
217
+ <div id="method-M000257" class="method-detail">
218
+ <a name="M000257"></a>
219
+
220
+ <div class="method-heading">
221
+ <a href="#M000257" class="method-signature">
222
+ <span class="method-name">open_with_layout</span><span class="method-args">()</span>
223
+ </a>
224
+ </div>
225
+
226
+ <div class="method-description">
227
+ <p><a class="source-toggle" href="#"
228
+ onclick="toggleCode('M000257-source');return false;">[Source]</a></p>
229
+ <div class="method-source-code" id="M000257-source">
230
+ <pre>
231
+ <span class="ruby-comment cmt"># File app/controllers/tests/pretend_controller.rb, line 29</span>
232
+ 29: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">open_with_layout</span>
233
+ 30: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:layout=</span><span class="ruby-operator">&gt;</span><span class="ruby-value str">&quot;templates/subpage&quot;</span>
234
+ 31: <span class="ruby-keyword kw">end</span>
235
+ </pre>
236
+ </div>
237
+ </div>
238
+ </div>
239
+
240
+ <div id="method-M000253" class="method-detail">
241
+ <a name="M000253"></a>
242
+
243
+ <div class="method-heading">
244
+ <a href="#M000253" class="method-signature">
245
+ <span class="method-name">restricted</span><span class="method-args">()</span>
246
+ </a>
247
+ </div>
248
+
249
+ <div class="method-description">
250
+ <p><a class="source-toggle" href="#"
251
+ onclick="toggleCode('M000253-source');return false;">[Source]</a></p>
252
+ <div class="method-source-code" id="M000253-source">
253
+ <pre>
254
+ <span class="ruby-comment cmt"># File app/controllers/tests/pretend_controller.rb, line 13</span>
255
+ 13: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">restricted</span>
256
+ 14: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:text</span> =<span class="ruby-operator">&gt;</span><span class="ruby-node">&quot;&lt;h1&gt;#{RESTRICTED_H1}&lt;/h1&gt; You can see this restricted page.&quot;</span>
257
+ 15: <span class="ruby-keyword kw">end</span>
258
+ </pre>
259
+ </div>
260
+ </div>
261
+ </div>
262
+
263
+
264
+ </div>
265
+
266
+
267
+ </div>
268
+
269
+
270
+ <div id="validator-badges">
271
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
272
+ </div>
273
+
274
+ </body>
275
+ </html>
@@ -86,25 +86,29 @@
86
86
  <h3 class="section-bar">Methods</h3>
87
87
 
88
88
  <div class="name-list">
89
- <a href="#M000032">able_to?</a>&nbsp;&nbsp;
90
- <a href="#M000034">able_to_edit?</a>&nbsp;&nbsp;
91
- <a href="#M000035">able_to_edit_or_publish_content?</a>&nbsp;&nbsp;
92
- <a href="#M000033">able_to_view?</a>&nbsp;&nbsp;
93
- <a href="#M000017">current</a>&nbsp;&nbsp;
94
- <a href="#M000018">current=</a>&nbsp;&nbsp;
95
- <a href="#M000021">disable</a>&nbsp;&nbsp;
96
- <a href="#M000022">disable!</a>&nbsp;&nbsp;
97
- <a href="#M000031">editable_sections</a>&nbsp;&nbsp;
98
- <a href="#M000024">enable</a>&nbsp;&nbsp;
99
- <a href="#M000025">enable!</a>&nbsp;&nbsp;
100
- <a href="#M000023">expired?</a>&nbsp;&nbsp;
101
- <a href="#M000028">expires_at_formatted</a>&nbsp;&nbsp;
102
- <a href="#M000026">full_name</a>&nbsp;&nbsp;
103
- <a href="#M000027">full_name_with_login</a>&nbsp;&nbsp;
104
- <a href="#M000019">guest</a>&nbsp;&nbsp;
105
- <a href="#M000020">guest?</a>&nbsp;&nbsp;
106
- <a href="#M000029">permissions</a>&nbsp;&nbsp;
107
- <a href="#M000030">viewable_sections</a>&nbsp;&nbsp;
89
+ <a href="#M000036">able_to?</a>&nbsp;&nbsp;
90
+ <a href="#M000039">able_to_edit?</a>&nbsp;&nbsp;
91
+ <a href="#M000041">able_to_edit_or_publish_content?</a>&nbsp;&nbsp;
92
+ <a href="#M000038">able_to_modify?</a>&nbsp;&nbsp;
93
+ <a href="#M000040">able_to_publish?</a>&nbsp;&nbsp;
94
+ <a href="#M000037">able_to_view?</a>&nbsp;&nbsp;
95
+ <a href="#M000023">cms_access?</a>&nbsp;&nbsp;
96
+ <a href="#M000019">current</a>&nbsp;&nbsp;
97
+ <a href="#M000020">current=</a>&nbsp;&nbsp;
98
+ <a href="#M000024">disable</a>&nbsp;&nbsp;
99
+ <a href="#M000025">disable!</a>&nbsp;&nbsp;
100
+ <a href="#M000027">enable</a>&nbsp;&nbsp;
101
+ <a href="#M000028">enable!</a>&nbsp;&nbsp;
102
+ <a href="#M000026">expired?</a>&nbsp;&nbsp;
103
+ <a href="#M000032">expires_at_formatted</a>&nbsp;&nbsp;
104
+ <a href="#M000029">full_name</a>&nbsp;&nbsp;
105
+ <a href="#M000031">full_name_or_login</a>&nbsp;&nbsp;
106
+ <a href="#M000030">full_name_with_login</a>&nbsp;&nbsp;
107
+ <a href="#M000021">guest</a>&nbsp;&nbsp;
108
+ <a href="#M000022">guest?</a>&nbsp;&nbsp;
109
+ <a href="#M000035">modifiable_sections</a>&nbsp;&nbsp;
110
+ <a href="#M000033">permissions</a>&nbsp;&nbsp;
111
+ <a href="#M000034">viewable_sections</a>&nbsp;&nbsp;
108
112
  </div>
109
113
  </div>
110
114
 
@@ -133,70 +137,70 @@
133
137
  <div id="methods">
134
138
  <h3 class="section-bar">Public Class methods</h3>
135
139
 
136
- <div id="method-M000017" class="method-detail">
137
- <a name="M000017"></a>
140
+ <div id="method-M000019" class="method-detail">
141
+ <a name="M000019"></a>
138
142
 
139
143
  <div class="method-heading">
140
- <a href="#M000017" class="method-signature">
144
+ <a href="#M000019" class="method-signature">
141
145
  <span class="method-name">current</span><span class="method-args">()</span>
142
146
  </a>
143
147
  </div>
144
148
 
145
149
  <div class="method-description">
146
150
  <p><a class="source-toggle" href="#"
147
- onclick="toggleCode('M000017-source');return false;">[Source]</a></p>
148
- <div class="method-source-code" id="M000017-source">
151
+ onclick="toggleCode('M000019-source');return false;">[Source]</a></p>
152
+ <div class="method-source-code" id="M000019-source">
149
153
  <pre>
150
- <span class="ruby-comment cmt"># File app/models/user.rb, line 27</span>
151
- 27: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">current</span>
152
- 28: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:cms_user</span>]
153
- 29: <span class="ruby-keyword kw">end</span>
154
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 26</span>
155
+ 26: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">current</span>
156
+ 27: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:cms_user</span>]
157
+ 28: <span class="ruby-keyword kw">end</span>
154
158
  </pre>
155
159
  </div>
156
160
  </div>
157
161
  </div>
158
162
 
159
- <div id="method-M000018" class="method-detail">
160
- <a name="M000018"></a>
163
+ <div id="method-M000020" class="method-detail">
164
+ <a name="M000020"></a>
161
165
 
162
166
  <div class="method-heading">
163
- <a href="#M000018" class="method-signature">
167
+ <a href="#M000020" class="method-signature">
164
168
  <span class="method-name">current=</span><span class="method-args">(user)</span>
165
169
  </a>
166
170
  </div>
167
171
 
168
172
  <div class="method-description">
169
173
  <p><a class="source-toggle" href="#"
170
- onclick="toggleCode('M000018-source');return false;">[Source]</a></p>
171
- <div class="method-source-code" id="M000018-source">
174
+ onclick="toggleCode('M000020-source');return false;">[Source]</a></p>
175
+ <div class="method-source-code" id="M000020-source">
172
176
  <pre>
173
- <span class="ruby-comment cmt"># File app/models/user.rb, line 30</span>
174
- 30: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">current=</span>(<span class="ruby-identifier">user</span>)
175
- 31: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:cms_user</span>] = <span class="ruby-identifier">user</span>
176
- 32: <span class="ruby-keyword kw">end</span>
177
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 29</span>
178
+ 29: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">current=</span>(<span class="ruby-identifier">user</span>)
179
+ 30: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:cms_user</span>] = <span class="ruby-identifier">user</span>
180
+ 31: <span class="ruby-keyword kw">end</span>
177
181
  </pre>
178
182
  </div>
179
183
  </div>
180
184
  </div>
181
185
 
182
- <div id="method-M000019" class="method-detail">
183
- <a name="M000019"></a>
186
+ <div id="method-M000021" class="method-detail">
187
+ <a name="M000021"></a>
184
188
 
185
189
  <div class="method-heading">
186
- <a href="#M000019" class="method-signature">
190
+ <a href="#M000021" class="method-signature">
187
191
  <span class="method-name">guest</span><span class="method-args">(options = {})</span>
188
192
  </a>
189
193
  </div>
190
194
 
191
195
  <div class="method-description">
192
196
  <p><a class="source-toggle" href="#"
193
- onclick="toggleCode('M000019-source');return false;">[Source]</a></p>
194
- <div class="method-source-code" id="M000019-source">
197
+ onclick="toggleCode('M000021-source');return false;">[Source]</a></p>
198
+ <div class="method-source-code" id="M000021-source">
195
199
  <pre>
196
- <span class="ruby-comment cmt"># File app/models/user.rb, line 34</span>
197
- 34: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">guest</span>(<span class="ruby-identifier">options</span> = {})
198
- 35: <span class="ruby-constant">GuestUser</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">options</span>)
199
- 36: <span class="ruby-keyword kw">end</span>
200
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 33</span>
201
+ 33: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">guest</span>(<span class="ruby-identifier">options</span> = {})
202
+ 34: <span class="ruby-constant">GuestUser</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">options</span>)
203
+ 35: <span class="ruby-keyword kw">end</span>
200
204
  </pre>
201
205
  </div>
202
206
  </div>
@@ -204,11 +208,11 @@
204
208
 
205
209
  <h3 class="section-bar">Public Instance methods</h3>
206
210
 
207
- <div id="method-M000032" class="method-detail">
208
- <a name="M000032"></a>
211
+ <div id="method-M000036" class="method-detail">
212
+ <a name="M000036"></a>
209
213
 
210
214
  <div class="method-heading">
211
- <a href="#M000032" class="method-signature">
215
+ <a href="#M000036" class="method-signature">
212
216
  <span class="method-name">able_to?</span><span class="method-args">(*required_permissions)</span>
213
217
  </a>
214
218
  </div>
@@ -216,176 +220,208 @@
216
220
  <div class="method-description">
217
221
  <p>
218
222
  Expects a list of names of Permissions true if the user has any of the <a
219
- href="User.html#M000029">permissions</a>
223
+ href="User.html#M000033">permissions</a>
220
224
  </p>
221
225
  <p><a class="source-toggle" href="#"
222
- onclick="toggleCode('M000032-source');return false;">[Source]</a></p>
223
- <div class="method-source-code" id="M000032-source">
226
+ onclick="toggleCode('M000036-source');return false;">[Source]</a></p>
227
+ <div class="method-source-code" id="M000036-source">
224
228
  <pre>
225
- <span class="ruby-comment cmt"># File app/models/user.rb, line 98</span>
226
- 98: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">able_to?</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">required_permissions</span>)
227
- 99: <span class="ruby-identifier">perms</span> = <span class="ruby-identifier">required_permissions</span>.<span class="ruby-identifier">map</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">:to_sym</span>)
228
- 100: <span class="ruby-identifier">permissions</span>.<span class="ruby-identifier">any?</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">p</span><span class="ruby-operator">|</span>
229
- 101: <span class="ruby-identifier">perms</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">p</span>.<span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_sym</span>)
230
- 102: <span class="ruby-keyword kw">end</span>
231
- 103: <span class="ruby-keyword kw">end</span>
229
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 111</span>
230
+ 111: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">able_to?</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">required_permissions</span>)
231
+ 112: <span class="ruby-identifier">perms</span> = <span class="ruby-identifier">required_permissions</span>.<span class="ruby-identifier">map</span>(<span class="ruby-operator">&amp;</span><span class="ruby-identifier">:to_sym</span>)
232
+ 113: <span class="ruby-identifier">permissions</span>.<span class="ruby-identifier">any?</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">p</span><span class="ruby-operator">|</span>
233
+ 114: <span class="ruby-identifier">perms</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">p</span>.<span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_sym</span>)
234
+ 115: <span class="ruby-keyword kw">end</span>
235
+ 116: <span class="ruby-keyword kw">end</span>
232
236
  </pre>
233
237
  </div>
234
238
  </div>
235
239
  </div>
236
240
 
237
- <div id="method-M000034" class="method-detail">
238
- <a name="M000034"></a>
241
+ <div id="method-M000039" class="method-detail">
242
+ <a name="M000039"></a>
239
243
 
240
244
  <div class="method-heading">
241
- <a href="#M000034" class="method-signature">
242
- <span class="method-name">able_to_edit?</span><span class="method-args">(section)</span>
245
+ <a href="#M000039" class="method-signature">
246
+ <span class="method-name">able_to_edit?</span><span class="method-args">(object)</span>
243
247
  </a>
244
248
  </div>
245
249
 
246
250
  <div class="method-description">
247
251
  <p>
248
- Expects section to be a <a href="Section.html">Section</a> Returns true if
249
- any of the sections of the groups that have group_type = &#8216;CMS <a
250
- href="User.html">User</a>&#8217; that the user is in match the section.
252
+ Expects node to be a <a href="Section.html">Section</a>, <a
253
+ href="Page.html">Page</a> or <a href="Link.html">Link</a> Returns true if
254
+ the specified node, or any of its ancestor sections, is editable by any of
255
+ the user&#8216;s &#8216;CMS <a href="User.html">User</a>&#8217; groups.
251
256
  </p>
252
257
  <p><a class="source-toggle" href="#"
253
- onclick="toggleCode('M000034-source');return false;">[Source]</a></p>
254
- <div class="method-source-code" id="M000034-source">
258
+ onclick="toggleCode('M000039-source');return false;">[Source]</a></p>
259
+ <div class="method-source-code" id="M000039-source">
255
260
  <pre>
256
- <span class="ruby-comment cmt"># File app/models/user.rb, line 117</span>
257
- 117: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">able_to_edit?</span>(<span class="ruby-identifier">section</span>)
258
- 118: <span class="ruby-operator">!</span><span class="ruby-operator">!</span>(<span class="ruby-identifier">editable_sections</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">section</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">able_to?</span>(<span class="ruby-identifier">:edit_content</span>))
259
- 119: <span class="ruby-keyword kw">end</span>
261
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 157</span>
262
+ 157: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">able_to_edit?</span>(<span class="ruby-identifier">object</span>)
263
+ 158: <span class="ruby-identifier">able_to?</span>(<span class="ruby-identifier">:edit_content</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">able_to_modify?</span>(<span class="ruby-identifier">object</span>)
264
+ 159: <span class="ruby-keyword kw">end</span>
260
265
  </pre>
261
266
  </div>
262
267
  </div>
263
268
  </div>
264
269
 
265
- <div id="method-M000035" class="method-detail">
266
- <a name="M000035"></a>
270
+ <div id="method-M000041" class="method-detail">
271
+ <a name="M000041"></a>
267
272
 
268
273
  <div class="method-heading">
269
- <a href="#M000035" class="method-signature">
274
+ <a href="#M000041" class="method-signature">
270
275
  <span class="method-name">able_to_edit_or_publish_content?</span><span class="method-args">()</span>
271
276
  </a>
272
277
  </div>
273
278
 
274
279
  <div class="method-description">
275
280
  <p><a class="source-toggle" href="#"
276
- onclick="toggleCode('M000035-source');return false;">[Source]</a></p>
277
- <div class="method-source-code" id="M000035-source">
281
+ onclick="toggleCode('M000041-source');return false;">[Source]</a></p>
282
+ <div class="method-source-code" id="M000041-source">
278
283
  <pre>
279
- <span class="ruby-comment cmt"># File app/models/user.rb, line 121</span>
280
- 121: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">able_to_edit_or_publish_content?</span>
281
- 122: <span class="ruby-identifier">able_to?</span>(<span class="ruby-identifier">:edit_content</span>, <span class="ruby-identifier">:publish_content</span>)
282
- 123: <span class="ruby-keyword kw">end</span>
284
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 165</span>
285
+ 165: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">able_to_edit_or_publish_content?</span>
286
+ 166: <span class="ruby-identifier">able_to?</span>(<span class="ruby-identifier">:edit_content</span>, <span class="ruby-identifier">:publish_content</span>)
287
+ 167: <span class="ruby-keyword kw">end</span>
283
288
  </pre>
284
289
  </div>
285
290
  </div>
286
291
  </div>
287
292
 
288
- <div id="method-M000033" class="method-detail">
289
- <a name="M000033"></a>
293
+ <div id="method-M000038" class="method-detail">
294
+ <a name="M000038"></a>
290
295
 
291
296
  <div class="method-heading">
292
- <a href="#M000033" class="method-signature">
293
- <span class="method-name">able_to_view?</span><span class="method-args">(object)</span>
297
+ <a href="#M000038" class="method-signature">
298
+ <span class="method-name">able_to_modify?</span><span class="method-args">(object)</span>
294
299
  </a>
295
300
  </div>
296
301
 
297
302
  <div class="method-description">
298
- <p>
299
- Expects object to be an object or a section If it&#8216;s a section, that
300
- will be used If it&#8216;s not a section, it will call section on the
301
- object returns true if any of the sections of the groups the user is in
302
- matches the page&#8216;s section.
303
- </p>
304
303
  <p><a class="source-toggle" href="#"
305
- onclick="toggleCode('M000033-source');return false;">[Source]</a></p>
306
- <div class="method-source-code" id="M000033-source">
304
+ onclick="toggleCode('M000038-source');return false;">[Source]</a></p>
305
+ <div class="method-source-code" id="M000038-source">
307
306
  <pre>
308
- <span class="ruby-comment cmt"># File app/models/user.rb, line 109</span>
309
- 109: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">able_to_view?</span>(<span class="ruby-identifier">object</span>)
310
- 110: <span class="ruby-identifier">section</span> = <span class="ruby-identifier">object</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Section</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">object</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">object</span>.<span class="ruby-identifier">section</span>
311
- 111: <span class="ruby-operator">!</span><span class="ruby-operator">!</span>(<span class="ruby-identifier">viewable_sections</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">section</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">groups</span>.<span class="ruby-identifier">cms_access</span>.<span class="ruby-identifier">count</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>)
312
- 112: <span class="ruby-keyword kw">end</span>
307
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 139</span>
308
+ 139: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">able_to_modify?</span>(<span class="ruby-identifier">object</span>)
309
+ 140: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">object</span>
310
+ 141: <span class="ruby-keyword kw">when</span> <span class="ruby-constant">Section</span>
311
+ 142: <span class="ruby-identifier">modifiable_sections</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">object</span>)
312
+ 143: <span class="ruby-keyword kw">when</span> <span class="ruby-constant">Page</span>, <span class="ruby-constant">Link</span>
313
+ 144: <span class="ruby-identifier">modifiable_sections</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">object</span>.<span class="ruby-identifier">section</span>)
314
+ 145: <span class="ruby-keyword kw">else</span>
315
+ 146: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">object</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-identifier">:connectable?</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">object</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">connectable?</span>
316
+ 147: <span class="ruby-identifier">object</span>.<span class="ruby-identifier">connected_pages</span>.<span class="ruby-identifier">all?</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">page</span><span class="ruby-operator">|</span> <span class="ruby-identifier">able_to_modify?</span>(<span class="ruby-identifier">page</span>) }
317
+ 148: <span class="ruby-keyword kw">else</span>
318
+ 149: <span class="ruby-keyword kw">true</span>
319
+ 150: <span class="ruby-keyword kw">end</span>
320
+ 151: <span class="ruby-keyword kw">end</span>
321
+ 152: <span class="ruby-keyword kw">end</span>
313
322
  </pre>
314
323
  </div>
315
324
  </div>
316
325
  </div>
317
326
 
318
- <div id="method-M000021" class="method-detail">
319
- <a name="M000021"></a>
327
+ <div id="method-M000040" class="method-detail">
328
+ <a name="M000040"></a>
320
329
 
321
330
  <div class="method-heading">
322
- <a href="#M000021" class="method-signature">
323
- <span class="method-name">disable</span><span class="method-args">()</span>
331
+ <a href="#M000040" class="method-signature">
332
+ <span class="method-name">able_to_publish?</span><span class="method-args">(object)</span>
324
333
  </a>
325
334
  </div>
326
335
 
327
336
  <div class="method-description">
328
337
  <p><a class="source-toggle" href="#"
329
- onclick="toggleCode('M000021-source');return false;">[Source]</a></p>
330
- <div class="method-source-code" id="M000021-source">
338
+ onclick="toggleCode('M000040-source');return false;">[Source]</a></p>
339
+ <div class="method-source-code" id="M000040-source">
331
340
  <pre>
332
- <span class="ruby-comment cmt"># File app/models/user.rb, line 42</span>
333
- 42: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">disable</span>
334
- 43: <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">count</span>(<span class="ruby-identifier">:conditions</span> =<span class="ruby-operator">&gt;</span> [<span class="ruby-value str">&quot;expires_at is null and id != ?&quot;</span>, <span class="ruby-identifier">id</span>]) <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
335
- 44: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">expires_at</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>.<span class="ruby-identifier">minutes</span>
336
- 45: <span class="ruby-keyword kw">else</span>
337
- 46: <span class="ruby-keyword kw">false</span>
338
- 47: <span class="ruby-keyword kw">end</span>
339
- 48: <span class="ruby-keyword kw">end</span>
341
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 161</span>
342
+ 161: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">able_to_publish?</span>(<span class="ruby-identifier">object</span>)
343
+ 162: <span class="ruby-identifier">able_to?</span>(<span class="ruby-identifier">:publish_content</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">able_to_modify?</span>(<span class="ruby-identifier">object</span>)
344
+ 163: <span class="ruby-keyword kw">end</span>
340
345
  </pre>
341
346
  </div>
342
347
  </div>
343
348
  </div>
344
349
 
345
- <div id="method-M000022" class="method-detail">
346
- <a name="M000022"></a>
350
+ <div id="method-M000037" class="method-detail">
351
+ <a name="M000037"></a>
347
352
 
348
353
  <div class="method-heading">
349
- <a href="#M000022" class="method-signature">
350
- <span class="method-name">disable!</span><span class="method-args">()</span>
354
+ <a href="#M000037" class="method-signature">
355
+ <span class="method-name">able_to_view?</span><span class="method-args">(object)</span>
351
356
  </a>
352
357
  </div>
353
358
 
354
359
  <div class="method-description">
360
+ <p>
361
+ Determine if this user has permission to view the specific object.
362
+ Permissions
363
+ </p>
364
+ <pre>
365
+ are always tied to a specific section. This method can take different input parameters
366
+ and will attempt to determine the relevant section to check.
367
+ </pre>
368
+ <p>
369
+ Expects object to be of type:
370
+ </p>
371
+ <pre>
372
+ 1. Section - Will check the user's groups to see if any of those groups can view this section.
373
+ 2. Path - Will look up the section based on the path, then check it. (Note that section paths are not currently unique, so this will check the first one it finds).
374
+ 3. Other - Assumes it has a section attribute and will call that and check the return value.
375
+ </pre>
376
+ <p>
377
+ Returns: true if the user can view this object, false otherwise. Raises:
378
+ ActiveRecord::RecordNotFound if a path to a not existent section is passed
379
+ in.
380
+ </p>
355
381
  <p><a class="source-toggle" href="#"
356
- onclick="toggleCode('M000022-source');return false;">[Source]</a></p>
357
- <div class="method-source-code" id="M000022-source">
382
+ onclick="toggleCode('M000037-source');return false;">[Source]</a></p>
383
+ <div class="method-source-code" id="M000037-source">
358
384
  <pre>
359
- <span class="ruby-comment cmt"># File app/models/user.rb, line 50</span>
360
- 50: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">disable!</span>
361
- 51: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">disable</span>
362
- 52: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;You must have at least 1 enabled user&quot;</span>
363
- 53: <span class="ruby-keyword kw">end</span>
364
- 54: <span class="ruby-identifier">save!</span>
365
- 55: <span class="ruby-keyword kw">end</span>
385
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 128</span>
386
+ 128: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">able_to_view?</span>(<span class="ruby-identifier">object</span>)
387
+ 129: <span class="ruby-identifier">section</span> = <span class="ruby-identifier">object</span>
388
+ 130: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">object</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">String</span>)
389
+ 131: <span class="ruby-identifier">section</span> = <span class="ruby-constant">Section</span>.<span class="ruby-identifier">find_by_path</span>(<span class="ruby-identifier">object</span>)
390
+ 132: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ActiveRecord</span><span class="ruby-operator">::</span><span class="ruby-constant">RecordNotFound</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;Could not find section with path = '#{object}'&quot;</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">section</span>
391
+ 133: <span class="ruby-keyword kw">elsif</span> <span class="ruby-operator">!</span><span class="ruby-identifier">object</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Section</span>)
392
+ 134: <span class="ruby-identifier">section</span> = <span class="ruby-identifier">object</span>.<span class="ruby-identifier">section</span>
393
+ 135: <span class="ruby-keyword kw">end</span>
394
+ 136: <span class="ruby-identifier">viewable_sections</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">section</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">cms_access?</span>
395
+ 137: <span class="ruby-keyword kw">end</span>
366
396
  </pre>
367
397
  </div>
368
398
  </div>
369
399
  </div>
370
400
 
371
- <div id="method-M000031" class="method-detail">
372
- <a name="M000031"></a>
401
+ <div id="method-M000023" class="method-detail">
402
+ <a name="M000023"></a>
373
403
 
374
404
  <div class="method-heading">
375
- <a href="#M000031" class="method-signature">
376
- <span class="method-name">editable_sections</span><span class="method-args">()</span>
405
+ <a href="#M000023" class="method-signature">
406
+ <span class="method-name">cms_access?</span><span class="method-args">()</span>
377
407
  </a>
378
408
  </div>
379
409
 
380
410
  <div class="method-description">
411
+ <p>
412
+ Determines if this user should have access to the CMS administration tools.
413
+ Can be overridden by specific users (like <a
414
+ href="GuestUser.html">GuestUser</a>) which may not need to check the
415
+ database for that information.
416
+ </p>
381
417
  <p><a class="source-toggle" href="#"
382
- onclick="toggleCode('M000031-source');return false;">[Source]</a></p>
383
- <div class="method-source-code" id="M000031-source">
418
+ onclick="toggleCode('M000023-source');return false;">[Source]</a></p>
419
+ <div class="method-source-code" id="M000023-source">
384
420
  <pre>
385
- <span class="ruby-comment cmt"># File app/models/user.rb, line 92</span>
386
- 92: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">editable_sections</span>
387
- 93: <span class="ruby-ivar">@editable_sections</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Section</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">:all</span>, <span class="ruby-identifier">:include</span> =<span class="ruby-operator">&gt;</span> {<span class="ruby-identifier">:groups</span> =<span class="ruby-operator">&gt;</span> [<span class="ruby-identifier">:group_type</span>, <span class="ruby-identifier">:users</span>]}, <span class="ruby-identifier">:conditions</span> =<span class="ruby-operator">&gt;</span> [<span class="ruby-value str">&quot;users.id = ? and group_types.cms_access = ?&quot;</span>, <span class="ruby-identifier">id</span>, <span class="ruby-keyword kw">true</span>])
388
- 94: <span class="ruby-keyword kw">end</span>
421
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 43</span>
422
+ 43: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cms_access?</span>
423
+ 44: <span class="ruby-identifier">groups</span>.<span class="ruby-identifier">cms_access</span>.<span class="ruby-identifier">count</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
424
+ 45: <span class="ruby-keyword kw">end</span>
389
425
  </pre>
390
426
  </div>
391
427
  </div>
@@ -396,7 +432,7 @@ matches the page&#8216;s section.
396
432
 
397
433
  <div class="method-heading">
398
434
  <a href="#M000024" class="method-signature">
399
- <span class="method-name">enable</span><span class="method-args">()</span>
435
+ <span class="method-name">disable</span><span class="method-args">()</span>
400
436
  </a>
401
437
  </div>
402
438
 
@@ -405,10 +441,14 @@ matches the page&#8216;s section.
405
441
  onclick="toggleCode('M000024-source');return false;">[Source]</a></p>
406
442
  <div class="method-source-code" id="M000024-source">
407
443
  <pre>
408
- <span class="ruby-comment cmt"># File app/models/user.rb, line 61</span>
409
- 61: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">enable</span>
410
- 62: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">expires_at</span> = <span class="ruby-keyword kw">nil</span>
411
- 63: <span class="ruby-keyword kw">end</span>
444
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 47</span>
445
+ 47: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">disable</span>
446
+ 48: <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">count</span>(<span class="ruby-identifier">:conditions</span> =<span class="ruby-operator">&gt;</span> [<span class="ruby-value str">&quot;expires_at is null and id != ?&quot;</span>, <span class="ruby-identifier">id</span>]) <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
447
+ 49: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">expires_at</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>.<span class="ruby-identifier">minutes</span>
448
+ 50: <span class="ruby-keyword kw">else</span>
449
+ 51: <span class="ruby-keyword kw">false</span>
450
+ 52: <span class="ruby-keyword kw">end</span>
451
+ 53: <span class="ruby-keyword kw">end</span>
412
452
  </pre>
413
453
  </div>
414
454
  </div>
@@ -419,7 +459,7 @@ matches the page&#8216;s section.
419
459
 
420
460
  <div class="method-heading">
421
461
  <a href="#M000025" class="method-signature">
422
- <span class="method-name">enable!</span><span class="method-args">()</span>
462
+ <span class="method-name">disable!</span><span class="method-args">()</span>
423
463
  </a>
424
464
  </div>
425
465
 
@@ -428,34 +468,36 @@ matches the page&#8216;s section.
428
468
  onclick="toggleCode('M000025-source');return false;">[Source]</a></p>
429
469
  <div class="method-source-code" id="M000025-source">
430
470
  <pre>
431
- <span class="ruby-comment cmt"># File app/models/user.rb, line 65</span>
432
- 65: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">enable!</span>
433
- 66: <span class="ruby-identifier">enable</span>
434
- 67: <span class="ruby-identifier">save!</span>
435
- 68: <span class="ruby-keyword kw">end</span>
471
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 55</span>
472
+ 55: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">disable!</span>
473
+ 56: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">disable</span>
474
+ 57: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;You must have at least 1 enabled user&quot;</span>
475
+ 58: <span class="ruby-keyword kw">end</span>
476
+ 59: <span class="ruby-identifier">save!</span>
477
+ 60: <span class="ruby-keyword kw">end</span>
436
478
  </pre>
437
479
  </div>
438
480
  </div>
439
481
  </div>
440
482
 
441
- <div id="method-M000023" class="method-detail">
442
- <a name="M000023"></a>
483
+ <div id="method-M000027" class="method-detail">
484
+ <a name="M000027"></a>
443
485
 
444
486
  <div class="method-heading">
445
- <a href="#M000023" class="method-signature">
446
- <span class="method-name">expired?</span><span class="method-args">()</span>
487
+ <a href="#M000027" class="method-signature">
488
+ <span class="method-name">enable</span><span class="method-args">()</span>
447
489
  </a>
448
490
  </div>
449
491
 
450
492
  <div class="method-description">
451
493
  <p><a class="source-toggle" href="#"
452
- onclick="toggleCode('M000023-source');return false;">[Source]</a></p>
453
- <div class="method-source-code" id="M000023-source">
494
+ onclick="toggleCode('M000027-source');return false;">[Source]</a></p>
495
+ <div class="method-source-code" id="M000027-source">
454
496
  <pre>
455
- <span class="ruby-comment cmt"># File app/models/user.rb, line 57</span>
456
- 57: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">expired?</span>
457
- 58: <span class="ruby-identifier">expires_at</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">expires_at</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>
458
- 59: <span class="ruby-keyword kw">end</span>
497
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 66</span>
498
+ 66: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">enable</span>
499
+ 67: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">expires_at</span> = <span class="ruby-keyword kw">nil</span>
500
+ 68: <span class="ruby-keyword kw">end</span>
459
501
  </pre>
460
502
  </div>
461
503
  </div>
@@ -466,23 +508,20 @@ matches the page&#8216;s section.
466
508
 
467
509
  <div class="method-heading">
468
510
  <a href="#M000028" class="method-signature">
469
- <span class="method-name">expires_at_formatted</span><span class="method-args">()</span>
511
+ <span class="method-name">enable!</span><span class="method-args">()</span>
470
512
  </a>
471
513
  </div>
472
514
 
473
515
  <div class="method-description">
474
- <p>
475
- This is to show a formated date on the input form. I&#8216;m unsure that
476
- this is the best way to solve this, but it works.
477
- </p>
478
516
  <p><a class="source-toggle" href="#"
479
517
  onclick="toggleCode('M000028-source');return false;">[Source]</a></p>
480
518
  <div class="method-source-code" id="M000028-source">
481
519
  <pre>
482
- <span class="ruby-comment cmt"># File app/models/user.rb, line 80</span>
483
- 80: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">expires_at_formatted</span>
484
- 81: <span class="ruby-identifier">expires_at</span> <span class="ruby-value">? </span>(<span class="ruby-identifier">expires_at</span>.<span class="ruby-identifier">strftime</span> <span class="ruby-value str">'%m/%d/%Y'</span> )<span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>
485
- 82: <span class="ruby-keyword kw">end</span>
520
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 70</span>
521
+ 70: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">enable!</span>
522
+ 71: <span class="ruby-identifier">enable</span>
523
+ 72: <span class="ruby-identifier">save!</span>
524
+ 73: <span class="ruby-keyword kw">end</span>
486
525
  </pre>
487
526
  </div>
488
527
  </div>
@@ -493,7 +532,7 @@ this is the best way to solve this, but it works.
493
532
 
494
533
  <div class="method-heading">
495
534
  <a href="#M000026" class="method-signature">
496
- <span class="method-name">full_name</span><span class="method-args">()</span>
535
+ <span class="method-name">expired?</span><span class="method-args">()</span>
497
536
  </a>
498
537
  </div>
499
538
 
@@ -502,79 +541,87 @@ this is the best way to solve this, but it works.
502
541
  onclick="toggleCode('M000026-source');return false;">[Source]</a></p>
503
542
  <div class="method-source-code" id="M000026-source">
504
543
  <pre>
505
- <span class="ruby-comment cmt"># File app/models/user.rb, line 70</span>
506
- 70: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">full_name</span>
507
- 71: [<span class="ruby-identifier">first_name</span>, <span class="ruby-identifier">last_name</span>].<span class="ruby-identifier">reject</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">e</span><span class="ruby-operator">|</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">nil?</span>}.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot; &quot;</span>)
508
- 72: <span class="ruby-keyword kw">end</span>
544
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 62</span>
545
+ 62: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">expired?</span>
546
+ 63: <span class="ruby-identifier">expires_at</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">expires_at</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>
547
+ 64: <span class="ruby-keyword kw">end</span>
509
548
  </pre>
510
549
  </div>
511
550
  </div>
512
551
  </div>
513
552
 
514
- <div id="method-M000027" class="method-detail">
515
- <a name="M000027"></a>
553
+ <div id="method-M000032" class="method-detail">
554
+ <a name="M000032"></a>
516
555
 
517
556
  <div class="method-heading">
518
- <a href="#M000027" class="method-signature">
519
- <span class="method-name">full_name_with_login</span><span class="method-args">()</span>
557
+ <a href="#M000032" class="method-signature">
558
+ <span class="method-name">expires_at_formatted</span><span class="method-args">()</span>
520
559
  </a>
521
560
  </div>
522
561
 
523
562
  <div class="method-description">
563
+ <p>
564
+ This is to show a formated date on the input form. I&#8216;m unsure that
565
+ this is the best way to solve this, but it works.
566
+ </p>
524
567
  <p><a class="source-toggle" href="#"
525
- onclick="toggleCode('M000027-source');return false;">[Source]</a></p>
526
- <div class="method-source-code" id="M000027-source">
568
+ onclick="toggleCode('M000032-source');return false;">[Source]</a></p>
569
+ <div class="method-source-code" id="M000032-source">
527
570
  <pre>
528
- <span class="ruby-comment cmt"># File app/models/user.rb, line 74</span>
529
- 74: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">full_name_with_login</span>
530
- 75: <span class="ruby-node">&quot;#{full_name} (#{login})&quot;</span>
531
- 76: <span class="ruby-keyword kw">end</span>
571
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 93</span>
572
+ 93: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">expires_at_formatted</span>
573
+ 94: <span class="ruby-identifier">expires_at</span> <span class="ruby-value">? </span>(<span class="ruby-identifier">expires_at</span>.<span class="ruby-identifier">strftime</span> <span class="ruby-value str">'%m/%d/%Y'</span> )<span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>
574
+ 95: <span class="ruby-keyword kw">end</span>
532
575
  </pre>
533
576
  </div>
534
577
  </div>
535
578
  </div>
536
579
 
537
- <div id="method-M000020" class="method-detail">
538
- <a name="M000020"></a>
580
+ <div id="method-M000029" class="method-detail">
581
+ <a name="M000029"></a>
539
582
 
540
583
  <div class="method-heading">
541
- <a href="#M000020" class="method-signature">
542
- <span class="method-name">guest?</span><span class="method-args">()</span>
584
+ <a href="#M000029" class="method-signature">
585
+ <span class="method-name">full_name</span><span class="method-args">()</span>
543
586
  </a>
544
587
  </div>
545
588
 
546
589
  <div class="method-description">
547
590
  <p><a class="source-toggle" href="#"
548
- onclick="toggleCode('M000020-source');return false;">[Source]</a></p>
549
- <div class="method-source-code" id="M000020-source">
591
+ onclick="toggleCode('M000029-source');return false;">[Source]</a></p>
592
+ <div class="method-source-code" id="M000029-source">
550
593
  <pre>
551
- <span class="ruby-comment cmt"># File app/models/user.rb, line 38</span>
552
- 38: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">guest?</span>
553
- 39: <span class="ruby-operator">!</span><span class="ruby-operator">!</span><span class="ruby-ivar">@guest</span>
554
- 40: <span class="ruby-keyword kw">end</span>
594
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 75</span>
595
+ 75: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">full_name</span>
596
+ 76: [<span class="ruby-identifier">first_name</span>, <span class="ruby-identifier">last_name</span>].<span class="ruby-identifier">reject</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">e</span><span class="ruby-operator">|</span> <span class="ruby-identifier">e</span>.<span class="ruby-identifier">nil?</span>}.<span class="ruby-identifier">join</span>(<span class="ruby-value str">&quot; &quot;</span>)
597
+ 77: <span class="ruby-keyword kw">end</span>
555
598
  </pre>
556
599
  </div>
557
600
  </div>
558
601
  </div>
559
602
 
560
- <div id="method-M000029" class="method-detail">
561
- <a name="M000029"></a>
603
+ <div id="method-M000031" class="method-detail">
604
+ <a name="M000031"></a>
562
605
 
563
606
  <div class="method-heading">
564
- <a href="#M000029" class="method-signature">
565
- <span class="method-name">permissions</span><span class="method-args">()</span>
607
+ <a href="#M000031" class="method-signature">
608
+ <span class="method-name">full_name_or_login</span><span class="method-args">()</span>
566
609
  </a>
567
610
  </div>
568
611
 
569
612
  <div class="method-description">
570
613
  <p><a class="source-toggle" href="#"
571
- onclick="toggleCode('M000029-source');return false;">[Source]</a></p>
572
- <div class="method-source-code" id="M000029-source">
614
+ onclick="toggleCode('M000031-source');return false;">[Source]</a></p>
615
+ <div class="method-source-code" id="M000031-source">
573
616
  <pre>
574
- <span class="ruby-comment cmt"># File app/models/user.rb, line 84</span>
575
- 84: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">permissions</span>
576
- 85: <span class="ruby-ivar">@permissions</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Permission</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">:all</span>, <span class="ruby-identifier">:include</span> =<span class="ruby-operator">&gt;</span> {<span class="ruby-identifier">:groups</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:users</span>}, <span class="ruby-identifier">:conditions</span> =<span class="ruby-operator">&gt;</span> [<span class="ruby-value str">&quot;users.id = ?&quot;</span>, <span class="ruby-identifier">id</span>])
577
- 86: <span class="ruby-keyword kw">end</span>
617
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 83</span>
618
+ 83: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">full_name_or_login</span>
619
+ 84: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">full_name</span>.<span class="ruby-identifier">strip</span>.<span class="ruby-identifier">blank?</span>
620
+ 85: <span class="ruby-identifier">login</span>
621
+ 86: <span class="ruby-keyword kw">else</span>
622
+ 87: <span class="ruby-identifier">full_name</span>
623
+ 88: <span class="ruby-keyword kw">end</span>
624
+ 89: <span class="ruby-keyword kw">end</span>
578
625
  </pre>
579
626
  </div>
580
627
  </div>
@@ -585,7 +632,7 @@ this is the best way to solve this, but it works.
585
632
 
586
633
  <div class="method-heading">
587
634
  <a href="#M000030" class="method-signature">
588
- <span class="method-name">viewable_sections</span><span class="method-args">()</span>
635
+ <span class="method-name">full_name_with_login</span><span class="method-args">()</span>
589
636
  </a>
590
637
  </div>
591
638
 
@@ -594,10 +641,102 @@ this is the best way to solve this, but it works.
594
641
  onclick="toggleCode('M000030-source');return false;">[Source]</a></p>
595
642
  <div class="method-source-code" id="M000030-source">
596
643
  <pre>
597
- <span class="ruby-comment cmt"># File app/models/user.rb, line 88</span>
598
- 88: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">viewable_sections</span>
599
- 89: <span class="ruby-ivar">@viewable_sections</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Section</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">:all</span>, <span class="ruby-identifier">:include</span> =<span class="ruby-operator">&gt;</span> {<span class="ruby-identifier">:groups</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:users</span>}, <span class="ruby-identifier">:conditions</span> =<span class="ruby-operator">&gt;</span> [<span class="ruby-value str">&quot;users.id = ?&quot;</span>, <span class="ruby-identifier">id</span>])
600
- 90: <span class="ruby-keyword kw">end</span>
644
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 79</span>
645
+ 79: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">full_name_with_login</span>
646
+ 80: <span class="ruby-node">&quot;#{full_name} (#{login})&quot;</span>
647
+ 81: <span class="ruby-keyword kw">end</span>
648
+ </pre>
649
+ </div>
650
+ </div>
651
+ </div>
652
+
653
+ <div id="method-M000022" class="method-detail">
654
+ <a name="M000022"></a>
655
+
656
+ <div class="method-heading">
657
+ <a href="#M000022" class="method-signature">
658
+ <span class="method-name">guest?</span><span class="method-args">()</span>
659
+ </a>
660
+ </div>
661
+
662
+ <div class="method-description">
663
+ <p><a class="source-toggle" href="#"
664
+ onclick="toggleCode('M000022-source');return false;">[Source]</a></p>
665
+ <div class="method-source-code" id="M000022-source">
666
+ <pre>
667
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 37</span>
668
+ 37: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">guest?</span>
669
+ 38: <span class="ruby-operator">!</span><span class="ruby-operator">!</span><span class="ruby-ivar">@guest</span>
670
+ 39: <span class="ruby-keyword kw">end</span>
671
+ </pre>
672
+ </div>
673
+ </div>
674
+ </div>
675
+
676
+ <div id="method-M000035" class="method-detail">
677
+ <a name="M000035"></a>
678
+
679
+ <div class="method-heading">
680
+ <a href="#M000035" class="method-signature">
681
+ <span class="method-name">modifiable_sections</span><span class="method-args">()</span>
682
+ </a>
683
+ </div>
684
+
685
+ <div class="method-description">
686
+ <p><a class="source-toggle" href="#"
687
+ onclick="toggleCode('M000035-source');return false;">[Source]</a></p>
688
+ <div class="method-source-code" id="M000035-source">
689
+ <pre>
690
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 105</span>
691
+ 105: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">modifiable_sections</span>
692
+ 106: <span class="ruby-ivar">@modifiable_sections</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Section</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">:all</span>, <span class="ruby-identifier">:include</span> =<span class="ruby-operator">&gt;</span> {<span class="ruby-identifier">:groups</span> =<span class="ruby-operator">&gt;</span> [<span class="ruby-identifier">:group_type</span>, <span class="ruby-identifier">:users</span>]}, <span class="ruby-identifier">:conditions</span> =<span class="ruby-operator">&gt;</span> [<span class="ruby-value str">&quot;users.id = ? and group_types.cms_access = ?&quot;</span>, <span class="ruby-identifier">id</span>, <span class="ruby-keyword kw">true</span>])
693
+ 107: <span class="ruby-keyword kw">end</span>
694
+ </pre>
695
+ </div>
696
+ </div>
697
+ </div>
698
+
699
+ <div id="method-M000033" class="method-detail">
700
+ <a name="M000033"></a>
701
+
702
+ <div class="method-heading">
703
+ <a href="#M000033" class="method-signature">
704
+ <span class="method-name">permissions</span><span class="method-args">()</span>
705
+ </a>
706
+ </div>
707
+
708
+ <div class="method-description">
709
+ <p><a class="source-toggle" href="#"
710
+ onclick="toggleCode('M000033-source');return false;">[Source]</a></p>
711
+ <div class="method-source-code" id="M000033-source">
712
+ <pre>
713
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 97</span>
714
+ 97: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">permissions</span>
715
+ 98: <span class="ruby-ivar">@permissions</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Permission</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">:all</span>, <span class="ruby-identifier">:include</span> =<span class="ruby-operator">&gt;</span> {<span class="ruby-identifier">:groups</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:users</span>}, <span class="ruby-identifier">:conditions</span> =<span class="ruby-operator">&gt;</span> [<span class="ruby-value str">&quot;users.id = ?&quot;</span>, <span class="ruby-identifier">id</span>])
716
+ 99: <span class="ruby-keyword kw">end</span>
717
+ </pre>
718
+ </div>
719
+ </div>
720
+ </div>
721
+
722
+ <div id="method-M000034" class="method-detail">
723
+ <a name="M000034"></a>
724
+
725
+ <div class="method-heading">
726
+ <a href="#M000034" class="method-signature">
727
+ <span class="method-name">viewable_sections</span><span class="method-args">()</span>
728
+ </a>
729
+ </div>
730
+
731
+ <div class="method-description">
732
+ <p><a class="source-toggle" href="#"
733
+ onclick="toggleCode('M000034-source');return false;">[Source]</a></p>
734
+ <div class="method-source-code" id="M000034-source">
735
+ <pre>
736
+ <span class="ruby-comment cmt"># File app/models/user.rb, line 101</span>
737
+ 101: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">viewable_sections</span>
738
+ 102: <span class="ruby-ivar">@viewable_sections</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Section</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">:all</span>, <span class="ruby-identifier">:include</span> =<span class="ruby-operator">&gt;</span> {<span class="ruby-identifier">:groups</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:users</span>}, <span class="ruby-identifier">:conditions</span> =<span class="ruby-operator">&gt;</span> [<span class="ruby-value str">&quot;users.id = ?&quot;</span>, <span class="ruby-identifier">id</span>])
739
+ 103: <span class="ruby-keyword kw">end</span>
601
740
  </pre>
602
741
  </div>
603
742
  </div>