Updating Convert to handle dates properly for yaml and json

Fix bug with YAML & JSON with handling dates with 'new' and 'convert'
This commit is contained in:
spf13
2014-05-29 18:40:16 -04:00
parent 0c2544608c
commit b9bba2b977
4 changed files with 25 additions and 1 deletions

View File

@@ -16,7 +16,9 @@ package commands
import (
"fmt"
"path"
"time"
"github.com/spf13/cast"
"github.com/spf13/cobra"
"github.com/spf13/hugo/hugolib"
"github.com/spf13/hugo/parser"
@@ -114,6 +116,18 @@ func convertContents(mark rune) (err error) {
return err
}
// better handling of dates in formats that don't have support for them
if mark == parser.FormatToLeadRune("json") || mark == parser.FormatToLeadRune("yaml") {
newmetadata := cast.ToStringMap(metadata)
for k, v := range newmetadata {
switch vv := v.(type) {
case time.Time:
newmetadata[k] = vv.Format(time.RFC3339)
}
}
metadata = newmetadata
}
page.Dir = file.Dir
page.SetSourceContent(psr.Content())
page.SetSourceMetaData(metadata, mark)