From dcbcaefcbec01f59ff11c46c3b6643e9098c0472 Mon Sep 17 00:00:00 2001 From: MrZYX Date: Thu, 18 Nov 2010 20:57:33 +0100 Subject: [PATCH] added language codes map --- config/environment.rb | 6 ++++++ config/initializers/locale.rb | 9 +++++++-- config/langcodes_alias_map.yml | 2 ++ config/locales/rails-i18n/en.yml | 1 - 4 files changed, 15 insertions(+), 3 deletions(-) create mode 100644 config/langcodes_alias_map.yml delete mode 120000 config/locales/rails-i18n/en.yml diff --git a/config/environment.rb b/config/environment.rb index 8270f544d..0586220b5 100644 --- a/config/environment.rb +++ b/config/environment.rb @@ -18,6 +18,12 @@ else AVAILABLE_LANGUAGE_CODES = ['en'] end +if File.exists?(File.expand_path("./config/langcodes_alias_map.yml")) + LANGUAGE_CODES_MAP = YAML::load(File.open(File.expand_path("./config/langcodes_alias_map.yml"))) +else + LANGUAGE_CODES_MAP = {} +end + # Initialize the rails application Diaspora::Application.initialize! diff --git a/config/initializers/locale.rb b/config/initializers/locale.rb index 5d4a53a61..86ae3c07b 100644 --- a/config/initializers/locale.rb +++ b/config/initializers/locale.rb @@ -7,5 +7,10 @@ I18n.load_path += Dir[Rails.root.join('config', 'locales', '**', '*.{rb,yml}')] I18n.default_locale = DEFAULT_LANGUAGE I18n::Backend::Simple.send(:include, I18n::Backend::Fallbacks) AVAILABLE_LANGUAGE_CODES.each do |c| - I18n.fallbacks[c.to_sym] = [c.to_sym, DEFAULT_LANGUAGE.to_sym, :en] -end \ No newline at end of file + if LANGUAGE_CODES_MAP.key?(c) + I18n.fallbacks[c.to_sym] = LANGUAGE_CODES_MAP[c] + I18n.fallbacks[c.to_sym].concat([c.to_sym, DEFAULT_LANGUAGE.to_sym, :en]) + else + I18n.fallbacks[c.to_sym] = [c.to_sym, DEFAULT_LANGUAGE.to_sym, :en] + end +end diff --git a/config/langcodes_alias_map.yml b/config/langcodes_alias_map.yml new file mode 100644 index 000000000..1bf4a0816 --- /dev/null +++ b/config/langcodes_alias_map.yml @@ -0,0 +1,2 @@ +en: [:en-US, :en-GB] +sv: [:sv-SE] diff --git a/config/locales/rails-i18n/en.yml b/config/locales/rails-i18n/en.yml deleted file mode 120000 index 53a679149..000000000 --- a/config/locales/rails-i18n/en.yml +++ /dev/null @@ -1 +0,0 @@ -en-US.yml \ No newline at end of file