Skip to content

Commit

Permalink
Merge pull request #29791 from yui-knk/at_object
Browse files Browse the repository at this point in the history
Do not pass an instance variable to a private method
  • Loading branch information
kamipo committed Sep 5, 2017
2 parents c97346e + 530b5fe commit 6c4a32e
Show file tree
Hide file tree
Showing 13 changed files with 19 additions and 19 deletions.
12 changes: 6 additions & 6 deletions actionview/lib/action_view/helpers/tags/base.rb
Expand Up @@ -35,27 +35,27 @@ def render

private

def value(object)
def value
if @allow_method_names_outside_object
object.public_send @method_name if object && object.respond_to?(@method_name)
else
object.public_send @method_name if object
end
end

def value_before_type_cast(object)
def value_before_type_cast
unless object.nil?
method_before_type_cast = @method_name + "_before_type_cast"

if value_came_from_user?(object) && object.respond_to?(method_before_type_cast)
if value_came_from_user? && object.respond_to?(method_before_type_cast)
object.public_send(method_before_type_cast)
else
value(object)
value
end
end
end

def value_came_from_user?(object)
def value_came_from_user?
method_name = "#{@method_name}_came_from_user?"
!object.respond_to?(method_name) || object.public_send(method_name)
end
Expand Down Expand Up @@ -150,7 +150,7 @@ def select_content_tag(option_tags, options, html_options)
options[:include_blank] ||= true unless options[:prompt]
end

value = options.fetch(:selected) { value(object) }
value = options.fetch(:selected) { value() }
select = content_tag("select", add_options(option_tags, options, value), html_options)

if html_options["multiple"] && options.fetch(:include_hidden, true)
Expand Down
2 changes: 1 addition & 1 deletion actionview/lib/action_view/helpers/tags/check_box.rb
Expand Up @@ -18,7 +18,7 @@ def render
options = @options.stringify_keys
options["type"] = "checkbox"
options["value"] = @checked_value
options["checked"] = "checked" if input_checked?(object, options)
options["checked"] = "checked" if input_checked?(options)

if options["multiple"]
add_default_name_and_id_for_value(@checked_value, options)
Expand Down
4 changes: 2 additions & 2 deletions actionview/lib/action_view/helpers/tags/checkable.rb
Expand Up @@ -4,12 +4,12 @@ module ActionView
module Helpers
module Tags # :nodoc:
module Checkable # :nodoc:
def input_checked?(object, options)
def input_checked?(options)
if options.has_key?("checked")
checked = options.delete "checked"
checked == true || checked == "checked"
else
checked?(value(object))
checked?(value)
end
end
end
Expand Down
Expand Up @@ -15,7 +15,7 @@ def initialize(object_name, method_name, template_object, collection, value_meth

def render
option_tags_options = {
selected: @options.fetch(:selected) { value(@object) },
selected: @options.fetch(:selected) { value },
disabled: @options[:disabled]
}

Expand Down
2 changes: 1 addition & 1 deletion actionview/lib/action_view/helpers/tags/color_field.rb
Expand Up @@ -6,7 +6,7 @@ module Tags # :nodoc:
class ColorField < TextField # :nodoc:
def render
options = @options.stringify_keys
options["value"] ||= validate_color_string(value(object))
options["value"] ||= validate_color_string(value)
@options = options
super
end
Expand Down
2 changes: 1 addition & 1 deletion actionview/lib/action_view/helpers/tags/date_select.rb
Expand Up @@ -29,7 +29,7 @@ def select_type
end

def datetime_selector(options, html_options)
datetime = options.fetch(:selected) { value(object) || default_datetime(options) }
datetime = options.fetch(:selected) { value || default_datetime(options) }
@auto_index ||= nil

options = options.dup
Expand Down
2 changes: 1 addition & 1 deletion actionview/lib/action_view/helpers/tags/datetime_field.rb
Expand Up @@ -6,7 +6,7 @@ module Tags # :nodoc:
class DatetimeField < TextField # :nodoc:
def render
options = @options.stringify_keys
options["value"] ||= format_date(value(object))
options["value"] ||= format_date(value)
options["min"] = format_date(datetime_value(options["min"]))
options["max"] = format_date(datetime_value(options["max"]))
@options = options
Expand Down
Expand Up @@ -17,7 +17,7 @@ def initialize(object_name, method_name, template_object, collection, group_meth

def render
option_tags_options = {
selected: @options.fetch(:selected) { value(@object) },
selected: @options.fetch(:selected) { value },
disabled: @options[:disabled]
}

Expand Down
2 changes: 1 addition & 1 deletion actionview/lib/action_view/helpers/tags/radio_button.rb
Expand Up @@ -17,7 +17,7 @@ def render
options = @options.stringify_keys
options["type"] = "radio"
options["value"] = @tag_value
options["checked"] = "checked" if input_checked?(object, options)
options["checked"] = "checked" if input_checked?(options)
add_default_name_and_id_for_value(@tag_value, options)
tag("input", options)
end
Expand Down
2 changes: 1 addition & 1 deletion actionview/lib/action_view/helpers/tags/select.rb
Expand Up @@ -15,7 +15,7 @@ def initialize(object_name, method_name, template_object, choices, options, html

def render
option_tags_options = {
selected: @options.fetch(:selected) { value(@object) },
selected: @options.fetch(:selected) { value },
disabled: @options[:disabled]
}

Expand Down
2 changes: 1 addition & 1 deletion actionview/lib/action_view/helpers/tags/text_area.rb
Expand Up @@ -16,7 +16,7 @@ def render
options["cols"], options["rows"] = size.split("x") if size.respond_to?(:split)
end

content_tag("textarea", options.delete("value") { value_before_type_cast(object) }, options)
content_tag("textarea", options.delete("value") { value_before_type_cast }, options)
end
end
end
Expand Down
2 changes: 1 addition & 1 deletion actionview/lib/action_view/helpers/tags/text_field.rb
Expand Up @@ -12,7 +12,7 @@ def render
options = @options.stringify_keys
options["size"] = options["maxlength"] unless options.key?("size")
options["type"] ||= field_type
options["value"] = options.fetch("value") { value_before_type_cast(object) } unless field_type == "file"
options["value"] = options.fetch("value") { value_before_type_cast } unless field_type == "file"
add_default_name_and_id(options)
tag("input", options)
end
Expand Down
Expand Up @@ -13,7 +13,7 @@ def initialize(object_name, method_name, template_object, priority_zones, option

def render
select_content_tag(
time_zone_options_for_select(value(@object) || @options[:default], @priority_zones, @options[:model] || ActiveSupport::TimeZone), @options, @html_options
time_zone_options_for_select(value || @options[:default], @priority_zones, @options[:model] || ActiveSupport::TimeZone), @options, @html_options
)
end
end
Expand Down

0 comments on commit 6c4a32e

Please sign in to comment.