Module: PagesHelper

Defined in:
app/helpers/pages_helper.rb

Instance Method Summary collapse

Instance Method Details

#active_page_class(page) ⇒ Object



27
28
29
30
31
# File 'app/helpers/pages_helper.rb', line 27

def active_page_class(page)
  input = controller.current_url if controller.respond_to? :current_url
  input ||= params[:url].presence || ''
  input.include?(page.url.to_s) ? :active : nil
end

#asset_for(id) ⇒ Object



2
3
4
# File 'app/helpers/pages_helper.rb', line 2

def asset_for(id)
  Qbrick::Asset.find(id)
end

#current_page_class(page) ⇒ Object



33
34
35
# File 'app/helpers/pages_helper.rb', line 33

def current_page_class(page)
  :current if active_page_class(page) == :active
end

#homepageObject



10
11
12
# File 'app/helpers/pages_helper.rb', line 10

def homepage
  Qbrick::Page.roots.first
end

#on_qbrick_page?Boolean

Returns:

  • (Boolean)


54
55
56
# File 'app/helpers/pages_helper.rb', line 54

def on_qbrick_page?
  controller.is_a? Qbrick::PagesController
end

#page_for_level(num) {|page| ... } ⇒ Object

Yields:

  • (page)


14
15
16
17
18
19
# File 'app/helpers/pages_helper.rb', line 14

def page_for_level(num)
  url = resolve_page_url_for_nav_level(num)
  page = Qbrick::Page.find_by_url(url)
  yield page if block_given?
  page
end


37
38
39
40
41
42
# File 'app/helpers/pages_helper.rb', line 37

def read_more_link(id)
  link_to(id, :'data-toggle' => 'collapse', :'data-target' => id, :class => 'collapsed button button-read-more') do
    @content = (:p, t('qbrick.text_bricks.text_brick.read_more'), class: 'read-more-text')
    @content << (:p, t('qbrick.text_bricks.text_brick.read_less'), class: 'read-less-text')
  end
end

#render_markdown(text) ⇒ Object



6
7
8
# File 'app/helpers/pages_helper.rb', line 6

def render_markdown(text)
  RDiscount.new(text).to_html if text.present?
end

#resolve_page_url_for_nav_level(level) ⇒ Object



21
22
23
24
25
# File 'app/helpers/pages_helper.rb', line 21

def resolve_page_url_for_nav_level(level)
  input = controller.current_url if controller.respond_to? :current_url
  input ||= params[:url].presence || ''
  input.split('/').take(level + 1).join('/') unless input.blank?
end

#search_page_formObject



44
45
46
47
48
49
50
51
52
# File 'app/helpers/pages_helper.rb', line 44

def search_page_form
  form_tag qbrick.pages_path, method: :get, class: 'form-inline' do
    if block_given?
      yield
    else
      render 'qbrick/search/form'
    end
  end
end