From a2c25c41928b8203cc4bfadf6c81298bc3d44a36 Mon Sep 17 00:00:00 2001 From: manson Date: Tue, 8 Jul 2014 19:59:46 +0800 Subject: [PATCH] fix url for zh_cn --- app/controllers/application_controller.rb | 2 +- app/controllers/pages_controller.rb | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index e38fc83..b518d62 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -12,7 +12,7 @@ class ApplicationController < ActionController::Base def set_locale in_use_locales = current_site.in_use_locales - if params[:locale].eql?("zh_cn") + if params[:locale].eql?("zh_cn") or (!params[:locale] and session[:zh_cn]) params[:locale] = "zh_tw" I18n.locale = session[:locale] session[:zh_cn] = true diff --git a/app/controllers/pages_controller.rb b/app/controllers/pages_controller.rb index 9c2c692..f84fa8d 100644 --- a/app/controllers/pages_controller.rb +++ b/app/controllers/pages_controller.rb @@ -33,7 +33,10 @@ class PagesController < ApplicationController OrbitHelper.set_params params OrbitHelper.set_site_locale locale final_page = render_final_page("home",page,true) - final_page = session[:zh_cn] ? ZhConv.convert("zh-cn", final_page) : final_page + if session[:zh_cn] + final_page = ZhConv.convert("zh-cn", final_page) + final_page.gsub!('/zh_tw/','/zh_cn/') + end render :html => final_page.html_safe end @@ -86,7 +89,10 @@ class PagesController < ApplicationController impressionist(page) final_page = render_final_page("#{module_app}/#{params[:target_action]}",page,layout) - final_page = session[:zh_cn] ? ZhConv.convert("zh-cn", final_page) : final_page + if session[:zh_cn] + final_page = ZhConv.convert("zh-cn", final_page) + final_page.gsub!('/zh_tw/','/zh_cn/') + end render :html => final_page.html_safe else render :file => "#{Rails.root}/public/404.html", :layout => false, :status => :not_found