diff options
Diffstat (limited to 'reader/rdf/rdf.go')
-rw-r--r-- | reader/rdf/rdf.go | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/reader/rdf/rdf.go b/reader/rdf/rdf.go index d9f3403..44ff0af 100644 --- a/reader/rdf/rdf.go +++ b/reader/rdf/rdf.go @@ -10,7 +10,9 @@ import ( "time" "github.com/miniflux/miniflux/crypto" + "github.com/miniflux/miniflux/logger" "github.com/miniflux/miniflux/model" + "github.com/miniflux/miniflux/reader/date" "github.com/miniflux/miniflux/reader/sanitizer" "github.com/miniflux/miniflux/url" ) @@ -54,6 +56,7 @@ type rdfItem struct { Link string `xml:"link"` Description string `xml:"description"` Creator string `xml:"creator"` + Date string `xml:"date"` } func (r *rdfItem) Transform() *model.Entry { @@ -63,10 +66,24 @@ func (r *rdfItem) Transform() *model.Entry { entry.URL = r.Link entry.Content = r.Description entry.Hash = getHash(r) - entry.Date = time.Now() + entry.Date = getDate(r) return entry } +func getDate(r *rdfItem) time.Time { + if r.Date != "" { + result, err := date.Parse(r.Date) + if err != nil { + logger.Error("rdf: %v", err) + return time.Now() + } + + return result + } + + return time.Now() +} + func getHash(r *rdfItem) string { value := r.Link if value == "" { |