diff --git a/.prettierignore b/.prettierignore index 457e2eb5..d2d823c7 100644 --- a/.prettierignore +++ b/.prettierignore @@ -30,3 +30,5 @@ layouts/_default/index.json layouts/shortcodes/screenshot.html layouts/shortcodes/figure.html layouts/partials/hugo-embedded/shortcodes/figure-default.html + +assets/js/appearance.js diff --git a/assets/js/appearance.js b/assets/js/appearance.js index 6cb43b14..1af7f713 100644 --- a/assets/js/appearance.js +++ b/assets/js/appearance.js @@ -96,6 +96,7 @@ window.addEventListener("DOMContentLoaded", (event) => { } }); + var updateMeta = () => { var elem, style; elem = document.querySelector('body'); @@ -103,6 +104,33 @@ var updateMeta = () => { document.querySelector('meta[name="theme-color"]').setAttribute('content', style.backgroundColor); } +{{ if and (.Site.Params.Logo) (.Site.Params.SecondaryLogo) }} +{{ $primaryLogo := resources.Get .Site.Params.Logo }} +{{ $secondaryLogo := resources.Get .Site.Params.SecondaryLogo }} +{{ if and ($primaryLogo) ($secondaryLogo) }} +var updateLogo = (targetAppearance) => { + var imgElems = document.querySelectorAll("img.logo"); + var logoContainers = document.querySelectorAll("span.logo"); + + targetLogoPath = + targetAppearance == "{{ .Site.Params.DefaultAppearance }}" ? + "{{ $primaryLogo.RelPermalink }}" : "{{ $secondaryLogo.RelPermalink }}" + for (const elem of imgElems) { + elem.setAttribute("src", targetLogoPath) + } + + {{ if eq $primaryLogo.MediaType.SubType "svg" }} + targetContent = + targetAppearance == "{{ .Site.Params.DefaultAppearance }}" ? + `{{ $primaryLogo.Content | safeHTML }}` : `{{ $secondaryLogo.Content | safeHTML }}` + for (const container of logoContainers) { + container.innerHTML = targetContent; + } + {{ end }} +} +{{ end }} +{{- end }} + var getTargetAppearance = () => { return document.documentElement.classList.contains("dark") ? "dark" : "light" } diff --git a/layouts/partials/header/basic.html b/layouts/partials/header/basic.html index ac776b87..9c9c9f13 100644 --- a/layouts/partials/header/basic.html +++ b/layouts/partials/header/basic.html @@ -1,49 +1,26 @@