Feature #2691 » option_to_disable_language_guessing-r2383.patch
| app/controllers/application.rb (working copy) | ||
|---|---|---|
| 65 | 65 |
|
| 66 | 66 |
def set_localization |
| 67 | 67 |
User.current.language = nil unless User.current.logged? |
| 68 |
lang = begin |
|
| 69 |
if !User.current.language.blank? && GLoc.valid_language?(User.current.language) |
|
| 70 |
User.current.language |
|
| 71 |
elsif request.env['HTTP_ACCEPT_LANGUAGE'] |
|
| 72 |
accept_lang = parse_qvalues(request.env['HTTP_ACCEPT_LANGUAGE']).first.downcase |
|
| 73 |
if !accept_lang.blank? && (GLoc.valid_language?(accept_lang) || GLoc.valid_language?(accept_lang = accept_lang.split('-').first))
|
|
| 74 |
User.current.language = accept_lang |
|
| 75 |
end |
|
| 76 |
end |
|
| 77 |
rescue |
|
| 78 |
nil |
|
| 79 |
end || Setting.default_language |
|
| 80 |
set_language_if_valid(lang) |
|
| 68 |
if !Setting.static_language? |
|
| 69 |
lang = begin |
|
| 70 |
if !User.current.language.blank? && GLoc.valid_language?(User.current.language) |
|
| 71 |
User.current.language |
|
| 72 |
elsif request.env['HTTP_ACCEPT_LANGUAGE'] |
|
| 73 |
accept_lang = parse_qvalues(request.env['HTTP_ACCEPT_LANGUAGE']).first.downcase |
|
| 74 |
if !accept_lang.blank? && (GLoc.valid_language?(accept_lang) || GLoc.valid_language?(accept_lang = accept_lang.split('-').first))
|
|
| 75 |
User.current.language = accept_lang |
|
| 76 |
end |
|
| 77 |
end |
|
| 78 |
rescue |
|
| 79 |
nil |
|
| 80 |
end || Setting.default_language |
|
| 81 |
set_language_if_valid(lang) |
|
| 82 |
else |
|
| 83 |
lang = Setting.default_language |
|
| 84 |
end |
|
| 81 | 85 |
end |
| 82 | 86 |
|
| 83 | 87 |
def require_login |
| app/views/settings/_display.rhtml (working copy) | ||
|---|---|---|
| 7 | 7 |
<p><label><%= l(:setting_default_language) %></label> |
| 8 | 8 |
<%= select_tag 'settings[default_language]', options_for_select( lang_options_for_select(false), Setting.default_language) %></p> |
| 9 | 9 | |
| 10 |
<p><label><%= l(:setting_static_language) %></label> |
|
| 11 |
<%= check_box_tag 'settings[static_language]', 1, Setting.static_language? %><%= hidden_field_tag 'settings[static_language]', 0 %></p> |
|
| 12 | ||
| 10 | 13 |
<p><label><%= l(:setting_date_format) %></label> |
| 11 | 14 |
<%= select_tag 'settings[date_format]', options_for_select( [[l(:label_language_based), '']] + Setting::DATE_FORMATS.collect {|f| [Date.today.strftime(f), f]}, Setting.date_format) %></p>
|
| 12 | 15 | |
| config/settings.yml (working copy) | ||
|---|---|---|
| 143 | 143 |
To change your notification preferences, please click here: http://hostname/my/account |
| 144 | 144 |
gravatar_enabled: |
| 145 | 145 |
default: 0 |
| 146 |
static_language: |
|
| 147 |
default: 0 |
|
| lang/en.yml (working copy) | ||
|---|---|---|
| 228 | 228 |
setting_gravatar_enabled: Use Gravatar user icons |
| 229 | 229 |
setting_diff_max_lines_displayed: Max number of diff lines displayed |
| 230 | 230 |
setting_repository_log_display_limit: Maximum number of revisions displayed on file log |
| 231 |
setting_static_language: Disable automated language-guessing based on HTTP_ACCEPT_LANGUAGE HTTP-header |
|
| 231 | 232 | |
| 232 | 233 |
permission_edit_project: Edit project |
| 233 | 234 |
permission_select_project_modules: Select project modules |