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,119 @@
|
|
|
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: ApplicationController</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">ApplicationController</td>
|
|
54
|
+
</tr>
|
|
55
|
+
<tr class="top-aligned-row">
|
|
56
|
+
<td><strong>In:</strong></td>
|
|
57
|
+
<td>
|
|
58
|
+
<a href="../files/app/controllers/application_controller_rb.html">
|
|
59
|
+
app/controllers/application_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
|
+
ActionController::Base
|
|
69
|
+
</td>
|
|
70
|
+
</tr>
|
|
71
|
+
</table>
|
|
72
|
+
</div>
|
|
73
|
+
<!-- banner header -->
|
|
74
|
+
|
|
75
|
+
<div id="bodyContent">
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
<div id="contextContent">
|
|
80
|
+
|
|
81
|
+
<div id="description">
|
|
82
|
+
<p>
|
|
83
|
+
Filters added to this controller apply to all controllers in the
|
|
84
|
+
application. Likewise, all the methods added will be available for all
|
|
85
|
+
controllers.
|
|
86
|
+
</p>
|
|
87
|
+
|
|
88
|
+
</div>
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
</div>
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
</div>
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
<!-- if includes -->
|
|
98
|
+
|
|
99
|
+
<div id="section">
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
<!-- if method_list -->
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
</div>
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
<div id="validator-badges">
|
|
115
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
116
|
+
</div>
|
|
117
|
+
|
|
118
|
+
</body>
|
|
119
|
+
</html>
|
|
@@ -0,0 +1,112 @@
|
|
|
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: ApplicationHelper</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">ApplicationHelper</td>
|
|
54
|
+
</tr>
|
|
55
|
+
<tr class="top-aligned-row">
|
|
56
|
+
<td><strong>In:</strong></td>
|
|
57
|
+
<td>
|
|
58
|
+
<a href="../files/app/helpers/application_helper_rb.html">
|
|
59
|
+
app/helpers/application_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
|
+
<div id="description">
|
|
76
|
+
<p>
|
|
77
|
+
Any code for core CMS should go in /cms/application_helper.rb rather than
|
|
78
|
+
here.
|
|
79
|
+
</p>
|
|
80
|
+
|
|
81
|
+
</div>
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
</div>
|
|
85
|
+
|
|
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
|
+
|
|
103
|
+
|
|
104
|
+
</div>
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
<div id="validator-badges">
|
|
108
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
109
|
+
</div>
|
|
110
|
+
|
|
111
|
+
</body>
|
|
112
|
+
</html>
|
|
@@ -0,0 +1,726 @@
|
|
|
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: Attachment</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">Attachment</td>
|
|
54
|
+
</tr>
|
|
55
|
+
<tr class="top-aligned-row">
|
|
56
|
+
<td><strong>In:</strong></td>
|
|
57
|
+
<td>
|
|
58
|
+
<a href="../files/app/models/attachment_rb.html">
|
|
59
|
+
app/models/attachment.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
|
+
ActiveRecord::Base
|
|
69
|
+
</td>
|
|
70
|
+
</tr>
|
|
71
|
+
</table>
|
|
72
|
+
</div>
|
|
73
|
+
<!-- banner header -->
|
|
74
|
+
|
|
75
|
+
<div id="bodyContent">
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
<div id="contextContent">
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
</div>
|
|
84
|
+
|
|
85
|
+
<div id="method-list">
|
|
86
|
+
<h3 class="section-bar">Methods</h3>
|
|
87
|
+
|
|
88
|
+
<div class="name-list">
|
|
89
|
+
<a href="#M000172">clear_ivars</a>
|
|
90
|
+
<a href="#M000181">dirty!</a>
|
|
91
|
+
<a href="#M000166">extract_file_extension_from_file_name</a>
|
|
92
|
+
<a href="#M000168">extract_file_size_from_temp_file</a>
|
|
93
|
+
<a href="#M000167">extract_file_type_from_temp_file</a>
|
|
94
|
+
<a href="#M000176">file_name</a>
|
|
95
|
+
<a href="#M000175">find_live_by_file_path</a>
|
|
96
|
+
<a href="#M000180">full_file_location</a>
|
|
97
|
+
<a href="#M000178">icon</a>
|
|
98
|
+
<a href="#M000164">make_dirty_if_temp_file</a>
|
|
99
|
+
<a href="#M000177">name</a>
|
|
100
|
+
<a href="#M000165">prepend_file_path_with_slash</a>
|
|
101
|
+
<a href="#M000170">process_section</a>
|
|
102
|
+
<a href="#M000179">public?</a>
|
|
103
|
+
<a href="#M000162">section</a>
|
|
104
|
+
<a href="#M000163">section=</a>
|
|
105
|
+
<a href="#M000160">section_id</a>
|
|
106
|
+
<a href="#M000161">section_id=</a>
|
|
107
|
+
<a href="#M000169">set_file_location</a>
|
|
108
|
+
<a href="#M000173">storage_location</a>
|
|
109
|
+
<a href="#M000174">storage_location=</a>
|
|
110
|
+
<a href="#M000171">write_temp_file_to_storage_location</a>
|
|
111
|
+
</div>
|
|
112
|
+
</div>
|
|
113
|
+
|
|
114
|
+
</div>
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
<!-- if includes -->
|
|
118
|
+
|
|
119
|
+
<div id="section">
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
<div id="attribute-list">
|
|
126
|
+
<h3 class="section-bar">Attributes</h3>
|
|
127
|
+
|
|
128
|
+
<div class="name-list">
|
|
129
|
+
<table>
|
|
130
|
+
<tr class="top-aligned-row context-row">
|
|
131
|
+
<td class="context-item-name">temp_file</td>
|
|
132
|
+
<td class="context-item-value"> [RW] </td>
|
|
133
|
+
<td class="context-item-desc"></td>
|
|
134
|
+
</tr>
|
|
135
|
+
</table>
|
|
136
|
+
</div>
|
|
137
|
+
</div>
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
<!-- if method_list -->
|
|
142
|
+
<div id="methods">
|
|
143
|
+
<h3 class="section-bar">Public Class methods</h3>
|
|
144
|
+
|
|
145
|
+
<div id="method-M000175" class="method-detail">
|
|
146
|
+
<a name="M000175"></a>
|
|
147
|
+
|
|
148
|
+
<div class="method-heading">
|
|
149
|
+
<a href="#M000175" class="method-signature">
|
|
150
|
+
<span class="method-name">find_live_by_file_path</span><span class="method-args">(file_path)</span>
|
|
151
|
+
</a>
|
|
152
|
+
</div>
|
|
153
|
+
|
|
154
|
+
<div class="method-description">
|
|
155
|
+
<p><a class="source-toggle" href="#"
|
|
156
|
+
onclick="toggleCode('M000175-source');return false;">[Source]</a></p>
|
|
157
|
+
<div class="method-source-code" id="M000175-source">
|
|
158
|
+
<pre>
|
|
159
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 146</span>
|
|
160
|
+
146: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">find_live_by_file_path</span>(<span class="ruby-identifier">file_path</span>)
|
|
161
|
+
147: <span class="ruby-constant">Attachment</span>.<span class="ruby-identifier">published</span>.<span class="ruby-identifier">not_archived</span>.<span class="ruby-identifier">first</span>(<span class="ruby-identifier">:conditions</span> =<span class="ruby-operator">></span> {<span class="ruby-identifier">:file_path</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">file_path</span>})
|
|
162
|
+
148: <span class="ruby-keyword kw">end</span>
|
|
163
|
+
</pre>
|
|
164
|
+
</div>
|
|
165
|
+
</div>
|
|
166
|
+
</div>
|
|
167
|
+
|
|
168
|
+
<div id="method-M000173" class="method-detail">
|
|
169
|
+
<a name="M000173"></a>
|
|
170
|
+
|
|
171
|
+
<div class="method-heading">
|
|
172
|
+
<a href="#M000173" class="method-signature">
|
|
173
|
+
<span class="method-name">storage_location</span><span class="method-args">()</span>
|
|
174
|
+
</a>
|
|
175
|
+
</div>
|
|
176
|
+
|
|
177
|
+
<div class="method-description">
|
|
178
|
+
<p><a class="source-toggle" href="#"
|
|
179
|
+
onclick="toggleCode('M000173-source');return false;">[Source]</a></p>
|
|
180
|
+
<div class="method-source-code" id="M000173-source">
|
|
181
|
+
<pre>
|
|
182
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 138</span>
|
|
183
|
+
138: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">storage_location</span>
|
|
184
|
+
139: <span class="ruby-ivar">@storage_location</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-constant">Rails</span>.<span class="ruby-identifier">root</span>, <span class="ruby-value str">"/tmp/uploads"</span>)
|
|
185
|
+
140: <span class="ruby-keyword kw">end</span>
|
|
186
|
+
</pre>
|
|
187
|
+
</div>
|
|
188
|
+
</div>
|
|
189
|
+
</div>
|
|
190
|
+
|
|
191
|
+
<div id="method-M000174" class="method-detail">
|
|
192
|
+
<a name="M000174"></a>
|
|
193
|
+
|
|
194
|
+
<div class="method-heading">
|
|
195
|
+
<a href="#M000174" class="method-signature">
|
|
196
|
+
<span class="method-name">storage_location=</span><span class="method-args">(storage_location)</span>
|
|
197
|
+
</a>
|
|
198
|
+
</div>
|
|
199
|
+
|
|
200
|
+
<div class="method-description">
|
|
201
|
+
<p><a class="source-toggle" href="#"
|
|
202
|
+
onclick="toggleCode('M000174-source');return false;">[Source]</a></p>
|
|
203
|
+
<div class="method-source-code" id="M000174-source">
|
|
204
|
+
<pre>
|
|
205
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 142</span>
|
|
206
|
+
142: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">storage_location=</span>(<span class="ruby-identifier">storage_location</span>)
|
|
207
|
+
143: <span class="ruby-ivar">@storage_location</span> = <span class="ruby-identifier">storage_location</span>
|
|
208
|
+
144: <span class="ruby-keyword kw">end</span>
|
|
209
|
+
</pre>
|
|
210
|
+
</div>
|
|
211
|
+
</div>
|
|
212
|
+
</div>
|
|
213
|
+
|
|
214
|
+
<h3 class="section-bar">Public Instance methods</h3>
|
|
215
|
+
|
|
216
|
+
<div id="method-M000172" class="method-detail">
|
|
217
|
+
<a name="M000172"></a>
|
|
218
|
+
|
|
219
|
+
<div class="method-heading">
|
|
220
|
+
<a href="#M000172" class="method-signature">
|
|
221
|
+
<span class="method-name">clear_ivars</span><span class="method-args">()</span>
|
|
222
|
+
</a>
|
|
223
|
+
</div>
|
|
224
|
+
|
|
225
|
+
<div class="method-description">
|
|
226
|
+
<p><a class="source-toggle" href="#"
|
|
227
|
+
onclick="toggleCode('M000172-source');return false;">[Source]</a></p>
|
|
228
|
+
<div class="method-source-code" id="M000172-source">
|
|
229
|
+
<pre>
|
|
230
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 130</span>
|
|
231
|
+
130: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">clear_ivars</span>
|
|
232
|
+
131: <span class="ruby-ivar">@temp_file</span> = <span class="ruby-keyword kw">nil</span>
|
|
233
|
+
132: <span class="ruby-ivar">@section</span> = <span class="ruby-keyword kw">nil</span>
|
|
234
|
+
133: <span class="ruby-ivar">@section_id</span> = <span class="ruby-keyword kw">nil</span>
|
|
235
|
+
134: <span class="ruby-keyword kw">end</span>
|
|
236
|
+
</pre>
|
|
237
|
+
</div>
|
|
238
|
+
</div>
|
|
239
|
+
</div>
|
|
240
|
+
|
|
241
|
+
<div id="method-M000181" class="method-detail">
|
|
242
|
+
<a name="M000181"></a>
|
|
243
|
+
|
|
244
|
+
<div class="method-heading">
|
|
245
|
+
<a href="#M000181" class="method-signature">
|
|
246
|
+
<span class="method-name">dirty!</span><span class="method-args">()</span>
|
|
247
|
+
</a>
|
|
248
|
+
</div>
|
|
249
|
+
|
|
250
|
+
<div class="method-description">
|
|
251
|
+
<p>
|
|
252
|
+
Forces this record to be changed, even if nothing has changed This is
|
|
253
|
+
necessary if just the section.id has changed, for example
|
|
254
|
+
</p>
|
|
255
|
+
<p><a class="source-toggle" href="#"
|
|
256
|
+
onclick="toggleCode('M000181-source');return false;">[Source]</a></p>
|
|
257
|
+
<div class="method-source-code" id="M000181-source">
|
|
258
|
+
<pre>
|
|
259
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 188</span>
|
|
260
|
+
188: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">dirty!</span>
|
|
261
|
+
189: <span class="ruby-comment cmt"># Seems like a hack, is there a better way?</span>
|
|
262
|
+
190: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">updated_at</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>
|
|
263
|
+
191: <span class="ruby-keyword kw">end</span>
|
|
264
|
+
</pre>
|
|
265
|
+
</div>
|
|
266
|
+
</div>
|
|
267
|
+
</div>
|
|
268
|
+
|
|
269
|
+
<div id="method-M000166" class="method-detail">
|
|
270
|
+
<a name="M000166"></a>
|
|
271
|
+
|
|
272
|
+
<div class="method-heading">
|
|
273
|
+
<a href="#M000166" class="method-signature">
|
|
274
|
+
<span class="method-name">extract_file_extension_from_file_name</span><span class="method-args">()</span>
|
|
275
|
+
</a>
|
|
276
|
+
</div>
|
|
277
|
+
|
|
278
|
+
<div class="method-description">
|
|
279
|
+
<p><a class="source-toggle" href="#"
|
|
280
|
+
onclick="toggleCode('M000166-source');return false;">[Source]</a></p>
|
|
281
|
+
<div class="method-source-code" id="M000166-source">
|
|
282
|
+
<pre>
|
|
283
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 77</span>
|
|
284
|
+
77: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">extract_file_extension_from_file_name</span>
|
|
285
|
+
78: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">file_name</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">file_name</span>[<span class="ruby-value str">'.'</span>]
|
|
286
|
+
79: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">file_extension</span> = <span class="ruby-identifier">file_name</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">'.'</span>).<span class="ruby-identifier">last</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">downcase</span>
|
|
287
|
+
80: <span class="ruby-keyword kw">end</span>
|
|
288
|
+
81: <span class="ruby-keyword kw">end</span>
|
|
289
|
+
</pre>
|
|
290
|
+
</div>
|
|
291
|
+
</div>
|
|
292
|
+
</div>
|
|
293
|
+
|
|
294
|
+
<div id="method-M000168" class="method-detail">
|
|
295
|
+
<a name="M000168"></a>
|
|
296
|
+
|
|
297
|
+
<div class="method-heading">
|
|
298
|
+
<a href="#M000168" class="method-signature">
|
|
299
|
+
<span class="method-name">extract_file_size_from_temp_file</span><span class="method-args">()</span>
|
|
300
|
+
</a>
|
|
301
|
+
</div>
|
|
302
|
+
|
|
303
|
+
<div class="method-description">
|
|
304
|
+
<p><a class="source-toggle" href="#"
|
|
305
|
+
onclick="toggleCode('M000168-source');return false;">[Source]</a></p>
|
|
306
|
+
<div class="method-source-code" id="M000168-source">
|
|
307
|
+
<pre>
|
|
308
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 89</span>
|
|
309
|
+
89: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">extract_file_size_from_temp_file</span>
|
|
310
|
+
90: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">temp_file</span>.<span class="ruby-identifier">blank?</span>
|
|
311
|
+
91: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">file_size</span> = <span class="ruby-identifier">temp_file</span>.<span class="ruby-identifier">size</span>
|
|
312
|
+
92: <span class="ruby-keyword kw">end</span>
|
|
313
|
+
93: <span class="ruby-keyword kw">end</span>
|
|
314
|
+
</pre>
|
|
315
|
+
</div>
|
|
316
|
+
</div>
|
|
317
|
+
</div>
|
|
318
|
+
|
|
319
|
+
<div id="method-M000167" class="method-detail">
|
|
320
|
+
<a name="M000167"></a>
|
|
321
|
+
|
|
322
|
+
<div class="method-heading">
|
|
323
|
+
<a href="#M000167" class="method-signature">
|
|
324
|
+
<span class="method-name">extract_file_type_from_temp_file</span><span class="method-args">()</span>
|
|
325
|
+
</a>
|
|
326
|
+
</div>
|
|
327
|
+
|
|
328
|
+
<div class="method-description">
|
|
329
|
+
<p><a class="source-toggle" href="#"
|
|
330
|
+
onclick="toggleCode('M000167-source');return false;">[Source]</a></p>
|
|
331
|
+
<div class="method-source-code" id="M000167-source">
|
|
332
|
+
<pre>
|
|
333
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 83</span>
|
|
334
|
+
83: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">extract_file_type_from_temp_file</span>
|
|
335
|
+
84: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">temp_file</span>.<span class="ruby-identifier">blank?</span>
|
|
336
|
+
85: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">file_type</span> = <span class="ruby-identifier">temp_file</span>.<span class="ruby-identifier">content_type</span>
|
|
337
|
+
86: <span class="ruby-keyword kw">end</span>
|
|
338
|
+
87: <span class="ruby-keyword kw">end</span>
|
|
339
|
+
</pre>
|
|
340
|
+
</div>
|
|
341
|
+
</div>
|
|
342
|
+
</div>
|
|
343
|
+
|
|
344
|
+
<div id="method-M000176" class="method-detail">
|
|
345
|
+
<a name="M000176"></a>
|
|
346
|
+
|
|
347
|
+
<div class="method-heading">
|
|
348
|
+
<a href="#M000176" class="method-signature">
|
|
349
|
+
<span class="method-name">file_name</span><span class="method-args">()</span>
|
|
350
|
+
</a>
|
|
351
|
+
</div>
|
|
352
|
+
|
|
353
|
+
<div class="method-description">
|
|
354
|
+
<p><a class="source-toggle" href="#"
|
|
355
|
+
onclick="toggleCode('M000176-source');return false;">[Source]</a></p>
|
|
356
|
+
<div class="method-source-code" id="M000176-source">
|
|
357
|
+
<pre>
|
|
358
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 152</span>
|
|
359
|
+
152: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">file_name</span>
|
|
360
|
+
153: <span class="ruby-identifier">file_path</span> <span class="ruby-value">? </span><span class="ruby-identifier">file_path</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">'/'</span>).<span class="ruby-identifier">last</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>
|
|
361
|
+
154: <span class="ruby-keyword kw">end</span>
|
|
362
|
+
</pre>
|
|
363
|
+
</div>
|
|
364
|
+
</div>
|
|
365
|
+
</div>
|
|
366
|
+
|
|
367
|
+
<div id="method-M000180" class="method-detail">
|
|
368
|
+
<a name="M000180"></a>
|
|
369
|
+
|
|
370
|
+
<div class="method-heading">
|
|
371
|
+
<a href="#M000180" class="method-signature">
|
|
372
|
+
<span class="method-name">full_file_location</span><span class="method-args">()</span>
|
|
373
|
+
</a>
|
|
374
|
+
</div>
|
|
375
|
+
|
|
376
|
+
<div class="method-description">
|
|
377
|
+
<p><a class="source-toggle" href="#"
|
|
378
|
+
onclick="toggleCode('M000180-source');return false;">[Source]</a></p>
|
|
379
|
+
<div class="method-source-code" id="M000180-source">
|
|
380
|
+
<pre>
|
|
381
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 182</span>
|
|
382
|
+
182: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">full_file_location</span>
|
|
383
|
+
183: <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-constant">Attachment</span>.<span class="ruby-identifier">storage_location</span>, <span class="ruby-identifier">file_location</span>)
|
|
384
|
+
184: <span class="ruby-keyword kw">end</span>
|
|
385
|
+
</pre>
|
|
386
|
+
</div>
|
|
387
|
+
</div>
|
|
388
|
+
</div>
|
|
389
|
+
|
|
390
|
+
<div id="method-M000178" class="method-detail">
|
|
391
|
+
<a name="M000178"></a>
|
|
392
|
+
|
|
393
|
+
<div class="method-heading">
|
|
394
|
+
<a href="#M000178" class="method-signature">
|
|
395
|
+
<span class="method-name">icon</span><span class="method-args">()</span>
|
|
396
|
+
</a>
|
|
397
|
+
</div>
|
|
398
|
+
|
|
399
|
+
<div class="method-description">
|
|
400
|
+
<p><a class="source-toggle" href="#"
|
|
401
|
+
onclick="toggleCode('M000178-source');return false;">[Source]</a></p>
|
|
402
|
+
<div class="method-source-code" id="M000178-source">
|
|
403
|
+
<pre>
|
|
404
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 160</span>
|
|
405
|
+
160: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">icon</span>
|
|
406
|
+
161: {
|
|
407
|
+
162: <span class="ruby-identifier">:doc</span> =<span class="ruby-operator">></span> <span class="ruby-node">%w[doc]</span>,
|
|
408
|
+
163: <span class="ruby-identifier">:gif</span> =<span class="ruby-operator">></span> <span class="ruby-node">%w[gif jpg jpeg png tiff bmp]</span>,
|
|
409
|
+
164: <span class="ruby-identifier">:htm</span> =<span class="ruby-operator">></span> <span class="ruby-node">%w[htm html]</span>,
|
|
410
|
+
165: <span class="ruby-identifier">:pdf</span> =<span class="ruby-operator">></span> <span class="ruby-node">%w[pdf]</span>,
|
|
411
|
+
166: <span class="ruby-identifier">:ppt</span> =<span class="ruby-operator">></span> <span class="ruby-node">%w[ppt]</span>,
|
|
412
|
+
167: <span class="ruby-identifier">:swf</span> =<span class="ruby-operator">></span> <span class="ruby-node">%w[swf]</span>,
|
|
413
|
+
168: <span class="ruby-identifier">:txt</span> =<span class="ruby-operator">></span> <span class="ruby-node">%w[txt]</span>,
|
|
414
|
+
169: <span class="ruby-identifier">:xls</span> =<span class="ruby-operator">></span> <span class="ruby-node">%w[xls]</span>,
|
|
415
|
+
170: <span class="ruby-identifier">:xml</span> =<span class="ruby-operator">></span> <span class="ruby-node">%w[xml]</span>,
|
|
416
|
+
171: <span class="ruby-identifier">:zip</span> =<span class="ruby-operator">></span> <span class="ruby-node">%w[zip rar tar gz tgz]</span>
|
|
417
|
+
172: }.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">icon</span>, <span class="ruby-identifier">extensions</span><span class="ruby-operator">|</span>
|
|
418
|
+
173: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">icon</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">extensions</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">file_extension</span>.<span class="ruby-identifier">to_s</span>)
|
|
419
|
+
174: <span class="ruby-keyword kw">end</span>
|
|
420
|
+
175: <span class="ruby-identifier">:file</span>
|
|
421
|
+
176: <span class="ruby-keyword kw">end</span>
|
|
422
|
+
</pre>
|
|
423
|
+
</div>
|
|
424
|
+
</div>
|
|
425
|
+
</div>
|
|
426
|
+
|
|
427
|
+
<div id="method-M000164" class="method-detail">
|
|
428
|
+
<a name="M000164"></a>
|
|
429
|
+
|
|
430
|
+
<div class="method-heading">
|
|
431
|
+
<a href="#M000164" class="method-signature">
|
|
432
|
+
<span class="method-name">make_dirty_if_temp_file</span><span class="method-args">()</span>
|
|
433
|
+
</a>
|
|
434
|
+
</div>
|
|
435
|
+
|
|
436
|
+
<div class="method-description">
|
|
437
|
+
<p><a class="source-toggle" href="#"
|
|
438
|
+
onclick="toggleCode('M000164-source');return false;">[Source]</a></p>
|
|
439
|
+
<div class="method-source-code" id="M000164-source">
|
|
440
|
+
<pre>
|
|
441
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 67</span>
|
|
442
|
+
67: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">make_dirty_if_temp_file</span>
|
|
443
|
+
68: <span class="ruby-identifier">dirty!</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">temp_file</span>
|
|
444
|
+
69: <span class="ruby-keyword kw">end</span>
|
|
445
|
+
</pre>
|
|
446
|
+
</div>
|
|
447
|
+
</div>
|
|
448
|
+
</div>
|
|
449
|
+
|
|
450
|
+
<div id="method-M000177" class="method-detail">
|
|
451
|
+
<a name="M000177"></a>
|
|
452
|
+
|
|
453
|
+
<div class="method-heading">
|
|
454
|
+
<a href="#M000177" class="method-signature">
|
|
455
|
+
<span class="method-name">name</span><span class="method-args">()</span>
|
|
456
|
+
</a>
|
|
457
|
+
</div>
|
|
458
|
+
|
|
459
|
+
<div class="method-description">
|
|
460
|
+
<p><a class="source-toggle" href="#"
|
|
461
|
+
onclick="toggleCode('M000177-source');return false;">[Source]</a></p>
|
|
462
|
+
<div class="method-source-code" id="M000177-source">
|
|
463
|
+
<pre>
|
|
464
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 156</span>
|
|
465
|
+
156: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">name</span>
|
|
466
|
+
157: <span class="ruby-identifier">file_name</span>
|
|
467
|
+
158: <span class="ruby-keyword kw">end</span>
|
|
468
|
+
</pre>
|
|
469
|
+
</div>
|
|
470
|
+
</div>
|
|
471
|
+
</div>
|
|
472
|
+
|
|
473
|
+
<div id="method-M000165" class="method-detail">
|
|
474
|
+
<a name="M000165"></a>
|
|
475
|
+
|
|
476
|
+
<div class="method-heading">
|
|
477
|
+
<a href="#M000165" class="method-signature">
|
|
478
|
+
<span class="method-name">prepend_file_path_with_slash</span><span class="method-args">()</span>
|
|
479
|
+
</a>
|
|
480
|
+
</div>
|
|
481
|
+
|
|
482
|
+
<div class="method-description">
|
|
483
|
+
<p><a class="source-toggle" href="#"
|
|
484
|
+
onclick="toggleCode('M000165-source');return false;">[Source]</a></p>
|
|
485
|
+
<div class="method-source-code" id="M000165-source">
|
|
486
|
+
<pre>
|
|
487
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 71</span>
|
|
488
|
+
71: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">prepend_file_path_with_slash</span>
|
|
489
|
+
72: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">file_path</span>.<span class="ruby-identifier">blank?</span>
|
|
490
|
+
73: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">file_path</span> = <span class="ruby-node">"/#{file_path}"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">file_path</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp re">/^\//</span>
|
|
491
|
+
74: <span class="ruby-keyword kw">end</span>
|
|
492
|
+
75: <span class="ruby-keyword kw">end</span>
|
|
493
|
+
</pre>
|
|
494
|
+
</div>
|
|
495
|
+
</div>
|
|
496
|
+
</div>
|
|
497
|
+
|
|
498
|
+
<div id="method-M000170" class="method-detail">
|
|
499
|
+
<a name="M000170"></a>
|
|
500
|
+
|
|
501
|
+
<div class="method-heading">
|
|
502
|
+
<a href="#M000170" class="method-signature">
|
|
503
|
+
<span class="method-name">process_section</span><span class="method-args">()</span>
|
|
504
|
+
</a>
|
|
505
|
+
</div>
|
|
506
|
+
|
|
507
|
+
<div class="method-description">
|
|
508
|
+
<p><a class="source-toggle" href="#"
|
|
509
|
+
onclick="toggleCode('M000170-source');return false;">[Source]</a></p>
|
|
510
|
+
<div class="method-source-code" id="M000170-source">
|
|
511
|
+
<pre>
|
|
512
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 106</span>
|
|
513
|
+
106: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">process_section</span>
|
|
514
|
+
107: <span class="ruby-comment cmt">#logger.info "processing section, section_id => #{section_id}, section_node => #{section_node.inspect}"</span>
|
|
515
|
+
108: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">section_node</span> <span class="ruby-operator">&&</span> <span class="ruby-operator">!</span><span class="ruby-identifier">section_node</span>.<span class="ruby-identifier">new_record?</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">section_node</span>.<span class="ruby-identifier">section_id</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">section_id</span>
|
|
516
|
+
109: <span class="ruby-identifier">section_node</span>.<span class="ruby-identifier">move_to_end</span>(<span class="ruby-constant">Section</span>.<span class="ruby-identifier">find</span>(<span class="ruby-identifier">section_id</span>))
|
|
517
|
+
110: <span class="ruby-keyword kw">else</span>
|
|
518
|
+
111: <span class="ruby-identifier">build_section_node</span>(<span class="ruby-identifier">:node</span> =<span class="ruby-operator">></span> <span class="ruby-keyword kw">self</span>, <span class="ruby-identifier">:section_id</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">section_id</span>)
|
|
519
|
+
112: <span class="ruby-keyword kw">end</span>
|
|
520
|
+
113: <span class="ruby-keyword kw">end</span>
|
|
521
|
+
</pre>
|
|
522
|
+
</div>
|
|
523
|
+
</div>
|
|
524
|
+
</div>
|
|
525
|
+
|
|
526
|
+
<div id="method-M000179" class="method-detail">
|
|
527
|
+
<a name="M000179"></a>
|
|
528
|
+
|
|
529
|
+
<div class="method-heading">
|
|
530
|
+
<a href="#M000179" class="method-signature">
|
|
531
|
+
<span class="method-name">public?</span><span class="method-args">()</span>
|
|
532
|
+
</a>
|
|
533
|
+
</div>
|
|
534
|
+
|
|
535
|
+
<div class="method-description">
|
|
536
|
+
<p><a class="source-toggle" href="#"
|
|
537
|
+
onclick="toggleCode('M000179-source');return false;">[Source]</a></p>
|
|
538
|
+
<div class="method-source-code" id="M000179-source">
|
|
539
|
+
<pre>
|
|
540
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 178</span>
|
|
541
|
+
178: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">public?</span>
|
|
542
|
+
179: <span class="ruby-identifier">section</span> <span class="ruby-value">? </span><span class="ruby-identifier">section</span>.<span class="ruby-identifier">public?</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">false</span>
|
|
543
|
+
180: <span class="ruby-keyword kw">end</span>
|
|
544
|
+
</pre>
|
|
545
|
+
</div>
|
|
546
|
+
</div>
|
|
547
|
+
</div>
|
|
548
|
+
|
|
549
|
+
<div id="method-M000162" class="method-detail">
|
|
550
|
+
<a name="M000162"></a>
|
|
551
|
+
|
|
552
|
+
<div class="method-heading">
|
|
553
|
+
<a href="#M000162" class="method-signature">
|
|
554
|
+
<span class="method-name">section</span><span class="method-args">()</span>
|
|
555
|
+
</a>
|
|
556
|
+
</div>
|
|
557
|
+
|
|
558
|
+
<div class="method-description">
|
|
559
|
+
<p><a class="source-toggle" href="#"
|
|
560
|
+
onclick="toggleCode('M000162-source');return false;">[Source]</a></p>
|
|
561
|
+
<div class="method-source-code" id="M000162-source">
|
|
562
|
+
<pre>
|
|
563
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 53</span>
|
|
564
|
+
53: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">section</span>
|
|
565
|
+
54: <span class="ruby-ivar">@section</span> <span class="ruby-operator">||=</span> <span class="ruby-identifier">section_node</span> <span class="ruby-value">? </span><span class="ruby-identifier">section_node</span>.<span class="ruby-identifier">section</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>
|
|
566
|
+
55: <span class="ruby-keyword kw">end</span>
|
|
567
|
+
</pre>
|
|
568
|
+
</div>
|
|
569
|
+
</div>
|
|
570
|
+
</div>
|
|
571
|
+
|
|
572
|
+
<div id="method-M000163" class="method-detail">
|
|
573
|
+
<a name="M000163"></a>
|
|
574
|
+
|
|
575
|
+
<div class="method-heading">
|
|
576
|
+
<a href="#M000163" class="method-signature">
|
|
577
|
+
<span class="method-name">section=</span><span class="method-args">(section)</span>
|
|
578
|
+
</a>
|
|
579
|
+
</div>
|
|
580
|
+
|
|
581
|
+
<div class="method-description">
|
|
582
|
+
<p><a class="source-toggle" href="#"
|
|
583
|
+
onclick="toggleCode('M000163-source');return false;">[Source]</a></p>
|
|
584
|
+
<div class="method-source-code" id="M000163-source">
|
|
585
|
+
<pre>
|
|
586
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 57</span>
|
|
587
|
+
57: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">section=</span>(<span class="ruby-identifier">section</span>)
|
|
588
|
+
58: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@section</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">section</span>
|
|
589
|
+
59: <span class="ruby-identifier">dirty!</span>
|
|
590
|
+
60: <span class="ruby-ivar">@section_id</span> = <span class="ruby-identifier">section</span> <span class="ruby-value">? </span><span class="ruby-identifier">section</span>.<span class="ruby-identifier">id</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>
|
|
591
|
+
61: <span class="ruby-ivar">@section</span> = <span class="ruby-identifier">section</span>
|
|
592
|
+
62: <span class="ruby-keyword kw">end</span>
|
|
593
|
+
63: <span class="ruby-keyword kw">end</span>
|
|
594
|
+
</pre>
|
|
595
|
+
</div>
|
|
596
|
+
</div>
|
|
597
|
+
</div>
|
|
598
|
+
|
|
599
|
+
<div id="method-M000160" class="method-detail">
|
|
600
|
+
<a name="M000160"></a>
|
|
601
|
+
|
|
602
|
+
<div class="method-heading">
|
|
603
|
+
<a href="#M000160" class="method-signature">
|
|
604
|
+
<span class="method-name">section_id</span><span class="method-args">()</span>
|
|
605
|
+
</a>
|
|
606
|
+
</div>
|
|
607
|
+
|
|
608
|
+
<div class="method-description">
|
|
609
|
+
<p><a class="source-toggle" href="#"
|
|
610
|
+
onclick="toggleCode('M000160-source');return false;">[Source]</a></p>
|
|
611
|
+
<div class="method-source-code" id="M000160-source">
|
|
612
|
+
<pre>
|
|
613
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 42</span>
|
|
614
|
+
42: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">section_id</span>
|
|
615
|
+
43: <span class="ruby-ivar">@section_id</span> <span class="ruby-operator">||=</span> <span class="ruby-identifier">section_node</span> <span class="ruby-value">? </span><span class="ruby-identifier">section_node</span>.<span class="ruby-identifier">section_id</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>
|
|
616
|
+
44: <span class="ruby-keyword kw">end</span>
|
|
617
|
+
</pre>
|
|
618
|
+
</div>
|
|
619
|
+
</div>
|
|
620
|
+
</div>
|
|
621
|
+
|
|
622
|
+
<div id="method-M000161" class="method-detail">
|
|
623
|
+
<a name="M000161"></a>
|
|
624
|
+
|
|
625
|
+
<div class="method-heading">
|
|
626
|
+
<a href="#M000161" class="method-signature">
|
|
627
|
+
<span class="method-name">section_id=</span><span class="method-args">(section_id)</span>
|
|
628
|
+
</a>
|
|
629
|
+
</div>
|
|
630
|
+
|
|
631
|
+
<div class="method-description">
|
|
632
|
+
<p><a class="source-toggle" href="#"
|
|
633
|
+
onclick="toggleCode('M000161-source');return false;">[Source]</a></p>
|
|
634
|
+
<div class="method-source-code" id="M000161-source">
|
|
635
|
+
<pre>
|
|
636
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 46</span>
|
|
637
|
+
46: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">section_id=</span>(<span class="ruby-identifier">section_id</span>)
|
|
638
|
+
47: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@section_id</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">section_id</span>
|
|
639
|
+
48: <span class="ruby-identifier">dirty!</span>
|
|
640
|
+
49: <span class="ruby-ivar">@section_id</span> = <span class="ruby-identifier">section_id</span>
|
|
641
|
+
50: <span class="ruby-keyword kw">end</span>
|
|
642
|
+
51: <span class="ruby-keyword kw">end</span>
|
|
643
|
+
</pre>
|
|
644
|
+
</div>
|
|
645
|
+
</div>
|
|
646
|
+
</div>
|
|
647
|
+
|
|
648
|
+
<div id="method-M000169" class="method-detail">
|
|
649
|
+
<a name="M000169"></a>
|
|
650
|
+
|
|
651
|
+
<div class="method-heading">
|
|
652
|
+
<a href="#M000169" class="method-signature">
|
|
653
|
+
<span class="method-name">set_file_location</span><span class="method-args">()</span>
|
|
654
|
+
</a>
|
|
655
|
+
</div>
|
|
656
|
+
|
|
657
|
+
<div class="method-description">
|
|
658
|
+
<p>
|
|
659
|
+
The file will be stored on disk at <a
|
|
660
|
+
href="Attachment.html#M000173">Attachment.storage_location</a>/year/month/day/sha1
|
|
661
|
+
The sha1 is a 40 character hash based on the original_filename of the file
|
|
662
|
+
uploaded and the current time
|
|
663
|
+
</p>
|
|
664
|
+
<p><a class="source-toggle" href="#"
|
|
665
|
+
onclick="toggleCode('M000169-source');return false;">[Source]</a></p>
|
|
666
|
+
<div class="method-source-code" id="M000169-source">
|
|
667
|
+
<pre>
|
|
668
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 99</span>
|
|
669
|
+
99: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_file_location</span>
|
|
670
|
+
100: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">temp_file</span>.<span class="ruby-identifier">blank?</span>
|
|
671
|
+
101: <span class="ruby-identifier">sha1</span> = <span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA1</span>.<span class="ruby-identifier">hexdigest</span>(<span class="ruby-node">"#{temp_file.original_filename}#{Time.now.to_f}"</span>)
|
|
672
|
+
102: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">file_location</span> = <span class="ruby-node">"#{Time.now.strftime("%Y/%m/%d")}/#{sha1}"</span>
|
|
673
|
+
103: <span class="ruby-keyword kw">end</span>
|
|
674
|
+
104: <span class="ruby-keyword kw">end</span>
|
|
675
|
+
</pre>
|
|
676
|
+
</div>
|
|
677
|
+
</div>
|
|
678
|
+
</div>
|
|
679
|
+
|
|
680
|
+
<div id="method-M000171" class="method-detail">
|
|
681
|
+
<a name="M000171"></a>
|
|
682
|
+
|
|
683
|
+
<div class="method-heading">
|
|
684
|
+
<a href="#M000171" class="method-signature">
|
|
685
|
+
<span class="method-name">write_temp_file_to_storage_location</span><span class="method-args">()</span>
|
|
686
|
+
</a>
|
|
687
|
+
</div>
|
|
688
|
+
|
|
689
|
+
<div class="method-description">
|
|
690
|
+
<p><a class="source-toggle" href="#"
|
|
691
|
+
onclick="toggleCode('M000171-source');return false;">[Source]</a></p>
|
|
692
|
+
<div class="method-source-code" id="M000171-source">
|
|
693
|
+
<pre>
|
|
694
|
+
<span class="ruby-comment cmt"># File app/models/attachment.rb, line 115</span>
|
|
695
|
+
115: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">write_temp_file_to_storage_location</span>
|
|
696
|
+
116: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">temp_file</span>.<span class="ruby-identifier">blank?</span>
|
|
697
|
+
117: <span class="ruby-constant">FileUtils</span>.<span class="ruby-identifier">mkdir_p</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">dirname</span>(<span class="ruby-identifier">full_file_location</span>)
|
|
698
|
+
118: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">temp_file</span>.<span class="ruby-identifier">local_path</span>
|
|
699
|
+
119: <span class="ruby-constant">File</span>.<span class="ruby-identifier">copy</span> <span class="ruby-identifier">temp_file</span>.<span class="ruby-identifier">local_path</span>, <span class="ruby-identifier">full_file_location</span>
|
|
700
|
+
120: <span class="ruby-keyword kw">else</span>
|
|
701
|
+
121: <span class="ruby-identifier">open</span>(<span class="ruby-identifier">full_file_location</span>, <span class="ruby-value str">'w'</span>) {<span class="ruby-operator">|</span><span class="ruby-identifier">f</span><span class="ruby-operator">|</span> <span class="ruby-identifier">f</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">temp_file</span>.<span class="ruby-identifier">read</span> }
|
|
702
|
+
122: <span class="ruby-keyword kw">end</span>
|
|
703
|
+
123:
|
|
704
|
+
124: <span class="ruby-keyword kw">if</span> <span class="ruby-constant">Cms</span>.<span class="ruby-identifier">attachment_file_permission</span>
|
|
705
|
+
125: <span class="ruby-constant">FileUtils</span>.<span class="ruby-identifier">chmod</span> <span class="ruby-constant">Cms</span>.<span class="ruby-identifier">attachment_file_permission</span>, <span class="ruby-identifier">full_file_location</span>
|
|
706
|
+
126: <span class="ruby-keyword kw">end</span>
|
|
707
|
+
127: <span class="ruby-keyword kw">end</span>
|
|
708
|
+
128: <span class="ruby-keyword kw">end</span>
|
|
709
|
+
</pre>
|
|
710
|
+
</div>
|
|
711
|
+
</div>
|
|
712
|
+
</div>
|
|
713
|
+
|
|
714
|
+
|
|
715
|
+
</div>
|
|
716
|
+
|
|
717
|
+
|
|
718
|
+
</div>
|
|
719
|
+
|
|
720
|
+
|
|
721
|
+
<div id="validator-badges">
|
|
722
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
723
|
+
</div>
|
|
724
|
+
|
|
725
|
+
</body>
|
|
726
|
+
</html>
|