aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Kavon <hawk@alexkavon.com>2023-11-28 21:27:51 -0500
committerAlexander Kavon <hawk@alexkavon.com>2023-11-28 21:27:51 -0500
commit5e26ebc96bd41f9d232573d873cb6cb55f0050c4 (patch)
tree6af9987680b4db63de13f189e87378bfc15ef690
parentc03ad4292cebf9661157a4fbec55d720d9aede93 (diff)
ui render templates simplify
-rw-r--r--src/server/ui.go15
-rw-r--r--src/user/routes.go2
2 files changed, 12 insertions, 5 deletions
diff --git a/src/server/ui.go b/src/server/ui.go
index a765d97..7d59168 100644
--- a/src/server/ui.go
+++ b/src/server/ui.go
@@ -24,7 +24,7 @@ func (ui *Ui) CompilePages(uipath string) {
if err != nil {
log.Fatal(err)
}
- ui.pages["core/messages"] = baseTmpl
+ ui.pages["core"] = baseTmpl
pagesDir := filepath.Join(uipath, "pages")
tmplGlob := filepath.Join(pagesDir, "**/*.tmpl.html")
@@ -49,11 +49,18 @@ func (ui *Ui) CompilePages(uipath string) {
func (ui *Ui) Render(w http.ResponseWriter, pageName string, data interface{}) {
templateName := "base"
- if pageName == "core/messages" {
- templateName = "messages"
+ // if the pageName has more than 1 `/` then it specifies the name of a template to target
+ slashCount := strings.Count(pageName, "/")
+ if slashCount > 1 {
+ splitName := strings.Split(pageName, "/")
+ templateName = splitName[0]
}
- p := ui.pages[pageName]
+ ui.RenderTemplate(w, pageName, templateName, data)
+}
+
+func (ui *Ui) RenderTemplate(w http.ResponseWriter, pageName, templateName string, data interface{}) {
+ p := ui.pages[pageName]
err := p.ExecuteTemplate(w, templateName, data)
if err != nil {
log.Fatal(err)
diff --git a/src/user/routes.go b/src/user/routes.go
index 09c53b2..f826822 100644
--- a/src/user/routes.go
+++ b/src/user/routes.go
@@ -51,7 +51,7 @@ func Store(s *server.Server) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
r.ParseForm()
fmt.Println(r.PostForm)
- s.Ui.Render(w, "core/messages", &struct{ Message string }{Message: "Congrats"})
+ s.Ui.RenderTemplate(w, "core", "messages", &struct{ Message string }{Message: "Congrats"})
}
}