mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-21 20:46:30 -05:00
resources/resource: Fix GroupByParamDate with raw TOML dates
Closes #11563
This commit is contained in:
parent
27620daa20
commit
dd6cd6268d
2 changed files with 70 additions and 3 deletions
|
@ -168,3 +168,66 @@ resize 2|RelPermalink: {{ $image.RelPermalink }}|MediaType: {{ $image.MediaType
|
||||||
"resize 2|RelPermalink: /images/pixel_hu8aa3346827e49d756ff4e630147c42b5_70_filter_6707036659822075562.jpg|MediaType: image/jpeg|Width: 20|Height: 30|",
|
"resize 2|RelPermalink: /images/pixel_hu8aa3346827e49d756ff4e630147c42b5_70_filter_6707036659822075562.jpg|MediaType: image/jpeg|Width: 20|Height: 30|",
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Issue #11563
|
||||||
|
func TestGroupByParamDate(t *testing.T) {
|
||||||
|
t.Parallel()
|
||||||
|
|
||||||
|
files := `
|
||||||
|
-- config.toml --
|
||||||
|
disableKinds = ['section','rss','sitemap','taxonomy','term']
|
||||||
|
-- layouts/index.html --
|
||||||
|
{{- range site.RegularPages.GroupByParamDate "eventDate" "2006-01" }}
|
||||||
|
{{- .Key }}|{{ range .Pages }}{{ .Title }}|{{ end }}
|
||||||
|
{{- end }}
|
||||||
|
-- content/p1.md --
|
||||||
|
+++
|
||||||
|
title = 'p1'
|
||||||
|
eventDate = 2023-09-01
|
||||||
|
+++
|
||||||
|
-- content/p2.md --
|
||||||
|
+++
|
||||||
|
title = 'p2'
|
||||||
|
eventDate = '2023-09-01'
|
||||||
|
+++
|
||||||
|
-- content/p3.md --
|
||||||
|
---
|
||||||
|
title: p3
|
||||||
|
eventDate: 2023-09-01
|
||||||
|
---
|
||||||
|
-- content/p4.md --
|
||||||
|
+++
|
||||||
|
title = 'p4'
|
||||||
|
eventDate = 2023-10-01T08:00:00
|
||||||
|
+++
|
||||||
|
-- content/p5.md --
|
||||||
|
+++
|
||||||
|
title = 'p5'
|
||||||
|
eventDate = '2023-10-01T08:00:00'
|
||||||
|
+++
|
||||||
|
-- content/p6.md --
|
||||||
|
---
|
||||||
|
title: p6
|
||||||
|
eventDate: 2023-10-01T08:00:00
|
||||||
|
---
|
||||||
|
-- content/p7.md --
|
||||||
|
+++
|
||||||
|
title = 'p7'
|
||||||
|
eventDate = 2023-11-01T07:00:00-08:00
|
||||||
|
+++
|
||||||
|
-- content/p8.md --
|
||||||
|
+++
|
||||||
|
title = 'p8'
|
||||||
|
eventDate = '2023-11-01T07:00:00-08:00'
|
||||||
|
+++
|
||||||
|
-- content/p9.md --
|
||||||
|
---
|
||||||
|
title: p9
|
||||||
|
eventDate: 2023-11-01T07:00:00-08:00
|
||||||
|
---
|
||||||
|
`
|
||||||
|
|
||||||
|
b := hugolib.Test(t, files)
|
||||||
|
|
||||||
|
b.AssertFileContent("public/index.html", "2023-11|p9|p8|p7|2023-10|p6|p5|p4|2023-09|p3|p2|p1|")
|
||||||
|
}
|
||||||
|
|
|
@ -18,6 +18,7 @@ import (
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/gohugoio/hugo/helpers"
|
"github.com/gohugoio/hugo/helpers"
|
||||||
|
"github.com/pelletier/go-toml/v2"
|
||||||
|
|
||||||
"github.com/spf13/cast"
|
"github.com/spf13/cast"
|
||||||
)
|
)
|
||||||
|
@ -55,6 +56,10 @@ func getParam(r Resource, key string, stringToLower bool) any {
|
||||||
return cast.ToFloat64(v)
|
return cast.ToFloat64(v)
|
||||||
case time.Time:
|
case time.Time:
|
||||||
return val
|
return val
|
||||||
|
case toml.LocalDate:
|
||||||
|
return val.AsTime(time.UTC)
|
||||||
|
case toml.LocalDateTime:
|
||||||
|
return val.AsTime(time.UTC)
|
||||||
case []string:
|
case []string:
|
||||||
if stringToLower {
|
if stringToLower {
|
||||||
return helpers.SliceToLower(val)
|
return helpers.SliceToLower(val)
|
||||||
|
@ -65,6 +70,5 @@ func getParam(r Resource, key string, stringToLower bool) any {
|
||||||
case map[any]any:
|
case map[any]any:
|
||||||
return v
|
return v
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue