Sha256: 77148c0d760bf13333c1d72c7f3c921f371f6e1dd3bf974c30009bf371ac6449
Contents?: true
Size: 1.58 KB
Versions: 1
Compression:
Stored size: 1.58 KB
Contents
module Puffer module Controller module Mutate extend ActiveSupport::Concern included do helper 'puffer/helpers/puffer' delegate :model, :model_name, :to => 'self.class' helper_method :puffer_filters, :puffer_namespace, :resource, :record, :records end def process_action method_name, *args params[:puffer] = Rails.application.routes.resources_tree[params[:puffer]] if params[:puffer] super end def puffer_filters @puffer_filters ||= begin filters = params[Puffer::Filters.model_name.param_key] || {} filters.reverse_merge! :puffer_order => configuration.order if configuration.order.present? filters.reverse_merge! :puffer_per_page => configuration.per_page if configuration.per_page.present? Puffer::Filters.new filter_fields, filters end end def puffer_namespace request.path_info.split('/').delete_if(&:blank?).first.to_sym end def resource @resource ||= Puffer::Resource.new params, self end def record @record || instance_variable_get("@#{resource.model_name}") end def records @records || instance_variable_get("@#{resource.model_name.pluralize}") end module ClassMethods def puffer? true end def model_name @model_name ||= (configuration.model_name || controller_name.singularize).to_s end def model @model ||= model_name.camelize.constantize rescue nil end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
puffer-0.1.1 | lib/puffer/controller/mutate.rb |