summaryrefslogtreecommitdiff
path: root/srv/src/api/render.go
diff options
context:
space:
mode:
Diffstat (limited to 'srv/src/api/render.go')
-rw-r--r--srv/src/api/render.go16
1 files changed, 12 insertions, 4 deletions
diff --git a/srv/src/api/render.go b/srv/src/api/render.go
index cacdb26..2b6b5a0 100644
--- a/srv/src/api/render.go
+++ b/srv/src/api/render.go
@@ -20,7 +20,7 @@ import (
//go:embed tpl
var tplFS embed.FS
-func mustParseTpl(name string) *template.Template {
+func (a *api) mustParseTpl(name string) *template.Template {
mustRead := func(fileName string) string {
path := filepath.Join("tpl", fileName)
@@ -33,7 +33,15 @@ func mustParseTpl(name string) *template.Template {
return string(b)
}
- tpl := template.Must(template.New("").Parse(mustRead(name)))
+ blogURL := func(path string) string {
+ return filepath.Join(a.params.PathPrefix, "/v2", path)
+ }
+
+ tpl := template.New("").Funcs(template.FuncMap{
+ "BlogURL": blogURL,
+ })
+
+ tpl = template.Must(tpl.Parse(mustRead(name)))
tpl = template.Must(tpl.New("base.html").Parse(mustRead("base.html")))
return tpl
@@ -41,7 +49,7 @@ func mustParseTpl(name string) *template.Template {
func (a *api) renderIndexHandler() http.Handler {
- tpl := mustParseTpl("index.html")
+ tpl := a.mustParseTpl("index.html")
const pageCount = 10
return http.HandlerFunc(func(rw http.ResponseWriter, r *http.Request) {
@@ -95,7 +103,7 @@ func (a *api) renderIndexHandler() http.Handler {
func (a *api) renderPostHandler() http.Handler {
- tpl := mustParseTpl("post.html")
+ tpl := a.mustParseTpl("post.html")
return http.HandlerFunc(func(rw http.ResponseWriter, r *http.Request) {