diff options
author | Jeremy Kemper <jeremykemper@gmail.com> | 2014-08-21 22:08:20 -0700 |
---|---|---|
committer | Jeremy Kemper <jeremykemper@gmail.com> | 2014-08-21 22:08:20 -0700 |
commit | 0697b7c750892c396847b6e9dd48a589c2f74957 (patch) | |
tree | 7dc5e8220fd86adbc9f01d90d3212d30baa9f5b4 /actionview | |
parent | 7fce2164036dc38e1e3904479c29d5abfe1e7be5 (diff) | |
parent | 81b14b7c5c32ef1b21227f7f2548685801930201 (diff) | |
download | rails-0697b7c750892c396847b6e9dd48a589c2f74957.tar.gz rails-0697b7c750892c396847b6e9dd48a589c2f74957.tar.bz2 rails-0697b7c750892c396847b6e9dd48a589c2f74957.zip |
Merge pull request #16629 from rails/revert-16438-input-placeholder-i18n
Revert "Add I18n support for `:placeholder` HTML option is passed to for...
Diffstat (limited to 'actionview')
-rw-r--r-- | actionview/CHANGELOG.md | 6 | ||||
-rw-r--r-- | actionview/lib/action_view/helpers/tags/placeholderable.rb | 32 | ||||
-rw-r--r-- | actionview/lib/action_view/helpers/tags/text_area.rb | 4 | ||||
-rw-r--r-- | actionview/lib/action_view/helpers/tags/text_field.rb | 4 | ||||
-rw-r--r-- | actionview/test/template/form_helper_test.rb | 168 |
5 files changed, 0 insertions, 214 deletions
diff --git a/actionview/CHANGELOG.md b/actionview/CHANGELOG.md index 552a902349..3fc2ab178c 100644 --- a/actionview/CHANGELOG.md +++ b/actionview/CHANGELOG.md @@ -1,9 +1,3 @@ -* Add I18n support for input/textarea placeholder text. - - Placeholder I18n follows the same convention as `label` I18n. - - *Alex Robbin* - * Fix that render layout: 'messages/layout' should also be added to the dependency tracker tree. *DHH* diff --git a/actionview/lib/action_view/helpers/tags/placeholderable.rb b/actionview/lib/action_view/helpers/tags/placeholderable.rb deleted file mode 100644 index 313aa725c9..0000000000 --- a/actionview/lib/action_view/helpers/tags/placeholderable.rb +++ /dev/null @@ -1,32 +0,0 @@ -module ActionView - module Helpers - module Tags # :nodoc: - module Placeholderable # :nodoc: - def initialize(*) - super - - if tag_value = @options[:placeholder] - object_name = @object_name.gsub(/\[(.*)_attributes\]\[\d+\]/, '.\1') - method_and_value = tag_value.is_a?(TrueClass) ? @method_name : "#{@method_name}.#{tag_value}" - - if object.respond_to?(:to_model) - key = object.class.model_name.i18n_key - i18n_default = ["#{key}.#{method_and_value}".to_sym, ""] - end - - i18n_default ||= "" - placeholder = I18n.t("#{object_name}.#{method_and_value}", :default => i18n_default, :scope => "helpers.placeholder").presence - - placeholder ||= if object && object.class.respond_to?(:human_attribute_name) - object.class.human_attribute_name(method_and_value) - end - - placeholder ||= @method_name.humanize - - @options[:placeholder] = placeholder - end - end - end - end - end -end diff --git a/actionview/lib/action_view/helpers/tags/text_area.rb b/actionview/lib/action_view/helpers/tags/text_area.rb index 69038c1498..9ee83ee7c2 100644 --- a/actionview/lib/action_view/helpers/tags/text_area.rb +++ b/actionview/lib/action_view/helpers/tags/text_area.rb @@ -1,11 +1,7 @@ -require 'action_view/helpers/tags/placeholderable' - module ActionView module Helpers module Tags # :nodoc: class TextArea < Base # :nodoc: - include Placeholderable - def render options = @options.stringify_keys add_default_name_and_id(options) diff --git a/actionview/lib/action_view/helpers/tags/text_field.rb b/actionview/lib/action_view/helpers/tags/text_field.rb index 5c576a20ca..e0b80d81c2 100644 --- a/actionview/lib/action_view/helpers/tags/text_field.rb +++ b/actionview/lib/action_view/helpers/tags/text_field.rb @@ -1,11 +1,7 @@ -require 'action_view/helpers/tags/placeholderable' - module ActionView module Helpers module Tags # :nodoc: class TextField < Base # :nodoc: - include Placeholderable - def render options = @options.stringify_keys options["size"] = options["maxlength"] unless options.key?("size") diff --git a/actionview/test/template/form_helper_test.rb b/actionview/test/template/form_helper_test.rb index d944214961..a9f137aec6 100644 --- a/actionview/test/template/form_helper_test.rb +++ b/actionview/test/template/form_helper_test.rb @@ -59,35 +59,6 @@ class FormHelperTest < ActionView::TestCase } } - I18n.backend.store_translations 'placeholder', { - activemodel: { - attributes: { - post: { - cost: "Total cost" - }, - :"post/cost" => { - uk: "Pounds" - } - } - }, - helpers: { - placeholder: { - post: { - title: "What is this about?", - written_on: { - spanish: "Escrito en" - }, - comments: { - body: "Write body here" - } - }, - tag: { - value: "Tag" - } - } - } - } - @post = Post.new @comment = Comment.new def @post.errors() @@ -326,68 +297,6 @@ class FormHelperTest < ActionView::TestCase ) end - def test_text_field_placeholder_without_locales - with_locale :placeholder do - assert_dom_equal('<input id="post_body" name="post[body]" placeholder="Body" type="text" value="Back to the hill and over it again!" />', text_field(:post, :body, placeholder: true)) - end - end - - def test_text_field_placeholder_with_locales - with_locale :placeholder do - assert_dom_equal('<input id="post_title" name="post[title]" placeholder="What is this about?" type="text" value="Hello World" />', text_field(:post, :title, placeholder: true)) - end - end - - def test_text_field_placeholder_with_human_attribute_name - with_locale :placeholder do - assert_dom_equal('<input id="post_cost" name="post[cost]" placeholder="Total cost" type="text" />', text_field(:post, :cost, placeholder: true)) - end - end - - def test_text_field_placeholder_with_human_attribute_name_and_value - with_locale :placeholder do - assert_dom_equal('<input id="post_cost" name="post[cost]" placeholder="Pounds" type="text" />', text_field(:post, :cost, placeholder: "uk")) - end - end - - def test_text_field_placeholder_with_locales_and_value - with_locale :placeholder do - assert_dom_equal('<input id="post_written_on" name="post[written_on]" placeholder="Escrito en" type="text" value="2004-06-15" />', text_field(:post, :written_on, placeholder: "spanish")) - end - end - - def test_text_field_placeholder_with_locales_and_nested_attributes - with_locale :placeholder do - form_for(@post, html: { id: 'create-post' }) do |f| - f.fields_for(:comments) do |cf| - concat cf.text_field(:body, placeholder: true) - end - end - - expected = whole_form("/posts/123", "create-post", "edit_post", method: "patch") do - '<input id="post_comments_attributes_0_body" name="post[comments_attributes][0][body]" placeholder="Write body here" type="text" />' - end - - assert_dom_equal expected, output_buffer - end - end - - def test_text_field_placeholder_with_locales_fallback_and_nested_attributes - with_locale :placeholder do - form_for(@post, html: { id: 'create-post' }) do |f| - f.fields_for(:tags) do |cf| - concat cf.text_field(:value, placeholder: true) - end - end - - expected = whole_form("/posts/123", "create-post", "edit_post", method: "patch") do - '<input id="post_tags_attributes_0_value" name="post[tags_attributes][0][value]" placeholder="Tag" type="text" value="new tag" />' - end - - assert_dom_equal expected, output_buffer - end - end - def test_text_field assert_dom_equal( '<input id="post_title" name="post[title]" type="text" value="Hello World" />', @@ -756,83 +665,6 @@ class FormHelperTest < ActionView::TestCase ) end - def test_text_area_placeholder_without_locales - with_locale :placeholder do - assert_dom_equal( - %{<textarea id="post_body" name="post[body]" placeholder="Body">\nBack to the hill and over it again!</textarea>}, - text_area(:post, :body, placeholder: true) - ) - end - end - - def test_text_area_placeholder_with_locales - with_locale :placeholder do - assert_dom_equal( - %{<textarea id="post_title" name="post[title]" placeholder="What is this about?">\nHello World</textarea>}, - text_area(:post, :title, placeholder: true) - ) - end - end - - def test_text_area_placeholder_with_human_attribute_name - with_locale :placeholder do - assert_dom_equal( - %{<textarea id="post_cost" name="post[cost]" placeholder="Total cost">\n</textarea>}, - text_area(:post, :cost, placeholder: true) - ) - end - end - - def test_text_area_placeholder_with_human_attribute_name_and_value - with_locale :placeholder do - assert_dom_equal( - %{<textarea id="post_cost" name="post[cost]" placeholder="Pounds">\n</textarea>}, - text_area(:post, :cost, placeholder: "uk") - ) - end - end - - def test_text_area_placeholder_with_locales_and_value - with_locale :placeholder do - assert_dom_equal( - %{<textarea id="post_written_on" name="post[written_on]" placeholder="Escrito en">\n2004-06-15</textarea>}, - text_area(:post, :written_on, placeholder: "spanish") - ) - end - end - - def test_text_area_placeholder_with_locales_and_nested_attributes - with_locale :placeholder do - form_for(@post, html: { id: 'create-post' }) do |f| - f.fields_for(:comments) do |cf| - concat cf.text_area(:body, placeholder: true) - end - end - - expected = whole_form("/posts/123", "create-post", "edit_post", method: "patch") do - %{<textarea id="post_comments_attributes_0_body" name="post[comments_attributes][0][body]" placeholder="Write body here">\n</textarea>} - end - - assert_dom_equal expected, output_buffer - end - end - - def test_text_area_placeholder_with_locales_fallback_and_nested_attributes - with_locale :placeholder do - form_for(@post, html: { id: 'create-post' }) do |f| - f.fields_for(:tags) do |cf| - concat cf.text_area(:value, placeholder: true) - end - end - - expected = whole_form("/posts/123", "create-post", "edit_post", method: "patch") do - %{<textarea id="post_tags_attributes_0_value" name="post[tags_attributes][0][value]" placeholder="Tag">\nnew tag</textarea>} - end - - assert_dom_equal expected, output_buffer - end - end - def test_text_area assert_dom_equal( %{<textarea id="post_body" name="post[body]">\nBack to the hill and over it again!</textarea>}, |