diff options
author | José Valim <jose.valim@gmail.com> | 2010-02-01 11:41:16 +0100 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2010-02-01 11:41:16 +0100 |
commit | 66615f25cf30835968f5c4798c5befea0d357e89 (patch) | |
tree | e364f1340b605b861c688384914518e4964f8d17 /actionpack/lib/action_controller/metal/hide_actions.rb | |
parent | 0dece7929cf5b04f008640936fb3ece24ce80daa (diff) | |
parent | e5ab4b0d07ade8d89d633ca744c0eafbc53ee921 (diff) | |
download | rails-66615f25cf30835968f5c4798c5befea0d357e89.tar.gz rails-66615f25cf30835968f5c4798c5befea0d357e89.tar.bz2 rails-66615f25cf30835968f5c4798c5befea0d357e89.zip |
Merge branch 'master' of gitproxy:rails/rails
Diffstat (limited to 'actionpack/lib/action_controller/metal/hide_actions.rb')
-rw-r--r-- | actionpack/lib/action_controller/metal/hide_actions.rb | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/actionpack/lib/action_controller/metal/hide_actions.rb b/actionpack/lib/action_controller/metal/hide_actions.rb index cdacdc40a6..e893acffdf 100644 --- a/actionpack/lib/action_controller/metal/hide_actions.rb +++ b/actionpack/lib/action_controller/metal/hide_actions.rb @@ -1,3 +1,5 @@ +require 'active_support/core_ext/class/attribute' + module ActionController # ActionController::HideActions adds the ability to prevent public methods on a controller # to be called as actions. @@ -5,7 +7,8 @@ module ActionController extend ActiveSupport::Concern included do - extlib_inheritable_accessor(:hidden_actions) { Set.new } + class_attribute :hidden_actions + self.hidden_actions = Set.new end private @@ -14,7 +17,7 @@ module ActionController # action name is in the list of hidden actions. def action_method?(action_name) self.class.visible_action?(action_name) do - !hidden_actions.include?(action_name) && super + !self.class.hidden_actions.include?(action_name) && super end end @@ -24,7 +27,7 @@ module ActionController # ==== Parameters # *args<#to_s>:: A list of actions def hide_action(*args) - hidden_actions.merge(args.map! {|a| a.to_s }) + self.hidden_actions = hidden_actions.dup.merge(args.map(&:to_s)) end def inherited(klass) |