Sha256: 7ef490dbf0cc3ed8d66a5351035ad0817d28ed58d43bce6e8c01b00970da6351

Contents?: true

Size: 1.06 KB

Versions: 13

Compression:

Stored size: 1.06 KB

Contents

module Spurs
  module Nav
    module Helper


      # Build a navigation
      # :type can be either :pills or :tabs
      # :style applies to ul
      def spurs_nav(options={ }, &block)

        opts        = Spurs::Nav::nav_default_options.merge(options)
        if !opts[:builder]
          raise "Null builder"
        end

        opts_to_pass_to_builder = {}
        if opts[:dynamic]
          opts_to_pass_to_builder[:dynamic] = opts[:dynamic]
        end

        if !opts[:type].in? [:pills,:tabs,:list]
          Rails.logger.debug("WARNING: unknown spurs_nav flavor. Using tabs instead")
          opts[:type] = :tabs
        end

        nav_builder = opts[:builder].new(controller,opts_to_pass_to_builder)

        output = capture(nav_builder, &block)

        ul_args = {
            :class => "nav nav-#{opts[:type]} #{opts[:stacked] ? "nav-stacked" : ""} #{opts[:class] ? opts[:class] : ""}"
        }

        if defined?(opts[:style]) then
          ul_args[:style] = opts[:style]
        end

        content_tag_string(:ul, output, ul_args)
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
spurs-0.0.6.rc2 lib/spurs/nav/helper.rb
spurs-0.0.6.rc1 lib/spurs/nav/helper.rb
spurs-0.0.5 lib/spurs/nav/helper.rb
spurs-0.0.5.alpha.7 lib/spurs/nav/helper.rb
spurs-0.0.5.alpha.6 lib/spurs/nav/helper.rb
spurs-0.0.5.alpha.5 lib/spurs/nav/helper.rb
spurs-0.0.5.alpha.4 lib/spurs/nav/helper.rb
spurs-0.0.5.alpha.3 lib/spurs/nav/helper.rb
spurs-0.0.5.alpha.2 lib/spurs/nav/helper.rb
spurs-0.0.5.alpha.1 lib/spurs/nav/helper.rb
spurs-0.0.4 lib/spurs/nav/helper.rb
spurs-0.0.3 lib/spurs/nav/helper.rb
spurs-0.0.2 lib/spurs/nav/helper.rb