2020-11-25 22:40:24 -05:00
|
|
|
{{- /* theme-toggle is enabled */}}
|
|
|
|
{{- if (not .Site.Params.disableThemeToggle) }}
|
|
|
|
{{- /* theme is light */}}
|
2020-11-04 03:34:45 -05:00
|
|
|
{{- if (eq .Site.Params.defaultTheme "light") }}
|
2020-09-17 05:58:03 -04:00
|
|
|
<script>
|
2020-10-04 11:13:24 -04:00
|
|
|
if (localStorage.getItem("pref-theme") === "dark") {
|
2020-09-17 05:58:03 -04:00
|
|
|
document.body.classList.add('dark');
|
|
|
|
}
|
2020-10-26 12:49:05 -04:00
|
|
|
|
2020-09-17 05:58:03 -04:00
|
|
|
</script>
|
2020-11-25 22:40:24 -05:00
|
|
|
{{- /* theme is dark */}}
|
2020-11-04 03:34:45 -05:00
|
|
|
{{- else if (eq .Site.Params.defaultTheme "dark") }}
|
2020-10-05 05:03:48 -04:00
|
|
|
<script>
|
2020-11-25 22:40:24 -05:00
|
|
|
if (localStorage.getItem("pref-theme") === "light") {
|
2020-11-04 03:34:45 -05:00
|
|
|
document.body.classList.remove('dark')
|
|
|
|
}
|
|
|
|
|
|
|
|
</script>
|
2020-11-25 22:40:24 -05:00
|
|
|
{{- else }}
|
|
|
|
{{- /* theme is auto */}}
|
2020-11-04 03:34:45 -05:00
|
|
|
<script>
|
|
|
|
if (localStorage.getItem("pref-theme") === "dark") {
|
|
|
|
document.body.classList.add('dark');
|
|
|
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
|
|
|
document.body.classList.remove('dark')
|
|
|
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
2020-10-05 05:03:48 -04:00
|
|
|
document.body.classList.add('dark');
|
|
|
|
}
|
2020-10-26 12:49:05 -04:00
|
|
|
|
2020-10-05 05:03:48 -04:00
|
|
|
</script>
|
|
|
|
{{- end }}
|
2020-11-25 22:40:24 -05:00
|
|
|
{{- /* theme-toggle is disabled and theme is auto */}}
|
|
|
|
{{- else if (and (ne .Site.Params.defaultTheme "light") (ne .Site.Params.defaultTheme "dark"))}}
|
|
|
|
<script>
|
|
|
|
if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
|
|
|
document.body.classList.add('dark');
|
|
|
|
}
|
|
|
|
|
|
|
|
</script>
|
|
|
|
{{- end }}
|
2020-10-05 04:37:23 -04:00
|
|
|
<noscript>
|
|
|
|
<style type="text/css">
|
|
|
|
.theme-toggle,
|
|
|
|
.top-link {
|
|
|
|
display: none;
|
|
|
|
}
|
2020-10-26 12:49:05 -04:00
|
|
|
|
2020-10-05 04:37:23 -04:00
|
|
|
</style>
|
|
|
|
</noscript>
|
2020-07-21 06:06:30 -04:00
|
|
|
<header class="header">
|
|
|
|
<nav class="nav">
|
2020-10-26 12:49:05 -04:00
|
|
|
<div class="logo">
|
2020-12-18 09:32:05 -05:00
|
|
|
<a href="{{ "" | absLangURL }}" accesskey="h" title="{{ .Site.Params.label.text | default .Site.Title }} (Alt + H)">
|
2020-10-16 14:17:46 -04:00
|
|
|
{{- if .Site.Params.label.icon }}
|
2020-10-16 14:35:10 -04:00
|
|
|
<img src="{{- .Site.Params.label.icon -}}" alt="logo" aria-label="logo"
|
2020-10-16 14:17:46 -04:00
|
|
|
height="{{- .Site.Params.label.iconHeight | default "30px" -}}">
|
|
|
|
{{- end -}}
|
|
|
|
{{- .Site.Params.label.text | default .Site.Title -}}
|
|
|
|
</a>
|
2020-10-26 12:49:05 -04:00
|
|
|
<span class="logo-switches">
|
2020-11-04 03:34:45 -05:00
|
|
|
{{- if (not .Site.Params.disableThemeToggle) }}
|
2020-12-18 09:32:05 -05:00
|
|
|
<span class="theme-toggle" title="(Alt + T)">
|
2020-10-29 15:45:29 -04:00
|
|
|
<a id="theme-toggle" accesskey="t">
|
2020-10-26 12:49:05 -04:00
|
|
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"
|
|
|
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
|
|
|
stroke-linejoin="round">
|
|
|
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
|
|
|
</svg>
|
|
|
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"
|
|
|
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
|
|
|
stroke-linejoin="round">
|
|
|
|
<circle cx="12" cy="12" r="5"></circle>
|
|
|
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
|
|
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
|
|
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
|
|
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
|
|
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
|
|
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
|
|
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
|
|
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
|
|
|
</svg>
|
|
|
|
</a>
|
|
|
|
</span>
|
|
|
|
{{- end}}
|
|
|
|
{{ $lang := .Lang}}
|
|
|
|
{{- with $.Site.Home.AllTranslations }}
|
|
|
|
<span class="lang-switch">
|
|
|
|
<span>|</span>
|
|
|
|
<ul>
|
|
|
|
{{- range . -}}
|
|
|
|
{{- if ne $lang .Lang }}
|
|
|
|
<li>
|
2020-12-11 06:50:50 -05:00
|
|
|
<a href="{{- .Permalink -}}" title="{{ .Language.LanguageName | default (.Lang | humanize) }}"
|
|
|
|
aria-label="{{ .Language.LanguageName | default (.Lang | humanize) }}">
|
2020-10-26 12:49:05 -04:00
|
|
|
{{- if (and $.Site.Params.displayFullLangName (.Language.LanguageName)) }}
|
2020-11-28 12:34:10 -05:00
|
|
|
{{- .Language.LanguageName | emojify -}}
|
2020-10-26 12:49:05 -04:00
|
|
|
{{- else }}
|
|
|
|
{{- .Lang | humanize -}}
|
|
|
|
{{- end -}}
|
|
|
|
</a>
|
|
|
|
</li>
|
|
|
|
{{- end -}}
|
|
|
|
{{- end}}
|
|
|
|
</ul>
|
|
|
|
</span>
|
|
|
|
{{- end }}
|
2020-10-04 11:13:24 -04:00
|
|
|
</span>
|
2020-10-26 12:49:05 -04:00
|
|
|
</div>
|
2020-09-23 03:22:32 -04:00
|
|
|
{{- $currentPage := . }}
|
2020-08-21 11:33:05 -04:00
|
|
|
<ul class="menu" id="menu" onscroll="menu_on_scroll()">
|
2020-07-21 06:06:30 -04:00
|
|
|
{{- range .Site.Menus.main }}
|
2020-12-01 03:28:16 -05:00
|
|
|
{{- $menu_item_url := (cond (strings.HasSuffix .URL "/") .URL (printf "%s/" .URL) ) | absLangURL }}
|
|
|
|
{{- $page_url:= $currentPage.Permalink | absLangURL }}
|
2020-12-18 11:16:07 -05:00
|
|
|
{{- $is_search := eq ($.Site.GetPage .Name).Layout `search` }}
|
2020-07-21 06:06:30 -04:00
|
|
|
<li>
|
2020-12-18 11:16:07 -05:00
|
|
|
<a href="{{ .URL | absLangURL }}" title="{{ .Title | default .Name }} {{- cond $is_search (" (Alt + /)" | safeHTMLAttr) ("" | safeHTMLAttr ) }}"
|
|
|
|
{{- cond $is_search (" accesskey=/" | safeHTMLAttr) ("" | safeHTMLAttr ) }}>
|
2020-12-01 03:28:16 -05:00
|
|
|
<span {{- if eq $menu_item_url $page_url }} class="active" {{- end }}>
|
2020-12-18 11:16:07 -05:00
|
|
|
{{- .Name -}}
|
2020-09-23 03:22:32 -04:00
|
|
|
</span>
|
2020-09-20 09:33:43 -04:00
|
|
|
</a>
|
2020-07-21 06:06:30 -04:00
|
|
|
</li>
|
2020-10-26 12:49:05 -04:00
|
|
|
{{- end -}}
|
2020-07-21 06:06:30 -04:00
|
|
|
</ul>
|
|
|
|
</nav>
|
2020-10-16 14:17:46 -04:00
|
|
|
</header>
|