From 0990c1309dfa1751c1e1a48b48bfcb994ab68db0 Mon Sep 17 00:00:00 2001
From: David Heinemeier Hansson
Date: Sun, 12 Dec 2004 11:31:54 +0000
Subject: [PATCH] Fixed all helpers so that they use XHTML compliant double
quotes for values instead of single quotes [htonl/bitsweat]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@114 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
---
actionpack/CHANGELOG | 2 +
.../helpers/active_record_helper.rb | 11 ++---
.../lib/action_view/helpers/date_helper.rb | 8 ++--
.../lib/action_view/helpers/tag_helper.rb | 14 +++----
.../template/active_record_helper_test.rb | 16 ++++----
actionpack/test/template/date_helper_test.rb | 40 +++++++++----------
6 files changed, 46 insertions(+), 45 deletions(-)
diff --git a/actionpack/CHANGELOG b/actionpack/CHANGELOG
index ca9197ba8b7b7..89c834dd47f16 100644
--- a/actionpack/CHANGELOG
+++ b/actionpack/CHANGELOG
@@ -1,5 +1,7 @@
*SVN*
+* Fixed all helpers so that they use XHTML compliant double quotes for values instead of single quotes [htonl/bitsweat]
+
* Added link_to_image(src, options = {}, html_options = {}, *parameters_for_method_reference). Documentation:
Creates a link tag to the image residing at the +src+ using an URL created by the set of +options+. See the valid options in
diff --git a/actionpack/lib/action_view/helpers/active_record_helper.rb b/actionpack/lib/action_view/helpers/active_record_helper.rb
index eee8b6b970ff5..4f7d66d8f7d95 100644
--- a/actionpack/lib/action_view/helpers/active_record_helper.rb
+++ b/actionpack/lib/action_view/helpers/active_record_helper.rb
@@ -52,12 +52,13 @@ def input(record_name, method)
def form(record_name, options = {})
record = instance_eval("@#{record_name}")
action = url_for(:action => options[:action] || (record.new_record? ? "create" : "update"))
+ submit_value = options[:submit_value] || action.gsub(/[^\w]/, '').capitalize
+
id_field = record.new_record? ? "" : InstanceTag.new(record_name, "id", self).to_input_field_tag("hidden")
-
- ""
+
+ %()
end
# Returns a string containing the error message attached to the +method+ on the +object+, if one exists.
diff --git a/actionpack/lib/action_view/helpers/date_helper.rb b/actionpack/lib/action_view/helpers/date_helper.rb
index 5526c3eef4a05..8af3afb034c7b 100755
--- a/actionpack/lib/action_view/helpers/date_helper.rb
+++ b/actionpack/lib/action_view/helpers/date_helper.rb
@@ -143,8 +143,8 @@ def select_month(date, options = {})
end
month_options << ((date.kind_of?(Fixnum) ? date : date.month) == month_number ?
- "\n" :
- "\n"
+ %(\n) :
+ %(\n)
)
end
@@ -172,9 +172,9 @@ def select_year(date, options = {})
private
def select_html(type, options, prefix = nil, include_blank = false, discard_type = false)
- select_html = "\n"
diff --git a/actionpack/lib/action_view/helpers/tag_helper.rb b/actionpack/lib/action_view/helpers/tag_helper.rb
index 13aa9297cad7d..6139943567973 100644
--- a/actionpack/lib/action_view/helpers/tag_helper.rb
+++ b/actionpack/lib/action_view/helpers/tag_helper.rb
@@ -10,7 +10,7 @@ module TagHelper
# * tag("br") =>
# * tag("input", { "type" => "text"}) =>
def tag(name, options = {}, open = false)
- "<#{name + tag_options(options)}" + (open ? ">" : " />")
+ "<#{name}#{tag_options(options)}" + (open ? ">" : " />")
end
# Examples:
@@ -18,7 +18,7 @@ def tag(name, options = {}, open = false)
# * content_tag("div", content_tag("p", "Hello world!"), "class" => "strong") =>
#
def content_tag(name, content, options = {})
- "<#{name + tag_options(options)}>#{content}#{name}>"
+ "<#{name}#{tag_options(options)}>#{content}#{name}>"
end
# Starts a form tag that points the action to an url configured with url_for_options just like
@@ -46,12 +46,10 @@ def end_form_tag
private
def tag_options(options)
- if options.empty?
- ""
- else
- " " + options.collect { |pair|
- "#{pair.first}=\"#{html_escape(pair.last)}\""
- }.sort.join(" ")
+ unless options.empty?
+ " " + options.map { |key, value|
+ %(#{key}="#{html_escape(value)}")
+ }.sort.join(" ")
end
end
end
diff --git a/actionpack/test/template/active_record_helper_test.rb b/actionpack/test/template/active_record_helper_test.rb
index 9cc0f58d0a5eb..5bae7ee6b5b15 100644
--- a/actionpack/test/template/active_record_helper_test.rb
+++ b/actionpack/test/template/active_record_helper_test.rb
@@ -51,27 +51,27 @@ def url_for(options, *parameters_for_method_reference)
def test_generic_input_tag
assert_equal(
- '', input("post", "title")
+ %(), input("post", "title")
)
end
def test_text_area_with_errors
assert_equal(
- "",
+ %(),
text_area("post", "body")
)
end
def test_text_field_with_errors
assert_equal(
- '',
+ %(),
text_field("post", "author_name")
)
end
def test_form_with_string
assert_equal(
- "
",
+ %(),
form("post")
)
end
@@ -80,7 +80,7 @@ def test_form_with_date
def Post.content_columns() [ Column.new(:date, "written_on", "Written on") ] end
assert_equal(
- "",
+ %(),
form("post")
)
end
@@ -90,13 +90,13 @@ def Post.content_columns() [ Column.new(:datetime, "written_on", "Written on") ]
@post.written_on = Time.gm(2004, 6, 15, 16, 30)
assert_equal(
- "",
+ %(),
form("post")
)
end
def test_error_for_block
- assert_equal "1 error prohibited this post from being saved
There were problems with the following fields:
- Author name can't be empty
", error_messages_for("post")
- assert_equal "1 error prohibited this post from being saved
There were problems with the following fields:
- Author name can't be empty
", error_messages_for("post", :class => "errorDeathByClass", :id => "errorDeathById", :header_tag => "h1")
+ assert_equal %(1 error prohibited this post from being saved
There were problems with the following fields:
- Author name can't be empty
), error_messages_for("post")
+ assert_equal %(1 error prohibited this post from being saved
There were problems with the following fields:
- Author name can't be empty
), error_messages_for("post", :class => "errorDeathByClass", :id => "errorDeathById", :header_tag => "h1")
end
end
diff --git a/actionpack/test/template/date_helper_test.rb b/actionpack/test/template/date_helper_test.rb
index a8ad37918d9b8..5e9d79b26e8a8 100755
--- a/actionpack/test/template/date_helper_test.rb
+++ b/actionpack/test/template/date_helper_test.rb
@@ -16,9 +16,9 @@ def test_distance_in_words
end
def test_select_day
- expected = "