tangled
alpha
login
or
join now
julien.rbrt.fr
/
tangled-core
forked from
tangled.org/core
0
fork
atom
Monorepo for Tangled — https://tangled.org
0
fork
atom
overview
issues
pulls
pipelines
appview: pages: enable fast-reload for executeRepo
oppi.li
10 months ago
ac420e80
b2f71217
+16
-8
1 changed file
expand all
collapse all
unified
split
appview
pages
pages.go
+16
-8
appview/pages/pages.go
···
198
198
return nil
199
199
}
200
200
201
201
-
func (p *Pages) execute(name string, w io.Writer, params any) error {
201
201
+
func (p *Pages) executeOrReload(templateName string, w io.Writer, base string, params any) error {
202
202
// In dev mode, reload the template from disk before executing
203
203
if p.dev {
204
204
-
if err := p.loadTemplateFromDisk(name); err != nil {
205
205
-
log.Printf("warning: failed to reload template %s from disk: %v", name, err)
204
204
+
if err := p.loadTemplateFromDisk(templateName); err != nil {
205
205
+
log.Printf("warning: failed to reload template %s from disk: %v", templateName, err)
206
206
// Continue with the existing template
207
207
}
208
208
}
209
209
210
210
-
tmpl, exists := p.t[name]
210
210
+
tmpl, exists := p.t[templateName]
211
211
if !exists {
212
212
-
return fmt.Errorf("template not found: %s", name)
212
212
+
return fmt.Errorf("template not found: %s", templateName)
213
213
}
214
214
215
215
-
return tmpl.ExecuteTemplate(w, "layouts/base", params)
215
215
+
if base == "" {
216
216
+
return tmpl.Execute(w, params)
217
217
+
} else {
218
218
+
return tmpl.ExecuteTemplate(w, base, params)
219
219
+
}
220
220
+
}
221
221
+
222
222
+
func (p *Pages) execute(name string, w io.Writer, params any) error {
223
223
+
return p.executeOrReload(name, w, "layouts/base", params)
216
224
}
217
225
218
226
func (p *Pages) executePlain(name string, w io.Writer, params any) error {
219
219
-
return p.t[name].Execute(w, params)
227
227
+
return p.executeOrReload(name, w, "", params)
220
228
}
221
229
222
230
func (p *Pages) executeRepo(name string, w io.Writer, params any) error {
223
223
-
return p.t[name].ExecuteTemplate(w, "layouts/repobase", params)
231
231
+
return p.executeOrReload(name, w, "layouts/repobase", params)
224
232
}
225
233
226
234
type LoginParams struct {