Module: PagesHelper

Defined in:
app/helpers/pages_helper.rb

Instance Method Summary collapse

Instance Method Details

#active_page_class(page) ⇒ Object



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

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



18
19
20
# File 'app/helpers/pages_helper.rb', line 18

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

#current_pageObject



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

def current_page
#   page = @page
#   yield @page if block_given?
# rescue
end

#current_page_class(page) ⇒ Object



58
59
60
# File 'app/helpers/pages_helper.rb', line 58

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

#current_page_path(lang = nil) ⇒ Object



8
9
10
11
12
13
14
15
16
# File 'app/helpers/pages_helper.rb', line 8

def current_page_path(lang=nil)
#   if @page.present?
#     '/' + Kuhsaft::Page.find(@page.id).localized_pages.where('locale = ?', lang).first.url
#   else
#     root_path
#   end
# rescue
#   root_path
end

#homepageObject



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

def homepage
  Kuhsaft::Page.roots.first
end

Yields:

  • (pages)


26
27
28
29
30
31
32
33
34
35
36
# File 'app/helpers/pages_helper.rb', line 26

def navigation_for options
  if options.is_a?(Hash) && slug = options.delete(:slug)
    pages = Kuhsaft::LocalizedPage.navigation(slug).first.page.children.current_locale.published rescue []
  elsif (options.is_a?(Fixnum) && id = options) ||  id = options.delete(:id)
    pages = Kuhsaft::Page.published.where('parent_id = ?', id)
  elsif options.nil?
    pages = Kuhsaft::Page.published.roots
  end
  yield pages if block_given? && pages.length > 0
  pages
end

#page_for_level(num) ⇒ Object



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

def page_for_level num
  input = controller.current_url if controller.respond_to? :current_url
  input ||= params[:url].presence || ''
  url = input.split('/').take(num + 1).join('/') unless input.blank?
  page = Kuhsaft::Page.find_by_url(url)
  yield page if block_given?
  page
rescue
end

#render_markdown(text) ⇒ Object



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

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