Sha256: 6a200a87cddecb795a2519d88346aa9a6fc50079b35b6dcc9262e2490c4e314f

Contents?: true

Size: 1.23 KB

Versions: 2

Compression:

Stored size: 1.23 KB

Contents

module LayMeOut
  module ApplicationHelper
    def render_user_profile
      render :partial => "lay_me_out/common/user_profile", :locals => { :user => controller.current_user_details } if has_value_for?(:current_user_details)
    end

    def render_navigation
      render :partial => 'lay_me_out/common/navigation', :locals => { :links => controller.navigation_links } if has_value_for?(:navigation_links)
    end

    def css_active_class_for(path)
      is_active = false

      if path.is_a? Hash
        path.each do |key, subpath|
          is_active = controller.active_page?(subpath)
          break if is_active
        end
      else
        is_active = controller.active_page?(path)
      end

      is_active ? "active" : ""
    end

    def content_class
      content_for?(:side_menu) ? "two-column" : "one-column"
    end

    def convert_flash_to_json
      messages = []

      flash.each do |key, values|
        values = [values] unless values.is_a?(Array)
        values.each do |value|
          messages << { :content => value, :type => key }
        end
      end

      messages.to_json
    end

    private

    def has_value_for?(method)
      !!(controller.class.method_defined?(method) and controller.send(method))
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
lay_me_out-1.2.9 app/helpers/lay_me_out/application_helper.rb
lay_me_out-1.2.8 app/helpers/lay_me_out/application_helper.rb