aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_view/helpers
diff options
context:
space:
mode:
authorLennart Fridén <lennart@devl.se>2011-12-11 22:19:11 +0100
committerJosé Valim <jose.valim@gmail.com>2011-12-11 22:54:28 +0100
commitdc43e402a10d10f72f3051c1f33bdc335a54d995 (patch)
tree67563a8dc01398da13304caad329678fbfe33c8b /actionpack/lib/action_view/helpers
parenta8f2b203b45bfa34785b3c411079e59f60c52cac (diff)
downloadrails-dc43e402a10d10f72f3051c1f33bdc335a54d995.tar.gz
rails-dc43e402a10d10f72f3051c1f33bdc335a54d995.tar.bz2
rails-dc43e402a10d10f72f3051c1f33bdc335a54d995.zip
Added :use_two_digit_numbers option [Lennart Fridén & Kim Persson]
Added use_two_digit_numbers select_tag option for displaying months and days with leading zeros without affecting the values (useful for e.g. ISO-style dates, 2011-08-01). Signed-off-by: José Valim <jose.valim@gmail.com> Conflicts: actionpack/CHANGELOG.md
Diffstat (limited to 'actionpack/lib/action_view/helpers')
-rw-r--r--actionpack/lib/action_view/helpers/date_helper.rb9
1 files changed, 6 insertions, 3 deletions
diff --git a/actionpack/lib/action_view/helpers/date_helper.rb b/actionpack/lib/action_view/helpers/date_helper.rb
index 4deb87180c..38cf922ef4 100644
--- a/actionpack/lib/action_view/helpers/date_helper.rb
+++ b/actionpack/lib/action_view/helpers/date_helper.rb
@@ -736,7 +736,7 @@ module ActionView
if @options[:use_hidden] || @options[:discard_day]
build_hidden(:day, day)
else
- build_options_and_select(:day, day, :start => 1, :end => 31, :leading_zeros => false)
+ build_options_and_select(:day, day, :start => 1, :end => 31, :leading_zeros => false, :use_two_digit_numbers => @options[:use_two_digit_numbers])
end
end
@@ -822,6 +822,8 @@ module ActionView
def month_name(number)
if @options[:use_month_numbers]
number
+ elsif @options[:use_two_digit_numbers]
+ sprintf "%02d", number
elsif @options[:add_month_numbers]
"#{number} - #{month_names[number]}"
else
@@ -857,7 +859,7 @@ module ActionView
start = options.delete(:start) || 0
stop = options.delete(:end) || 59
step = options.delete(:step) || 1
- options.reverse_merge!({:leading_zeros => true, :ampm => false})
+ options.reverse_merge!({:leading_zeros => true, :ampm => false, :use_two_digit_numbers => false})
leading_zeros = options.delete(:leading_zeros)
select_options = []
@@ -865,7 +867,8 @@ module ActionView
value = leading_zeros ? sprintf("%02d", i) : i
tag_options = { :value => value }
tag_options[:selected] = "selected" if selected == i
- text = options[:ampm] ? AMPM_TRANSLATION[i] : value
+ text = options[:use_two_digit_numbers] ? sprintf("%02d", i) : value
+ text = options[:ampm] ? AMPM_TRANSLATION[i] : text
select_options << content_tag(:option, text, tag_options)
end
(select_options.join("\n") + "\n").html_safe