summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJean-Philippe Lang <jp_lang@yahoo.fr>2010-12-18 13:53:34 +0000
committerJean-Philippe Lang <jp_lang@yahoo.fr>2010-12-18 13:53:34 +0000
commitfdaf58765269f448e7e0e900afec3cc369d3a00e (patch)
tree6b5841cdd705565eac89feadfdf6a68a03b07069
parent142b837271d841d91cacf29711208cff9e8e2264 (diff)
downloadredmine-fdaf58765269f448e7e0e900afec3cc369d3a00e.tar.gz
redmine-fdaf58765269f448e7e0e900afec3cc369d3a00e.zip
Merged r4516 from trunk (i18n 0.4.2 gem is now required: 'gem install -v=0.4.2 i18n', see #7013).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/branches/1.0-stable@4532 e93f8b46-1217-0410-a6f0-8f06a7374b81
-rw-r--r--config/boot.rb12
-rw-r--r--config/initializers/10-patches.rb2
-rw-r--r--lib/redmine/i18n.rb4
-rw-r--r--test/unit/lib/redmine/i18n_test.rb8
4 files changed, 19 insertions, 7 deletions
diff --git a/config/boot.rb b/config/boot.rb
index dd5e3b691..95bd6b885 100644
--- a/config/boot.rb
+++ b/config/boot.rb
@@ -106,5 +106,17 @@ module Rails
end
end
+# TODO: Workaround for #7013 to be removed for 1.2.0
+# Loads i18n 0.4.2 before Rails loads any more recent gem
+# 0.5.0 is not compatible with the old interpolation syntax
+# Plugins will have to migrate to the new syntax for 1.2.0
+require 'rubygems'
+begin
+ gem 'i18n', '0.4.2'
+rescue Gem::LoadError => load_error
+ $stderr.puts %(Missing the i18n 0.4.2 gem. Please `gem install -v=0.4.2 i18n`)
+ exit 1
+end
+
# All that for this:
Rails.boot!
diff --git a/config/initializers/10-patches.rb b/config/initializers/10-patches.rb
index 096ea0cd1..3d00a2638 100644
--- a/config/initializers/10-patches.rb
+++ b/config/initializers/10-patches.rb
@@ -86,7 +86,7 @@ module I18n
module Base
def warn_syntax_deprecation!(*args)
return if @skip_syntax_deprecation
- warn "The {{key}} interpolation syntax in I18n messages is deprecated. Please use %{key} instead.\nDowngrade your i18n gem to 0.3.7 (everything above must be deinstalled) to remove this warning, see http://www.redmine.org/issues/5608 for more information."
+ warn "The {{key}} interpolation syntax in I18n messages is deprecated and will be removed in Redmine 1.2. Please use %{key} instead, see http://www.redmine.org/issues/7013 for more information."
@skip_syntax_deprecation = true
end
end
diff --git a/lib/redmine/i18n.rb b/lib/redmine/i18n.rb
index e7aac9f7e..1bfca81e4 100644
--- a/lib/redmine/i18n.rb
+++ b/lib/redmine/i18n.rb
@@ -37,7 +37,7 @@ module Redmine
def format_date(date)
return nil unless date
- Setting.date_format.blank? ? ::I18n.l(date.to_date, :count => date.strftime('%d')) : date.strftime(Setting.date_format)
+ Setting.date_format.blank? ? ::I18n.l(date.to_date) : date.strftime(Setting.date_format)
end
def format_time(time, include_date = true)
@@ -45,7 +45,7 @@ module Redmine
time = time.to_time if time.is_a?(String)
zone = User.current.time_zone
local = zone ? time.in_time_zone(zone) : (time.utc? ? time.localtime : time)
- Setting.time_format.blank? ? ::I18n.l(local, :count => local.strftime('%d'), :format => (include_date ? :default : :time)) :
+ Setting.time_format.blank? ? ::I18n.l(local, :format => (include_date ? :default : :time)) :
((include_date ? "#{format_date(time)} " : "") + "#{local.strftime(Setting.time_format)}")
end
diff --git a/test/unit/lib/redmine/i18n_test.rb b/test/unit/lib/redmine/i18n_test.rb
index df1942e95..666bd7481 100644
--- a/test/unit/lib/redmine/i18n_test.rb
+++ b/test/unit/lib/redmine/i18n_test.rb
@@ -29,7 +29,7 @@ class Redmine::I18nTest < ActiveSupport::TestCase
set_language_if_valid 'en'
today = Date.today
Setting.date_format = ''
- assert_equal I18n.l(today, :count => today.strftime('%d')), format_date(today)
+ assert_equal I18n.l(today), format_date(today)
end
def test_date_format
@@ -47,7 +47,7 @@ class Redmine::I18nTest < ActiveSupport::TestCase
format_date(Date.today)
format_time(Time.now)
format_time(Time.now, false)
- assert_not_equal 'default', ::I18n.l(Date.today, :count => Date.today.strftime('%d'), :format => :default), "date.formats.default missing in #{lang}"
+ assert_not_equal 'default', ::I18n.l(Date.today, :format => :default), "date.formats.default missing in #{lang}"
assert_not_equal 'time', ::I18n.l(Time.now, :format => :time), "time.formats.time missing in #{lang}"
end
assert l('date.day_names').is_a?(Array)
@@ -63,8 +63,8 @@ class Redmine::I18nTest < ActiveSupport::TestCase
now = Time.now
Setting.date_format = ''
Setting.time_format = ''
- assert_equal I18n.l(now, :count => now.strftime('%d')), format_time(now)
- assert_equal I18n.l(now, :count => now.strftime('%d'), :format => :time), format_time(now, false)
+ assert_equal I18n.l(now), format_time(now)
+ assert_equal I18n.l(now, :format => :time), format_time(now, false)
end
def test_time_format