Sha256: 4ba1d41bad90cd6de60c43f0d14c605d576ab9716544e8904c84d3fec336cb26
Contents?: true
Size: 1.67 KB
Versions: 1
Compression:
Stored size: 1.67 KB
Contents
module Cavy module ViewHelpers extend self ## # This method makes a editable page element # # # = Example # # page_element(id: 'title', content: @page.title) def page_element(opts) # :args: id, content "<div id='#{opts[:id]}'>#{opts[:content]}</div>".html_safe end ## # This method makes a localized editable page element # # # = Example # # localized_page_element(id: 'title', page: @page) def localized_page_element(opts) # :args: id, page page_element(id: opts[:id], content: localized_text(opts)) end ## # This method gets a localized text # # # = Example # # localized_text(id: 'title', page: @page) def localized_text(opts) opts[:page].get_page_element(opts[:id]) end ## # This method gives the user SEO meta tags # # = Example # # meta_tags(page) def meta_tags(page) "<meta content='#{page.seo_description.to_h[I18n.locale.to_s]}' name='description'> <meta content='#{page_tags(page)}' name='keywords'>".html_safe end ## # This method creates a chart tag for the charts apiĀ“ # # = Example # # chart_tag ('page_vies', 300, 300) def chart_tag(action, _width = 700, height = 300, params = {}) params[:format] ||= :json path = url_for controller: :statistics, action: action content_tag(:div, :'data-chart' => path, :style => "height: #{height}px;") do image_tag('', size: '24x24', class: 'spinner') end end private def page_tags(page) page.seo_keywords.to_h.empty? ? '' : page.seo_keywords[I18n.locale.to_s].to_a.join(', ') end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
cavy-0.1.0.beta2 | lib/cavy/helpers/view_helpers.rb |