Files
orbits/internal/shared/utility/utility.go
T
2026-04-23 16:51:18 +02:00

58 lines
1005 B
Go

package utility
import (
"log/slog"
"os"
"strings"
)
type MediaType string
const (
Video MediaType = "video"
Presentation MediaType = "presentation"
Internet MediaType = "internet"
Unspecified MediaType = "unspecified"
)
func RemoveFile(p string) error {
err := os.Remove(p)
if err != nil {
return err
}
return nil
}
// 0: unspecified
// 1: video
// 2: presentation
// 3: internet URL
func CategorizeMediaType(ext string) (MediaType, bool) {
switch ext {
case ".mp4", ".mov", ".avi", ".mkv", ".webm", ".m4a":
return Video, true
case ".pptx", ".ppt", ".key", ".odp":
return Presentation, true
default:
slog.Debug("marking file as invalid due to its undefined extension")
return "", false
}
}
func ParseSlogLevel(s string) slog.Level {
switch strings.ToLower(s) {
case "debug":
return slog.LevelDebug
case "warn", "warning":
return slog.LevelWarn
case "error":
return slog.LevelError
case "info":
fallthrough
default:
return slog.LevelInfo
}
}