Module: Locomotive::Shared::PagesHelper
- Defined in:
- app/helpers/locomotive/shared/pages_helper.rb
Defined Under Namespace
Classes: Node
Instance Method Summary collapse
- #build_page_tree ⇒ Object
- #preview_page_path(page) ⇒ Object
- #render_pages ⇒ Object
- #response_type_name(page) ⇒ Object
Instance Method Details
#build_page_tree ⇒ Object
29 30 31 |
# File 'app/helpers/locomotive/shared/pages_helper.rb', line 29 def build_page_tree @page_tree ||= Locomotive::PageTreeService.new(current_site).build_tree end |
#preview_page_path(page) ⇒ Object
5 6 7 8 9 10 11 12 |
# File 'app/helpers/locomotive/shared/pages_helper.rb', line 5 def preview_page_path(page) _path = params[:preview_path] || current_site.localized_page_fullpath(page, current_content_locale) _path = 'index' if _path.blank? _path += response_type_name(page) truncate('/' + _path, length: 50) end |
#render_pages ⇒ Object
22 23 24 25 26 27 |
# File 'app/helpers/locomotive/shared/pages_helper.rb', line 22 def render_pages tree = build_page_tree nodes = tree.map { |page, children| Node.new(page, children, controller) } render 'locomotive/shared/sidebar/pages', nodes: nodes, root: tree.first.first end |
#response_type_name(page) ⇒ Object
14 15 16 17 18 19 20 |
# File 'app/helpers/locomotive/shared/pages_helper.rb', line 14 def response_type_name(page) if page.default_response_type? '' else '.' + (MIME::Types[page.response_type.to_s].first.try(:preferred_extension) || 'html') end end |