diff options
Diffstat (limited to 'src/templates/language.html.tmpl')
-rw-r--r-- | src/templates/language.html.tmpl | 58 |
1 files changed, 23 insertions, 35 deletions
diff --git a/src/templates/language.html.tmpl b/src/templates/language.html.tmpl index a79e30c..768190c 100644 --- a/src/templates/language.html.tmpl +++ b/src/templates/language.html.tmpl @@ -1,11 +1,6 @@ {{ define "header" }} <style> - *:has(> .lang-fade-in-out) { - line-height: 1.1; - } - .lang-fade-in-out { - opacity: 0.5; transition: opacity 1s; &.hide { @@ -16,7 +11,7 @@ <script> (() => { - let i = 0; + let i = -1; let nodes; const Δt = 5000; /* Total time a text is shown */ const Δf = 1000; /* Fade duration */ @@ -36,32 +31,23 @@ {{ end }} ]; - const updateTexts = () => { - nodes.forEach((n, j) => { - const [lang, ...strs] = texts[i]; - n.lang = lang; - n.textContent = strs[j]; - n.classList.remove("hide"); - }); - }; - const change = () => { nodes.forEach(n => n.classList.add("hide")); setTimeout(() => { i = (i + 1) % texts.length; - updateTexts(); + nodes.forEach((n, j) => { + const [lang, ...strs] = texts[i]; + n.lang = lang; + n.textContent = strs[j]; + n.classList.remove("hide"); + }); }, Δf); }; document.addEventListener("DOMContentLoaded", _ => { nodes = $$('.lang-fade-in-out'); - updateTexts(); - /* When you first do a page load there is no fade-in for the initial - text, so we want to trigger a fade-out Δf milliseconds earlier */ - setTimeout(() => { - change(); - setInterval(change, Δt); - }, Δt - Δf); + change(); + setInterval(change, Δt); }); })(); </script> @@ -72,25 +58,26 @@ {{ template "navbar" . }} <h1> {{ .Get "Select Your Language" }} - <br><span class="lang-fade-in-out"></span> + <br><span class="lang-fade-in-out translation"> </span> </h1> </header> <main> <h2> {{ .Get "Eurozone Languages" }} - <br><span class="lang-fade-in-out"></span> + <br><span class="lang-fade-in-out translation"> </span> </h2> - {{ template "langgrid" true }} + {{ template "langgrid" (tuple .Printer true) }} <h2> {{ .Get "Other Languages" }} - <br><span class="lang-fade-in-out"></span> + <br><span class="lang-fade-in-out translation"> </span> </h2> - {{ template "langgrid" false }} + {{ template "langgrid" (tuple .Printer false) }} </main> {{ end }} {{ define "langgrid" }} -{{ $ez := . }} +{{ $p := index . 0 }} +{{ $ez := index . 1 }} <form action="/language" method="POST"> <div class="lang-grid"> {{ range locales }} @@ -98,16 +85,17 @@ <button type="submit" name="locale" - value={{ .Bcp }} + value="{{ .Bcp }}" {{ if not .Enabled }} disabled {{ end }} > - <span - lang={{ .Bcp }} - data-code={{ .Language | toUpper }} - > - {{ .Name }} + <span>{{ .Language | toUpper }}</span> + <span lang="{{ .Bcp }}"> + {{ .Name }}<br> + <span lang="{{ $p.Bcp }}" class="translation"> + {{ $p.GetC .Name "Language Name" }} + </span> </span> </button> {{ end }} |