class Smartfocus4rails::BaseController

Public Class Methods

new(method_name=nil, *args) click to toggle source
Calls superclass method
# File lib/smartfocus4rails/controllers/base_controller.rb, line 38
def initialize(method_name=nil, *args)
  super()
  lookup_context.formats = [:text, :html] # Restrict rendering formats to html and text
  process(method_name, *args) if method_name
end
respond_to?(method, include_private = false) click to toggle source
Calls superclass method
# File lib/smartfocus4rails/controllers/base_controller.rb, line 22
def respond_to?(method, include_private = false)
        super || action_methods.include?(method.to_s)
end

Protected Class Methods

method_missing(method, *args) click to toggle source
Calls superclass method
# File lib/smartfocus4rails/controllers/base_controller.rb, line 28
def method_missing(method, *args)
        return super unless respond_to?(method)
        instance = new(method, *args)
        instance.render_views
        instance.rendered_views
end

Public Instance Methods

process(method_name, *args) click to toggle source
Calls superclass method
# File lib/smartfocus4rails/controllers/base_controller.rb, line 44
def process(method_name, *args)
        lookup_context.skip_default_locale!
        super(method_name, *args)
end
render_views() click to toggle source
# File lib/smartfocus4rails/controllers/base_controller.rb, line 49
def render_views
        self.rendered_views = ::Smartfocus4rails::RenderedViews.new(collect_responses(lookup_context.formats))
end

Private Instance Methods

collect_responses(formats) click to toggle source
# File lib/smartfocus4rails/controllers/base_controller.rb, line 55
def collect_responses(formats)
        collector = ActionMailer::Collector.new(lookup_context) do 
                render(action_name)
        end                  
        responses = {}
        formats.each do |f|
                collector.send(f)
                responses[f] = collector.responses.last[:body]
        end
        responses
end