mirror of
https://github.com/github/rails.git
synced 2026-04-26 03:00:59 -04:00
Use I18n for date/time select helpers prompt text [#561 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
This commit is contained in:
@@ -572,10 +572,6 @@ module ActionView
|
||||
:year => 1, :month => 2, :day => 3, :hour => 4, :minute => 5, :second => 6
|
||||
}.freeze unless const_defined?('POSITION')
|
||||
|
||||
DEFAULT_PROMPTS = {
|
||||
:year => 'Year', :month => 'Month', :day => 'Day', :hour => 'Hour', :minute => 'Minute', :second => 'Seconds'
|
||||
}.freeze unless const_defined?('DEFAULT_PROMPTS')
|
||||
|
||||
def initialize(datetime, options = {}, html_options = {})
|
||||
@options = options.dup
|
||||
@html_options = html_options.dup
|
||||
@@ -842,10 +838,10 @@ module ActionView
|
||||
when String
|
||||
prompt = options
|
||||
else
|
||||
prompt = ActionView::Helpers::DateTimeSelector::DEFAULT_PROMPTS[type.to_sym]
|
||||
prompt = I18n.translate(('datetime.prompts.' + type.to_s).to_sym, :locale => @options[:locale])
|
||||
end
|
||||
|
||||
prompt ? content_tag(:option, prompt, :value => '') : ''
|
||||
prompt ? content_tag(:option, prompt, :value => '') : ''
|
||||
end
|
||||
|
||||
# Builds hidden input tag for date part and value
|
||||
|
||||
@@ -80,6 +80,13 @@
|
||||
over_x_years:
|
||||
one: "over 1 year"
|
||||
other: "over {{count}} years"
|
||||
prompts:
|
||||
year: "Year"
|
||||
month: "Month"
|
||||
day: "Day"
|
||||
hour: "Hour"
|
||||
minute: "Minute"
|
||||
second: "Seconds"
|
||||
|
||||
activerecord:
|
||||
errors:
|
||||
|
||||
@@ -78,6 +78,8 @@ class DateHelperSelectTagsI18nTests < Test::Unit::TestCase
|
||||
|
||||
uses_mocha 'date_helper_select_tags_i18n_tests' do
|
||||
def setup
|
||||
@prompt_defaults = {:year => 'Year', :month => 'Month', :day => 'Day', :hour => 'Hour', :minute => 'Minute', :second => 'Seconds'}
|
||||
|
||||
I18n.stubs(:translate).with(:'date.month_names', :locale => 'en').returns Date::MONTHNAMES
|
||||
end
|
||||
|
||||
@@ -98,6 +100,15 @@ class DateHelperSelectTagsI18nTests < Test::Unit::TestCase
|
||||
select_month(8, :locale => 'en', :use_short_month => true)
|
||||
end
|
||||
|
||||
def test_date_or_time_select_translates_prompts
|
||||
@prompt_defaults.each do |key, prompt|
|
||||
I18n.expects(:translate).with(('datetime.prompts.' + key.to_s).to_sym, :locale => 'en').returns prompt
|
||||
end
|
||||
|
||||
I18n.expects(:translate).with(:'date.order', :locale => 'en').returns [:year, :month, :day]
|
||||
datetime_select('post', 'updated_at', :locale => 'en', :include_seconds => true, :prompt => true)
|
||||
end
|
||||
|
||||
# date_or_time_select
|
||||
|
||||
def test_date_or_time_select_given_an_order_options_does_not_translate_order
|
||||
|
||||
Reference in New Issue
Block a user