summaryrefslogtreecommitdiffstats
path: root/resources/page/pagemeta/page_frontmatter.go
diff options
context:
space:
mode:
Diffstat (limited to 'resources/page/pagemeta/page_frontmatter.go')
-rw-r--r--resources/page/pagemeta/page_frontmatter.go16
1 files changed, 10 insertions, 6 deletions
diff --git a/resources/page/pagemeta/page_frontmatter.go b/resources/page/pagemeta/page_frontmatter.go
index 8abd3807f..4e412c666 100644
--- a/resources/page/pagemeta/page_frontmatter.go
+++ b/resources/page/pagemeta/page_frontmatter.go
@@ -421,18 +421,22 @@ func (f *frontmatterFieldHandlers) newDateFieldHandler(key string, setter func(d
return false, nil
}
- date, err := htime.ToTimeInDefaultLocationE(v, d.Location)
- if err != nil {
- return false, nil
+ var date time.Time
+ if vt, ok := v.(time.Time); ok && vt.Location() == d.Location {
+ date = vt
+ } else {
+ var err error
+ date, err = htime.ToTimeInDefaultLocationE(v, d.Location)
+ if err != nil {
+ return false, nil
+ }
+ d.PageConfig.Params[key] = date
}
// We map several date keys to one, so, for example,
// "expirydate", "unpublishdate" will all set .ExpiryDate (first found).
setter(d, date)
- // This is the params key as set in front matter.
- d.PageConfig.Params[key] = date
-
return true, nil
}
}