- def select_locale(locales = I18n.available_locales)
- if params[:locale]
- http_accept_language.user_preferred_languages = [params[:locale]]
- end
-
- if http_accept_language.compatible_language_from(locales).nil?
- http_accept_language.user_preferred_languages = http_accept_language.user_preferred_languages.collect do |pl|
- pls = [pl]
-
- while pl.match(/^(.*)-[^-]+$/)
- pls.push($1) if locales.include?($1) || locales.include?($1.to_sym)
- pl = $1
- end
-
- pls
- end.flatten
- end
-
- http_accept_language.compatible_language_from(locales) || I18n.default_locale
+ response.headers["Vary"] = "Accept-Language"
+ response.headers["Content-Language"] = I18n.locale.to_s