Después de instalar Radiant 0.9 y Globalize, tenía que redirigir al usuario a su sitio con su lenguaje.
Si el usuario tenía asignado el locale en, al momento de visitar http://mysite.com, debería de ser redirigido a http://mysite.com/en
Todo este lío porque tenía un flash que funcionaba con archivos xml, entonces arme una estructura de ficheros y necesitaba que el usuario este parado en ese lugar, y no en la homepage, para que el flash funcione correctamente.
Estas son las modificaciones que hice al archivo vendor/extensions/globalize2/lib/globalize2/site_controller_extensions.rb, espero que les sirva
module Globalize2
module SiteControllerExtensions
def self.included(base)
base.class_eval do
alias_method_chain :find_page, :globalize
alias_method
riginal_show_page, :show_page
alias_method :show_page, :check_homepage_redir
end
end
def check_homepage_redir
url = params[:url]
if Array === url
url = url.join('/')
else
url = url.to_s
end
if url == '/'
locale = params[:locale] || cookies[:locale] || session[:locale] || Globalize2Extension.ip_lookup(request.remote_ip)
redirect_to CGI.unescape('/' + locale + '/') and return
end
original_show_page
end
def find_page_with_globalize(url)
globalized_url = '/' + I18n.locale + '/' + url
find_page_without_globalize(globalized_url)
end
end
end