Permalink
Browse files

Fixed a bug with handling render options

  • Loading branch information...
1 parent 6694bd4 commit 0f6e764e4060b75ea8a335e6971209a08bf8b40a Yehuda Katz + Carl Lerche committed May 11, 2009
@@ -23,6 +23,15 @@ module Rails2Compatibility
cattr_accessor :default_charset
self.send(:class_variable_set, "@@default_charset", "utf-8")
+
+ cattr_reader :protected_instance_variables
+ self.send(:class_variable_set, "@@protected_instance_variables", %w(@assigns @performed_redirect @performed_render @variables_added @request_origin @url @parent_controller
+ @action_name @before_filter_chain_aborted @action_cache_path @_headers @_params
+ @_flash @_response))
+ end
+
+ module ClassMethods
+ def protect_from_forgery() end
end
def render_to_body(options)
@@ -23,8 +23,8 @@ def render_to_body(options)
options[:_template] = template
elsif options.key?(:template)
options[:_template_name] = options[:template]
- elsif options.key?(:action)
- options[:_template_name] = options[:action].to_s
+ else
+ options[:_template_name] = (options[:action] || action_name).to_s
options[:_prefix] = _prefix
end
@@ -74,71 +74,8 @@ def initialize(message = nil)
class UnknownHttpMethod < ActionControllerError #:nodoc:
end
- class Base < Http
- abstract!
- # <HAX>
- cattr_accessor :relative_url_root
- self.relative_url_root = ENV['RAILS_RELATIVE_URL_ROOT']
-
- cattr_reader :protected_instance_variables
- # Controller specific instance variables which will not be accessible inside views.
- @@protected_instance_variables = %w(@assigns @performed_redirect @performed_render @variables_added @request_origin @url @parent_controller
- @action_name @before_filter_chain_aborted @action_cache_path @_headers @_params
- @_flash @_response)
- # </HAX>
-
- use AbstractController::Callbacks
- use AbstractController::Helpers
- use AbstractController::Logger
-
- use ActionController::HideActions
- use ActionController::UrlFor
- use ActionController::Renderer
- use ActionController::Layouts
- use ActionController::Rails2Compatibility
+ class Base
use ActionController::Testing
-
- def self.protect_from_forgery() end
-
- def self.inherited(klass)
- ::ActionController::Base.subclasses << klass.to_s
- super
- end
-
- def self.subclasses
- @subclasses ||= []
- end
-
- def self.app_loaded!
- @subclasses.each do |subclass|
- subclass.constantize._write_layout_method
- end
- end
-
- def render(action = action_name, options = {})
- if action.is_a?(Hash)
- options, action = action, nil
- else
- options.merge! :action => action
- end
-
- super(options)
- end
-
- def render_to_body(options = {})
- options = {:template => options} if options.is_a?(String)
- super
- end
-
- def process_action
- ret = super
- render if response_body.nil?
- ret
- end
-
- def respond_to_action?(action_name)
- super || view_paths.find_by_parts?(action_name.to_s, {:formats => formats, :locales => [I18n.locale]}, controller_path)
- end
end
Base.view_paths = FIXTURE_LOAD_PATH

0 comments on commit 0f6e764

Please sign in to comment.