Merge pull request #188 from dgdavid/feature/fix-issue-180

Fix language selector to make it work properly in Firefox
This commit is contained in:
Olivier Lacan 2017-07-06 23:14:50 +02:00 committed by GitHub
commit 0c53c7de4d
2 changed files with 16 additions and 7 deletions

View File

@ -154,6 +154,19 @@ helpers do
def path_to_url(path) def path_to_url(path)
Addressable::URI.join(config.site_url, path).normalize.to_s Addressable::URI.join(config.site_url, path).normalize.to_s
end end
def available_translation_for(language)
language_name = language.last[:name]
language_path = "source/#{language.first}"
if File.exists?("#{language_path}/#{$last_version}")
"#{$last_version} #{language_name}"
elsif File.exists?("#{language_path}/#{$previous_version}")
"#{$previous_version} #{language_name}"
else
nil
end
end
end end
# -------------------------------------- # --------------------------------------

View File

@ -46,14 +46,10 @@
%nav.locales{ role: "navigation" } %nav.locales{ role: "navigation" }
%select %select
- $languages.each do |language| - $languages.each do |language|
- version_exists = File.exists?("source/#{language.first}/#{$last_version}")
- selected = language_code == language.first - selected = language_code == language.first
- if version_exists - if available_translation = available_translation_for(language)
%option{ selected: selected, label: "#{$last_version} #{language.last[:name]}", value: language.first } %option{ selected: selected, label: available_translation, value: language.first }
- else = available_translation
- previous_version = File.exists?("source/#{language.first}/#{$previous_version}")
- if previous_version
%option{ selected: selected, label: "#{$previous_version} #{language.last[:name]}", value: language.first }
.main{ role: "main" } .main{ role: "main" }
- if !latest_version - if !latest_version