Sha256: bd3337b620e600f13d107c94f8ba30d1d9edff17a1cef962579317a9445f7a3f

Contents?: true

Size: 686 Bytes

Versions: 2

Compression:

Stored size: 686 Bytes

Contents

module PufferPages
  module Extensions
    module Mapper

      def self.included base
        base.class_eval do
          class_attribute :_puffer_pages
          include InstanceMethods
        end
      end

      module InstanceMethods

        def puffer_pages_options
          self.class._puffer_pages.presence || [{'*path' => 'pages#index', :as => 'puffer_pages'}]
        end

        def puffer_pages *args
          options = args.extract_options!
          options.merge! :as => 'puffer_pages'
          self.class._puffer_pages = args.push(options)
        end

      end

    end

  end
end

ActionDispatch::Routing::Mapper.send :include, PufferPages::Extensions::Mapper

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
puffer_pages-0.0.2 lib/puffer_pages/extensions/mapper.rb
puffer_pages-0.0.1 lib/puffer_pages/extensions/mapper.rb