makeBrowseTemplate creates the template to be used for directory listings.
(tplCtx *templateContext)
| 313 | |
| 314 | // makeBrowseTemplate creates the template to be used for directory listings. |
| 315 | func (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. |
no test coverage detected