From: Ævar Arnfjörð Bjarmason Date: Tue, 14 Jul 2009 21:55:40 +0000 (+0000) Subject: Potlatch's i18n support predates our Rails i18n effort, so it was X-Git-Tag: live~6842 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/5d33aaa3322271f83ba6e047edb475ce54bf7330 Potlatch's i18n support predates our Rails i18n effort, so it was still doing its own language detection. Scrap that and use I18n.locale instead, now Potlatch is guaranteed to use whatever translation the rest of the site uses. I've tested this by switching the language in preferences back and forth, and also ensured that Potlatch will fall back on English if the specified language doesn't exist in its list of translations. --- diff --git a/app/controllers/amf_controller.rb b/app/controllers/amf_controller.rb index 3fa47d088..c7fa5dd80 100644 --- a/app/controllers/amf_controller.rb +++ b/app/controllers/amf_controller.rb @@ -76,7 +76,7 @@ class AmfController < ApplicationController logger.info("Executing AMF #{message}(#{args.join(',')}):#{index}") case message - when 'getpresets'; results[index]=AMF.putdata(index,getpresets(args[0])) + when 'getpresets'; results[index]=AMF.putdata(index,getpresets(I18n.locale)) when 'whichways'; results[index]=AMF.putdata(index,whichways(*args)) when 'whichways_deleted'; results[index]=AMF.putdata(index,whichways_deleted(*args)) when 'getway'; results[index]=AMF.putdata(index,getway(args[0].to_i)) @@ -214,11 +214,11 @@ class AmfController < ApplicationController # uses POTLATCH_PRESETS global, set up in OSM::Potlatch. def getpresets(lang) #:doc: - lang.gsub!(/[^\w\-]/,'') - begin + logger.info("Loading Potlatch/#{lang} localisation") localised = YAML::load(File.open("#{RAILS_ROOT}/config/potlatch/localised/#{lang}/localised.yaml")) rescue + logger.info("Loading Potlatch/#{lang} localisation failed, using English defaults") localised = "" # guess we'll just have to use the hardcoded English text instead end