aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@gmail.com>2010-01-23 01:29:29 +0100
committerJosé Valim <jose.valim@gmail.com>2010-01-23 01:29:29 +0100
commit98240c49b05093d6d14b9384a9bd695b58eefb59 (patch)
tree8db75608481547569fe86b105d7af30017617d69 /activesupport
parentc8cc8a987213bf90fe6922517d52befb7c0587a8 (diff)
downloadrails-98240c49b05093d6d14b9384a9bd695b58eefb59.tar.gz
rails-98240c49b05093d6d14b9384a9bd695b58eefb59.tar.bz2
rails-98240c49b05093d6d14b9384a9bd695b58eefb59.zip
Get rid of initializers global and create i18n railtie.
Diffstat (limited to 'activesupport')
-rw-r--r--activesupport/lib/active_support/railtie.rb29
1 files changed, 29 insertions, 0 deletions
diff --git a/activesupport/lib/active_support/railtie.rb b/activesupport/lib/active_support/railtie.rb
index 18e404f002..d443e0e997 100644
--- a/activesupport/lib/active_support/railtie.rb
+++ b/activesupport/lib/active_support/railtie.rb
@@ -1,6 +1,35 @@
require "active_support"
require "rails"
+module I18n
+ class Railtie < Rails::Railtie
+ plugin_name :i18n
+
+ # Initialize I18n load paths to an array
+ config.i18n.load_path = []
+
+ initializer :initialize_i18n do
+ require 'active_support/i18n'
+
+ ActionDispatch::Callbacks.to_prepare do
+ I18n.reload!
+ end
+ end
+
+ # Set the i18n configuration from config.i18n but special-case for
+ # the load_path which should be appended to what's already set instead of overwritten.
+ config.after_initialize do |app|
+ app.config.i18n.each do |setting, value|
+ if setting == :load_path
+ I18n.load_path += value
+ else
+ I18n.send("#{setting}=", value)
+ end
+ end
+ end
+ end
+end
+
module ActiveSupport
class Railtie < Rails::Railtie
plugin_name :active_support