browsercms 3.0.0 → 3.0.1
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.
- data/app/controllers/cms/connectors_controller.rb +1 -1
- data/app/helpers/cms/application_helper.rb +2 -19
- data/app/helpers/cms/form_builder.rb +8 -5
- data/app/helpers/cms/menu_helper.rb +19 -5
- data/app/helpers/cms/page_helper.rb +9 -1
- data/app/helpers/cms/template_support.rb +21 -0
- data/app/models/abstract_file_block.rb +4 -0
- data/app/models/connector.rb +7 -3
- data/app/models/dynamic_view.rb +2 -4
- data/app/models/portlet.rb +22 -9
- data/app/models/section.rb +7 -5
- data/app/views/cms/blocks/_toolbar_for_member.html.erb +4 -4
- data/app/views/cms/blocks/index.html.erb +1 -1
- data/app/views/cms/blocks/usages.html.erb +44 -34
- data/app/views/cms/connectors/new.html.erb +2 -2
- data/app/views/cms/dynamic_views/_form.html.erb +1 -1
- data/app/views/cms/dynamic_views/index.html.erb +7 -3
- data/app/views/cms/email_messages/index.html.erb +3 -5
- data/app/views/cms/form_builder/_cms_datetime_select.html.erb +12 -0
- data/app/views/cms/form_builder/_cms_text_editor.html.erb +2 -2
- data/app/views/cms/form_builder/_cms_text_field.html.erb +1 -2
- data/app/views/cms/groups/_permissions.html.erb +1 -0
- data/app/views/cms/groups/_sections.html.erb +1 -0
- data/app/views/cms/groups/index.html.erb +3 -5
- data/app/views/cms/page_routes/index.html.erb +13 -7
- data/app/views/cms/page_routes/show.html.erb +4 -4
- data/app/views/cms/pages/_edit_connector.html.erb +4 -1
- data/app/views/cms/pages/_edit_container.html.erb +4 -1
- data/app/views/cms/redirects/index.html.erb +12 -7
- data/app/views/cms/routes/index.html.erb +11 -7
- data/app/views/cms/sections/_form.html.erb +4 -5
- data/app/views/cms/users/_groups.html.erb +1 -0
- data/app/views/layouts/_cms_toolbar.html.erb +37 -4
- data/app/views/layouts/_page_toolbar.html.erb +2 -2
- data/browsercms.gemspec +381 -3
- data/db/demo/data.rb +2 -1
- data/doc/app/classes/AbstractFileBlock.html +146 -0
- data/doc/app/classes/ActiveRecord.html +105 -0
- data/doc/app/classes/ActiveRecord/ConnectionAdapters/SchemaStatements.html +242 -0
- data/doc/app/classes/ActiveSupport.html +111 -0
- data/doc/app/classes/ActiveSupport/Cache.html +111 -0
- data/doc/app/classes/ActiveSupport/Cache/FileStore.html +146 -0
- data/doc/app/classes/ActsAsList.html +147 -0
- data/doc/app/classes/ActsAsList/ClassMethods.html +202 -0
- data/doc/app/classes/ActsAsList/InstanceMethods.html +510 -0
- data/doc/app/classes/ApplicationController.html +119 -0
- data/doc/app/classes/ApplicationHelper.html +112 -0
- data/doc/app/classes/Attachment.html +726 -0
- data/doc/app/classes/Category.html +230 -0
- data/doc/app/classes/CategoryType.html +214 -0
- data/doc/app/classes/Cms.html +638 -0
- data/doc/app/classes/Cms/Acts.html +111 -0
- data/doc/app/classes/Cms/Acts/ContentBlock.html +146 -0
- data/doc/app/classes/Cms/Acts/ContentBlock/MacroMethods.html +165 -0
- data/doc/app/classes/Cms/Acts/ContentBlock/MacroMethods/InstanceMethods.html +140 -0
- data/doc/app/classes/Cms/ApplicationController.html +418 -0
- data/doc/app/classes/Cms/ApplicationHelper.html +814 -0
- data/doc/app/classes/Cms/AttachmentsController.html +154 -0
- data/doc/app/classes/Cms/Authentication.html +116 -0
- data/doc/app/classes/Cms/Authentication/Controller.html +702 -0
- data/doc/app/classes/Cms/Authentication/Model.html +165 -0
- data/doc/app/classes/Cms/Authentication/Model/ClassMethods.html +246 -0
- data/doc/app/classes/Cms/Authentication/Model/InstanceMethods.html +412 -0
- data/doc/app/classes/Cms/BaseController.html +113 -0
- data/doc/app/classes/Cms/Behaviors.html +235 -0
- data/doc/app/classes/Cms/Behaviors/Archiving.html +147 -0
- data/doc/app/classes/Cms/Behaviors/Archiving/InstanceMethods.html +220 -0
- data/doc/app/classes/Cms/Behaviors/Archiving/MacroMethods.html +175 -0
- data/doc/app/classes/Cms/Behaviors/Attaching.html +160 -0
- data/doc/app/classes/Cms/Behaviors/Attaching/InstanceMethods.html +670 -0
- data/doc/app/classes/Cms/Behaviors/Attaching/MacroMethods.html +188 -0
- data/doc/app/classes/Cms/Behaviors/Categorizing.html +148 -0
- data/doc/app/classes/Cms/Behaviors/Categorizing/ClassMethods.html +105 -0
- data/doc/app/classes/Cms/Behaviors/Categorizing/InstanceMethods.html +140 -0
- data/doc/app/classes/Cms/Behaviors/Categorizing/MacroMethods.html +178 -0
- data/doc/app/classes/Cms/Behaviors/ClassMethods.html +272 -0
- data/doc/app/classes/Cms/Behaviors/Connecting.html +148 -0
- data/doc/app/classes/Cms/Behaviors/Connecting/ClassMethods.html +188 -0
- data/doc/app/classes/Cms/Behaviors/Connecting/InstanceMethods.html +312 -0
- data/doc/app/classes/Cms/Behaviors/Connecting/MacroMethods.html +184 -0
- data/doc/app/classes/Cms/Behaviors/DynamicAttributes.html +285 -0
- data/doc/app/classes/Cms/Behaviors/DynamicAttributes/InstanceMethods.html +181 -0
- data/doc/app/classes/Cms/Behaviors/DynamicAttributes/MacroMethods.html +243 -0
- data/doc/app/classes/Cms/Behaviors/FlushCacheOnChange.html +178 -0
- data/doc/app/classes/Cms/Behaviors/FlushCacheOnChange/InstanceMethods.html +142 -0
- data/doc/app/classes/Cms/Behaviors/FlushCacheOnChange/MacroMethods.html +175 -0
- data/doc/app/classes/Cms/Behaviors/Hiding.html +148 -0
- data/doc/app/classes/Cms/Behaviors/Hiding/ClassMethods.html +105 -0
- data/doc/app/classes/Cms/Behaviors/Hiding/InstanceMethods.html +220 -0
- data/doc/app/classes/Cms/Behaviors/Hiding/MacroMethods.html +176 -0
- data/doc/app/classes/Cms/Behaviors/InstanceMethods.html +234 -0
- data/doc/app/classes/Cms/Behaviors/Pagination.html +151 -0
- data/doc/app/classes/Cms/Behaviors/Pagination/ClassMethods.html +252 -0
- data/doc/app/classes/Cms/Behaviors/Pagination/Collection.html +437 -0
- data/doc/app/classes/Cms/Behaviors/Pagination/InvalidPage.html +146 -0
- data/doc/app/classes/Cms/Behaviors/Publishing.html +179 -0
- data/doc/app/classes/Cms/Behaviors/Publishing/ClassMethods.html +105 -0
- data/doc/app/classes/Cms/Behaviors/Publishing/InstanceMethods.html +333 -0
- data/doc/app/classes/Cms/Behaviors/Publishing/MacroMethods.html +180 -0
- data/doc/app/classes/Cms/Behaviors/Rendering.html +179 -0
- data/doc/app/classes/Cms/Behaviors/Rendering/MacroMethods.html +186 -0
- data/doc/app/classes/Cms/Behaviors/Searching.html +147 -0
- data/doc/app/classes/Cms/Behaviors/Searching/ClassMethods.html +164 -0
- data/doc/app/classes/Cms/Behaviors/Searching/MacroMethods.html +188 -0
- data/doc/app/classes/Cms/Behaviors/SoftDeleting.html +148 -0
- data/doc/app/classes/Cms/Behaviors/SoftDeleting/ClassMethods.html +217 -0
- data/doc/app/classes/Cms/Behaviors/SoftDeleting/InstanceMethods.html +247 -0
- data/doc/app/classes/Cms/Behaviors/SoftDeleting/MacroMethods.html +205 -0
- data/doc/app/classes/Cms/Behaviors/Taggable.html +148 -0
- data/doc/app/classes/Cms/Behaviors/Taggable/ClassMethods.html +164 -0
- data/doc/app/classes/Cms/Behaviors/Taggable/InstanceMethods.html +197 -0
- data/doc/app/classes/Cms/Behaviors/Taggable/MacroMethods.html +182 -0
- data/doc/app/classes/Cms/Behaviors/Userstamping.html +148 -0
- data/doc/app/classes/Cms/Behaviors/Userstamping/ClassMethods.html +105 -0
- data/doc/app/classes/Cms/Behaviors/Userstamping/InstanceMethods.html +143 -0
- data/doc/app/classes/Cms/Behaviors/Userstamping/MacroMethods.html +181 -0
- data/doc/app/classes/Cms/Behaviors/Versioning.html +148 -0
- data/doc/app/classes/Cms/Behaviors/Versioning/ClassMethods.html +237 -0
- data/doc/app/classes/Cms/Behaviors/Versioning/InstanceMethods.html +685 -0
- data/doc/app/classes/Cms/Behaviors/Versioning/MacroMethods.html +290 -0
- data/doc/app/classes/Cms/CacheController.html +174 -0
- data/doc/app/classes/Cms/Caching.html +171 -0
- data/doc/app/classes/Cms/CategoriesController.html +113 -0
- data/doc/app/classes/Cms/CategoryTypesController.html +148 -0
- data/doc/app/classes/Cms/ConnectorsController.html +215 -0
- data/doc/app/classes/Cms/ContentBlockController.html +1175 -0
- data/doc/app/classes/Cms/ContentController.html +313 -0
- data/doc/app/classes/Cms/ContentTypesController.html +148 -0
- data/doc/app/classes/Cms/DashboardController.html +151 -0
- data/doc/app/classes/Cms/DataLoader.html +182 -0
- data/doc/app/classes/Cms/DynamicViewsController.html +359 -0
- data/doc/app/classes/Cms/EmailMessagesController.html +172 -0
- data/doc/app/classes/Cms/ErrorHandling.html +172 -0
- data/doc/app/classes/Cms/Errors.html +111 -0
- data/doc/app/classes/Cms/Errors/AccessDenied.html +146 -0
- data/doc/app/classes/Cms/Extensions.html +140 -0
- data/doc/app/classes/Cms/Extensions/ActionView.html +111 -0
- data/doc/app/classes/Cms/Extensions/ActionView/Base.html +141 -0
- data/doc/app/classes/Cms/Extensions/ActiveRecord.html +116 -0
- data/doc/app/classes/Cms/Extensions/ActiveRecord/Base.html +144 -0
- data/doc/app/classes/Cms/Extensions/ActiveRecord/Errors.html +140 -0
- data/doc/app/classes/Cms/Extensions/Hash.html +175 -0
- data/doc/app/classes/Cms/Extensions/Integer.html +146 -0
- data/doc/app/classes/Cms/Extensions/NilClass.html +212 -0
- data/doc/app/classes/Cms/Extensions/String.html +212 -0
- data/doc/app/classes/Cms/FileBlocksController.html +113 -0
- data/doc/app/classes/Cms/FormBuilder.html +312 -0
- data/doc/app/classes/Cms/FormTagHelper.html +245 -0
- data/doc/app/classes/Cms/GroupsController.html +225 -0
- data/doc/app/classes/Cms/HomeController.html +148 -0
- data/doc/app/classes/Cms/HtmlBlocksController.html +113 -0
- data/doc/app/classes/Cms/ImageBlocksController.html +113 -0
- data/doc/app/classes/Cms/LinksController.html +341 -0
- data/doc/app/classes/Cms/MenuHelper.html +330 -0
- data/doc/app/classes/Cms/PageHelper.html +292 -0
- data/doc/app/classes/Cms/PageRouteConditionsController.html +113 -0
- data/doc/app/classes/Cms/PageRouteOptionsController.html +355 -0
- data/doc/app/classes/Cms/PageRouteRequirementsController.html +113 -0
- data/doc/app/classes/Cms/PageRoutesController.html +284 -0
- data/doc/app/classes/Cms/PagesController.html +331 -0
- data/doc/app/classes/Cms/PathHelper.html +268 -0
- data/doc/app/classes/Cms/PortletController.html +150 -0
- data/doc/app/classes/Cms/PortletsController.html +301 -0
- data/doc/app/classes/Cms/RedirectsController.html +172 -0
- data/doc/app/classes/Cms/ResourceController.html +616 -0
- data/doc/app/classes/Cms/Routes.html +303 -0
- data/doc/app/classes/Cms/RoutesController.html +164 -0
- data/doc/app/classes/Cms/SectionNodesController.html +272 -0
- data/doc/app/classes/Cms/SectionNodesHelper.html +145 -0
- data/doc/app/classes/Cms/SectionsController.html +542 -0
- data/doc/app/classes/Cms/SessionsController.html +270 -0
- data/doc/app/classes/Cms/TagsController.html +152 -0
- data/doc/app/classes/Cms/TasksController.html +221 -0
- data/doc/app/classes/Cms/ToolbarController.html +153 -0
- data/doc/app/classes/Cms/UsersController.html +405 -0
- data/doc/app/classes/Connector.html +350 -0
- data/doc/app/classes/ContentType.html +448 -0
- data/doc/app/classes/ContentTypeGroup.html +111 -0
- data/doc/app/classes/DynamicPortlet.html +148 -0
- data/doc/app/classes/DynamicView.html +411 -0
- data/doc/app/classes/EmailMessage.html +228 -0
- data/doc/app/classes/EmailMessageMailer.html +150 -0
- data/doc/app/classes/EmailPagePortlet.html +184 -0
- data/doc/app/classes/FileBlock.html +202 -0
- data/doc/app/classes/Group.html +170 -0
- data/doc/app/classes/GroupPermission.html +111 -0
- data/doc/app/classes/GroupSection.html +111 -0
- data/doc/app/classes/GroupType.html +111 -0
- data/doc/app/classes/GroupTypePermission.html +111 -0
- data/doc/app/classes/GuestUser.html +347 -0
- data/doc/app/classes/HtmlBlock.html +170 -0
- data/doc/app/classes/ImageBlock.html +202 -0
- data/doc/app/classes/InitialData.html +171 -0
- data/doc/app/classes/Link.html +249 -0
- data/doc/app/classes/LoginPortlet.html +151 -0
- data/doc/app/classes/Page.html +954 -0
- data/doc/app/classes/PagePartial.html +201 -0
- data/doc/app/classes/PageRoute.html +335 -0
- data/doc/app/classes/PageRouteCondition.html +113 -0
- data/doc/app/classes/PageRouteOption.html +111 -0
- data/doc/app/classes/PageRouteRequirement.html +113 -0
- data/doc/app/classes/PageTemplate.html +278 -0
- data/doc/app/classes/Permission.html +111 -0
- data/doc/app/classes/Portlet.html +738 -0
- data/doc/app/classes/Redirect.html +111 -0
- data/doc/app/classes/Section.html +580 -0
- data/doc/app/classes/SectionNode.html +410 -0
- data/doc/app/classes/Sequence.html +146 -0
- data/doc/app/classes/Site.html +253 -0
- data/doc/app/classes/Tag.html +292 -0
- data/doc/app/classes/TagCloudPortlet.html +176 -0
- data/doc/app/classes/Tagging.html +146 -0
- data/doc/app/classes/Task.html +288 -0
- data/doc/app/classes/User.html +618 -0
- data/doc/app/classes/UserGroupMembership.html +111 -0
- data/doc/app/created.rid +1 -0
- data/doc/app/files/app/controllers/application_controller_rb.html +109 -0
- data/doc/app/files/app/controllers/cms/application_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/attachments_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/base_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/cache_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/categories_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/category_types_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/connectors_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/content_block_controller_rb.html +107 -0
- data/doc/app/files/app/controllers/cms/content_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/content_types_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/dashboard_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/dynamic_views_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/email_messages_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/error_handling_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/file_blocks_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/groups_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/home_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/html_blocks_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/image_blocks_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/links_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/page_route_conditions_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/page_route_options_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/page_route_requirements_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/page_routes_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/pages_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/portlet_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/portlets_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/redirects_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/resource_controller_rb.html +108 -0
- data/doc/app/files/app/controllers/cms/routes_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/section_nodes_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/sections_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/sessions_controller_rb.html +107 -0
- data/doc/app/files/app/controllers/cms/tags_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/tasks_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/toolbar_controller_rb.html +101 -0
- data/doc/app/files/app/controllers/cms/users_controller_rb.html +101 -0
- data/doc/app/files/app/helpers/application_helper_rb.html +108 -0
- data/doc/app/files/app/helpers/cms/application_helper_rb.html +107 -0
- data/doc/app/files/app/helpers/cms/form_builder_rb.html +101 -0
- data/doc/app/files/app/helpers/cms/form_tag_helper_rb.html +101 -0
- data/doc/app/files/app/helpers/cms/menu_helper_rb.html +101 -0
- data/doc/app/files/app/helpers/cms/page_helper_rb.html +101 -0
- data/doc/app/files/app/helpers/cms/path_helper_rb.html +101 -0
- data/doc/app/files/app/helpers/cms/section_nodes_helper_rb.html +101 -0
- data/doc/app/files/app/models/abstract_file_block_rb.html +101 -0
- data/doc/app/files/app/models/attachment_rb.html +109 -0
- data/doc/app/files/app/models/category_rb.html +101 -0
- data/doc/app/files/app/models/category_type_rb.html +101 -0
- data/doc/app/files/app/models/connector_rb.html +101 -0
- data/doc/app/files/app/models/content_type_group_rb.html +101 -0
- data/doc/app/files/app/models/content_type_rb.html +101 -0
- data/doc/app/files/app/models/dynamic_view_rb.html +101 -0
- data/doc/app/files/app/models/email_message_mailer_rb.html +101 -0
- data/doc/app/files/app/models/email_message_rb.html +101 -0
- data/doc/app/files/app/models/file_block_rb.html +101 -0
- data/doc/app/files/app/models/group_permission_rb.html +101 -0
- data/doc/app/files/app/models/group_rb.html +101 -0
- data/doc/app/files/app/models/group_section_rb.html +101 -0
- data/doc/app/files/app/models/group_type_permission_rb.html +101 -0
- data/doc/app/files/app/models/group_type_rb.html +101 -0
- data/doc/app/files/app/models/guest_user_rb.html +101 -0
- data/doc/app/files/app/models/html_block_rb.html +101 -0
- data/doc/app/files/app/models/image_block_rb.html +101 -0
- data/doc/app/files/app/models/link_rb.html +101 -0
- data/doc/app/files/app/models/page_partial_rb.html +101 -0
- data/doc/app/files/app/models/page_rb.html +101 -0
- data/doc/app/files/app/models/page_route_condition_rb.html +101 -0
- data/doc/app/files/app/models/page_route_option_rb.html +101 -0
- data/doc/app/files/app/models/page_route_rb.html +101 -0
- data/doc/app/files/app/models/page_route_requirement_rb.html +101 -0
- data/doc/app/files/app/models/page_template_rb.html +101 -0
- data/doc/app/files/app/models/permission_rb.html +101 -0
- data/doc/app/files/app/models/portlet_rb.html +101 -0
- data/doc/app/files/app/models/redirect_rb.html +101 -0
- data/doc/app/files/app/models/section_node_rb.html +101 -0
- data/doc/app/files/app/models/section_rb.html +101 -0
- data/doc/app/files/app/models/site_rb.html +101 -0
- data/doc/app/files/app/models/tag_rb.html +101 -0
- data/doc/app/files/app/models/tagging_rb.html +101 -0
- data/doc/app/files/app/models/task_rb.html +101 -0
- data/doc/app/files/app/models/user_group_membership_rb.html +101 -0
- data/doc/app/files/app/models/user_rb.html +108 -0
- data/doc/app/files/app/portlets/dynamic_portlet_rb.html +101 -0
- data/doc/app/files/app/portlets/email_page_portlet_rb.html +101 -0
- data/doc/app/files/app/portlets/login_portlet_rb.html +101 -0
- data/doc/app/files/app/portlets/tag_cloud_portlet_rb.html +101 -0
- data/doc/app/files/doc/README_FOR_APP.html +127 -0
- data/doc/app/files/lib/acts_as_list_rb.html +101 -0
- data/doc/app/files/lib/browsercms_rb.html +113 -0
- data/doc/app/files/lib/cms/acts/content_block_rb.html +101 -0
- data/doc/app/files/lib/cms/authentication/controller_rb.html +101 -0
- data/doc/app/files/lib/cms/authentication/model_rb.html +101 -0
- data/doc/app/files/lib/cms/behaviors/archiving_rb.html +101 -0
- data/doc/app/files/lib/cms/behaviors/attaching_rb.html +101 -0
- data/doc/app/files/lib/cms/behaviors/categorizing_rb.html +101 -0
- data/doc/app/files/lib/cms/behaviors/connecting_rb.html +101 -0
- data/doc/app/files/lib/cms/behaviors/dynamic_attributes_rb.html +101 -0
- data/doc/app/files/lib/cms/behaviors/flush_cache_on_change_rb.html +101 -0
- data/doc/app/files/lib/cms/behaviors/hiding_rb.html +101 -0
- data/doc/app/files/lib/cms/behaviors/pagination_rb.html +107 -0
- data/doc/app/files/lib/cms/behaviors/publishing_rb.html +101 -0
- data/doc/app/files/lib/cms/behaviors/rendering_rb.html +101 -0
- data/doc/app/files/lib/cms/behaviors/searching_rb.html +101 -0
- data/doc/app/files/lib/cms/behaviors/soft_deleting_rb.html +101 -0
- data/doc/app/files/lib/cms/behaviors/taggable_rb.html +101 -0
- data/doc/app/files/lib/cms/behaviors/userstamping_rb.html +101 -0
- data/doc/app/files/lib/cms/behaviors/versioning_rb.html +101 -0
- data/doc/app/files/lib/cms/behaviors_rb.html +147 -0
- data/doc/app/files/lib/cms/caching_rb.html +101 -0
- data/doc/app/files/lib/cms/data_loader_rb.html +101 -0
- data/doc/app/files/lib/cms/extensions/action_view/base_rb.html +101 -0
- data/doc/app/files/lib/cms/extensions/active_record/base_rb.html +101 -0
- data/doc/app/files/lib/cms/extensions/active_record/connection_adapters/abstract/schema_statements_rb.html +101 -0
- data/doc/app/files/lib/cms/extensions/active_record/errors_rb.html +101 -0
- data/doc/app/files/lib/cms/extensions/active_support/cache/file_store_rb.html +101 -0
- data/doc/app/files/lib/cms/extensions/hash_rb.html +101 -0
- data/doc/app/files/lib/cms/extensions/integer_rb.html +101 -0
- data/doc/app/files/lib/cms/extensions/nil_rb.html +101 -0
- data/doc/app/files/lib/cms/extensions/string_rb.html +101 -0
- data/doc/app/files/lib/cms/extensions_rb.html +101 -0
- data/doc/app/files/lib/cms/init_rb.html +101 -0
- data/doc/app/files/lib/cms/routes_rb.html +101 -0
- data/doc/app/files/lib/initial_data_rb.html +101 -0
- data/doc/app/files/lib/sequence_rb.html +101 -0
- data/doc/app/fr_class_index.html +205 -0
- data/doc/app/fr_file_index.html +152 -0
- data/doc/app/fr_method_index.html +738 -0
- data/doc/app/index.html +24 -0
- data/doc/app/rdoc-style.css +208 -0
- data/doc/guides/html/build_it_yourself.html +175 -0
- data/doc/guides/html/deployment_guide.html +181 -0
- data/doc/guides/html/designer_guide.html +153 -0
- data/doc/guides/html/developer_guide.html +266 -0
- data/doc/guides/html/files/javascripts/code_highlighter.js +188 -0
- data/doc/guides/html/files/javascripts/guides.js +7 -0
- data/doc/guides/html/files/javascripts/highlighters.js +90 -0
- data/doc/guides/html/files/stylesheets/main.css +441 -0
- data/doc/guides/html/files/stylesheets/reset.css +43 -0
- data/doc/guides/html/files/stylesheets/style.css +13 -0
- data/doc/guides/html/files/stylesheets/syntax.css +31 -0
- data/doc/guides/html/getting_started.html +181 -0
- data/doc/guides/html/images/bg.png +0 -0
- data/doc/guides/html/images/bottom_cap.png +0 -0
- data/doc/guides/html/images/browsercms_logo.png +0 -0
- data/doc/guides/html/images/dot.png +0 -0
- data/doc/guides/html/images/icons/README +5 -0
- data/doc/guides/html/images/icons/callouts/1.png +0 -0
- data/doc/guides/html/images/icons/callouts/10.png +0 -0
- data/doc/guides/html/images/icons/callouts/11.png +0 -0
- data/doc/guides/html/images/icons/callouts/12.png +0 -0
- data/doc/guides/html/images/icons/callouts/13.png +0 -0
- data/doc/guides/html/images/icons/callouts/14.png +0 -0
- data/doc/guides/html/images/icons/callouts/15.png +0 -0
- data/doc/guides/html/images/icons/callouts/2.png +0 -0
- data/doc/guides/html/images/icons/callouts/3.png +0 -0
- data/doc/guides/html/images/icons/callouts/4.png +0 -0
- data/doc/guides/html/images/icons/callouts/5.png +0 -0
- data/doc/guides/html/images/icons/callouts/6.png +0 -0
- data/doc/guides/html/images/icons/callouts/7.png +0 -0
- data/doc/guides/html/images/icons/callouts/8.png +0 -0
- data/doc/guides/html/images/icons/callouts/9.png +0 -0
- data/doc/guides/html/images/icons/caution.png +0 -0
- data/doc/guides/html/images/icons/example.png +0 -0
- data/doc/guides/html/images/icons/home.png +0 -0
- data/doc/guides/html/images/icons/important.png +0 -0
- data/doc/guides/html/images/icons/next.png +0 -0
- data/doc/guides/html/images/icons/note.png +0 -0
- data/doc/guides/html/images/icons/prev.png +0 -0
- data/doc/guides/html/images/icons/tip.png +0 -0
- data/doc/guides/html/images/icons/up.png +0 -0
- data/doc/guides/html/images/icons/warning.png +0 -0
- data/doc/guides/html/images/top_cap.png +0 -0
- data/doc/guides/html/images/top_cap_content.png +0 -0
- data/doc/guides/html/index.html +168 -0
- data/doc/guides/html/installing_modules.html +181 -0
- data/doc/guides/html/user_guide.html +266 -0
- data/lib/cms/behaviors/attaching.rb +1 -1
- data/lib/cms/behaviors/rendering.rb +1 -1
- data/lib/cms/behaviors/taggable.rb +2 -1
- data/lib/cms/behaviors/versioning.rb +1 -1
- data/lib/cms/init.rb +4 -4
- data/lib/tasks/cms.rake +16 -42
- data/public/images/cms/buttons/button_cap_off_middle.gif +0 -0
- data/public/images/cms/buttons/button_left_bg.png +0 -0
- data/public/images/cms/buttons/button_off_middle.png +0 -0
- data/public/images/cms/nav_admin.gif +0 -0
- data/public/images/cms/nav_admin_h.gif +0 -0
- data/public/images/cms/nav_admin_on.gif +0 -0
- data/public/images/cms/nav_content_library.gif +0 -0
- data/public/images/cms/nav_content_library_h.gif +0 -0
- data/public/images/cms/nav_content_library_on.gif +0 -0
- data/public/images/cms/nav_dash.gif +0 -0
- data/public/images/cms/nav_dash_h.gif +0 -0
- data/public/images/cms/nav_dash_on.gif +0 -0
- data/public/images/cms/nav_sitemap.gif +0 -0
- data/public/images/cms/nav_sitemap_h.gif +0 -0
- data/public/images/cms/nav_sitemap_on.gif +0 -0
- data/public/stylesheets/cms/administration.css +91 -91
- data/public/stylesheets/cms/block.css +25 -25
- data/public/stylesheets/cms/buttons.css +120 -111
- data/public/stylesheets/cms/content_library.css +2 -1
- data/public/stylesheets/cms/content_types.css +3 -3
- data/public/stylesheets/cms/dashboard.css +118 -118
- data/public/stylesheets/cms/data_table.css +155 -155
- data/public/stylesheets/cms/form_layout.css +269 -269
- data/public/stylesheets/cms/jquery.contextMenu.css +61 -61
- data/public/stylesheets/cms/login.css +77 -77
- data/public/stylesheets/cms/menu.css +116 -116
- data/public/stylesheets/cms/nav.css +98 -111
- data/public/stylesheets/cms/page_toolbar.css +134 -134
- data/public/stylesheets/cms/sitemap.css +31 -15
- data/rails_generators/content_block/content_block_generator.rb +4 -9
- data/rails_generators/content_block/templates/_form.html.erb +3 -1
- data/rails_generators/portlet/portlet_generator.rb +2 -6
- data/rails_generators/portlet/templates/_form.html.erb +1 -0
- data/templates/blank.rb +30 -0
- data/templates/demo.rb +28 -0
- data/templates/module.rb +945 -0
- data/test/functional/cms/connectors_controller_test.rb +12 -1
- data/test/functional/cms/portlets_controller_test.rb +10 -0
- data/test/unit/behaviors/taggable_test.rb +19 -0
- data/test/unit/helpers/menu_helper_test.rb +72 -1
- data/test/unit/lib/generators_test.rb +21 -3
- data/test/unit/models/connector_test.rb +16 -0
- data/test/unit/models/sections_test.rb +4 -0
- metadata +380 -2
|
@@ -0,0 +1,330 @@
|
|
|
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>Module: Cms::MenuHelper</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>Module</strong></td>
|
|
53
|
+
<td class="class-name-in-header">Cms::MenuHelper</td>
|
|
54
|
+
</tr>
|
|
55
|
+
<tr class="top-aligned-row">
|
|
56
|
+
<td><strong>In:</strong></td>
|
|
57
|
+
<td>
|
|
58
|
+
<a href="../../files/app/helpers/cms/menu_helper_rb.html">
|
|
59
|
+
app/helpers/cms/menu_helper.rb
|
|
60
|
+
</a>
|
|
61
|
+
<br />
|
|
62
|
+
</td>
|
|
63
|
+
</tr>
|
|
64
|
+
|
|
65
|
+
</table>
|
|
66
|
+
</div>
|
|
67
|
+
<!-- banner header -->
|
|
68
|
+
|
|
69
|
+
<div id="bodyContent">
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
<div id="contextContent">
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
</div>
|
|
78
|
+
|
|
79
|
+
<div id="method-list">
|
|
80
|
+
<h3 class="section-bar">Methods</h3>
|
|
81
|
+
|
|
82
|
+
<div class="name-list">
|
|
83
|
+
<a href="#M000302">render_menu</a>
|
|
84
|
+
</div>
|
|
85
|
+
</div>
|
|
86
|
+
|
|
87
|
+
</div>
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
<!-- if includes -->
|
|
91
|
+
|
|
92
|
+
<div id="section">
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
<!-- if method_list -->
|
|
102
|
+
<div id="methods">
|
|
103
|
+
<h3 class="section-bar">Public Instance methods</h3>
|
|
104
|
+
|
|
105
|
+
<div id="method-M000302" class="method-detail">
|
|
106
|
+
<a name="M000302"></a>
|
|
107
|
+
|
|
108
|
+
<div class="method-heading">
|
|
109
|
+
<a href="#M000302" class="method-signature">
|
|
110
|
+
<span class="method-name">render_menu</span><span class="method-args">(options={})</span>
|
|
111
|
+
</a>
|
|
112
|
+
</div>
|
|
113
|
+
|
|
114
|
+
<div class="method-description">
|
|
115
|
+
<p>
|
|
116
|
+
This will render a menu based on the page With no options passed, it will
|
|
117
|
+
render a menu that shows all the child sections of the root and then it
|
|
118
|
+
will show the path of decendent sections all the way to the current page.
|
|
119
|
+
The resulting HTML is a DIV with a UL in it. Each LI will have an A in it.
|
|
120
|
+
If the item is a <a href="../Section.html">Section</a>, the HREF of the A
|
|
121
|
+
will be the URL of the first non-archived page that is a direct child of
|
|
122
|
+
that <a href="../Section.html">Section</a>. Hidden pages will not show up,
|
|
123
|
+
but if the first page in a <a href="../Section.html">Section</a> is hidden,
|
|
124
|
+
it will be used as the URL for that <a href="../Section.html">Section</a>.
|
|
125
|
+
This is commonly done to have a page for a <a
|
|
126
|
+
href="../Section.html">Section</a> and avoid having duplicates in the
|
|
127
|
+
navigation.
|
|
128
|
+
</p>
|
|
129
|
+
<p>
|
|
130
|
+
You can change the behavior with the following options:
|
|
131
|
+
</p>
|
|
132
|
+
<h4>Options</h4>
|
|
133
|
+
<ul>
|
|
134
|
+
<li><tt>:page</tt> - What page should be used. If this value is omitted, the
|
|
135
|
+
value in @page will be used.
|
|
136
|
+
|
|
137
|
+
</li>
|
|
138
|
+
<li><tt>:from_top</tt> - How many below levels from the root the tree should
|
|
139
|
+
start at. All sections at this level will be shown. The default is 0, which
|
|
140
|
+
means show all section that are direct children of the root
|
|
141
|
+
|
|
142
|
+
</li>
|
|
143
|
+
<li><tt>:depth</tt> - How many levels deep should the tree go, relative to
|
|
144
|
+
from_top. If no value is supplied, the tree will go all the way down to the
|
|
145
|
+
current page. If a value is supplied, the tree will be that many levels
|
|
146
|
+
underneath from_top deep.
|
|
147
|
+
|
|
148
|
+
</li>
|
|
149
|
+
<li><tt>:class</tt> - The CSS Class that will be applied to the div. The
|
|
150
|
+
default value is "menu".
|
|
151
|
+
|
|
152
|
+
</li>
|
|
153
|
+
<li><tt>:show_all_siblings</tt> - Passing true for this option will make all
|
|
154
|
+
sibilings appear in the tree. the default is false, in which case only the
|
|
155
|
+
siblings of nodes within the open path will appear.
|
|
156
|
+
|
|
157
|
+
</li>
|
|
158
|
+
</ul>
|
|
159
|
+
<h4>Examples</h4>
|
|
160
|
+
<p>
|
|
161
|
+
Assume you have the structure the NFL, which is NFL > Conference >
|
|
162
|
+
Division > Team, with teams being a <a href="../Page.html">Page</a>,
|
|
163
|
+
everything else a <a href="../Section.html">Section</a>. Also, assume we
|
|
164
|
+
are on the Baltimore Ravens page. If you‘re not a footbal fan, see <a
|
|
165
|
+
href="http://sports.yahoo.com/nfl/teams">sports.yahoo.com/nfl/teams</a>
|
|
166
|
+
</p>
|
|
167
|
+
<pre>
|
|
168
|
+
render_menu
|
|
169
|
+
# => <div class="menu">
|
|
170
|
+
<ul>
|
|
171
|
+
<li id="section_2" class="first open">
|
|
172
|
+
<a href="/buf">AFC</a>
|
|
173
|
+
<ul>
|
|
174
|
+
<li id="section_3" class="first">
|
|
175
|
+
<a href="/buf">East</a>
|
|
176
|
+
</li>
|
|
177
|
+
<li id="section_4" class="open">
|
|
178
|
+
<a href="/bal">North</a>
|
|
179
|
+
<ul>
|
|
180
|
+
<li id="page_5" class="first on">
|
|
181
|
+
<a href="/bal">Baltimore Ravens</a>
|
|
182
|
+
</li>
|
|
183
|
+
<li id="page_6">
|
|
184
|
+
<a href="/cin">Cincinnati Bengals</a>
|
|
185
|
+
</li>
|
|
186
|
+
<li id="page_7">
|
|
187
|
+
<a href="/cle">Cleveland Browns</a>
|
|
188
|
+
</li>
|
|
189
|
+
<li id="page_8" class="last">
|
|
190
|
+
<a href="/pit">Pittsburgh Steelers</a>
|
|
191
|
+
</li>
|
|
192
|
+
</ul>
|
|
193
|
+
</li>
|
|
194
|
+
<li id="section_5">
|
|
195
|
+
<a href="/hou">South</a>
|
|
196
|
+
</li>
|
|
197
|
+
<li id="section_6" class="last">
|
|
198
|
+
<a href="/den">West</a>
|
|
199
|
+
</li>
|
|
200
|
+
</ul>
|
|
201
|
+
</li>
|
|
202
|
+
<li id="section_7" class="last">
|
|
203
|
+
<a href="/dal">NFC</a>
|
|
204
|
+
</li>
|
|
205
|
+
</ul>
|
|
206
|
+
</div>
|
|
207
|
+
|
|
208
|
+
render_menu(:depth => 2, :show_all_siblings => true)
|
|
209
|
+
# => <div class="menu">
|
|
210
|
+
<ul>
|
|
211
|
+
<li id="section_2" class="first open">
|
|
212
|
+
<a href="/buf">AFC</a>
|
|
213
|
+
<ul>
|
|
214
|
+
<li id="section_3" class="first">
|
|
215
|
+
<a href="/buf">East</a>
|
|
216
|
+
</li>
|
|
217
|
+
<li id="section_4" class="open">
|
|
218
|
+
<a href="/bal">North</a>
|
|
219
|
+
</li>
|
|
220
|
+
<li id="section_5">
|
|
221
|
+
<a href="/hou">South</a>
|
|
222
|
+
</li>
|
|
223
|
+
<li id="section_6" class="last">
|
|
224
|
+
<a href="/den">West</a>
|
|
225
|
+
</li>
|
|
226
|
+
</ul>
|
|
227
|
+
</li>
|
|
228
|
+
<li id="section_7" class="last">
|
|
229
|
+
<a href="/dal">NFC</a>
|
|
230
|
+
<ul>
|
|
231
|
+
<li id="section_8" class="first">
|
|
232
|
+
<a href="/dal">East</a>
|
|
233
|
+
</li>
|
|
234
|
+
<li id="section_9">
|
|
235
|
+
<a href="/chi">North</a>
|
|
236
|
+
</li>
|
|
237
|
+
<li id="section_10">
|
|
238
|
+
<a href="/atl">South</a>
|
|
239
|
+
</li>
|
|
240
|
+
<li id="section_11" class="last">
|
|
241
|
+
<a href="/ari">West</a>
|
|
242
|
+
</li>
|
|
243
|
+
</ul>
|
|
244
|
+
</li>
|
|
245
|
+
</ul>
|
|
246
|
+
</div>
|
|
247
|
+
</pre>
|
|
248
|
+
<p><a class="source-toggle" href="#"
|
|
249
|
+
onclick="toggleCode('M000302-source');return false;">[Source]</a></p>
|
|
250
|
+
<div class="method-source-code" id="M000302-source">
|
|
251
|
+
<pre>
|
|
252
|
+
<span class="ruby-comment cmt"># File app/helpers/cms/menu_helper.rb, line 111</span>
|
|
253
|
+
111: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">render_menu</span>(<span class="ruby-identifier">options</span>={})
|
|
254
|
+
112: <span class="ruby-comment cmt">#Intialize parameters</span>
|
|
255
|
+
113: <span class="ruby-identifier">page</span> = <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:page</span>] <span class="ruby-operator">||</span> <span class="ruby-ivar">@page</span>
|
|
256
|
+
114: <span class="ruby-identifier">from_top</span> = <span class="ruby-identifier">options</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">:from_top</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:from_top</span>].<span class="ruby-identifier">to_i</span> <span class="ruby-operator">:</span> <span class="ruby-value">0</span>
|
|
257
|
+
115: <span class="ruby-identifier">depth</span> = <span class="ruby-identifier">options</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">:depth</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:depth</span>].<span class="ruby-identifier">to_i</span> <span class="ruby-operator">:</span> <span class="ruby-value">1.0</span><span class="ruby-operator">/</span><span class="ruby-value">0</span>
|
|
258
|
+
116: <span class="ruby-identifier">id</span> = <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:id</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">"menu"</span>
|
|
259
|
+
117: <span class="ruby-identifier">css_class</span> = <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:class</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">"menu"</span>
|
|
260
|
+
118: <span class="ruby-identifier">show_all_siblings</span> = <span class="ruby-operator">!</span><span class="ruby-operator">!</span>(<span class="ruby-identifier">options</span>[<span class="ruby-identifier">:show_all_siblings</span>])
|
|
261
|
+
119:
|
|
262
|
+
120: <span class="ruby-identifier">html</span> = <span class="ruby-node">"<div id=\"#{id}\" class=\"#{css_class}\">\n"</span>
|
|
263
|
+
121:
|
|
264
|
+
122: <span class="ruby-identifier">ancestors</span> = <span class="ruby-identifier">page</span>.<span class="ruby-identifier">ancestors</span>
|
|
265
|
+
123: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">from_top</span> <span class="ruby-operator">></span> <span class="ruby-identifier">ancestors</span>.<span class="ruby-identifier">size</span>
|
|
266
|
+
124: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">html</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"</div>\n"</span>
|
|
267
|
+
125: <span class="ruby-keyword kw">else</span>
|
|
268
|
+
126: <span class="ruby-identifier">ancestors</span> = <span class="ruby-identifier">page</span>.<span class="ruby-identifier">ancestors</span>[<span class="ruby-identifier">from_top</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>]
|
|
269
|
+
127: <span class="ruby-keyword kw">end</span>
|
|
270
|
+
128:
|
|
271
|
+
129: <span class="ruby-comment cmt">#We are defining a recursive lambda that takes the top-level sections</span>
|
|
272
|
+
130: <span class="ruby-comment cmt">#d is the current depth</span>
|
|
273
|
+
131: <span class="ruby-identifier">fn</span> = <span class="ruby-identifier">lambda</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">nodes</span>, <span class="ruby-identifier">d</span><span class="ruby-operator">|</span>
|
|
274
|
+
132: <span class="ruby-identifier">indent</span> = (<span class="ruby-identifier">d</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>)<span class="ruby-operator">*</span><span class="ruby-value">4</span>
|
|
275
|
+
133: <span class="ruby-identifier">html</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"<ul>\n"</span>.<span class="ruby-identifier">indent</span>(<span class="ruby-identifier">indent</span><span class="ruby-operator">+</span><span class="ruby-value">2</span>)
|
|
276
|
+
134: <span class="ruby-identifier">nodes</span>.<span class="ruby-identifier">each_with_index</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">sn</span>, <span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
|
|
277
|
+
135:
|
|
278
|
+
136: <span class="ruby-comment cmt">#Construct the CSS classes that the LI should have</span>
|
|
279
|
+
137: <span class="ruby-identifier">classes</span> = [<span class="ruby-node">"depth-#{d}"</span>]
|
|
280
|
+
138: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">i</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
|
281
|
+
139: <span class="ruby-identifier">classes</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"first"</span>
|
|
282
|
+
140: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">i</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">nodes</span>.<span class="ruby-identifier">size</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>
|
|
283
|
+
141: <span class="ruby-identifier">classes</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"last"</span>
|
|
284
|
+
142: <span class="ruby-keyword kw">end</span>
|
|
285
|
+
143: <span class="ruby-identifier">classes</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"open"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">ancestors</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">sn</span>.<span class="ruby-identifier">node</span>)
|
|
286
|
+
144: <span class="ruby-identifier">classes</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"on"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">page</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">sn</span>.<span class="ruby-identifier">node</span>
|
|
287
|
+
145: <span class="ruby-identifier">cls</span> = <span class="ruby-identifier">classes</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-value">? </span><span class="ruby-keyword kw">nil</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">classes</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">" "</span>)
|
|
288
|
+
146:
|
|
289
|
+
147: <span class="ruby-identifier">html</span> <span class="ruby-operator"><<</span> <span class="ruby-node">%Q{<li id="#{sn.node_type.underscore}_#{sn.node.id}"#{cls ? " class=\"#{cls}\"" : ''}>\n}</span>.<span class="ruby-identifier">indent</span>(<span class="ruby-identifier">indent</span><span class="ruby-operator">+</span><span class="ruby-value">4</span>)
|
|
290
|
+
148:
|
|
291
|
+
149: <span class="ruby-comment cmt">#Figure out what this link for this node should be</span>
|
|
292
|
+
150: <span class="ruby-comment cmt">#If it is a page, then the page will simply be used</span>
|
|
293
|
+
151: <span class="ruby-comment cmt">#But if is a page, we call the first_page_or_link method</span>
|
|
294
|
+
152: <span class="ruby-identifier">p</span> = <span class="ruby-identifier">sn</span>.<span class="ruby-identifier">node_type</span> <span class="ruby-operator">==</span> <span class="ruby-value str">"Section"</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">sn</span>.<span class="ruby-identifier">node</span>.<span class="ruby-identifier">first_page_or_link</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">sn</span>.<span class="ruby-identifier">node</span>
|
|
295
|
+
153: <span class="ruby-identifier">html</span> <span class="ruby-operator"><<</span> <span class="ruby-node">%Q{<a href="#{p ? p.path : '#'}"#{(p.respond_to?(:new_window) && p.new_window?) ? ' target="_blank"' : ''}>#{sn.node.name}</a>\n}</span>.<span class="ruby-identifier">indent</span>(<span class="ruby-identifier">indent</span><span class="ruby-operator">+</span><span class="ruby-value">6</span>)
|
|
296
|
+
154:
|
|
297
|
+
155: <span class="ruby-comment cmt">#Now if this is a section, we do the child nodes, </span>
|
|
298
|
+
156: <span class="ruby-comment cmt">#but only if the show_all_siblings parameter is true, </span>
|
|
299
|
+
157: <span class="ruby-comment cmt">#or if this section is one of the current page's ancestors</span>
|
|
300
|
+
158: <span class="ruby-comment cmt">#and also if the current depth is less than the target depth</span>
|
|
301
|
+
159: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">sn</span>.<span class="ruby-identifier">node_type</span> <span class="ruby-operator">==</span> <span class="ruby-value str">"Section"</span> <span class="ruby-operator">&&</span> (<span class="ruby-identifier">show_all_siblings</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">ancestors</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">sn</span>.<span class="ruby-identifier">node</span>)) <span class="ruby-operator">&&</span> <span class="ruby-identifier">d</span> <span class="ruby-operator"><</span> <span class="ruby-identifier">depth</span>
|
|
302
|
+
160: <span class="ruby-identifier">fn</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">sn</span>.<span class="ruby-identifier">node</span>.<span class="ruby-identifier">visible_child_nodes</span>, <span class="ruby-identifier">d</span><span class="ruby-operator">+</span><span class="ruby-value">1</span>)
|
|
303
|
+
161: <span class="ruby-keyword kw">end</span>
|
|
304
|
+
162:
|
|
305
|
+
163: <span class="ruby-identifier">html</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">%Q{</li>\n}</span>.<span class="ruby-identifier">indent</span>(<span class="ruby-identifier">indent</span><span class="ruby-operator">+</span><span class="ruby-value">4</span>)
|
|
306
|
+
164:
|
|
307
|
+
165: <span class="ruby-keyword kw">end</span>
|
|
308
|
+
166: <span class="ruby-identifier">html</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"</ul>\n"</span>.<span class="ruby-identifier">indent</span>(<span class="ruby-identifier">indent</span><span class="ruby-operator">+</span><span class="ruby-value">2</span>)
|
|
309
|
+
167: <span class="ruby-keyword kw">end</span>
|
|
310
|
+
168: <span class="ruby-identifier">fn</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">ancestors</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">visible_child_nodes</span>, <span class="ruby-value">1</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">ancestors</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">blank?</span>
|
|
311
|
+
169: <span class="ruby-identifier">html</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"</div>\n"</span>
|
|
312
|
+
170: <span class="ruby-keyword kw">end</span>
|
|
313
|
+
</pre>
|
|
314
|
+
</div>
|
|
315
|
+
</div>
|
|
316
|
+
</div>
|
|
317
|
+
|
|
318
|
+
|
|
319
|
+
</div>
|
|
320
|
+
|
|
321
|
+
|
|
322
|
+
</div>
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
<div id="validator-badges">
|
|
326
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
327
|
+
</div>
|
|
328
|
+
|
|
329
|
+
</body>
|
|
330
|
+
</html>
|
|
@@ -0,0 +1,292 @@
|
|
|
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>Module: Cms::PageHelper</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>Module</strong></td>
|
|
53
|
+
<td class="class-name-in-header">Cms::PageHelper</td>
|
|
54
|
+
</tr>
|
|
55
|
+
<tr class="top-aligned-row">
|
|
56
|
+
<td><strong>In:</strong></td>
|
|
57
|
+
<td>
|
|
58
|
+
<a href="../../files/app/helpers/cms/page_helper_rb.html">
|
|
59
|
+
app/helpers/cms/page_helper.rb
|
|
60
|
+
</a>
|
|
61
|
+
<br />
|
|
62
|
+
</td>
|
|
63
|
+
</tr>
|
|
64
|
+
|
|
65
|
+
</table>
|
|
66
|
+
</div>
|
|
67
|
+
<!-- banner header -->
|
|
68
|
+
|
|
69
|
+
<div id="bodyContent">
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
<div id="contextContent">
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
</div>
|
|
78
|
+
|
|
79
|
+
<div id="method-list">
|
|
80
|
+
<h3 class="section-bar">Methods</h3>
|
|
81
|
+
|
|
82
|
+
<div class="name-list">
|
|
83
|
+
<a href="#M000503">cms_toolbar</a>
|
|
84
|
+
<a href="#M000501">container</a>
|
|
85
|
+
<a href="#M000502">container_has_block?</a>
|
|
86
|
+
<a href="#M000500">current_page</a>
|
|
87
|
+
<a href="#M000504">render_breadcrumbs</a>
|
|
88
|
+
<a href="#M000505">render_portlet</a>
|
|
89
|
+
</div>
|
|
90
|
+
</div>
|
|
91
|
+
|
|
92
|
+
</div>
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
<!-- if includes -->
|
|
96
|
+
|
|
97
|
+
<div id="section">
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
<!-- if method_list -->
|
|
107
|
+
<div id="methods">
|
|
108
|
+
<h3 class="section-bar">Public Instance methods</h3>
|
|
109
|
+
|
|
110
|
+
<div id="method-M000503" class="method-detail">
|
|
111
|
+
<a name="M000503"></a>
|
|
112
|
+
|
|
113
|
+
<div class="method-heading">
|
|
114
|
+
<a href="#M000503" class="method-signature">
|
|
115
|
+
<span class="method-name">cms_toolbar</span><span class="method-args">()</span>
|
|
116
|
+
</a>
|
|
117
|
+
</div>
|
|
118
|
+
|
|
119
|
+
<div class="method-description">
|
|
120
|
+
<p><a class="source-toggle" href="#"
|
|
121
|
+
onclick="toggleCode('M000503-source');return false;">[Source]</a></p>
|
|
122
|
+
<div class="method-source-code" id="M000503-source">
|
|
123
|
+
<pre>
|
|
124
|
+
<span class="ruby-comment cmt"># File app/helpers/cms/page_helper.rb, line 26</span>
|
|
125
|
+
26: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cms_toolbar</span>
|
|
126
|
+
27: <span class="ruby-identifier">instance_variable_get</span>(<span class="ruby-value str">"@content_for_layout"</span>)
|
|
127
|
+
28: <span class="ruby-keyword kw">end</span>
|
|
128
|
+
</pre>
|
|
129
|
+
</div>
|
|
130
|
+
</div>
|
|
131
|
+
</div>
|
|
132
|
+
|
|
133
|
+
<div id="method-M000501" class="method-detail">
|
|
134
|
+
<a name="M000501"></a>
|
|
135
|
+
|
|
136
|
+
<div class="method-heading">
|
|
137
|
+
<a href="#M000501" class="method-signature">
|
|
138
|
+
<span class="method-name">container</span><span class="method-args">(name)</span>
|
|
139
|
+
</a>
|
|
140
|
+
</div>
|
|
141
|
+
|
|
142
|
+
<div class="method-description">
|
|
143
|
+
<p><a class="source-toggle" href="#"
|
|
144
|
+
onclick="toggleCode('M000501-source');return false;">[Source]</a></p>
|
|
145
|
+
<div class="method-source-code" id="M000501-source">
|
|
146
|
+
<pre>
|
|
147
|
+
<span class="ruby-comment cmt"># File app/helpers/cms/page_helper.rb, line 7</span>
|
|
148
|
+
7: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">container</span>(<span class="ruby-identifier">name</span>)
|
|
149
|
+
8: <span class="ruby-identifier">content</span> = <span class="ruby-identifier">instance_variable_get</span>(<span class="ruby-node">"@content_for_#{name}"</span>)
|
|
150
|
+
9: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">logged_in?</span> <span class="ruby-operator">&&</span> <span class="ruby-ivar">@mode</span> <span class="ruby-operator">==</span> <span class="ruby-value str">"edit"</span>
|
|
151
|
+
10: <span class="ruby-identifier">render</span> <span class="ruby-identifier">:partial</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'cms/pages/edit_container'</span>, <span class="ruby-identifier">:locals</span> =<span class="ruby-operator">></span> {<span class="ruby-identifier">:name</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">name</span>, <span class="ruby-identifier">:content</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">content</span>}
|
|
152
|
+
11: <span class="ruby-keyword kw">else</span>
|
|
153
|
+
12: <span class="ruby-identifier">content</span>
|
|
154
|
+
13: <span class="ruby-keyword kw">end</span>
|
|
155
|
+
14: <span class="ruby-keyword kw">end</span>
|
|
156
|
+
</pre>
|
|
157
|
+
</div>
|
|
158
|
+
</div>
|
|
159
|
+
</div>
|
|
160
|
+
|
|
161
|
+
<div id="method-M000502" class="method-detail">
|
|
162
|
+
<a name="M000502"></a>
|
|
163
|
+
|
|
164
|
+
<div class="method-heading">
|
|
165
|
+
<a href="#M000502" class="method-signature">
|
|
166
|
+
<span class="method-name">container_has_block?</span><span class="method-args">(name, &block)</span>
|
|
167
|
+
</a>
|
|
168
|
+
</div>
|
|
169
|
+
|
|
170
|
+
<div class="method-description">
|
|
171
|
+
<p><a class="source-toggle" href="#"
|
|
172
|
+
onclick="toggleCode('M000502-source');return false;">[Source]</a></p>
|
|
173
|
+
<div class="method-source-code" id="M000502-source">
|
|
174
|
+
<pre>
|
|
175
|
+
<span class="ruby-comment cmt"># File app/helpers/cms/page_helper.rb, line 16</span>
|
|
176
|
+
16: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">container_has_block?</span>(<span class="ruby-identifier">name</span>, <span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)
|
|
177
|
+
17: <span class="ruby-identifier">has_block</span> = (<span class="ruby-ivar">@mode</span> <span class="ruby-operator">==</span> <span class="ruby-value str">"edit"</span>) <span class="ruby-operator">||</span> <span class="ruby-identifier">current_page</span>.<span class="ruby-identifier">connectable_count_for_container</span>(<span class="ruby-identifier">name</span>) <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
178
|
+
18: <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span> <span class="ruby-node">"mode = #{@mode}, has_block = #{has_block}"</span>
|
|
179
|
+
19: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">block_given?</span>
|
|
180
|
+
20: <span class="ruby-identifier">concat</span>(<span class="ruby-identifier">capture</span>(<span class="ruby-operator">&</span><span class="ruby-identifier">block</span>)) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">has_block</span>
|
|
181
|
+
21: <span class="ruby-keyword kw">else</span>
|
|
182
|
+
22: <span class="ruby-identifier">has_block</span>
|
|
183
|
+
23: <span class="ruby-keyword kw">end</span>
|
|
184
|
+
24: <span class="ruby-keyword kw">end</span>
|
|
185
|
+
</pre>
|
|
186
|
+
</div>
|
|
187
|
+
</div>
|
|
188
|
+
</div>
|
|
189
|
+
|
|
190
|
+
<div id="method-M000500" class="method-detail">
|
|
191
|
+
<a name="M000500"></a>
|
|
192
|
+
|
|
193
|
+
<div class="method-heading">
|
|
194
|
+
<a href="#M000500" class="method-signature">
|
|
195
|
+
<span class="method-name">current_page</span><span class="method-args">()</span>
|
|
196
|
+
</a>
|
|
197
|
+
</div>
|
|
198
|
+
|
|
199
|
+
<div class="method-description">
|
|
200
|
+
<p><a class="source-toggle" href="#"
|
|
201
|
+
onclick="toggleCode('M000500-source');return false;">[Source]</a></p>
|
|
202
|
+
<div class="method-source-code" id="M000500-source">
|
|
203
|
+
<pre>
|
|
204
|
+
<span class="ruby-comment cmt"># File app/helpers/cms/page_helper.rb, line 3</span>
|
|
205
|
+
3: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">current_page</span>
|
|
206
|
+
4: <span class="ruby-ivar">@page</span>
|
|
207
|
+
5: <span class="ruby-keyword kw">end</span>
|
|
208
|
+
</pre>
|
|
209
|
+
</div>
|
|
210
|
+
</div>
|
|
211
|
+
</div>
|
|
212
|
+
|
|
213
|
+
<div id="method-M000504" class="method-detail">
|
|
214
|
+
<a name="M000504"></a>
|
|
215
|
+
|
|
216
|
+
<div class="method-heading">
|
|
217
|
+
<a href="#M000504" class="method-signature">
|
|
218
|
+
<span class="method-name">render_breadcrumbs</span><span class="method-args">(options={})</span>
|
|
219
|
+
</a>
|
|
220
|
+
</div>
|
|
221
|
+
|
|
222
|
+
<div class="method-description">
|
|
223
|
+
<p><a class="source-toggle" href="#"
|
|
224
|
+
onclick="toggleCode('M000504-source');return false;">[Source]</a></p>
|
|
225
|
+
<div class="method-source-code" id="M000504-source">
|
|
226
|
+
<pre>
|
|
227
|
+
<span class="ruby-comment cmt"># File app/helpers/cms/page_helper.rb, line 30</span>
|
|
228
|
+
30: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">render_breadcrumbs</span>(<span class="ruby-identifier">options</span>={})
|
|
229
|
+
31: <span class="ruby-identifier">start</span> = <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:from_top</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>
|
|
230
|
+
32: <span class="ruby-identifier">show_parent</span> = <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:show_parent</span>].<span class="ruby-identifier">nil?</span> <span class="ruby-value">? </span><span class="ruby-keyword kw">false</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:show_parent</span>]
|
|
231
|
+
33: <span class="ruby-identifier">ancestors</span> = <span class="ruby-identifier">current_page</span>.<span class="ruby-identifier">ancestors</span>
|
|
232
|
+
34: <span class="ruby-identifier">items</span> = []
|
|
233
|
+
35: <span class="ruby-identifier">ancestors</span>[<span class="ruby-identifier">start</span><span class="ruby-operator">..</span><span class="ruby-identifier">ancestors</span>.<span class="ruby-identifier">size</span>].<span class="ruby-identifier">each_with_index</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">sec</span>,<span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
|
|
234
|
+
36: <span class="ruby-identifier">items</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">content_tag</span>(<span class="ruby-identifier">:li</span>,
|
|
235
|
+
37: <span class="ruby-identifier">link_to</span>(<span class="ruby-identifier">h</span>(<span class="ruby-identifier">sec</span>.<span class="ruby-identifier">name</span>), <span class="ruby-identifier">sec</span>.<span class="ruby-identifier">actual_path</span>),
|
|
236
|
+
38: (<span class="ruby-identifier">i</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span> <span class="ruby-operator">?</span> {<span class="ruby-identifier">:class</span> =<span class="ruby-operator">></span> <span class="ruby-value str">"first"</span>} <span class="ruby-operator">:</span> {}))
|
|
237
|
+
39: <span class="ruby-keyword kw">end</span>
|
|
238
|
+
40: <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">show_parent</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">current_page</span>.<span class="ruby-identifier">section</span>.<span class="ruby-identifier">path</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">current_page</span>.<span class="ruby-identifier">path</span>
|
|
239
|
+
41: <span class="ruby-identifier">items</span>[<span class="ruby-identifier">items</span>.<span class="ruby-identifier">size</span><span class="ruby-operator">-</span><span class="ruby-value">1</span>] = <span class="ruby-identifier">content_tag</span>(<span class="ruby-identifier">:li</span>, <span class="ruby-identifier">h</span>(<span class="ruby-identifier">current_page</span>.<span class="ruby-identifier">section</span>.<span class="ruby-identifier">name</span>))
|
|
240
|
+
42: <span class="ruby-keyword kw">else</span>
|
|
241
|
+
43: <span class="ruby-identifier">items</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">content_tag</span>(<span class="ruby-identifier">:li</span>, <span class="ruby-identifier">h</span>(<span class="ruby-identifier">current_page</span>.<span class="ruby-identifier">page_title</span>))
|
|
242
|
+
44: <span class="ruby-keyword kw">end</span>
|
|
243
|
+
45: <span class="ruby-identifier">content_tag</span>(<span class="ruby-identifier">:ul</span>, <span class="ruby-node">"\n #{items.join("\n ")}\n"</span>, <span class="ruby-identifier">:class</span> =<span class="ruby-operator">></span> <span class="ruby-value str">"breadcrumbs"</span>)
|
|
244
|
+
46: <span class="ruby-keyword kw">end</span>
|
|
245
|
+
</pre>
|
|
246
|
+
</div>
|
|
247
|
+
</div>
|
|
248
|
+
</div>
|
|
249
|
+
|
|
250
|
+
<div id="method-M000505" class="method-detail">
|
|
251
|
+
<a name="M000505"></a>
|
|
252
|
+
|
|
253
|
+
<div class="method-heading">
|
|
254
|
+
<a href="#M000505" class="method-signature">
|
|
255
|
+
<span class="method-name">render_portlet</span><span class="method-args">(name)</span>
|
|
256
|
+
</a>
|
|
257
|
+
</div>
|
|
258
|
+
|
|
259
|
+
<div class="method-description">
|
|
260
|
+
<p><a class="source-toggle" href="#"
|
|
261
|
+
onclick="toggleCode('M000505-source');return false;">[Source]</a></p>
|
|
262
|
+
<div class="method-source-code" id="M000505-source">
|
|
263
|
+
<pre>
|
|
264
|
+
<span class="ruby-comment cmt"># File app/helpers/cms/page_helper.rb, line 48</span>
|
|
265
|
+
48: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">render_portlet</span>(<span class="ruby-identifier">name</span>)
|
|
266
|
+
49: <span class="ruby-identifier">portlets</span> = <span class="ruby-constant">Portlet</span>.<span class="ruby-identifier">all</span>(<span class="ruby-identifier">:conditions</span> =<span class="ruby-operator">></span> [<span class="ruby-value str">"name = ?"</span>, <span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_s</span>])
|
|
267
|
+
50: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">portlets</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">1</span>
|
|
268
|
+
51: <span class="ruby-ivar">@mode</span> <span class="ruby-operator">==</span> <span class="ruby-value str">"edit"</span> <span class="ruby-operator">?</span> <span class="ruby-node">"ERROR: Multiple Portlets with name '#{name}'"</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>
|
|
269
|
+
52: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">portlets</span>.<span class="ruby-identifier">empty?</span>
|
|
270
|
+
53: <span class="ruby-ivar">@mode</span> <span class="ruby-operator">==</span> <span class="ruby-value str">"edit"</span> <span class="ruby-operator">?</span> <span class="ruby-node">"ERROR: No Portlet with name '#{name}'"</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>
|
|
271
|
+
54: <span class="ruby-keyword kw">else</span>
|
|
272
|
+
55: <span class="ruby-identifier">render_connectable</span>(<span class="ruby-identifier">portlets</span>.<span class="ruby-identifier">first</span>)
|
|
273
|
+
56: <span class="ruby-keyword kw">end</span>
|
|
274
|
+
57: <span class="ruby-keyword kw">end</span>
|
|
275
|
+
</pre>
|
|
276
|
+
</div>
|
|
277
|
+
</div>
|
|
278
|
+
</div>
|
|
279
|
+
|
|
280
|
+
|
|
281
|
+
</div>
|
|
282
|
+
|
|
283
|
+
|
|
284
|
+
</div>
|
|
285
|
+
|
|
286
|
+
|
|
287
|
+
<div id="validator-badges">
|
|
288
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
289
|
+
</div>
|
|
290
|
+
|
|
291
|
+
</body>
|
|
292
|
+
</html>
|