diff --git a/layouts.go b/layouts.go index d3fe236..e1e9df7 100644 --- a/layouts.go +++ b/layouts.go @@ -138,6 +138,18 @@ var fileViewImageTemplateHTML = ` {{end}} ` +var fileViewAudioTemplate = template.Must(template.New("file").Parse(fileViewAudioTemplateHTML)) +var fileViewAudioTemplateHTML = ` +{{if .}} + + + +{{end}} +` + var fileViewVideoTemplate = template.Must(template.New("file").Parse(fileViewVideoTemplateHTML)) var fileViewVideoTemplateHTML = ` {{if .}} @@ -238,6 +250,8 @@ func ImageViewPage(w io.Writer, file types.File) (err error) { if file.IsImage() { err = fileViewImageTemplate.Execute(w, file) + } else if file.IsAudio() { + err = fileViewAudioTemplate.Execute(w, file) } else if file.IsVideo() { err = fileViewVideoTemplate.Execute(w, file) } else { diff --git a/types/types.go b/types/types.go index 9b8e948..f04c7b7 100644 --- a/types/types.go +++ b/types/types.go @@ -29,11 +29,16 @@ func (f *File) SetContentType() { } func (f *File) IsImage() bool { - f.SetContentType() + f.SetContentType() return strings.HasPrefix(f.ContentType, "image") } func (f *File) IsVideo() bool { - f.SetContentType() + f.SetContentType() return strings.HasPrefix(f.ContentType, "video") } + +func (f *File) IsAudio() bool { + f.SetContentType() + return strings.HasPrefix(f.ContentType, "audio") +}