(vals url.Values, def time.Time, queryParam, layout string, mutate func(term string) string)
| 252 | } |
| 253 | |
| 254 | func (p *QueryParamParser) timeWithMutate(vals url.Values, def time.Time, queryParam, layout string, mutate func(term string) string) time.Time { |
| 255 | v, err := parseQueryParam(p, vals, func(term string) (time.Time, error) { |
| 256 | if mutate != nil { |
| 257 | term = mutate(term) |
| 258 | } |
| 259 | t, err := time.Parse(layout, term) |
| 260 | if err != nil { |
| 261 | return time.Time{}, err |
| 262 | } |
| 263 | return t.UTC(), nil |
| 264 | }, def, queryParam) |
| 265 | if err != nil { |
| 266 | p.Errors = append(p.Errors, codersdk.ValidationError{ |
| 267 | Field: queryParam, |
| 268 | Detail: fmt.Sprintf("Query param %q must be a valid date format (%s): %s", queryParam, layout, err.Error()), |
| 269 | }) |
| 270 | } |
| 271 | return v |
| 272 | } |
| 273 | |
| 274 | func (p *QueryParamParser) String(vals url.Values, def string, queryParam string) string { |
| 275 | v, err := parseQueryParam(p, vals, func(v string) (string, error) { |
no test coverage detected