diff options
Diffstat (limited to 'template/language.templ')
-rw-r--r-- | template/language.templ | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/template/language.templ b/template/language.templ new file mode 100644 index 0000000..1b48295 --- /dev/null +++ b/template/language.templ @@ -0,0 +1,54 @@ +package template + +import ( + "strings" + + "git.thomasvoss.com/euro-cash.eu/lib" +) + +templ Language() { + {{ p := ctx.Value("printer").(lib.Printer) }} + <header> + @navbar() + <h1>{ p.T("Select Your Language") }</h1> + </header> + <main> + <p> + { p.T("Select your preferred language to use on the site.") } + </p> + <p> + If you are an American user, it’s suggested that you select + American English instead of British English. This will ensure that + dates will be formatted with the month before the day. + </p> + <hr/> + <h2>{ p.T("Eurozone Languages") }</h2> + @languageGrid(true) + <h2>{ p.T("Other Languages") }</h2> + @languageGrid(false) + </main> +} + +templ languageGrid(eurozone bool) { + <form action="/language" method="POST"> + <div class="lang-grid"> + for _, loc := range lib.Locales { + if loc.Eurozone == eurozone { + <button + type="submit" + name="locale" + value={ loc.Bcp } + disabled?={ !loc.Enabled } + > + <span + lang={ loc.Bcp } + data-code={ strings.ToUpper(loc.Language()) } + > + { loc.Name } + </span> + </button> + } + } + </div> + </form> +} |