MCPcopy
hub / github.com/caddyserver/caddy / makeBrowseTemplate

Method makeBrowseTemplate

modules/caddyhttp/fileserver/browse.go:315–334  ·  view source on GitHub ↗

makeBrowseTemplate creates the template to be used for directory listings.

(tplCtx *templateContext)

Source from the content-addressed store, hash-verified

313
314// makeBrowseTemplate creates the template to be used for directory listings.
315func (fsrv *FileServer) makeBrowseTemplate(tplCtx *templateContext) (*template.Template, error) {
316 var tpl *template.Template
317 var err error
318
319 if fsrv.Browse.TemplateFile != "" {
320 tpl = tplCtx.NewTemplate(path.Base(fsrv.Browse.TemplateFile))
321 tpl, err = tpl.ParseFiles(fsrv.Browse.TemplateFile)
322 if err != nil {
323 return nil, fmt.Errorf("parsing browse template file: %v", err)
324 }
325 } else {
326 tpl = tplCtx.NewTemplate("default_listing")
327 tpl, err = tpl.Parse(BrowseTemplate)
328 if err != nil {
329 return nil, fmt.Errorf("parsing default browse template: %v", err)
330 }
331 }
332
333 return tpl, nil
334}
335
336// isSymlinkTargetDir returns true if f's symbolic link target
337// is a directory.

Callers 1

serveBrowseMethod · 0.95

Calls 1

NewTemplateMethod · 0.80

Tested by

no test coverage detected