package paramParser import ( "log/slog" "net/url" "time" ) type ParamsParser struct { urlParams url.Values } func New(_urlParams url.Values) ParamsParser { return ParamsParser{ urlParams: _urlParams, } } func (p *ParamsParser) ParseTimestamp(key string, format string, fallback time.Time) time.Time { paramTimestamp := p.urlParams.Get(key) if paramTimestamp == "" { return fallback } if timestamp, err := time.Parse(format, paramTimestamp); err == nil { return timestamp } else { slog.Warn("Error parsing HTTP Params to timestamp", slog.Any("key", key), slog.Any("error", err)) return fallback } }