2025-01-03 09:32:27 +01:00

44 lines
816 B
Go

package templates
import (
_ "embed"
"html/template"
"os"
"sync"
"github.com/rs/zerolog/log"
)
//go:embed form.html.tpl
var form string
//go:embed success.html.tpl
var success string
var funcMap = template.FuncMap{
"errStr": func(err error) string {
if err != nil {
return err.Error()
}
return ""
},
}
var GetLoginForm = sync.OnceValue[*template.Template](func() *template.Template {
tmpl, err := template.New("loginForm").Funcs(funcMap).Parse(form)
if err != nil {
log.Err(err).Msg("unable to parse login form")
os.Exit(1)
}
return tmpl
})
var GetLoginSuccess = sync.OnceValue[*template.Template](func() *template.Template {
tmpl, err := template.New("loginSuccess").Parse(success)
if err != nil {
log.Err(err).Msg("unable to parse login success")
os.Exit(1)
}
return tmpl
})