aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShulhan <ms@kilabit.info>2022-08-07 23:03:34 +0700
committerShulhan <ms@kilabit.info>2022-08-07 23:03:34 +0700
commitc32cc2fb5aea85de19ea968366338e09e6fa3c6a (patch)
tree688d2ad5ed8cad4a1527e4020f606fdf74b8d514
parentd08388ce3ad56757bc0b2ccc0d8286a1d4933fba (diff)
downloadciigo-c32cc2fb5aea85de19ea968366338e09e6fa3c6a.tar.xz
all: fix HTML template loaded during Serve on non-development
The HTML template in the ServeOptions should not read when ciigo.Serve running on non-development environment.
-rw-r--r--converter.go6
-rw-r--r--server.go21
2 files changed, 17 insertions, 10 deletions
diff --git a/converter.go b/converter.go
index 2d5c620..9fcbe97 100644
--- a/converter.go
+++ b/converter.go
@@ -41,10 +41,10 @@ func NewConverter(htmlTemplate string) (converter *Converter, err error) {
bhtml, err = os.ReadFile(converter.htmlTemplate)
if err != nil {
- return nil, fmt.Errorf(`%s: %s: %w`, logp, converter.htmlTemplate, err)
+ tmplContent = templateIndexHTML
+ } else {
+ tmplContent = string(bhtml)
}
-
- tmplContent = string(bhtml)
}
converter.tmpl, err = converter.tmpl.Parse(tmplContent)
diff --git a/server.go b/server.go
index 9765e04..4844564 100644
--- a/server.go
+++ b/server.go
@@ -33,6 +33,8 @@ func newServer(opts *ServeOptions) (srv *server, err error) {
tmplNode *memfs.Node
httpdOpts *libhttp.ServerOptions
epInSearch *libhttp.Endpoint
+
+ pathHtmlTemplate string
)
if opts.Mfs == nil {
@@ -74,17 +76,22 @@ func newServer(opts *ServeOptions) (srv *server, err error) {
return nil, fmt.Errorf(`%s: %w`, logp, err)
}
- srv.converter, err = NewConverter(opts.HtmlTemplate)
+ if opts.IsDevelopment {
+ pathHtmlTemplate = opts.HtmlTemplate
+ }
+
+ srv.converter, err = NewConverter(pathHtmlTemplate)
if err != nil {
return nil, fmt.Errorf(`%s: %w`, logp, err)
}
- // Optionally, load HTML template from memory file system.
- tmplNode, _ = opts.Mfs.Get(internalTemplatePath)
- if tmplNode != nil {
- srv.converter.tmpl, err = srv.converter.tmpl.Parse(string(tmplNode.Content))
- if err != nil {
- return nil, fmt.Errorf(`%s: %s`, logp, err)
+ if !opts.IsDevelopment {
+ tmplNode, _ = opts.Mfs.Get(internalTemplatePath)
+ if tmplNode != nil {
+ srv.converter.tmpl, err = srv.converter.tmpl.Parse(string(tmplNode.Content))
+ if err != nil {
+ return nil, fmt.Errorf(`%s: %s`, logp, err)
+ }
}
}