aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_view
diff options
context:
space:
mode:
authorRafael Mendonça França <rafaelmfranca@gmail.com>2012-01-17 18:52:48 -0300
committerRafael Mendonça França <rafaelmfranca@gmail.com>2012-01-17 18:52:48 -0300
commit6f1bf526d7f1869b47f6047c4285c673bb06d0ec (patch)
tree5370cdc6e980e4a223c5ac88251d361a62a0a9f2 /actionpack/lib/action_view
parent8b4c74f77cd7fe3f2264c18f4ddc7dd495493c4b (diff)
downloadrails-6f1bf526d7f1869b47f6047c4285c673bb06d0ec.tar.gz
rails-6f1bf526d7f1869b47f6047c4285c673bb06d0ec.tar.bz2
rails-6f1bf526d7f1869b47f6047c4285c673bb06d0ec.zip
Extract input_checked? to a module
Diffstat (limited to 'actionpack/lib/action_view')
-rw-r--r--actionpack/lib/action_view/helpers/tags/base.rb9
-rw-r--r--actionpack/lib/action_view/helpers/tags/check_box.rb4
-rw-r--r--actionpack/lib/action_view/helpers/tags/checkable.rb16
-rw-r--r--actionpack/lib/action_view/helpers/tags/radio_button.rb4
4 files changed, 24 insertions, 9 deletions
diff --git a/actionpack/lib/action_view/helpers/tags/base.rb b/actionpack/lib/action_view/helpers/tags/base.rb
index 7580cbe20d..24956beb9c 100644
--- a/actionpack/lib/action_view/helpers/tags/base.rb
+++ b/actionpack/lib/action_view/helpers/tags/base.rb
@@ -48,15 +48,6 @@ module ActionView
nil
end
- def input_checked?(object, options)
- if options.has_key?("checked")
- checked = options.delete "checked"
- checked == true || checked == "checked"
- else
- checked?(value(object))
- end
- end
-
def retrieve_autoindex(pre_match)
object = self.object || @template_object.instance_variable_get("@#{pre_match}")
if object && object.respond_to?(:to_param)
diff --git a/actionpack/lib/action_view/helpers/tags/check_box.rb b/actionpack/lib/action_view/helpers/tags/check_box.rb
index 2cdc13524b..b3bd6eb2ad 100644
--- a/actionpack/lib/action_view/helpers/tags/check_box.rb
+++ b/actionpack/lib/action_view/helpers/tags/check_box.rb
@@ -1,7 +1,11 @@
+require 'action_view/helpers/tags/checkable'
+
module ActionView
module Helpers
module Tags
class CheckBox < Base #:nodoc:
+ include Checkable
+
def initialize(object_name, method_name, template_object, checked_value, unchecked_value, options)
@checked_value = checked_value
@unchecked_value = unchecked_value
diff --git a/actionpack/lib/action_view/helpers/tags/checkable.rb b/actionpack/lib/action_view/helpers/tags/checkable.rb
new file mode 100644
index 0000000000..b97c0c68d7
--- /dev/null
+++ b/actionpack/lib/action_view/helpers/tags/checkable.rb
@@ -0,0 +1,16 @@
+module ActionView
+ module Helpers
+ module Tags
+ module Checkable
+ def input_checked?(object, options)
+ if options.has_key?("checked")
+ checked = options.delete "checked"
+ checked == true || checked == "checked"
+ else
+ checked?(value(object))
+ end
+ end
+ end
+ end
+ end
+end
diff --git a/actionpack/lib/action_view/helpers/tags/radio_button.rb b/actionpack/lib/action_view/helpers/tags/radio_button.rb
index 72edd21662..8a0421f061 100644
--- a/actionpack/lib/action_view/helpers/tags/radio_button.rb
+++ b/actionpack/lib/action_view/helpers/tags/radio_button.rb
@@ -1,7 +1,11 @@
+require 'action_view/helpers/tags/checkable'
+
module ActionView
module Helpers
module Tags
class RadioButton < Base #:nodoc:
+ include Checkable
+
def initialize(object_name, method_name, template_object, tag_value, options)
@tag_value = tag_value
super(object_name, method_name, template_object, options)