package gallery import ( "path/filepath" "strings" ) func isVideo(name string) bool { switch strings.ToLower(filepath.Ext(name)) { case ".mp4", ".webm", ".mov": return true default: return false } } func isGalleryMedia(name string) bool { return isJPEG(name) || isVideo(name) } // thumbLookupRel is the path under thumbs/ (and hero/) used to find derivatives. // Videos use a JPEG poster: clip.mp4 → clip.jpg. func thumbLookupRel(rel string) string { if isVideo(filepath.Base(rel)) { return videoPosterRel(rel) } return rel } func videoPosterRel(rel string) string { ext := filepath.Ext(rel) if ext == "" { return rel + ".jpg" } return strings.TrimSuffix(rel, ext) + ".jpg" }