add store directory creation

This commit is contained in:
rmanach
2025-01-03 14:48:49 +01:00
parent 18661f82f8
commit e0d7eeadc3
6 changed files with 78 additions and 39 deletions
+1
View File
@@ -1,3 +1,4 @@
{{ define "content" }}
<h3>A simple API to store, search and download books.</h3>
<p>No extra JS, CSS or fancy stuff. You click, you search, you found, you're happy.</p>
{{ end }}
+38 -25
View File
@@ -4,7 +4,6 @@ import (
_ "embed"
"html/template"
"mime/multipart"
"os"
"strconv"
"strings"
"sync"
@@ -55,56 +54,70 @@ var funcMap = template.FuncMap{
},
}
var GetHome = sync.OnceValue[*template.Template](func() *template.Template {
var homeTmpl = sync.OnceValue[*template.Template](func() *template.Template {
baseTmpl, err := template.New("base").Parse(base)
if err != nil {
log.Err(err).Msg("unable to parse base tmpl")
os.Exit(1)
log.Fatal().Err(err).Msg("unable to parse base tmpl")
}
if _, err := baseTmpl.New("home").Parse(home); err != nil {
log.Err(err).Msg("unable to parse home tmpl")
os.Exit(1)
log.Fatal().Err(err).Msg("unable to parse home tmpl")
}
return baseTmpl
})
})()
var GetUploadForm = sync.OnceValue[*template.Template](func() *template.Template {
var uploadFormTmpl = sync.OnceValue[*template.Template](func() *template.Template {
baseTmpl, err := template.New("base").Parse(base)
if err != nil {
log.Err(err).Msg("unable to parse base tmpl")
os.Exit(1)
log.Fatal().Err(err).Msg("unable to parse base tmpl")
}
if _, err := baseTmpl.New("uploadForm").Funcs(funcMap).Parse(uploadForm); err != nil {
log.Err(err).Msg("unable to parse upload tmpl")
os.Exit(1)
log.Fatal().Err(err).Msg("unable to parse upload tmpl")
}
return baseTmpl
})
})()
var GetLoginForm = sync.OnceValue[*template.Template](func() *template.Template {
var loginFormTmpl = sync.OnceValue[*template.Template](func() *template.Template {
baseTmpl, err := template.New("base").Parse(base)
if err != nil {
log.Err(err).Msg("unable to parse base tmpl")
os.Exit(1)
log.Fatal().Err(err).Msg("unable to parse base tmpl")
}
if _, err := baseTmpl.New("loginForm").Funcs(funcMap).Parse(loginForm); err != nil {
log.Err(err).Msg("unable to parse login tmpl")
os.Exit(1)
log.Fatal().Err(err).Msg("unable to parse login tmpl")
}
return baseTmpl
})
})()
var GetLoginSuccess = sync.OnceValue[*template.Template](func() *template.Template {
tmpl, err := template.New("loginSuccess").Parse(loginSuccess)
var loginSuccessTmpl = sync.OnceValue[*template.Template](func() *template.Template {
baseTmpl, err := template.New("base").Parse(base)
if err != nil {
log.Err(err).Msg("unable to parse login success")
os.Exit(1)
log.Fatal().Err(err).Msg("unable to parse base tmpl")
}
return tmpl
})
if _, err := baseTmpl.New("loginSuccess").Funcs(funcMap).Parse(loginSuccess); err != nil {
log.Fatal().Err(err).Msg("unable to parse login success tmpl")
}
return baseTmpl
})()
func GetHome() *template.Template {
return homeTmpl
}
func GetLoginForm() *template.Template {
return loginFormTmpl
}
func GetLoginSuccess() *template.Template {
return loginSuccessTmpl
}
func GetUploadForm() *template.Template {
return uploadFormTmpl
}