aboutsummaryrefslogtreecommitdiff
path: root/layouts/partials/nav.html
diff options
context:
space:
mode:
Diffstat (limited to 'layouts/partials/nav.html')
-rw-r--r--layouts/partials/nav.html26
1 files changed, 17 insertions, 9 deletions
diff --git a/layouts/partials/nav.html b/layouts/partials/nav.html
index b7e9f79..8e2dd90 100644
--- a/layouts/partials/nav.html
+++ b/layouts/partials/nav.html
@@ -1,15 +1,23 @@
{{ range .Site.Menus.main.ByWeight }}
- <a href="{{ .URL | absLangURL }}">{{ .Name }}</a>
+ <a href="{{ absLangURL .URL }}">{{ .Name }}</a>
{{ end }}
-<a href='mailto:{{ .Site.Params.email }}?subject={{ i18n "email-subject" }}"{{ .Page.Title | default .Site.Title }}"'>Email</a>
+<a href='mailto:{{ .Site.Params.email }}?subject={{ i18n "email-subject" }}"{{ default .Site.Title .Page.Title }}"'>Email</a>
<a href="/index.xml">RSS</a>
-{{ $pageLang := .Page.Lang }}
-{{ if .IsTranslated }}
- {{ range .Translations }}
- {{ if ne $pageLang .Lang }}
- <a href="{{ .Permalink }}">{{ .Language.LanguageName }}</a>
+
+<!-- Convert this page's translations into a dict -->
+{{ $translations := dict }}
+{{ range .Translations }}
+ {{ $translations = merge $translations (dict .Language.Lang .) }}
+{{ end }}
+
+<!-- Create a link to every translation -->
+{{ range where .Site.Languages "Lang" "!=" .Page.Lang }}
+ {{ with (index $translations .Lang) }}
+ <a href="{{ .Permalink }}">{{ .Language.LanguageName }}</a>
+ {{ else }}
+ <!-- The complicated setup was necessary to make a grayed out link -->
+ {{ if not .Params.hideUntranslated }}
+ <a class="disabled" href="">{{ .LanguageName }}</a>
{{ end }}
{{ end }}
-{{ else if not .Site.Params.hideUntranslated }}
- <a class="disabled" href="">{{ .Language.LanguageName }}</a>
{{ end }}