From 49535c9b05b7818060fc0230185bfe1c197c7405 Mon Sep 17 00:00:00 2001 From: Franz Glauber Vanderlinde <franz.glauber@gmail.com> Date: Sun, 13 May 2012 17:38:17 -0300 Subject: [PATCH] Issue #1450714 by getgood: ATOM parser ignores 'updated' tag --- libraries/common_syndication_parser.inc | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/libraries/common_syndication_parser.inc b/libraries/common_syndication_parser.inc index 37bc5bb9..a7b55ec0 100644 --- a/libraries/common_syndication_parser.inc +++ b/libraries/common_syndication_parser.inc @@ -201,7 +201,19 @@ function _parser_common_syndication_atom10_parse($feed_XML) { $item['title'] = _parser_common_syndication_title($title, $body); $item['description'] = $body; $item['author_name'] = $original_author; - $item['timestamp'] = _parser_common_syndication_parse_date(isset($news->published) ? "{$news->published}" : "{$news->issued}"); + + // Fall back to updated for timestamp if both published and issued are + // empty. + if (isset($news->published)) { + $item['timestamp'] = _parser_common_syndication_parse_date("{$news->published}"); + } + elseif (isset($news->issued)) { + $item['timestamp'] = _parser_common_syndication_parse_date("{$news->issued}"); + } + elseif (isset($news->updated)) { + $item['timestamp'] = _parser_common_syndication_parse_date("{$news->updated}"); + } + $item['url'] = trim($original_url); if (valid_url($item['url']) && !valid_url($item['url'], TRUE) && !empty($base)) { $item['url'] = $base . $item['url']; -- GitLab